La salida – cuyo nivel lógico opera a 3.3 V – se toma del pin GPIO23, atacando directamente a la entrada de la parte LED del optoacoplador. La señal de salida GPIO23, al pasar a nivel lógico alto, activa la salida
Podemos utilizar una alimentación de +5 voltios externa para energizar la parte del relé. El esquema:
En este caso proponemos un pequeño programa en lenguaje Python
# ========================================== # - Programa para manejo RELE de control # ========================================== #!/usr/bin/python import sys import curses import time import RPi.GPIO as GPIO # --------------------------------------------------------------- # - Rutina de configuracion de puertos en GPIO # --------------------------------------------------------------- def confiGPIO(param1): GPIO.setmode(GPIO.BCM) GPIO.setwarnings(False) GPIO.setup(23, GPIO.OUT) return 0 # --------------------------------------------------------------- # ################################################# # - PROGRAMA PRINCIPAL ------------------------------------------ # # Utiliza curses para visualizar salida a pantalla # # ################################################### # --------------------------------------------------------------- stdscr = curses.initscr() curses.cbreak() curses.start_color() curses.init_pair(1, curses.COLOR_BLACK, curses.COLOR_GREEN) hsize = curses.COLS vsize = curses.LINES curses.curs_set(0) curses.noecho stdscr.border(0) stdscr.keypad(1) stdscr.nodelay(1) confiGPIO(0) try: stdscr.bkgd(curses.color_pair(1)) while True: # Rutina principal del programa if (char == 81 or char == 113): # Tecla Q/q break if (char == 49): # Tecla 1 GPIO.output(23, True) if (char == 50): # Tecla 2 GPIO.output(23, False) else: stdscr.addstr(vsize/6, (hsize/2)-18,"Control de RELE via GPIO") stdscr.addstr((vsize/5)+2, (hsize/2)- 22,"[1] - Activa el RELE") stdscr.addstr((vsize/5)+4, (hsize/2)- 22,"[2] - Desactiva el RELE") stdscr.addstr(vsize-8, (hsize/2)- 18," Pulsa [Q] para salir") stdscr.refresh() finally: curses.nocbreak() stdscr.keypad(0) curses.echo() curses.endwin()
Este programa puede copiarse tal como está y guardarse en un fichero llamado
rele.py en nuestra Raspberry Pi.
(3) Vamos al directorio del programa y damos al fichero rele.py permisos de ejecución con
sudo chmod 777 rele.py
(4) En un terminal, desde el directorio del programa, ejecutamos (IMPORTANTE : como root)
sudo python rele.py