Innholdsfortegnelse:

Automatisk snøvekking: 6 trinn (med bilder)
Automatisk snøvekking: 6 trinn (med bilder)

Video: Automatisk snøvekking: 6 trinn (med bilder)

Video: Automatisk snøvekking: 6 trinn (med bilder)
Video: Molo - Automatisk (Lyrics) 2024, Juli
Anonim
Automatisk snøvekking
Automatisk snøvekking
Automatisk snøvekking
Automatisk snøvekking

Å komme ut av huset om morgenen kan være en mengde aktivitet etter at noen få centimeter av de hvite tingene har lagt seg over natten. Ville det ikke vært fint å bli våknet litt tidligere på de dagene for å ta stresset ut av morgenen? Dette prosjektet gjør nettopp det!

Dette prosjektet bruker en Arduino, en avstandssensor og IFTTT (et brukervennlig nettsted) for å automatisere en vekker til telefonen din hvis det har snødd over natten. Når du er klar, plasserer du enheten du bygde på et høyt punkt (for eksempel på et stativ) og peker den ned mot bakken. Derfra vil den hele tiden måle avstanden mellom seg selv og bakken. Når det snør, beveger "bakken" seg opp mot den, så avstanden den måler avtar. Hvis det er stor nok forskjell mellom kvelden og morgenen, vil enheten varsle deg om at det snødde!

Elektronikken er enkel å koble til, og jeg gir koden, så la oss hoppe rett inn!

Rekvisita

  1. En Wifi-aktivert Arduino-kompatibel mikrochip. For dette prosjektet antar jeg at du vil bruke ESP8266 NodeMCU Development Board, som jeg anbefaler av mange årsaker:

    • Den har innebygd Wifi.
    • Det avslører stort sett alle pinnene du måtte ønske.
    • Det gir et enkelt USB -grensesnitt for programmering.
    • Den håndterer brettreset når du laster opp kode, og avslører tilbakestillingsknapper for feilsøking.
  2. En TF Mini Lidar rekkevidde sensor.

    Vær oppmerksom på at det er billigere ultralydsensorer som HC-SR04, men myke snødemper lyder nok til at de ikke fungerer for dette

  3. Et mini -brødbrett.
  4. Et stativ eller hvilken som helst løsning for montering av sensoren noen få meter over snøen.
  5. En mikro -usb -kabel.
  6. En skjøteledning.
  7. En usb lader.
  8. En plastbeholder.

Vær oppmerksom på at varer 5 og nyere kan kjøpes på Dollar Tree ganske enkelt.

Prisene varierer, men jeg klarte å gjøre dette prosjektet for rundt $ 50 (ikke telle stativet) ved å handle på Dollar Tree for de enkle delene. Den desidert dyreste delen er Lidar-sensoren, som definitivt kan brukes på nytt til andre prosjekter.

Trinn 1: Elektronikk (maskinvare)

Elektronikk (maskinvare)
Elektronikk (maskinvare)
Elektronikk (maskinvare)
Elektronikk (maskinvare)
Elektronikk (maskinvare)
Elektronikk (maskinvare)

Elektronikken til dette prosjektet skal være ganske rask å montere. Bare koble TF Mini Lidar Distance Sensor til brikken. Ledningene skal koble seg til som beskrevet i denne utmerkede SparkFun -guiden.

Her er en rask oppsummering:

Sensor -> ESP8266

Grønn -> D2 (aka GPIO 4, som vi skal bruke som vår RX)

Hvit -> D1 (aka GPIO 5, som vi skal bruke som vår TX)

Rød -> Vin

Svart -> Gnd

Trinn 2: Elektronikk (programvare)

Elektronikk (programvare)
Elektronikk (programvare)

Beslutningen om å sende deg en vekker vil bli tatt av din mikrochip, så vi må programmere den på riktig måte! For å programmere brikken din bruker vi et språk som heter Arduino som du kan laste opp til brikken din med Arduino IDE (programvare som kjører på datamaskinen din).

1. Last ned Arduino -programvaren her. Denne guiden vil referere til Arduino Desktop IDE -menyene, så fortsett og last ned det med mindre du er super komfortabel med Web IDE.

2. Sett opp Arduino Desktop IDE for å fungere med ESP8266 -mikrobrikken. Instruksjonene for det finner du her. Fremover antar denne guiden at du har LED -lampen din blinkende og vet hvordan du laster opp et skript til ESP8266.

3. Last ned skriptet for å laste opp til mikrochippen fra https://github.com/robertclaus/snowalert. Du trenger ikke å redigere skriptet. Alt du trenger for å konfigurere, kan konfigureres etter at du har lastet opp koden.

4. Åpne skriptet i Arduino og installer bibliotekene det er avhengig av i systemet. Klikk på: Skisse -> Inkluder biblioteker -> Administrer biblioteker øverst i IDE

Søk deretter etter og installer disse bibliotekene:

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

5. Konfigurer brettet ditt for dette prosjektet. Klikk på Verktøy øverst i IDE og juster disse innstillingene:

  • Blitsstørrelse - 4M (1M SPIFFS) - Dette forbeholder seg plass til at konfigurasjonen vår kan lagres.
  • Slett Flash - alt innhold - Dette sikrer at det ikke er tidligere data på brikken.

    Vær oppmerksom på at hvis du noen gang trenger å oppdatere koden, vil konfigurasjonen din bevares hvis du setter denne til Sketch Only

6. Kontroller at ESP -mikrobrikken er koblet til datamaskinen og har en tilordnet port. Velg riktig port i IDE, og last opp!

