Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

MotionSense: Slimme inbraakdetectie met Arduino en ESP8266

Onderdelen en benodigdheden

Arduino Mega 1
Espressif ESP8266 ESP-01 1
HC-SR501 PIR-sensor 1
1000µF condensator 1
Weerstanden en jumper-draden 1 set

Benodigde tools en machines

  • Tang / draadknipper

Apps en online diensten

  • Pushbullet – voor pushnotificaties naar je smartphone

Over dit project

Inleiding

In deze tutorial bouwen we een systeem dat onbevoegde activiteit of inbraak detecteert en meldingen stuurt naar je smartphone. We gebruiken een Arduino Mega voor de detectie met een PIR-sensor en een ESP8266 voor WiFi-connectiviteit. Pushbullet zorgt voor de levering van notificaties.

Vereiste kennis

Gebruikte componenten

  • Arduino Mega 2560
  • ESP8266 seriële WiFi-module (ESP-01 variant)
  • HC-SR501 PIR-sensor
  • 1000 µF condensator, diverse weerstanden (condensator voor WiFi-voeding, weerstanden voor spanningsregeling)
  • Enleiding 0.5mm (verbindingdraden)
  • Female-female jumper-draden (connectoren)
  • Smartphone (bijv. Sony Xperia Z1) met Pushbullet-app
  • Laptop met Arduino IDE (v1.6.4 of nieuwer)

Stap-voor-stap bouwinstructies

Omgeving instellen

Installeer de Arduino IDE vanaf de officiële website als je dat nog niet hebt gedaan.

PIR-sensor aansluiten

Stel de PIR-sensor in op maximale gevoeligheid en minimale alert-cyclus voor optimale detectie. Open de witte kuppel en identificeer de pinnen: GND | OUT | VCC.

Sluit female jumper-draden aan op GND, VCC en OUT. Verbind vervolgens:

  • PIR GND → Arduino GND
  • PIR VCC → Arduino 5V
  • PIR OUT → Digitale pin 2 (kies een andere pin indien gewenst, pas de code dan aan)

Test de PIR-sensor met de voorbeeldcode van de Arduino Playground.

ESP8266 WiFi-module aansluiten

De ESP8266 (ESP-01) is een goedkope seriële WiFi-module. We gebruiken de standaard AT-firmware. Sluit als volgt aan:

  • ESP8266 GND → Arduino GND
  • ESP8266 TX (UXTX) → Arduino RX2 (Serial2 in code)
  • ESP8266 CH_PD → Arduino 5V (via 3.3V spanningsregelaar of weerstand; 3.3V regelaar wordt aanbevolen)
  • ESP8266 RX (URXD) → Arduino TX2 (Serial2 in code)
  • ESP8266 VCC → Arduino 3.3V
  • RST, GPIO2, GPIO0: niet aangesloten

Belangrijk: De ESP8266 trekt piekstromen tijdens dataoverdracht, wat de Arduino kan laten herstarten. Gebruik een 1000µF elektrolytcondensator als buffer:

  • Lange poot (plus) → ESP8266 VCC (aangesloten op 3.3V)
  • Korte poot (min) → ESP8266 GND (aangesloten op Arduino GND)

Pushbullet configureren

  1. Ga naar Pushbullet, registreer je en installeer de app op je smartphone en de Chrome-extensie op je PC.
  2. Log in op al je apparaten.
  3. Test het versturen van notificaties via de app of extensie.
  4. Ga naar de API-sectie en noteer de Access Token (onder Account). Bewaar deze veilig.
  5. Let op: De Pushbullet-documentatie gebruikt HTTPS, maar de Arduino kan geen HTTPS hanteren. Gebruik de HTTP-variant: basis-URL 173.17.168.19, poort 8181, met pad /pushbullet/v2/pushes voor notificaties.

Programmeren

  1. Open het GitHub-project en ga naar de Experiments-map. Daar vind je MotionSense.ino.
  2. Kopieer de code naar de Arduino IDE en verbind je Arduino (met aangesloten WiFi en PIR).
  3. Wijzig de volgende parameters in de code:
    #define SSID "JOUW_SSID"        // Vervang door je WiFi-netwerknaam
    #define PASS "JOUW_WACHTWOORD"  // Vervang door je WiFi-wachtwoord
    #define PIRPIN 2                // Pas aan naar je gewenste digitale pin
    #define AUTH_TOKEN "JOUW_ACCESS_TOKEN"  // Vervang door je Pushbullet Access Token
    
  4. Compileer en upload de sketch.
  5. Open de Seriële Monitor (9600 baud). De sensor kalibreert, de WiFi-module initialiseert en verbindt met je accespoint. Daarna verschijnt continu "Everything fine | No intrusion".
  6. Beweeg voor de PIR-sensor: een notificatie wordt naar je apparaten gestuurd.

Codebegrip (kort)

  • sensor_calibration() – kalibreert de sensor (PIR-pin eerst laag zetten)
  • check_WiFi_radio() – controleert of WiFi-module werkt
  • reset_wifi() – reset WiFi-module
  • set_wifi_mode() – stelt WiFi in als client voor AP-verbinding
  • check_wifi_stat() – controleert of verbonden met AP
  • connect_ssid() – verbindt met WiFi-netwerk
  • pirRead() – leest PIR-waarde (0 of 1)
  • server_connect() – verbindt met Pushbullet-server
  • post() – stuurt notificatie
  • server_disconnect() – sluit verbinding

Code

De complete code en uitleg vind je in de GitHub-repository: ESP8266-experiments

Schema

Het schakelschema toont de verbindingen tussen Arduino Mega, ESP8266, PIR-sensor, condensator en weerstanden.

Productieproces

  1. Aangepaste 4×4 Boter-Kaas-Eieren Visitekaartje PCB – Ontwerp, Bouw en Code Handleiding
  2. Meerpositie-temperatuursensorsysteem voor slimme thuisintegratie
  3. DIY Soldeerbout-controller voor 862D+ — Precisie & Betrouwbaarheid
  4. 3D-Printer Brandpreventie: Slimme Sensor Veiligheidssysteem
  5. Web-IoT Meter Bouwen met Arduino, Yaler en IFTTT
  6. Arduino-gebaseerde Afstotende Magnetische Levitatie: Eenvoudige Schakeling & DIY Handleiding
  7. Geavanceerde Remote-gecontrolleerde Gripper Robot voor Precisiehantering
  8. High-Performance Arduino Weerballon Datalogger
  9. ArduFarmBot Deel 2: Een Extern IoT-besturingsstation Bouwen
  10. Arduino Flip Clock met 8×8 LED Matrix – DIY Real-Time Clock Project
  11. CoroFence Thermische Detector: Geavanceerde PIR-sensor & IoT-integratie