Përmbajtje:

Gjurmues GPS në shtëpi në kohë reale (SIM800L, Ublox NEO-6M, Arduino): 8 hapa
Gjurmues GPS në shtëpi në kohë reale (SIM800L, Ublox NEO-6M, Arduino): 8 hapa

Video: Gjurmues GPS në shtëpi në kohë reale (SIM800L, Ublox NEO-6M, Arduino): 8 hapa

Video: Gjurmues GPS në shtëpi në kohë reale (SIM800L, Ublox NEO-6M, Arduino): 8 hapa
Video: Ambulanca me GPS, do monitorohen në kohë reale- Ora News- Lajmi i fundit- 2024, Korrik
Anonim
Gjurmues GPS në kohë reale në shtëpi (SIM800L, Ublox NEO-6M, Arduino)
Gjurmues GPS në kohë reale në shtëpi (SIM800L, Ublox NEO-6M, Arduino)

Pra, ju keni një modul GSM të shtrirë përreth si unë? Gjithashtu një GPS-tracker?

Ne mendojmë të njëjtën gjë!

Në këtë udhëzues, unë do të përpiqem t'ju udhëzoj se si ta arrini qëllimin tuaj nga perspektiva e një të sapoardhuri.

Meqenëse nuk kisha njohuri të mëparshme të inxhinierisë elektrike (për të qenë i sinqertë, projekti nuk ka nevojë për aq shumë, por jo), dhe nuk kisha ide se si të bëja një pajisje që pompon të dhëna në kohë reale në një server në internet, unë hasa probleme të shumta. Sidoqoftë, unë përfundimisht arrita t'i bëj gjërat të funksionojnë.

Pra, në këtë tutorial, unë dua të theksoj gabimet që mund të bëjë një fillestar dhe të ndërtoj projektin në përputhje me rrethanat.

Mos harroni: Gjithmonë jini të kujdesshëm ndërsa punoni me energji elektrike!

SH NOTNIM: Unë nuk jam profesionist. Kodi mund të mos jetë mjaft i sofistikuar për të gjitha nevojat tuaja. Projekti synon të jetë një "projekt hobi", por! funksionoi për mua. Dhe nëse do të funksiononte për mua, do të funksiononte edhe për ju!

Hapi 1: Parakushtet

Parakushtet
Parakushtet
Parakushtet
Parakushtet
Parakushtet
Parakushtet

MODULI GSM - SIM800L

  • Mjaft e vogël, e lehtë për t’u përdorur
  • Aftësia për të përdorur internetin celular (GPRS)
  • I lirë

MODULI GPS - Ublox NEO6M

  • Gjithashtu i vogël
  • Përballon punën e tij shumë mirë

Një mikrokontrollues - mund të jetë gjithçka - mund të përdorni Arduino Uno ose Nano të famshëm për të liruar pak hapësirë

Bateria - Kam përdorur një qelizë 18650 si burimin kryesor dhe të vetëm të energjisë (nominale 3.7V)

Mbajtës i baterisë - pse? - sepse bashkimi i një baterie 18650 është mjaft i rrezikshëm për shkak të nxehtësisë.

DC -DC Boost Converter Step Up Moduli 5V - Duhet të ketë, pasi Arduino që kam përdorur ka nevojë për 5V

Mjetet, gjërat themelore që mund të vijnë në ndihmë:

Tela, hekur bashkues, bukë për provë

Hapi 2: Koncepti kryesor

Koncepti kryesor
Koncepti kryesor

Koncepti kryesor i sistemit është si më poshtë:

Përbëhet nga 3 pjesë:

  1. Një pajisje - të cilat kanë koordinatat e duhura GPS dhe mund të lidhen me një server nga distanca dhe t'i dërgojnë të dhëna atij
  2. Një server në internet - i cili mund të marrë të dhëna në hyrje - t'i ruajë ato - dhe t'u shërbejë klientëve të tjerë
  3. Platforma - ku mund të shikojmë koordinatat - Në mënyrë ideale tani duhet të jetë një aplikacion celular, ose një faqe interneti

Hapi 3: Moduli SIM800L

Moduli SIM800L
Moduli SIM800L
Moduli SIM800L
Moduli SIM800L

Kam pasur kohë të vështira me modulin.

Do të doja të filloja me disa karakteristika dhe referenca.

Sipas fletës së të dhënave:

  • Funksionon midis 3.4V - 4.4V
  • Mund të dërgojë SMS, të bëjë thirrje zanore në telefona të tjerë dhe madje të lidhet me internetin!
  • Ne mund të komunikojmë me të përmes komandave AT!
  • Mund të përdorë deri në 2A në kohën e pikut! Shënim: ju ndoshta nuk do të jeni në gjendje ta matni atë me një multimetër - për shkak të shkallës së ulët të marrjes së mostrës

Përvoja ime është se SIM800L nën 3.8V nuk funksionon vërtet.

Për informacione të mëtejshme vizitoni: fletën e të dhënave

Pra, puna juaj është të siguroni të paktën 3.8V në modul (në mënyrë ideale 4V), një furnizim me energji që prodhon të paktën 2A.

