SMS radič založený na SIM800L

Pin
Send
Share
Send


SIM800L V2.0 GSM / GPRS je štvorpásmový modul GSM / GPRS kompatibilný s Arduino. Modul sa používa na implementáciu funkcií GSM (volania a SMS) a GPRS. Výhodou tohto modulu je rozhranie TTL s napätím 5 V, ktoré vám umožňuje priame pripojenie k Arduino alebo inému systému s 5 V napájaním. Väčšina modulov GSM / GPRS na trhu vyžaduje pripojenie regulátora alebo konverziu úrovne, zatiaľ čo v karte SIM800L V.2 GSM / GPRS nevyžaduje ďalšie prevodné obvody úrovne rozhrania.
Toto je ukážkový projekt využívajúci SIM800L V.2 GSM / GPRS. Zmyslom projektu je ovládať spínače pomocou SMS kontroléra. Väčšinu domácich spotrebičov v domácnosti, ako je napríklad lama, ventilátor atď., Môžete ľahko zapnúť a vypnúť.

Vlastnosti modulu GSM / GPRS SIM800L V.2


Nižšie sú uvedené všetky technické špecifikácie modulu SIM800L V.2 GSM / GPRS:
  • TTL sériové rozhranie kompatibilné s 3,3 V a 5 V mikrokontroléry kompatibilné s Arduino.
  • Modul SIM800L má sériové rozhranie TTL.
  • Zástrčka antény
  • Podpora siete: štyri pásma 850/900/1800/1900 MHz, schopné uskutočňovať hovory, SMS a prenos dát s výrazne zníženou spotrebou batérie.
  • Rozhranie VDD TTL UART, takže môžete priamo pripojiť MCU, ako je 51MCU, ARM alebo MSP430. Zástrčka VDD použitá na vyrovnanie napätia TTL.
  • Model: SIMCOM SIM800L
  • Pracovné napätie: od 3,7 do 5 V;
  • rozmery: 40 mm x 28 mm x 3 mm
  • Multislotová trieda GPRS 12/10
  • GPRS Batch Service Class B
  • Zodpovedá fáze GSM 2/2 +
  • Trieda 4 (2 watty @ 850/900 MHz)
  • Trieda 1 (1 Wat @ 1800/1900 MHz)

Požadované materiály


Budete potrebovať:


1. Modul SIM800L V.2 GSM / GPRS.
2. Arduino Uno.
3. 4-kanálový 5-voltový reléový modul.
4. Drôty - prepojky.
5. Napájanie 5 V.
(Aktívne odkazy na obchod na kúpu)

Montáž a konfigurácia


Po pripojení všetkých komponentov vytvorte program a potom si ho stiahnite do svojho Arduina. Najskôr však musíte nainštalovať knižnicu GPRS, ktorú si môžete stiahnuť:
gprs.zip 28,02 Kb (stiahnuté: 509)

Programový kód pre Arduino


