Indholdsfortegnelse:

Automatisk sneopkald: 6 trin (med billeder)
Automatisk sneopkald: 6 trin (med billeder)

Video: Automatisk sneopkald: 6 trin (med billeder)

Video: Automatisk sneopkald: 6 trin (med billeder)
Video: VTech CS6529-4B 4 Handset Cordless Answering System Telephone 2024, Juli
Anonim
Automatisk sneopkald
Automatisk sneopkald
Automatisk sneopkald
Automatisk sneopkald

At komme ud af huset om morgenen kan være en flod af aktivitet, efter at et par centimeter af de hvide ting har lagt sig hen over natten. Ville det ikke være rart at blive vækket lidt tidligere på de dage for at tage stresset ud af morgenen? Dette projekt gør netop det!

Dette projekt bruger en Arduino, en afstandssensor og IFTTT (et brugervenligt websted) til at automatisere et vækkeopkald til din telefon, hvis det er sneet over natten. Når du er klar, placerer du den enhed, du har bygget, på et højt punkt (f.eks. På et stativ) og peger den ned mod jorden. Derfra vil den konstant måle afstanden mellem sig selv og jorden. Når det sner, bevæger "jorden" sig op mod den, så afstanden, den måler, falder. Hvis der er en stor nok forskel mellem aften og morgen, vil enheden advare dig om, at det sneede!

Elektronikken er enkel at tilslutte, og jeg giver koden, så lad os springe lige ind!

Forbrugsvarer

  1. En Wifi-aktiveret Arduino-kompatibel mikrochip. Til dette projekt går jeg ud fra, at du vil bruge ESP8266 NodeMCU Development Board, som jeg anbefaler af mange årsager:

    • Det har Wifi indbygget.
    • Det afslører stort set alle de pins, du måtte ønske.
    • Det giver en let USB -interface til programmering.
    • Det håndterer kortets nulstilling, når du uploader kode, og afslører nulstillingsknapper til fejlfinding.
  2. En TF Mini Lidar rækkevidde sensor.

    Bemærk, at der er billigere ultralydssensorer som HC-SR04, men bløde snedæmpninger lyder nok til, at de ikke fungerer til dette

  3. Et mini -brødbræt.
  4. Et stativ eller en hvilken som helst løsning til montering af sensoren et par fod over sneen.
  5. Et mikro usb kabel.
  6. Et forlængerkabel.
  7. En usb oplader.
  8. En plastbeholder.

Bemærk, at varer 5 og derover kan købes på Dollar Tree ret let.

Priserne varierer, men jeg var i stand til at lave dette projekt for omkring $ 50 (ikke tæller stativet) ved at shoppe på Dollar Tree for de enkle dele. Den langt dyreste del er Lidar-sensoren, som helt sikkert kan genbruges til andre projekter.

Trin 1: Elektronik (hardware)

Elektronik (hardware)
Elektronik (hardware)
Elektronik (hardware)
Elektronik (hardware)
Elektronik (hardware)
Elektronik (hardware)

Elektronikken til dette projekt skulle være temmelig hurtig at samle. Tilslut bare TF Mini Lidar Distance Sensor til chippen. Ledningerne skal forbinde som beskrevet i denne fremragende SparkFun -guide.

Her er et hurtigt resumé:

Sensor -> ESP8266

Grøn -> D2 (aka GPIO 4, som vi vil bruge som vores RX)

Hvid -> D1 (aka GPIO 5, som vi vil bruge som vores TX)

Rød -> Vin

Sort -> Gnd

Trin 2: Elektronik (software)

Elektronik (software)
Elektronik (software)

Beslutningen om at sende dig et vækkeopkald vil blive truffet af din mikrochip, så vi skal programmere det korrekt! For at programmere din chip bruger vi et sprog kaldet Arduino, som du kan uploade til din chip ved hjælp af Arduino IDE (software, der kører på din computer).

1. Download Arduino -softwaren her. Denne vejledning refererer til Arduino Desktop IDE -menuerne, så fortsæt og download det, medmindre du er super komfortabel med Web IDE.

2. Konfigurer din Arduino Desktop IDE til at arbejde med ESP8266 -mikrochippen. Instruktionerne til det kan findes her. Fremover antager denne vejledning, at du har din LED blinkende og ved, hvordan du uploader et script til ESP8266.

3. Download scriptet for at uploade til din mikrochip fra https://github.com/robertclaus/snowalert. Ingen grund til at redigere scriptet. Alt, hvad du skal konfigurere, kan konfigureres, når du har uploadet koden.

4. Åbn scriptet i Arduino, og installer de biblioteker, det afhænger af i dit system. Øverst i IDE skal du klikke på: Skitse -> Inkluder biblioteker -> Administrer biblioteker

Søg derefter efter og installer disse biblioteker:

  • WifiManager af tzapu (version 0.14.0)
  • ArduinoJson af Benoit Blanchon (version 6.14.1)
  • TFminiArduino af hideakitai (version 0.1.1)
  • NTPClient af Fabrice Weinberg (version 3.2.0)
  • ESP_DoubleResetDetector af Khoi Hoang (version 1.0.1)

5. Konfigurer din tavle til dette projekt. Øverst i IDE skal du klikke på Værktøjer og justere disse indstillinger:

  • Flashstørrelse - 4M (1M SPIFFS) - Dette forbeholder sig plads til, at vores konfiguration kan gemmes.
  • Slet flash - alt indhold - Dette sikrer, at der ikke er tidligere data på chippen.

    Bemærk, hvis du nogensinde har brug for at opdatere koden, bevarer din konfiguration denne indstilling til Sketch Only

6. Sørg for, at din ESP -mikrochip er tilsluttet din computer og har en tildelt port. Vælg den korrekte port i IDE, og upload!

7. Åbn Serial Monitor (Værktøjer -> Serial Monitor) i Arduino IDE. Klik derefter på knappen Nulstil på din chip. Bekræft, at du får vist tekst i Serial Monitor

Trin 3: IFTTT -konfiguration

IFTTT -konfiguration
IFTTT -konfiguration
IFTTT -konfiguration
IFTTT -konfiguration
IFTTT -konfiguration
IFTTT -konfiguration

Nu hvor din Arduino kører, skal vi konfigurere den til at gøre, hvad vi vil. Til denne vejledning bruger vi en service kaldet IFTTT, der giver os mulighed for at oversætte en simpel besked fra vores Arduino til mere komplicerede handlinger.

For eksempel hvis vores Arduino siger "Det sneede!" så skulle IFTTT ringe til vores mobiltelefon med et vækkeopkald.

1. Du skal bruge en gratis IFTTT -konto, som du kan oprette på

2. For at oprette den nye applet, der bruger denne logik, skal du navigere til Opret eller bare følge dette link:

3. Klik på This -> Search og vælg Webhooks -> Hvis det beder dig om det, skal du klikke på Connect -> Enter snow_alert i feltet.

4. Klik på Det -> Søg, og vælg Telefonopkald (Kun USA) -> Hvis det beder dig om det, skal du klikke på Opret forbindelse -> Hvis du får en popup, skal du følge vejledningen -> Indtast en besked som Det sneede i nat! at du gerne vil have, at telefonopkaldet læses op for dig.

5. Klik på Afslut for at aktivere din applet.

6. Test din Webhook ved at navigere til dine Webhooks -serviceindstillinger i IFTTT og finde test -URL'en angivet der. Naviger til den pågældende webadresse, og erstat {event} med snow_alert. Klik derefter på Test det. Hvis alt fungerer, skal du modtage et telefonopkald!

7. Gem url'en på testsiden mod bunden af siden. Du får brug for det i et senere trin. Det skal se sådan ud:

maker.ifttt.com/trigger/snow_alert/with/key/d-Y8rXge5kibp0dkdrCgxu

For fejlfindingsproblemer kan brugere også logge snehøjden over tid. De kan konfigurere en separat IFTTT -applet, der accepterer sne_måling webhook og logfiler til Google Sheets. For at gøre dette skal du blot gentage trinene ovenfor, men erstatte snow_alert med snow_measurement i Webhooks -trinnet ovenfor og erstatte telefonopkaldstrinnet med tjenesten Google Sheets -> Tilføj række til regneark.

Trin 4: SnowAlert -konfiguration

SnowAlert -konfiguration
SnowAlert -konfiguration

På dette tidspunkt er det sidste softwaretrin at konfigurere koden på dit ESP til at sende meddelelserne til din nye IFTTT -applet.

Til denne konfiguration vil jeg anbefale dig at følge SnowAlert -instruktionerne på Github, fordi instruktionerne her kan være forældede, hvis SnowAlert får nye funktioner.

På det tidspunkt, hvor du skrev disse instruktioner, ville du gøre følgende.

Meget vigtigt er, at alle de tidspunkter, du konfigurerer, skal være i UTC -tidszonen og i 24 -timers format (ikke AM/PM).

  1. Beslut, hvornår du vil modtage opkaldet om morgenen. Dette er din sluttid.
  2. Beslut, hvornår du skal begynde at måle den foregående aften. Dette er din starttid.
  3. Tilslut din ESP, og åbn den serielle skærm i Arduino IDE som vi gjorde tidligere.
  4. Opret forbindelse til SnowMeasure wifi -netværket på din computer. Du bør se en vis aktivitet i Serial Monitor, mens du opretter forbindelse.
  5. Du bør automatisk blive dirigeret til en opsætningsside i din browser efter et par sekunder.
  6. Klik på Konfigurer Wifi
  7. Indtast følgende værdier:

    1. SSID - Wi -Fi -netværket, som ESP skal oprette forbindelse til for internettet.
    2. Adgangskode - Adgangskoden til at oprette forbindelse til det wifi -netværk.
    3. Starttid - den time, du vil have den til at måle snehøjden om aftenen.
    4. Start minutter - minutkomponenten til det tidspunkt, du vil have den til at måle om aftenen.
    5. Afslutningstid - den time, du vil have den til at måle snehøjden om morgenen (og muligvis ringe til dig)
    6. Slutminutter - minutkomponenten til det tidspunkt, du vil have den til at måle om morgenen.
    7. Alert Webhook URL - Dette skal være den webadresse, du gemte i det foregående trin, der ser sådan ud:
    8. Measurement Webhook URL - Dette skal være den samme url som ovenfor, men erstat snow_alert med snow_measurement

Trin 5: Monter sensoren

Monter sensoren
Monter sensoren
Monter sensoren
Monter sensoren
Monter sensoren
Monter sensoren

På dette tidspunkt burde alt være klar til at gå. Du vil gerne skære huller i plastbeholderen og montere den et par meter fra jorden. Hvor præcist du monterer det vil afhænge af dine dele og mål, men her er et par anbefalinger for at få det rigtigt.

  • Sørg for, at din sensor vender nedad i en lille vinkel. Du vil ikke have, at den ser lige ned, da din boks kaster en skygge, hvor sneen ikke rammer jorden.
  • Du vil have sensoren op af sneen omkring 2-3 fod.
  • Sne smelter i vand, så sørg for, at dit setup er rimeligt vandtæt.
  • Sørg for, at du har strøm! Enten skal et langt usb -kabel eller en forlængerledning få dig væk fra et tag for at komme til et nyttigt sted. Uanset hvad, skal du sørge for, at det er sikkert udenfor.

Trin 6: Få opkaldet

Få opkaldet!
Få opkaldet!

Hvis alt går efter planen, skal du få opkaldet om morgenen, hvis det sner. Hvis noget ikke virker, skal du kontrollere dine afstandslogfiler i Google Sheets for at se, hvad der faktisk blev målt.

Snow Challenge
Snow Challenge
Snow Challenge
Snow Challenge

Runner Up i Snow Challenge

Anbefalede: