Kazalo:
- 1. korak: Strojna oprema
- 2. korak: programska oprema (program Arduino)
- 3. korak: Več programske opreme (strežnikovo sprejemanje lokacij GPS)
- 4. korak: Še več programske opreme (mobilna aplikacija)
- 5. korak: Prihodnje delo
Video: Celoten sistem za zaščito vozil GPS+GPRS za vozila na osnovi Arduina: 5 korakov (s slikami)
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:07
Zdravo vsi!
Želel sem zgraditi popolno rešitev za napravo proti kraji vozila GPS, ki bi bila:
čim cenejše
čim bolj popolna
saj deluje-samo-deluje-ni-kaj-drugega-ni mogoče storiti
Tako sem na koncu zgradil rešitev na osnovi Arduina, ki me je stala skupaj 25 $, bolj ali manj.
Kot lahko vidite iz videoposnetka, deluje! Zaženite avto, na mobilni telefon prejmete obvestilo, da se avto premika, nato odprete mobilno aplikacijo in vidite avto, ki se premika v realnem času (z zamikom posodobitve 10 sekund).
Ta vadnica vas bo vodila skozi vse korake, pri čemer upoštevajte, da je v rešitvi več komponent:
1) strojna oprema (na osnovi Arduina)
2) programska oprema (program Arduino)
3) več programske opreme (strežnikovo sprejemanje lokacij GPS)
4) še več programske opreme (mobilna aplikacija)
Začnimo..
1. korak: Strojna oprema
Nakupovalni seznam:
1) Arduino Uno R3 ali klon. Uporabil sem klon "DCcEle DCcduino uno", ki se zdi, da ni več na voljo. Tukaj je enakovreden: na Aliexpressu - 3,75 $
2) GPS enota za Arduino (GY-NEO6MV2 nov GPS modul z kontrolo letenja EEPROM MWC APM2.5 velika antena NEO6MV2). Uporabil sem to: na Aliexpressu - 6,66 $
3) GPRS / GSM enota za Arduino (SIM800L V2.0 5V brezžični GSM GPRS MODUL, štiripasovni W / antenski kabel). Uporabil sem to: na Aliexpressu - 6,71 $
4) Rezervne dupont kable, kot so ti: na Aliexpress - 0,89 $
5) podatkovna sim kartica IoT (ali katera koli druga sim kartica s podatkovno povezavo). Uporabil sem to: iz Hologram.io. Imam brezplačnega razvijalca, samo plačana dostava - 7,50 $
Skupaj: 25,51 $, vendar sem že imel kable, zato je manj kot 25 $!
Dve sliki prikazujeta sestavne dele pred montažo in končni izdelek. Povezave, ki jih morate vzpostaviti, so:
Arduino - SIM800L
10 - RESET
GND - GND (2 od njih)
5v - 5v
7 - SIM_TXD
8 - SIM_RXD
Arduino-GY-NEO6MV2
GND - GND
5v - VCC
3 - RX
4 - TX
Priključite vse kable in antene ter poskrbite, da boste Arduino vklopili iz vira, ki vam bo omogočil največjo vrednost 2A. Računalniški USB je komaj v redu (uporabljam MacBook Pro), "naključni" polnilec za telefon ne bo dovolj. Večina USB vtičnic za avtomobile je tudi manj kot 1A. Če je to vaš primer, potrebujete tudi 12v avtomobilski 5v napajalnik z vsaj 2A.
Vstavite sim kartico. Če uporabljate sim kartico Hologram.io, se prepričajte, da ste se registrirali na njeni nadzorni plošči in aktivirali kartico sim (traja nekaj minut / ur).
2. korak: programska oprema (program Arduino)
Predvidevam, da poznate programiranje Arduino. V nasprotnem primeru začnite s tem priročnikom: na Instructables.
Potrebujete samo eno zunanjo knjižnico, namestiti sem jo moral ročno. Pojdite sem: TinyGPS, izvozite knjižnico in jo namestite v lokalno mapo Arduino.
Od tam bomo "ukradli" nekaj kode iz njihovega osnovnega primera in jo prilagodili svojim namenom.
Nato bomo "ukradli" ta priročnik in kodo znova prilagodili svojim namenom.
Rezultat je priložen program.ino.
Obstaja nekaj stvari, ki jih lahko in morate spremeniti:
opredelitev "SECONDS" in "SERVER".
SECONDS sem nastavil na 10 in evo zakaj: program za razvijalce Hologram.io vam daje 1 MB brezplačnih podatkov na mesec. To pomeni, da želimo zmanjšati število poslanih bajtov, vendar moramo prav tako pogosto posodabljati svoj položaj. Uporabljali bomo standardne modemske ukaze AT za pošiljanje paketov UDP na naš strežnik, ki sprejema sporočila, z lat/lon, pri čemer vsak uporablja 4 bajte, hitrost pa 1 bajt. Skupna posodobitev GPS je torej 20 bajtov (glava IP) plus 8 bajtov (glava UDP) plus 9 bajtov (koristna obremenitev). To je 37 bajtov. Ob predpostavki, da moj avto ni aktiven največ 2 uri na dan, si lahko privoščim posodobitev vsakih 10 sekund in porabim le 806 KB na mesec (31 dni). To mi daje 218 KB za čas vožnje nad mojim, to je tat avtomobila. Kar mi omogoča 16,76 ur spremljanja GPS zunaj časa vožnje, z eno posodobitvijo vsakih 10 sekund.
Zdaj morajo ti paketi UDP nekam iti. Uporabljam strežnik Ubuntu, ki gostuje v oblaku CloudAtCost, ki sem ga kupil za 8 USD z 80% popustom in mi služi za druge namene, zato ne gre v izračun stroškov. Če ne želite plačati za strežnik, lahko dobite brezplačen primerek Amazon AWS za 12 mesecev in nanj namestite Ubuntu. Ko nastavite strežnik (glejte naslednji korak), pridobite njegov statični naslov IP in ga postavite poleg definicije SERVER.
3. korak: Več programske opreme (strežnikovo sprejemanje lokacij GPS)
Tako CloudAtCost kot Amazon imata vnaprej nastavljeno sliko Ubuntu (CloudAtCost je na Ubuntu 14.04). Zato ne bom šel skozi korake za namestitev Ubuntuja, saj vam ne bo treba. Če uporabljate CloudAtCost, boste morda želeli nadgraditi na Ubuntu 16.04, kar je storjeno z
sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade
Nato morate namestiti LAMP (glejte ta priročnik: tukaj), čeprav ne bomo uporabljali PHP.
Namestite Python z
sudo apt-get install python-minimal pip
Nato dodajte nekaj modulov:
pip install --user urllib3 zahteve
Nastaviti moramo /var /www za vaše pisanje, zato naredimo:
sudo adduser YOUR_USER www-datasudo chown -R www-data: www-data /var /www
sudo chmod -R g+rwX /var /www
Zdaj potrebujemo "strežnik" za i) sprejemanje paketov UDP, ii) izdelavo sledi, iii) pošiljanje obvestila na naš mobilni telefon in "strežnik", ki streže ustvarjeni gps sledi (to bo apache).
Za prvi strežnik kopirajte priloženo kodo python. Konfigurirati morate naslednje stvari:
iftttuser = "VAŠ IFTTT UPORABNIK"
iftttpass = "VAŠA GESO IFTTT"
iftttappletid = "VAŠA APLIKACIJA OBVESTILA IFTTT"
iftttkey = "VAŠ IFTTT KLJUČ"
iftttevent = "VAŠ IFTTT DOGODEK"
Kot ste morda uganili, uporabljamo IFTTT za pošiljanje obvestil v realnem času na naše mobilne telefone. Sledite tem navodilom: tukaj, namesto da izberete »pošlji mi sms«, izberite »pošlji obvestilo o aplikaciji«. Pridobite svoj ID programčka (pomaknite se na dnu konfiguracije programčka, da ga vidite) in ga uporabite zgoraj. Uporabite tudi tako ustvarjen ključ v zgornjih nastavitvah. Dogodek IFTTT je ime, ki ste ga dali svojemu programčku, jaz sem mu dal "carmoving".
Zdaj ni brezplačnih platform za obveščanje v realnem času, AFAIK. Če poznate enega, mi sporočite. IFTTT ima zamudo. To zakasnitev lahko zmanjšate na nekaj sekund, če uporabite sprožilec e -pošte. Na žalost to ni zanesljivo. Pravkar ustvarjen webhook ima 15 minutno zamudo. Nočemo pa čakati 15 minut, da vemo, da nam ukradejo avto, kajne? To je geslo, ki vas prosi, da nastavite vse zgornje nastavitve. Če se pomaknete po kodi python, vidite, da obstaja nekaj vrstic, in sicer 45-53, za avtomatizacijo funkcije "preveri zdaj" IFTTT, ki prisili nenadno preverjanje sprožilcev in sproži obvestilo v manj kot 1 sekundi! Ni za kaj:)
Ko nekje nastavite svojo kodo python, jo preprosto zaženite. Če ste profesionalni uporabnik, začnite pri zagonu strežnika. Oglejte si množico brezplačnih spletnih vodnikov o tem, kako to storiti, na primer ta.
4. korak: Še več programske opreme (mobilna aplikacija)
Potrebujemo hiter in preprost način za vizualizacijo sledi GPS, ki jo strežnik na prejšnjem koraku posodablja. Mogoče mora delovati na vseh vrstah pametnih telefonov.
Nato uporabimo paket mobilnih aplikacij za več platform, kot je Ionic/Cordova. Uporabljam Ionic v1, ne zamenjujte ga z Ionic Native ali Ionic v2, to je druga stvar.
Sledite tem zelo preprostim korakom, da začnete svoj prvi projekt v Ionicu: tukaj.
Nato morate začeti nov projekt na podlagi google maps sdk, na primer:
ionic start myapp maps
Pojdite v mapo "viri" in kopirajte veliko sliko avtomobila tukaj kot "icon.png". Namesto tega naložite majhne ikone kot "car2.png" in "start.png" nekje na strežniku, na primer https://yourserver/car2.png. Te boste v svoji aplikaciji potrebovali kot označevalce.
Uporabite priložene datoteke index.html (preimenujte index.html.txt v index.html), directives.js in controllers.js in jih vstavite v www (index.html), www/js (vse js).
svojo platformo dodajte tako:
ionski add plaftorm android
graditi tako:
ionska gradnja androida
nato vam bo ionic povedal, kje je zgradil vaš.apk, ki ga lahko namestite na svoj mobilni telefon.
Za izdelavo za iOS potrebujete Mac in Xcode. ionic lahko nato shrani projekt Xcode, ki ga lahko odprete v Xcode in sestavite za svoj telefon. Če nimate računa razvijalca za iOS, boste morali telefon priključiti na Xcode in nastaviti telefon za razvoj, da bo lahko tam namestil aplikacijo. To je zunaj področja uporabe tega navodila.
V različnih datotekah js boste morali poiskati vrstice, ki ustrezajo "car2.png" in "start.png", ter jih spremeniti s potjo vaših slik. Enako za "plan.json".
To je to !!
5. korak: Prihodnje delo
1) Vse sem dal v kartonsko škatlo, ki jo lahko skrijem kjer koli v bližini vtičnice USB. Najboljše bi bilo, če bi pod pokrov avtomobila namestili boljše ohišje s pretvornikom 12v-> 5v.
2) S senzorjem bluetooth lahko dejansko "slutite", če ste v avtu, zato se sistem GPS ne vklopi.
3) Samo plačajte za podatkovni načrt sim in nastavite SECONDS na 1, da uživate v spremljanju v realnem času:)
Upam, da ste uživali v tem mojem prvem navodilu!
Priporočena:
Kompaktni vremenski senzor s podatkovno povezavo GPRS (kartica SIM): 4 koraki
Kompaktni vremenski senzor s podatkovno povezavo GPRS (kartica SIM): Povzetek projekta To je vremenski senzor, ki deluje na baterije, na osnovi senzorja temperature/tlaka/vlažnosti BME280 in MCU ATMega328P. Deluje na dve 3,6 V litij -tionilni AA bateriji. Ima zelo nizko porabo spanja 6 µA. Pošilja dat
Vadnica za modul GPS in GPRS A9G - Ai-Thinker - Ukazi AT: 7 korakov
Vadnica za modul GPS in GPRS A9G | Ai-Thinker | Ukazi AT: Hej, kaj se dogaja, fantje! Akarsh tukaj iz CETech -a, danes bomo šli skozi modul A9G GPS, GSM in GPRS podjetja AI Thinker. Obstaja tudi več drugih modulov, kot sta A9 in A6 podjetja AI Thinker, ki imata podobne zmogljivosti GSM in GPRS, vendar
Arduino Security 3G/GPRS e -poštna kamera z zaznavanjem gibanja: 4 koraki
Arduino Security 3G/GPRS e -poštna kamera z zaznavanjem gibanja: V tem priročniku bi rad povedal o eni različici izgradnje varnostnega nadzornega sistema z detektorjem gibanja in pošiljanju fotografij v nabiralnik prek 3G/GPRS ščita. Ta članek temelji na druga navodila: navodila 1 in navodila
Arduino in SIM900 GSM GPRS 3G beleženje temperature in vlažnosti, mobilna statistika: 4 koraki
Arduino in SIM900 GSM GPRS 3G beleženje temperature in vlažnosti, mobilna statistika: Z Arduino UNO R3, SIM900 Shield IN DHT22 lahko podatke o temperaturi in vlažnosti beležite zunaj, v sobi, rastlinjaku, laboratoriju, hladilnem prostoru ali na katerem koli drugem mestu popolnoma brezplačno. Ta primer bomo uporabili za beleženje sobne temperature in vlažnosti. Naprava bo
Sciphone I68 GPRS + MMS Nastavitev Vse države neprepustne: 8 korakov
Nastavitev Sciphone I68 GPRS + MMS Vse države neprepustne: Sciphone i68 + je zelo dober klon vedno priljubljenega iPhonea po nižji ceni Ta navodila vam bodo pokazala, kako preprosto nastavite nastavitve GPRS in MMS na svojem sciphone i68, tako da lahko pošiljajte in prejemajte slikovna sporočila ter brskajte po i