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 postventa y desafíos técnicos con la ayuda de nuestra comunidad y equipo.
Aprende y Comparte: Intercambia consejos y tutoriales para mejorar tus habilidades.
Avances Exclusivos: 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 festivas.
👉 ¿Listo para explorar y crear con nosotros? Haz clic en [Aquí] y únete hoy mismo.
Sistema de Seguridad con IFTTT
Con este proyecto, creamos un dispositivo de seguridad que emplea un Sensor PIR para detectar intrusos o animales que ingresan a tu hogar. En caso de una intrusión, recibirás una alerta por correo electrónico.
Utilizaremos Webhooks como el servicio fundamental. Se envía una solicitud POST al servicio de IFTTT desde el UNO R4.
Componentes Requeridos
En este proyecto, necesitamos los siguientes componentes.
Es definitivamente conveniente comprar un kit completo, aquí está el enlace:
Nombre |
Ítems en este Kit |
Enlace |
---|---|---|
Elite Explorer Kit |
300+ |
También puedes comprarlos por separado desde los enlaces a continuación.
Introducción del Componente |
Enlace de Compra |
---|---|
- |
|
Conexiones
Esquemático
Configurando IFTTT
IFTTT es un servicio gratuito que ofrece varios métodos para vincular diferentes servicios de datos.
Vamos a crear un Applet que responda a un webhook (URL personalizada) enviando datos a IFTTT, que luego te enviará un correo electrónico.
Por favor 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.
Selecciona 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.
Elige Send me an email.
Introduce el Asunto y el Cuerpo, luego haz clic en Create action.
Haz clic en Continue para finalizar la configuración.
Ajusta el nombre del título según sea necesario.
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 activar/desactivar el interruptor.
Ahora que hemos creado el Applet de IFTTT, también necesitamos la clave de webhooks, que se puede obtener de Webhooks Ajustes para permitir que tu dispositivo acceda a IFTTT.
Copia la clave de webhooks en «arduino_secrets.h» y completa con tu SSID y contraseña.
#define SECRET_SSID "your_ssid" // tu SSID de red (nombre) #define SECRET_PASS "your_password" // tu contraseña de red (usada para WPA, o como clave para WEP) #define WEBHOOKS_KEY "your_key"
Ejecutar el Código
Nota
Puedes abrir el archivo
03_ifttt_pir.ino
bajo la rutaelite-explorer-kit-main\iot_project\03_ifttt_pir
directamente.O copia este código en el IDE de Arduino.
Nota
En el código, SSID y contraseña se almacenan en arduino_secrets.h
. Antes de subir este ejemplo, necesitas modificarlos con tus propias credenciales de WiFi. Adicionalmente, por motivos de seguridad, asegúrate de mantener esta información confidencial al compartir o almacenar el código.
Advertencia
Para evitar que tu buzón de correo se inunde, por favor depura el Módulo Sensor de Movimiento PIR previamente antes de ejecutar el código para este proyecto.
¿Cómo funciona?
Incluye las bibliotecas y archivos de encabezado necesarios:
"WiFiS3.h"
: Utilizado para gestionar conexiones Wi-Fi."arduino_secrets.h"
: Contiene el nombre de la red Wi-Fi y la contraseña para proteger la información sensible.
Define algunas variables globales y constantes:
ssid
: Nombre de la red Wi-Fi.pass
: Contraseña de la red Wi-Fi.status
: Estado de la conexión Wi-Fi.client
: Cliente utilizado para comunicarse con el servidor Wi-Fi.server
: Dirección del servidor de Webhook de IFTTT.event
: Nombre del evento de Webhook de IFTTT.webRequestURL
: URL construida para enviar solicitudes HTTP, incluyendo el nombre del evento de Webhook y la clave.pirPin
: Pin digital al que está conectado el sensor PIR.motionDetected
: Variable de bandera para rastrear la detección de movimiento.
Función
setup()
:Inicializa la comunicación serial.
Verifica la presencia del módulo Wi-Fi y muestra su versión de firmware.
Intenta conectarse a la red Wi-Fi, con reintentos si no tiene éxito.
Configura el pin conectado al sensor PIR en modo de entrada.
Función
readResponse()
:Lee los datos de respuesta HTTP del servidor de IFTTT y los imprime en la consola serial.
Función
loop()
:Llama a la función
readResponse()
para leer los datos de respuesta HTTP.- Verifica la presencia de movimiento usando el sensor PIR. Si se detecta movimiento y no se había detectado previamente:
Imprime «¡Movimiento detectado!» en la consola.
Llama a la función
triggerIFTTTEvent()
para enviar una solicitud HTTP al servidor de IFTTT, activando el evento de Webhook.Establece la bandera
motionDetected
atrue
para indicar que se ha detectado movimiento.
Si no se detecta movimiento, establece la bandera
motionDetected
afalse
.
Función
triggerIFTTTEvent()
:Establece una conexión con el servidor de IFTTT.
Envía una solicitud HTTP GET, incluyendo la URL del evento de Webhook y otros encabezados HTTP.
Función
printWifiStatus()
:Muestra información sobre la red Wi-Fi conectada, incluyendo SSID, dirección IP y potencia de la señal (RSSI) en la consola serial.