Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

MotionSense

Komponenten und Verbrauchsmaterialien

Arduino Mega
× 1
Espressif ESP8266 ESP-01
× 1
HC-SR501 PIR-Sensor
× 1
1000uF Kondensator
× 1
Widerstände und Überbrückungsdrähte
× 1

Notwendige Werkzeuge und Maschinen

Drahtschneider

Apps und Onlinedienste

Pushbullet

Über dieses Projekt

MotionSense

Einführung

In diesem Tutorial werde ich erörtern, wie ein System erstellt wird, das alle nicht autorisierten Aktivitäten oder Eindringlinge benachrichtigt. Ich hatte Arduino und PIR für die Aktivitätserkennung und ESP8266 für die WLAN-Konnektivität verwendet. Mein Xperia Z1 wird verwendet, um Benachrichtigungen zu erhalten. Ich habe die Populär-Benachrichtigungs-App Pushbullet verwendet, um Benachrichtigungen zu erhalten, und die Pushbullet-APIs, um Benachrichtigungen von Arduino zu senden.


Voraussetzungen

  • Kenntnisse in Arduino und grundlegender Hardware [besuch:www.arduino.cc]
  • Idee zu AT-Befehlen [lesen:http://www.codeproject.com/Articles/85636/Introduction-to-AT-commands-and-its-uses]
  • PIR, wie es funktioniert [über:https://en.wikipedia.org/wiki/Passive_infrared_sensor]


'Gebrauchte Dinge'

Arduino Mega 2560

ESP8266 Serielles WLAN ESP-01 Variante

HC-SR501 PIR-Sensor

1000 µF Kondensator, verschiedene Widerstände [ Kondensator für WLAN-Stromversorgung, Widerstand zur Spannungsregelung ]

Einfädige 0,5-mm-Drähte [ Anschlusskabel ]

Weiblich-weiblich Überbrückungsdrähte [ Anschlüsse ]

Xperia Z1 [ für die Pushbullet-App ist jedes Smartphone geeignet ]

Mein Laptop [ codierung in arduino ]

Arduino-IDE [v1.6.4]


Was zu tun ist

Umgebung einrichten: Wenn Sie Arduino nicht installiert haben, installieren Sie es von der Arduino-Website.

Code kopieren ausblenden

PIR einrichten: 

Ich gehe davon aus, dass Sie maximale Empfindlichkeit mit minimalem Alarmzyklus benötigen, um eine bessere Erkennungsrate zu erzielen. Stellen Sie daher die PIR-Sensortöpfe so ein:

Öffnen Sie nun die weiße Kugel des PIR-Sensors und Sie sehen die Pinbeschreibung:GND | AUS | VCC

Verbinden Sie die weiblichen Jumper mit GND VCC und OUT.

Verbinden Sie nun das andere Ende der Jumper-Pins (verbunden mit PIR) mit Arduino:

PIR GND -> Arduino GND

PIR VCC -> Arduino 5V

PIR OUT -> DIGITAL Pin 2 [Sie können die PIN nach Ihrer Wahl auswählen und auch den Arduino-Code ändern]

Um Ihren PIR zu testen, können Sie diesen Code in Arduino Playground verwenden

Also Ihr PIR Sensor ist BEREIT arbeiten

Code kopieren ausblenden

Ermöglichen von Arduino, sich über WLAN mit dem Internet zu verbinden: 

Ich habe das serielle WLAN-Modul ESP8266 (Variante ESP-01) für mein Projekt verwendet, das ziemlich billig ist. Neben ESP-01 gibt es noch weitere Varianten. Es gibt auch verschiedene Firmwares. Ich habe die Standard-AT-Firmware verwendet. Überprüfen Sie diese beiden Bilder als Verbindungsreferenz

Kein ESP8266 mit Arduino mit Überbrückungskabel verbinden:

ESP8266 GND -> Arduino GND

ESP8266 UXTX (Sendestift) -> Arduino RX2 (Arduino Mega-Empfänger-Pin, dh Serial2 im Code)

ESP8266 CH_PD (HOCH machen) -> Arduino 5V (fügen Sie einen Spannungsregler 0f 3.3 hinzu, da ESP 8266 3.3 V tolerieren kann. Ich habe einen Widerstand verwendet, da ich keinen Spannungsregler hatte. Aber Spannungsregler wird bevorzugt)

lass RST, GPIO2 und GPIO0 nicht verbunden

ESP8266 URXD (Empfänger-Pin) -> Arduino TX2 (Arduino-Empfänger-Pin dh Serial2 im Code)

ESP8266 VCC -> 3,3 V Arduino

ESP8266 hat zum Zeitpunkt der Datenübertragung ein Stromproblem. Es zieht so viel Strom von Arduino, dass Arduino neu gestartet werden kann, wenn Arduino über PC-USB mit Strom versorgt wird. Auch bei 5V Stromversorgung über den Netzstecker kann es sein, dass sie nicht ausreicht. Daher wird immer empfohlen, für den ESP8266 eine externe Stromversorgung zu verwenden. In meinem Experiment habe ich jedoch eine schnelle und kostengünstige Lösung dafür verwendet. Ich habe einen 1000µF Elektrolytkondensator verwendet, um den ESP8266 mit genügend Strom zu versorgen.

längerer Pin -> ESP8266 VCC an 3,3 V angeschlossen

kürzerer Pin -> ESP8266 GND mit Arduino GND verbunden

Also Ihr ESP8266 WLAN-Modul ist BEREIT arbeiten

Code kopieren ausblenden

Pushbullet-Notifier: 

Mit Pushbullet können Sie Ihre verschiedenen Geräte nahtlos über Push-Benachrichtigungen benachrichtigen. Wir werden seine API für die Push-Benachrichtigung unseres PIR-Sensors verwenden. LESEN SIE MEHR über Pushbullet

Fangen wir an.

Gehe zu PushBullet

Registrieren Sie sich, laden Sie die Chrome-App und die Smartphone-App herunter.

Melden Sie sich bei Pushbullet an auf deinen Geräten.

Sehen Sie sich jetzt an, wie es funktioniert, mit der auf Ihrem PC installierten App oder Chrome-Erweiterung einige Push-Nachrichten an Ihre Geräte zu senden.

Gehen Sie zum API-Bereich

HINWEIS:Hier werden alle API-Links und URLs für die https-Verbindung bereitgestellt und Arduino kann https nicht verwenden, da dies nicht so leistungsstark ist. Daher werden wir die HTTP-Version dieser APIs verwenden, die hier in Pushbullet-Dokumenten nicht erwähnt wird, aber ich habe diese Referenz von github .

In Pushbullet-Dokumenten zum Pushen wurde die URL erwähnt, die HTTPS ist, daher verwenden wir die HTTP-URL und den Port, die in diesem Github-Projekt bereitgestellt werden. Außerdem werden wir /pushbullet hinzufügen vorher und REST-Pfad, den sie erwähnt hatten.

Beispiel:

für Benachrichtigungen Push an alle Geräte , gemäß Pushbullet-Dokument , REST-Pfad ist : /v2/pushes

aber wir werden verwenden:/pushbullet/v2/pushes

Basis-URL:173.17.168.19

Port:8181

Überprüfen Sie nun verschiedene APIs und lesen Sie die Beschreibungen, um mehr darüber zu erfahren. Sie können sie später für Ihre erweiterte Version dieses Tutorials verwenden.

Sie benötigen Ihren Authentifizierungsschlüssel, um von arduino zu pushen. Gehen Sie also zu Ihrem Konto

Suchen Sie nach Zugriffstoken , kopieren und an einem sicheren Ort auf Ihrem PC speichern.

Also Pushbullet ist jetzt BEREIT zum Senden und Empfangen von Push-Benachrichtigungen.


Jetzt ist es Zeit zu codieren

Dieses GitHub-Projekt öffnen

Gehen Sie zum Ordner Experimente. Dort finden Sie MotionSense.ino , Ihr Code, der Benachrichtigungen an Ihre Smart Devices sendet.

Kopieren Sie diesen Code in die Arduino-IDE und verbinden Sie Ihr Arduino (bereits mit WiFi und PIR-Sensor eingerichtet).

Ändern Sie nun diese Parameter:

Code kopieren ausblenden

#define SSID "YOURSSID" /* IHRSSID durch den Namen Ihres WLAN-Zugangspunkts ersetzen */#define PASS "IHRPASSWORT" /* IHR PASSWORT durch Ihr WLAN-Zugangspunkt-Passwort ersetzen */

Möglicherweise möchten Sie den PIR OUT-Pin in Ihren gewünschten Pin ändern

Code kopieren ausblenden

#define PIRPIN 2 /* ändere deinen gewünschten digitalen Pin deines Arduino */#define AUTH_TOKEN "YOUR_TOKEN_FROM_YOUR_ACCOUNT";/* ersetze YOUR_TOKEN_FROM_YOUR_ACCOUNT mit deinem Access Token*/

Verwenden Sie auch Ihr Zugriffstoken wie im obigen Snippet erwähnt.

Jetzt kompilieren und ausführen.

Die Sensorkalibrierung, die Initialisierung des WLAN-Moduls und die Verbindung mit Ihrem Zugangspunkt dauern einige Zeit.

Sie können diese Dinge in Ihrem seriellen Monitor sehen.

Nachdem alles erledigt ist, wird die Hauptschleife durchlaufen und Sie werden sehen

"Alles in Ordnung | Kein Eindringen "

in Ihrem seriellen Monitor kontinuierlich.

Immer wenn Sie vor Ihren PIR-Sensor gehen, erkennt er Bewegungen und sendet Push-Benachrichtigungen an Ihre Geräte.


Code in Kürze verstehen

#defines sind vordefinierte Parameter, die Sie entsprechend ändern müssen

Im Setup können Sie sehen, wie Arduino Serial() initialisiert wird. Serial2 ist für den seriellen WLAN-Zugriff.

Funktionen verstehen :

Code kopieren ausblenden

sensor_kalibrierung (); /* Es kalibriert den Sensor für die richtige Ausgabe. Wir müssen PIRPIN vorher ausschalten */

Code kopieren ausblenden

check_WiFi_radio (); /* Prüft, ob das WLAN-Modul in Ordnung ist oder nicht */

Code kopieren ausblenden

reset_wifi (); /* setzt das WLAN-Modul zurück, um alle Probleme zu beheben */

Code kopieren ausblenden

set_wifi_mode (); /* WLAN-Modul als Client für die Verbindung zum Access Point festlegen */

Nachdem Sie den WLAN-Modus eingestellt haben, müssen Sie WLAN zurücksetzen, um es einzustellen

Code kopieren ausblenden

check_wifi_stat (); /* Überprüft, ob Ihr WiFi-Modul mit dem AP verbunden ist oder nicht */

Code kopieren ausblenden

connect_ssid(); /* wenn nicht verbunden, dann wird mit Ihrem Verbindungsparameter verbunden */

Bis dahin wurde Ihr WiFi-Modul initialisiert und verbunden. Jetzt müssen Sie den PIR-Wert überprüfen, ob es eine Bewegung erkannt hat oder nicht. Es wird unter der Hauptschleife sein.

Code kopieren ausblenden

pirRead();/* liest den PIR-Wert, entweder 0 oder 1. Wenn 1, dann Motion Sensed, wenn 0, dann ist nichts da */

Wenn etwas erkannt wird, müssen Sie sich zuerst mit dem Pushbullet-Server verbinden

Code kopieren ausblenden

server_connect(); /* Verbindung zum Server */

Jetzt Push-Benachrichtigung

Code kopieren ausblenden

Beitrag (); /* Push-Benachrichtigung an alle Geräte */

trennen

Code kopieren ausblenden

server_disconnect(); /* Serververbindung schließen */

und durchschleifen

Code

MotionSense-Code
Lesen Sie die Readme-Datei zum Repository für die Codeerklärunghttps://github.com/anupam19/ESP8266-experiments

Schaltpläne


Herstellungsprozess

  1. Visitenkarte des Tic-Tac-Toe-Spiels
  2. Multi-Temperatursensor
  3. DIY Lötkolbensteuerung für 862D+
  4. 3D-Drucker Brandschutz
  5. IoT-Messgerät mit Arduino, Yaler und IFTTT
  6. Arduino Repulsive Electromagnetic Levitation
  7. Greifer-Bot mit Fernbedienung
  8. Arduino-betriebener Wetterballon-Datenlogger
  9. ArduFarmBot - Teil 2:Remote-Station und IoT-Implementierung
  10. CoroFence - Wärmedetektor🖖