Cum se configurează smartphone-uri și PC-uri. Portal informativ
  • Acasă
  • știri
  • Trimiterea de SMS prin Arduino și modulul GSM NEOWAY M590.

Trimiterea de SMS prin Arduino și modulul GSM NEOWAY M590.

Vreau să vă prezint o modalitate foarte simplă de a controla alimentarea de la distanță.
Vom folosi prize radio-comandate gata făcute, deci nu trebuie să lipim nimic. Este foarte tare, deoarece 220V (pentru începători) este mai bine lăsat în pace.

Codul

Dacă utilizați nu GSMSHIELD, ci o altă bibliotecă, atunci codul va fi, desigur, diferit, dar principiul va fi același. La anumite intervale de timp, verificăm dacă avem SMS-uri necitite, le analizăm și dacă o comandă validă a venit de la un număr autorizat, apoi trimitem un semnal radio folosind funcțiile mySwitch.switchOff sau mySwitch.switchOn, pasându-le adresa socket-ului.
Aproximativ. În cazul meu, pentru scutul Seeedstudio, a trebuit să intru în GSM.cpp și să schimb pinii setați la 7 și 8./ * Exemplu de cod Arduino GSM-switch Pornire/oprire prize controlate radio Autor: Vladislav Ross, 2014 Contact: [email protected] Trebuie să descărcați: 1. rc-switch https://code.google.com/p/rc-switch/ 2. GSMSHIELD http://www.gsmlib.org/ Pentru GSMSHIELD: * Pentru a schimba pinii pentru Software Serial, utilizați cele două linii din GSM.cpp. * Dacă utilizați Mega, decomentați linia „#define MEGA” din HWSerial.h * Puteți activa mesajele de depanare pe portul serial definind DEBUG_ON * / #include „SIM900.h” #include #include „sms.h” #include „call.h” #include // 433MHz pin transmițător const byte RCpin = 12; char groupAddress = "11111"; char smsLetters = "ABC"; char * deviceAddresses = ("10000", // A "01000", // B "00100" // C); char adminNumber = "+74991356235"; // numărul dvs. de telefon CallGSM call; SMSGSM sms; RCSwitch mySwitch = RCSwitch (); numărul de caractere; octet stat = 0; char smsText; pozitia octetului; int deviceLetterIdx = -1; octetul i, j; void setup () (gsm.begin (2400); întârziere (10000); pentru (i = 1; i<= 21; i++) { sms.DeleteSMS(i); } mySwitch.enableTransmit(RCpin); }; void loop() { //hang up all incoming calls /*stat=call.CallStatus(); if(stat==CALL_INCOM_VOICE) { call.HangUp(); }*/ position = sms.IsSMSPresent(SMS_UNREAD); //get new SMS if (position) { sms.GetSMS(position, number, smsText, 10); sms.DeleteSMS(position); if(strcmp(number, adminNumber) == 0) //accept SMS only from defined number { for (i = 0; i < sizeof(smsText) - 1; i++) { if(deviceLetterIdx != -1) { //got letter, now expecting 0 or 1 if(smsText[i] == "0") { mySwitch.switchOff(groupAddress, deviceAddresses); delay(500); } if(smsText[i] == "1") { mySwitch.switchOn(groupAddress, deviceAddresses); delay(500); } deviceLetterIdx = -1; } else { //waiting for letter A,B,C... for(j = 0; j < sizeof(smsLetters) - 1; j++) { if(smsLetters[j] == smsText[i]) { deviceLetterIdx = j; break; } } } } } } delay(10000); }; GitHub .

Probleme?

Dacă prizele nu doresc să treacă la niciuna, puteți încerca să primiți un semnal de la propria telecomandă către receptor. Există un exemplu de cod în rc-switch.

Ce urmeaza?

