Sistem de avertizare a evenimentelor rutiere folosind rețeaua de tip GSM [304115]
Anexa 3
Universitatea “Politehnica” [anonimizat] a evenimentelor rutiere folosind rețeaua de tip GSM
Proiect de diplomă
prezentat ca cerință parțială pentru obținerea titlului de
Inginer în domeniul domeniul**
programul de studii de licență program***
Conducător științific Absolvent: [anonimizat]. [anonimizat] 2
Universitatea “Politehnica” [anonimizat] :
Prof. Dr .Ing. Alexandru Vasile
TEMA LUCRĂRII DE DIZERTAȚIE
a masterand: [anonimizat]
1. Titlul temei: Sistem de avertizare a evenimentelor rutiere folosind rețeaua de tip GSM
2. [anonimizat] a student: [anonimizat]:
Realizarea unui modul electronic cu microcontroller și modem GSM care trimite mesaje de tip SMS.
Crearea unei interfețe între modulul electronic și utilizator care face posibilă semnalarea eventualelor probleme ce pot apărea în trafic.
Circuitul prezintă senzori de presiune capabili să transmită detalii despre starea autovehicului în cazul unui eveniment rutier.
3. Proprietatea intelectuală asupra proiectului aparține: UPB și student: [anonimizat]
4. Locul de desfășurare a activității: UPB
5. Realizarea practică rămâne în proprietatea: Student: [anonimizat]
6. Data eliberării temei:
08.12.2015
CONDUCĂTOR LUCRARE: STUDENT: [anonimizat]. Dr. [anonimizat], siguranța la volan este o importantă preocupare a oamenilor pretutindeni. Există numeroase metode prin care se încearcă asigurarea unei siguranțe cât mai crescute: [anonimizat], tetierele etc. Cu toate acestea nu se poate spune ca totul va fi bine în cazul unui accident. Nimeni nu poate să prevadă pericolul și este foarte important ca reacția la acesta să fie cât mai rapidă. Datorită numarului mare de pierderi de vieți omenești în accidente auto din cauza ajutorului întîrziat este necesară găsirea unei soluții care să micșoreze durata de raportare a accidentului. Pe langă anunțarea imediată a unui incident auto este necesară și localizarea cât mai bună a acestuia pentru ca echipajul de prim ajutor să sosească cât mai repede.
[anonimizat]. [anonimizat] a unui mobil nu ajută cu nimic dacă acesta nu este folosit la timp.
Scopul acestei lucrări este acela de a [anonimizat], fără să depindă de persoanele implicate sau de alte persoane aflate în trafic. Viteza cu care un echipaj de salvare ajunge la un accident de mașină grav contează foarte mult. Având un sistem bun care poate să facă asta multe vieți pot fi salvate.
Lucrarea constă în crearea unui sistem de avertizare a evenimentelor rutiere folosind rețeaua GSM. [anonimizat]d să il declanșeze în diverse situații ce necesită intervenția unui echipaj de salvare. Atunci când evenimentul are loc, un SMS de ajutor va fi trimis către un numărul de urgențe 112. Acest mesaj va conține locația accidentului precum și informații despre șofer/mașina acestuia.
În primul capitol al lucrării voi prezenta rețeaua GSM, aceasta fiind folosită pentru a trimite mesajul de tip SMS.
În cel de-al doilea capitol voi descrie sistemul de poziționare globală – GPS prin care putem afla locația noastră pe glob.
Cel de-al treilea capitol va prezenta diferite implementări ale unor sisteme de avertizare deja existente. Unul dintre acestea este încă în fază de proiect dar se dorește implementarea lui în Europa în următorii ani – eCall.
În ultimile trei capitole voi descrie componentele folosite pentru realizarea acestui proiect și voi detalia rezultatele obținute. O astfel de soluție implementată în mod corect pe automobile poate reduce pierderile de vieți omenești.
Rețeaua GSM
Prezentare generală
GSM – Sistemul global pentru comunicații mobile este un standard dezvoltat de ETSI (European Telecomunications Standards Institute) și descrie rețeaua celulara de a doua generatie (2G) folosită de telefoanele mobile. GSM era prescurtarea de la Groupe Special Mobile, mai tâziu s-a redenumit Global System for Mobile Comunications. Prima rețea GSM a fost lansată în Finlanda în anul 1991 (în același an a fost efectuat primul apel iar un an mai târziu a fost trimis primul SMS).
Rețelele 2G au fost dezvoltate pentru a înlocui rețelele celulare analogice – prima generație(1G) iar standardul GSM e descris ca o rețea optimizată digitală pentru telefonia vocala full duplex.
GSM este o rețea celulară, telefoanele mobile conectându-se la aceasta prin căutarea celulelor din imediata lor vecinătate. Telefoanele mobile trebuie să fie ușoare, deci acumulatorii acestora vor fi mici iar puterea de emisie radio va fi limitată. Această limitare de distanță impune ca antenele/releele GSM să fie poziționate strategic pe stâlpi sau pe cladiri înalte pentru a acoperi cât mai bine suprafețele mari, intens populate. Există mai multe dimenziuni ale celulelor : macro, micro, pico, femto si umbrelă.
Sunt și arii în care rețeaua GSM nu pătrunde:
Zone mari nelocuite: deșerturi, munți înalți, zone polare, lacuri întinse, mări și oceane
Zone subterane: tuneluri, mine, peșteri, zone subacvatice
Spațiul aerian cu altitudine de peste 4 – 6 km
Unele zone și țări subdezvoltate
Figura 1. Antena GSM
Atunci când un utilizator se deplasează (călătorește folosind un autovehicul) sistemul îl va pasa dintr-o celulă într-alta, de la un releu la altul. Acest proces trebuie să nu fie simțit de utilizator. Dacă acesta poartă o convorbire telefonică, trecerea în altă celulă nu va influența apelul, acesta nu va fi întrerupt sau deranjat.
Arhitectura unei rețele GSM
Rețeaua GSM cuprinde mai multe unități funcționale. Aceasta poate fi împărțită în:
Stația mobilă (MS)
Subsistemul stației de bază (BSS)
Subsistemul de comutare (NSS)
Sistemul de operare și suport (OSS)
Figura 2.Arhitectura GSM
Stația mobilă este formată dintr-un echipament fizic – un transmițător radio, un display, procesoare de semnal digital și cartela SIM. Aceasta reprezintă intefața dintre utilizator și rețeaua GSM. Pot fi oferite servicii de voce, servicii de date și alte servicii suplimentare. SIM-ul conține toate detaliile de identificare: țara de proveniență, operatorul de rețea și identitatea abonatului.
Subsistemul stației de bază este compus din două părți:
Stația de emisie – recepție (BTS)
Stația bază de control (BSC)
BTS și BSC comunică prin interfața Abis, permițând operațiuni între componente realizate de diferiți furnizori. Componentele radio ale unui BSS pot conține de la patru până la șapte sau nouă celule. Un BSS poate avea unul sau mai multe stații de bază.
BTS găzduiește transmițătoarele radio ce definesc o celulă și gestionează protocoalele radio împreună cu MS. Într-o zonă urbană mare se pot găsi numeroase BTS-uri. De obicei BTS-urile sunt plasate în mijlocul unei celule, puterea lor de transmisiune definind dimensiunea acesteia. Fiecare BTS are între 1 și 16 transmițătoare, în funcție de densitatea de utilizatori aflați în celulă.
BTS-ul are următoarele funcții:
Codifică, criptează, multiplexează, modulează și alimentează semnalele radio
Transcodează și adaptează rata
Se ocupă de sincronizarea timpului și a frecvenței
Servicii de voce full sau half-rate
Decodifică, decriptează și se ocupă de egalizarea semnalelor recepționate
BSC-ul gestionează resursele radio pentru unul sau mai multe BTS-uri. Se ocupă de configurarea canalului radio și de transferuri. BSC-reprezintă conexiunea dintre mobil și MSC. Acesta atribuie și eliberează frecvențele și sloturile de timp pentru stația mobilă (MS). De asemenea, BSC se ocupă de transferul intercelular.
Subsistemul de comutare (NSS), al cărui principală parte este Centrul de Comutare Mobila (MSC), efectuează comutarea apelurilor între utilizatorii rețelelor mobile sau fixe și gestionează serviciile mobile cum ar fi autentificarea.
Figura 3.Elementele subsistemului de comutare
Acesta include mai multe elemente:
HLR (Home Location Register) este o bază de dae folosită pentru sticarea și gestionarea abonamentelor. Aceasta este considerată cea mai importantă bază de date deoarece stochează date permanente despre abonați, inclusiv profilul acestuia, informații despre locație. Atunci când o persoană cumpără un abonament sub formă de SIM toate informațiile despre acel abonament sunt înregistrate în HLR-ul respectivului operator.
Centrul de comutare a serviciilor mobile(MSC) este componenta centrală a subsistemului. Acesta efectuează comutarea apelurilor între utilizatorii rețelei de telefonie mobilă și utilizatorii altor rețele fixe sau mobile, precum și gestionarea serviciilor mobile cum ar fi înregistrarea, autentificarea, actualizarea locației, direcționarea apelurilor către un abonat în roaming. Fiecare MSC are un ID unic.
VLR (Visitor Location Register) este o bază de date ce conține informații temporare despre abonați, ce este necesară centrului de comutare. Acesta este mereu integrat cu MSC: Atunci când o stație mobilă intră într-o nouă zonă MSC, VLR-ul conectat la aceș MSC va solicita date despre acea stașie de la HLR. Dacă mai târziu acea stație inițiază un apel, VLR-ul va avea suficiente informații pentru configurarea apelului.
AUC (Centrul de autentificare) este o bază de date protejată ce stochează o copie a cheii secrete ce se află stocată pe cartela SIM a oricărui abonat, ce este utilizată pentru autentificarea și codificarea canalului radio. AUC protejează operatorii de rețea împotriva diferitelor tipuri de fraudă din ziua de azi.
EIR (Registrul de identitate al echipamentului) este baza de date ce conține o listă a tuturor echipamentelor mobile valabile din rețea, unde IMEI identifică fiecare stație mobilă.
Sistemul de operare și suport (OSS)
Centrul de operare și întreținere OMC este conecatat l toate echipamentele din sistemul de comutare și la BSC. Implementarea acestuia se numește sistem de operare și suport (OSS)
Funcții ale OMC:
Administrarea și operare comercială (abonament, taxare și statistică)
Managementul securității
Configurarea rețelei, gestionarea performanțelor
Sarcini de întreținere
OSS este entitatea funcțională prin care operatorul de rețea monitorizează și controlează sistemul. Scopul OSS este acela de a oferi clientului suport .
Majoritatea rețelelor GSM folosesc benzile de frecvență de 900 MHz și 1800 MHz. În SUA și Canada sunt folosite benzile de 850 MHz și 1900 MHz.
Avantajele rețelelor GSM:
Capacitate de transmisie sporită
Consum redus de energie
Acoperire geografică bună
Interferențe reduse cu alte semnale
Toleranță la greșeli de transmisie sau defecțiuni
Clasificarea sistemelor de comunicații mobile
1G – prima generație, folosea transmisia analogică a informațiilor. Aceste sisteme utilizau transmisia analogică atât pentru mesaje cât și pentru semnalele de control și semnalizare de sistem.
2G – era folosită transmia numerică informațiilor și integra mesajele digitalizate cu informațiile de control și semnalizare. Performanțe superioare față de sistemele utilizate anterior.
3G – debitul de transmisie crește de la valori de ordinul 10Kbps la valori cuprinse între 200Kbps și 2 Mbps. Această creștere presupune și creșterea benzii alocate și utilizarea comutației de pachete.
4G – prevede viteze de peste 100Mbps pentru downlink și peste 30 Mbps pentru uplink.
SMS – Serviciul de mesaje scurte
SMS reprezintă serviciul de mesaje scurte. Este o tehnologie ce permite trimiterea și recepționarea de mesaje între telefoanele mobile. SMS a aparut prima data în Europa în anul 1992. La început a fost inclus în standardele GSM iar mai târziu a fost portat la tehnologiile wireless cum ar fi CDMA și TDMA.
După cum sugerează și denumirea „Servicul de mesaje scurte”, datele care pot fi conținute de un mesaj SMS sunt limitate. Un mesaj SMS poate conține cel mult 140 octeți (1120 biți) de date, deci acesta poate avea:
160 de caractere dacă se folosește codarea de caractere pe 7 biți. (Codarea de caractere pe 7 biți este potrivită pentru codarea caracterelor latine – alfabetul limbii engleze)
70 de caractere daca este utilizată codificarea de caractere Unicode UCS2 pe 16 biți.(Mesajele SMS conțin caractere non-latine precum caracterele chinezești – acestea folosesc codare pe 16 biți)
Pe langă text, mesajele SMS pot conține și date binare. Este posibil sa trimiteți tonuri de apel, imagini, logo-uri, animații, cărți de vizită și configurații Wap către un telefon mobile folosind mesajele SMS.
Un avantaj major al SMS-ului este faptul că acesta este suportat de toate telefoanele mobile GSM. Aproape toate abonamentele furnizate de operatorii de telefonie mobilă includ și un serviciu de mesagerie SMS.
Un dezavantaj al tehnologiei SMS constă în faptul ca un mesaj nu poate transporta decât o cantitate limitată de date. Pentru a depăși această limitare a fost dezvoltată o extensie numită SMS concatenat – sms lung. Un astfel de mesaj poate conține mai mult de 160 de caractere în limba engleză. Telefonul mobil al expeditorului va împărți mesajul lung în părți mai mici și le va trimite pe fiecare ca un singur mesaj SMS. Când acestea ajung la destinație, telefonul le va combina înapoi într-un mesaj lung.
Exemplu de aplicații ale mesajelor SMS :
Mesageria text între persoane – este cea mai frecvent utilizată aplicație SMS. În aceste tipuri de aplicații de mesagerie text, un utilizator scrie un mesaj folosind tastatura telefonului, apoi va adăuga numarul destinatarului și va trimite mesajul către acesta. Atunci când telefonul mobil al destinatarului primește mesajul, acesta va informa utilizatorul printr-un sunet sau vibrații.
Furnizarea de informații – mulți furnizori de conținut folosesc mesaje SMS pentru a trimite abonaților informații, știri, rapoarte și alte date.
Descărcarea de date – mesajele pot avea date binare, acestea pot trimite imagini, tonuri de apel.
Alerte și notificări – SMS-ul este o tehnologie potrivită pentru furnizarea de alerte și notificări ale unor evenimente.
Telefonul mobil sau modemul GSM pot fi utilizate pentru anumite aplicații în care ne dorim un control de la distanță: să pornim sau să oprim un ventilator sau un motor. Putem face asta trimițând un SMS către un telefon sau un modem GSM ce are o interfață către un microcontroller sau calculator.
Interfața dintre un modem GSM sau un telefon și controllerul host (PC sau microcontroller) este un protocol text numite Comenzile AT ale lui Hayes. Putem face ca telefonnul să exectueze diferite operații: să trimită, să șteargă mesaje, să inițieze un apel, trimițând comezi AT de la controller.
Există două moduri de funcționare pentru trimiterea și recepționarea SMS-urilor:
Modul text
Modul PDU (Unitatea de descriere a protocolului)
Majoritatea modemurilor și telefoanelor mobile acceptă modul PDU pentru trimiterea și primirea mesajelor text. Modul Text este modul în care informația sau mesajul poate fi citit ca un text (plain text) și nu este suportat de toate modemurile și telefoanele mobile. Modul Text reprezintă codarea fluxului de biți din modul PDU.
Alfabetele sunt diferite și de aceea există mai multe alternative de codare atunci când se afișează un mesaj SMS. Cele mai cunoscute codări sunt: PCCP437, PCDN, 8859-1, IRA și GSM.
Acestea pot fi setate folosind comanda AT + CSCS atunci când citim folosind o aplicație pe un PC. Dacă citim folosind telefonul, acesta va alege automat codificarea corectă.
Comenzile AT
Comenzile At sunt instrucțiuni folosite pentru a controla un modem. AT vine de la abrevierea cuvântului atenție. At este prefixul care informează modemul de începerea unei linii de comandă.
Există două tipuri de comenzi AT:
Comenzi de bază – sunt acele comenzi AT care nu încep cu “+”. De exemplu D(Apelare),
A(Răspuns), O(Întoarcere la starea online) sunt comenzi de bază
Comenzi extinse – sunt acele comenzi ce încep cu „+”. Toate comenzile GSM AT sunt comenzi
extinse. Exemplu: +CMGS, + CMSS, + CMGR.
Tabel 1.Comenzi AT – GSM
Tabel 2.Comenzi AT – GPS
Serviciul de transfer de pachete de date – GPRS
Serviciul de transfer de pachete de date (General Packet Radio Service -GPRS) reprezinta un serviciu radio de transmitere a informațiilor. Acestea sunt grupate sub formă de pachete. În timpul unui apel telefonic se creează o conexiune continuă la un canal iar acesta nu va putea fi folosit de nimeni altcineva. În cazul GPRS vom avea o conexiune continuă dar canalul este folosit doar în momentul în care trimitem date. O conexiune GPRS va putea fi folosită de mai mulți utilizatori. Vom plăti acest serviciu în funcție de volumul de date pe care l-am consumat.
Tehnologia GPRS se bazează pe împărțirea informației în pachete mici ce sunt ușor de manevrat, acestea fiind transmise pe calea de comunicație și sunt reasamblate la destinație. Fiecare pachet are o lungime fixă, acestea conținând adresa destinație necesară rutării prin noodurile GPRS. Viteza de transmisie a pachetelor este de 14.4 kbit/s dacă se folosește un singur slot de timp și poate ajunge la 115 kbit/s (practic) când se folosesc toate cele opt sloturi de timp. Viteza maximă teoretică este de 171.2 kbit/s și este de trei ori mai mare decât viteza de transmisie de date posibilă pentru rețeaua de telecomunicații fixe din zilele noastre și de zece ori mai rapidă decât serviciile de transfer pe rețelele GSM (CSD – Circuit-Switched Data).
Figura 4.Transmiterea informațiilor în tehnologia GPRS
GPRS suportă următoarele protocoale:
Internet Protocol (IP)- în practică este folosit IPV4, ipv6 nefiind foarte popular
PPP (protocolul punct la punct) – acest mod nu este suportat operatorii de telefonie dar dacă telefonul este folosit ca modem pentru un calculator, PPP este utilizat pentru tunelarea ip-ului către telefon. Acesta oferă dinamic o adresă IP echipamentului mobil (IPCP)
X.25 – folosit pentru terminalele de plată wireless, a fost scos din standard. Acesta poate fi utilizat peste PPP sau peste IP dar este necesar un router dedicat pentru încapsulare.
Dispozitivele ce suportă GPRS se pot împărți în trei clase:
Clasa A – se pot conecta la serviciul GPRS și la serviciul GSM (voce și SMS) și șe poate folosi simultan. Astfel de dispozitive sunt disponibile în zilele noastre.
Clasa B – Se pot conecta la GPRS și GSM (voce și SMS) dar poate folosi doar unul dintre servicii la un moment dat. Majoritatea dispozitivelor GPRS sunt clasa B.
Clasa C – se conectează fie la GPRS fie la GSM iar comutarea între aceste servicii se face manual.
O conexiune GPRS este stabilită după ce ne conectăm la punctul de acces (APN – access point name). Acesta definește serviciile cum ar fi aplicațiile wireless (WAP- wireless application protocol), servicul de mesaje scurte –SMS, serviciul de mesagerie multimedia și serviciile de comunicații Internet – email, accesul la internet – World Wide Web acces. Pentru a configura o conexiune GPRS pentru un modem fără fir, utilizatorul trebuie să specifice un APN, opțional un nume de utilizator și o parolă și foarte rar o adresp IP furnizată de operatorul de rețea.
Avantaje:
posibilitatea unei rate maxime de 115kb/s la transferul de date
partajarea conexiunii de mai mulți utilizatori
timpi de acces mai mici în comparație cu conexiunea prin comutație de circuite
taxarea în funcție de volumul de date transferate, indiferent de durata conexiunii
GPS – Sistem de poziționare globală
GPS-ul (Global Position System – Sistem de poziționare globală) este un sistem de navigație prin satelit și unde radio. Acest sistem se folosește de un număr de sateliți ce orbitează în jurul Pământului și transmit informații de timp și coordonate georgrafice. Sistemul GPS funcționează 24 de ore pe zi, oriunde în lume, indiferent de condițiile meteorologice. Semnalul poate trece prin nori, sticlă, plastic, însă nu și prin obiecte solide, cum ar fi pereții sau munții.
Implementarea GPS a avut loc în anii 1960 atunci când doi fizicieni americani William Guier și George Weiffenbach și-au dat seama că pot folosi efectul Doppler pentru a localiza punctul satelitului pe orbită, dar și locul utilizatorului. În prezent pentru sistemul de poziționare prin GPS se folosește sistemul NAVSTAR – inițiat și realizat de către Departamentul Apărării al Statelor Unite ale Americii.
Un sistem GPS este alcătuit din 3 segmente: segmentul spațial, segmentul de control, segmentul utilizatori.
Segmentul spațial
Segmentul spațial este format dintr-o grupare de sateliți lansați pe orbită ce emit semnale radio pentru utilizatorii civili și pentru utilizatorii militari.
Au existat mai multe generații de sateliți ce au purtat denumirea de „block”. În prezent pe orbită exista 31 de sateliți GPS activi.
Constelația garantează vizibilitatea simltană a cel puțin 4 sateliți, oriunde ne-am afla pe Pământ. Până în prezent au fost lansate mai multe generații de sateliți ce au purtat denumirea de “block”.
Block I a fost prima generație de sateliți ce a fost lansați începând cu anul 1978. Aceștia aveau o greutate de 845 kg și o durată de funcționare de 5 ani.
Block II sunt mult diferiți față de prima generație de sateliți, având implementate tehnici de protecție – anti-spoofing (acces restrictiv). Aceștia aveau o greutate de 1500 kg iar la bordul lor se aflau două ceasuri cu cesiu, două cu rubidiu și 4 ceasuri atomice.
Block IIA (advanced) – 19 sateliți lansați începând cu anul 1990 ce puteau intercomunica.
Block IIR (replenishment) reprezintă o grupare de 12 sateliți având o greutate de 2000kg și o durată de viață de 10 ani proiectați de Lockheed Martin.
Block IIR-M (modernized) sunt 8 sateliți lansați în 2005 ce pot transmite semnal pe frecvențele L1 și L2 pentru aplicațiile militare.
Block IIF (follow) 12 sateliți construiți de Boeing și lansați între 2010 și 2016. Aceștia transmit semnal civil pe frecvența L5 iar durata lor de viață este de 12 ani.
Block III – 10 sateliți ce vor fi lansați după anul 2018.
Un satelit are 2 părți:
Sistemul de transport
Sistemul de navigație
Sistemul de transport este format dintr-o structură compactă de tip cutie la care sunt atașate două panouri solare mobile. Aici există mai multe sisteme de control: termic, de alimentare și distribuție, telemetric și de telecomandă, al altitudinii și vitezei, al altitudinii și orbitei.
Sistemul de navigație este alcătuit din: unitatea de amplificare a datelor de navigație, două emițătoare de navigație pe frecvențele L1 și L2, ceasuri atomice, memorie cu datele de navigație pentru 14 zile.
Figura 5.Sateliți
Segmentul de control
Segmentul de control reprezintă un grup de stații de control aflat la sol. Acestea supraveghează sateliții, le trimit acestora informații referitoare la poziționarea celorlalți sateliți și verifică ceasurile lor. Atribuțiile acestuia sunt: să calculeze efemeridele sateliților, să determine corecțiile pentru efemeridele satelitare, să mențină standardul de timp – supravegherea ceasurilor satelitare și extrapolarea mersului acestora, transferul mesajelor spre sateliți, controlul sistemului.
Segmentul utilizatori
Segmentul utilizatori – totalitatea utilizatorilor civili sau militari ce utilizează un receptor GPS. Pentru calcularea poziției 3D a unui punct de pe suprafața terestră ar fi nevoie de 3 distanțe (3 sateliți) – metoda fiind cea a triangulației. Triangulația este modul de determinare a poziției unui punct măsurând unghiurile dintre acesta si alte două puncte de referință cunoscute. GPS-ul are nevoie totuși de 4 sateliți pentru a minimiza erorile de poziționare datorate ceasurilor aflate în receptoare. Acestea nu sunt destul de exacte în comparație cu cele atomice aflate pe sateliți.
Antenele receptoarelor pot fi de mai multe tipuri: antene helix, antene monopol, antene spiral-helix sau antene microstrip (bandă îngustă)
Figura 6.Stație de control
Receptorul GPS – aparat ce recepționează semnalele emise de sateliți și poate determina poziția sa pe glob. Poziția este exprimată folosind sistemul geodezic mondial WGS 84.
Receptoarele GPS sunt formate dintr-o antenă reglată pe frecvențele transmise de sateliți, receptor-procesoare, un ceas – oscilator de cristal și un ecran pentru afișarea informațiilor.
Informațiile pot fi: latitudine, longitudine, altitudine, viteza, cursul, direcția de mișcare, distanța până la destinație.
Figura 7.Receptoare GPS
Determinarea poziției spațiale se poate face prin două metode:
Determinarea pseudo-distanței. Distanța dintre un receptor și satelit se poate calcula știind viteza semnalului radio – 300.000 km/s și calculând timpul de care acesta are nevoie pentru a ajunge de la satelit la receptor. Fiecare satelit are un semnal unic și este definit printr-un cod de zgomot aleator. Receptorul recunoaște acest semnal și știe despre ce satelit este vorba.
Determinarea fazei – este o metodă precisă dar are o limitare: trebuie ca receptorul să staționeze cel puțin 10 minute în același punct.
Sateliții transmit constant semnale de navigație având o viteză de 50 biți/sec folosind frecvențe din spectrul electomagnetic. Transmisiile au o durată de aproximativ 30 de secunde și conțint 1500 de biți de informație codată. Datele sunt codificate cu o secvență PRM (partial-response modulation) fiind diferită pentru fiecare satelit. Semnalele sunt transmise folosind două frecvențe: L1 (1575,45 MHz) și L2 (1227,60 MHz).
Aceste transmisii de 1500 de biți se împart în 5 sub-cadre a câte 300 de biți fiecare. Primele cadre se repetă la fiecare 30 secunde iar subcadrele 4 și 5 apar în 25 de versiuni înainte de a repeta. Astefel un mesaj de navigație complet se reptă după 12.5 minute.
Fiecare mesaj are 3 tipuri de infirmație: cod pseudoaleator, date efemere și date almanah.
Codul pseudoaleator (primul sub-cadru) conține date prin care satelitul este identificat și timpul acestuia. Acest timp este folosit pentru a calcula momentul în care mesajul este transmis de către satelit.
Datele efemere (sub-cadrele 3 și 4) conțin informații despre starea satelitului, de exemplu orbita acestuia precum și data și ora curentă. Acestea sunt folosite pentru a determina poziția curentă.
Datele almanah(sub-cadrele 4 și 5) oferă informații despre ceilalți sateliți, parametrii UTC, indicatori de stare și parametrii ionosferici.
Figura 8.Mesajul GPS
Recepționarea semnalelor poate fi făcută în două moduri:
Modul absolut – este necesar un singur receptor iar precizia este de aproximativ 10 – 15 m; folosit atunci când nu este cerută o precizie mare.
Modul diferențial – sunt folosite două receptoare. Unul din acestea se află într-un punct fix și are rol de stație de bază. Sunt măsurate diferențele dintre coordonatele cunoscute ale punctului static și coordonatele rezultate din analiza GPS. Diferențele sunt folosite pentru a corecta coordonatele altor receptoare aflate în zona respectivă. Modul acesta e foarte precis (1 – 5 cm)
NAVSTAR-GPS nu este singurul sistem de poziționare prin satelit existent. Alte două importante sistem sunt GLONASS și Galileo.
GLONASS este un sistem început de de Uniunea Sovietică și momentan este continuat de Rusia. Acesta a fost dezvoltat începând cu anul 1976 iar primul satelit a fost lansat în 1982. În prezent sistemul are în componență 24 de sateliți aflați la 19.100 km de Pământ. Aceștia sunt grupați ân 3 planuri orbitale ce sunt decalate cu 120̊. Sistemul poate avea o eroare de poziționare maximă de 4.46-7.38 m orizontal, 15 m vertical iar eroarea de viteză este 15 cm/s.
Noile receptoare folosesc ambele sisteme GPS NAVSTAR și GLONASS iar precizia acestora este mai bună.
Galileo este un sistem de poziționare globală ce se află în curs de realizare destinat pentru uzul civil. Acesta va avea un nivel de precizie superior celui oferit de GPS fiind capabil să măsoare distanțe cu o precizie de 1 metru. Implementarea acestuia va trebui finalizată până în 2020.
Sistemul va avea 30 de sateliți aflați la 23.222 km altitudine poziționați pe 3 orbite medii (MEO).Perioada de funcționare a sateliților este de 12 ani. Primii 2 sateliți au fost lansați în 2011 de la Centrul spațial Kourou. Alți 2 sateliți au fost lansați în 2012 și vor fi operaționali din 2017.
Surse de erori pentru semnalul GPS:
Reflexia semnalului
Numărul sateliților vizibili
Erori datorate ceasului receptorului – nu este la fel de precis precum ceasurile atomice
Erori orbitale
Întârzieri la trecerea prin ionosferă și troposferă
Metode existente de avertizare a evenimentelor rutiere
În ziua de azi, siguranța este o importantă preocupare a oamenilor pretutindeni. Nimeni nu poate să prevadă pericolul și este foarte important ca reacția la acesta sa fie cât mai rapidă. Recent au fost dezvoltate diferite aplicații mobile ce pot fi folosite pentru a raporta sau a cere ajutor în situații delicate. Totuși aceste aplicații nu pot fi folosite suficient de repede și nu oricine deține un telefon mobil care să suporte asemenea programe. Un buton de panică ar fi ideal pentru astfel de situații neprevăzute și ar permite utilizatorului să reacționeze mai repede.
Datorită numarului mare de pierderi de vieți omenești în accidente auto din cauza ajutorului întîrziat este necesară găsirea unei soluții care să micșoreze durata de raportare a accidentului. Pe langă anunțarea imediată a unui incident auto este necesară și localizarea cât mai bună a acestuia pentru ca echipajul de prim ajutor să sosească cât mai repede.
Dispozitive de urmărire al vehiculelor
În general un sistem de urmărire este folosit pentru observarea unor persoane sau obiecte în mișcare și furnizarea în timp a locației acestuia.
Un sistem de urmărire a vehiculelor combină AVL-ul (localizarea automată a vehiculelor ) cu un software ce colectează aceste date pentru a oferi o imagine completă a locațiilor vehiculului. Sistemele moderne de urmărire folosesc în mod obișnuit tehnologia GPS sau GLONASS pentru localizarea vehiculelor. Informațiile automobilelor pot fi vizualizate pe hărți pe internet. Autoritățile urbane de transport public folosesc astfel de sisteme în marile orașe.
Dispozitivele de urmărire a vehiculelor pot fi de mai multe tipuri: dispozitive pasive sau dispozitive active. Dispozitivele pasive stochează locația GPS, viteza, poziția și uneori, un eveniment declanșator cum ar fi cheia- pornit/oprit sau ușa închisă/deschisă. Odată ce vehiculul revine la un punct stabilit, dispozitivul este scos iar datele sunt descărcate pe un calculator pentru evaluare.
Dispozitivele active colectează, de asemnea, aceleași informații dar transmit datele în timp real prin rețele celulare sau prin satelit către un calculator sau un centru de date.
Multe dispozitive moderne de urmărire a vehiculelor îmbină urmărirea activă cu cea pasivăȘ atunci când rețeaua este disponibilă și un dispozitiv de urmărire este conectat, acesta transmite date către un server. Dacă rețeaua nu este disponibilă, dispozitivul stochează informațiile în memoria internă și le va trimite către server când rețeaua va deveni disponibilă.
Componentele urmăririi prin GPS:
Dispozitivul de urmărire GPS – acesta se instalează în vehicul și capturează informația despre locația GPS dar și alte informații ale vehiculului și le trimite către un server la intervale regulate. Celelalte informații pot include Ș cantitatea de carburant, temperatura mototului, altitudinea, presiunea în anvelope, starea bateriei, kilometrajul calculat, turația motorului și altele.
Serverul de urmărire GPS are trei responsabilități: primirea datelor de la unitatea de urmărire GPS, stocarea sigură a datelor și furnizarea acestora către utilizator.
Interfața cu utilizatorul – modul prin care un utilizator poate accesa informațiile primite.
Utilizări:
Transport public de persoane
Recuperarea vehiculelor furate
Monitorizarea carburantului folosit
Calcularea distanțelor
Figura 9. Sistem de urmărire
Buton de panică
O alarmă de panică reprezintă un dispozitiv electronic destinat să ajute la alertarea cuiva în situații urgente, existând o amenințare la adresa unei persoane. O alarmă de panică poate fi controlată de un buton de panică. Astfel de butoane pot fi conectate la un centru de monitorizare. Alarma poate fi utilizată pentru a solicita asistență de urgență de la autoritățile locale de securitate, poliție sau de urgență.
Figura 10. Buton de panică aflat în taxiurile Ola pentru pasageri
Tehnologii existente
BMW Assist
Acesta este un serviciu de asistență rutier oferit de BMW. Acesta este similar serviciilor oferite de OnStar sau Mercedes-Benz și toate utilizează rețeaua celulară și telemetria poziționării globale pentru a localiza și îndruma vehiculul. BMW Assist poate furniza indicații rutiere, diagnoza autovehiculului, nofificări privind starea airbagului. Serviciul este inclus în majoritatea noilor modele BMW.
BMW Assist este integrat în sistemele de comunicație și sitemul audio al mașinii. Acesta funcționează împreună cu sistemul de navigație (dacă este echipat) sau utilizează propriul său echipament GPS. Mașina comunică prin rețeaua celulară cu un sistem care primește și analizează informațiile. Informația poate fi direcționată către un centru de apeluri sau către o aplicație web.
Figura 11.Buton SOS pentru BMW Assist
Recuperarea unui vehicul furat este un serviviu suplimentar oferit de BMW Assist. Acest serviciu este capabil să urmărească locația mașinii prin intermediul computerului de bord al mașinii și al sistemul GPS. BMW Assist este legat de serviciul informatic al mașinii și nu poate fi înlăturat fără a face vehiculul imobil. Sistemul utilizează rezerva de putere a mașinii pentru a amplifica semnalul celular la 3 Watt iar antena folosită este mai bună decât cea a unui telefon mobil.
AACN (Notificarea Avansată Automată a Coliziunilor)
AACN este un sistem derivat din ACN(Notificarea Automată a Coliziunilor). Acesta este folosit în prezent în unele țări precum Japonia și SUA și presupune detectarea automată a unui accident auto, informarea imediată a serviciilor medicale și trimiterea către acestea a unor informații importante despre eveniment. Aceste informații provin de la anumiți senzori ce sunt instalați pe mașina și pot fi:
viteza în momentul impactului, partea avariată a mașinii (frontal, lateral, spate), starea airbagurilor,
starea centurii de siguranță, vom ști dacă mașina s-a rostogolit sau dacă aceasta a luat foc. În același timp serviciile de urgență vor știi locul și momentul în care a avut loc accidentul, modelul mașinii, informații despre șofer.
Figura 12. Sistem AACN folosit în Japonia
Cu toate aceste date se vor putea lua decizii rapide cum trebuie intervenit și ce echipaje se trimit la fața locului. Se poate calcula cât de grav este accidentul:
Figura 13. Riscul de rănire
eCall
eCall este o inițiativă europeană menită să asigure asistență rapidă conducătorilor auto implicați într-o coliziune oriunde în Uniunea Europeană. Sistemul eCall va fi obligatoriu pentru toate autoturismele noi vândute în UE după aprilie 2018.
Se estimează că serviciul 112 eCall poate să îmbunătățească timpii de răspuns în situațiile de urgență cu 40% în zonele urbane și cu 50% în mediul rural și poate reduce numărul de decese cu cel puțin 4% iar numărul leziunilor grave cu 6%. Sistemul este activat automat de îndată ce senzorii și procesoarele din mașină detectează un accident grav. După ce a pornit, acesta apelează numărul european de urgență 112, stabilește o legătură telefonică către centrul de apeluri de urgență și trimite detaliile accidentului (MSD – set minim de date) la serviciul de salvare, inclusiv timpul incidentului, poziția exactă a vehiculului și direcția de deplasare. eCall poate fi declanșat manual prin apăsarea unui buton în mașină, de exemplu un martor al unui accident grav poate face acest lucru.
Acest sistem nu este de tip black-box. Nu înregistrează în mod constant poziția vehiculului, face acest lucru doar în cazul unui accident.Acesta nu poate fi folosit pentru a monitoriza mișcările mașinii. Cartela SIM utilizată pentru transmiterea datelor este activată numai în cazul în care vehiculul are un accident grav (airbagul este activat). Costul serviciului este estimat la mai puțin de 100 euro pe mașină.
Modulele utilizate pentru realizarea sistemului de avertizare a evenimentelor rutiere
Modulul GSM/GPS SIM808
SIM808 este un modul funcțional 3 în unul – GSM,GPRS și GPS. Este bazat pe cel mai recent modul GSM/GPS de la SIMCOM, suportă rețeaua GSM/GPRS Quad-Band și combină tehnologia GPS pentru navigația prin satelit.
Dispune de un consum redus de energie în modul SLEEP și de un circuit integrat de încarcare pentru bateriile LI-Ion, ceea ce face ca acesta să aibă un timp de standby foarte mare fiind convenabil pentru proiectele ce utilizează acumulatori LI-ION reîncărcabil. Are o sensibilitate ridicată la recepția GPS cu 22 de canale de urmărire și 66 de canale de recepție. Modulul este controlat prin comenzi AT prin UART și suportă 3.3V și 5V.
Modulul poate fi folosit cu ușurință pentru aplicațiile de urmărire în timp real. Urmărirea se face citind coordonatele GPS (longitudine și latitudine) și apoi trimițându-le folosind mesaje SMS sau request-uri HTTP către un server web. După aceea putem folosi orice browser pentru a încărca pagina web PHP cum afi Google Maps pentru a afișa locația în timp real.
Figura 14. Modulul SIM808
Antena GSM are un rol important, este folosită atât ca emițător cât și receptor făcând legătura cu rețeaua GSM.
Antena GPS – cu ajutorul acesteia putem afla locația si alte informații. Atunci când este folosit în acest scop ar trebui să ne aflam în aer liber sau cât mai aproape de fereastră.
Cartela SIM – orice dispozitiv ce se conectează la rețeaua GSM trebuie să conțină o cartelă.
Stabilizatorul de tensiune – permite alimentarea plăcii la tensiune constantă.
Leduri: ledul luminos de stare va fi aprins iar ledul de rețea va clipi odată la 800 milisecunde până când modulul GSM s-a conectat la rețea – din acel moment va clipi odată la 3 secunde. Led-ul PPS este folosit să indice daca GPS-ul este fix sau nu.
SIM 808 GSM/GPS
Modulul SIM 808 este un modul complet Quad-Band GSM/GPRS ce folosește tehnologia GPS pentru navigația prin satelit. Design-ul compact ce integrează GPRS și GPS într-un singur cip SMT va economisi timp și bani pentru clienții ce vor să dezvolte aplicații compatibile GPS.
Figura 15.SIM 808
Caracteristici generale:
Quad-band 850/900/1800/1900 MHz
GPRS multi-slot class 10/8
GPRS stație mobile clasă B
Conform cu faza GSM 2/2+
Dimensiuni: 24*24*2.6mm
Greutate: 3.3g
Controlul se realizează prin comenzi AT
Tensiune de lucru: 3.4 – 4.4V
Temperatură de lucru: 40̊C – 80̊C
Specificații pentru SMS:
Punct la punct MO și MT
Celulă SMS de difuzare
Suportă modurile Text și PDU
Specificații pentru date:
GPRS clasă 12: maxim 85.6 kbps (downlink/uplink)
Suport pentru PBCHH
USSD
Stivă PPP
Specificații GPS:
Tip receptor
22 canale de urmărire/ 66 canale de recepție
Timpi de pornire: cold start 32s
hot start < 1 s
warm start 3s
Interfețe:
Interfață analogică pentru sunet
Interfață PCM
Interfață SPI
Interfață pentru SIM extern 3V/ 1.8V
Interfață serială
Interfață USB
Arduino UNO
Arduino Uno este o placa bazată pe microcontrollerul Atmega328. Acesta este alcătuit din:
14 intrări digitale/pini de ieșire(6 pot fi folosiți ca ieșiri PWM)
6 intrări analogice
Oscilator cu quart de 16Mhz
Coneziune USB
Mufă de alimentare
Mufă ICSP
Buton de reset
Pinii de intrare/ieșire
Cei 14 pini digitali operează la o tensiune de 5 V. Aceștia pot să trimită sau să primească o intensitate de 40mA și au rezistența internă de 20-50 kOhmi (aceasta este implicit deconectată).
Pentru a seta modul de funcționare al unui pin se folosește comanda pinMode(pin, OUTPUT) pentru ieșire și pinMOde(pin, INPUT) pentru intrare.
Serial: pinul 0(RX) și pinul 1 (TX) sunt utilizați pentru recepția respectiv transmiterea datelor asincrone.
Întreruperi externe: pinul 2 și pinul 3sunt folosiți pentru generarea unei întreruperi în anumite situații (fron crescător sau descrescător)
PWM: pinii 3, 5, 6, 9, 10 și 11. Se folosește comanda digitalWrite(pin, pwm)
SPI: pinii 10, 11, 12 și 13. Aceștia pot comunica folosind interfața serial (SPI)
LED: pinul 13. La acest pin este conectat un LED ce are rol de debug.
Intrare/Ieșire: pinii 7 și 8
Pinii analogici
Cei 6 pini analogici, numerotați de la A0 la A5, pot furniza o rezoluție de 10 biți -1024 valori. Aceștia pot avea tensiuni de la 0 la 5 volți. Pinii A4 (SDA) și A5 (SCL) suportă comunicarea prin 2 fire- TWI.
Pinii de alimentare
Arduino poate fi alimentat folosind conexiunea USB sau folosind o sursă externă. Placa poate să funcționeze folosind o sursă externă de 6 până la 20 V. În cazul în care este furnizată o tensiune mai mică de 7 volți, pinul de 5V va da o tensiune mai mică și placa poate fi instabilă. Dacă utilizăm mai mult de 12V , regulatorul de tensiune poate să încălzească și să deterioreze placa. Intervalul recomandat de tensiune este 7 -12 V.
VIN – pin prin care putem alimenta placa Arduino dintr-o sursă externă.
GND – pe placă sunt mai mulți pini GND. Aceștia sunt masa circuitului
5V – ieșire ce scoate 5V dacă placa este alimentată corespunzător (7-12 V). Se folosește pentru alte piese sau dispozitive
3.3V – ieșire de 3.3V și 50mA
RESET – daca este setat pe LOW controllerul va fi resetat. Folosit ca buton de reset.
Caracteristici tehnice:
Microcontroller: ATmega328
Tensiune de funcționare: 5V
Tensiune de alimentare: 7V – 12V
Tensiune maximă de alimentare: 6 -20V
Pini de I/O: 14
Pini PWM: 6 din cei 14 de I/O
Pini analogici: 6
Memorie flash: 32kB
Comunicație TWI, SPI și UART
Curentul continuu în pinul 3.3V: 50mA
Frecvență de funcționare: 16Mhz
Lungime: 68 mm
Lățime: 53 mm
Figura 16.Arduino UNO
Senzori piezoelectrici
Senzorii sunt dispozitive ce determină variația uniu parametru al sistemului prin emiterea unui semnal corespunzător, corelat cu intensitatea acelui parametru. Senzorii se mai numesc și traductoare.
Un senzor piezoelectric este un dispozitiv care utilizează efectul piezoelectric pentru măsurarea schimbărilor de presiune, accelerație sau forță prin transformarea acestora într-o sarcină electrică. Piezo înseamnă în limba greacă „apăsare” sau „strângere”.
Figura 17.Senzor de vibrații
Efectul piezoelectric a fost descoperit de către Pierre și Jacques Courie șa sfârșitul secolului 19. Ei au observat că anumite minerale precum cuarțul ar putea să transforme energia mecanică într-o ieșire electrică.
Figura 18. Un disc piezoelectric generează o tensiune atunci când este deformat
Senzorii bazați pe efectul piezoelectric pot fi acționați folosind forte transversal, logitudinale sau de forfecare și nu sunt sensibili la câmpurile electrice sau la radiațiile electro-magnetice. Răspunsul lor este liniar pe interval mari de temperaturi, senzorii piezoelectrici fiind ideali pentru medii dificile.
Avantaje:
Răspunsuri cu frecvență mare
Nu are nevoie de sursă externă
Simplu de utilizat, având dimensiuni mici și o gamă largă de măsurători pot fi făcute
Titanatul de bariu și cuarțul pot fi proiectate în orice formă dorită. Au constantă dielectrică mare
Dezavantaje:
Nu sunt potrivite pentru măsurătorile în medii statice
Deoarece aparatul funcționează cu încărcări mici au nevoie de o impedanță mare
Sunt afecatate de umiditate
Proiectarea cablajelor imprimate
Cablajul imprimat (PCB – Printed Circuit Boards) reprezintă un circuit electronic în care componentele electrice și electronica sunt conectate cu ajutorul unor benzi conductoare de metal gravate pe un suport nemetalic.
Acestea se pot împărți după numărul de straturi în:
Cablaje simplu strat – cost scăzut
Cablaje dublu strat – densitate bună a pieselor
Cablaje multistrat – circuite integrate complexe
Tehnologiile de realizare a cablajelor imprimate sunt: substractivă, aditivă și semi-aditivă.
Crearea și proiectarea cablajelor imprimate trebuie sa urmeze anumite reguli de proiectare. Metodele de construcție sunt diverse:
Metoda press and peel
Metoda developării cu ultraviolete
Metoda tăierii cu CNC
Metoda press and peel
Am folosit această metodă pentru a realiza un cablaj imprimat care să interconecteze modulul SIM808 GPS/GSP, modulul Arduino Uno, senzorul piezoelectric și butonul de panică.
Această metodă este una destul de folosită de persoanele ce își realizează circuitele acasă și are costuri mici.
Proiectarea schemei:
Figura 19.Schema Shield-ului realizat (Eagle)
Schema electronică a montajului poate fi proiectată cu anumite programe specializate cum ar fi: OrCad, Eagle. Programul utilizat a fost Eagle, acesta având în bibliotecile sale schema plăcii Arduino UNO. Un al doilea pas va fi realizarea layout-ului. Pentru aceasta am folosit același program Eagle.
Figura 20.Layout
Imprimarea cablajului
Vom tăia materialul de textolit corespunzător dimensiunilor proiectului creat. Placa de textolit va fi apoi curățată cu glaspapir și se spală cu apă și săpun.
Cablajul proiectat se printează în oglindă pe un material lucios folosind o imprimantă cu laser. Partea imprimată se așează pe placa de textolit. Încălzind materialul printat, tușul se va topi și se va lipi de materialul de cupru. Pentru aceasta, temperatura trebuie să fie optimă, dacă este prea mare țușul se topește iar dacă este prea mică, acesta nu se va lipi de textolit. Pentru acest pas poate fi folosit un fier de călcat. După ce tușul s-a topit și a aderat la textolit, placa trebuie pusă sub un jet de apă rece. Folia vafi curățată și traseele vor rămâne imprimate pe cupru.
Figura 21.Trasee transferate termic
Corodarea plăcuței
Pentru acest pas se toarnă clorură ferică într-un vas și apoi se introduce placa. Corodarea va fi mai rapidă dacă soluția de clorură ferică este încălzită inainte. Cuprul de pe placă va fi corodat iar zonele acoperite vor rămâne intacte. Durata procesului poate să difere. Când procesul este gata, plăcuța se spală cu apă și săpun iar tonerul poate fi îndepărtat folosind acetonă. În unele situații pot interveni erori, existând riscul ca unele trasee să fie șterse sau întrerupte.
Figura 22.Exemplu de cablaj imprimat finalizat
Finalzarea plăcuței
În această etapă traseele sunt verificate cu aparatul de măsură. Placa poate fi găurită cu o mini-bormașină acolo unde este nevoie. Trasele pot fi acoperite cu un strat subțitre de fludor dacă este nevoie.
Bill of Materials
Metoda developării cu ultraviolete
Această metodă este complexă și folosește aparate specializate. Placa de textolit este acoperită cu un strat de fotorezist, acesta este sensibil la lumină și este culoare verde. Etapele de proiectare sunt identice metodei anterioare – printarea schemei trebuie făcută pe un material transparent.
Schema printată se așează peste placa și aceasta se pune într-o cutie ce emană lumină în domeniul UV. Timpul de expunere depinde de puterea emisie de lumină. După această operație ce durează câteva minute, placa se introduce întro soluție ce conține apă și sodă caustică. Aceasta este developarea, materialul expus la lumină este îndepărtat și rămân doar zonele acoperite.
Celelalte etape sunt similare metodei press and peel – placa este introdusă într-o soluție de clorură ferică apoi este curățată și verificată.
Metoda tăierii cu CNC
Această metodă numită și frezare mecanică presupune îndepărtarea pe cablaj a zonelor metalice nefolositoare folosind mașini cu comandă numerică (CNC) prin frezare. Este o metodă rapidp și precisă dar costisitoare.
Realizarea unui sistem de avertizare a evenimentelor rutiere folosind rețeaua de tip GSM
Prezentarea sistemului
În acest capitol voi descrie realizarea practică a lucrării de dizertație. Pentru aceasta am folosit următoarele componente: modulul Arduino Uno ce conține microcontrollerul Atmega328, modulul GSM/GPS SIM 808 ce poate trimite mesaje SMS și poate afla coordonatele GPS, un senzor piezoelectric și un buton de panică. Sistemul creat poate avea mai multe întrebuințări:
Alertarea serviciilor de salvare – acesta ar fi principalul rol al sitemului. În cazul unui accident grav, șoferul sau un martor va folosi butonul de panică pentru a alerta salvarea. În același timp senzorul sau senzorii instalați pe mașină se vor activa în cazul unu impact și un SMS va fi trimis către serviciile de urgență. Acesta va conține locația accidentului și alte informații.
Alertarea serviciului de poliție în cazul unui accident ușor. Șoferul sau șoferii mașinilor implicate într-un accident rutier pot folosi acest sistem pentru informarea unui agent de poliție pentru constatare.
Servicii auto – în cazul unei defecțiunii ce a avut loc în trafic, șoferii pot cere asistență tehnică unui service auto. Sistemul va fi mai simplu de folosit decât utilizarea unui telefon pentru a a suna către un service auto.
Informare – în cazul firmelor de transport, șoferii pot informa un destinatar sau firma la care lucrează că au ajuns într-un anumit loc.
Figura 23. Principalele utilizări ale sistemului
În lucrarea de față sistemul va fi folosit pentru a trimite coordonatele GPS către un număr prestabilit atunci când senzorul va fi activat sau în situația în care este apăsat butonul de panică. Pentru a simula un accident real puteau fi folosiți diferiți senzori: de accelerație, de presiune, piezoelectrici sau de impact. Am ales pentru acest proiect să folosesc un senzor piezoelectric, acesta fiind ușor de achizionat. Acesta este legat la pinul analogic A0 al plăcii Arduino. În funcție de intensitatea loviturii tensiunea analogică generată poate fi mai mare sau mai mică. Butonul de panică este legat la pinul analogic A5 al plăcii Arduino. Atât butonul de panică cât și senzorul piezoelectric sunt montați pe shield-ul realizat.
Sistemul va fi compus din 3 module:
Arduino UNO
Modulul GSM/GPS SIM80
Shield ce conține celelalte elemente
Figura 24.Shieldul realizat
Shieldul este realizat astfel încât să se poată prinde deasupra plăcii Arduino. Aceasta conține: un buton ON/OFF, senzorul piezoelectric, un LED, butonul de panică, conectorii pentru alimentare, conectorii ce fac legătura cu modulul SIM (4 pini TX, RX, VCC, GND).
Figura 25. Proiect finalizat
Avantaje
Sistemul realizat poate fi folosit în diferite situații, gradul său de complexitate putând fi mărit prin adaugarea altor senzori. Dispunând de o conexiune GPS și una GSM acesta poate fi folosit și ca dispozitiv de urmărire. În același timp adăugând diverse componente am putea verifica diverși parametrii de la distanță prin SMS/Internet (cantitatea de combustibil, presiunea pneurilor, viteza medie). Aceste informații pot fi extrem de utile pentru firmele de transport ce vor putea să monitorizeze activitatea vehiculelor.
Un alt avantaj al sitemului este costul scăzut al echipamentului. După cum am prezentat cu câteva pagini în urmă, un astfel de sistem se dorește a fi implementat la scară largă în Europa în următorii ani- eCall.
Dezavantaje – sistemul va depinde de locație și este posibil ca în anumite zone sa nu funcționeze din cauza lipsei semnalului. Dacă semnalul GSM va lipsi atunci nu va fi trimis SMS-ul către serviciile de urgență. Daca va lipsi semnalul GPS, SMS-ul nu va conține coordonatele GPS.
Sistemul va fi alimentat la 6 V folosind 4 baterii de 1.5 V în serie.
Pentru a folosi rețeaua GSM și GPS am utilizat comenzi de tip AT. Cele mai importante comenzi AT folosite sunt:
AT+CGPSSTATUS? – Comandă folosită pentru a verifica statusul GPS. Comanda returnează unul din următoarele mesaje: “Location Unknown”=GPS-un nu funcționează, “Location Not Fix”=GPS-ul funcționeacă dar poziția nu a fost fixată, “Location 2D Fix”, “Location 3D Fix”.
AT+CGPSINF=<mode> – Comanda folosită pentru a afla coordonatele GPS. Mode va fi setat ca 0, iar răspunsul comenzii este un string ce conține diferite informații: <modul folosit>, <logitudine>, <latitudine>, <altitudine>, <UTC time>, <TTFF>, <număr sateliți vizibili>, <viteza>, <cursul>
AT+CMGS=<număr><CR><mesaj><CTRL-Z> – sunt setate numărul de telefon și mesajul.
Realizând sistemul într-un spațiu închis am observat de multe ori o lipsă a semnalului GPS, chiar dacă antena GPS era așezată langă geam (Figura 19). Pentru a rezolva această problemă ce poate să apară și în cazul în care modulul se află într-un vehicul am căutat o comandă AT ce poate returna poziția folosind sistemul GSM. Poziția returnată nu va fi la fel de exactă, de fapt vom afla poziția atenei GSM (stației de bază)
Figura 26.Locația nu este fixată – nu avem semnal GPS
AT+CIPGSMLOC=<type><cid>. Atunci când câmpului type are valoarea 1 comanda va returna <locationcode>- reprezintă rezultatul comenzii(0 – succes, 404 – eroare ) <longitudine> <latitudine> <data> <ora>. Daca valoarea type este 2 vom afla doar data și ora. Cel de-al doilea câmp al comenzii – cid se referă la parametrii de internet. Comanda va funcționa doar după ce ne conectăm la punctul de acces:
AT+SAPBR=3,1,"Contype","GPRS" – stabilește tipul de conexiune- poate fi GPRS sau CSD(Circuit-switched data call)
AT+SAPBR=3,1,"APN","broadband" – setează numele access point-ului; APN-ul pentru rețeaua Telekom este “broadband”.
AT+SAPBR=1,1 – deschide conexiunea
AT+SAPBR=2,1 – returnează IP-ul
Formatul mesajului va fi următorul:
[Senzor/Buton panica]. Accident([GSM/GPS]) longitudine:<> si latitudine:<>. Numar înmatriculare: <valoare prestabilită>. Sofer: <valoare prestabilită>.
Primul cuvânt din mesaj reprezintă cauza ce a activat sistemul – a avut loc un accident și senzorul s-a declanșat sau șoferul a apăsat butonul de panică din diferite motive (a fost martor la un accident sau chiar chiar el a luat parte la acesta).
Figura 27. Exemplu de SMS trimis atunci când senzorul s-a activat
Un sistem de coordonate geografice este un sistem de coordonate ce permite oricărei locații de pe Pământ să fie specificată pintr-un set de numere, litere sau simboluri. Cel mai cunoscut sistem este acela ce folosește 2 coordonate longitudinea și latitudinea. Longitudinea reprezintă unghiul spre vest sau spre est al unui punct de pe Pământ iar latitudinea reprezintă unghiul dintre ecuator și orice alt punct. Unitatea de măsură pentru unghiuri deste gradul- ̊, acesta fiind împărțit în minute și secunde.
Există mai multe formate pentru scrierea gradelor, toate având ordinea latitudine-longitudine:
GM – grade:minute (75:20.0 – 110:11.0)
GMS – grade:minute:secunde (75:20:00 – 110:11:00)
GZ – grade zecimale (75.2000 – 110.5000) – au de obicei 4 zecimale
Comanda AT ce ne ajută să găsim coordonatele geografice este AT+CGPSINF. Această comandă ne returnează coordonatele NMEA ale punctului în care ne aflăm. Coordonatele NMEA au următorul format (asemănător GM): (d)ddmm.mmmm, unde d = grad (degrees) iar m = minut.
Pentru a face conversia de la acesta la formatul GZ folosim următoarea formulă:
dd + mm.mmm/60 pentru latitudine
ddd + mm.mmmm/60 pentru longitudine
Întrucât coordonatele NMEA nu sunt interpretate de Google Maps voi folosi formulele de mai sus pentru a le formata.
4426.070700 -> 44.43451166666667
2601.980100 -> 26.03300166666667
Va exista o diferență între valorile returnate de către cele două comenzi AT+CGPSINF și AT+ CIPGSMLOC, cea de-a doua comandă nefiind la fel de exactă. Aceasta va returna coordonatele releului GSM la care suntem conectați.
Am folosit Google Maps pentru a vedea aceasta diferență:
Figura 28.Locația identificata folosind antena GPS
Figura 29.Poziția identifcată când folosim sistemul GSM
Distanța dintre cele 2 puncte este de 210 m. Bineînțeles în practică nu ar trebui să fie nevoie să calculăm coordonatele folosind antena GSM, sistemul fiind instalat pe autovehicule ce vor circula în spațiu neacoperit, pe drumuri astfel că sistemul GPS ar trebui să funcționeze (cu unele excepții).
Codul va introduce o eroare atunci când are loc transformarea coordonatelor din format NMEA în format grad zecimal introduce o eroare. Pe lânga această eroare mai există și o eroare mai mică dată de antena GPS- nu sunt returnate întotdeauna aceleași coordonate. Eroarea din cod intervine din cauza unei aproximări(rotunjiri) făcute la valoarea longitudinii/latitudinii atunci când aceasta este transformată din vector de caractere (char[]) în număr real (double).
Eroarea medie este de 66 metri iar eroarea maximă găsită în cele peste 20 de măsurători a fost de 85 de metri.
Valorile de referință au fost coordonatele exacte ale locației de unde s-au făcut măsurătorile:
latitudine 44.434739, longitudine 26.033318.
Programarea sistemului
Programare sistemului s-a realizat folosind mediul de dezvoltare Arduino IDE. Programul începe cu importarea librariilor folosite: pe lângă librariile generale am folosit librăria pentru modului GPS/GSM.
În prima funcție a programului – void setup() am setat pinii folosiți pentru LED -pinMode(13, OUTPUT) și pentru buton – pinMode(19, INPUT), după care am inițializat GSM-ul respectiv GPS-ul.
Tot aici un SMS va fi trimis către un număr stabilit pentru a ne anunța că aplicația a pornit.
Void loop() este o buclă infinită în care sunt citiți pinii analogici A0 (senzor) și A5(buton). În cazul în care aceștia devin activi – A0 va înregistra o valoare mai mare decât 400, adica seonzrul va fi apăsat/zdruncinat sau A5 va deveni Low – adica butonul a fost apăsat, un mesaj SMS va fi trimis către un număr dat. SMS-ul va fi trimis după cum urmează: în oricare dintre cele 2 situații de mai sus se va încerca aflarea coordonatelor folosind sistemul GPS. În cazul în care nu este semnal, adică locația nu este fixă atunci se vor lua coordonatele folosind rețeaua GSM. Mesajul va conține pe lângă latitudine și logitudine și informații despre autoturism: numele celui care deține mașina și marca acesteia, precum și incidentul ce a declanșat sitemul(senzorul sau butonul de panică).
Pe lângă acestea mai există 2 funcții adiționale ce transformă coordonatele primite de la GPS din forma NMEA în formatul mai general – grade zecimale.
Figura 30.Organigrama programului
Concluzii
În viitor se va pune tot mai mult accentul pe siguranță, indiferent de locul în care ne aflăm. Cum foarte multe accidente și pierderi de vieți omenești au loc în trafic se vor dezvolta noi soluții prin care aceste aspecte să fie diminuate.
În această lucrare am implementat un sistem ce poate fi de folos șoferilor în sitația unui accident, sistem care va avertiza serviciile de urgență. Acestea vor putea lua o decizie rapidă pe baza mesajului SMS primit și se vor pune în mișcare în cel mai scurt timp.
Am prezentat în primele capitole tehnologiile folosite: GSM – sistemul global pentru comunicații mobile și GPS- sistemul de poziționare globală. Am detaliat modul de funcționare al acestor tehnologii și cum pot fi ele utilizate.
În următorul capitol am vorbit despre sisteme de localizare și urmărire a autovehiculelor și despre sisteme de avertizare a evenimentelor rutiere existente.
Realizând sistemul am putut observa micile erori ce pot apărea în cazul determinării latitudinii și longitudinii. Întrucât există posibilitatea ca semnalul GPS să nu existe sau să fie precar am implementat o altă funcție ce va lua coordonatele de antena GSM la care suntem conectați. Am realizat un cablaj imprimat prin metoda “Press and peel” ce conține un sezonr și butonul de panică și interconectează modulul arduno cu modulul SIM 808 GSM/GPM. Partea software a fost scrisă cu ajutorul mediului de programare Arduino IDE și sunt folosite mai multe librării.
Lucrarea poate fi îmbunătățită adăugând mai mulți senzori ce pot afla informații utile pentru serviciile de urgență. O altă îmbunătățire poate fi corectarea erorilor atunci când sunt prelucrate coordonatele GPS. Având în structura sa un modul GSM/GPS, aplicația poate fi folosită și pentru monitorizare. Putem folosi modulul GSM pentru a avea acces la internet și astfel putem folosi operații precum GET/SET/PUT pentru a încarca informații pe un anume server.
ANEXE
Codul Arduino folosit:
#include "SIM900.h"
#include <SoftwareSerial.h>
#include "gps.h"
#include "sms.h"
#include "string.h"
GPSGSM gps;
SMSGSM sms;
char longitudine[15];
char latitudine[15];
char mesaj[150];
char stat;
int i=0;
int j=0;
boolean startedGSM=false;
boolean startedGPS=false;
//char n[20];
int val=0;
int buton = 0;
void setup()
{
//Serial connection.
Serial.begin(9600);
pinMode(13, OUTPUT);
pinMode(19, INPUT);
Serial.println("GSM Shield testing.");
//Start configuration of shield with baudrate.
if (gsm.begin(2400)){
Serial.println("\nstatus=READY");
startedGSM=true;
}
else Serial.println("\nstatus=IDLE");
if(startedGSM){
//Enable this two lines if you want to send an SMS.
if (sms.SendSMS("0767408251", "Aplicatia a pornit"))
Serial.println("\nSMS sent OK");
}
//Serial connection.
Serial.begin(9600);
Serial.println("GSM Shield testing.");
//Start configuration of shield with baudrate.
//For http uses is reccomanded to use 4800 or slower.
if (gsm.begin(2400)){
Serial.println("\nstatus=READY");
gsm.forceON(); //To ensure that SIM908 is not only in charge mode
startedGPS=true;
}
else Serial.println("\nstatus=IDLE");
if(startedGPS){
//GPS attach
if (gps.attachGPS())
Serial.println("status=GPSREADY");
else Serial.println("status=ERROR");
delay(20000); //Time for fixing
stat=gps.getStat();
if(stat==1)
Serial.println("NOT FIXED");
else if(stat==0)
Serial.println("GPS OFF");
else if(stat==2)
Serial.println("2D FIXED");
else if(stat==3)
Serial.println("3D FIXED");
delay(5000);
Serial.println("Led stins");
digitalWrite(13, HIGH);
delay(500);
digitalWrite(13, LOW);
delay(500);
digitalWrite(13, HIGH);
delay(500);
digitalWrite(13, LOW);
}
}
void loop()
{
val = analogRead(A0);
val = maxim(0, 1000);
//Serial.print("ANALOGIC: ");
//Serial.println(val, DEC);
buton = digitalRead(19);
if(startedGSM)
{
if(val > 400)
{
digitalWrite(13, HIGH);
Serial.print("Senzorul a fost activat");
stat=gps.getStat();
delay(5000);
if(stat == -1)
{
Serial.print("Coordonate primite prin GPS");
gps.getPar1(longitudine,latitudine);
double lat;
double longit;
char x[15];
strcpy(x,longitudine);
lat = convertLatitudine(x);
strcpy(x,longitudine);
longit = convertLongitudine(x);
Serial.print("LONGITUDINE: ");
Serial.println(longitudine);
Serial.print("Latitudine: ");
Serial.println(latitudine);
strcpy(mesaj,"Senzor. Accident(GPS) longitudine : ");
strcat(mesaj,longitudine);
strcat(mesaj," si latitudine: ");
strcat(mesaj,latitudine);
strcat(mesaj,". Numar inmatriculare: IL 11 ABC. Sofer: Popescu Ion");
if (sms.SendSMS("0767408251", mesaj)) //daca se trimite smsul printez in consola
{
//Serial.println("\n Senzor activat");
Serial.println("Au fost trimise coordonatele si alte date aditionale folosind GPS") ;
}
digitalWrite(13, LOW);
}
else
{
Serial.print("Coordonate primite de la antena GSM");
j = gsm.getloca(longitudine, latitudine);
//Serial.println(j);
delay(200);
Serial.print("LONGITUDINE: ");
Serial.println(longitudine);
Serial.print("Latitudine: ");
Serial.println(latitudine);
strcpy(mesaj,"Senzor. Accident(GSM) longitudine : ");
strcat(mesaj,longitudine);
strcat(mesaj," si latitudine: ");
strcat(mesaj,latitudine);
strcat(mesaj,". Numar inmatriculare: IL 11 ABC. Sofer: Popescu Ion");
if (sms.SendSMS("0767408251", mesaj)) //daca se trimite smsul printez in consola
{
//Serial.println("\n Senzor activat");
Serial.println("Au fost trimise coordonatele si alte date aditionale folosind GSM") ;
}
digitalWrite(13, LOW);
}
}else if(buton == LOW)
{
Serial.println("Butonul de panica a fost apasat ");
digitalWrite(13, HIGH);
stat=gps.getStat();
delay(5000);
if(stat == -1)
{
Serial.print("Coordonate primite prin GPS");
gps.getPar1(longitudine,latitudine);
double lat;
double longit;
char x[15];
strcpy(x,longitudine);
lat = convertLatitudine(x);
strcpy(x,longitudine);
longit = convertLongitudine(x);
Serial.print("LONGITUDINE: ");
Serial.println(longitudine);
Serial.print("Latitudine: ");
Serial.println(latitudine);
strcpy(mesaj,"Buton panica. Accident(GPS) longitudine : ");
strcat(mesaj,longitudine);
strcat(mesaj," si latitudine: ");
strcat(mesaj,latitudine);
strcat(mesaj,". Numar inmatriculare: IL 11 ABC. Sofer: Popescu Ion");
if (sms.SendSMS("0767408251", mesaj)) //daca se trimite smsul printez in consola
{
//Serial.println("\n Buton apasat");
Serial.println("Au fost trimise coordonatele si alte date aditionale folosind GPS") ;
digitalWrite(13, LOW);
}
}
else
{
Serial.print("Coordonate primite de la antena GSM");
j = gsm.getloca(longitudine, latitudine);
//Serial.println(j);
delay(200);
Serial.print("LONGITUDINE: ");
Serial.println(longitudine);
Serial.print("Latitudine: ");
Serial.println(latitudine);
strcpy(mesaj,"Buton panica. Accident(GSM) longitudine : ");
strcat(mesaj,longitudine);
strcat(mesaj," si latitudine: ");
strcat(mesaj,latitudine);
strcat(mesaj,". Numar inmatriculare: IL 11 ABC. Sofer: Popescu Ion");
if (sms.SendSMS("0767408251", mesaj))//daca se trimite smsul printez in consola
{
//Serial.println("\n Buton apasat");
Serial.println("Au fost trimise coordonatele si alte date aditionale folosind GSM") ;
digitalWrite(13, LOW);
}
}
}
}
delay(50);
}
int maxim(int pin, int count) {
int valoareMaxima = 0;
for (int i = 0; i < count; i++) {
valoareMaxima = max(analogRead(pin), valoareMaxima);
}
return valoareMaxima;
}
double convertLatitudine(char* latString) {
double latitude = atof(latString); // convert to a double (precise)
int deg = (int) latitude / 100; // extract the number of degrees
double min = latitude – (100 * deg); // work out the number of minutes
latitude = deg + (double) min/60.0; // convert to decimal format
return latitude;
}
double convertLongitudine(char* longString) {
double longitude = atof(longString); // convert to a double
int deg = (int) longitude / 100; // extract the number of degrees
double min = longitude – (100 * deg); // work out the number of minutes
longitude = deg + (double) min/60.00; // convert to decimal format
return longitude;
}
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Sistem de avertizare a evenimentelor rutiere folosind rețeaua de tip GSM [304115] (ID: 304115)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
