Sisällysluettelo:

Täydellinen Arduino-pohjainen ajoneuvon GPS+GPRS -varkaudenestojärjestelmä: 5 vaihetta (kuvilla)
Täydellinen Arduino-pohjainen ajoneuvon GPS+GPRS -varkaudenestojärjestelmä: 5 vaihetta (kuvilla)

Video: Täydellinen Arduino-pohjainen ajoneuvon GPS+GPRS -varkaudenestojärjestelmä: 5 vaihetta (kuvilla)

Video: Täydellinen Arduino-pohjainen ajoneuvon GPS+GPRS -varkaudenestojärjestelmä: 5 vaihetta (kuvilla)
Video: Web Programming - Computer Science for Business Leaders 2016 2024, Marraskuu
Anonim
Image
Image
Laitteisto
Laitteisto

Hei kaikki!

Halusin rakentaa täydellisen ratkaisun GPS-ajoneuvon varkaudenestolaitteelle, joka olisi:

mahdollisimman halvalla

mahdollisimman täydellistä

koska se vain toimii-ei ole mitään muuta tehtävää kuin mahdollista

Joten päädyin rakentamaan Arduino-pohjaisen ratkaisun, joka maksoi minulle yhteensä 25 dollaria, enemmän tai vähemmän.

Kuten videosta näet, se vain toimii! Kun käynnistät auton, saat ilmoituksen matkapuhelimeesi, että auto liikkuu, avaat sitten mobiilisovelluksen ja näet auton liikkuvan reaaliajassa (10 sekunnin päivitysviiveellä).

Tämä opetusohjelma opastaa sinua kaikissa vaiheissa pitäen mielessä, että ratkaisussa on useita komponentteja:

1) laitteisto (Arduino -pohjainen)

2) ohjelmisto (Arduino -ohjelma)

3) enemmän ohjelmistoja (GPS-sijaintien palvelinpuolen vastaanotto)

4) vielä enemmän ohjelmistoja (mobiilisovellus)

Aloitetaan..

Vaihe 1: Laitteisto

Laitteisto
Laitteisto

Ostoslista:

1) Arduino Uno R3 tai klooni. Käytin "DCcEle DCcduino uno" -kloonia, jota ei näytä olevan enää saatavilla. Tässä on vastaava: Aliexpressissä - 3,75 dollaria

2) GPS-yksikkö Arduinolle (uusi GY-NEO6MV2-GPS-moduuli, jossa on lennonohjauksen lennonohjaus EEPROM MWC APM2.5, suuri antenni NEO6MV2). Käytin tätä: Aliexpressissä - 6,66 dollaria

3) GPRS / GSM-yksikkö Arduinolle (SIM800L V2.0 5V langaton GSM GPRS MODULE Quad-Band W / antennikaapelikorkki). Käytin tätä: Aliexpressissä - 6,71 dollaria

4) Varaa tällaiset dupont -kaapelit: Aliexpressissä - 0,89 $

5) IoT data sim -kortti (tai mikä tahansa muu datayhteydellä varustettu SIM -kortti). Käytin tätä: osoitteesta Hologram.io. Minulla on ilmainen kehittäjä, vain maksettu toimitus - 7,50 dollaria

Yhteensä: 25,51 $, mutta minulla oli johdot jo, joten se on alle 25 $!

Kaksi kuvaa esittävät komponentit ennen kokoamista ja lopputuotteen. Liitännät, jotka sinun on tehtävä, ovat:

Arduino - SIM800L

10 - PALAUTA

GND - GND (2 heistä)

5v - 5v

7 - SIM_TXD

8 - SIM_RXD

Arduino-GY-NEO6MV2

GND - GND

5v - VCC

3 - Vastaanotto

4 - Lähetys

Liitä kaikki kaapelit ja antennit ja varmista, että kytket Arduinon virtalähteeseen, joka pystyy antamaan sinulle 2A huippuja. Tietokoneen usb on tuskin kunnossa (käytän MacBook Prota), "satunnainen" puhelinlaturi ei riitä. Useimmat autojen USB -pistorasiat ovat myös alle 1A. Jos näin on, tarvitset myös 12 V: n auton 5 V: n virtalähteen, jossa on vähintään 2 A.

Aseta sim -kortti paikalleen. Jos käytät Hologram.io -sim -korttia, muista rekisteröityä heidän kojelaudalleen ja aktivoida sim -kortti (se kestää muutaman minuutin / tunnin).

Vaihe 2: Ohjelmisto (Arduino -ohjelma)

Ohjelmisto (Arduino -ohjelma)
Ohjelmisto (Arduino -ohjelma)

Oletan, että olet perehtynyt Arduino -ohjelmointiin. Muussa tapauksessa aloita tästä oppaasta: Instructables.

Tarvitset vain yhden ulkoisen kirjaston, minun piti asentaa se manuaalisesti. Siirry tänne: TinyGPS, vie kirjasto ja asenna se paikalliseen Arduino -kansioon.

Sieltä aiomme "varastaa" jonkin koodin perusesimerkistämme ja muokata sitä tarkoituksiimme.

Sitten aiomme "varastaa" tämän oppaan ja muokata koodia uudelleen tarkoituksiimme.

Tuloksena on liitteenä oleva.ino -ohjelma.

On olemassa muutamia asioita, joita voit ja sinun on säädettävä:

"SECONDS" ja "SERVER" määrittelevät.

Olen asettanut SECONDS -arvoksi 10 ja tästä syystä: Hologram.io -kehittäjäohjelma antaa sinulle 1 Mt ilmaista dataa kuukaudessa. Tämä tarkoittaa, että haluamme minimoida lähetetyt tavut, mutta meidän on myös päivitettävä sijaintimme niin usein. Käytämme tavallisia AT -modeemikomentoja lähettääksemme UDP -paketteja palvelimellemme, jotka vastaanottavat viestit, lat/lon, kullakin 4 tavua ja nopeudella 1 tavu. Joten gps -päivityksen kokonaismäärä on 20 tavua (IP -otsikko) plus 8 tavua (UDP -otsikko) plus 9 tavua (hyötykuorma). Se on 37 tavua. Jos auto on aktiivinen enintään 2 tuntia päivässä, minulla on varaa päivitykseen 10 sekunnin välein ja kuluttaa vain 806 kt kuukaudessa (31 päivää). Tämä antaa minulle 218 kilotavuaikaa omasta, toisin sanoen autovarasta, ajoajasta. Tämä antaa minulle 16,76 tunnin GPS -seurannan ajoaikani ulkopuolella, ja yksi päivitys 10 sekunnin välein.

Nyt näiden UDP -pakettien on mentävä jonnekin. Käytän Ubuntu -palvelinta, joka on isännöity CloudAtCost -pilvessä, jonka ostin 8 dollarilla 80%: n alennuksella ja joka palvelee minua muihin tarkoituksiin, joten se ei mene kustannuslaskelmiin. Jos et halua maksaa palvelimesta, voit hankkia ilmaisen Amazon AWS -instanssin 12 kuukaudeksi ja asentaa Ubuntun siihen. Kun olet määrittänyt palvelimesi (katso seuraava vaihe), hanki sen staattinen IP -osoite ja aseta se SERVER -määritelmän viereen.

Vaihe 3: Lisää ohjelmistoja (palvelinpuolen GPS-sijaintien vastaanottaminen)

Sekä CloudAtCostissa että Amazonissa on valmiiksi määritetty Ubuntu-kuva (CloudAtCost on osoitteessa Ubuntu 14.04). Joten en aio käydä läpi Ubuntun asentamista, koska sinun ei tarvitse. Jos käytät CloudAtCostia, voit halutessasi päivittää Ubuntu 16.04: een

sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade

Sitten sinun on asennettava LAMP (katso tämä opas: täällä), vaikka emme aio käyttää PHP: tä.

Asenna Python

sudo apt-get install python-minimal pip

Lisää sitten pari moduulia:

pip install -käyttäjän urllib3 -pyynnöt

Meidän on asetettava /var /www kirjoitettavaksi, joten teemme:

sudo adduser YOUR_USER www-datasudo chown -R www-data: www-data /var /www

sudo chmod -R g+rwX /var /www

Nyt tarvitsemme "palvelimen" i) vastaanottamaan UDP -paketit, ii) rakentamaan radan, iii) lähettämään ilmoituksen matkapuhelimeemme ja "palvelimen" palvelemaan luotua gps -raitaa (tämä on apache).

Kopioi ensimmäiselle palvelimelle liitteenä oleva python -koodi. Sinun on määritettävä seuraavat asiat:

iftttuser = "SINUN IFTTT -KÄYTTÄJÄ"

iftttpass = "SINUN IFTTT -SALASANASI"

iftttappletid = "SINUN IFTTT -ILMOITUSSOVELLUS"

iftttkey = "SINUN IFTTT -AVAIN"

iftttevent = "SINUN IFTTT -TAPAHTUMASI"

Kuten olet ehkä arvannut, käytämme IFTTT: tä reaaliaikaisten ilmoitusten tarjoamiseen matkapuhelimiin. Noudata tätä opasta: täällä, mutta sen sijaan, että valitsisit "lähetä minulle tekstiviesti", valitse "lähetä sovellusilmoitus". Hanki applet -tunnuksesi (vieritä appletin kokoonpanon alareunassa nähdäksesi sen) ja käytä sitä yllä. Käytä myös näin luotua avainta yllä olevissa asetuksissa. IFTTT -tapahtuma on nimi, jonka annoit appletillesi, minä annoin sille "carmoving".

