Olá Amigos Garagistas,
Esse é o primeiro tópico que escrevo e tbem estou iniciando no arduino e esse é praticamente meu primeiro projeto.
Após ter algumas dificuldades com furto de veiculos de nossa empresa decidi montar um sistema de segurança no carro ( Um Fiat Uno 1997), esse sistema de segurança controlado por um Arduino +Blueetooth + App Inventor , substituindo a chave e um controle que uso para travar as portas e subir os vidros.
funçoes no arduino ;
Ligar Contato / Painel.
Partida / Igniçaõ.
Subir / Descer Vidros.
Controle da Bomba de Combustivel.
Travar / Destravar Portas.
Ligar / Desligar Faról
Ligar / Desligar Lanterna
Em Resumo o carro vai ficar com um painel analogico (original do veiculo) e em paralelo um painel digital composto por um tablet que vai se comunicar por bluetooth com o arduino.
Minha intençao com esse topico é colher opnioes e trocar informaçoes , tenho um codigo ja feito para o arduino e começei a desenvolver a interface do aplicativo e o bloco de notas .
Conto com a ajuda de vcs tanto na parte de ideias como tbem na parte de melhoria do código.
o projeto inicialmente nao busca nenhum lucro, sendo apenas ganho de conhecimento e hobby.
Codigo Arduino Funcionando ( Precisando de algumas melhorias).
boolean estadoch0;
boolean estadorele0;
boolean estadoch1;
boolean estadorele1 = 1;
boolean estadorele2 = 1;
boolean estadoch3;
boolean estadorele3 = 1;
boolean estadoch4;
boolean estadorele4 = 1;
boolean estadoch5;
boolean estadorele5 = 1;
int ch1 = 6;
int ch2 = 7;
int ch3 = 8;
int ch4 = 9;
int rele1 = 13; //contato
int rele2 = 12; //ignicao
int rele3 = 11; //sobe vidro
int rele4 = 10; //trava
int rele5 = 5; //pisca alerta
int rele6 = 4; //bibi
int rele7 = 3; //desce vidro
int rele8 = 2; //corneta
void setup() {
Serial.begin(9600);
pinMode(ch1,INPUT);
pinMode(ch2,INPUT);
pinMode(ch3,INPUT);
pinMode(ch4,INPUT);
pinMode(rele1,OUTPUT);
pinMode(rele2,OUTPUT);
pinMode(rele3,OUTPUT);
pinMode(rele4,OUTPUT);
pinMode(rele5,OUTPUT);
pinMode(rele6,OUTPUT);
pinMode(rele7,OUTPUT);
pinMode(rele8,OUTPUT);
}
void loop()
{
//liga contato
estadoch1 = digitalRead(ch1);
if(estadoch1 == HIGH)
{
estadorele1 = !estadorele1 ;
delay (900);
}
digitalWrite(rele1,estadorele1);
//Inicia Partida
estadoch2 = digitalRead(ch2);
if ((estadoch2 == HIGH) && (estadorele1 == 0))
{
digitalWrite(rele2, LOW);
delay (600);
digitalWrite(rele2, HIGH);
}
//Alarme_destrava
estadoch4 = digitalRead(ch4);
if(estadoch4 == HIGH)
{
digitalWrite(rele5, LOW);
delay (200);
digitalWrite(rele5, HIGH);
delay (100);
digitalWrite(rele5, LOW);
delay (100);
digitalWrite(rele5, HIGH);
delay (200);
digitalWrite(rele5, LOW);
delay (200);
digitalWrite(rele5, HIGH);
delay (100);
digitalWrite(rele5, LOW);
delay (100);
digitalWrite(rele5, HIGH);
digitalWrite(rele6, LOW);
delay (100);
digitalWrite(rele6, HIGH);
delay (100);
digitalWrite(rele6, LOW);
delay (100);
digitalWrite(rele6, HIGH);
delay (10);
digitalWrite(rele4, LOW);
delay (100);
digitalWrite(rele4, HIGH);
delay (900);
digitalWrite(rele4, LOW);
delay (100);
digitalWrite(rele4, HIGH);
}
digitalWrite(rele4, HIGH);
// alarme_trava
estadoch3 = digitalRead(ch3);
if(estadoch3 == HIGH)
{
digitalWrite(rele5, LOW);
delay (200);
digitalWrite(rele5, HIGH);
delay (200);
digitalWrite(rele5, LOW);
delay (100);
digitalWrite(rele5, HIGH);
delay (100);
digitalWrite(rele5, LOW);
delay (200);
digitalWrite(rele5, HIGH);
delay (200);
digitalWrite(rele5, LOW);
delay (100);
digitalWrite(rele5, HIGH);
digitalWrite(rele6, LOW);
digitalWrite(rele3, LOW);
digitalWrite(rele4, LOW);
delay (100);
}
digitalWrite(rele6, HIGH);
digitalWrite(rele3, HIGH);
digitalWrite(rele4, HIGH);
char caracter;
caracter = Serial.read();
//liga contato
if(caracter == 'a')
{
estadorele1 = !estadorele1 ;
delay (900);
digitalWrite(rele1,estadorele1);
}
//inicia partida
if ((caracter == 'b') && (estadorele1 == 0))
{
digitalWrite(rele2, LOW);
delay (600);
}
digitalWrite(rele2, HIGH);
//Alarme_desliga
if(caracter == 'c')
{
digitalWrite(rele5, LOW);
delay (200);
digitalWrite(rele5, HIGH);
delay (100);
digitalWrite(rele5, LOW);
delay (100);
digitalWrite(rele5, HIGH);
delay (200);
digitalWrite(rele5, LOW);
delay (200);
digitalWrite(rele5, HIGH);
delay (100);
digitalWrite(rele5, LOW);
delay (100);
digitalWrite(rele5, HIGH);
digitalWrite(rele6, LOW);
delay (100);
digitalWrite(rele6, HIGH);
delay (100);
digitalWrite(rele6, LOW);
delay (100);
digitalWrite(rele6, HIGH);
delay(10);
digitalWrite(rele4, LOW);
delay (100);
digitalWrite(rele4, HIGH);
delay (900);
digitalWrite(rele4, LOW);
delay (100);
digitalWrite(rele4, HIGH);
}
digitalWrite(rele4, HIGH);
//alarme
if(caracter == 'd')
{
digitalWrite(rele5, LOW);
delay (200);
digitalWrite(rele5, HIGH);
delay (200);
digitalWrite(rele5, LOW);
delay (100);
digitalWrite(rele5, HIGH);
delay (100);
digitalWrite(rele5, LOW);
delay (200);
digitalWrite(rele5, HIGH);
delay (200);
digitalWrite(rele5, LOW);
delay (100);
digitalWrite(rele5, HIGH);
delay(100);
digitalWrite(rele6, LOW);
digitalWrite(rele3, LOW);
digitalWrite(rele4, LOW);
delay (100);
}
digitalWrite(rele6, HIGH);
digitalWrite(rele3, HIGH);
digitalWrite(rele4, HIGH);
// sobe o vidro
if(caracter == 'g')
{
digitalWrite(rele3, LOW);
delay (200);
}
digitalWrite(rele3, HIGH);
//desce vidro
if(caracter == 'h')
{
digitalWrite(rele7, LOW);
delay (200);
}
digitalWrite(rele7, HIGH);
//pisca alerta
if(caracter == 'i')
{
digitalWrite(rele5, LOW);
delay (200);
}
digitalWrite(rele5, HIGH);
//buzina corneta
if(caracter == 'j')
{
digitalWrite(rele8, LOW);
delay (200);
}
digitalWrite(rele8, HIGH);
}
Interface do Aplicativo feito com app inventor 2
Tags:
tenho um projeto desse tb mas com bloqueio do carro por dtmf e por internet tb
no carro tem um roteador com entrada para chip 3g e um circuito com um celular para o bloqueio por tom de chamada
Talvez isso não deixasse o carro menos seguro na verdade não?? pq sei la se não for criptografado, ou se a pessoa ver o painel e notar como pode ser facil fazer uma ligação direta sei la
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por