Cum poate fi dezvoltat în continuare acest proiect:
În primul rând, mai avem o grămadă de pini pe Arduino însuși și pe scutul GSM. Puteți conecta unii senzori sau dispozitive la ei. De exemplu, monitorizarea de la distanță a temperaturii sau udarea florilor.
În al doilea rând, am folosit doar SMS-uri, iar modulul poate transmite în continuare voce și GPRS. GPRS poate transfera mult mai multe date. În plus, nu poți să închizi telefonul când suni, ci, de exemplu, să iei un apel și să te lași să asculți ce se întâmplă pe loc.
De asemenea, este posibil să doriți să primiți SMS-uri de control nu de la un număr, ci de la mai multe. În acest caz, aș recomanda stocarea numerelor în agenda de adrese din bibliotecă, există funcții corespunzătoare.

Un articol pentru cei care vor să forțeze Arduino să trimită SMS prin aceasta modul GSM ... Modulul NEOWAY M590 bazat pe cipul SIM900 este potrivit pentru crearea unei alarme de casă, casă inteligentă. Există, de asemenea, un modul GSM alternativ care se conectează direct la Arduino prin 5 Volți: Sim800L EVB v2.0

Formularea problemei

  • Folosind doar modulul Arduino și GSM, controlați LED-ul printr-un apel telefonic.
  • Trimiteți SMS (în timp ce prin comanda vine prin monitorul portului către IDE-ul Arduino)

Conectarea la Arduino

Conectăm modulul GSM la Arduino.
Modul 5V -> 5V Arduino
Modul GND -> GND Arduino
Modul TX -> digital pin2 Arduino
Modul RX -> digital pin3 Arduino
Puteți vedea pinout-ul în fotografie. Ordinea contactelor este următoarea: 1 - + 5V, 2 - GND, 7 - TX, 8 - RX.


Puteți alimenta modulul de la 4V la 5V, eu am folosit o ieșire de 5 volți.

Modulul necesită o sursă de alimentare separată, deoarece consumă până la 2A de vârf. Cel mai probabil, condensatorul nu te va salva. Prin urmare, atunci când este alimentat de la Arduino, este posibil să nu funcționeze sau să aibă erori.

Masa Arduino și modulul GSM trebuie conectate cu o sursă de alimentare separată, dar mai întâi trebuie să măsurați tensiunea dintre aceste „împământări” cu un multimetru. Unele surse de alimentare pentru computere au o cădere de tensiune de până la 100 V pe șasiu și masă USB. Curentul de acolo este puțin și nu poate ucide, dar este ușor să distrugi Arduino sau modulul GSM sau ambele.

Schiță

#include< SoftwareSerial... h> SoftwareSerial mySerial (2, 3); // RX, TX int ch = 0; int led = 13; String val = ""; void setup () (
întârziere (2000); // timpul de inițializare a modulului pinMode (led, OUTPUT); digitalWrite (led, LOW); Serial... începe (9600); // viteza portului Serial... println ("Tester GSM v1.0"); mySerial. începe (9600); mySerial. println ("AT + CLIP = 1"); // pornește întârzierea AON (100); mySerial. println ("AT + CMGF = 1"); // Mod de codare SMS - normal (pentru engleză)întârziere (100); mySerial. println ("AT + CSCS = \" GSM \ ""); // modul de codare a textuluiîntârziere (100); ) bucla nulă () (dacă (mySerial. available ()) ( // dacă modulul GSM ne-a trimis ceva, atunciîn timp ce (mySerial. available ()) ( // salvează șirul de intrare în variabila val ch = mySerial. citit (); val + = char (ch); întârziere (10); ) dacă (val. indexOf ("RING")> - 1) ( // dacă este găsit un apel, atunci verificați numărul dacă (val. indexOf ("71234567890")> - 1) ( // dacă numărul apelantului este al nostru. Introduceți numărul fără „+” Serial... println ( "--- INEL MASTER DETECTAT ---"); mySerial. println ("ATH0"); // întrerupe legătura digitalWrite (led, HIGH); // aprinde LED-ul timp de 3 secîntârziere (3000); digitalWrite (led, LOW); // opriți releul)) altfel Serial... println (val); // imprimă linia primită pe monitorul portului val = ""; ) dacă ( Serial... disponibil ()) ( // dacă se introduce ceva în monitorul portului in timp ce ( Serial... disponibil ()) ( // salvează șirul în variabila val ch = Serial... citit (); val + = char (ch); întârziere (10); ) //mySerial.println(val); // transferul tuturor comenzilor introduse în monitorul portului către modulul GSM dacă (val. indexOf ("sendsms")> - 1) ( // dacă ați văzut comanda pentru a trimite SMS sms (String ("bună lume"), String ("+71234567890")); // trimite SMS la numărul +71234567890) val = ""; // clear)) void sms (String text, String phone) // procedura de trimitere SMS { Serial... println („Trimitere SMS a început”); mySerial. println ("AT + CMGS = \" "+ telefon +" \ ""); întârziere (500); mySerial. imprimare (text); întârziere (500); mySerial. imprimare ((car) 26); întârziere (500); Serial... println („SMS trimitere completă”); întârziere (2000); )

Examinare


GPRS

În versiunea considerată a modulului 1.30, suportul GPRS este redus. Nu am putut să mă conectez la server după numele său DNS (de exemplu, mysite.ru), sa dovedit doar după adresa IP. Nu au existat astfel de probleme într-un alt modul SIM800L.

Lista unor comenzi AT:

În ultimul deceniu, furturile de mașini au ocupat unul dintre cele mai importante locuri în structura infracțiunilor comise în lume. Aceasta se datorează nu atât ponderii specifice a acestei categorii de furturi în raport cu numărul total de infracțiuni, cât importanței prejudiciului cauzat din cauza costului ridicat al mașinilor. Eficacitatea slabă a măsurilor luate în domeniul combaterii furtului de vehicule până la sfârșitul anilor 90 a condus la crearea unor grupuri stabile specializate în săvârșirea acestor infracțiuni și având trăsăturile distinctive ale crimei organizate; probabil că ați auzit termenul „afaceri auto negre”. Parcului auto din țările europene lipsesc anual ≈ 2% din mașinile care devin subiectul unor intrucțiuni criminale. Prin urmare, mi-a venit ideea să fac o alarmă GSM pentru mașina mea bazată pe Arduino Uno.

Să începem!

Ce vom colecta

Trebuie să alegem inima sistemului nostru. După părerea mea, nu există nimic mai bun pentru o astfel de semnalizare decât Arduino Uno. Criteriul principal este un număr suficient de pini și un preț.


Caracteristicile cheie ale Arduino Uno

Microcontroler - ATmega328
Tensiune de lucru - 5 V
Tensiune de intrare (recomandată) - 7-12 V
Tensiune de intrare (limită) - 6-20 V
Intrări / Ieșiri digitale - 14 (dintre care 6 pot fi folosite ca ieșiri PWM)
Intrări analogice - 6
Curent DC prin intrare/ieșire - 40 mA
Curent DC pentru pin de 3,3 V - 50 mA
Memorie flash - 32 KB (ATmega328) din care 0,5 KB sunt folosiți pentru bootloader
RAM - 2 KB (ATmega328)
EEPROM - 1 KB (ATmega328)
Frecvența ceasului - 16 MHz


Se potrivește!

Acum trebuie să selectați un modul GSM, deoarece sistemul nostru de alarmă ar trebui să poată anunța proprietarul mașinii. Deci, trebuie să căutați pe Google... Aici, un senzor excelent - SIM800L, dimensiunea este pur și simplu minunată.


M-am gândit și l-am comandat din China. Totuși, totul s-a dovedit a nu fi atât de roz. Senzorul a refuzat pur și simplu să înregistreze cartela SIM în rețea. S-a încercat tot ce era posibil - rezultatul a fost zero.
Au fost oameni amabili care mi-au oferit un lucru mai cool - Sim900 Shield. Acesta este deja un lucru serios. Shield are un microfon și mufă pentru căști, un telefon cu drepturi depline.


Principalele caracteristici ale Sim900 Shield

4 standarde de frecventa de lucru 850/900/1800/1900 MHz
GPRS multi-slot clasa 10/8
Stație mobilă GPRS clasa B
Conform cu GSM faza 2/2 +
Clasa 4 (2 W @ 850/900 MHz)
Clasa 1 (1 W @ 1800 / 1900MHz)
Controlat de comenzi AT (GSM 07.07, 07.05 și comenzi AT extinse SIMCOM)
Consum redus de energie: 1,5 mA (mod inactiv)
Interval de temperatură de funcționare: -40 ° C până la +85 ° C


Se potrivește!

Ok, dar trebuie să luați citiri de la niște senzori pentru a anunța proprietarul. Dintr-o dată mașina este evacuată, atunci poziția mașinii se va schimba evident în spațiu. Să luăm un accelerometru și un giroscop. Amenda. Dachshund, acum căutăm un senzor.

Cred că GY-521 MPU6050 se va potrivi cu siguranță. S-a dovedit că are și senzor de temperatură. Ar fi necesar să-l folosiți, va exista o astfel de „funcție ucigașă”. Să presupunem că proprietarul mașinii a pus-o sub casă și a plecat. Temperatura din interiorul mașinii se va schimba „liniște”. Ce se întâmplă dacă un intrus încearcă să pătrundă într-o mașină? De exemplu, el va putea deschide ușa. Temperatura din mașină va începe să se schimbe rapid, pe măsură ce aerul din habitaclu începe să se amestece cu aerul ambiental. Cred că va funcționa.


Principalele caracteristici ale GY-521 MPU6050

Modul giroscop cu 3 axe + accelerometru cu 3 axe GY-521 pe cipul MPU-6050. Vă permite să determinați poziția și mișcarea unui obiect în spațiu, viteza unghiulară în timpul rotației. Are și un senzor de temperatură încorporat. Este folosit in diverse modele de aeronave si avioane, fiind de asemenea posibil sa se monteze un sistem de captare a miscarii pe baza acestor senzori.

Microcircuit - MPU-6050
Tensiune de alimentare - de la 3,5V la 6V (DC);
Gama giroscopului - ± 250 500 1000 2000 ° / s
Gama accelerometrului - ± 2 ± 4 ± 8 ± 16g
Interfață de comunicare - I2C
Dimensiune - 15x20 mm.
Greutate - 5 g


Se potrivește!

Un senzor de vibrații este de asemenea util. Brusc, vor încerca să deschidă mașina cu „forță brută”, sau, în parcare, o altă mașină îți va atinge mașina. Luați senzorul de vibrații SW-420 (reglabil).


Caracteristici principale SW-420

Tensiune de alimentare - 3,3 - 5V
Semnal de ieșire - digital High / Low (normal închis)
Senzor folosit - SW-420
Comparator folosit - LM393
Dimensiuni - 32x14mm
În plus - există o rezistență de reglare.


Se potrivește!

Înșurubați modulul cardului de memorie SD. Vom scrie și un fișier jurnal.


Principalele caracteristici ale modulului cardului de memorie SD

Modulul vă permite să stocați, să citiți și să scrieți pe cardul SD datele necesare funcționării dispozitivului bazat pe microcontroler. Utilizarea dispozitivului este relevantă atunci când se stochează fișiere de la zeci de megaocteți la doi gigaocteți. Placa conține un container pentru card SD, un stabilizator de putere pentru card, o mufă pentru interfață și linii de alimentare. Dacă trebuie să lucrați cu sunet, video sau alte date volumetrice, de exemplu, să păstrați un jurnal al evenimentelor, datele senzorului sau să stocați informații de pe un server web, atunci modulul cardului de memorie SD pentru Arduino va face posibilă utilizarea unui card SD în aceste scopuri. Folosind modulul, puteți studia caracteristicile cardului SD.
Tensiune de alimentare - 5 sau 3,3 V
Capacitate de memorie card SD - până la 2 GB
Dimensiuni - 46 x 30mm


Se potrivește!

Și să adăugăm un servo, când senzorii sunt declanșați, servo cu un video recorder se va întoarce și va filma incidentul. Luați servo MG996R.


Principalele caracteristici ale servo MG996R

Protecție stabilă și fiabilă împotriva daunelor
- Unitate de metal
- Rulment cu bile cu doua randuri
- Lungimea firului 300 mm
- Dimensiuni 40x19x43mm
- Masa 55 gr
- Unghi de rotatie: 120 de grade.
- Viteza de lucru: 0,17 sec / 60 de grade (4,8 V fără sarcină)
- Viteza de lucru: 0,13 sec / 60 grade (6V fără sarcină)
- Cuplu de pornire: 9,4kg/cm la sursa de alimentare de 4,8V
- Cuplu de pornire: 11kg/cm la sursa de alimentare 6V
- Tensiune de lucru: 4,8 - 7,2V
- Toate piesele de antrenare sunt realizate din metal


Se potrivește!

Colectăm

Există o mulțime de articole despre conectarea fiecărui senzor în Google. Și nu am nicio dorință să vin cu biciclete noi, așa că voi lăsa link-uri către opțiuni simple și funcționale.

De asemenea, puteți trimite SMS - mesaje, tot ce aveți nevoie este un modul special Arduino GSM / GPRS SIM900. Această placă de expansiune se potrivește plăcilor comune Arduino UNO, MEGA și Leonardo. Cu ajutorul acestuia, puteți realiza o grămadă de proiecte diferite folosind Internetul GPRS sau accesul la rețeaua GSM. Va funcționa oriunde există o rețea mobilă. Folosind acest modul, poti realiza un sistem de alarma GSM, care, impreuna cu un sistem de supraveghere video, va oferi o protectie excelenta locuintei tale.

Modulul permite utilizarea rețelelor de standarde GSM 850, GSM 900, GSM 1800, GSM 1900 și acceptă protocolul TCP cu acces la rețeaua GPRS.

Arduino GSM modulul SIM900 poate fi folosit si pentru a efectua apeluri, poti atat sa primesti si sa le faci. Pentru a face acest lucru, placa are conectori speciali pentru conectarea unui microfon și a unui difuzor.De asemenea, puteți conecta modulul la un computer și puteți trimite și primi date direct de pe computer. De exemplu, puteți face corespondență în masă către abonații înregistrați pe o cartelă SIM într-un mod automat.

Caracteristici de conectare a plăcii GSM la plăcile Arduino Leonardo și Arduino Mega

Placa de extensie GSM funcționează direct cu Arduino datorită bibliotecii Software Serial. Cu setările standard, pinii digitali nr.2 și nr.3 sunt conectați pentru ca modemul să interacționeze cu Arduino.Aceste setări sunt potrivite pentru Arduino Uno, dar pentru funcționarea corectă a scutului pe Arduino Leonardo sau Arduino Mega, este necesar să se facă corecturi.

Pinul GSM_TX, numit și pinul # 2 pe placa de expansiune, trimite informații către Arduino. Pentru a ști exact în ce moment este necesară citirea informațiilor, Arduino folosește un mecanism de întrerupere: atunci când nivelul semnalului digital se schimbă, în acest pin apare o întrerupere corespunzătoare. Cu toate acestea, în Arduino Leonardo și Arduino Mega pinul # 2 nu acceptă întreruperi.

Pentru ca scutul să funcționeze normal pe Arduino Mega sau Leonardo, nu trebuie să schimbați deloc codul programului, biblioteca în sine schimbă numărul pinului RX al Arduino atunci când selectați modelul corect în meniul „Instrumente” a mediului de dezvoltare.

Arduino Leonardo


Pentru funcționarea corectă cu Leonardo, biblioteca GSM folosește pinul digital nr. 8. Pentru a face acest lucru, pe placa de extensie GSM, conectați pinii digitali nr. 2 și nr. 8 cu un conductor.

Pe partea din spate a plăcii GSM, îndoiți în lateral pinul corespunzător pinului #2, astfel încât acesta să nu intre în contact cu Arduino Leonardo.

Arduino Mega2560


Biblioteca GSM pentru roboții corecti cu Mega folosește pinul digital nr. 10. Pe placa de expansiune GSM, este necesar să închideți pinii digitali nr. 2 și nr. 10 cu un conductor, ca și în cazul Arduino Leonardo. Nu uitați să vă îndoiți în același timp din partea din spate a plăcii GSM către pinul corespunzător pinului nr. 2, astfel încât să nu atingă Arduino Mega.

Arduino este o platformă hardware folosită pentru a crea rapid o varietate de dispozitive electronice, inclusiv cele de securitate. Datorită designului simplu, simplității limbajului de programare, precum și utilizării codurilor deschise, chiar și un neprofesionist poate face independent o alarmă multifuncțională pentru a-și păzi casa, cabana de vară, apartamentul sau garajul. Modulul Arduino GSM va fi cea mai bună opțiune pentru crearea unui sistem de securitate bugetar care poate fi configurat optim pentru un anumit obiect.

Zona de aplicare

Platforma hardware Arduino este utilizată pe scară largă în procesul de creare a diferitelor sisteme și dispozitive electronice care pot primi și procesa semnale de la senzori și senzori analogi sau digitali cu funcționalitate diferită. Rezultatele procesării semnalelor primite pot fi folosite pentru a controla actuatoare externe și sisteme conectate la Arduino.

Un exemplu de utilizare a acestor module în videoclip:

Programare

Platforma hardware Arduino face posibilă interacțiunea eficientă cu mediul controlat printr-o gamă largă de senzori funcționali care pot monitoriza diferiți parametri. Datorită acestui fapt, pe baza unor astfel de platforme, este posibil să se formeze complexe de securitate care vor monitoriza mișcările de-a lungul perimetrului protejat, deschiderea ferestrelor și ușilor și deteriorarea sticlei. Pe lângă senzorii de securitate, pot fi utilizați și senzori de temperatură, senzori de control al scurgerilor de apă sau gaz.

Folosind modulul Arduino GSM cu platforma, informațiile despre un pericol sau o situație de urgență la instalație pot fi livrate proprietarului cât mai repede posibil. În acest scop, se utilizează una dintre rețelele operatorilor de telefonie mobilă.

O caracteristică distinctivă a dispozitivelor Arduino este că microcontrolerul lor poate fi programat de utilizator folosind limbajul Arduino bazat pe Cablare. Datorită acestui fapt, toată lumea poate programa algoritmul pentru funcționarea alarmei de efracție creată, așa cum este necesar pentru un anumit obiect protejat și particularitățile aplicării acestuia.

Beneficiile utilizării

Astăzi există multe platforme hardware și microcontrolere care pot primi informații de la senzori externi, le pot procesa și pot trimite semnale de control către sistemele executive. Platforma Arduino simplifică cât mai mult implementarea proceselor enumerate și are o gamă largă de avantaje față de alte dispozitive de acest gen.

  1. Cost scăzut. Platformele sunt dispozitive destul de ieftine în comparație cu omologii lor, ceea ce nu le afectează în niciun fel funcționalitatea.
  2. Multiplatformă. Software-ul Arduino funcționează eficient pe platforme de operare precum Windows, Linux, Macintosh-OSX.
  3. Ușurință de programare. Pentru configurarea microcontrolerelor se folosește mediul de programare Processing. Este ideal atât pentru utilizatorii profesioniști, cât și pentru utilizatorii fără experiență care lucrează cu dispozitive Arduino.
  4. Capacitate de actualizare. Software-ul specializat Arduino este open source, ceea ce permite utilizatorilor experimentați să îl adapteze la cerințe specifice.

Fiabilitate ridicată a platformei hardware. Plăcile Arduino sunt disponibile cu microcontrolere ATMEGA8 și ATMEGA168 (modele anterioare) și cu controlere ATmega32u4, Atmel ATmega328 (modele mai noi), care sunt foarte funcționale și fiabile.

Principiul de funcționare

Pentru a asigura funcționarea completă a sistemelor de securitate sau a altor dispozitive construite folosind platforme Arduino, trebuie să aveți un modul GSM pentru Arduino. Poate fi folosit pentru a accesa Internetul, a efectua apeluri vocale sau a trimite mesaje SMS.

Placa GSM folosește un modem radio special M10, interacțiunea cu care este asigurată de comenzi AT speciale. Schimbul de informații cu modemul este implementat folosind o interfață serială software care deține coduri digitale.

Modemul GSM folosit în Arduino este un modem cu 4 benzi care poate funcționa pe următoarele frecvențe: GSM 850MHz și 900MHz, PCS1900MHz și DCS1800MHz. Modemul acceptă protocoale precum TCP/UDP și HTTP, care asigură conexiuni prin GPRS. Viteza de transmisie a pachetelor de informații în acest mod va fi de aproximativ 90 kbps.

Trimiterea de SMS-uri prin Arduino și modulul GSM este implementată dacă există o cartelă SIM instalată a unuia dintre operatorii de telefonie celulară."

În plus, va fi posibil să transmiteți mesaje vocale, să efectuați apeluri - acest lucru necesită un microfon suplimentar și un difuzor extern. Instalarea unui card SIM va permite ca Arduino să fie utilizat în modul celular sau GPRS.

Cum se conectează module la arduino

Înainte de a conecta modulul GSM la Arduino, în slotul acestuia trebuie instalată o cartelă SIM adecvată a unuia dintre operatorii de telefonie mobilă. După aceea, modulul este conectat la platforma hardware Arduino în conformitate cu instrucțiunile și se realizează firmware-ul acestuia. În acest scop, se folosește un PC, care este conectat la dispozitiv cu ajutorul unui cablu USB. După încărcarea mediului Arduino, apăsați butonul Încărcare, care va începe procesul de încărcare a software-ului. La finalizarea acestui proces, platforma poate fi deconectată de la computer și alimentată de un sistem de alimentare extern.

Caracteristicile comparative ale modulelor GSM

Piața de consum are o selecție largă de module GSM diferite pentru Arduino. Mai jos sunt principalele caracteristici ale celor mai populare.

Neoway M590

Modulul Arduino GSM M590 este un dispozitiv de comunicație fără fir folosit pentru a primi și transmite informații în rețelele mobile. Modulul acestei serii este creat pe o placă cu bandă minimă și este poziționat ca modul GSM pentru platforma hardware Arduino.

Folosind acest dispozitiv, puteți stabili o comunicare mobilă cu un telefon extern, puteți trimite mesaje SMS, puteți face schimb de informații conform standardului GPRS Class-10. Modulul acestui design nu are o intrare pentru microfon, ceea ce limitează capacitatea de a primi comunicații vocale - se poate stabili o conexiune, dar sunetul nu va fi transmis.

M590 este controlat de comenzi AT prin comunicare serială. Frecvențele de la 900 MHz la 1800 MHz sunt utilizate ca frecvențe radio de lucru. Tensiunea de alimentare este în intervalul 3,3 ... 5 V. Prin urmare, modulul Neoway M590 GSM este conectat la Arduino printr-un convertor special de tensiune 5 V „3,3 V.

Modul GSM SIM800L

Modulul Compact Sim800l GPRS GSM se referă la dispozitivele care sunt utilizate pentru a susține comunicațiile mobile. Modulul este construit pe bezea SIM-800L, creata de SIMCom Wireless Solutions si este conceput pentru a oferi servicii serviciilor retelelor de informatii GPRS\GSM, folosind frecvente de la 850 MHz la 1900 MHz. Poate fi folosit pentru a trimite mesaje SMS, a efectua apeluri și a face schimb de informații prin canale GPRS.

Modulul GSM este completat cu o antenă; dacă trebuie să îmbunătățiți nivelul semnalului, puteți utiliza antene suplimentare. Pentru a controla modulul, se poate folosi un PC, conectat printr-o placă specială pentru convertirea interfețelor USB-UART, sau direct prin UART în sine. Dacă utilizați modulul Sim800l GPRS GSM , conexiunea la Arduino trebuie implementată printr-un convertor de nivel logic. Acest lucru se datorează faptului că în SIM800L valoarea tensiunii la un nivel logic ridicat este de 2,8 V, iar în Arduino - 3,3 ... 5 V.

GPRS Shield de la Seeed Studio

Conectarea modulului GSM la Arduino va oferi posibilitatea de a utiliza tehnologiile de schimb de date GSM / GPRS, precum și de a efectua apeluri și de a trimite mesaje SMS. Dispozitivele de acest tip sunt construite folosind modulul SIMCom SIM900. Au un slot pentru instalarea unei cartele SIM, un conector pentru o antenă externă, un set de mufe de 3,5 mm pentru intrare și ieșire audio. Arduino GSM Shield este controlat și operat folosind conexiuni seriale și un set de comenzi AT specializate.

Acest modul este o placă specială folosită pentru a controla dispozitivele digitale de la distanță, precum și pentru a face schimb de informații. Utilizarea SIM900 permite Arduino să funcționeze folosind tehnologii GSM / GPRS, oferind comunicare vocală, trimitere SMS și schimb de date folosind rețelele celulare și mobile.

Pentru funcționarea acestui modul, la acesta sunt conectate un controler de control, o sursă de alimentare, o antenă și este instalată și o cartelă SIM a unui operator de telefonie mobilă. Folosind jumperi speciali, este configurată metoda de schimb de date cu controlerul. Dacă este necesar, puteți conecta un difuzor și un microfon.

Top articole similare

AT + CMGF = 1 Incl. modul text (SMS numai în latină)
AT + CSCS = „GSM” Incl. regim
AT + CLIP = 1 activați identificarea numărului de apel primit
Dacă trimiteți o comandă cu 0, identificarea numărului va fi dezactivată și modulul va trimite doar mesajul „SONERI” în loc de numărul apelantului.
AT + CMGS = „+ 79123456789” Se trimite SMS
ATI Obțineți informații despre dispozitiv
AT + IPR = 19200 setarea vitezei portului
AT + GSN va returna IMEI-ul modulului
AT + CCLK? citiți ora din modul
AT + CCLK = „aa/mm/zz, hh: mm: ss + zz” unde „an/lună/data, ora: minute: secunde + fus orar” sunt în ordine. Datele trebuie trimise cu zerouri la început, adică, de exemplu, dacă luna pe care o avem este „4”, atunci „04” trebuie fi trimis.
Puteți reveni la ora și data curente trimițând aceeași comandă, doar cu semnul „?”:
AT + CMEE = 0 nivelul de informații despre eroare. Poate fi de la 0 la 2.
0 - dezactivat. Va scrie doar EROARE.
1 - cod de eroare. Va returna un cod de eroare numeric.
2 - descrierea erorii. Va scrie exact ce nu-i place la echipă.
Pentru a lucra cu modulul prin terminal, este mai convenabil să utilizați ATV1, ATE1 AT + CMEE = 2 moduri, pentru a comunica cu microcontrolerul este mai bine să utilizați ATV0, ATE0 și AT + CMEE = 0 - acest lucru îl va face mai ușor de procesat răspunsurile primite.
Aceste setări nu sunt salvate după ce modulul este repornit, de aceea este necesar să includeți aceste comenzi în codul programului.
AT + CSQ informații despre calitatea semnalului.
Modulul va returna două numere + CSQ: 17.0
17 - nivelul semnalului. Poate fi în intervalul 0..31 sau 99. Cu cât mai mult, cu atât mai bine, dar 99 înseamnă absența lui.
0 - rata de eroare de comunicare (așa-numita RXQUAL). Poate fi de la 0 la 7, cu cât numărul este mai mic, cu atât calitatea conexiunii este mai bună.
AT + COPS? informații despre operatorul în a cărui rețea este înregistrat modulul
ATD + 79121234567; formarea unui număr. (";" neapărat)
Modulul va apela numărul specificat și va returna una dintre opțiuni
OCUP - numărul este ocupat
FĂRĂ TON DE DIALTON - fără semnal pe linie
FĂRĂ CARRIER - fără rețea sau altă problemă (de exemplu, nu există bani în cont)
RĂSPUNS NA - nici un răspuns
CONECTAȚI - există un contact!
AT + CMGR = 3,0