Po pripojení SIM800L, 4-kanálového reléového modulu a Arduina k počítaču zadajte nižšie uvedený kód a máte hotovo.
#include #include #define TIMEOUT 5000 #define AKTÍVNE NÍZKÉ #definovať VYSOKÉ Bajtové relé = {A0, A1, A2, A3}; byte StatRelay4; char buffNumber20; char currentLine500 = ""; int currentLineIndex = 0; bool nextLineIsMessage = false; String answerNumber = "089510863958"; GPRS gprs; void setup () {for (int i = 0; i >> Automatické čítanie SMS "); gprs.preInit (); delay (1000); zatiaľ čo (0! = gprs.init ()) {delay (1000); Serial .print ("init errorrn");} // Správa správy do režimu ASCII, ak (0! = gprs.sendCmdAndWaitForResp ("AT + CMGF = 1rn", "OK", TIMEOUT)) {ERROR ("ERROR: CNMI") ; return;} // Čítať prichádzajúce SMS, ak (0! = gprs.sendCmdAndWaitForResp ("AT + CNMI = 1,2,0,0,0rn", "OK", TIMEOUT)) {ERROR ("CHYBA: CNMI") ; return;} int pjg = answerNumber.length () + 1; buffNumberpjg; answerNumber.toCharArray (buffNumber, pjg); Serial.print ("Poslať odpoveď na číslo =>"); Serial.println (buffNumber); Serial.println („Inicializácia bola dokončená“); Serial.println („========================================== ========================))} void loop () {// Zmena stavu Relé ON / OFF for (int i = 0; i 0) {if (nextLineIsMessage) {Serial.println (lastLine); // ========================================= ============================ >> >> Funkcia ovládača relé // Ovládač relé 1, ak (lastLine.indexOf („Relé 1 ZAPNUTÉ“) ")> = 0) {StatRelay0 = Aktif; Serial.print („Odpovedať ==== >>>>“); Serial.println („Stav relé 1 aktívny“); gprs.sendSMS (buffNumber, "Relay 1 Status Active"); } inak, ak (lastLine.indexOf ("Relé 1 VYP.")> = 0) {StatRelay0 = MATI; Serial.print („Odpovedať ==== >>>>“); Serial.println ("Stav relé 1 vyp."); gprs.sendSMS (buffNumber, "Relé 1 Status Off"); } // Ovládač relé 2, ak (lastLine.indexOf ("Relé 2 ON")> = 0) {StatRelay1 = AKTIF; Serial.print („Odpovedať ==== >>>>“); Serial.println („Stav relé 2 aktívny“); gprs.sendSMS (buffNumber, "Relay 2 Status Active"); } inak ak (lastLine.indexOf ("Relé 2 VYPNUTÉ")> = 0) {StatRelay1 = MATI; Serial.print („Odpovedať ==== >>>>“); Serial.println ("Stav relé 2 vyp."); gprs.sendSMS (buffNumber, "Relé 2 Status Off"); } // Ovládač relé 3, ak (lastLine.indexOf ("Relé 3 ON")> = 0) {StatRelay2 = AKTIF; Serial.print („Odpovedať ==== >>>>“); Serial.println („Stav relé 3 aktívny“); gprs.sendSMS (buffNumber, "Relay 3 Status Active"); } inak ak (lastLine.indexOf ("Relé 3 VYP.")> = 0) {StatRelay2 = MATI; Serial.print („Odpovedať ==== >>>>“); Serial.println ("Stav relé 3 vyp."); gprs.sendSMS (buffNumber, "Relé 3 Status Off"); } // Ovládač relé 4, ak (lastLine.indexOf ("Relé 4 ON")> = 0) {StatRelay3 = AKTIF; Serial.print („Odpovedať ==== >>>>“); Serial.println („Stav relé 4 aktívny“); gprs.sendSMS (buffNumber, "Relay 1 Status Active"); } inak, ak (lastLine.indexOf ("Relé 4 VYP.")> = 0) {StatRelay3 = MATI; Serial.print („Odpovedať ==== >>>>“); Serial.println ("Stav relé 4 vyp."); gprs.sendSMS (buffNumber, "Relé 4 Status Off"); } nextLineIsMessage = false; } // =============================================== =====================}}} // Vymazať pole char pre nasledujúci riadok čítania pre (int i = 0; i <sizeof (currentLine); ++ i) {currentLinei = (char) 0; } currentLineIndex = 0; } else {currentLinecurcurrentLineIndex ++ = lastCharRead; }}}

Kontrola zariadenia


Tento nástroj funguje tak, že pošle SMS na SIM800L so špecifickou postupnosťou znakov. Napríklad na aktiváciu relé 1 použite príkaz „Relé 1 zapnuté“ a na jeho vypnutie použite príkaz „Relé 1 VYPNUTÉ“. Ostatné relé majú takmer rovnaké príkazy, s výnimkou sériového čísla každého relé, s ktorým chcete pracovať. Po automatickom odoslaní správy odošle SIM800 odpoveď vo forme stavovej správy pre každú SIM kartu.

Zostava videa, konfigurácia a overenie zariadenia



Pôvodný článok v angličtine

Pin
Send
Share
Send