Suse 11.2

Encendido de LED por Proximidad por Bluetooth

He hecho un proyecto para la escuela que consiste en abrir los seguros del carro al estar cerca de él, y de cerrarlos al alejarse, es solo un prototipo, para eso he utilizado un Arduino, un USB-Bluetooth, una laptop y el celular que se va a detectar.

Video demo

Todo está hecho sobre linux UBUNTU 8.10, sobre windows no se me ocurre como integralo, solo haciendo una sola aplicacion completa.

1.- Se ensambla e USB-Bluetooth a la computadora y se empareja el dispositivo por medio de los asistentes.

2.- Se instala la aplicación Blueproximity desde Synaptics y se configura.

3.- Se baja una clase en C que tiene funciones para el manejo del puerto serial, la clase es arduino-serial.c, al descargar accesas a la carpeta donde lo descargaste y desde la terminal ejecutas

punksolid$ gcc -o arduino-serial arduino-serial.c

con eso compilas la clase, para su uso solo basta

punksolid$ ./arduino-serial

y aparecerá el modo de uso, por ejemplo yo uso está linea para encender el led

punksolid$ /home/punksolid/arduino-serial -b 19200 -p /dev/ttyUSB0 -s m

y para apagarlo

punksolid$ /home/punksolid/arduino-serial -b 19200 -p /dev/ttyUSB0 -s n

el codigo de la placa arduino es el siguiente

 * Serial Read Blink
 * -----------------
 * Turns on and off a light emitting diode(LED) connected to digital
 * pin 13. The LED will blink the number of times given by a
 * single-digit ASCII number read from the serial port.
 *
 * Created 18 October 2006
 * copyleft 2006 Tod E. Kurt <tod@todbot.com>
 * http://todbot.com/
 *
 * based on "serial_read_advanced" example
 */
 
int ledPin = 13;   // select the pin for the LED
int val = 0;       // variable to store the data from the serial port
 
void setup() {
  pinMode(ledPin,OUTPUT);    // declare the LED's pin as output
  Serial.begin(19200);        // connect to the serial port
}
 
void loop () {
  val = Serial.read();      // read the serial port
 
  // if the stored value is a single-digit number, blink the LED that number
  if (val > '0' && val <= '9' ) {
    val = val - '0';          // convert from character to number
    for(int i=0; i<val; i++) {
      Serial.println("blink!");
      digitalWrite(ledPin,HIGH);
      delay(150);
      digitalWrite(ledPin, LOW);
      delay(150);
    }
    //Serial.println();
  }
  if (val=='m'){
      digitalWrite(ledPin,HIGH);
  }else if(val=='n'){
      digitalWrite(ledPin,LOW);
  }
}

4.- Ya nada mas falta configurar Blueproximity en la pestaña de bloqueo para que se ejecute el comando de ejemplo que puse arriba.

Como utilidades he pensado en la apertura de serguros electricos para carro al acercarse ademas tambien bajar las ventanas, y viceversa para cuando el usuario se aleje, para hacer eso basta con un relay.

Cualquier duda comentarlo y responderé.

Referencias

Conectar Arduino con el lenguaje C

Talvez te interese leer

4 comments to Encendido de LED por Proximidad por Bluetooth

  • Está muy bien, buen trabajo! He posteado la noticia en mi blog

  • HB

    interesante… Veré que puedo usar de tu proyecto, como la programación quizás,para conectar un celular y arduino a través de Bluetooth y lograr el traspaso de información.

  • @HB perfecto, ojalá te sirva, ya te contesté por facebook con los detalles.

  • victor

    hola buenas tarde me encanta tu prototipo, diculpa yo uso oppensuse y quisiera saber como llavar a cavo este prototipo pasando por la instalacion de las librerias, pues qui solo uestras como hacerle en ubuntu.

Leave a Reply

 

 

 

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">