Nota
¡Hola! Bienvenido a la Comunidad de Entusiastas de SunFounder para Raspberry Pi, Arduino y ESP32 en Facebook. Sumérgete en el mundo de Raspberry Pi, Arduino y ESP32 junto a otros entusiastas.
¿Por qué unirse?
Soporte Experto: Resuelve problemas posventa y desafíos técnicos con la ayuda de nuestra comunidad y equipo.
Aprende y Comparte: Intercambia consejos y tutoriales para mejorar tus habilidades.
Previsualizaciones Exclusivas: Obtén acceso anticipado a anuncios de nuevos productos y adelantos exclusivos.
Descuentos Especiales: Disfruta de descuentos exclusivos en nuestros productos más recientes.
Promociones Festivas y Sorteos: Participa en sorteos y promociones de temporada.
👉 ¿Listo para explorar y crear con nosotros? Haz clic en [Aquí] y únete hoy.
3. Sistema de Seguridad con @IFTTT
Con este proyecto, crearemos un dispositivo de seguridad que utiliza un sensor PIR para detectar cuando un intruso o animal se introduce en tu hogar. En caso de que esto ocurra, recibirás una alerta por correo electrónico.
Usaremos Webhook como el servicio más básico. Raspberry Pi Pico W enviará una solicitud POST al servicio de IFTTT. A través de IFTTT, crearemos un Applet que intercepte el webhook y envíe un correo electrónico.
Advertencia
la política de precios de IFTTT ha sido actualizada. El uso de este proyecto puede implicar costos adicionales. Por favor, téngalo en cuenta con antelación.
1. Componentes Requeridos
Para este proyecto, necesitamos los siguientes componentes.
Es conveniente adquirir el kit completo; aquí tienes el enlace:
Nombre |
ELEMENTOS EN ESTE KIT |
ENLACE |
|---|---|---|
Kit Kepler |
450+ |
También puedes comprarlos por separado a través de los enlaces a continuación.
N.º |
COMPONENTE |
CANTIDAD |
ENLACE |
|---|---|---|---|
1 |
1 |
||
2 |
Cable Micro USB |
1 |
|
3 |
1 |
||
4 |
Varios |
||
5 |
1(S8050) |
||
6 |
2(1KΩ, 10KΩ) |
||
7 |
1 |
||
8 |
Buzzer Buzzer |
1 |
|
9 |
1 |
||
10 |
Batería 18650 |
1 |
|
11 |
Portapilas |
1 |
|
12 |
1 |
2. Construye el Circuito
Advertencia
Asegúrate de que tu Módulo de Carga Li-po esté conectado como se muestra en el diagrama. De lo contrario, un cortocircuito podría dañar la batería y el circuito.
3. Configura IFTTT
IFTTT es un servicio gratuito que ofrece múltiples formas de conectar diferentes servicios de datos entre sí.
Crearemos un Applet que reaccione a un webhook (URL personalizada) que envía datos a IFTTT. IFTTT luego enviará un correo electrónico por ti.
Sigue los pasos a continuación en IFTTT.
Visita IFTTT para iniciar sesión o crear una cuenta.
Haz clic en Create.
Agrega un evento If This.
Busca Webhooks.
Toca Receive a web request.
Rellena el nombre del evento (por ejemplo, SecurityWarning) y haz clic en Create trigger.
Agrega un evento Then That.
Busca Email.
Haz clic en Send me an email.
Rellena el Asunto y el Cuerpo y luego haz clic en Create action.
Haz clic en Continue para completar la configuración.
Modifica el nombre del título y habrás terminado.
Ahora serás redirigido automáticamente a la página de detalles del Applet, donde podrás ver que el Applet está actualmente conectado y puedes alternar el interruptor para iniciarlo o detenerlo.
4. Ejecuta el Script
Ahora que hemos creado el Applet en IFTTT, también necesitamos la clave API que se puede obtener en Webhooks Settings para permitir que Pico W acceda a IFTTT.
Copia esta clave en el script
secrets.pyde la Raspberry Pi Pico W.
Nota
Si no tienes los scripts
do_connect.pyysecrets.pyen tu Pico W, consulta 1. Acceso a la Red para crearlos.secrets = { 'ssid': 'SSID', 'password': 'PASSWORD', 'webhooks_key':'WEBHOOKS_API_KEY' }
Abre el archivo
3_ifttt_mail.pyen la rutakepler-kit-main/iot, luego haz clic en Archivo -> Guardar como o presionaCtrl+Shift+S.
Selecciona Raspberry Pi Pico en la ventana emergente que aparece.
Asigna el nombre
main.pyal archivo. Aparecerá un mensaje si ya existe un archivo con el mismo nombre en tu Pico W.
Ahora puedes desconectar el cable USB y usar el Módulo de Carga Li-po para alimentar la Raspberry Pi Pico W. Escucharás un pitido del buzzer cuando el script esté en ejecución. El buzzer sonará continuamente si el módulo PIR detecta que alguien o algún animal pasa, y se te enviará una alerta por correo electrónico. El script puede reiniciarse presionando el botón.
¿Cómo funciona?
La Raspberry Pi Pico W debe estar conectada a Internet, como se describe en 1. Acceso a la Red. Para este proyecto, solo tienes que utilizarlo.
from do_connect import *
do_connect()
Lee los datos del módulo PIR y llama a la función motion_detected() si detecta a alguien pasando (datos de 0 a 1).
import machine
sensor=machine.Pin(17,machine.Pin.IN)
sensor.irq(trigger=machine.Pin.IRQ_RISING, handler=motion_detected)
Luego, Pico W envía datos a IFTTT. Como puedes ver, el message que envías a IFTTT es una cadena de URL.
IFTTT identifica al remitente mediante secrets['webhooks_key'], el evento activado se identifica mediante event.
Asegúrate de que ambos sean correctos.
import urequests
from secrets import *
event='SecurityWarning'
message=f"https://maker.ifttt.com/trigger/{event}/with/key/{secrets['webhooks_key']}"
def motion_detected(pin):
urequests.post(message)
print(message)
global warn_flag
warn_flag=True
sensor.irq(handler=None)
Cuando se llama a motion_detected(), la variable warn_flag se establece en True, lo que hace que el buzzer continúe sonando.
while True:
if warn_flag==True:
alarm.toggle()
time.sleep_ms(50)
El propósito del botón aquí es reiniciar el script.
button=machine.Pin(16,machine.Pin.IN)
def reset_device(pin):
machine.reset()
button.irq(trigger=machine.Pin.IRQ_RISING, handler=reset_device)