Përmbajtje:
2025 Autor: John Day | [email protected]. E modifikuara e fundit: 2025-01-13 06:58
Në këtë tutorial, unë do t'ju tregoj se si të zbuloni ngjarjen e hapjes së derës dhe të dërgoni një njoftim përmes Gmail duke përdorur Arduino Uno.
Nëse jeni fillestar, mund të mësoni rreth wifi dhe sensorit në mësimet Arduino - WiFi dhe Arduino - Door Sensor.
Le të fillojmë!
Sensori magnetik që kam përdorur përfshin dy pjesë: sensor dhe magnet. Kur dy pjesë janë në afërsi, kunja e daljes së sensorit është LART, përndryshe kunja e daljes është e ULOWT. Duke përfituar nga kjo veçori, unë instalova një pjesë të sensorit në fletën e derës dhe tjetrën në kornizën e derës. Duke kontrolluar gjendjen e pinit të daljes, ne mund të zbulojmë kur dera është e hapur dhe pastaj të bëjmë një paralajmërim ose të dërgojmë një njoftim.
Trajtimi i Ngjarjes
Kur ndodh ngjarja e hapjes së derës, një njoftim dërgohet përmes Gmail.
Hapi 1: Gjërat që na duhen
1. Arduino UNO ose Genuino UNO
2. PHPoC Shield për Arduino
3. Sensori magnetik
Hapi 2: Montimi
1. Stack PHPoC Shield në Arduino.
2. Lidhni kabllon LAN me mburojën për Ethernet.
3. Lidhni kabllot midis Arduino dhe Sensorit.
---- 5v -------- kunja e kuqe.
---- A0 ------- kunj i zi.
Hapi 3: Instaloni këtë Set në Dyer
1. Bashkangjiteni pjesën e sensorit, grupin Arduino (përfshirë mburojën PHPoC) në kornizën e derës
2. Bashkangjiteni pjesën e magnetit në fletën e derës.
3. Fuqia Arduino
4. Lidhuni me internetin nëpërmjet kabllit LAN ose USB Wifi Dongle.
Hapi 4: Shkarkoni dhe instaloni Bibliotekën në Arduino
Instaloni bibliotekën PHPoC dhe ezButton
Hapi 5: Kodi Arduino
#përfshi
#përfshi email PhpocEmail; butoni ezButton (A0); // krijoni objekt Button që i bashkëngjitet pinit A0; void setup () {Serial.begin (9600); Phpoc.begin (PF_LOG_SPI | PF_LOG_NET | PF_LOG_APP); //Phpoc.beginIP6 (); mos e komentoni këtë linjë nëse do të përdorni butonin IPv6.setDebounceTime (100); // caktoni kohën e debunimit në 100 milisekonda} lak void () {button.loop (); // DUHET të thërrasë së pari funksionin loop () nëse (button.isPressed ()) {// nëse dera është e hapur … email.setOutcomingServer ("smtp.gmail.com", 587); email.setOutcomingLogin ("Google ID", "Fjalëkalimi i Google"); email.setFrom ("Adresa e Gmail", "Emri i Dërguesit"); email.setTo ("Adresa e emailit të marrësit", "Emri i marrësit"); email.setSubject ("Dera është hapur. [#905]"); // Subjekti i postës // Përmbajtja e postës email.beginMessage (); email.println ("#905"); email.println (""); email.println ("Dera është hapur."); email.endMessage (); if (email.send ()> 0) // Dërgoni Email Serial.println ("Posta juaj është dërguar me sukses"); tjetër Serial.println ("Posta juaj nuk dërgohet"); } tjetër nëse (button.isReleased ()) {// nëse dera është e mbyllur … // Shkruani kode në të njëjtën mënyrë}}
Hapi 6: Referencat e funksionit
- lak ()
- konfigurim ()
- Serial.filloj ()
- Serial.println ()
- vonesë ()
- për lak
- ndërsa lak
- nese Tjeter
- String.toInt ()