Nyt ei ole reaaliaikaisia reaaliaikaisia ilmoitusalustoja ilmaiseksi, AFAIK. Jos tiedät yhden, kerro minulle. IFTTT: llä on viive. Tämä viive voidaan minimoida muutamaan sekuntiin, jos käytät sähköpostin laukaisinta. Valitettavasti tämä ei ole luotettava. Juuri luodun webhookin viive on 15 minuuttia. Mutta emme halua odottaa 15 minuuttia tietääksemme, että automme varastetaan, eikö? Se on salasana, joka pyytää sinua määrittämään kaikki yllä olevat asetukset. Jos vierität python-koodia, näet muutamia rivejä, nimittäin 45-53, IFTTT: n "tarkista nyt" -toiminnon automatisoimiseksi, mikä pakottaa laukaisimien äkillisen tarkistuksen ja käynnistää ilmoituksen alle 1 sekunnissa! Ole hyvä:)

Kun olet asettanut python -koodisi jonnekin, suorita se. Jos olet ammattilainen, aloita se palvelimen käynnistyksestä. Katso tonnia ilmaisia online -oppaita siitä, miten tämä tehdään, esimerkiksi tämä.

Vaihe 4: Vielä enemmän ohjelmistoja (mobiilisovellus)

Vielä enemmän ohjelmistoja (mobiilisovellus)
Vielä enemmän ohjelmistoja (mobiilisovellus)
Vielä enemmän ohjelmistoja (mobiilisovellus)
Vielä enemmän ohjelmistoja (mobiilisovellus)
Vielä enemmän ohjelmistoja (mobiilisovellus)
Vielä enemmän ohjelmistoja (mobiilisovellus)
Vielä enemmän ohjelmistoja (mobiilisovellus)
Vielä enemmän ohjelmistoja (mobiilisovellus)

Tarvitsemme nopean ja yksinkertaisen tavan visualisoida vain GPS -raita, jonka edellisen vaiheen palvelin pitää ajan tasalla. Mahdollisesti sen on toimittava kaikenlaisilla älypuhelimilla.

Käytämme sitten monialustaista mobiilisovelluspakettia, kuten Ionic/Cordova. Käytän Ionic v1: tä, älä sekoita sitä Ionic Native tai Ionic v2: een, se on eri asia.

Aloita ensimmäinen projekti Ionicissa noudattamalla näitä yksinkertaisia ohjeita: täällä.

Sitten sinun on aloitettava uusi projekti, joka perustuu Google Maps sdk: hen, kuten tämä:

ionic start myapp maps

Siirry "resurssit" -kansioon ja kopioi suuri auton kuva tästä "icon.png". Lataa sen sijaan pienet kuvakkeet "car2.png" ja "start.png" jonnekin palvelimellesi, kuten https://yourserver/car2.png. Tarvitset näitä merkkejä sovelluksessasi.

Käytä liitteenä olevia index.html -tiedostoja (nimeä index.html.txt uudelleen index.html -tiedostoksi), direktives.js- ja controllers.js -tiedostoja ja laita ne tiedostoihin www (index.html), www/js (kaikki js).

lisää alustasi näin:

ionic add plaftorm android

rakentaa näin:

ioninen rakenne android

sitten ionic kertoo, mihin se rakensi.apk: n, jonka voit asentaa matkapuhelimeesi.

Jos haluat rakentaa iOS: lle, tarvitset Macin ja Xcoden. ionic voi sitten tallentaa Xcode -projektin, jonka voit avata Xcodessa ja rakentaa puhelimeesi. Jos sinulla ei ole iOS -kehittäjätiliä, sinun on liitettävä puhelimesi Xcodeen ja määritettävä puhelimesi kehitystä varten, jotta voit asentaa sovelluksen sinne. Tämä on tämän ohjeen soveltamisalan ulkopuolella.

Eri js -tiedostoista sinun on löydettävä rivit, jotka vastaavat "car2.png" ja "start.png" ja muokkaa niitä kuvien polun kanssa. Sama kuin "plan.json".

Se siitä!!

Vaihe 5: Tulevaisuuden työ

1) Olen laittanut kaiken pahvilaatikkoon, jonka voin piilottaa mihin tahansa USB -pistorasian lähelle. Paras tapa olisi asentaa parempi kotelo auton konepellin alle 12v-> 5v-muuntimella.

2) Bluetooth -anturin avulla voit todella "tuntea", jos olet autossa, joten GPS -järjestelmä ei käynnisty.

3) Maksa vain sim-datasuunnitelma ja aseta SECONDS arvoon 1 nauttiaksesi reaaliaikaisesta seurannasta:)

Toivottavasti pidit tästä ensimmäisestä opastamastani!

Suositeltava: