Bezdrátová nástěnka je pro tento projekt velmi selektivním pojmem, protože má spíše široký rozsah než pouhou nástěnku. Nejprve bychom měli pochopit účel tohoto projektu, v tomto systému můžeme zobrazit zprávu nebo upozornění na nějaké zobrazovací zařízení, jako je LCD, a tuto zprávu lze snadno nastavit nebo změnit odkudkoli na světě, pouze pomocí SMS zařízení vašeho mobilní telefon. Bez ohledu na to, co chceme zobrazit, stačí odeslat SMS daného textu s nějakou předponou a příponou.
To je velmi užitečné v hotelech, obchodních domech, na vysokých školách, v kancelářích a lze je použít kdekoli, dokonce i doma. Stejně jako můžete nastavit zprávu jako „Nerušit“ u brány v hotelovém pokoji, můžete nastavit zprávu na domovských dveřích, když jste pryč, a samozřejmě se používá jako nástěnka ve školách, na vysokých školách, v kinech atd. A ano, nejde jen o jednoduchou nástěnku, užitečnost tohoto projektu spočívá v tom, že můžete nastavit nebo změnit zprávu nebo upozornění odkudkoli, stačí posílat SMS z telefonu. Můžete také zkontrolovat podobný projekt, ale na jiném typu displeje: Arduino Scoreboard pomocí Outdoor P10 LED Matrix Display.
Dříve jsme pro zabezpečení domácnosti a dálkové ovládání domácích spotřebičů využívali zařízení SMS mobilního telefonu: PIR senzor a zabezpečovací systém založený na GSM a domácí automatizaci založenou na GSM pomocí Arduina
Zloženie: 100% bavlna.
Pracovní vysvětlení:
V tomto projektu se Arduino UNO používá pro řízení celého procesu, GSM modul (SIM900A) pro příjem SMS / zprávy odeslané z mobilního telefonu a LCD pro zobrazení zprávy.
Můžeme vám prostřednictvím SMS zaslat nějakou zprávu nebo oznámení jako „#Circuit Digest *“, „#We vítáme vás *“. Zde jsme použili předponu v řetězci zprávy, která je '#'. Tato předpona se používá k identifikaci začátku zprávy nebo oznámení. A '*' se používá jako přípona k označení konce zprávy nebo oznámení.
Když posíláme SMS z mobilního telefonu do GSM modulu, GSM přijme tuto SMS a odešle ji Arduinu. Nyní Arduino čte tuto SMS a extrahuje hlavní upozornění z přijatého řetězce a ukládá jej do jiného řetězce. A poté pomocí příslušných příkazů odešle extrahovanou zprávu na 16x2 LCD.
Další fungování tohoto systému je vysvětleno v části „Popis kódu“ níže. Než se dostaneme k podrobnostem programování, měli bychom vědět o GSM modulu.
GSM modul:
GSM modul se používá v mnoha komunikačních zařízeních založených na technologii GSM (Global System for Mobile Communications). Používá se k interakci se sítí GSM pomocí počítače. GSM modul rozumí pouze AT příkazům a může podle toho reagovat. Nejzákladnějším příkazem je „AT“, pokud je GSM v pořádku, pak funguje dobře, jinak odpovídá „CHYBOU“. Existují různé AT příkazy jako ATA pro přijetí hovoru, ATD pro vytočení hovoru, AT + CMGR pro přečtení zprávy, AT + CMGS pro odeslání SMS atd. Po AT příkazech by měl následovat Carriage return tj. \ 0 (0D v hex), jako „AT + CMGS“. Modul GSM můžeme použít pomocí těchto příkazů:
ATE0 Pro vypnutou ozvěnu
AT + CNMI = 2,2,0,0,0
ATD
AT + CMGF = 1
AT + CMGS = „Číslo mobilního telefonu“
>> Nyní můžeme napsat naši zprávu
>> Po napsání zprávy
Ctrl + Z příkaz k odeslání zprávy (26 v desítkové soustavě).
ENTER = 0x0d v HEX
SIM900 je kompletní Quad-band GSM / GPRS modul, který přináší GSM / GPRS 850/900/1800 / 1900MHz výkon pro hlasová volání, SMS a data s nízkou spotřebou energie.
Popis obvodu:
Připojení bezdrátové nástěnky pomocí GSM a Arduino je jednoduché a je znázorněno na obrázku níže. Zde se displej z tekutých krystalů (LCD) používá k zobrazení „upozornění“ nebo zprávy, která se odesílá prostřednictvím mobilního telefonu jako SMS. Datové piny LCD, jmenovitě RS, EN, D4, D5, D6, D7, jsou připojeny k digitálnímu pinu arduino číslo 7, 6, 5, 4, 3, 2. A piny Rx a Tx GSM modulu jsou přímo připojeny k Tx a Rx pin Arduina, resp. A modul GSM je napájen pomocí 12voltového adaptéru.
Popis kódu:
Kód programu je snadno srozumitelný; nová věc je zde GSN inicializační funkce gsm_init (), která je vysvětlena na konci.
V programu nejprve zahrneme knihovnu pro displej z tekutých krystalů (LCD) a poté definujeme datové a kontrolní piny pro LCD a některé proměnné.
#zahrnout
Poté je sériová komunikace inicializována na 9600 b / s a udává směr použitému kolíku. A inicializujte GSM modul v instalační smyčce.
void setup () {lcd.begin (16,2); Serial.begin (9600); pinMode (led, OUTPUT); digitalWrite (led, HIGH); lcd.print ("GSM inicializace…"); gsm_init (); lcd.setCursor (0,0); lcd.print („Oznámení o bezdrátovém připojení“);
Pro sériový příjem dat používáme dvě funkce, jedna je Serial.available, která kontroluje, zda přicházejí nebo nepřicházejí sériová data, a druhá je Serial.read, která čte data, která přicházejí sériově.
void serialEvent () {while (Serial.available ()) {char ch = (char) Serial.read (); str = ch; if (ch == '*') {temp = 1; lcd.clear (); lcd.print ("Zpráva přijata"); zpoždění (1000); }}}
Po sériovém přijetí dat je uložíme do řetězce a tento řetězec je zkontrolován na '#' a '*', abychom našli začátek a konec Oznámení nebo zprávy. Nakonec se oznámení vytiskne na LCD pomocí lcd.print:
void loop () {for (unsigned int t = 0; t <60000; t ++) {serialEvent (); if (teplota == 1) {x = 0, k = 0, teplota = 0; while (x
Zde je důležitá inicializační funkce 'gsm_init () ' pro GSM, kde nejprve je GSM modul zkontrolován, zda je připojen nebo ne zasláním příkazu 'AT' do GSM modulu. Pokud je odpověď v pořádku, znamená to, že je připravena. Systém neustále kontroluje modul, dokud nebude připraven nebo dokud nebude přijato „OK“. Poté se ECHO vypne odesláním příkazu ATE0, jinak GSM modul ozve všechny příkazy. Nakonec se dostupnost sítě zkontroluje pomocí „AT + CPIN?“ příkaz, pokud je vložená karta SIM karta a je přítomen PIN, dává odpověď + CPIN: PŘIPRAVENO. Toto se také opakovaně kontroluje, dokud není nalezena síť. To lze jasně pochopit na videu níže.
void gsm_init () {lcd.clear (); lcd.print ("Vyhledávací modul.."); boolean at_flag = 1; while (at_flag) {Serial.println ("AT"); while (Serial.available ()> 0) {if (Serial.find ("OK")) at_flag = 0; } zpoždění (1 000); }