lunes, 1 de agosto de 2016

Ejemplo GPIO en Raspberry Pi - Push button



Ahora vamos a hacer un ejemplo, donde encenderemos un led  con un push button y con un flujo de Node Red.

Materiales que utilizaremos:

a) 1 Canakit. Es un kit que contiene un paquete básico para que comiences a crear circuitos para Raspberry. De CanaKit utilizaremos el protoboard, un led, un push button, una resistencia de 220ohms, una resistencia de 10Kohms, tres cables para conectar el led y push button, el cable de conexión del raspberry al circuito con pines que se coloca en el protoboard.




 b) Ver la distribución del GPIO de tú raspberry:
c) En node red, vas a necesitar lo siguiente:
1 nodo GPIO input
1 nodo GPIO output
1 nodo  debug
1 nodo function

Listo es todo lo que necesitas para empezar.

Paso 1. Conecta tú raspberry al protoboard, observa la imagen:


Paso 2. conecta el led de la siguiente forma:

Ahora estoy usando frintzing para diagramar y puedas apreciar mejor


Obseva la imagen:
 

Paso 3. Ahora que todo el Hardware esta configurado. Vamos a pasar a Node Red. Diagrama un flujo como sigue:




Paso 4. configura el GPIO input de la siguiente forma:





Paso 5.Configura el GPIO output de ls siguiente forma:

Paso 6. Configura la función con el siguiente código:
msg.payload=Number(!msg.payload); //Invierte la salida del push button, que siempre esta en 1
return msg;

Paso 7. Despliega el flujo de NodeRed y debe verse similar a lo siguiente:


Una de las grandes ventajas de NodeRed es que puedes compartir flujos hechos por otras personas. Estos se almacenan en formato JSON y es sólo texto. Te comparto, el código de este flujo para que lo puedas probas de inmediato:

[{"id":"c9f004f.5378678","type":"rpi-gpio in","z":"2f344517.b0454a","name":"","pin":"12","intype":"up","debounce":"25","read":false,"x":86.75,"y":128,"wires":[["5a5c2d41.7d1e9c","54b6de3.0b380a"]]},{"id":"5a5c2d41.7d1e9c","type":"debug","z":"2f344517.b0454a","name":"","active":true,"console":"false","complete":"false","x":437.75,"y":127.5,"wires":[]},{"id":"74edf1fd.15fd6","type":"rpi-gpio out","z":"2f344517.b0454a","name":"","pin":"11","set":"","level":"0","out":"out","x":446.75,"y":222.16665649414062,"wires":[]},{"id":"54b6de3.0b380a","type":"function","z":"2f344517.b0454a","name":"","func":"msg.payload=Number(!msg.payload);\nreturn msg;","outputs":1,"noerr":0,"x":241.75,"y":220.99996948242188,"wires":[["74edf1fd.15fd6","5a5c2d41.7d1e9c"]]}]


Dentro de node red, crea un flujo nuevo y en el menú selecciona importar desde el clipboard y pegas el código anterior.

Listo!!!! Ya tienes un flulo de Node Red que enciende y apaga un LED con el push button.

El ejemplo listo para Watson IoT lo puedes encontrar en la siguiente ruta: http://deep-iot.blogspot.mx/2016/08/ejemplo-watson-iot-platform.html

No hay comentarios:

Publicar un comentario