Analisando os componentes que eu tinha em mãos, constatei que seria possível dar inicio ao projeto.
Abaixo os componentes utilizados:
Fonte AC/DC 12V 1A:
Sirene 12V (genérica):
Controle remoto RF 4 canais + receptor <<<(clique para ver tutorial)
Shield Xbee com dois relés
Arduino UNO R3 <<<(clique para ler sobre Arduino UNO R3)
2 Interruptores para simular os sensores na prototipagem, que neste caso eu utilizei dois módulos da iriel.
A respeito do Shield Xbee, ele pode ser dissubstituído por um simples modulo relé de 1 canal, utilizei este por ser o que eu tinha disponível no momento.
Código:
---------------------------------------------------------------------------------------------------------------------
//CENTRAL DE ALARME 1.0
//POR: MICHEL BACK
//INICIO DA PROTOTIPAGEM 29/12/2014
boolean sirene = 4; // define saida do relé que irá acionar a sirene (padrão da shield é o pino 4 para relé 1)
boolean armaset1 = A0; // define entrada que recebe comando do controle remoto (setor1)
boolean armaset2 = A1; // define entrada que recebe comando do controle remoto (setor1)
boolean setor1 = 8; // define entrada do setor 1
boolean setor2 = 7; // define entrada do setor 2
boolean x1; // variavel de entretravamento
boolean x2; // variável de entretravamento
void setup(){
pinMode(sirene, OUTPUT);
pinMode(armaset1, INPUT);
pinMode(armaset2, INPUT);
pinMode(setor1, INPUT);
pinMode(setor2, INPUT);
x1 = 0 ; // iguala a zero para iniciar setor desarmado
x2 = 0 ; // iguala a zero para iniciar setor desarmado
}
void loop() {
if(digitalRead(armaset1) == HIGH & x1 == 0){ // se setor 1 estiver desarmado e pressionar botao A
digitalWrite(sirene, HIGH); // sinal sonoro 1 beep
delay(150);
digitalWrite(sirene, LOW);
x1 = 1; // arma setor 1
}
if(digitalRead(armaset1) == HIGH & x1 == 1){ // se setor 1 estiver armado e pressionar botao A
digitalWrite(sirene, HIGH); // sinal sonoro 2 beep
delay(150);
digitalWrite(sirene, LOW);
delay(150);
digitalWrite(sirene, HIGH);
delay(150);
digitalWrite(sirene, LOW);
x1 = 0; // desarma setor 1
}
if(digitalRead(armaset2) == HIGH & x2 == 0){ // se setor 2 estiver desarmado e pressionar botao B
digitalWrite(sirene, HIGH); // sinal sonoro 1 beep
delay(150);
digitalWrite(sirene, LOW);
x2 = 1; // arma setor 2
}
if(digitalRead(armaset2) == HIGH & x2 == 1){ // se setor 2 estiver armado e pressionar botao B
digitalWrite(sirene, HIGH);// sinal sonoro 2 beep
delay(150);
digitalWrite(sirene, LOW);
delay(150);
digitalWrite(sirene, HIGH);
delay(150);
digitalWrite(sirene, LOW);
x2 = 0; // desarma setor 2
}
if( x1 == 1 & digitalRead(setor1 ) == LOW){ // se setor 1 estiver armado e setor 1 estiver aberto
digitalWrite(sirene, HIGH); //dispara alarme. Para silenciar basta desarmar setor
}
if( x2 == 1& digitalRead(setor2 ) == LOW ){ // se setor 1 estiver armado e setor 1 estiver aberto
digitalWrite(sirene, HIGH); //dispara alarme. Para silenciar basta desarmar setor
}
}
--------------------------------------------------------------------------------------------------------------------------
Ligação do receptor RF
Como utilizei apenas 2 setores, será necessário ligar apenas os pinos D0 e D1 do receptor nas entradas A0 e A1 respectivamente.
Recomendação: colocar um resistor de Pull Down nas entradas A0 e A1 para evitar flutuações na entrada, que podem armar ou desarmar o alarme inesperadamente. <<<(clique para ler sobre resistor Pull Down e Pull Up).
Ligação de sensores de presença
Ligação de sensores magnéticos ( reed switch )
Setor 1 = Pino 8
Setor 2 = Pino 7
CONTINUA....
Nenhum comentário:
Postar um comentário