Nota

¡Hola! Bienvenidos a la comunidad de entusiastas de SunFounder Raspberry Pi & Arduino & ESP32 en Facebook. Profundiza en Raspberry Pi, Arduino y ESP32 con otros entusiastas.

¿Por qué unirse?

  • Soporte experto: Resuelve problemas post-venta y desafíos técnicos con la ayuda de nuestra comunidad y equipo.

  • Aprender y compartir: Intercambia consejos y tutoriales para mejorar tus habilidades.

  • Avances exclusivos: Accede temprano a nuevos anuncios de productos y adelantos exclusivos.

  • Descuentos especiales: Disfruta de descuentos exclusivos en nuestros productos más nuevos.

  • Promociones festivas y sorteos: Participa en sorteos y promociones festivas.

👉 ¿Listo para explorar y crear con nosotros? Haz clic en [Aquí] y únete hoy mismo.

2.1.2 Microinterruptor

Introducción

En este proyecto, aprenderemos a usar un microinterruptor. Un microinterruptor es un interruptor pequeño y muy sensible que requiere una mínima compresión para activarse. Debido a que son confiables y sensibles, los microinterruptores se utilizan a menudo como dispositivo de seguridad.

Se utilizan para evitar que las puertas se cierren si algo o alguien está en el camino y en otras aplicaciones similares.

Componentes necesarios

En este proyecto, necesitamos los siguientes componentes.

../_images/2.1.2component.png

Es definitivamente conveniente comprar un kit completo, aquí está el enlace:

Nombre

COMPONENTES EN ESTE KIT

ENLACE

Raphael Kit

337

Raphael Kit

También puedes comprarlos por separado en los enlaces a continuación.

INTRODUCCIÓN DEL COMPONENTE

ENLACE DE COMPRA

Placa de Extensión GPIO

COMPRAR

Protoboard

COMPRAR

Cables de Puente

COMPRAR

Resistor

COMPRAR

LED

COMPRAR

Microinterruptor

-

Capacitor

COMPRAR

Diagrama esquemático

Conecta el pin izquierdo del microinterruptor al GPIO17, y dos LEDs a los pines GPIO22 y GPIO27 respectivamente. Luego, cuando presiones y sueltes el brazo móvil del microinterruptor, verás que los dos LEDs se encienden alternativamente.

../_images/image305.png ../_images/micro_Schematic.png

Procedimientos Experimentales

Paso 1: Construir el circuito.

../_images/2.1.4fritzing.png

Paso 2: Ingresar a la carpeta del código.

cd ~/raphael-kit/python

Paso 3: Ejecutar.

sudo python3 2.1.2_MicroSwitch.py

Mientras el código está en ejecución, presiona el brazo móvil, entonces el LED amarillo se encenderá; suelta el brazo móvil, y el LED rojo se encenderá.

Código

Nota

Puedes Modificar/Restablecer/Copiar/Ejecutar/Detener el código a continuación. Pero antes de eso, necesitas ir a la ruta del código fuente como raphael-kit/python. Después de modificar el código, puedes ejecutarlo directamente para ver el efecto.

#!/usr/bin/env python3

import RPi.GPIO as GPIO
import time

# Configurar #17 como pin del microinterruptor, #22 como pin del led1, #27 como pin del led2
microPin = 17
led1Pin = 22
led2Pin = 27

# Definir una función de configuración para algunas configuraciones
def setup():
    # Establecer los modos GPIO en Numeración BCM
    GPIO.setmode(GPIO.BCM)
    # Establecer microPin como entrada
    # Establecer ledPin como salida,
    # y nivel inicial en Alto (3.3v)
    GPIO.setup(microPin, GPIO.IN)
    GPIO.setup(led1Pin, GPIO.OUT, initial=GPIO.HIGH)
    GPIO.setup(led2Pin, GPIO.OUT, initial=GPIO.HIGH)

# Definir una función principal para el proceso principal
def main():
    while True:
        # microinterruptor alto, led1 encendido
        if GPIO.input(microPin) == 1:
            print ('LED1 ON')
            GPIO.output(led1Pin, GPIO.LOW)
            GPIO.output(led2Pin, GPIO.HIGH)

        # microinterruptor bajo, led2 encendido
        if GPIO.input(microPin) == 0:
            print ('    LED2 ON')
            GPIO.output(led2Pin, GPIO.LOW)
            GPIO.output(led1Pin, GPIO.HIGH)

        time.sleep(0.5)

# Definir una función destroy para limpiar todo después de que
# el script termine
def destroy():
    # Apagar LED
    GPIO.output(led1Pin, GPIO.HIGH)
    GPIO.output(led2Pin, GPIO.HIGH)
    # Liberar recursos
    GPIO.cleanup()

# Si ejecutas este script directamente, haz:
if __name__ == '__main__':
    setup()
    try:
        main()
    # Cuando se presiona 'Ctrl+C', el programa
    # destroy() se ejecutará.
    except KeyboardInterrupt:
        destroy()

Explicación del Código

if GPIO.input(slidePin) == 1:
            GPIO.output(led1Pin, GPIO.LOW)
            GPIO.output(led2Pin, GPIO.HIGH)

Cuando se suelta el brazo móvil del microinterruptor, el pin izquierdo se conecta al pin derecho; en este momento, se leerá un nivel alto en GPIO17, y luego el LED1 se encenderá y el LED2 se apagará.

if GPIO.input(slidePin) == 0:
            GPIO.output(led2Pin, GPIO.LOW)
            GPIO.output(led1Pin, GPIO.HIGH)

Cuando se presiona el brazo móvil, el pin izquierdo y el pin medio se conectan. En este punto, se leerá un nivel bajo en GPIO17, luego el LED2 se encenderá y el LED1 se apagará.

Foto del Fenómeno

../_images/2.1.2micro_switch.JPG