Para se të përdorni modulin në pajisjen përfundimtare, ju sugjeroj të krijoni komunikim me SIM800L dhe kompjuterin tuaj për t'u siguruar që pajisja juaj po funksionon siç duhet.

Para së gjithash, lidhni kartën SIM si në foton e mësipërme.

Për ta lidhur me kompjuterin tuaj, mund të përdorni një konvertues USB në TTL ose një Arduino.

Tani, unë shkoj me Arduino.

Lidhni SIM800L VCC dhe GND me terminalet e burimit tuaj të energjisë.

Lidhni TX me pinin dixhital Arduino 10, RX me pinin dixhital arduino 11.

Shkarkoni kodin, e lidha në këtë hap.

Me kodin, ju mund të dërgoni komanda dhe t'i ktheni ato në Monitorin tuaj Serial.

Disa komanda të thjeshta:

AT Kthen OK, nëse lidhja është në rregull.

ATD+123456789; Thirrni një numër telefoni të caktuar. Shënim: Mos harroni ta përfundoni me pikëpresje.

AT+CPIN? Kthen statusin e kartës SIM (e kyçur ose jo)

Nëse dëshironi të dërgoni një SMS, duhet të përfundoni të dhënat tuaja me një karakter të veçantë, kjo mund të bëhet me simbolin '$'.

Për komanda të tjera interesante ju sugjeroj ta lexoni këtë.

Ka komanda të ndryshme, njihuni me to, ato janë vërtet të dobishme.

Ekziston një LED me status të kuq që ju tregon se në çfarë funksionimi është SIM800L.

64 MS ON - 800MS OFF - SIM800L nuk është i regjistruar në rrjet.

64 MS ON - 3000MS OFF - SIM800L është regjistruar në rrjet.

64 MS ON - 300MS OFF - SIM800l është në modalitetin GPRS

Nëse SIM800L vazhdon të rinisë pas rreth 8-10 pulsimeve, mund të jetë për shkak të mungesës së furnizimit me energji efikase.

Nëse nuk jeni mirë pas AT, kontrolloni instalimet elektrike! Nëse keni një multimetër, kontrolloni vazhdimësinë e telave.

Kontrolloni lidhjet e telave dhe nyjeve të saldimit! Moduli do të funksionojë vetëm kur të ndizet.

Hapi 4: Ublox Neo 6m

Ublox Neo 6m
Ublox Neo 6m
Ublox Neo 6m
Ublox Neo 6m

Disa karakteristika

  • Tensioni maksimal: 3.6V - e mundësova me kunjin 3.3V të Arduino
  • Tërheqja maksimale aktuale është 67mA - kështu që ju mund ta fuqizoni atë nga arduino
  • Gama e temperaturës: -40-85 Celsius (mendoj se do t'ju përshtatet)

Njësia që urdhërova erdhi me një antenë të parë në foto, thjesht e fut atë në folenë përkatëse.

Pajisja kur ka sinjale, pulson me LED blu.

Së pari, kontrolloni se si funksionon një GPS këtu, nëse nuk e dini.

Kur pajisja është e ndezur dhe gjen 3 satelitë, ajo dërgon shumë vlera të ndara me presje në Arduino si më sipër.

Për të ndihmuar punën tonë, ne mund të përdorim disa biblioteka të jashtme për të analizuar këto të dhëna që të jenë më të lexueshme nga njerëzit.

Ju mund të përdorni bibliotekën TinyGps ose bibliotekën NeoGPS. Kam përdorur të dytin sepse është më i lehtë.

Për testim, duhet të lidhni kunjat e energjisë me arduino 3.3V dhe GND.

Shkarkoni këtë kod dhe përdorni atë me GPS tuaj. Kunja dixhitale RX 10, kunja dixhitale TX 11

Shënim: Mos harroni të përdorni modulin jashtë, mundësisht kur nuk ka re.

Pas gjysmë minutë, pajisja duhet të pulsojë dhe të nxjerrë koordinatat tuaja GPS!:)

Pasi ta dini që moduli juaj SIM800L dhe GPS po funksionojnë në mënyrë adekuate, mund të kaloni në hapin tjetër.

Hapi 5: Qarku

Qark
Qark

Qarku është si në foto.

Pra, bateria 3.4V - 4.2V 18650 është burimi kryesor i energjisë. Sim800L e merr energjinë drejtpërdrejt prej tij. Ekziston një kondensator mes tyre paralelisht në mënyrë që të përmirësohet qëndrueshmëria e qarkut.

Kur zgjidhni një kondensator, duhet të zgjidhni një kapacitet të ulët ESR.

Një konvertues i rritjes 5V rrit tensionin e baterisë në 5V (ir është e nevojshme sepse Arduino punon me 5V).

Hekurudha 5V e energjisë është e lidhur me Nano këtu. Sim800L dhe Neo6m janë të lidhur me Nanon si në foto. (Sim Tx-D10, SimRx-D11; NeoTX-D3, NeoRX-D4)

