Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

MotionSense

Componentes y suministros

Arduino Mega
× 1
Espressif ESP8266 ESP-01
× 1
Sensor PIR HC-SR501
× 1
condensador de 1000uF
× 1
Resistencias y cables de puente
× 1

Herramientas y máquinas necesarias

Cortacables

Aplicaciones y servicios en línea

Pushbullet

Acerca de este proyecto

MotionSense

Introducción

En este tutorial, discutiré cómo crear un sistema que notifique cualquier actividad no autorizada o intrusión. Había usado Arduino y PIR para detección de actividad y ESP8266 para conectividad WiFi. My Xperia Z1 se utiliza para recibir notificaciones. Usé la aplicación de notificación popular Pushbullet para recibir notificaciones y las API de Pushbullet para enviar notificaciones desde Arduino.


Conocimientos previos

  • Conocimiento en Arduino y hardware básico [visita:www.arduino.cc]
  • Idea sobre los comandos AT [leer:http://www.codeproject.com/Articles/85636/Introduction-to-AT-commands-and-its-uses]
  • PIR, cómo funciona [acerca de:https://en.wikipedia.org/wiki/Passive_infrared_sensor]


"Cosas" utilizadas

Arduino Mega 2560

Variante ESP-01 de WiFi serial ESP8266

Sensor PIR HC-SR501

Condensador de 1000 µF, diferentes resistencias [ condensador para fuente de alimentación WiFi, resistencia para regulación de voltaje ]

Hilos de un solo hilo de 0,5 mm [ cable conector ]

Cables de puente hembra-hembra [ conectores ]

Xperia Z1 [para la aplicación Pushbullet, cualquier teléfono inteligente servirá]

Mi computadora portátil [codificación en arduino]

IDE de Arduino [v1.6.4]


Qué HACER

Configuración del entorno: Si no tiene arduino instalado, instálelo desde el sitio web de arduino.

Ocultar código de copia

  Configuración de PIR: 

Supongo que necesita la máxima sensibilidad con un ciclo de alerta mínimo para obtener una mejor tasa de detección. Por lo tanto, configure los potenciómetros del sensor PIR así:

Ahora abra la esfera blanca del sensor PIR y verá la descripción del pin:GND | FUERA | VCC

Conecte puentes hembra con GND VCC y OUT.

Ahora conecte el otro extremo de los pines de puente (conectados a PIR) a Arduino:

PIR GND -> Arduino GND

PIR VCC -> Arduino 5V

SALIDA PIR -> PIN DIGITAL 2 [puede elegir el pin de acuerdo a su elección y cambiar el código arduino también]

Para probar su PIR, puede usar este código en Arduino Playground

Entonces su PIR el sensor está LISTO trabajar

Ocultar código de copia

  Habilitación de Arduino para conectarse a Internet a través de WiFi: 

Usé el módulo WiFi serial ESP8266 (variante ESP-01) para mi proyecto, que es bastante barato. Hay otras variantes disponibles además del ESP-01. También hay diferentes firmwares disponibles. Usé el predeterminado, el firmware AT. Verifique estas dos imágenes para referencia de conexión

No conecte ESP8266 con Arduino con cable de puente:

ESP8266 GND -> Arduino GND

ESP8266 UXTX (pin de transmisión) -> Arduino RX2 (Pin del mega receptor arduino, es decir, Serial2 en el código)

ESP8266 CH_PD (hacer ALTO) -> Arduino 5V (agregue un regulador de voltaje 0f 3.3 ya que ESP 8266 puede tolerar 3.3v. He usado una resistencia porque no tenía regulador de voltaje. Pero se prefiere el regulador de voltaje)

dejar RST, GPIO2 y GPIO0 no conectados

ESP8266 URXD (pin del receptor) -> Arduino TX2 (pin del receptor arduino, es decir, Serial2 en el código)

ESP8266 VCC -> 3.3v de Arduino

ESP8266 tiene problemas de energía en el momento de la transmisión de datos. Obtiene tanta energía de arduino que arduino puede reiniciarse si Arduino se alimenta a través del USB de la PC. Incluso con una fuente de alimentación de 5 V a través del enchufe, puede que no sea suficiente. Por lo tanto, siempre se recomienda utilizar una fuente de alimentación externa para ESP8266. Sin embargo, en mi experimento utilicé una solución rápida y barata para esto. Usé un capacitor de electrolito de 1000 µF para suministrar energía suficiente al ESP8266.

pin más largo -> ESP8266 VCC conectado a 3.3v

pin más corto -> ESP8266 GND conectado a arduino GND

Entonces su ESP8266 El módulo WiFi está LISTO trabajar

Ocultar código de copia

  Notificador Pushbullet: 

Pushbullet le permite notificar sin problemas a sus diferentes dispositivos a través de notificaciones push. Vamos a utilizar su API para notificaciones push de nuestro sensor PIR. LEER MÁS sobre Pushbullet

Empecemos.

Vaya a PushBullet

Regístrese, descargue la aplicación Chrome y la aplicación para teléfono inteligente.

Inicie sesión en Pushbullet . en sus dispositivos.

Ahora vea cómo funciona enviar algunos mensajes push a sus dispositivos usando la aplicación o la extensión de Chrome instalada en su PC.

Vaya a la sección API

NOTA:Aquí todos los enlaces de la API y las URL se proporcionan para la conexión https y Arduino no puede usar https ya que no es tan poderoso para manejar eso. Por lo tanto, usaremos la versión HTTP de esas API que no se mencionan aquí en los documentos pushbullet, pero obtuve esta referencia de github .

En los documentos pushbullet para empujar, mencionaron la URL que es HTTPS, por lo que usaremos la URL HTTP y el puerto proporcionado en ese proyecto github. También agregaremos / pushbullet antes y la ruta de REST que habían mencionado.

Ejemplo:

para enviar notificaciones a todos los dispositivos, de acuerdo con pushbullet doc , La ruta de REST es: / v2 / empuja

pero usaremos: / pushbullet / v2 / empuja

URL base: 173.17.168.19

puerto: 8181

Ahora verifique diferentes API y lea las descripciones para conocerlas. Puede usarlos más adelante para su versión mejorada de este tutorial.

Necesita su clave de autenticación para empujar desde arduino. Ve a tu Cuenta .

Busque el Token de acceso , cópielo y guárdelo en su PC en un lugar seguro.

Entonces Pushbullet ahora está LISTO para enviar y recibir notificaciones push.


Es hora de codificar ahora

Abra este Proyecto GitHub

Vaya a la carpeta Experimentos. Allí encontrará MotionSense.ino , su código que enviará notificaciones a sus dispositivos inteligentes.

Copie este código en arduino IDE y conecte su arduino (ya configurado con WiFi y sensor PIR).

Ahora cambie estos parámetros:

Ocultar código de copia

 #define SSID "YOURSSID" / * reemplaza YOURSSID con el nombre de tu punto de acceso WiFi * / # define PASS "YOURPASSWORD" / * reemplaza TU PASSWORD con tu contraseña de punto de acceso WiFi * / 

Es posible que desee cambiar el pin PIR OUT al pin que desee

Ocultar código de copia

 #define PIRPIN 2 / * cambia a tu pin digital deseado de tu arduino * / # define AUTH_TOKEN "YOUR_TOKEN_FROM_YOUR_ACCOUNT"; / * reemplaza YOUR_TOKEN_FROM_YOUR_ACCOUNT con tu Access Token * / 

También use su token de acceso como se menciona en el fragmento anterior.

Ahora compile y ejecute.

Llevará tiempo calibrar el sensor, inicializar el módulo WiFi y conectarse a su punto de acceso.

Puede ver estas cosas en su monitor serial.

Una vez hecho todo, comenzará a recorrer el bucle principal y verá

"Todo bien | Sin intrusiones"

en su monitor de serie de forma continua.

Siempre que vaya frente a su sensor PIR, este detectará movimiento y notificará Push a sus dispositivos.


Breve descripción del código

#defines son un conjunto de parámetros predefinidos que debe cambiar en consecuencia

En la configuración, puede ver la inicialización de arduino Serial (). Serial2 es para acceso en serie WiFi.

Comprensión de las funciones :

Ocultar código de copia

 sensor_calibration (); / * Calibra el sensor para una salida adecuada. Necesitamos apagar PIRPIN antes de eso * / 

Ocultar código de copia

 check_WiFi_radio (); / * Comprueba si el módulo WiFi está bien o no * / 

Ocultar código de copia

 reset_wifi (); / * reinicia el módulo WiFi para solucionar cualquier problema * / 

Ocultar código de copia

 set_wifi_mode (); / * Establecer el módulo WiFi como cliente para conectarse al punto de acceso * / 

Después de configurar el modo WiFi, debe restablecer WiFi para configurarlo

Ocultar código de copia

 check_wifi_stat (); / * Comprueba si su módulo WiFi está conectado a AP o no * / 

Ocultar código de copia

 connect_ssid (); / * si no está conectado, se conectará con su parámetro de conexión * / 

Hasta esto, su módulo WiFi se inicializó y conectó. Ahora debe verificar la lectura PIR si detectó movimiento o no. Estará debajo del bucle principal.

Ocultar código de copia

 pirRead (); / * lee el valor PIR, ya sea 0 o 1. Si es 1, entonces Motion Sensed, si es 0, entonces no hay nada * / 

Si detecta algo, primero debe conectarse al servidor Pushbullet

Ocultar código de copia

 conexión_servidor (); / * conectándose al servidor * / 

Ahora enviar notificación

Ocultar código de copia

 post (); / * enviar notificaciones a todos los dispositivos * / 

desconectar

Ocultar código de copia

 desconexión_servidor (); / * cerrar la conexión del servidor * / 

y recorrer

Código

Código MotionSense
Lea el archivo Léame del repositorio para obtener una explicación del código https://github.com/anupam19/ESP8266-experiments

Esquemas


Proceso de manufactura

  1. Tarjeta de visita del juego Tic Tac Toe
  2. Sensor de temperatura múltiple
  3. Control de cautín de bricolaje para 862D +
  4. Seguridad contra incendios de la impresora 3D
  5. Medidor de IoT con Arduino, Yaler e IFTTT
  6. Levitación electromagnética repulsiva Arduino
  7. Bot de agarre de control remoto
  8. Registrador de datos de globos meteorológicos con tecnología Arduino
  9. ArduFarmBot - Parte 2:Estación remota e implementación de IoT
  10. Reloj Flip Arduino de matriz de un solo LED
  11. CoroFence - Detector térmico🖖