7. Åpne Serial Monitor (Verktøy -> Serial Monitor) i Arduino IDE. Klikk deretter på Reset -knappen på brikken din. Bekreft at du får tekst som vises i Serial Monitor

Trinn 3: IFTTT -konfigurasjon

IFTTT -konfigurasjon
IFTTT -konfigurasjon
IFTTT -konfigurasjon
IFTTT -konfigurasjon
IFTTT -konfigurasjon
IFTTT -konfigurasjon

Nå som din Arduino kjører, må vi konfigurere den til å gjøre det vi vil. For denne opplæringen bruker vi en tjeneste kalt IFTTT som lar oss oversette en enkel melding fra Arduino til mer kompliserte handlinger.

For eksempel hvis vår Arduino sier "Det snødde!" så bør IFTTT ringe mobiltelefonen vår med en vekker.

1. Du trenger en gratis IFTTT -konto, som du kan opprette på

2. For å lage den nye appleten som bruker denne logikken, naviger til Opprett, eller bare følg denne lenken:

3. Klikk på Dette -> Søk, og velg Webhooks -> Hvis du blir bedt om det, klikker du på Koble til -> Skriv inn snow_alert i boksen.

4. Klikk på Det -> Søk og velg Telefonsamtale (bare USA) -> Hvis du blir bedt om det, klikker du på Koble til -> Hvis du får en popup, følger du instruksjonene -> Skriv inn en melding som Det snødde i går kveld! at du vil at telefonen skal lese opp for deg.

5. Klikk Fullfør for å aktivere appleten.

6. Test Webhook -en din ved å navigere til Webhooks -tjenesteinnstillingene i IFTTT og finne test -URL -en som er oppført der. Naviger til nettadressen og erstatt {event} med snow_alert. Klikk deretter på Test det. Hvis alt fungerer, bør du motta en telefon!

7. Lagre nettadressen på undersiden på undersiden av siden. Du trenger det i et senere trinn. Det skal se slik ut:

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

For feilsøkingsproblemer kan det også være lurt å logge snøhøyden over tid. De kan konfigurere en egen IFTTT -applet som godtar webhooken snow_measurement og logger til Google Sheets. For å gjøre dette, bare gjenta trinnene ovenfor, men erstatt snow_alert med snow_measurement i Webhooks -trinnet ovenfor og erstatt telefonsamtaletrinnet med Google Sheets -tjenesten -> Legg rad til regneark.

Trinn 4: SnowAlert -konfigurasjon

SnowAlert -konfigurasjon
SnowAlert -konfigurasjon

På dette tidspunktet er det siste programvaretrinnet å konfigurere koden på ESP for å sende meldingene til din nye IFTTT -applet.

For denne konfigurasjonen vil jeg anbefale deg å følge SnowAlert -instruksjonene på Github fordi instruksjonene her kan være utdaterte hvis SnowAlert får nye funksjoner.

Når du skriver disse instruksjonene, gjør du følgende.

Veldig viktig er at alle tidene du konfigurerer må være i UTC -tidssonen og i 24 -timers format (ikke AM/PM).

  1. Bestem hvilken tid du vil motta samtalen om morgenen. Dette er sluttiden din.
  2. Bestem hvilken tid du skal begynne å måle forrige kveld. Dette er din starttid.
  3. Koble til ESP og åpne seriell skjerm i Arduino IDE som vi gjorde tidligere.
  4. Koble til SnowMeasure wifi -nettverket på datamaskinen din. Du bør se aktivitet i Serial Monitor når du kobler deg til.
  5. Du bør bli sendt til en oppsettside i nettleseren automatisk etter noen få sekunder.
  6. Klikk på Konfigurer Wifi
  7. Skriv inn følgende verdier:

    1. SSID - WiFi -nettverket ESP skal koble til for internett.
    2. Passord - Passordet for å koble til det wifi -nettverket.
    3. Starttid - timen du vil at den skal måle snøhøyden om kvelden.
    4. Start minutter - Minuttkomponenten til tiden du vil at den skal måle på kvelden.
    5. Sluttid - timen du vil at den skal måle snøhøyden om morgenen (og potensielt ringe deg)
    6. Sluttminutter - Minuttkomponenten til tiden du vil at den skal måle om morgenen.
    7. Alert Webhook URL - Dette bør være nettadressen du lagret i forrige trinn som ser omtrent slik ut:
    8. The Measurement Webhook URL - Dette skal være den samme nettadressen som ovenfor, men erstatt snow_alert med snow_measurement

Trinn 5: Monter sensoren

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

På dette tidspunktet bør alt være klart. Du vil kutte hull i plastbeholderen og montere den et par meter fra bakken. Hvor nøyaktig du monterer den vil avhenge av delene og målet ditt, men her er noen anbefalinger for å få det riktig.

  • Sørg for at sensoren vender nedover i en liten vinkel. Du vil ikke at den skal se rett ned siden boksen din vil kaste en skygge der snøen ikke treffer bakken.
  • Du vil ha sensoren opp av snøen ca 2-3 fot.
  • Snø smelter i vann, så sørg for at oppsettet ditt er rimelig vanntett.
  • Sørg for at du har strøm! Enten en lang usb -kabel eller en skjøteledning bør fjerne deg fra et tak for å komme til et nyttig sted. Uansett, sørg for at det er trygt ute.

Trinn 6: Ring

Få samtalen!
Få samtalen!

Hvis alt går etter planen, bør du få samtalen om morgenen hvis det snør. Hvis noe ikke fungerer, sjekk avstandsloggene dine i Google Regneark for å se hva som faktisk ble målt.

Snøutfordring
Snøutfordring
Snøutfordring
Snøutfordring

Andreplass i snøutfordringen

Anbefalt: