Innehållsförteckning:
- Tillbehör
- Steg 1: Elektronik (hårdvara)
- Steg 2: Elektronik (programvara)
- Steg 3: IFTTT -konfiguration
- Steg 4: SnowAlert -konfiguration
- Steg 5: Montera sensorn
- Steg 6: Få samtalet
Video: Automatisk snöklockning: 6 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:41
Att komma ut ur huset på morgonen kan vara en flod av aktivitet efter att några centimeter av de vita grejerna har lagt sig över natten. Skulle det inte vara trevligt att väckas lite tidigare de dagarna för att ta bort stressen från morgonen? Det här projektet gör just det!
Detta projekt använder en Arduino, en distanssensor och IFTTT (en lättanvänd webbplats) för att automatisera ett väckarklocka till din telefon om det har snöat över natten. När du är klar placerar du enheten du byggde på en hög punkt (till exempel på ett stativ) och pekar ner den mot marken. Därifrån mäter den ständigt avståndet mellan sig själv och marken. När det snöar rör sig "marken" upp mot den, så avståndet som den mäter minskar. Om det är tillräckligt stor skillnad mellan kvällen och morgonen kommer enheten att varna dig om att det har snöat!
Elektroniken är enkel att ansluta och jag tillhandahåller koden, så låt oss hoppa direkt!
Tillbehör
-
Ett Wifi-aktiverat Arduino-kompatibelt mikrochip. För detta projekt antar jag att du kommer att använda ESP8266 NodeMCU Development Board, som jag rekommenderar av många skäl:
- Den har inbyggd wifi.
- Det avslöjar i stort sett alla pins som du kanske vill ha.
- Det ger ett enkelt USB -gränssnitt för programmering.
- Det hanterar kortets återställning vid uppladdning av kod och avslöjar återställningsknappar för felsökning.
-
En TF Mini Lidar räckviddssensor.
Observera att det finns billigare ultraljudssensorer som HC-SR04, men mjuka snödämpningar låter tillräckligt för att de inte fungerar för detta
- En mini -brödbräda.
- Ett stativ eller någon lösning för att montera sensorn några meter över snön.
- En mikro usb -kabel.
- En förlängningskabel.
- En usb -laddare.
- En plastbehållare.
Observera att artiklarna 5 och senare kan köpas på Dollar Tree ganska enkelt.
Priserna varierar, men jag kunde göra detta projekt för cirka $ 50 (utan att räkna stativet) genom att handla på Dollar Tree för de enkla delarna. Den överlägset dyraste delen är Lidar-sensorn, som definitivt kan återanvändas för andra projekt.
Steg 1: Elektronik (hårdvara)
Elektroniken för detta projekt borde vara ganska snabb att montera. Anslut bara TF Mini Lidar Distance Sensor till chipet. Ledningarna ska anslutas enligt beskrivningen i denna utmärkta SparkFun -guide.
Här är en snabb sammanfattning:
Sensor -> ESP8266
Grön -> D2 (aka GPIO 4, som vi kommer att använda som vår RX)
Vit -> D1 (aka GPIO 5, som vi kommer att använda som vår TX)
Röd -> Vin
Svart -> Gnd
Steg 2: Elektronik (programvara)
Beslutet att skicka ett väckarklocka kommer att fattas av ditt mikrochip, så vi måste programmera det på lämpligt sätt! För att programmera ditt chip använder vi ett språk som heter Arduino som du kan ladda upp till ditt chip med Arduino IDE (programvara som körs på din dator).
1. Ladda ner Arduino -programvaran här. Den här guiden kommer att referera till Arduino Desktop IDE -menyerna, så fortsätt och ladda ner det om du inte är super bekväm med Web IDE.
2. Ställ in din Arduino Desktop IDE för att fungera med ESP8266 -mikrochipet. Instruktionerna för det hittar du här. Framåt antar den här guiden att du har din LED blinkande och vet hur man laddar upp ett skript till ESP8266.
3. Ladda ner skriptet för att ladda upp till ditt mikrochip från https://github.com/robertclaus/snowalert. Du behöver inte redigera skriptet. Allt du behöver konfigurera kommer att konfigureras när du har laddat upp koden.
4. Öppna skriptet i Arduino och installera de bibliotek som det är beroende av i ditt system. Klicka på: Sketch -> Inkludera bibliotek -> Hantera bibliotek högst upp i IDE
Sök sedan efter och installera dessa bibliotek:
- WifiManager av tzapu (version 0.14.0)
- ArduinoJson av Benoit Blanchon (version 6.14.1)
- TFminiArduino av hideakitai (version 0.1.1)
- NTPClient av Fabrice Weinberg (version 3.2.0)
- ESP_DoubleResetDetector av Khoi Hoang (version 1.0.1)
5. Konfigurera din styrelse för detta projekt. Klicka på Verktyg högst upp i IDE och justera dessa inställningar:
- Blixtstorlek - 4M (1M SPIFFS) - Detta reserverar utrymme för vår konfiguration att sparas.
-
Radera Flash - Allt innehåll - Detta säkerställer att det inte finns tidigare data på chipet.
Observera att om du någonsin behöver uppdatera koden, kommer du att behålla konfigurationen om du anger Sketch Only
6. Kontrollera att ditt ESP -mikrochip är anslutet till din dator och har en tilldelad port. Välj rätt port i IDE och ladda upp!
7. Öppna Serial Monitor (Verktyg -> Seriell Monitor) i Arduino IDE. Klicka sedan på knappen Återställ på ditt chip. Bekräfta att du får text som visas i Serial Monitor
Steg 3: IFTTT -konfiguration
Nu när din Arduino körs måste vi konfigurera den för att göra vad vi vill. För denna handledning kommer vi att använda en tjänst som heter IFTTT som gör att vi kan översätta ett enkelt meddelande från vår Arduino till mer komplicerade åtgärder.
Till exempel om vår Arduino säger "Det snöade!" då borde IFTTT ringa vår mobiltelefon med ett väckarklocka.
1. Du behöver ett gratis IFTTT -konto som du kan skapa på
2. Om du vill skapa den nya appleten som använder den här logiken navigerar du till Skapa eller följer bara den här länken:
3. Klicka på Detta -> Sök och välj Webhooks -> Om det ber dig om det, klicka på Anslut -> Ange snow_alert i rutan.
4. Klicka på Det -> Sök och välj Telefonsamtal (endast USA) -> Om det ber dig om det, klicka på Anslut -> Om du får en popup, följ anvisningarna -> Skriv ett meddelande som Det snöade i natt! som du vill att telefonsamtalet ska läsa upp för dig.
5. Klicka på Slutför för att aktivera din applet.
6. Testa din Webhook genom att navigera till dina Webhooks -tjänstinställningar i IFTTT och hitta testadressen som anges där. Navigera till den webbadressen och ersätt {event} med snow_alert. Klicka sedan på Testa det. Om allt fungerar bör du få ett telefonsamtal!
7. Spara webbadressen på testsidan längst ned på sidan. Du behöver det i ett senare steg. Det ska se ut ungefär så här:
maker.ifttt.com/trigger/snow_alert/with/key/d-Y8rXge5kibp0dkdrCgxu
För problem med felsökning kan användare också vilja logga snöhöjden över tid. De kan konfigurera en separat IFTTT -applet som accepterar snow_measurement webhook och loggar till Google Sheets. För att göra detta, upprepa bara stegen ovan, men ersätt snow_alert med snow_mätning i Webhooks -steget ovan och ersätt telefonsamtalet med tjänsten Google Sheets -> Lägg till rad i kalkylblad.
Steg 4: SnowAlert -konfiguration
Vid det här laget är det sista mjukvarusteget att konfigurera koden på ditt ESP för att skicka meddelandena till din nya IFTTT -applet.
För den här konfigurationen kommer jag att rekommendera dig att följa SnowAlert -instruktionerna på Github eftersom instruktionerna här kan vara föråldrade om SnowAlert får nya funktioner.
När du skriver dessa instruktioner gör du följande.
Mycket viktigt, alla tider du konfigurerar måste vara i UTC -tidszonen och i 24 -timmarsformat (inte AM/PM).
- Bestäm vilken tid du vill ta emot samtalet på morgonen. Detta är din sluttid.
- Bestäm vilken tid du ska börja mäta föregående kväll. Detta är din starttid.
- Anslut din ESP och öppna seriell bildskärm i Arduino IDE som vi gjorde tidigare.
- Anslut till SnowMeasure wifi -nätverk på din dator. Du bör se någon aktivitet i Serial Monitor när du ansluter.
- Du bör automatiskt hänvisas till en installationssida i din webbläsare efter några sekunder.
- Klicka på Konfigurera Wifi
-
Ange följande värden:
- SSID - WiFi -nätverket som ESP ska ansluta till för internet.
- Lösenord - Lösenordet för att ansluta till det wifi -nätverket.
- Starttid - den timme du vill att den ska mäta snöhöjden på kvällen.
- Startminuter - minutkomponenten till den tid du vill att den ska mäta på kvällen.
- Sluttid - timmen du vill att den ska mäta snöhöjden på morgonen (och eventuellt ringa dig)
- Slutminuter - minutkomponenten till den tid du vill att den ska mäta på morgonen.
- Alert Webhook URL - Detta bör vara webbadressen du sparade i föregående steg som ser ut ungefär så här:
- The Measurement Webhook URL - Detta bör vara samma webbadress som ovan, men ersätt snow_alert med snow_mätning
Steg 5: Montera sensorn
Vid denna tidpunkt borde allt vara klart att gå. Du vill klippa hål i plastbehållaren och montera den någonstans några meter från marken. Hur exakt du monterar det beror på dina delar och mål, men här är några rekommendationer för att få det rätt.
- Se till att din sensor är vänd nedåt i en liten vinkel. Du vill inte att den ska se rakt ner eftersom din låda kommer att kasta en skugga där snön inte träffar marken.
- Du vill ha sensorn upp från snön cirka 2-3 fot.
- Snö smälter i vatten, så se till att din installation är någorlunda vattentät.
- Se till att du har kraft! Antingen en lång usb -kabel eller en förlängningssladd ska ta dig bort från ett tak för att komma till en användbar plats. I vilket fall som helst, se till att det är säkert ute.
Steg 6: Få samtalet
Om allt går enligt plan bör du få samtalet på morgonen om det snöar. Om något inte fungerar kontrollerar du dina distansloggar i Google Kalkylark för att se vad som faktiskt mättes.
Tvåa i Snow Challenge
Rekommenderad:
Batteridrivet kontor. Solsystem med automatisk växling öst/väst solpaneler och vindkraftverk: 11 steg (med bilder)
Batteridrivet kontor. Solsystem med automatisk växling öst/väst solpaneler och vindkraftverk: Projektet: Ett 200 kvadratmeter stort kontor måste vara batteridrivet. Kontoret måste också innehålla alla styrenheter, batterier och komponenter som behövs för detta system. Sol- och vindkraft kommer att ladda batterierna. Det finns ett litet problem med bara
Automatisk IoT Hallway Night Light med ESP8266: 4 steg (med bilder)
Automatisk IoT Hallway Night Light Med ESP8266: Jag startade det här projektet inspirerat av en trappljus från ett annat instruerbart inlägg. Skillnaden är att hjärnan i kretsen använder ESP8266, vilket betyder att det kommer att bli en IoT -enhet
Automatisk videokonferens för mormor med hallon Pi: 9 steg (med bilder)
Automatisk videokonferens för mormor med hallon Pi: Jag är orolig för min 90-åriga mormor eftersom även hon borde stanna hemma under COVID-epidemin, hon ständigt går ut och gör " viktigt " saker på gatan, som att köpa några lotter, prata med grannar. Jag
Bygga en automatisk solspårare med Arduino Nano V2: 17 steg (med bilder)
Bygga en automatisk solspårare med Arduino Nano V2: Hej! Denna instruerbara är tänkt att vara en del två i mitt Solar Tracker -projekt. För en förklaring av hur solspårare fungerar och hur jag utformade min första spårare, använd länken nedan. Detta kommer att erbjuda sammanhang för detta projekt. Https://www.instructables.co
Automatisk last (vakuum) switch med ACS712 och Arduino: 7 steg (med bilder)
Automatisk last (vakuum) -brytare med ACS712 och Arduino: Hej alla, Att köra ett elverktyg i ett slutet utrymme är ett liv, på grund av allt damm som skapas i luften och damm i luften betyder damm i dina lungor. Att köra din butiksvakuum kan eliminera en del av den risken, men slå på och av varje gång