Go Down

Topic: Alarma para moto... (Read 11748 times) previous topic - next topic

Angael

Hola de nuevo!!

Aqui va el codigo:


Quote

/*
  _____       .__  __         .__               
_/ ____\______|__|/  |________|__| ____    ____ 
\   __\\_  __ \  \   __\___   /  |/    \  / ___\
|  |   |  | \/  ||  |  /    /|  |   |  \/ /_/  >
|__|   |__|  |__||__| /_____ \__|___|  /\___  /
                             \/       \//_____/ 
 
Example      Sabotage Detection
Autor        Stefan Hermann
Date         5.12.2011

*/

int myState=0;
int sirenaPin=9;
int greenLedPin=11;
int redLedPin=7;
int blueLedPin=3;
int buttonPin=2;
int potPin=3;
int accZPin=0;
int accYPin=1;
int accXPin=2;

int startAccZ;
int startAccY;
int startAccX;

void setup(){
  pinMode(sirenaPin,OUTPUT);
  pinMode(greenLedPin,OUTPUT);
  pinMode(redLedPin,OUTPUT);
  pinMode(blueLedPin,OUTPUT);
  pinMode(buttonPin,INPUT);
  startAccZ=analogRead(accZPin);
  startAccY=analogRead(accYPin);
  startAccX=analogRead(accXPin);
}

void alertBlinking(){
  digitalWrite(sirenaPin,HIGH);
  delay(50);
  digitalWrite(sirenaPin,LOW);
  delay(50);
  digitalWrite(redLedPin,HIGH);
  delay(50);
  digitalWrite(redLedPin,LOW);
  delay(100);
  digitalWrite(blueLedPin,HIGH);
  delay(50);
  digitalWrite(blueLedPin,LOW);
  delay(100); 
}

boolean senseAcceleration(int myPotVal){
  boolean myReturn=false;
  myPotVal=map(myPotVal,0,1023,0,10);
  if (analogRead(accXPin)>startAccX+myPotVal) myReturn=true;
  if (analogRead(accYPin)>startAccY+myPotVal) myReturn=true;
  if (analogRead(accZPin)>startAccZ+myPotVal) myReturn=true;
  return myReturn;
}

void loop(){
  //alertBlinking();
  switch (myState){
  case 0: //idle
    if (senseAcceleration(analogRead(potPin))==true) {
      digitalWrite(greenLedPin,LOW);
      myState=1;
    } else {
      digitalWrite(greenLedPin,HIGH);   
    };
    break;
  case 1: // alert
    alertBlinking();
    if (digitalRead(buttonPin)==HIGH){
      myState=0;
    }
    break;
  }
  delay(10);
}



No entiendo mucho de esto, pero creo que cambiando la sirena por un chisme de esos de salida 5v a 12v y enchufando un claxon estaria listo. no?
;)
Gracias...

Heke

Angael

Una pregunta sin animo de ofender ¿me da la sensacion que no controlas mucho de electronica verdad?

Es que si es asi yo te aconsejaria fueras mas despacio o con proyecto mas pequeño, empezando por cosas basicas.

Angael

Tranki. No ofendes. Pero es algo que me ha gustado de siempre y claro, hay que aprender. Esto no es poner piezas y ya esta. Pero pense que una alarma estaria bien para empezar. Ademas me interesaria montarla...
Si no es mucha molestia. Donde me estoy equivocando?

Heke

#18
Feb 04, 2013, 09:58 pm Last Edit: Feb 04, 2013, 10:07 pm by Heke Reason: 1
Te comento:

Un claxon es de los cacharros que mas bateria consume, muchos amperios... tendrias que conectarlo directo a bateria, una bateria de moto, con suerte es de 9A/h imagina lo cortito que vas de potencia electrica.

Un arduino conectado sin modo sleep, cosa que tendras que hacer para poder ir leyendo el acelerometro y el receptor de radiofrecuencia te va a consumir unos cuantos miliamperios, un par de dias conectado y si tu moto es de las que tiene la luz fija al arranque probablemente no puedas.
Calcula por ejemplo a grosso modo  300mA /h  x 24 horas = 7.2A.     si son dos dias   0.3 x 48 = 14.4A.


Aparte deberias añadirle un modulo de alimentacion con filtro y proteccion para alimentar el arduino, que ni te imaginas la porqueria de interferencias que lleva la tension de un vehiculo (moto o coche) aparte del margen en que se mueve.

Por otro lado, emplearias varias disciplinas, lectura de acelerometro y comprobacion, lectura de receptor de radio y transmision, lectura y manejo de gps... control de salidas o entradas... son varias cosas que juntas suponen mucho codigo e hilar muy fino.

No esta mal como proyecto pero tendrias que empezar paso a paso y poco a poco modulo por modulo.

Eso incluye toda la programacion...

¿Tienes pensado luego como meterias todos los modulos en una caja y en la moto? recuerda que no tenemos espacio (salvo los propietarios de Goldwin o Bmw)

¿una placa encima de otra o vas a diseñar una global?

Y todo sellado y sujeto...

Intento plantear el escenario, no desanimarte, al contrario, espero que pelees mucho con el arduino y todo lo que lleva alrededor...

Angael

Pues no queria meterle tantas cosas.
Habia pensado en un segundo claxon, conectarlo a la bateria. Pero que se activara despues de que el acelerometro registrara variacion de posicion.
Seria, solo el arduino, con el voltaje reducido.
Enganchado a los pines el acelerometro.
Y a otro pin la salida de 5v a 12v para activar el claxon de alarma.

Gracias!

tanguro

Hola. Perdón por meterme aquí, porque no entiendo de arduino. Pero tengo un proyecto de alarma y quiero colaboración (que supongo tendrá un costo que si es razonable estoy dispuesto a pagar) para diseñar un sensor de movimiento para bicicletas. No importa donde viva, si que hable español porque mi inglés es malo.  Si me guía soy habilidoso y sé soldar y programar. Podemos tener una teleconferencia y conversar sin problemas, me pueden dejar datos en vincular@yahoo.com.mx

Go Up