Stăpânirea GSM bazată pe modulul SIM900D. Gestionarea dispozitivului de la distanță prin SMS

Recent, au apărut multe opțiuni diferite pentru schemele dispozitivelor de alarmă GSM. Dacă în această schemă se folosește un modul GSM, atunci în majoritatea cazurilor este un modul utilizat pe scară largă produs de compania chineză SimCom SIM300. Acest modul s-a dovedit a fi foarte bun, atât în ​​ceea ce privește fiabilitatea, cât și costul redus.
Este prezentată o descriere a unui dispozitiv de semnalizare GSM bazat pe modulul SIM300, dezvoltat de autor. Există, de asemenea, desene cu circuite imprimate și o versiune completă a firmware-ului microcontrolerului. De asemenea, pentru acest sistem de alarma au fost dezvoltate diverse module de expansiune, telecomenzi, unitati de control cu ​​tastatura, surse de alimentare...
Producătorul a anunțat însă că de la sfârșitul anului 2010 se va întrerupe producția de module GSM ale liniei SIM3xx. În schimb, se recomandă utilizarea unui nou modul produs de același producător - SIM900. Mai mult, așa cum am spus, SIM900 va fi mult mai funcțional decât „strămoșul” său și, ceea ce pentru noi este unul dintre cele mai importante criterii, mai ieftin.

Ceva despre SIM900...

Deci, ce este modulul SIM900? Să luăm fișa de date și să încercăm să o citim.
Modulul SIM900 este un dispozitiv quad-band GSM/GPRS care funcționează la frecvențele 850/900/950/1900 MHz, conceput pentru transmiterea de mesaje vocale, date, SMS etc.
Principalele caracteristici tehnice ale modulului:
Gama de frecventa:
GSM850, EGSM900, DCS1800, PCS1900
Cu compatibil cu GSM faza 2/2+.
Puterea emisă:
clasa 4 (2W/900 MHz)
clasa 1 (1W/1800 MHz)

Control: Comenzi AT (GSM 07.10)
Tensiune de alimentare modul: 3,4 – 4,5 V
Curent de consum:
în modul de repaus - 1,5 mA
în modul de transfer - până la 500 mA
maxim - 1,8 A
Temperatura de lucru: -30 … +80 C
dimensiuni: 24x24x3 mm
Greutate: 3,4 g
După cum puteți vedea, acest modul diferă ca dimensiune față de predecesorul său, modulul SIM3xx, de aproximativ o dată și jumătate. Dar în ceea ce privește parametrii și funcționalitatea este și un ordin de mărime superior.


Figura 1 – Aspectul modulului GSM SIM900



Figura 2 – Atribuirea pinilor modulului SIM900

Aspectul modulului este prezentat în Fig. 1, iar alocarea știfturilor este în Fig. 2. Din figuri puteți determina că, pe lângă setul de interfață standard inerent modelelor anterioare (porturi UART pentru schimbul de date, ieșire stare modul STATUS, pini de interfață cartelei SIM etc.), au fost adăugate câteva noi (conexiune la tastatură pinii KBR/KBC, PWM de ieșire PWM, pin de resetare a modulului NRESET).
Datorită faptului că acest modul la momentul scrierii acestui articol nu a fost încă pe deplin „testat” în vastitatea Ucrainei, software-ul este în mod constant îmbunătățit, sunt posibile modificări în descriere care nu înrăutățesc munca în ansamblu .

Parametrii de bază ale dispozitivului

Acest dispozitiv este o continuare a liniei de dispozitive de alarmă GSM dezvoltate de autor. Prin urmare, parametrii sunt în mare parte identici.
Monitorizarea stării a patru bucle de alarmă (AL) în toate modurile de funcționare, cu excepția modului „Programare”, și afișarea stării buclelor cu ajutorul indicatoarelor LED situate pe panoul frontal al dispozitivului (indicatorul luminos indică „bucla este în stare normală”, în caz contrar este prezentă rupere sau scurtcircuit al buclei de alarmă).
Buclele de alarmă pot include:
> dispozitive de semnalizare prin contact magnetic (întrerupătoare lamelă SMK, SOMK);
> detectoare de tip „Folie” și „Fereastră”;
> detectoare de incendiu (IP-104, IP-105);
> senzori de mișcare, volum, ritm;
> alți senzori care au o ieșire închisă în stare normală și contacte deschise în caz de încălcare.
Dispozitivul acceptă următoarele tipuri de zone de alarmă (bucle):
„normal” (semnalul „Alarmă” este generat imediat după primirea unui semnal de încălcare a integrității buclei de alarmă; bucla nu este restabilită după activare);
„cu întârziere” (utilizatorul are timp să iasă și să intre, astfel încât să aibă timp să pornească dispozitivul și să părăsească obiectul sau să deschidă obiectul și să oprească dispozitivul);
„coridor” (când o zonă este declanșată și apoi revine la normal, acest tip de zonă este armat din nou);
„24 de ore, foc” (bucla de alarmă este permanent protejată, dezarmarea și dezarmarea se efectuează folosind o comandă specială SMS);
„Butonul de panică 24 de ore” (bucla de alarmă este armată în mod constant, dezarmarea și armarea se efectuează folosind o comandă specială SMS, atunci când bucla este declanșată, se efectuează doar apelarea, este trimis un mesaj SMS despre sabotaj, sirena nu porniți);
„dezactivat” (sistemul nu răspunde la nicio modificare la intrarea AL).
Activarea modului „Securitate” folosind un buton „ascuns” sau „secret”, un comutator „secret” (în locul căruia poate fi folosită o tastatură cu contacte normal deschise, cum ar fi „Satel”), o telecomandă, o cheie TouchMemory (Dallas) sau o tastatură suplimentară, în funcție de firmware-ul controlerului. Firmware-ul descris aici folosește doar comutatorul „secret”, alte versiuni vor fi discutate mai târziu.
Sunt acceptate două moduri de operare ale dispozitivului:
Alarmă GSM (terminalul GSM este conectat și se fac schimb de date cu acesta);
sistem de alarmă autonom (terminalul GSM nu participă la funcționarea sistemului, dispozitivul funcționează ca un sistem de alarmă autonom).
Dezarmarea și armarea folosind un apel de la un anumit telefon (poate fi dezactivat) cu transmiterea SMS-ului corespunzător despre starea sistemului.
Transmiterea unui mesaj SMS de confirmare atunci când un obiect este luat sub protecție (poate fi dezactivat).
Generarea unui semnal de „Alarmă” (pornirea sirenei, transmiterea datelor de „alarmă” către un telefon mobil) în cazul unei încălcări a integrității („rupere” sau „scurtcircuit”) a cel puțin uneia dintre buclele de alarmă.
Trimiterea mesajelor SMS și apelarea automată la trei numere de telefon mobil sau fix (dacă funcțiile SMS sunt acceptate de operatorul dvs. de telecomunicații).
Trecerea dispozitivului în modul „Dezarmat” folosind doar telecomanda, tastatura, prin primirea unui mesaj SMS de la numărul de telefon mobil 1 și (sau) apelarea de la acest număr (poate fi dezactivată), precum și un comutator „secret”, în funcție de din firmware-ul controlerului.
Posibilitatea de a controla de la distanță dispozitivul prin trimiterea de mesaje SMS cu un anumit conținut (poate fi dezactivată).
Programarea funcțiilor și parametrilor de bază ai dispozitivului (numere de telefon, timp de întârziere, timp de funcționare a sirenei etc.) cu ajutorul programului de calculator Lite Programmer în modul „Programare” al dispozitivului. În acest caz, ieșirea portului COM al computerului (pinii RxD și TxD) este conectată la conectorul corespunzător al dispozitivului de alarmă folosind un cablu special.
Dispozitivul trimite utilizatorului un semnal specific despre lipsa fondurilor din contul de card mobil.
Dispozitivul trimite utilizatorului un semnal specific despre absența unui semnal de comunicare cu stația mobilă.
Transmiterea unui semnal SMS atunci când tensiunea de alimentare (220V) este pierdută în modul „Securitate” (poate fi dezactivată).
Utilizarea unui modem GSM încorporat vă permite să faceți fără blocuri și conexiuni inutile, precum și să creșteți compatibilitatea și stabilitatea conexiunii canalului GSM.
Reacția programată a puterii de ieșire: porniți ieșirea numai în modul „Alarmă” pentru un timp setat de utilizator (de la 60 la 240 de secunde).
Utilizarea protocolului original de transmisie a datelor IR de către telecomandă pentru a controla dispozitivul și telecomanda RF, precum și codificarea originală a datelor primite de la tastatură.
Este posibil ca dispozitivul să monitorizeze tensiunea de alimentare a rețelei și tensiunea bateriei, iar când tensiunea rețelei dispare sau apare, sunt trimise mesajele SMS corespunzătoare. De asemenea, atunci când tensiunea de alimentare a sursei de rezervă (bateria) scade sub un nivel specificat (8-9V), este trimis un mesaj, după care dispozitivul intră în modul „sleep”, care poate fi ieșit numai atunci când sursa de alimentare ( rețea sau baterie) este restabilit.
Trimiterea unui mesaj SMS către numărul de telefon mobil 1 când primiți apeluri care indică numărul primit (poate fi dezactivat).
Dispozitivul vă permite să comutați alarmele externe sonore sau luminoase (clopot, sirenă, lampă) cu o tensiune de funcționare de 12V și un consum de curent de până la 1,25A.
Firmware-ul microcontrolerului descris în acest articol este conceput pentru a opera dispozitivul împreună cu un comutator „secret”, precum și pentru a porni și opri dispozitivul folosind apelarea și trimiterea de mesaje SMS. Alte versiuni ale dispozitivului vor fi descrise în materialele următoare, dacă există, desigur, interesul cititorului.

Specificații

Numărul de bucle de alarmă - 4.
Rezistența elementului de la distanță (terminal), kOhm – 2,7.
Rezistența maximă a buclei de securitate fără a ține cont de rezistența elementului de la distanță, Ohm – 750.
Consum de curent de la o sursă de curent continuu (fără senzori de alarmă activi conectați), la o tensiune de 12,6 V, în următoarele moduri de funcționare, nu mai mult:
- „la serviciu”, fără a folosi modul GSM – 0,16 A;
- „la serviciu”, la utilizarea unui modul GSM – 0,23 A;
- „securitate”, la utilizarea unui modul GSM – 0,28 A;
- „alarma”, la utilizarea modulului GSM și sirena este oprită – 0,34 A;
- consum maxim (impuls) – 1,8 A.
Standarde GSM acceptate: 850/900/1800/1900 MHz.
Limite de stabilire a timpului:
- Timp de întârziere la intrare – 0…150 secunde;
- Timp de întârziere de ieșire – 0…250 secunde;
- Timp de funcționare a sirenei – 30…250 secunde.

Descrierea schemei

Schema circuitului electric al unității principale este prezentată în Fig. 3. Precizez – „unitate principală”, deoarece pentru aceste sisteme de alarmă a fost dezvoltat suplimentar un set mare de periferice: aici sunt diverse panouri de control, unități de expansiune etc.
În comparație cu versiunea anterioară, circuitul a suferit modificări calitative: pe lângă utilizarea unui alt modul GSM, așa cum sa menționat mai sus, releul a fost eliminat (în schimb, se folosește un IC - un set de comutatoare puternice cu tranzistori), iar Unitatea de conversie RS232-UART a fost, de asemenea, eliminată (după cum a arătat practica, programarea nu se face foarte des, iar în acest scop folosesc în principal un laptop, care de multe ori pur și simplu nu are un port RS232).



Figura 3 – Schema circuitului electric

Principalul element de control al dispozitivului este microcontrolerul ATmega168 produs de Atmel. Microcontrolerul monitorizează stările buclelor de alarmă conectate la intrările ADC și, în funcție de modul de funcționare, efectuează acțiuni suplimentare, cum ar fi formarea și trimiterea de mesaje SMS, pornirea sirenei etc.
Intrările ADC PC0-PC3 sunt proiectate pentru a monitoriza starea buclelor de alarmă, MK măsoară tensiunea la acești pini și, în funcție de tensiune, generează un semnal de „ruptură”, „normal” sau „scurt”. PC5, PC6 sunt alimentate cu tensiuni de la ieșirea sursei de alimentare pentru a-și controla valorile. Apropo, dacă acești pini nu sunt conectați, dispozitivul nu va porni!
Circuitul folosește LED-uri de control: LED1 – controlul funcționării modulului GSM (dacă există o conexiune și modulul funcționează, clipește cu o frecvență de 1 clipire timp de 2-3 secunde, în alte cazuri apar probleme de comunicare sau cu modulul însuși), LED2 – controlul funcționării sistemului (în modurile de funcționare clipește cu o frecvență de 3-5 ori pe secundă, în modul programare se aprinde cu lumină constantă). În plus, LED-urile pentru monitorizarea stării buclelor de alarmă LED4...LED7 sunt conectate la pinii IND1...IND4. KEY_S – de fapt, butonul sau comutatorul „secret”. SPEAKER – conector pentru conectarea unui difuzor, poate fi de orice rezistenta, putere de minim 0,25 W.

Despre sursa de alimentare a dispozitivului. Acest dispozitiv necesită o tensiune de alimentare în intervalul 10 - 18 V, cu un curent de până la 2 A. Este recomandabil să construiți sursa de alimentare în așa fel încât tensiunea de alimentare să nu dispară chiar și atunci când rețeaua este pierdută, adică furnizați o baterie reîncărcabilă. Se recomandă utilizarea sursei de alimentare utilizate în versiunile anterioare ale dispozitivului descris. De asemenea, descrie modul de conectare a sursei de alimentare la dispozitivul de alarmă.

Programarea funcțiilor de bază ale dispozitivului

Programarea principalelor funcții ale dispozitivului se realizează folosind un program special - Lite Programmer. Cea mai recentă versiune a programului poate fi oricând descărcată de pe site-ul web al autorului. În principiu, în loc de un computer pentru a programa dispozitivul, este posibil să folosiți un telefon mobil conectat la dispozitiv printr-un port de date sau un port infraroșu, dar pentru aceasta trebuie să scrieți cel puțin un midlet java și din lipsă. de timp liber, autorul pur și simplu nu are timp să facă acest lucru, iar programarea folosind un laptop este bine deocamdată. Dacă cineva este interesat să rezolve această problemă, scrieți autorului pe e-mail, toată documentația va fi furnizată.
Dispozitivul este conectat la un port COM liber al computerului printr-un convertor special RS232-UART sau la un port USB printr-un adaptor USB-UART. Doar nu încercați să vă conectați direct, fără un adaptor (există astfel de meșteri acum)! Acest lucru amenință cu moartea microcontrolerului sau a portului computerului!
Cum se trece la modul de programare:
1. Apăsați butonul S1 timp de cel puțin 2 secunde și așteptați până când indicatorul de stare de funcționare a modulului 2HL1 încetează să clipească (de obicei nu mai mult de 10 secunde)
2. Deconectați dispozitivul de la curent.
3. Setați jumperul J1, trecând dispozitivul în modul „Programare”.
4. Conectați cablul pentru a conecta dispozitivul la computer.
5. Stabiliți conexiunea cu dispozitivul și programați-l (descris mai jos).
6. Deconectați dispozitivul.
7. Deconectați cablul de comunicare cu computerul și scoateți jumperul J1.
8. Programarea este finalizată, puteți porni și utiliza dispozitivul.
Forma principală a programului este standard, fără bibelouri sau clopote și fluiere. În partea dreaptă a formularului, este setat numărul portului COM, precum și viteza de transmisie și recepție a datelor (pentru cazul nostru – 115200 baud), pentru a pune dispozitivul în modul de programare, selectați „stabilire conexiune” în „Acțiune”. ” cadru (în colțul din dreapta jos), În acest caz, LED-ul 1LED1 se va aprinde cu lumină constantă. Poti programa!



Figura 4 – Forma principală a programului Lite Programmer

Lucrul cu programul nu prezintă dificultăți deosebite pentru un utilizator care a pornit un computer cel puțin o dată în viață. În plus, totul este descris în detaliu în Instrucțiunile de operare și programare menționate de mai multe ori. Pe scurt: setați parametrii de care aveți nevoie, asigurați-vă că „Modificare” apare cu roșu în a treia coloană, selectați „Programare” în cadrul „Acțiune”, faceți clic pe butonul „Run” și gata. Dacă parametrul este programat, în a cincea coloană va apărea inscripția „Programat”, programul va afișa și un mesaj corespunzător;

Câteva nuanțe de programare.

O atenție deosebită trebuie acordată procesului de programare, deoarece funcționarea dispozitivului în ansamblu depinde de acesta. După cum a arătat practica, principala greșeală este făcută la setarea numărului centrului SMS al unui operator de telefonie mobilă. Dacă nu cunoașteți acest număr sau nu sunteți sigur, atunci este mai bine să nu îl programați deloc. În acest caz, software-ul modulului GSM va determina în mod independent numărul.
De asemenea, aveți grijă la setarea numărului de solicitare a soldului USSD dacă intenționați să-l utilizați. Inițial, dispozitivul a fost dezvoltat pentru utilizatorii ucraineni, astfel încât suma minimă a soldului este de la una până la nouă ruble grivne. Există două opțiuni de instalare disponibile. Primul este să selectați operatorul dorit, iar programul în sine va seta numărul necesar și valoarea soldului minim egală cu două grivne. A doua opțiune este să selectați TUNE USSD din meniul derulant pentru selectarea unui operator de solicitare USSD, apoi completați parametrii necesari în formularul care apare: cantitate minimă (de la una la nouă ruble), separator ruble-kopec (unele operatorii folosesc diferite caractere de separare, de exemplu, punct, virgulă, două puncte).
În prezent, programul acceptă doar alfabetul latin atunci când introduceți texte SMS, deoarece această funcție este acceptată și de programul microcontrolerului. În prezent, se lucrează la includerea alfabetului chirilic.

Ghid de inițiere rapidă.

Înainte de a instala o alarmă în dispozitiv, ar trebui să „pregătiți” cartela SIM într-un fel, și anume: dezactivați parola. Este recomandat să utilizați o cartelă SIM de la același operator de telefonie mobilă ca și telefoanele dial-up. Cel puțin, probabilitatea ca mesajele SMS să fie livrate va crește de multe ori.
După ce este aplicată și pornită alimentarea, dispozitivul va emite un bip lung de la difuzorul intern, apoi se stabilește comunicarea cu modulul, după care se vor auzi trei bipuri scurte. Aparatul este gata de utilizare.
În continuare, vom vorbi despre utilizarea dispozitivului ca dispozitiv de alarmă de securitate pentru clădiri interioare etc. Pentru a utiliza dispozitivul ca alarmă auto sau alte funcții, este necesar mai întâi un firmware diferit pentru microcontroler, iar acest lucru depășește scopul acestui articol. Acesta este subiectul publicațiilor ulterioare.
Pentru a arma dispozitivul, trebuie să închideți comutatorul KEY_S. Apropo, în locul acestui comutator puteți folosi orice tastatură cu contacte normal deschise, de exemplu Satel SW02. După aceasta, dispozitivul va începe să numere timpul de ieșire (ora este setată în timpul programării), timp în care este necesar să părăsești obiectul protejat. Dacă, după expirarea timpului de ieșire, toate buclele sunt în starea asamblată, dispozitivul intră în modul de securitate. Dacă, după expirarea timpului de intrare, cel puțin una dintre bucle este deschisă sau scurtcircuitată, dispozitivul emite un sunet intermitent timp de 100-140 de secunde, un mesaj despre obiectul care nu este armat este trimis la numărul 1 (dacă este programat), după care intră în modul alarmă cu trimiterea tuturor mesajelor și apelarea. De asemenea, puteți arma dispozitivul apelând de la numărul programat mai întâi sau trimițând un mesaj SMS cu textul „START” de la același număr. Trebuie reținut că în această versiune a firmware-ului nu se recomandă utilizarea întrerupătorului „secret” și a funcțiilor GSM împreună la armare pentru a evita influența lor reciprocă. Când sunt utilizate împreună, prioritatea va fi pe partea comutatorului, funcțiile GSM nu vor funcționa!
În modul de securitate, dispozitivul monitorizează constant starea tuturor buclelor de alarmă, precum și starea modulului GSM. În acest caz, dacă bucla este declanșată, mesajele SMS sunt trimise și apelurile sunt efectuate în conformitate cu cardul de programare. Apelarea se efectuează până când abonatul ridică telefonul, dar nu mai mult de opt ori. Tot în modul de securitate se controlează alimentarea rețelei de 220V și bateria de rezervă. În același timp, la fiecare pierdere de 220V și reapariția lui ulterioară, se trimite un mesaj SMS corespunzător (această funcție poate fi dezactivată în timpul programării).
Pentru a dezarma dispozitivul, trebuie să deschideți obiectul și să deschideți contactele comutatorului în timpul ieșirii. Dacă acest lucru nu se face, dispozitivul intră în modul alarmă. Sau dezarmați obiectul înainte de deschidere sunând sau trimițând mesajul SMS „STOP” de la primul număr.
În modul standby, dispozitivul monitorizează și starea buclelor de alarmă, precum și modulul GSM. Dacă comunicarea cu modulul este pierdută sau rețeaua este pierdută, cinci semnale sonore de scurtă durată sună la fiecare 2-4 minute. De asemenea, la fiecare 30-40 de minute este interogata starea contului a numărului de mobil. În acest caz, se aud zece semnale sonore de scurtă durată („trill”) și un mesaj SMS („NO MONEY!!”) este trimis la numărul 1.
Tabelul prezintă mesajele de service pe care dispozitivul le poate trimite atunci când apar anumite evenimente (dacă funcția de trimitere este dezactivată în timpul programării, aceste mesaje nu sunt trimise!):

Text SMS

Descriere

Notă

Stai garda!

Confirmarea dezarmării sistemului

Mod de asteptare

OPRIRE!!!

Defecțiune sau absența tensiunii de rețea de 220 V

Doar în modul de securitate

Aprinde

Apariția tensiunii de rețea de 220 V (după absență)

TOATE PUTERILE OPRITE!!!

Toate tensiunile de alimentare sunt sub normal. După ceva timp, dispozitivul va intra în modul de repaus.

În toate modurile de funcționare

Începe după ce ai dormit

Reluarea funcționării dispozitivului după o pană de curent

FARĂ BANI!!!

Suma minimă de fonduri în cont. Trebuie să vă încărcați contul!

Acest dispozitiv are un mare potențial de îmbunătățire și modernizare poate fi folosit nu doar ca alarmă, ci și ca orice dispozitiv de achiziție și transmitere a datelor prin configurarea programului de microcontroler pentru fiecare caz specific.

Concluzie

Dispozitivul descris a trecut testul inițial în laboratorul autorului și a arătat rezultate bune. Modulul SIM900 a arătat o funcționare stabilă atunci când este controlat de comenzi AT standard, nu au existat plângeri speciale. În curând, vor fi dezvoltate plăci de circuite imprimate pentru acest dispozitiv și va fi pregătită documentația corespunzătoare. O versiune demo a firmware-ului microcontrolerului este atașată acestui articol. O versiune complet funcțională a firmware-ului microcontrolerului dispozitivului este disponibilă gratuit pentru oricine. Pentru a face acest lucru, ar trebui să trimiteți o solicitare corespunzătoare la adresa de e-mail a autorului sau prin ICQ. De asemenea, sunt luate în considerare orice propuneri de organizare a producției dispozitivului de alarmă descris și a dispozitivelor periferice.
În viitor, este planificată să se asigure compatibilitatea dispozitivului cu toate dispozitivele periferice proiectate pentru versiunea anterioară a dispozitivului de alarmă GSM creat de D. Dmitrenko. Iată completări la articol pentru diverse aplicații specifice.

Tot firmware-ul este în prezent complet funcțional, cu excepția firmware-ului care acceptă tastele iButton, există restricții privind numărul maxim de taste utilizate - de la una la trei.

1. Folosind o tastă TouchMemory pentru a controla dispozitivul

În prezent, firmware-ul microcontrolerului a fost dezvoltat pentru a funcționa cu tastele TouchMemory. Pentru a face acest lucru, este necesar să completați dispozitivul cu un dispozitiv simplu format din două rezistențe, o capacitate și o diodă zener. Și, bineînțeles, folosiți firmware-ul pentru acest tip de dispozitiv.
Un exemplu de utilizare a unui astfel de dispozitiv este descris clar în articolul Semnalizare GSM folosind tastele iButton. Acolo, pe schema circuitului electric, este prezentată conexiunea unui dispozitiv suplimentar și sunt date desene ale plăcii de circuit imprimat.
Firmware-ul poate fi descărcat [se caută dispozitivul DDN Research HG45Q]

Vassilis Serasidis

Dispozitivul este proiectat pentru gestionarea de la distanță a energiei diferitelor dispozitive (de exemplu, modemuri ADSL, computere personale, iluminarea camerei, diverse dispozitive de uz casnic) și poate, de asemenea, să monitorizeze starea a opt linii digitale și apoi să informeze utilizatorul despre starea acestor linii. , adică poate fi folosit ca un fel de sistem de securitate. Utilizatorul este controlat și informat prin SMS.

Principalele caracteristici ale dispozitivului:

  • comanda 4 relee (pornit/oprit);
  • capacitatea de a monitoriza starea releului și 8 intrări digitale pentru trimiterea ulterioară a SMS-urilor către utilizator pentru a informa despre starea curentă;
  • circuit simplu, număr mic de componente utilizate;
  • control prin SMS. Comenzile de control sunt protejate prin parolă (pot fi schimbate de utilizator) pentru a preveni fals pozitive.

Schema schematică a dispozitivului este prezentată în Fig. 1.

Baza dispozitivului este un microcontroler ATtiny2313 Corporation și un modul GSM fabricat de companie.

Microcontrolerul IC2 funcționează la o frecvență de 4 MHz, care este stabilită de un cristal de cuarț extern X1.



Fig.2 Aspectul modulului GSM GM-47

Pentru a opera modulul GSM, aveți nevoie de o cartelă SIM, care este conectată direct la modul folosind un suport special. Microcontrolerul și modulul GSM sunt alimentate de regulatorul IC1 LM1117T 3.3 cu o tensiune de ieșire de 3,3 V. În general, microcontrolerul rămâne operațional în intervalul 2,7 V - 5,5 V (la o frecvență de funcționare de până la 10 MHz), prin urmare, pentru a asigura coordonarea nivelurilor logice ale modulului GSM și ale microcontrolerului, îl putem alimenta de la regulatorul IC1.

Comunicarea cu modulul GSM se realizează la o viteză de 9600 bps folosind comenzi AT. Este de remarcat faptul că nivelurile de tensiune pentru această comunicare sunt 3,3 V pe partea microcontrolerului AVR și 2,75 V pe partea modulului GSM. Prin urmare, a fost folosit un tranzistor T5 BC547 pentru a adapta nivelurile.

Modulul este conectat folosind un conector de pe placa de circuit imprimat.



Fig.3 Placă de circuit imprimat cu conector instalat pentru modulul GM-47

Cartela SIM este conectată folosind slotul K15, care are încorporat un comutator de limită SW pentru a detecta prezența unui card în suport.

Releul este controlat folosind comutatoare realizate pe tranzistoare BC547


Fig.4 Aspectul unei plăci de circuit imprimat cu un modul instalat

LED-ul D6 este conceput pentru a indica starea conexiunii la rețea, iar dacă clipește, înseamnă o conexiune reușită la rețeaua celulară GSM suportată de cartela SIM. Dacă LED-ul este aprins constant, înseamnă că modulul nu se poate conecta la rețeaua celulară.

Modulul GSM are intrări/ieșiri digitale și analogice, dar autorul nu le-a folosit în acest proiect pentru a elimina riscul de deteriorare a modulului.

Ce sarcini îndeplinește microcontrolerul AVR?

După ce alimentarea plăcii este alimentată, microcontrolerul așteaptă până când modulul GSM este inițializat, de exemplu. modulul trebuie să citească cartela SIM și să se conecteze la rețeaua GSM pe care o acceptă.

După inițializarea cu succes, microcontrolerul trimite o comandă AT, ceea ce înseamnă selectarea memoriei modulului ca stocare SMS. Trebuie să existe un răspuns de modul la această comandă, altfel comanda este trimisă din nou.

După selectarea memoriei, microcontrolerul trimite următoarea comandă. Această comandă îi spune modulului că mesajele vor fi citite în format text (mai degrabă decât în ​​format PDU, care este, de asemenea, acceptat de modul).

Aceasta este urmată de o comandă care va elimina unele informații din textul mesajului SMS, cum ar fi numărul serverului SMS, data și ora. Acest lucru se face pentru a reduce SMS-urile și a simplifica funcționarea microcontrolerului cu acestea.

Următoarea comandă este concepută pentru a citi SMS-urile stocate la prima adresă din memoria modulului.

Dacă există text SMS, microcontrolerul îl citește și verifică parola corectă. Parola implicită este 1234, care poate fi apoi schimbată de utilizator. După verificarea parolei, se verifică prezența simbolului „*”, ceea ce înseamnă că parola este schimbată în următoarele 4 cifre (litere) după simbolul „*”.

După aceasta, SMS-ul este procesat în continuare pentru a detecta comanda rezervată unde X- înseamnă numărul releului (1-4), Y- comanda pornit/oprit releu, poate lua valori 1 (pornit) sau 0 (oprit). De exemplu, comanda Relay2=1 înseamnă pornirea releului nr. 2.

După aceasta, microcontrolerul procesează SMS-ul în continuare pentru prezența unei comenzi stare, iar dacă este disponibil, citește starea a opt linii digitale și starea tuturor releelor ​​și trimite un SMS cu un mesaj text despre starea liniilor controlate la numărul de la care a venit comanda SMS. În același timp, nu uitați că cartela SIM trebuie să aibă fonduri pentru trimiterea SMS-urilor.

După toate aceste operațiuni, microcontrolerul șterge mesajul SMS aflat la prima adresă din memoria modulului și continuă să aștepte primirea următorului mesaj SMS.

Trimiterea comenzilor prin SMS de pe un telefon mobil urmează o anumită sintaxă. Să ne uităm la el folosind comenzile ca exemplu:

  1. Echipă:1234*5678 Releu1=1 Releu2=0 Releu3=1 Releu4=1 Stare
    Aici avem cea mai intensă echipă. Mai întâi trimitem parola (1234) și indicăm că va fi schimbată (*) în 5678. Apoi pornim releele nr. 1, 3, 4 și oprim releul nr. 2. În plus, atunci prin trimiterea unei comenzi solicităm informații despre starea celor 8 senzori și a tuturor releelor.
  2. Echipă:1234 Releu1=1 Releu2=0 Releu3=1 Releu4=1 Stare
    În această comandă SMS pornim releele nr. 1, 3, 4, oprim releul nr. 2 și solicităm informații despre starea senzorilor și releelor.
  3. Echipă: 1234 1=1 2=0 3=1 4=1 Stare
    Această comandă este similară cu comanda considerată 2), aici am omis cuvintele.
  4. Echipă:1234 Stare
    Cu ajutor, solicităm doar informații despre starea senzorilor și releelor.
  5. Echipă:1234 Releul2=0
    În această comandă, după cum puteți vedea, oprim doar releul nr. 2

Schema schematică, desenul plăcii de circuit imprimat, codul sursă (asamblator AVR) - .

Pentru a comenta materialele de pe site și pentru a obține acces deplin la forumul nostru, aveți nevoie Inregistreaza-te .

  • Este posibil să folosiți un telefon mobil în locul modulului GM-47 SM După părerea mea, un telefon mobil este mai ușor de achiziționat și mai ieftin?
  • Astfel de module nu sunt disponibile comercial. Acesta este un dispozitiv interesant. În general, aici sunt publicate o mulțime de lucruri interesante, dacă toate acestea ar fi la dispoziție...
  • Controlul prin SMS este posibil folosind un modem GSM sau un telefon folosit ca modem conectat la un computer. Sunteți interesat de detaliile implementării? Sau această opțiune folosind un computer este prea greoaie pentru tine!? Puteți folosi un micro PC sau un controler compatibil cu un modul GSM această opțiune este mai compactă. Așadar, dispozitivele specializate menționate mai sus, care sunt în esență un modem GSM + computer, pot fi implementate independent de componentele disponibile pe scară largă.
  • Este posibil, cred, să folosiți module compatibile ale căror sisteme de comandă sunt aceleași...
  • În modulele GSM și telefoanele mobile, pentru control și monitorizare sunt utilizate comenzi AT specializate, al căror set este practic același pentru diferiți producători și diferite dispozitive similare și, în funcție de specializarea dispozitivului și de caracteristicile setului de comenzi, sunt incluse comenzi speciale suplimentare. Acest dispozitiv poate fi convertit pentru a se potrivi cu aproape orice modul GSM sau telefon mobil. Facem un conector de control pe placă, care se realizează printr-o interfață UART cu 2 fire, în loc de 20 - 40 de picioare pentru modem și edităm ușor codul sursă ASM, care ne este disponibil (care poate nici măcar să nu fie necesar!) și, bineînțeles, pentru un nou proiect, un nou aspect al plăcii. Și obținem un dispozitiv universal de control și monitorizare.
  • Iată o opțiune pentru implementarea controlului de la distanță pe un modul GSM accesibil SIM300D - http://electromost.com/index/mnogofu...kontrolja/0-35 Când utilizați SMS, există un punct - livrarea SMS-ului de către operator nu este standardizată în timp. Prin urmare, nu este recomandat să gestionați dispozitivele critice în acest mod. În plus, este imperativ să urmăriți confirmarea comenzii executate - altfel SMS-ul va fi „tras” și nu se știe dacă comanda a fost executată sau nu :). Prin urmare, atunci când se utilizează comunicații celulare, încărcările trebuie gestionate în „timp real” cu confirmarea comenzilor executate. De exemplu, utilizați GPRS. Sau cel puțin DTMF - ca în dispozitiv, linkul către care a fost dat mai sus.
  • Domnilor, ziua buna tuturor! A încercat cineva să monteze acest dispozitiv? Încercările mele de a folosi modulul Neoway M590 au eșuat. După citirea SMS-ului primit, microcontrolerul se oprește câteva secunde, apoi îl șterge din memorie și continuă să trimită comenzi AT către modul într-un ciclu. În acest caz, nici starea releului nu se modifică și nici un mesaj nu este trimis prin comanda „Stare”. Are cineva vreo părere despre asta?
  • Firmware-ul dispozitivului nu funcționează. Am asamblat și un astfel de dispozitiv pe o placă cu cablaj original și cu GR-47. Reacția este aceeași cu a ta. Am citit și pe un forum occidental despre o problemă similară cu acest dispozitiv. Pentru a nu se încurca cu listarea pe ASMA, am rescris-o în CodeVision AVR și am introdus optimizarea: nu rulați în mod constant ciclul de sondare, dar la începutul lucrului cu modemul, trimiteți o comandă pentru a emite un mesaj către terminal despre sosirea unui SMS și apoi analizați SMS-ul după ce sosește mesajul de primire.
  • Așa că am străbătut aproape tot Internetul în căutarea adevărului și chiar i-am scris autorului Serasidis Vasilis cerându-i să-l ajute (în engleză, desigur), dar nu am reușit niciodată nimic. Mi se pare că ambuscadă aici constă în diferența dintre numerele noastre de telefon și cele străine. Din lista programului este clar că au acest număr cu o cifră în plus, este necesar să ajustați peste tot parametrul de registru „No_Of_ignore_bytes” (R25). Deși, aș putea greși. Pe unul dintre site-urile de specialitate s-a pus problema asta exact ca si a noastra, si se pare ca acolo s-a rezolvat cu succes, dar cat de exact a fost, din pacate, a tacut. De asemenea, nu este posibil să vă înregistrați pe acest site pentru a comunica cu participanții la subiect - vă dau startul fără explicații, chiar în faza de înregistrare. Iată linkul: http://www.edaboard.com/thread290544.html Dragă max7780, dacă dispozitivul tău funcționează, ai putea partaja programul? V-as fi foarte recunoscator, deoarece cunostintele mele de programare nu imi permit sa scriu de la zero un program atat de complex nici in ASMA, nici in SI, si mi-a luat doua luni sa ma bric cu cel existent.
  • Am asamblat dispozitivul acum 5 ani, dacă îl găsesc, probabil că voi posta codul sursă mâine. Dar nu toate funcțiile sunt implementate acolo, de exemplu, nu am creat comanda de stare, care citește stările intrărilor și nu există nicio garanție că programul va funcționa cu modemul dvs., poate că există unele diferențe în răspunsurile la comenzi sau în comenzile în sine. De asemenea, în codul sursă original nu există o analiză a răspunsului modulului, modemul poate raporta o eroare, iar programul va continua să emită comenzi sau modemul se poate bloca pur și simplu, iar microcontrolerul pur și simplu nu va putea să-l repornească, deoarece placa originală nu are controlul asupra PowerPin-ului modulului. Voi analiza fișa de date pentru modulul dvs. și voi ajuta cât pot de bine. Aș vrea să mai spun că 590 este o porcărie rară, am cumpărat trei module, doar unul a funcționat normal fără probleme. La refacerea software-ului, sarcina nu a fost de a asigura funcționarea fără probleme a dispozitivului pentru o lungă perioadă de timp, ci pur și simplu de a lansa hardware-ul, există și o mulțime de coduri neoptimale, ar fi mai bine să vă trimit acest program prin e-mail.
  • Din cele două modemuri 590 pe care le-am achiziționat, doar unul a funcționat și normal, al doilea trimite tot felul de gunoaie care se văd pe terminal. Am încercat să selectez viteza - a fost inutil. Și al doilea funcționează clar la o viteză de 9600, dar din anumite motive nu vrea să fie prieten cu microcontrolerul, deși aici am aflat deja că problema este cel mai probabil în programul în sine. Cu toate acestea, pentru mine rămâne încă un mister de ce funcționează pentru unii și nu pentru alții. Se pare că GM47 și NEOWAY au complet aceleași protocoale de comandă AT, singura diferență este că Neoway nu are un port pentru microfon, ceea ce înseamnă că este imposibil să implementezi un apel vocal. Circuitul și controlerul dumneavoastră au rămas aceleași sau s-au schimbat? Da, mă voi bucura de orice, chiar și de o soluție „brută”, pentru că atunci poate fi modificată conform așteptărilor. Principalul lucru este fundația. Așa că vă voi fi extrem de recunoscător dacă trimiteți programul la adresă [email protected], atunci se va putea deplasa mai departe în această direcție, pentru că acum pur și simplu am ajuns într-o fundătură...

Buna ziua!
Aici a apărut sarcina de a gestiona o casă de țară, de a monitoriza temperatura, ușile și ferestrele. Și atunci a apărut întrebarea despre mediul de transmisie a datelor. Ei bine, firele și un canal radio nu mai sunt necesare din cauza costului ridicat, liniile de comunicație cu fibră optică sunt doar un vis, dar GSM este ceea ce ai nevoie. La început ochii mi-au căzut pe vechile telefoane „Motorola”, „Nokia”, „SonyEricsson”. M-am uitat, m-am întors și m-am răzgândit. În primul rând, nu am vrut să lipim contactele butonului și nu a existat niciun feedback. În al doilea rând, înțelegerea software-ului telefonului nu este deloc mare lucru. În general, prin gândire creativă și înot în vastitatea World Wide Web, după ce au prins câțiva viruși, s-a găsit un compromis. Și lucrează cu software și fără butoane. Modulul oferă toate acestea SIM900D. De ce mi-a plăcut de el?
- Prima este ușurința de instalare. Veți vedea asta mai târziu. - Al doilea este comunicarea prin UART. (Aceasta înseamnă MK + SIM900D = comunicare normală) - A treia este sursa de alimentare a modulului de la 3 la 4,8 volți. Hosh AVR, hosh ARM. Gust. Ei bine, destule versuri, este timpul să trecem la treabă.
Acest modul arată așa.

Referitor la instalare. După cum puteți vedea, modulul este proiectat pentru montare la suprafață. Dimensiunile plăcuțelor de contact sunt suficient de mari chiar și pentru LUT-uri. Mai jos este o poză cu dispozitivul meu.

După cum puteți vedea, nimic complicat. Acum să vorbim despre schema de conectare pentru acest miracol. Să ne uităm la manual. Și vedem pinout-ul.

Da, există o mulțime de lucruri, dar nu le vom folosi pe toate. Primul lucru pe care trebuie să-l facem este să legați toți pinii „GND” împreună. Dacă te uiți la colțul din dreapta sus, vei observa trei ace separate. Două „GND” și „ANT”. Aceste concluzii sunt situate astfel pentru un motiv. Să ne uităm la documentație pentru o imagine a conexiunii antenei.

Contactele 59 și 61 ar trebui să fie cât mai aproape posibil de terminalul antenei. Sunt necesare circuite suplimentare evidențiate în linii punctate pentru a conecta antenele cu cablu. Prin urmare, am lipit conectorul SMA cât mai aproape de pinii 59, 60, 61 și nu m-am deranjat cu circuitul de potrivire, în timp ce cu o antenă pe un cablu de 3 metri și într-un loc cu recepție foarte slabă, am stors 13 puncte. din 31 de la modul Conectorul este vizibil în imaginea de mai sus. Mai precis, picioarele sunt din el)) Conectorul în sine este pe cealaltă parte. În acest caz, contactele 59 și 61 par să îmbrățișeze antena. Ei bine, ceva de genul acesta. În continuare, să vorbim despre cartela SIM. Pentru a-l instala, am folosit acest conector (SIM ICA-501-006-01-F7)

Cel mai interesant lucru este că am găsit 3 opțiuni pentru pinout-ul cartelelor SIM. Pe care ar trebui să-l folosesc? Nu voi introduce nicio intrigă, dar pentru simplitate, voi oferi pinout-ul acestui conector. Vedere de sus.

Dar asta nu este tot. Dacă te uiți în manual la schema de conectare pentru cartela SIM, poți vedea acolo un anumit microcircuit numit SMF05C. Acest microcircuit conține până la 5 diode de protecție. Necesar pentru a proteja contactele cartelei SIM. Desigur, nu trebuie să-l instalați, dar apoi aveți grijă și nu atingeți contactele cu degetele!!! Ca persoană păcătoasă, nu pot garanta pentru mine, așa că am lipit mikruhu-ul. Și aici este diagrama în sine.

Desigur, este dat pentru o cartelă SIM cu 8 pini, dar pentru una cu 6 pini va fi la fel. Există într-adevăr două probleme cu acest cip. Prima este că unde naiba o poți găsi. Si al doilea lucru este dimensiunea lui... Cand am primit comanda si am scos-o, am pus-o pe masa... Pe scurt, in a doua poza de sus este lipit intre cartela SIM si baterie. Pentru comparație, rezistențele sunt 0805. Ei bine, în dreapta este un tranzistor într-un pachet SOT-23. Deci, se pare că am rezolvat cartela SIM, să mergem mai departe. Și apoi tehnologia de iluminat. În general, acest lucru nu este pentru toată lumea. Deoarece toate aceste semnale pot fi introduse direct în MK și lăsați-l să le trimită acolo singur. Le-am scos pe toți din simțul frumuseții. Deci decideți singuri.
- Primul este semnalul dacă modulul este pornit sau nu (STARE) log 1 - Al doilea este semnalul că rețeaua este înregistrată (NETLIGHT) log 1/0 (intermitent) Dacă clipește la aceeași frecvență, înseamnă nu s-a înregistrat în rețea. Dacă există un interval lung, înseamnă că există o conexiune la rețea. - Al treilea este jurnalul de apel/semnal SMS (RING) 0 Se aprinde dacă primește un apel și clipește când este primit un mesaj SMS. Primele două semnale trebuie conectate printr-un tranzistor NPN în modul comutator.

Iar al treilea semnal (RING) trebuie conectat printr-un tranzistor PNP. Un alt semnal important este butonul pentru a porni și opri modulul. (Unde am fi noi fără ea). Asta ne oferă manualul.

Adică, am aplicat log 1 la baza tranzistorului timp de 1 secundă și modulul a pornit.
Acum să vorbim despre nutriție. Da, nu m-ar deranja o placă bună de lupte acum, nu-i așa? Bine, hai să mergem mai departe. Modulul este alimentat de o tensiune de 3 până la 4,8 volți. Totul pare simplu, dar nu este. Când efectuați un apel, trimiteți un SMS sau căutați o rețea, modulul poate necesita până la 2A. Wow. Deci fanii LM7805 și Krenok ar putea fi dezamăgiți. Din fericire, manualul conține două circuite bazate pe microcircuitele MIC29302 (nu l-am găsit niciodată la vânzare) și LM2596 (pe acesta îl puteți cumpăra). Dar sunt leneș și pur și simplu nu am vrut să asamblez pitalul cu atâtea curele. Am cautat pe internet si am gasit. Există un stabilizator atât de bun pentru procesoare precum „Stump”, „AMD” la 3,3V și până la 7,5A. Ei bine, cred că de asta aveți nevoie și puteți alimenta ARM și modulul. Iată o diagramă a acestui miracol.

Și iată cum arată asamblat.

Am instalat radiatorul de frica in principiu, microcircuitul nu se incalzeste nici in timpul unui apel. Iar ultimul lucru la care ar trebui să fii atent este bateria. Este necesar pentru a menține ceasul în timp real viu. Cel mai important lucru este că nu poți lăsa această concluzie în aer. Personal, am fost de acord cu conectarea bateriei, ceea ce iti doresc. Puteți, desigur, să lipiți două AA)), dar este cumva prea mare, dar sub forma unei tablete 2032 la 3v este ceea ce aveți nevoie. Din fericire, nu sunt scumpe și compartimentele pot fi lipite direct pe placă. După părerea mea, aceasta este cea mai simplă soluție. Tu decizi. Ei bine, asta-i tot. Așa arată toată această rușine împreună și în stare de funcționare.

În articolul următor vă voi spune cum am spart acest modul, dar programatic prin terminal folosind comenzi AT.
Am așezat diagramele în PCAD-2006
Arhivă cu fișiere modul GSM.
Arhivă cu fișiere bloc de stabilizare.
Continuarea seriei de articole despre modulul GSM.
Comenzi AT.
Comunicarea modulului cu ATmega8515.
Placă de dezvoltare bazată pe SIM900D


Foli 14/03/13

Aș dori să știu mai multe despre comenzile AT, UART și despre lucrul direct cu aceasta în CodeVision

Alexey 15.03.13

Înțeleg comenzile AT. Nu vreau să postez jumătate din lucrare pentru că am câteva întrebări. Dar cu UART și CVAVR totul este simplu. De îndată ce îmi dau seama de comenzile AT, voi posta imediat ce comenzi și cum să le trimit de la CVAVR.

Anatok 04.11.13

Totul este frumos. Dar dacă alarma ar funcționa cel puțin la minus 30 de grade și ar fi încărcată cu panouri solare ascunse, mai ales iarna, atunci ar fi foarte mulți oameni care și-ar dori să aibă un astfel de dispozitiv.

Alexey 04.11.13

Modulul GSM consumă până la 2A la înregistrarea în rețea sau la efectuarea unui apel sau la comunicarea prin GPRS. Astfel de resurse necesită o baterie bună, iar la -30 bateria nu va dura mult. Chiar și în stațiile meteo pe senzori stradali, se recomandă utilizarea bateriilor simple.

Ursul 11.11.13

Dacă este încă relevant și interesant... uită-te la EAT pentru SIM900. In interiorul ARM exista un SDK in care poti incarca aplicatii in SIM900 din care poti face o gramada de lucruri... de exemplu sa trimiti aceleasi comenzi AT... + tastatura + display SPI... + 2 ADC-uri :) Sa ai o seara amuzanta :)

Ursul 11.11.13

Dar este totuși foarte frumos să faci putere pentru el pe L5973D. Da, este scris despre 2A în fișa de date... dar în practică acestea sunt impulsuri pe termen foarte scurt. Funcționează grozav pentru mine, de exemplu, cu Arduino Mega, care este alimentat de la un port USB (care are un curent de 0,5 A)

Alexei 11.11.13

Aceasta este frecarea. La început l-am alimentat și de la 7805, totul a funcționat, apoi bam... Și când este conectat la rețea, totul se stinge, apoi repornește. Se pare că câinele de pază repornește după un atac de hrănire. Și cu L7953D va fi frumos, dar de unde îl pot obține și cât va costa :) Așa că am trecut la IRU1075

Alexei 11.11.13

Îmi cer scuze pentru greșeli, nenorocitul de GOODROYD sculptează croakers pentru mine. El crede că este mai inteligent. Nu voi edita, lasă Google să se rușineze de munca lor.

Unchiul Misha 24.12.13

Când mă înregistrez în rețeaua Atmega, repornește. Deși costă puls dcdc. Condensatoare de 200 microfarad. Și uneori funcționează stabil. Sunt deja epuizat.

Alexey 25.12.13

Schema la studio. Este destul de dificil să înțelegi problema din cuvinte.

Unchiul Misha 25.12.13
Unchiul Misha 25.12.13

Http://ybex.com/d/tk7kgiefpklpeujb1zbl4lo5 mrkf7ayvci04ouq3.html MK-ul este alimentat de 2,8 (am încercat chiar și 3,7) Volți, pentru a nu interfera cu convertorul de nivel.

Alexey 25.12.13
Serghei 19.07.14

Salut Alexey! Aveți plăci gata făcute cu sim900, le pot cumpăra?

Alexey 19.07.14

Gata in ce sens? Modulul în sine a fost deja asamblat și tot ce rămâne este să realizați o placă cu ieșirile și intrările necesare pentru un anumit dispozitiv. Cel din acest articol este doar o placă demo pentru programe de depanare. Un anumit dispozitiv necesită dimensiuni, locația conectorilor, ieșiri pentru căști și microfon. Unde va fi conectorul antenei? Oferă informații mai detaliate despre ceea ce ai nevoie.

Andrei 28.09.14

Din câte am înțeles, acesta este un prototip al eșarfei pe care abia aștept să-l văd. Doar în versiunea comercială a fost căsătorit cu o sursă de alimentare și modernizat cu ieșiri audio. Că este un bum mare.

Alexey 28.09.14

De fapt este. Tocmai am omorât mai multe păsări dintr-o singură piatră. S-a rezolvat problema veche cu alimentarea cu energie și potrivirea nivelului pe UART. Și pentru intrare și ieșire audio șic adăugată. De fapt, un telefon mobil gata făcut.

Andrei 28.09.14

Aș dori să aduc o contribuție pentru viitor. În esență, această placă este o unitate completă. Și PRACTIC poate fi folosit în produsul finit. cu toate acestea, există un DAR. Cu un baldachin mezon, este mai bine să-l așezați deasupra (conector de antenă, acces la cartela SIM), așa că este destul de indicat să lăsați găuri paralele cu toți pinii pentru „periferice” pentru aceiași pini cu posibilitatea de a lipindu-le în direcția „în jos”. Acestea. Am vrut să atașez acest dispozitiv la o placă de microcontroler, să-l direcționez la a ta, să lipim conectorii de împerechere în el și să-l conectam. De asemenea, cu

Andrei 28.09.14

Am mâncat jumătate din mesaj, dar sper că ideea este clară-)

Alexey 28.09.14
Serghei 01.02.15

Spune-mi de ce se încălzește modulul și nu se conectează la rețea?

Alexey 02/01/15

Există mai multe motive pentru aceasta. În primul rând, nutriția este depășită. În al doilea rând, plusul a mers la cel general? Trebuie să te uiți cu atenție la picioarele de putere. În al treilea rând, dacă burta modulului atinge liniile de alimentare. Există mai multe contacte tehnologice pe burtă care trebuie izolate de orice conductor. În al patrulea rând, terminalul antenei este scurtcircuitat la terminalul comun? Pentru a fi mai precis, trebuie să te uiți la tablă. Trimite-mi taxa prin e-mail și voi vedea dacă este ceva în neregulă acolo.

Serghei 01.02.15

Am placi din fabrica, MasterKit BM8039, si ambele au aceeasi problema... cand introduci o cartela SIM modulul incepe sa se incalzeasca si nu exista retea.

Alexey 02/01/15

Este destul de greu de spus. Circuitul este din fabrică, trebuie să urci pe placă. Din documentație reiese clar că placa nu are diodele de protecție recomandate pentru cartela SIM. Cardul în sine și conectorul au aceiași pini? Modulul 300 este vechi și după părerea mea funcționează doar cu cartelele SIM de 5V, dar acum sunt toate de 3V. Dar aș putea greși. Trebuie să te uiți la placa în sine, este atât de greu să spui ceva. Dacă simptomul este același la ambele, atunci aș cădea în direcția conectorului și a tensiunii cartelelor SIM. Încă o dată, cardurile SIM moderne sunt de 3 volți.

Serghei 01.02.15

Costa sim900D...nu sunt diode cand introduc cardul apare puterea pe modul si incepe sa se incalzeasca, dar de exemplu pe cartela SIM. nu merge de la 9 picioare...

Serghei 01.02.15

Inițial au funcționat bine... apoi ceva a mers prost... Nu pot să-mi dau seama ce...

Serghei 01.02.15

Există vreo modalitate de a verifica modulul fără a-l deslipi?

Alexey 02/01/15

Ce anume a scurtcircuitat? Dacă cartela SIM nu este alimentată, atunci mă tem că linia pentru cartela SIM este moartă. Câte picioare are Simka? 6 sau 8? Pentru a verifica, puteți comunica cu modulul prin magistrala UART 3, 4 picioare fără a introduce o cartelă SIM. Dacă refuză să accepte comenzile AT, atunci cred că îl putem îngropa.

ANONIM 02/01/15

Nu știu exact ce l-a scurtat.. 8 picioare.. dar cum să comunic?

Alexey 02/01/15

Există și 8 pe conector? Luați cipul FT232RL și asamblați adaptorul USB<->TTL, lipire la UART al modulului, lansați un terminal, de exemplu Putty, scrieți AT și apăsați enter. Dacă revine OK, atunci nu totul este pierdut. Dacă e tăcere... La gunoi. Și da, ce fel de LED-uri sunt pe placă? Cum se determină înregistrarea în rețea?

Serghei 02.02.15 03:12

Pe conector sunt si 8...pe placa sunt doua LED-uri, verde si rosu, prezenta unei retele este determinata de lumina verde care clipeste o data la trei secunde...pot sa inserez cumva o poza cu placa ?

Alexey 02.02.15 07:42

E mai ușor să mergi pe forum.

Serghei 02.02.15 14:02

Dacă nu introduceți o cartelă SIM, înseamnă că trebuie să alimentați modulul?

Alexey 02.02.15 15:48

Nu pot spune după frunzele de ceai. Am nevoie fie de o schemă, fie de o placă. Și ce legătură au alimentarea modulului și cartela SIM cu ea? Cel mai probabil se intersectează cu un alt microcontroler. El furnizează mâncare. În general, aveți nevoie de o diagramă. Și este ca și cum ai face un diagnostic prin telefon.

Serghei 02.02.15 15:56

Unde pe forum pot posta diagrama?

Serghei 02.02.15 15:57

Alimentarea vine la modul numai atunci când introduceți o cartelă SIM

Alexey 02.02.15 19:27

Ei bine, modulul SIM900D nu are asta. Pentru a porni modulul, trebuie să țineți nivelul scăzut pe piciorul 12 și apoi să îl ridicați. Cardul SIM nu poate fi introdus sau scos deloc atunci când modulul este pornit, există posibilitatea de a arde portul. Dacă te uiți la documentație, poți găsi acolo recomandări pentru instalarea diodelor de protecție pe linia portului cartelei SIM. Pe forum. Creați un subiect și postați o fotografie.

Evgeniy 09/08/15 12:04

Când aplic tensiune la modul, există un potențial pozitiv pe al 12-lea picior și un potențial pozitiv pe al 5-lea picior (cu condiția ca aceste picioare să atârnă în aer). Vă rog să-mi spuneți, ar trebui să fie un zero pe al 5-lea pas? Daca nu, va rog sa ma corectati.

Alexey 09/08/15 13:21

Al 12-lea picior este includerea modulului. Când este aplicată puterea, 1 se atârnă de el. Pentru a porni modulul, trebuie să apăsați al 12-lea picior pe firul comun timp de câteva secunde, adică să aplicați 0. Când este alimentat modulul 5, piciorul trebuie. să fie tras la firul comun de două rezistențe (acest lucru poate fi văzut din diagrama de conectare a tranzistorului în modul comutator) și ar trebui să fie 0, deoarece baza trebuie trasă până la zero pentru a închide complet tranzistorul. După apăsarea celui de-al 12-lea picior la zero, 1 ar trebui să apară pe al 5-lea etapă, iar după un timp un șerpuit care indică starea disponibilității și conexiunii la rețea.

Așadar, după o lungă perioadă de timp de înțelegere a complexității lucrului cu modulul GSM SIM900D, anunțăm primul proiect de lucru care combină un sistem de securitate cu posibilitatea de control de la distanță. Pe scurt, dispozitivul este capabil să trimită SMS-uri de informare dacă senzorul de intruziune este declanșat, să efectueze apeluri pentru a permite monitorizarea audio a camerei, să monitorizeze temperatura și să o trimită prin SMS la cerere, precum și să controleze o anumită încărcare pe baza unei comenzi trimise. prin SMS.

Oricine a urmărit acest subiect știe că am un modul GSM și un modul de control pentru el - două plăci diferite conectate printr-un sandwich (vezi placa cu SIM900D și placa de control). Pe placa de control, pe langa microcontrolerul ATmega32a, exista un modul de putere realizat pe un convertor LM2596 care alimenteaza circuitul cu o tensiune constanta de 3,5 volti. În principiu, orice altă sursă de alimentare va face, principalul lucru este că este capabilă să consume pe scurt până la 2 amperi (acesta este exact consumul modulului GSM în momentul înregistrării).

Din motive de comoditate, la placa de control este conectat un display de la un telefon Nokia3310, metodele de lucru cu care au fost deja descrise de mai multe ori pe acest site. Datorită afișajului, puteți determina rapid starea dispozitivului și valoarea senzorilor.

Ca rezultat, diagrama de conectare rezultată arăta astfel (pe care se poate face clic):

Numerotarea pinilor microcontrolerului din diagramă este dată pentru un pachet DIP, așa că dacă repetați circuitul folosind un microcontroler într-un pachet TQFP, aveți grijă, numerotarea pinii este diferită. Microcontrolerul este tactat de la un cuarț extern la 16 MHz.

Linia Control trecând de la colectorul tranzistorului Q2 la pinul PortD.4 al microcontrolerului a fost adăugat pentru reasigurare și este necesar pentru a monitoriza dacă modulul este pornit. Deoarece pragul de oprire pentru SIM900 este de 3,2 volți, chiar și cu o scădere ușoară de tensiune, modulul se va opri automat, în timp ce microcontrolerul va continua să funcționeze și să execute programul (pragul de resetare pentru ATmega32a este de 2,7 volți). În stare de funcționare, această linie este scăzută. Dacă microcontrolerul detectează că această linie este ridicată, modulul GSM va reporni funcția.

Și așa arată în acțiune în acest moment.

După testarea finală a programului, toate acestea vor fi îndesate în carcasă, iar conexiunile detașabile vor fi sigilate pentru fiabilitate.

Afișajul arată informații de bază despre starea dispozitivului: numele operatorului, calitatea semnalului de comunicare, valoarea temperaturii de la senzorul 18b20, starea ieșirii de sarcină și a senzorului de intruziune, precum și timpul și Data.

Video cu activarea modulului

Ora și data sunt preluate de la ceasul încorporat în modulul GSM. Pentru funcționarea lor, este necesar să aveți o baterie de 3 volți conectată la pinul 15 (VRTC). Se recomandă instalarea diodei D1 cu o cădere de tensiune scăzută, de exemplu Schottky. Setarea ceasului și datei se face manual, comenzile fiind descrise mai devreme

Data este afișată pe afișaj în formatul primit de la modul, adică mai întâi anul, apoi luna și data. Nu am schimbat nimic aici încă.

Senzorul DS18B20 este responsabil pentru măsurarea temperaturii; este conectat la pinul PortD.3 al microcontrolerului.

Puteți conecta orice sarcină la PortD.6 și o puteți controla prin comenzi SMS. Acum am un LED agățat - D4 pe diagramă. Dar nimic nu te împiedică să agăți un releu sau un triac aici și să controlezi ceva mai serios.

Din motive de securitate, este planificată utilizarea unui senzor de mișcare HC-SR501, achiziționat de pe E-bay. Dacă este declanșat, la ieșirea senzorului apare unul logic. După ce l-a prins, microcontrolerul va da o comandă pentru a trimite un mesaj SMS la numărul de telefon specificat în program.

Ieșirea senzorului este conectată la pinul PortD.7 al microcontrolerului, în diagramă, senzorul este înlocuit în mod convențional cu un buton;

În locul unui senzor de mișcare, puteți instala orice alte mijloace de detectare a intruziunii - senzori de deschidere a ferestrelor și ușilor, senzori de spargere a geamului, senzori fotoelectrici etc. în general, tot ceea ce este capabilă imaginația dvs.

Pentru a preveni trimiterea repetată a SMS-urilor de avertizare în cazul activării unui senzor, a fost introdusă o restricție în program: după primul SMS trimis, se interzice trimiterea ulterioară. Pentru a reactiva trimiterea de mesaje de notificare atunci când senzorul este declanșat, trebuie să trimiteți un SMS cu o comandă specifică către modul. Când trimiterea de SMS-uri este interzisă, pe afișaj va apărea un semn de exclamare lângă starea senzorului.

Lista comenzilor

Și iată lista comenzilor din SMS pe care le procesează modulul. Pentru comoditate și simplitate, comenzile sunt digitale, poate că în viitoarele versiuni de firmware vor exista nume de comenzi mai semnificative :)

0 – Deconectare de la încărcare (pinul PortD.6 este setat la 0 logic)

1 – Porniți încărcarea (pinul PortD.6 este setat la 1 logic)

2 – După ce a acceptat această comandă, modulul va apela înapoi numărul de telefon specificat în program

3 – Solicitați soldul dvs. și trimiteți-l prin SMS înapoi la numărul specificat. Există o nuanță importantă aici - răspunsurile la solicitările USSD trebuie să vină în latină. În caz contrar, în loc de text semnificativ, răspunsul va fi un mesaj în codificare hexazecimală. Trebuie să verificați cu operatorul dumneavoastră cum să convertiți USSD în latină. De exemplu, pe cartela SIM pe care o folosesc de la Smarts, trebuie să introduceți *102*1# (în megafon *105*0#)

4 – Cerere de temperatură. Valoarea temperaturii ne va fi trimisă prin SMS.

5 – Permiteți trimiterea mesajelor dacă senzorul de intruziune este declanșat.

6 – Interzicerea trimiterii de SMS-uri de notificare de la senzorul de intruziune.

? – Cu această comandă, modulul ne va trimite un SMS care conține informații generale despre dispozitiv, cum ar fi valoarea de la senzorul de temperatură, dacă sarcina este pornită, starea intrării de la senzorul de intruziune și dacă se trimite SMS de notificare de la acesta este permis. De exemplu, așa ar putea arăta un mesaj: temperatură +24, încărcare oprită, ieșire senzor de mișcare 0, trimiterea SMS dacă este declanșată este interzisă.

Acum, cum să configurați modulul pentru a trimite SMS-uri către numărul dvs. În arhiva cu programul găsim fișierul principal al programului, se numește „program” 🙂 și găsim o constantă în el:

Const Număr de telefon = „+7908390xxxx”

Vă înlocuim numărul de telefon aici, compilăm programul și obținem un fișier firmware hexadecimal.

Programul, ca întotdeauna, este scris în Bascom-AVR, așa că înțelegerea algoritmului de lucru cu modulul GSM este destul de simplă. Noroc!

Și, în sfârșit, o demonstrație a modului în care modulul procesează comenzile.

Mulțumiri speciale prietenului de mult timp de pe site, Serghei RD3AVJ, pentru participarea și asistența sa în dezvoltare!

UPD: din 31.10.12

Am modificat puțin firmware-ul, acum pentru a seta numărul la care va fi trimis SMS-ul de notificare, nu este nevoie să recompilați programul. Este suficient să trimiți un SMS cu un mesaj către modul „Primul număr”(fără ghilimele) și numărul de la care a fost trimisă această comandă este înregistrat în memoria nevolatilă a microcontrolerului.

În cele din urmă, am reușit să încep să studiez poate cel mai popular modul GSM din mediul DIY - GSM900. Ce este un modul GSM? Acesta este un dispozitiv care implementează funcțiile unui telefon mobil. Cu alte cuvinte, GSM900 vă permite să apelați alți abonați ai rețelei celulare, să primiți apeluri, să trimiteți și să primiți mesaje SMS. Și, desigur, transmiteți date folosind protocolul GPRS.

Aveam nevoie de acest modul pentru un scop foarte precis: am venit cu un proiect pentru un sistem de iluminat controlat de la distanță. Cel mai simplu mod de a rezolva această problemă este prin mesajele SMS: trimiteți un SMS - lumina se aprinde, trimiteți altul - se stinge. Nu aveți nevoie de telecomenzi și toată lumea are un telefon (chiar și persoanele fără adăpost). De fapt, în acest articol voi lua în considerare exact această opțiune pentru utilizarea modulului GSM900.

1. Firmware

După cum a vrut soarta, am ajuns să am un modul GSM900A în mâini. După ce am citit primul forum pe care l-am întâlnit despre renașterea acestui lucru, s-a dovedit că litera A din nume înseamnă că modulul aparține regiunii asiatice. Și, prin urmare, nu va lucra cu operatorii noștri. Deznădejde 🙁

Din fericire, următoarele postări de pe același forum conțineau informații liniștitoare :) S-a dovedit că nu totul este atât de rău și, pentru ca modulul să funcționeze în regiunea noastră, trebuie pur și simplu să fie reflashat. Acest proces este bine descris în blogul colegului nostru Alex-EXE: firmware sim900 „all in one”.
Voi încerca să fac același lucru, dar și mai detaliat și ținând cont de caracteristicile modulului meu.

Dacă aveți modulul corect și nu este necesar niciun firmware, puteți sări imediat la secțiunea nr. 2.

Instrumente

Deci, mai întâi, să pregătim toate instrumentele necesare. În primul rând, direct pentru firmware veți avea nevoie de aplicația de descărcare Tools Develop din seria SIM900, care poate fi găsită cu ușurință pe Internet ().

În al doilea rând, fișierul firmware în sine, 1137B02SIM900M64_ST_ENHANCE, va fi de asemenea util, care este și ușor de obținut ().

În cele din urmă, în al treilea rând, vom avea nevoie de un terminal bun pentru a experimenta modulul. De obicei folosesc TeraTerm, dar de data aceasta capabilitățile sale nu au fost suficiente (sau nu l-am înțeles). A trebuit să instalez un monstru cu un nume genial.

Conexiune la puntea USB-UART

Acum conectăm liniile RX și TX la pod. Pentru acesta din urmă am folosit CP2102. În cazul meu, contrar logicii, RX și TX ale podului au fost conectate la RX și TX ale modulului GSM simetric (și nu transversal, așa cum este de obicei).

De asemenea, ar trebui să alimentați modulul de la o sursă stabilă și puternică, deoarece curentul de vârf al modulului poate ajunge la 2A (se presupune că). Potrivit pentru 4 baterii de dimensiune AA. Schema de conectare completă arată astfel:

SIM900
CP2102 Gnd Gnd
CP2102 +5V VCC_MCU
CP2102 RX SIMR
CP2102TX SIMT
Sursă externă +5V VCC5
Sursă externă Gnd Gnd
RST

Acest model nu are un buton de resetare, așa că pentru a intermite firmware-ul va trebui să aruncăm pinul RST la masă pentru câteva secunde. Pentru a face acest lucru, îl vom lăsa în aer deocamdată.

Pre-configurarea modulului

Înainte de a începe să flashăm firmware-ul, ne vom conecta la modul și ne vom modifica viteza UART. Pentru a face acest lucru, lansați terminalul Terminal, selectați portul corect și setați cursul de schimb la 9600. După aceea, faceți clic pe „Conectați”.

Toată comunicarea cu modulul are loc prin comenzi AT.

Primul lucru pe care îl spunem modulului va fi cea mai primitivă comandă AT: „AT”. Acesta este un fel de ping la care modulul trebuie să răspundă cu cuvântul „OK”.

Dacă totul a mers bine și modulul ne-a răspuns cu adevărat „OK”, trimitem comanda de setare a vitezei:

AT+IPR=115200

La sfârșitul comenzii trebuie să existe un caracter de întoarcere a carului - CR. În tabelul ASCII are codul 13 (sau 0x0D în hexazecimal). Simbolul va fi înlocuit automat dacă bifați caseta de selectare „+CR” de lângă linia de intrare în terminalul nostru. Alte terminale au, de asemenea, setări similare.

Ca răspuns la comanda introdusă, vom primi din nou „OK”.

Vom avea nevoie de această setare pentru a accelera procedura de firmware. În caz contrar, așa cum a indicat Alex-EXE pe blogul său, firmware-ul va dura aproximativ o oră.

Configurarea programului

După ce toate firele sunt conectate în locurile potrivite și modulul este pregătit pentru firmware, lansați aplicația de descărcare Tools Develop din seria SIM900. Configurarea programului constă în doar câteva puncte:

  • În câmpul țintă indicăm cipul țintă. Din anumite motive, nu am putut încărca firmware-ul pe SIM900A, așa că am ales „SIM900”;
  • selectați portul corect în câmpul Port;
  • Setați Baud Rate la 115200;
  • în cele din urmă, specificați fișierul firmware în câmpul Fișier principal (fișier cu extensia cla).

Asta e cu setarile.

Firmware

Acum efectuăm în mod strict și consecvent șase pași importanți.

  • Conectam alimentarea la modul (cele 4 baterii ale noastre). Ledul roșu de alimentare ar trebui să se aprindă, iar ledul de stare ar trebui să înceapă să clipească.
  • Conectam USB-UART la computer.
  • Închidem firul RST la masă (rețineți că în tot acest timp a atârnat în aer).
  • Faceți clic pe butonul Start Download din program.
  • Numărăm până la trei în cap și ridicăm RST-ul de pe sol.

Așteptăm 6 minute până când firmware-ul este finalizat.

Ce avem după firmware?

În primul rând, modulul poate lucra acum cu operatorii noștri. În al doilea rând, am instalat firmware avansat, printre caracteristicile căruia, de exemplu, se numără primirea coordonatelor modulelor de la turnurile celulare, lucrul cu e-mailul și accesul la o memorie suplimentară de 2,5 MB.

2. Experimente cu modulul GSM

Să încercăm acum să efectuăm diverse operații utile cu modulul. Mai întâi, introduceți codul PIN (dacă aveți unul):

AT+CPIN=8899

Răspunsul modulului va fi:

CPIN: GATA.

După aceasta vom primi câteva informații de la modul.

AT+GMR - identificator de firmware. AT+GSN - IMEI. AT+CPAS - stare (0 – gata de lucru, 2 – necunoscut, 3 – apel primit, 4 – conexiune vocală). AT+COPS? - informatii despre operator.

Apeluri telefonice

Acum să formem un număr. Acest lucru se face folosind comanda:

ATD+790XXXXXXX;

Punctul și virgulă de la sfârșitul comenzii este foarte important, nu uitați de el!

Dacă cineva sună dispozitivul în timpul unei sesiuni UART, va fi returnat următorul mesaj:

Puteți răspunde la apel (preluare) cu comanda:

Dacă la modul sunt conectate căști și un microfon, puteți comunica cu un abonat de la distanță ca și cum ați folosi un telefon mobil obișnuit.

Comanda încheie apelul:

Se trimite SMS

Mai întâi, să activăm modul mesaj text:

AT+CMGF=1

și setați codificarea:

AT+CSCS= „GSM”

Modulul acceptă și alte codificări care sunt mai convenabile pentru sistemele automate. Dar pentru experimentele noastre, cel mai convenabil este să folosiți modul GSM, în care telefonul este specificat în numere, iar textul mesajelor este scris în codificare ASCII. Acum să trimitem cuiva un mesaj:

AT+CMGS="+79123456789"

Și la sfârșitul comenzii trebuie să adăugați două caractere de serviciu simultan: CR și LF. În Terminal, acest lucru se poate face bifând CR=CR+LF sau adăugând manual la sfârșitul liniei: AT+CMGS=»+79123456789″&0D&0A

După introducerea acestei comenzi, simbolul „>” va fi primit ca răspuns, indicând începutul introducerii unui mesaj. Scriem ceva text:

Salut Lume!

La sfârșitul mesajului va trebui să trecem unul dintre cele două caractere speciale. Pentru a trimite un mesaj, introduceți un caracter din tabelul ASCII cu numărul 26. Pentru a anula trimiterea, introduceți un caracter cu numărul 27.

În terminalul pe care îl folosim, pentru a trimite un caracter cu cod, puteți folosi una dintre cele două expresii: în hexazecimal: $1A și în zecimal: #026

Primirea SMS-urilor

Dacă un SMS este trimis către dispozitiv în timpul unei sesiuni, va fi returnat un mesaj în următorul format:

CMTI: „SM”,4

aici 4 este numărul mesajului necitit primit.

AT+CMGR=4

Ca răspuns obținem:

CMGR: "REC READ","+790XXXXXXXX","","13/09/21,11:57:46+24" Bună lume! Bine

În general, totul este simplu. Acest lucru este suficient pentru ca noi să ne realizăm planurile. Pentru un studiu mai profund al capabilităților GFM900, vă recomand să citiți un alt articol de Alex-EXE: at-commands pentru modemul gsm sim900

3. Interacțiunea cu microcontrolere

În general, pentru a controla dispozitivele externe nu este deloc necesară împerecherea modulului GSM900 cu un alt microcontroler. Vă puteți încorpora propriul program în acest modul, care va face tot ce doriți cu pin-uri GPIO gratuite. Cu toate acestea, în majoritatea plăcilor gata făcute, GPIO-urile nu sunt direcționate, așa că pentru a crea un prototip al dispozitivului dorit, vom folosi cel mai simplu Arduino Uno/Nano.

Arduino și GSM900 vor comunica prin aceeași interfață UART. Pentru a face acest lucru, conectați aceste două dispozitive conform următoarei scheme:

GSM900 GND VCC_MCU SIMT SIMR
Arduino Uno GND +5V RX TX

Acum să creăm un program care va capta mesajele SMS și va aprinde LED-ul de pe piciorul nr. 13 pentru câteva secunde. Cu aceasta simulăm controlul unui dispozitiv extern.

Const String spin = "1234"; const int rel_pin = 13; String ss = ""; // Trimite un cod PIN void sendPin())( String cmd = "AT+CPIN="+spin+char(0x0D); Serial.print(cmd); ) // Aprinde LED-ul timp de 2 secunde void receiveSMS(String s)( digitalWrite(rel_pin, HIGH); delay(2000); digitalWrite(rel_pin, LOW); // Analizează șirul care a venit din modul void parseString(String src)( bool collect = false; String s = ""; for(octetul i =0;

Încărcăm programul pe Arduino și testăm sistemul. Dacă totul este făcut corect, trimiterea unui mesaj SMS către dispozitiv va aprinde LED-ul timp de 2 secunde. Bineînțeles, în loc de LED, puteți porni/opri un releu puternic la care este conectată centrala de încălzire dintr-o casă de țară.