Kazalo:
- Zaloge
- 1. korak: Enota strojne opreme
- 2. korak: Vezje
- 3. korak: O Firebase
- 4. korak: zbirka podatkov v realnem času
- 5. korak: Nastavitev funkcij Firebase
- 6. korak: Koda
- 7. korak: Izbirni korak (gradnja ohišja)
- 8. korak: V akciji…
- 9. korak: Premik naprej…
Video: Mapirovalec - preslikava + sistem obveščanja: 9 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:03
Nočna vožnja je zelo zabavna. Pogosto pa se izkaže, da je to nočna mora v obliki živali, ki prečkajo cesto (zlasti tistih potepuških mačk in psov, ki čakajo, da se pripeljete v njihovo bližino, da bodo lahko prečkali !!). Zato sem mislil narediti nekaj, kar bi vas opozorilo, ko se približate tem ranljivim mestom, da boste lahko vozili previdneje.
Sistem ima dva dela: zbiranje podatkov in pridobivanje podatkov. Prvi del zajema podatke o lokaciji, to je lokacije, na katerih obstaja večja verjetnost prečkanja živali. Te podatke je treba ročno dodati in posodobiti na zemljevidu. Slednji del zajema našo trenutno lokacijo in ga nato primerja z zbranimi podatki ter poda ustrezna obvestila ali opozorila.
Zaloge
Uporabljena strojna oprema
Razvojna plošča WiFi ESP8266
GPS modul Ublox NEO-6M
LED
Trenutni gumb
Uporabljena programska oprema
Arduino IDE
Vsak urejevalnik JavaScript
Firebase (za shranjevanje in pridobivanje podatkov)
1. korak: Enota strojne opreme
Strojna oprema mora delovati na dva načina (načini): 1) shranite lokacijo v bazo podatkov: to je pomemben del procesa zbiranja podatkov; lokacija, pridobljena z modulom GPS, se pošlje v bazo podatkov firebase prek razvojne plošče ESP8266 WiFi.
2) Zagotavljanje obvestil med navigacijo: Med navigacijo se pridobi trenutna lokacija in pošlje v bazo podatkov. Ob vsaki posodobitvi lokacije se izračuna razdalja med trenutno lokacijo in tistimi lokacijami (ki so bile shranjene med postopkom zbiranja podatkov) in jih popravi modul ESP8266, ki nato opozori uporabnika glede na to, kako blizu je uporabnik od teh shranjenih lokacij.
Dodal sem tri LED diode za obveščanje o spremembah načinov, uspešno posodobitev baze podatkov in opozorilno lučko za obveščanje o bližini uporabnika shranjeni lokaciji.
Gumb se uporablja za shranjevanje lokacije z enim samim klikom (v načinu shranjevanja/zbiranja podatkov) in tudi za preklapljanje med temi načini.
Napajanje
Sprva je bila uporabljena 3,7V 300mAh Lipo baterija, vendar je predstavljala nekaj težav. Največja težava je bila ponastavitev ESP8266 (morda zaradi trenutnih konic). Tudi baterija ni zdržala veliko. Končno mi je priskočila na pomoč powerbank.
2. korak: Vezje
3. korak: O Firebase
Firebase je platforma za razvoj mobilnih in spletnih aplikacij v lasti Googla. Ima veliko funkcij, vendar tukaj uporabljam le dve, funkcijo zbirke podatkov v realnem času in funkcije v oblaku.
Če želite začeti uporabljati Firebase, 1. Najprej pojdite na spletno stran firebase.
2. Zdaj se pomaknite do konzole in kliknite ustvari nov projekt.
3. Za ustvarjanje projekta morate skupaj z drugimi podrobnostmi navesti ime projekta.
4. Ko je projekt ustvarjen, kliknite možnost zbirke podatkov na stranskem podoknu, da ustvarite novo bazo podatkov.
5. Enako storite za funkcije.
To so splošni koraki za ustvarjanje projekta, firebase je dobro dokumentiran in obstaja veliko video posnetkov youtube za začetnike, prosimo, da razumete več.
4. korak: zbirka podatkov v realnem času
Ko ustvarite bazo podatkov, je naslednji korak, da vidite, kako so podatki v bazi podatkov shranjeni in do katerih lahko dostopate. Za pisanje ali branje v bazo podatkov/iz nje morate konfigurirati pravila baze podatkov. Za razvojne namene lahko uporabimo odprto pravilo, tako da lahko kdor koli z referenco zbirke podatkov bere/piše, vendar je pri konfiguraciji pravil previden. Podatkovna zbirka shranjuje podatke v formatu JSON in se sinhronizira z vsemi napravami, ki so povezane z Podatkovna vozlišča lahko dodate z znakom "+", vozlišča pa lahko ustvarite tudi programsko. Vsi podatki, ki jih naložimo v bazo podatkov v načinu 'trgovina' (shranjevanje zbranih lokacij), se shranijo tukaj kot ločena vozlišča, medtem ko se podatki v načinu 'obvestila' (pridobivanje podatkov med navigacijo) vsakič posodobijo (preverite sliko).
5. korak: Nastavitev funkcij Firebase
Potrebujemo nekaj za izračun bližine trenutne lokacije shranjenim lokacijam in funkcije, ki jih sproži zbirka podatkov v ozadju, bi opravile naše delo. Funkcije so napisane v javascriptu in jih je treba razmestiti v firebase.
V računalniku morate imeti nameščen node.js.
1) Zdaj prenesite vmesnik ukazne vrstice firebase z ukazom "npm install -g firebase -tools" v ukaznem pozivu
2) Zdaj se morate prijaviti v firebase z ukazom "firebase login" (Če še niste prijavljeni, morate vnesti geslo za prijavo v gmail)
3) Po tem pojdite v imenik svojega projekta in zaženite funkcijo z ukazom "firebase init". Za zagon funkcij firebase za svoj projekt bi morali izbrati možnost 'functions'.
4) Zdaj morate iti v mapo 'functions' v imeniku vašega projekta in poiskati datoteko 'index.js'.
5) Uredite datoteko z urejevalnikom besedil in uredite datoteko/datoteko zamenjajte z mappifier_function.txt. (To bi bila dejansko naša funkcija)
6) Končno ukažite svojo funkcijo z uporabo "firebase deploy" v ukaznem pozivu.
Ali je funkcija razmeščena, lahko preverite v meniju funkcij na konzoli firebase
6. korak: Koda
Za ESP8266:
Plošča se poveže z WiFi in Firebase s poverilnicami in počaka na pritisk na gumb. Glede na trajanje pritiska na gumb se sprožijo različni načini. V načinu zbiranja podatkov (recimo temu načinu "trgovina") bo vsak pritisk gumba pripeljal do tega, da se trenutni položaj pošlje v bazo podatkov, medtem ko je v načinu pridobivanja podatkov ("način obveščanja") trenutna lokacija poslana v bazo podatkov razdalja se samodejno pridobi iz baze podatkov. Dodal sem LED za opozorila (bližina označene lokacije) in obvestila (kot so popravek GPS, povezava WiFi, uspešno pisanje baze podatkov, sprememba načina itd.).
Za funkcijo Firebase:
Ta funkcija preveri, ali obstaja zapis v vozlišče 'trenutna lokacija' v bazi podatkov, izračuna razdaljo med lokacijami v zbirki podatkov in trenutno lokacijo ter nato najde najmanjšo razdaljo, ki se nato zapiše v vozlišče 'razdalja' v bazi podatkov.
Preden naložite program, ne pozabite dodati poverilnic za wifi in poverilnic za avtorizacijo firebase. (Oglejte si slike). Če ste novi v ESP8266 in jih kodirate v Arduino IDE, si oglejte te.
7. korak: Izbirni korak (gradnja ohišja)
Da bi bil del strojne opreme kompakten, tako da ga je mogoče namestiti, sem naredil majhno ohišje, ki ga je namestilo v notranjost. Narejenih je bilo nekaj lukenj za namestitev LED in priključitev kabla USB. Toda zadnje ohišje je preseglo moja pričakovanja !! Odlično se je prilegal v mojo dlan in ga je bilo zelo enostavno namestiti na ročaj koles in na volan.
8. korak: V akciji…
Tukaj je majhen videoposnetek, ki prikazuje oba načina (trgovina in obvestilo) z opozorilnimi in obvestilnimi LED.
9. korak: Premik naprej…
Ta sistem se lahko uporablja za različne namene, na primer glede na trenutni scenarij, če lahko dobite lokacije širjenja bolezni in jih shranite v zbirko podatkov, bo sistem opozoril, ko ste bližje tem lokacijam. Resno razmišljam, da bi po vsem svetu dobili podatke o prečkanju živali, da bi bili vozniki previdni in da bi mnoge živali rešili pred nesrečami. Naredil sem preprosto spletno stran (vendar še ni goščena), ki vsebuje vse podatke, ki sem jih zbral. To so podatki, ki sem jih zbral med hojo ali kolesarjenjem (kadar koli najdem mačko ali psa na cesti, ker so bolj nagnjeni k prečkanju), vendar za to potrebujemo veliko več podatkov.
Sem precej nov pri ustvarjanju spletnih strani (predvsem javascript) in drugih vsebin in bi želel vaše predloge in strokovno znanje:)
Priporočena:
Sistem barvnega razvrščanja: Arduino sistem z dvema pasoma: 8 korakov
Sistem barvnega razvrščanja: Arduino sistem z dvema trakoma: Prevoz in/ali pakiranje izdelkov in predmetov na industrijskem področju poteka s pomočjo linij, izdelanih s tekočimi trakovi. Ti pasovi pomagajo premikati predmet z ene točke na drugo s posebno hitrostjo. Nekatere naloge obdelave ali identifikacije so lahko
Sistem obveščanja o pralnici na osnovi IoT: 18 korakov
Sistem obveščanja o pralnem perilu, ki temelji na IoT: HiThis navodila, ki korak za korakom predstavljajo, kako zgraditi sistem obveščanja o perilu na osnovi IoT. Naprava je pritrjena v predale in vrečo za perilo. Zaradi predstavitve smo vzeli dva predala in eno vrečo za perilo. Začuti
Samodejni sistem obveščanja o kavi: 7 korakov (s slikami)
Samodejni sistem za obveščanje o kavi: V tem projektu naredim pisarniški aparat za kavo pameten z izgradnjo sistema za opozarjanje na kavo, ki pošilja obvestila Slack, ko nekdo skuha svež lonček kave. Kodo lahko spremenite tako, da pošljete e -pošto ali besedilno sporočilo. Ta projekt temelji na R
Preprost sistem obveščanja ISS: 6 korakov (s slikami)
Enostaven sistem obveščanja ISS: Kaj je Mednarodna vesoljska postaja in zakaj želite predvideti, kje je? Za odgovor na prvo vprašanje si lahko odgovor ogledamo na spletnem mestu NASA. Skratka: Mednarodna vesoljska postaja je veliko vesoljsko plovilo. Orbitira okoli
Kako pravilno priključiti in nastaviti sistem mini HiFi polic (zvočni sistem): 8 korakov (s slikami)
Kako pravilno priključiti in postaviti mini HiFi polico (zvočni sistem): Sem oseba, ki rada spoznava elektrotehniko. Sem gimnazija na šoli za mlade ženske voditeljice Ann Richards. To navodilo naredim tako, da pomagam vsem, ki želijo uživati v njihovi glasbi iz sistema Mini LG HiFi Shelf System