miércoles, 2 de marzo de 2022

Raspberry Pi - GPIO básico

Proyectos básicos

En este caso se presentarán 3 aplicaciones básicas en Raspberry Pi empleando diodos led, resistencias y pulsadores. Para el Raspberry Pi 4 modelo B, la distribución de sus 40 pines es:

EJERCICIO 01 - Encender y apagar un LED

El siguiente ejemplo encenderá un LED durante 5 segundos, luego lo apagará y así de forma consecutiva. Tener en cuenta que dependiendo del voltaje de funcionamiento del LED elegido se debe variar la resistencia para que este no resulte quemado y/o la luz se pueda apreciar.

Materiales:

  • Raspberry (Raspberry Pi 4 model B)
  • Led (Rojo con voltaje de 1.2v)
  • Protoboard
  • Cables dupont
  • Resistencia de 560 ohmnios

Diagrama de conexión:

Código

#Biblioteca GPIO para controlar los pines del Raspberry Pi
import RPi.GPIO as GPIO
#Biblioteca "time" útil para realizar pausas
import time

GPIO.setmode(GPIO.BCM)  #La numeración será según usar la numeración del chip BROADCOM
GPIO.setwarnings(False) #Se deshabilitan las advertencias cuando entramos en un bucle
GPIO.setup(21,GPIO.OUT) #Se indica que el PIN 21 es de salida

#Bucle infinito
while True:
    print("Encendido")        #Mensaje en pantalla
    GPIO.output(21,GPIO.HIGH) #El PIN 21 se enciende (HIGH)
    time.sleep(5)             #Se detiene 5 segundos
    print("Apagado")          #Mensaje en pantalla
    GPIO.output(21,GPIO.LOW)  #El PIN 21 se apaga (LOW)
    time.sleep(5)             #Se detiene 5 segundos
    GPIO.cleanup              #Se limpian los PINES

EJERCICIO 02 - Encender y apagar un LED con pulsador

El siguiente ejemplo encenderá un LED durante 5 segundos, luego lo apagará y así de forma consecutiva. Tener en cuenta que dependiendo del voltaje de funcionamiento del LED elegido se debe variar la resistencia para que este no resulte quemado y/o la luz se pueda apreciar.

Materiales:

  • Raspberry (Raspberry Pi 4 model B)
  • Led (Rojo con voltaje de 1.2v)
  • Protoboard
  • Pulsador
  • Cables dupont
  • Resistencia de 560 ohmnios

Diagrama de conexión:

Código

import RPi.GPIO as GPIO

GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
#Se indica expresamente que su estado por defecto es LOW (apagado)
GPIO.setup(21,GPIO.OUT,initial=GPIO.LOW)
#Se indica el PIN 20 como entrada. Además, configuración PULL DOWN
GPIO.setup(20,GPIO.IN,pull_up_down=GPIO.PUD_DOWN)

while True:
    if GPIO.input(20): #Se evalúa si el boton es pulsado
        print("Pulsado")
        GPIO.output(21,GPIO.HIGH)
    else:
        GPIO.output(21,GPIO.LOW)
    GPIO.cleanup

EJERCICIO 03 - Encender y apagar un LED con pulsadores sin mantener presionado

El siguiente ejemplo encenderá un LED durante 5 segundos, luego lo apagará y así de forma consecutiva. Tener en cuenta que dependiendo del voltaje de funcionamiento del LED elegido se debe variar la resistencia para que este no resulte quemado y/o la luz se pueda apreciar.

Materiales:

  • Raspberry (Raspberry Pi 4 model B)
  • Led (Rojo con voltaje de 1.2v)
  • Pulsador
  • Protoboard
  • Cables dupont
  • Resistencia de 560 ohmnios

Diagrama de conexión:

Código

import RPi.GPIO as GPIO

GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
GPIO.setup(21,GPIO.OUT,initial=GPIO.LOW)
GPIO.setup(20,GPIO.IN,pull_up_down=GPIO.PUD_DOWN)
#Variable auxiliar
estado = False

while True:
    if GPIO.input(20):
        estado = not estado #Se invierte el valor si se presiona el botón
    if estado:
        print("Encendido")
        GPIO.output(21,GPIO.HIGH)
    else:
        print("Apagado")
        GPIO.output(21,GPIO.LOW)
    GPIO.cleanup

No hay comentarios:

Publicar un comentario