Tabla de contenido:

IoT - Reportero de estado de ánimo portátil: 4 pasos
IoT - Reportero de estado de ánimo portátil: 4 pasos

Video: IoT - Reportero de estado de ánimo portátil: 4 pasos

Video: IoT - Reportero de estado de ánimo portátil: 4 pasos
Video: Por andar de chistosito 😮‍💨 2024, Mes de julio
Anonim
IoT - Reportero de estado de ánimo portátil
IoT - Reportero de estado de ánimo portátil

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

Configuración de nuestro hardware Raspberry Pi
Configuración de nuestro hardware Raspberry Pi
Configuración de nuestro hardware Raspberry Pi
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

Configuración de nuestro entorno en Raspberry Pi
Configuración de 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ñe un fragmento de código Python para leer la entrada de nuestro sensor
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

¡Inicie nuestro servidor para verlo en acción!
¡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!

Recomendado: