Tabla de contenido:
- Paso 1: el concepto, la conectividad y los componentes
- Paso 2: haz que funcione el IDE de Arduino
- Paso 3: Conexión del sensor de temperatura, LED y PIR
- Paso 4: Configuración del servidor web en la nube
- Paso 5: Configurar la base de datos para contener los datos de temperatura
- Paso 6: crea la tabla de "temperatura"
- Paso 7: cargue el boceto del sensor de temperatura en su ESP8266
- Paso 8: Acceso a su sensor de temperatura y movimiento
- Paso 9: Instale HomeBridge para HomeKit en Raspberry Pi (opcional)
- Paso 10: Conexión de Homebridge a su Iphone
- Paso 11: Haga que su Homebridge funcione en segundo plano
Video: Sensor de movimiento y temperatura inalámbrico IoT: 11 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:43
Me inspiraron los muchos proyectos de IoT que se encuentran en Instructables, por lo que en el proceso de aprendizaje estoy tratando de combinar alguna aplicación útil que sea relevante. Como extensión de mis Instructables anteriores relacionados con el sensor de temperatura de IoT, ahora agregué más capacidades al subsistema. Las funcionalidades agregadas son:
- Conexión NTP para obtener la hora.
- LED que se puede controlar de forma remota
- Sensor PIR para detectar movimiento
- Conectado Raspberry PI ejecutando homekit para permitir la conexión al iPhone "Home"
Paso 1: el concepto, la conectividad y los componentes
El concepto que se muestra arriba es permitir el monitoreo de temperatura de forma remota con la capacidad adicional de detectar movimiento si alguien está en casa y permitir la notificación a través de LED. Se puede acceder a la unidad localmente en la LAN o de forma remota a través del servidor web. También puede conectar Raspberry Pie (opcional) con el accesorio Homekit instalado para permitir la conexión a la aplicación "Home" del iPhone.
Al igual que la versión anterior, se requieren los siguientes componentes en este proyecto, tenga en cuenta que el enlace a continuación es un enlace de afiliado, por lo que si no desea contribuir, simplemente vaya directamente.
- Placa de desarrollo NodeMcu Lua ESP8266. Yo obtengo el mío de banggood.
- Sensor de temperatura LM35
- sensor PIR
- DIRIGIÓ
- Tablero prototipo
- IDE de Arduino
- Servidor web en funcionamiento con scripting de servidor php habilitado
- Raspberry pi (opcional)
Paso 2: haz que funcione el IDE de Arduino
Para obtener detalles sobre este paso, consulte mis instrucciones anteriores Paso 2 sobre el sensor de temperatura de IoT con ESP8266.
Paso 3: Conexión del sensor de temperatura, LED y PIR
El sensor de temperatura LM35 tiene 3 patas, la primera pata es VCC, puede conectarla a 3.3V (la salida de la placa ESP8266 es 3.3V). La pata del medio es Vout (desde donde se lee la temperatura, puede conectarla a la entrada analógica del pin AD0 del ESP8266, que se encuentra en la parte superior derecha de la placa como se muestra en la imagen. Y la pata derecha debe estar conectado al suelo.
El sensor PIR también consta de 3 patas, puede ver una pequeña marca de +, 0, - en la PCB junto a la pata. Así que conecte el "+" a 3.3V, "-" al suelo y el pin medio "0" al pin D6 de ESP8266.
El LED tenía solo 2 patas, "+" (ánodo), la pata más larga conecta esto al pin D5 de ESP8266 y "-" (cátodo) las patas más cortas deben estar conectadas a tierra (GND).
Paso 4: Configuración del servidor web en la nube
Hay una cierta suposición para este paso:
Ya tiene un servidor web en funcionamiento, alojado en un dominio adecuado. Y está familiarizado con la transferencia de archivos a su servidor web a través de FTP utilizando Filezilla o algún otro programa de FTP.
Sube el archivo zip adjunto a la raíz de tu sitio web. Supongamos para este ejercicio que su sitio web es "https://arduinotestbed.com"
Se supone que todo el archivo está ubicado en la raíz del servidor web, si lo ha almacenado dentro de otra carpeta, ajuste la ubicación del archivo en consecuencia tanto en el archivo ArduinoData3.php como en el boceto de Arduino. Si no está seguro, hágamelo saber y haré todo lo posible para ayudarlo.
Paso 5: Configurar la base de datos para contener los datos de temperatura
estamos usando la base de datos sqllite para este ejercicio. Sqllite es la base de datos basada en archivos ligeros que no requiere un servidor. La base de datos se encuentra localmente en su servidor web. Si le preocupa la seguridad, debe modificar el código para utilizar un servidor de base de datos adecuado como mysql o MSSQL.
Antes de comenzar, debe cambiar la contraseña de la base de datos ubicada en el archivo phpliteadmin.php. Así que abra este archivo en su servidor web y edite la información de la contraseña en la línea 91 a la contraseña que desee.
Luego, apunte a phpliteadmin.php en su servidor web. Usando nuestro ejemplo anterior, debe apuntar a
Debido a que no hay una base de datos en el servidor, se le presentará la pantalla para crear la base de datos. Introduzca "temperature.db" en el cuadro de entrada de la nueva base de datos y haga clic en el botón "Crear". La base de datos se creará con éxito. En este punto, la base de datos todavía está vacía, por lo que necesitará el script sql para crear la estructura de la tabla de la base de datos para alojar los datos.
Paso 6: crea la tabla de "temperatura"
Para crear la tabla, haga clic en la pestaña "SQL" y pegue la siguiente consulta SQL.
COMENZAR LA TRANSACCIÓN;
---- - Estructura de la tabla para la temperatura ---- CREAR TABLA 'temperatura' ('ID' INTEGER PRIMARY KEY NOT NULL, humedad INT NOT NULL, temperatura REAL, marca de tiempo DATETIME DEFAULT CURRENT_TIMESTAMP, 'calentador' BOOLEAN, 'goaltemp' VERDADERO); COMETER;
Luego haga clic en el botón "Ir" en la parte inferior. La tabla debe crearse correctamente.
Si actualiza la página, ahora debería ver la tabla de "temperatura" debajo de la base de datos temperature.db en el lado izquierdo. Si hace clic en la tabla de temperatura si aún no contiene datos.
Ahora que tenemos la base de datos creada, puede apuntar a la siguiente URL
arduinotestbed.com/ArduinoData3.php
Vería el dial de temperatura mostrando datos ficticios, el sensor de movimiento y el panel de control para encender el LED. La parte inferior del gráfico seguirá vacía porque todavía no hay datos.
Paso 7: cargue el boceto del sensor de temperatura en su ESP8266
Ahora copie todo el archivo adjunto y abra el "ESP8266TempPIRSensor.ino", la interfaz de Arduino creará la carpeta por usted. Mueva el resto de los archivos a la nueva carpeta que fue creada por la interfaz de Arduino.
Modifique el servidor web especificado y la ubicación del archivo data_store3.php si es necesario. Luego cargue el boceto en el ESP8266.
Si todo va bien, debería cargarse correctamente y la primera vez que el ESP entrará en modo AP. Puede usar su computadora portátil o teléfono móvil para conectarse. Debería poder encontrar el AP por el nombre de "ESP-TEMP".- Intente conectarse a ESP-TEMP usando su computadora portátil o teléfono móvil - Averigüe cuál es la dirección IP a la que se le está asignando, haciendo el Comando "ipconfig" en windows o comando "ifconfig" en linux o mac. - Si está usando un iPhone, haga clic en el botón i junto a ESP-TEMP al que está conectado - Abra su navegador y apunte a ESP-TEMP, si tiene asignado 192.168.4.10 como su IP, el ESP-TEMP tiene la IP de 192.168.4.1, por lo que puede ir a https://192.168.4.1 y debería aparecer la página de configuración donde puede ingresar el ssid de su enrutador wifi y la clave psk. una vez que haya ingresado ambos y marque la casilla de verificación "Actualizar configuración Wifi", haga clic en "actualizar" para actualizar la configuración a su ESP8266.
Si desea activar la depuración en Serial Monitor, deberá descomentar el
#define DEBUG
línea en el reloj. hy comentó el
// # undef DEBUG
línea. luego haga clic en Tools-> Serial Monitor. La ventana del monitor en serie le mostrará el progreso de la conexión wifi y mostrará la dirección IP local del ESP8266. El LED azul interno parpadeará una vez cuando se realice la lectura de temperatura. También se encenderá cuando se detecte un movimiento.
Paso 8: Acceso a su sensor de temperatura y movimiento
Ahora debería poder apuntar una vez más al servidor web local del ESP8266. Y esto mostrará la hora, la temperatura y el sensor de movimiento.
Ahora también puede apuntar a su servidor web externo, en este ejemplo es
Puede deslizar el botón debajo del panel de control para alternar el LED. Utilizo esto para notificar a mis hijos cuando estoy de camino de regreso a casa del trabajo.
El sensor de movimiento se actualiza aproximadamente cada segundo, por lo que tendrá que actualizar la página con más frecuencia para ver si se detecta movimiento. Por el momento, la actualización automática está configurada en 60 segundos. La temperatura tomará una lectura cada dos minutos, pero también puede ajustarla al tiempo que más le convenga.
¡¡Enhorabuena si llegaste tan lejos !!, date una palmadita en la espalda y disfruta de tu creación. El siguiente paso es opcional, solo si desea poder controlar el LED y monitorear la temperatura, así como el sensor de movimiento de los dispositivos Apple.
Paso 9: Instale HomeBridge para HomeKit en Raspberry Pi (opcional)
Me inspiraron los instructivos de GalenW1, que me permiten aprender mucho sobre HomeBridge.
Para instalar HomeBridge para HomeKit en una Raspberry Pi, puede usar las siguientes instrucciones
github.com/nfarina/homebridge
HomeBridge le permite conectar la aplicación Home en Iphone a los sensores que acaba de construir en los pasos anteriores.
Una vez que instale HomeBridge, debe instalar algunos complementos:
- Sensor de temperatura
- Sensor de movimiento
- Cambiar
sudo npm install -g homebridge-http-temperature
sudo npm install -g homebridge-MotionSensor
sudo npm install -g homebridge-http-simple-switch
Una vez que se instale el complemento, deberá configurar el archivo config.json que se encuentra a continuación
sudo vi /home/pi/.homebridge/config.json
puede ajustar el contenido del archivo config.json como se indica a continuación, asegúrese de que la URL apunte a la ubicación correcta.
Paso 10: Conexión de Homebridge a su Iphone
Ahora que se han configurado todos los accesorios, puede ejecutar el Homebridge con el siguiente comando
homebridge
Debería ver la pantalla como se muestra arriba. Puede seguir el siguiente paso para agregar el Homebridge a su Homekit.
- Ahora inicie su aplicación "Inicio" en su Iphone
- Haga clic en el botón "Agregar accesorios"
- Se le presentará la pantalla para escanear el código, puede usar la cámara de su teléfono para escanear el código desde la pantalla de Raspberry Pi o agregar el código manualmente.
Tenga en cuenta que tanto Iphone como Raspberry Pi deben estar en el mismo enrutador inalámbrico para funcionar.
- Una vez conectado, aparecerá la pantalla que dice que sus accesorios no están certificados, haga clic en el botón "Agregar de todos modos" para continuar.
- Luego tendrás la opción de configurar cada uno de los accesorios, en esta instancia tenemos el interruptor de luz, el sensor de movimiento y el sensor de temperatura.
- La pantalla final te mostrará todos los accesorios que está conectado.
Una vez que esté conectado, puede usar Siri para verificar el sensor de movimiento, la temperatura y encender y apagar la luz.
Paso 11: Haga que su Homebridge funcione en segundo plano
¡¡Felicidades!! lo has hecho. Como beneficio adicional, puede ejecutar Homebridge en segundo plano con el siguiente comando:
Homebridge y
Ahora puedes divertirte un poco con Siri y disfrutar de tu arduo trabajo.
Gracias por seguir esto hasta el final. Si te gusta esto, deja algunos comentarios o vota por mí.
Recomendado:
Robot Arduino inalámbrico con módulo inalámbrico HC12: 7 pasos
Robot Arduino inalámbrico con módulo inalámbrico HC12: Hola chicos, bienvenidos. En mi publicación anterior, expliqué qué es un circuito de puente H, IC de controlador de motor L293D, IC de controlador de motor L293D a cuestas para conducir controladores de motor de alta corriente y cómo puede diseñar y hacer su propia placa de controlador de motor L293D
Sensor inalámbrico de temperatura y humedad de largo alcance IOT con Node-Red: 27 pasos
Sensor inalámbrico de temperatura y humedad de largo alcance IOT con Node-Red: Presentamos el sensor inalámbrico de temperatura y humedad de largo alcance de NCD, con un alcance de hasta 28 millas utilizando una arquitectura de red de malla inalámbrica. La incorporación del sensor de temperatura-humedad HIH9130 de Honeywell transmite temperatura y
Nueva capa de sensor IOT inalámbrico para el sistema de monitoreo ambiental doméstico: 5 pasos (con imágenes)
Nueva capa de sensor IOT inalámbrico para el sistema de monitoreo ambiental doméstico: este Instructable describe una capa de sensor IOT inalámbrico de bajo costo que funciona con baterías para mi Instructable anterior: LoRa IOT Home Environmental Monitoring System. Si aún no ha visto este Instructable anterior, le recomiendo leer la introducción
Introducción a AWS IoT con sensor de temperatura inalámbrico mediante MQTT: 8 pasos
Introducción a AWS IoT con sensor de temperatura inalámbrico mediante MQTT: en Instructables anteriores, hemos pasado por diferentes plataformas en la nube como Azure, Ubidots, ThingSpeak, Losant, etc. Hemos estado utilizando el protocolo MQTT para enviar los datos del sensor a la nube en casi toda la plataforma en la nube. Para más información
Punto de acceso inalámbrico de 50 metros de alcance con adaptador inalámbrico USB TP Link WN7200ND en Raspbian Stretch: 6 pasos
Punto de acceso inalámbrico de 50 metros de alcance con adaptador inalámbrico USB TP Link WN7200ND en Raspbian Stretch: Raspberry Pi es excelente para crear puntos de acceso inalámbricos seguros, pero no tiene un buen alcance, utilicé un adaptador inalámbrico USB TP Link WN7200ND para extenderlo. Quiero compartir cómo hacerlo¿Por qué quiero usar una raspberry pi en lugar de un enrutador? T