La Raspberry Pi que voy a utilizar es el Modelo B:
Led 5 volt, resistencia para ese led y un protoboard, solderless ò breadboard MB-102, una tarjeta SD un cable de red para conectar al modem/router y un cargador de celular USB.
El sistema operativo que tengo instalado es Kali Linux, pero puede hacerce con cualquier otro, si quieren istalarle este, les dejo acá el link: https://redes-seguridad.blogspot.com.ar/2017/03/instalando-kali-linux-en-raspberry-pi.html
Para que se entienda mejor les hice el planito en paint:
Ahora explico la conexión:
1) El pin identificado con la letra A del GPIO del raspberry pi (contamos 6 pines de derecha a izquierda de la fila de arriba) y lo conectamos a la letra B en naranja (en el protoboard tipo batalla naval sería la fila B y la columna 20),
2) El pin identificado con la letra C del GPIO del raspberry pi (contamos 3 pines de derecha a izquierda de la fila de abajo) y lo conectamos en la letra D (en el protoboard tipo batalla naval sería fila A y columna 31).
3) Para conectar el LED tenemos que tener en cuenta que tiene un conector más largo que el otro. El lado más corto lo conectamos a la derecha E (en el protoboard tipo batalla naval sería fila C y columna 31) y el lado más largo del LED a la izquierda conectado al F (en el protoboard tipo batalla naval sería fila C y columna 29)
4) Para conectar la resistencia la conectamos en el G (en el protoboard tipo batalla naval sería fila D y columna 20) y en el H (en el protoboard tipo batalla naval sería fila D y columna 29).
Instalación de Python y GPIO en Kali Linux:
root@kali:~# apt-get install python-dev python3-dev gcc
root@kali:/home# wget https://pypi.python.org/packages/e2/58/ 6e1b775606da6439fa3fd1550e7f71 4ac62aa75e162eed29dbec684ecb3e /RPi.GPIO-0.6.3.tar.gz
root@kali:/home# tar xzvf RPi.GPIO-0.6.3.tar.gz
root@kali:/home# cd RPi.GPIO-0.6.3
root@kali:/home/RPi.GPIO-0.6.3# python setup.py install
root@kali:~# python
Python 2.7.13 (default, Jan 19 2017, 14:48:08)
[GCC 6.3.0 20170118] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import RPi.GPIO
root@kali:/home# vi prender_led.py
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
GPIO.setup(17, GPIO.OUT)
GPIO.output(17,1)
En la ultima linea le indicamos con el 1 que lo enciende, si lo cambiamos por cero lo apaga:
root@kali:/home# vi apagar_led.py
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
GPIO.setup(17, GPIO.OUT)
GPIO.output(17,0)
Prendemos el led ejecutando el python:
root@kali:/home# python prender_led.py
Apagamos el led ejecutando el otro python:
root@kali:/home# python apagar_led.py
Armamos otro script que recibe un parametro, si es 1 prende y si es 0 apaga:
root@kali:/home# vi prende_Con_1_Apaga_con_0.py
import RPi.GPIO as GPIO
import sys
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
LED=17
print sys.argv[1]
ESTADO=int(sys.argv[1])
GPIO.setup(LED, GPIO.OUT)
GPIO.setwarnings(False)
if ESTADO == 0:
print('Apagando el LED')
GPIO.output(LED,ESTADO)
else:
print('Prendiendo el LED')
ESTADO = 1;
GPIO.output(LED,ESTADO)
Prendemos:
root@kali:/home# python prende_Con_1_Apaga_con_0.py 1
Apagamos:
root@kali:/home# python prende_Con_1_Apaga_con_0.py 1
Hacerlo titilar dentro de un while infinito:
root@kali:/home# vi titila.py
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
while 1:
GPIO.setup(17,GPIO.OUT)
GPIO.output(17,1)
time.sleep(0.5)
GPIO.setup(17,GPIO.OUT)
GPIO.output(17,0)
time.sleep(0.5)
SOS con codigo Morse:
root@kali:/home# vi SOS.py
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
while 1:
GPIO.setup(17,GPIO.OUT)
GPIO.output(17,1)
time.sleep(0.5)
GPIO.setup(17,GPIO.OUT)
GPIO.output(17,0)
time.sleep(0.5)
GPIO.setup(17,GPIO.OUT)
GPIO.output(17,1)
time.sleep(0.5)
GPIO.setup(17,GPIO.OUT)
GPIO.output(17,0)
time.sleep(0.5)
GPIO.setup(17,GPIO.OUT)
GPIO.output(17,1)
time.sleep(0.5)
GPIO.setup(17,GPIO.OUT)
GPIO.output(17,0)
time.sleep(0.5)
GPIO.setup(17,GPIO.OUT)
GPIO.output(17,1)
time.sleep(2)
GPIO.setup(17,GPIO.OUT)
GPIO.output(17,0)
time.sleep(0.5)
GPIO.setup(17,GPIO.OUT)
GPIO.output(17,1)
time.sleep(2)
GPIO.setup(17,GPIO.OUT)
GPIO.output(17,0)
time.sleep(0.5)
GPIO.setup(17,GPIO.OUT)
GPIO.output(17,1)
time.sleep(2)
Video prediendo y apagando los LEDs:
Y el Santulon jugando con el nuevo chiche:
FUENTES:
https://www.raspberrypi.org
https://geekytheory.com
http://rsppi.blogspot.com.ar/
http://robologs.net/
http://www.aprendeprogramacion.net/
2 comentarios:
Hacete macho y cómprate un Arduino UNO.
Jajaja eso si que es rudeza. Recien veo este comentario.. Un poco tarde. Ya debe existir el Arduino CIEN. XD
Publicar un comentario