Obsah:
2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-13 06:58
V tomto návode vám ukážem, ako zistiť udalosť otvárania dverí a odoslať upozornenie prostredníctvom služby Gmail pomocou Arduino Uno.
Ak ste začiatočník, môžete sa o wifi a senzore dozvedieť z tutoriálov Arduino - WiFi a Arduino - Door Sensor.
Začnime!
Detekcia otvárania dverí Magnetický senzor, ktorý som použil, obsahuje dve časti: snímač a magnet. Keď sú dve časti v blízkosti, výstupný kolík snímača je VYSOKÝ, inak je výstupný kolík NÍZKY. Využívajúc túto funkciu, nainštaloval som jednu časť senzora na krídlo dverí a druhú na zárubňu. Podľa kontroly stavu výstupného kolíka dokážeme zistiť, či sú dvere otvorené, a potom urobiť upozornenie alebo odoslať upozornenie.
Manipulačná udalosť
Keď dôjde k udalosti otvárania dverí, prostredníctvom služby Gmail sa odošle upozornenie.
Krok 1: Veci, ktoré potrebujeme
1. Arduino UNO alebo Genuino UNO
2. Štít PHPoC pre Arduino
3. Magnetický senzor
Krok 2: Zostavenie
1. Naskladajte štít PHPoC na Arduino.
2. Pripojte kábel LAN k štítu pre ethernet.
3. Kolíkové vedenie medzi Arduino a senzorom.
---- 5v -------- červený kolík.
---- A0 ------- čierny kolík.
Krok 3: Nainštalujte túto sadu na dvere
1. Pripojte senzorovú časť, sadu Arduino (vrátane štítu PHPoC) k zárubni
2. Pripevnite magnetickú časť na krídlo dverí.
3. Napájanie Arduino
4. Pripojte sa na internet pomocou LAN kábla alebo USB Wifi donglu.
Krok 4: Stiahnite si a nainštalujte knižnicu na Arduino
Nainštalujte si knižnicu PHPoC a ezButton
Krok 5: Arduino kód
#zahrnúť
#include PhpocEmail email; tlačidlo ezButton (A0); // vytvorenie objektu Button, ktorý sa pripája na pin A0; void setup () {Serial.begin (9600); Phpoc.begin (PF_LOG_SPI | PF_LOG_NET | PF_LOG_APP); //Phpoc.beginIP6 (); zrušte začiarknutie tohto riadka, ak sa chystáte použiť tlačidlo IPv6. setDebounceTime (100); // nastavenie času odskoku na 100 milisekúnd} void loop () {button.loop (); // MUSÍTE najskôr zavolať funkciu loop (), ak (button.isPressed ()) {// ak sú dvere otvorené … email.setOutgoingServer ("smtp.gmail.com", 587); email.setOutgoingLogin ("Google ID", "Google Google"); email.setFrom („adresa Gmailu“, „meno odosielateľa“); email.setTo („E -mailová adresa príjemcu“, „Meno príjemcu“); email.setSubject ("Dvere sú otvorené. [#905]"); // Predmet pošty // Obsah pošty email.beginMessage (); email.println ("#905"); email.println (""); email.println („Dvere sú otvorené.“); email.endMessage (); if (email.send ()> 0) // Odoslať e -mail Serial.println ("Vaša pošta bola úspešne odoslaná"); else Serial.println („Vaša pošta nie je odoslaná“); } else if (button.isReleased ()) {// ak sú dvere zatvorené … // Napíšte kódy rovnakým spôsobom}}
Krok 6: Funkčné referencie
- slučka ()
- nastaviť()
- Serial.begin ()
- Serial.println ()
- meškanie ()
- pre slučku
- zatiaľ čo slučka
- keď inak
- String.toInt ()