Cómo construir un sensor de aparcamiento para solucionar el problema de encontrar un lugar libre
En este proyecto, construiremos un sensor de estacionamiento simple usando una Raspberry Pi. Resulta que todas las mañanas tengo que enfrentarme a esta pregunta: ¿el ÚNICO lugar de estacionamiento frente a mi oficina ya está ocupado? Porque cuando realmente lo es, tengo que dar la vuelta a la cuadra y usar al menos 10 minutos más para estacionar y caminar hasta la oficina. Así que pensé que sería genial saber si el lugar está libre o no, incluso antes de intentar conseguirlo. allá. Al final, el resultado fue un bonito widget que pude consultar desde mi iPod o teléfono móvil:
Materiales
- Frambuesa Pi Modelo B:
- Dispositivo WiFi USB
- Sensor de movimiento de Parallax
- Tres cables hembra a hembra
Alambrado
El sensor de movimiento es muy fácil de instalar ya que sólo tiene tres pines: GND, VCC (+5v) y OUT (señal digital “1” o “0”). Si hay movimiento a su alrededor, generará un “1”, si no lo hay, un “0”. Puedes ver la conexión en el diagrama a continuación, los cables se conectan directamente a los pines GPIO de la Raspberry Pi. Si necesitas más información sobre los pines GPIO puedes visitar esta guía de makezine.com ; es una buena fuente para familiarizarse con los pines de Raspberry Pi .
Configure su cuenta y variables Ubidots
Si eres nuevo en Ubidots , crea una cuenta aquí .
- Navegue a la pestaña "Fuentes" y agregue una nueva fuente.
- Seleccione Raspberry Pi como su nueva fuente de datos y complete el formulario.
- Ahora haga clic en la nueva fuente "Mi Raspberry Pi"
- Agrega una nueva variable llamada “libre u ocupado” y no olvides completar los campos nombre y unidad.
- Tome nota de la identificación de su variable:
- Tome nota de su clave API que se encuentra en " Mi perfil -> Clave API ".
Codificando tu Raspberry Pi
Ya deberías haber configurado tu Raspberry Pi y tener acceso a Internet desde ella. De lo contrario, siga esta guía o consulte esta publicación de blog sobre cómo configurar WiFi .
Cuando esté listo, acceda a su Raspberry Pi a través de una terminal (LxTerminal si accede a su Pi directamente a través de su GUI), navegue hasta la carpeta donde desea almacenar este proyecto y cree un nuevo archivo llamado "presence.py".
$ sudo nano presencia.py
Ahora pega el siguiente código:
importar RPi.GPIO como GPIO ## biblioteca GPIO desde ubidots importar ApiClient ## tiempo de importación de la biblioteca Ubidots ## biblioteca de tiempo para retrasos GPIO.setmode(GPIO.BCM) ## configurar BCM como sistema de numeración para entradas GPIO.setup(7, GPIO.IN) ##Declarando GPIO7 como entrada para el sensor intente: api=ApiClient("75617caf2933588b7fd0da531155d16035138535") ##ponga su propio apikey people= api.get_variable("53b9f8ff76254274effbbace")##ponga su propia identificación de variable excepto: print " no puedo conectarme" ##si esto sucede, verifique su conexión a Internet mientras(1): presencia=GPIO.input(7) ## guardando el valor del sensor if(presencia==0):##si la presencia es cero, eso significa que el otro auto sigue ahí 🙁 people.save_value({'value':presence}) ##enviando valor a ubidots time.sleep(1)##verifica cada 5 segundos si el otro auto se mueve imprime "cero" if(presence): people.save_value({'value':presence}) ##el otro auto se fue, por lo que ahora está vacío 🙂 time.sleep(1) print "uno" GPIO.cleanup() ##restablece el estado de los pines GPIO
Ejecute su programa:
$ sudo python presencia.py
Creando un indicador en el dashboard Ubidots
Ahora que estamos obteniendo los datos en vivo del dispositivo, necesitamos crear un widget personalizado que nos indique si el lugar de estacionamiento está ocupado o no. Haga clic en la pestaña dashboard y luego agregue un nuevo widget:
Elija el widget "Indicador" y siga los pasos:
¡Excelente! Ahora deberías ver un widget en vivo que indica el estado del lugar de estacionamiento. Por cierto, puedes insertar este widget en cualquier aplicación web o móvil:
¡Eso es todo por este proyecto! Aprendimos cómo conectar un sensor de movimiento a la nube Ubidots usando una Raspberry Pi y mostrar sus datos en un widget en vivo. El proyecto podría mejorarse utilizando un sensor de presencia y no exactamente un sensor de movimiento (que vuelve a “0” una vez que desaparece el movimiento). También se puede ampliar configurando alertas por SMS o correo electrónico, que se pueden crear en la pestaña "Eventos" de su cuenta Ubidots .
¿Tiene alguna pregunta? no dude en comentar a continuación o dejar un ticket en nuestra página de soporte.
Aquí hay otro proyecto interesante que utiliza Raspberry Pi y un sensor de movimiento:
¿Aún no tienes una Ubidots ? haga clic aquí para comenzar hoy.