Tabla de contenido:
2025 Autor: John Day | [email protected]. Última modificación: 2025-01-13 06:57
Cosas que vamos a necesitar:
- Raspberry Pi con Raspbian
- Sensor táctil de adafruit
- Fuente de energía (batería / CC)
- Ethernet o WiFi para Raspberry Pi
- Otra computadora
Paso 1: Configuración de nuestro hardware Raspberry Pi
Primero, conecte nuestro sensor táctil a los pines GPIO en nuestra Raspberry Pi. Usa algunos cables flexibles
Identifique 3 pines en nuestro sensor:
- GND - conectar al pin de tierra
- VCC - conexión al pin de 5V
- SIG - conectar a un pin de señal
Usaremos 5V, tierra y GPIO 18 en nuestra raspberry pi en este ejemplo.
Paso 2: Configurar nuestro entorno en Raspberry Pi
Obtén la dirección IP de nuestra raspberry Pi.
Luego conéctese a nuestra raspberry pi usando ssh:
ssh username @ ipaddress
luego escriba nuestra contraseña.
Una vez que estemos adentro, instale apache2 como nuestro servidor web escribiendo:
sudo apt-get install apache2
Paso 3: diseñe un fragmento de código Python para leer la entrada de nuestro sensor
Diseño
En nuestro código de ejemplo, usamos un par de comandos diferentes.
Para indicar que estamos contentos, hacemos 2 pulsaciones largas
Para indicar que estamos tristes, hacemos un toque corto y una pulsación larga
Para indicar que estamos confundidos, hacemos un toque corto, esperamos un latido y luego 2 toques cortos. Para indicar que estamos contentos, hacemos un toque corto, un espacio corto y una pulsación larga
Para indicar que estamos aburridos, hacemos 3 toques cortos
Traduciendo estos a comandos de cadena: (t para toque corto, T para pulsación larga, g para espacio corto, G para espacio largo)
feliz: TgT
triste: tgT
confundido: tGtgt
aburrido: tgtgt
Luego, nuestro código generará nuestro estado de ánimo actual en un archivo html compatible con el navegador para servir.
Código
importar RPi. GPIO como GPIOimport time
GPIO.cleanup ()
GPIO.setmode (GPIO. BCM) GPIO.setup (18, GPIO. IN)
touch_count = 0
touch_state = 0 touch_duration = 0 gap_duration = 0 current_cmd = ""
def cmd ():
global current_cmd if current_cmd [-3:] == "TgT": current_cmd = "" mood ("Triste") if current_cmd [-3:] == "tgT": current_cmd = "" estado de ánimo ("Feliz") if current_cmd [-5:] == "tGtgt": current_cmd = "" mood ("Confused") if current_cmd [-5:] == "tgtgt": current_cmd = "" mood ("Aburrido")
def mood (estado de ánimo):
file = open ("index.html", "w") html = """
Reportero de estado de ánimo portátil
Oye, mi estado de ánimo más reciente es
{}
"""
file.write (html.format (estado de ánimo))
mientras que (1):
time.sleep (0.001) if (GPIO.input (18)): if touch_state == 0: if gap_duration> 2000: gap_duration = 0 if gap_duration> 200: current_cmd = current_cmd + "G" else: current_cmd = current_cmd + "g "gap_duration = 0 touch_state = 1 touch_count = touch_count + 1 if touch_state == 1: touch_duration = touch_duration + 1 else: if gap_duration 200: current_cmd = current_cmd +" T "else: current_cmd = current_cmd +" t "touch_duration = 0 cmd ()
GPIO.cleanup ()
Configuración para trabajar con nuestro servidor web
escriba o cargue el archivo python anterior en la ubicación de nuestro servidor web, que está predeterminado en / var / www / html
cd / var / www / html
sudo nano touch.py
Luego escribe el código de arriba
Paso 4: ¡Inicie nuestro servidor para verlo en acción
cd / var / www / html
sudo python touch.py
Luego escriba la dirección IP de nuestra Raspberry Pi, ¡entonces deberíamos ver a nuestro reportero de estado de ánimo trabajando!
Pruebe diferentes tipos de comandos táctiles, ¡y la página debería actualizarse automáticamente para reflejar eso!