Obsah:
- Krok 1: Napájanie
- Krok 2: Digitálne vstupy
- Krok 3: Digitálne výstupy
- Krok 4: Oscilátor mikroovládača
- Krok 5: Indikačné LED diódy
- Krok 6: Obvod resetovania mikroprocesora
- Krok 7: Modul SIM800L
- Krok 8: Mikroprocesor
- Krok 9: Optimalizácia pamäte SRAM
- Krok 10: Veľkosť sériovej vyrovnávacej pamäte softvéru
- Krok 11: Výroba dosky PC
- Krok 12: Montáž dosky PC
- Krok 13: Programovanie AtMega328p
- Krok 14: Pripojenie jednotky
- Krok 15: Počiatočné nastavenie
- Krok 16: Príkazy SMS
Video: Diaľkové ovládanie GSM/SMS na báze Arduino: 16 krokov (s obrázkami)
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:59
! ! ! N O T I C E! !
Vzhľadom na to, že v mojej oblasti sa aktualizuje miestna mobilná veža, už nemôžem používať tento modul GSM. Novšia veža už nepodporuje zariadenia 2G. Preto už nemôžem tomuto projektu poskytnúť žiadnu podporu.
S tak širokou škálou GSM modulov, ktoré sú k dispozícii pre domácich majstrov, väčšina z nás skončila s kúpou jedného. Kúpil som si modul SIM800L lokálne a skončil som sa s rôznymi príkazmi modulu.
Pomocou Arduino Uno a Arduino IDE som dokázal svoje nápady premeniť na skutočnosť. To nebolo jednoduché, pretože SINGLE BIGGEST ISSUE je obmedzenie iba na 2 kB SRAM. Po mnohých výskumoch na internete a rôznych fórach som dokázal toto obmedzenie prekonať.
Tento projekt zachránili rôzne programovacie techniky, oveľa lepšie porozumenie kompilátoru Arduino a použitie SIM karty a EEPROM na dodatočnú pamäť. Po niekoľkých zmenách v kóde bol stabilný prototyp zostavený a testovaný počas jedného týždňa.
Nevýhodou obmedzeného SRAM bolo, že jednotka nemohla byť vybavená displejom a užívateľskými klávesmi. Výsledkom bolo úplné prepísanie kódu. Bez používateľského rozhrania zostala jedinou možnosťou, ako pokračovať v projekte, použitie správ SMS na konfiguráciu jednotky a tiež používateľov.
Ukázalo sa, že je to vzrušujúci projekt a ako vývoj pokračoval, pribudli ďalšie futures.
Mojím hlavným cieľom bolo držať sa Arduino Uno, alebo v tomto prípade ATMEGA328p, a nepoužívať žiadne komponenty pre povrchovú montáž. Široká verejnosť tak bude jednoduchšie kopírovať a stavať jednotku.
Špecifikácia jednotky:
- Na jednotke je možné naprogramovať maximálne 250 používateľov
- Štyri digitálne výstupy
- Štyri digitálne vstupy
- Každý výstup môže byť nakonfigurovaný ako výstup PULSE alebo ON/OFF
- Trvanie výstupného impulzu je možné nastaviť medzi 0,5 … 10 sekundami
- Každý vstup je možné nakonfigurovať tak, aby spúšťal zmeny VYPNUTÉ a ZAPNUTÉ.
- Každý vstup je možné nakonfigurovať tak, aby spúšťal zmeny ON a OFF
- Každý čas oneskorenia vstupu je možné nastaviť od 0 sekúnd do 1 hodiny
- SMS správy o zmenách na vstupoch je možné odoslať 5 rôznym používateľom
- Názvy a stavový text pre každý vstup môže nastaviť používateľ
- Názvy a stavový text pre každý výstup môže nastaviť užívateľ
- Jednotku je možné nakonfigurovať na príjem správ o zostatku na karte SIM prostredníctvom správ USSD.
- Všetci používatelia môžu požadovať aktualizácie stavu I/O jednotky
- Všetci používatelia môžu ovládať jednotlivé výstupy prostredníctvom správ SMS
- Každý užívateľ môže ovládať jednotlivé výstupy volaním jednotky
Bezpečnostné prvky
- Počiatočné nastavenie jednotky je možné vykonať iba vtedy, keď ste v jednotke.
- Počiatočné nastavenie môže vykonať iba MASTER USER
- Príkazy na počiatočné nastavenie sa automaticky deaktivujú po desiatich minútach.
- Jednotku môžu ovládať iba hovory a správy SMS od známych používateľov
- Používatelia môžu obsluhovať iba výstupy, ktoré im priradil MASTER USER
Ďalšie vlastnosti
- Hovory na toto zariadenie sú bezplatné, pretože na tento hovor nikto neprijme.
- Po zavolaní jednotky sa hovor preruší až po 2 sekundách. Toto je potvrdenie volajúcemu, že jednotka reagovala na volanie.
- Ak poskytovateľ služieb SIM karty podporuje správy USSD, zisťovanie zostatku môže vykonať MASTER USER. Správa USSD obsahujúca zostatok bude potom preposlaná MASTER USER.
Krok 1: Napájanie
Aby bolo možné jednotku pripojiť k štandardným bezpečnostným systémom (poplašné systémy, elektrické garážové brány, motory elektrických brán), bude jednotka napájaná z 12 V DC, ktoré je v týchto systémoch bežne k dispozícii.
Napájanie je dodávané na svorkách 12V IN a 0V a je chránené poistkou 1A. K dispozícii sú ďalšie svorky 12V OUT, ktoré sú tiež chránené poistkou.
Dióda D1 chráni jednotku pred zapojením opačnej polarity na 12 V linkách.
Kondenzátory C1 a C2 filtrujú všetok hluk prítomný na napájacích vedeniach 12V. Napájanie 12 V slúži na napájanie relé jednotky.
Napájanie 5 V pozostáva z regulátora napätia LM7805L a stabilného výstupu +5 V je potrebných pre modul GSM SIM800L a mikroprocesor. Kondenzátory C3 a C4 filtrujú všetok hluk, ktorý môže byť prítomný na napájacom vedení +5V. Použili sa relatívne veľké elektrolytické kondenzátory, pretože modul GSM800800 používa pri prenose dosť energie.
Na regulátore napätia nie je potrebný žiadny chladič.
Krok 2: Digitálne vstupy
Všetky digitálne vstupné signály sú 12 V a musia byť prepojené s 5 V mikroradičom. Na tento účel sa používajú optické spojky na izoláciu 12 V signálov zo systému 5 V.
Vstupný odpor 1 kB obmedzuje vstupný prúd do optočlenu na približne 10 mA.
Vzhľadom na priestorové obmedzenia nebol na doske PC k dispozícii žiadny priestor pre 5V výsuvné odpory. Mikroprocesor je nastavený tak, aby umožňoval slabým vyťahovaniam vstupných pinov.
Bez signálu na vstupe (NÍZKY) optočlenu nebude cez diódu LED optočlena prechádzať žiadny prúd. Preto je tranzistor opto spojky vypnutý. Slabé vytiahnutie mikroovládača vytiahne kolektor takmer na 5 V a bude ho mikrořadič považovať za logický VYSOKÝ.
Pri použití 12 V (HIGH) na vstup optočlenu prejde LED diódou opto spojky približne 10 mA. Preto bude tranzistor opto spojky zapnutý. Tým sa kolektor stiahne na takmer 0 V a mikrokontrolér ho bude považovať za logický NÍZKY.
Všimnite si toho, že vstup videný mikrokontrolérom je obrátený v porovnaní so vstupom 12V.
Normálny kód na čítanie vstupného kolíka vyzerá takto:
booleovský vstup = digitalRead (vstupný kolík);
Na opravu invertovaného signálu použite nasledujúci kód:
booleovský vstup =! digitalRead (vstupný kolík); // POZOR! pred čítaním
Teraz vstup videný mikrokontrolérom bude zodpovedať vstupu na vstupe 12V.
Konečný vstupný obvod pozostáva zo 4 digitálnych vstupov. Každý vstup je pripojený k svorkám na doske PC.
Krok 3: Digitálne výstupy
Za normálnych okolností, keď obvod poháňa iba minimálny počet relé, je najlepším spôsobom použiť obvod budiča tranzistora, ako je to znázornené. Je to jednoduché, lacné a efektívne.
Rezistory poskytujú obmedzenie prúdu na zem a obmedzenie prúdu tranzistora. Tranzistor sa používa na zvýšenie prúdu dostupného na pohon relé. Tranzistor, ktorý odoberá z kolíka mikroovládača iba 1 mA, dokáže prepnúť záťaž 100 mA. Viac ako dosť pre väčšinu typov relé. Dióda je fly-back dióda, ktorá chráni obvod pred špičkami vysokého napätia počas reléového spínania. Ďalšou výhodou použitia tohto obvodu je, že prevádzkové napätie relé sa môže líšiť od napätia mikrokontroléra. Namiesto použitia 5V relé je teda možné použiť akékoľvek jednosmerné napätie až do 48V.
Predstavujeme ULN2803
Čím viac relé projekt požaduje, tým vyšší je počet komponentov. To sťaží návrh DPS a môže zaberať cenný priestor na DPS. Použitie tranzistorového poľa, ako je ULN2803, však určite pomôže udržať malú veľkosť dosky plošných spojov. ULN2803 je ideálne vhodný pre vstupy 3,3 V a 5 V z mikrokontroléra a môže napájať relé až do 48 V DC. Tento ULN2803 má 8 samostatných tranzistorových obvodov, každý obvod je vybavený všetkými komponentmi potrebnými na spínanie relé.
Konečný výstupný obvod pozostáva z ULN3803, poháňajúceho 4 výstupné relé 12V. Každý kontakt relé je k dispozícii na svorkách dosky PC.
Krok 4: Oscilátor mikroovládača
Obvod oscilátora
Mikroprocesor potrebuje na správnu funkciu oscilátor. Aby sa dodržal dizajn Arduino Uno, obvod bude využívať štandardný 16MHz oscilátor. K dispozícii sú dve možnosti:
Kryštál
Táto metóda používa kryštál pripojený k dvom zaťažovacím kondenzátorom. Toto je najbežnejšia možnosť.
Rezonátor
Rezonátor je v zásade kryštál a dva zaťažovacie kondenzátory v jednom 3-kolíkovom balení. To znižuje množstvo komponentov a zvyšuje dostupný priestor na doske PC.
Aby bol počet komponentov čo najmenší, rozhodol som sa použiť 16MHz rezonátor.
Krok 5: Indikačné LED diódy
Čo bude akýkoľvek obvod bez niektorých diód LED? Na doske PC boli zaistené 3 mm diódy LED.
Rezistory 1K sa používajú na obmedzenie prúdu LED diódami na menej ako 5 mA. Pri použití 3 mm vysoko jasných diód LED je jas vynikajúci.
Na jednoduchú interpretáciu stavových LED diód sa používajú dve farby. Kombináciou dvoch diód LED s blikajúcimi indikáciami je možné získať veľa informácií iba z dvoch diód LED.
Červená LED
Červená LED dióda slúži na označenie poruchových stavov, dlhých oneskorení alebo nesprávnych príkazov.
Zelená LED
Zelená LED dióda sa používa na označenie zdravých a/alebo správnych vstupov a príkazov.
Krok 6: Obvod resetovania mikroprocesora
Z bezpečnostných dôvodov sú niektoré funkcie jednotky dostupné iba počas prvých 10 minút po zapnutí jednotky.
Na resetovanie jednotky pomocou tlačidla reset nie je potrebné vypnúť napájanie jednotky.
Ako to funguje
Rezistor 10K udrží líniu RESET blízko 5V. Keď je tlačidlo stlačené, linka RESET bude vytiahnutá na 0V, čím sa mikroprocesor resetuje. Po uvoľnení tlačidla sa riadok RESET vráti do %v, čím sa obnoví mikroovládač.
Krok 7: Modul SIM800L
Srdcom jednotky je GSM modul SIM800L. Tento modul používa iba 3 I/O piny na mikroovládači.
Modul je prepojený s mikroprocesorom prostredníctvom štandardného sériového portu.
- Všetky príkazy do jednotky sa odosielajú cez sériový port pomocou štandardných príkazov AT.
- Pri prichádzajúcom hovore alebo pri prijatí SMS sa informácie odošlú do mikrokontroléra cez sériový port pomocou textu ASCII.
Aby sa ušetril priestor, modul GSM je k doske PC pripojený pomocou 7-kolíkového konektora. Demontáž modulu GSM je tak jednoduchá. Užívateľovi to tiež umožní ľahko vložiť/vybrať SIM kartu v spodnej časti modulu.
Vyžaduje sa aktívna SIM karta a SIM karta musí byť schopná odosielať a prijímať SMS správy.
Nastavenie GSM modulu SIM800L
Pri zapnutí jednotky sa resetovací kolík modulu GSM na sekundu stiahne nadol. To zaisťuje, že sa modul GSM spustí až po stabilizácii napájania. Reštartovanie modulu GSM trvá niekoľko sekúnd, takže pred odoslaním akýchkoľvek AT príkazov do modulu počkajte 5 sekúnd.
Aby sa zabezpečilo, že modul GSM je nakonfigurovaný tak, aby správne komunikoval s mikroradičom, počas spustenia sa používajú nasledujúce AT príkazy:
AT
slúži na zistenie, či je k dispozícii modul GSM
AT+CREG?
Polling tento príkaz, kým nie je modul GSM zaregistrovaný v mobilnej sieti
AT+CMGF = 1
Nastavte režim správ SMS na ASCII
AT+CNMI = 1, 2, 0, 0, 0
Ak je k dispozícii SMS, pošlite podrobnosti o SMS na sériový port modulu GSM
AT+CMGD = 1, 4
Odstráňte všetky správy SMS uložené na karte SIM
AT+CPBS = / "SM
Telefónny zoznam modulu GSM nastavte na kartu SIM
AT+COPS = 2, potom AT+CLTS = 1, potom AT+COPS = 0
Nastaviť čas modulu GSM na čas mobilnej siete
Počkajte 5 sekúnd, kým sa nastaví čas
AT+CUSD = 1
Povoliť funkciu správ USSD
Krok 8: Mikroprocesor
Mikroprocesor je štandardný AtMega328p, rovnaký ako je použitý na Arduino Uno. Kód je teda porovnateľný s oboma. Na umožnenie jednoduchého programovania na doske je na doske PC k dispozícii 6-pólová programovacia hlavička.
Rôzne sekcie jednotky sú pripojené k mikroprocesoru a obsahujú nasledujúce položky:
- Štyri digitálne vstupy
- Štyri digitálne výstupy
- Oscilátor
- Dve indikačné LED diódy
- Resetovací obvod
- GSM modul SIM800L
Všetka komunikácia do a z modulu GSM sa vykonáva pomocou funkcie SoftwareSerial (). Táto metóda bola použitá na uvoľnenie hlavného sériového portu pre Arduino IDE vo fáze vývoja.
S iba 2 kB SRAM a 1 kB EEPROM nie je dostatok pamäte na uloženie viac ako niekoľkých používateľov, ktorých je možné pripojiť k jednotke. Na uvoľnenie pamäte SRAM sú všetky informácie o používateľovi uložené na karte SIM v module GSM. S týmto usporiadaním môže jednotka uspokojiť až 250 rôznych používateľov.
Konfiguračné údaje jednotky sú uložené do EEPROM, čím sa navzájom oddelia užívateľské a systémové údaje.
K dispozícii je ešte niekoľko náhradných I/O pinov, možnosť pridania LCD displeja a/alebo klávesnice však nebola možná kvôli veľkému množstvu pamäte SRAM, ktoré prijímacia a vysielacia vyrovnávacia pamäť SoftWareSerial () používa, Pretože v jednotke chýba akýkoľvek typ používateľského rozhrania, všetky nastavenia a používatelia sú naprogramovaní pomocou správ SMS.
Krok 9: Optimalizácia pamäte SRAM
Celkom na začiatku vývojovej fázy Arduino IDE hlásilo pri zostavovaní kódu nízku pamäť SRAM. Na prekonanie tohto problému bolo použitých niekoľko spôsobov.
Obmedzte údaje prijaté na sériovom porte
Modul GSM nahlási všetky správy sériovému portu mikroovládača. Pri prijatí niektorých správ SMS môže celková dĺžka prijatej správy presiahnuť 200 znakov. To môže rýchlo spotrebovať všetok SRAM dostupný na čipe AtMega a spôsobí to problémy so stabilitou.
aby sa tomu zabránilo, použije sa iba prvých 200 znakov AKEJKOĽVEK správy prijatej z modulu GSM. Nasledujúci príklad ukazuje, ako sa to robí počítaním prijatých znakov v premennej Počítadlo.
// skenovanie údajov zo sériového portu softvéru
// ----------------------------------------------- RxString = ""; Počítadlo = 0; while (SSerial.available ()) {delay (1); // krátke oneskorenie na poskytnutie času na umiestnenie nových údajov do vyrovnávacej pamäte // získanie nového znaku RxChar = char (SSerial.read ()); // pridanie prvých 200 znakov do reťazca if (Counter <200) {RxString.concat (RxChar); Počítadlo = počítadlo + 1; }}
Znižovanie kódu Serial.print ()
Napriek tomu, že je sériový monitor Arduino pri vývoji praktický, môže využiť veľa pamäte SRAM. Kód bol vyvinutý s čo najmenším počtom kódov Serial.print (). Jedna časť kódu bola testovaná, aby fungovala, všetok kód Serial.print () bol odstránený z tejto časti kódu.
Použitie kódu Serial.print (F ((""))
Mnoho informácií, ktoré sa bežne zobrazujú na sériovom monitore Arduino, dáva zmysel, keď sú pridané popisy. Vezmite si nasledujúci príklad:
Serial.println ("Čakanie na konkrétne akcie");
Reťazec „Čakanie na konkrétne akcie“je pevný a nemožno ho zmeniť.
Pri kompilácii kódu kompilátor vloží do pamäte FLASH reťazec „Čakanie na konkrétne akcie“.
Kompilátor navyše vidí, že reťazec je konštanta, ktorý používa inštrukcia „Serial.print“alebo „Serial.println“. Pri bootovaní mikro je táto konštanta umiestnená aj do pamäte SRAM.
Použitím predpony „F“vo funkciách Serial.print () hovorí kompilátoru, že tento reťazec je k dispozícii iba v pamäti FLASH. V tomto prípade reťazec obsahuje 28 znakov. To je 28 bajtov, ktoré je možné uvoľniť v SRAM.
Serial.println (F ("Čakanie na konkrétne akcie"));
Táto metóda platí aj pre príkazy SoftwareSerial.print (). Pretože modul GSM pracuje na príkazoch AT, kód obsahuje množstvo príkazov SoftwareSerial.print („xxxx“). Použitím predpony „F“sa uvoľnilo takmer 300 bajtov pamäte SRAM.
Nepoužívajte hardvérový sériový port
Po ladení kódu bol hardvérový sériový port deaktivovaný odstránením VŠETKÝCH príkazov Serial.print (). Tým sa uvoľnilo niekoľko ďalších bajtov pamäte SRAM.
Bez toho, aby v kóde zostali akékoľvek príkazy Serial.print (), bolo sprístupnených ďalších 128 bajtov pamäte SRAM. To sa uskutočnilo odstránením hardvérového sériového portu z kódu. Tým sa zvýšili nárazníkové vyrovnávacie pamäte pre prenos 64 a 64 bajtov.
// Serial.begin (9600); // hardvérový sériový port deaktivovaný
Použitie EEPROM na reťazce
Pre každý vstup a výstup bolo potrebné uložiť tri reťazce. Sú to názov kanála, reťazec, keď je kanál zapnutý, a reťazec, keď je kanál vypnutý.
S celkom 8 I/O kanálmi budú ich
- 8 reťazcov obsahujúcich názvy kanálov, z ktorých každý má 10 znakov
- 8 reťazcov obsahujúcich kanál v popise, každý o dĺžke 10 znakov
- 8 reťazcov obsahujúcich popis vypnutého kanála, z ktorých každý má 10 znakov
Toto inzeruje až 240 bajtov pamäte SRAM. Namiesto ukladania týchto reťazcov do pamäte SRAM sa ukladajú do pamäte EEPROM. Tým sa uvoľnilo ďalších 240 bajtov pamäte SRAM.
Deklarujúci reťazec so správnou dĺžkou
Premenné sú obvykle uvedené na začiatku kódu. Bežnou chybou pri deklarovaní reťazcovej premennej je, že reťazec nedeklarujeme so správnym počtom znakov.
Reťazec GSM_Nr = "";
Reťazec GSM_Name = ""; Reťazec GSM_Msg = "";
Počas spustenia nebude mikroprocesor alokovať pamäť v SRAM pre tieto premenné. To môže neskôr spôsobiť nestabilitu pri použití týchto reťazcov.
Aby ste tomu zabránili, deklarujte reťazce so správnym počtom znakov, ktoré reťazec použije v softvéri.
Reťazec GSM_Nr = "1000000000";
Reťazec GSM_Name = "2000000000"; Reťazec GSM_Msg = "3000000000";
Všimnite si, ako som nedeklaroval reťazce s rovnakými znakmi. Ak deklarujete všetky tieto reťazce povedzme „1234567890“, kompilátor uvidí rovnaký reťazec v troch premenných a vyhradí dostatok pamäte v SRAM iba pre jeden z reťazcov.
Krok 10: Veľkosť sériovej vyrovnávacej pamäte softvéru
V nasledujúcom kóde si všimnete, že zo sériového portu softvéru je možné prečítať až 200 znakov.
// skenovanie údajov zo sériového portu softvéru
// ----------------------------------------------- RxString = ""; Počítadlo = 0; while (SSerial.available ()) {delay (1); // krátke oneskorenie na poskytnutie času na umiestnenie nových údajov do vyrovnávacej pamäte // získanie nového znaku RxChar = char (SSerial.read ()); // pridanie prvých 200 znakov do reťazca if (Counter <200) {RxString.concat (RxChar); Počítadlo = počítadlo + 1; }}
To vyžaduje vyrovnávaciu pamäť najmenej 200 bajtov aj pre sériový port softvéru. v predvolenom nastavení je vyrovnávacia pamäť softvérového sériového portu iba 64 bajtov. Ak chcete zväčšiť túto vyrovnávaciu pamäť, vyhľadajte nasledujúci súbor:
SoftwareSerial.h
Otvorte súbor v textovom editore a zmeňte veľkosť vyrovnávacej pamäte na 200.
/******************************************************************************
*Definície ************************************** ******************************/ #ifndef _SS_MAX_RX_BUFF #define _SS_MAX_RX_BUFF 200 // veľkosť vyrovnávacej pamäte RX #endif
Krok 11: Výroba dosky PC
Doska PC bola navrhnutá pomocou bezplatnej verzie softvéru Cadsoft Eagle (domnievam sa, že názov sa zmenil).
- Doska PC je jednostranný dizajn.
- Nie sú použité žiadne súčiastky pre povrchovú montáž.
- Všetky komponenty sú namontované na doske PC, vrátane modulu SIM800L.
- Nie sú potrebné žiadne externé komponenty alebo pripojenia
- Drátové prepojky sú ukryté pod komponentmi pre čistejší vzhľad.
Na výrobu dosiek pre PC používam nasledujúcu metódu:
- Obraz PC Board je vytlačený na Press-n-Peel pomocou laserovej tlačiarne.
- Press-n-Peel sa potom položí na čistý kus dosky PC a zaistí sa páskou.
- Obraz dosky PC sa potom prenesie z Press-n-Peel na prázdnu dosku PC prechodom dosky cez laminátor. Mne najlepšie funguje 10 priechodov.
- Potom, čo sa doska PC ochladí na izbovú teplotu, sa Press-n-Peel pomaly zdvihne z dosky.
- Doska PC sa potom leptá pomocou kryštálov síranu amónneho rozpusteného v horúcej vode.
- Po leptaní sa modrý Press-n-Peel a čierny toner odstránia očistením leptanej dosky PC trochou acetónu.
- Doska sa potom rozreže na veľkosť pomocou Dremelu
- Otvory pre všetky diely priechodných otvorov sú vyvŕtané pomocou vrtáka s priemerom 1 mm.
- Skrutkové konektory svoriek sa vŕtajú pomocou 1,2 mm vrtáka.
Krok 12: Montáž dosky PC
Montáž prebieha tak, že najskôr pridáte najmenšie súčiastky a prepracujete sa k tým najväčším.
Všetky komponenty použité v tomto návode, okrem modulu SIM800, pochádzajú od môjho miestneho dodávateľa. Myslí si, že majú vždy zásoby. Pozrite sa na ich juhoafrického webového servera:
www.shop.rabtron.co.za/catalog/index.php
POZNÁMKA! Prvé spájkovanie dvoch prepojok umiestnených pod integrovaným obvodom ATMEGA328p
Poradie je nasledovné:
- Rezistory a dióda
- Tlačidlo reštart
- IC zásuvky
- Regulátor napätia
- Kolíky hlavičky
- Malé kondenzátory
- LED diódy
- Držiak poistky
- Svorkovnice
- Relé
- Elektrolytické kondenzátory
Pred vložením integrovaných obvodov zapojte jednotku na 12 V a skontrolujte, či sú všetky napätia správne.
Nakoniec pomocou nejakého číreho laku zakryte medenú stranu dosky PC, aby ste ju chránili pred živlami.
Keď lak zaschne, vložte integrované obvody, ale modul GSM nechajte, kým sa nenaprogramuje AtMega.
Krok 13: Programovanie AtMega328p
# # Aktualizácia firmvéru na verziu 3.02 # #
Povolené odosielanie SMS správam MASTER USER po obnovení napájania zariadenia
Na programovanie jednotky používam Arduino Uno s programovacím štítom. Ďalšie informácie o tom, ako používať Arduino Uno ako programátora, nájdete v tomto návode:
Arduino UNO ako programátor AtMega328P
Na získanie prístupu k programovacej hlavičke je potrebné odstrániť modul GSM z dosky PC. Pri vyberaní modulu GSM dávajte pozor, aby ste nepoškodili kábel antény.
Pripojte programovací kábel medzi programátor a jednotku pomocou programovacej hlavičky na doske PC a nahrajte náčrt do jednotky.
Externé napájanie 12V nie je potrebné na programovanie jednotky. Doska PC bude napájaná z Arduina pomocou programovacieho kábla.
Otvorte priložený súbor v Arduino IDE a naprogramujte ho do jednotky.
Po programovaní odpojte programovací kábel a vložte modul GSM.
Zariadenie je teraz pripravené na použitie.
Krok 14: Pripojenie jednotky
Všetky pripojenia k jednotke sa vykonávajú pomocou skrutkových svoriek.
Napájanie jednotky
Uistite sa, že ste do modulu GSM vložili zaregistrovanú SIM kartu a že karta SIM dokáže odosielať a prijímať správy SMS.
Pripojte napájanie 12 V DC na vstup 12 V a na ktorýkoľvek z 0V terminálov. Po zapnutí sa rozsvieti červená LED dióda na doske PC. Asi do minúty by sa mal modul GSM pripojiť k mobilnej sieti. Červená LED dióda zhasne a červená LED dióda na GSM module bude rýchlo blikať.
Akonáhle je táto fáza dosiahnutá, jednotka je pripravená na konfiguráciu.
Vstupné pripojenia
Digitálne vstupy fungujú na 12V. Na zapnutie vstupu je potrebné na vstup použiť napätie 12V. Odstránením 12V sa vstup vypne.
Výstupné pripojenia
Každý výstup pozostáva z prepínacieho kontaktu. Zapojte každý kontakt podľa potreby.
Krok 15: Počiatočné nastavenie
Počiatočné nastavenie jednotky je potrebné vykonať, aby sa zaistilo, že všetky parametre sú nastavené na predvolené výrobné hodnoty a že karta SIM je nakonfigurovaná tak, aby prijímala informácie o používateľovi v správnom formáte.
Pretože všetky príkazy sú založené na SMS, budete na vykonanie nastavenia potrebovať ďalší telefón.
Na úvodné nastavenie musíte byť pri jednotke.
Nastavte telefónne číslo MASTER USER
Pretože jednotku môže konfigurovať iba MASTER USER, tento krok je potrebné vykonať ako prvý.
- Jednotka musí byť napájaná.
- Stlačte a uvoľnite tlačidlo Reset a počkajte, kým červená kontrolka LED na doske PC nezhasne.
- LED NET na GSM module bude rýchlo blikať.
- Jednotka je teraz pripravená prijať príkazy úvodného nastavenia. To sa musí vykonať do 10 minút.
- Na telefónne číslo jednotky odošlite SMS správu obsahujúcu MASTER, popis.
- Ak je LED dióda na doske prijatá, dvakrát zabliká.
- MASTER USER je teraz naprogramovaný.
Obnovte výrobné nastavenia jednotky
Po naprogramovaní MASTER USER je potrebné, aby boli nastavenia jednotky nastavené na predvolené hodnoty od výroby.
- Na telefónne číslo jednotky odošlite SMS správu s iba CLEARALL.
- V prípade prijatia bude zelená a červená dióda LED na doske PC striedavo blikať raz za sekundu. Zariadenie bolo obnovené s predvolenými výrobnými nastaveniami.
- Všetky nastavenia boli obnovené na predvolené výrobné nastavenia.
- Reštartujte jednotku stlačením a uvoľnením tlačidla Reset.
Formátovanie SIM karty
Posledným krokom je vymazanie všetkých informácií uložených na karte SIM a konfigurácia na použitie v tomto zariadení.
- Stlačte a uvoľnite tlačidlo Reset a počkajte, kým červená kontrolka LED na doske PC nezhasne.
- LED NET na GSM module bude rýchlo blikať.
- Jednotka je teraz pripravená prijať príkazy úvodného nastavenia. To sa musí vykonať do 10 minút.
- Na telefónne číslo jednotky odošlite SMS správu iba s ERASESIM.
- V prípade prijatia zelená LED dióda na doske PC bliká stromom.
Jednotka je teraz nakonfigurovaná a je pripravená na použitie.
Krok 16: Príkazy SMS
Jednotka používa tri rôzne typy príkazov. Všetky príkazy sú odosielané prostredníctvom SMS a sú v nasledujúcom formáte:
PRÍKAZ,,,,,
- Všetky príkazy, okrem príkazov NORMAL USER, rozlišujú veľké a malé písmena.
- V parametroch sa nerozlišujú malé a veľké písmená.
Príkazy na počiatočné nastavenie
MASTER, meno
Telefónne číslo odosielateľa SMS sa používa ako telefónne číslo MASTER USER. Tu je možné pridať popis jednotky.
ZMAZAŤ VŠETKO
Obnovte výrobné nastavenia jednotky
CLEARSIM
Vymažte všetky údaje zo SIM karty
RESET
Reštartujte jednotku
MASTER USER Príkazy na konfiguráciu jednotky
OUTMODE, c, m, t POZNÁMKA! ! ! NIE JE IMPLEMENTOVANÉ
Nastavte konkrétne kanály tak, aby mali PULSED, TIMED alebo LATCHING výstupy. t je časové trvanie v minútach pre TIMED výstupy
PULSE, cccc
Nastavte konkrétne kanály na PULSED výstupy. Ak nie je nastavený, kanály budú nastavené ako LATCHING výstupy.
PULSETIME, tNastaví trvanie impulzného výstupu v sekundách (0.. 10 s)
INPUTON, cccc
Nastavte kanály, ktoré sa musia spustiť, a pošlite SMS správu, keď sa stav zmení z VYPNUTÉ na ZAPNUTÉ
INPUTOFF, cccc
Nastavte kanály, ktoré sa musia spustiť, a pošlite SMS správu, keď sa stav zmení zo ZAPNUTÉ na VYPNUTÉ
INTIME, c, t
Nastavuje čas oneskorenia vstupu na detekciu zmien stavu v sekundách
INTEXT, ch, meno, zapnuté, vypnuté
Nastavte názov každého vstupného kanála, na text aj mimo text
OUTTEXT, ch, meno, zapnuté, vypnuté
Nastavte názov každého výstupného kanála na text a mimo text
Pridajte, umiestnenie, číslo, popisy, výstupy SMS, vstupy
Pridajte používateľa na kartu SIM na „miesto“pamäte s výstupnými a vstupnými kanálmi priradenými používateľovi
Del, umiestnenie
Odstrániť používateľa z „umiestnenia“pamäte SIM karty
ChannelName
Bude pulzovať výstup s názvom ChannelName
ChannelName, onText alebo ChannelName, offText
Zapne/vypne výstup s názvom ChannelName a onText/offText
Normálne užívateľské príkazy na ovládanie jednotky
???? Požiadať o aktualizáciu stavu I/O. Stavová SMS bude odoslaná pôvodcovi.
ChannelName
Bude pulzovať výstup s názvom ChannelName
ChannelName, onText
Zapne výstup s názvom ChannelName a stavovým textom v texte
ChannelName, offText Vypne výstup s názvom ChannelName a stavovým textom offText
Podrobnejší popis príkazov nájdete v priloženom dokumente PDF.
Odporúča:
Automatické diaľkové ovládanie IR diaľkového ovládania na báze Arduina: 7 krokov
Automatické IR diaľkové ovládanie na báze Arduina riadené teplotou: Hej, čo sa deje, chlapci! Akarsh tu od CETech. Ste unavení prebúdzať sa uprostred zdravého spánku len preto, že je vaša izbová teplota príliš nízka alebo príliš vysoká kvôli vášmu Dumb AC. Potom je tento projekt pre vás. V tomto projekte urobíme náš
Ovládanie jasu Ovládanie LED na báze PWM pomocou tlačidiel, Raspberry Pi a Scratch: 8 krokov (s obrázkami)
Ovládanie jasu Ovládanie LED na základe PWM pomocou tlačidiel, Raspberry Pi a Scratch: Snažil som sa nájsť spôsob, ako vysvetliť, ako PWM funguje u mojich študentov, a tak som si dal za úlohu pokúsiť sa ovládať jas LED pomocou dvoch tlačidiel. - jedno tlačidlo zvyšuje jas LED diódy a druhé ju stmieva. Programovať
ESP8266 RGB LED STRIP WIFI ovládanie - NODEMCU Ako IR diaľkové ovládanie pre LED pás ovládané cez Wifi - Ovládanie smartfónu RGB LED STRIP: 4 kroky
ESP8266 RGB LED STRIP WIFI ovládanie | NODEMCU Ako IR diaľkové ovládanie pre LED pás ovládané cez Wifi | Ovládanie smartfónu RGB LED STRIP: Ahoj, v tomto návode sa naučíme, ako používať nodemcu alebo esp8266 ako IR diaľkové ovládanie na ovládanie RGB LED pásu a Nodemcu budete ovládať smartfónom cez wifi. V zásade teda môžete RGB LED STRIP ovládať pomocou svojho smartfónu
Bezdrôtové diaľkové ovládanie pomocou 2,4 GHz modulu NRF24L01 s Arduino - Nrf24l01 4 -kanálový / 6 -kanálový vysielač pre Quadcopter - RC helikoptéra - RC lietadlo využívajúce Arduino: 5 krokov (s obrázkami)
Bezdrôtové diaľkové ovládanie pomocou 2,4 GHz modulu NRF24L01 s Arduino | Nrf24l01 4 -kanálový / 6 -kanálový vysielač pre Quadcopter | RC helikoptéra | RC lietadlo využívajúce Arduino: Na ovládanie RC auta | Kvadrokoptéra | Dron | RC lietadlo | RC čln, vždy potrebujeme prijímač a vysielač, predpokladajme, že pre RC QUADCOPTER potrebujeme 6 -kanálový vysielač a prijímač a tento typ TX a RX je príliš nákladný, takže si ho vyrobíme na
Ovládanie motora Arduino na báze GSM (bez modulu GSM): 3 kroky
Ovládanie motora Arduino založené na GSM (bez modulu GSM): V tomto projekte vám ukážem základnú, ale jedinečnú metódu zapínania a vypínania čohokoľvek pomocou relé. S touto myšlienkou prišlo niekoľko ľudí, ktorí robili takéto projekty, ale mali problém, že boli všetci závislí na správaní mobilného telefónu počas hovoru. Zjednodušujem