D12 është i lidhur me RST, kështu që ne jemi në gjendje të rindizim programërisht sistemin (përveç SIM800L). SHENIM: Kjo metodë e rindezjes mund të mos jetë praktika më e mirë)

Dhe së fundi, dy LEDS janë të lidhura me NANO, kështu që ne mund t'i tregojmë përdoruesit, nëse po ndodh ndonjë gabim.

Hapi 6: Kodi

Kodi i bashkëngjitet Instructables ose hidhini një sy github.

Ju mund ta modifikoni atë për të punuar siç duhet për nevojat tuaja, ose mund të përdorni kodin e të tjerëve nëse dëshironi.

waitUntilResponse (); funksioni ndihmës u mor nga kodi i tij. Kontrolloni punën e tij, dhe kodoni gjithashtu!

Shkurtimisht, në funksionin e konfigurimit, ne duhet të aktivizojmë lidhjen GPRS të modulit tonë SIM800L. Ne e dimë nëse është i suksesshëm nëse LED pulson shpejt. (setupGPRSConnection ())

Në funksionin lak - çdo 15 sekonda thirret funksioni sendData () - i cili ka kërkesën

Kam përdorur vargjet e pyetjeve për të shtyrë të dhënat në serverin e uebit në këtë format:

ip adresa/file.php? kyç = vlerë & çelës = vlerë p.sh.

Nëse ndodh ndonjë gabim, LED përkatës do të ndizet. (SIM, GPS)

Hapi 7: Serveri i uebit

Serveri i uebit
Serveri i uebit

Për përdorimin tonë, një server i thjeshtë i lehtë i lehtë është i mjaftueshëm.

Ka disa opsione nga të cilat mund të zgjidhni:

  1. Ju mund të përdorni një server të largët të një kompanie, për të cilin ndoshta duhet të paguani rregullisht.
  2. Ju mund të përdorni kompjuterin tuaj. Unë e sugjeroj atë vetëm për testim, nuk është vërtet efikase ta përdorni 24/7, për shkak të humbjes së energjisë, çështjeve të sigurisë.
  3. Ju mund të përdorni një kompjuter të vogël, si Raspberry PI. E lehtë, e lirë, nuk konsumon shumë energji.

Provova opsionin e dytë dhe të tretë, ata funksionuan mirë. Epo, qëllimi kryesor nuk janë serverët e këtij udhëzuesi, por unë ju këshilloj disa këshilla.

Nëse përdorni një kompjuter, me siguri përdorni Windows. Nëse do të isha ju, do të instaloja një server Apache ose XAMPP mbi të.

XAMPP tashmë ka PHP në të, përveç që vjen gjithashtu me HTML, Perl dhe një Sistem Menaxhues të Bazës së të Dhënave. Me PHP, ju mund të bëni një server dinamik. Nëse dëshironi të përdorni serverin lokal që sapo keni bërë nga kudo në botë, duhet të caktoni IP statike në kompjuterin tuaj dhe të bëni disa transferime portesh. Një udhëzues i dobishëm për IP statike:

Dhe e gjithë gjëja përcjellëse e portit:

Nëse keni një mjedër, është një praktikë e mirë ta përdorni. Mund të njiheni me komandat Linux dhe të drejtoni serverin tuaj 24/7.

Sistemi operativ ishte Raspbian Jessie me një konfigurim pa kokë (pa tastierë, monitor) - e kontrollova me kompjuterin tim me lidhje SSH.

Kam përdorur Putty për të hyrë në Mjedrën time. Mos harroni të ndryshoni fjalëkalimin e llogarisë tuaj, në mënyrë që të tjerët të mos hyjnë në ju Pi. E parazgjedhur është: pi, passw: mjedër.

Unë instalova një server në internet lighttpd me sqlite3. Udhëzues i mirë gjendet këtu:

Kam përdorur kryesisht PHP në kodin e serverit. Me PHP ju mund të merrni të dhëna, të lexoni/shkruani baza të të dhënave - kodoni një pyetje në një format json, etj … Ky tutorial do t'ju ndihmojë shumë, si të menaxhoni bazën e të dhënave tuaja me PHP.

Kodin tim mund ta shikoni edhe në github, në dosjen server_files.

Dhe sigurisht, ju duhet të aktivizoni përcjelljen e portit në Pi tuaj në ruterin tuaj, nëse doni të hyni në të nga distanca.

Hapi 8: Përfundimi/Përvoja

Ende nuk është bërë një rrethim.

Përvoja ime është se sistemi nuk funksionon shumë keq. Por ka përmirësime të stabilitetit që presin.

Nëse gjurmuesi nuk ka punuar me kodin që kam bashkangjitur, mos u shqetësoni. Mundohuni të siguroheni që SIM800L dhe NEO 6M po punojnë ashtu siç duhet. Ju mund të modifikoni lirshëm kodin tim, ose të kërkoni një më të mirë. Unë vetëm shpresoj, se mund t'ju tregoj një shembull, se si mund ta përfundoni këtë projekt.

Unë pranoj çdo këshillë, korrigjim nga komentet. Mos ngurroni të pyesni.

Recommended: