Satura rādītājs:
- 1. darbība: barošanas avots
- 2. darbība: digitālās ieejas
- 3. darbība: digitālās izejas
- 4. solis: mikrokontrolleru oscilators
- 5. darbība: indikācijas gaismas diodes
- 6. darbība: mikroprocesora atiestatīšanas ķēde
- 7. solis: SIM800L modulis
- 8. solis: mikrokontrolleris
- 9. solis: SRAM atmiņas optimizēšana
- 10. solis: programmatūras sērijas bufera lielums
- 11. solis: PC plates izgatavošana
- 12. solis: PC plates montāža
- 13. darbība: AtMega328p programmēšana
- 14. darbība: ierīces pievienošana
- 15. darbība: sākotnējā iestatīšana
- 16. darbība: SMS komandas
Video: Arduino balstīta GSM/SMS tālvadības ierīce: 16 soļi (ar attēliem)
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:56
! ! ! N O T I C E!
Tā kā manā teritorijā tiek modernizēts vietējais mobilo tālruņu tornis, es vairs nevaru izmantot šo GSM moduli. Jaunākais tornis vairs neatbalsta 2G ierīces. Tāpēc es vairs nevaru sniegt nekādu atbalstu šim projektam.
Tā kā hobijam bija pieejams tik plašs GSM moduļu klāsts, lielākā daļa no mums beidzās to iegādāties. Es lokāli iegādājos SIM800L moduli un beidzot spēlēju ar dažādām moduļa komandām.
Izmantojot Arduino Uno un Arduino IDE, es varēju savas idejas pārvērst realitātē. Tas nenāca viegli, jo VIENOTĀ LIELĀKĀ JAUTĀJUMS bija tikai 2 KB SRAM ierobežojums. Pēc daudziem pētījumiem internetā un dažādos forumos man izdevās pārvarēt šo ierobežojumu.
Šo projektu saglabāja dažādas programmēšanas metodes, daudz labāka Arduino kompilatora izpratne un SIM kartes un EEPROM izmantošana papildu atmiņai. Pēc dažām koda izmaiņām tika izveidots un nedēļas laikā pārbaudīts stabils prototips.
Ierobežotā SRAM trūkums bija tas, ka iekārtu nevarēja aprīkot ar displeju un lietotāja atslēgām. Tā rezultātā kods tika pilnībā pārrakstīts. Bez lietotāja interfeisa vienīgā iespēja turpināt projektu bija izmantot īsziņas, lai konfigurētu vienību, kā arī lietotājus.
Tas izrādījās aizraujošs projekts, un, turpinot attīstību, tika pievienoti vairāk nākotnes līgumu.
Mans galvenais mērķis bija pieturēties pie Arduino Uno vai šajā gadījumā ATMEGA328p un neizmantot nekādas virsmas montāžas sastāvdaļas. Tādējādi plašai sabiedrībai būs vieglāk kopēt un izveidot vienību.
Vienības specifikācija:
- Ierīcē var ieprogrammēt ne vairāk kā 250 lietotājus
- Četras digitālās izejas
- Četras digitālās ieejas
- Katru izeju var konfigurēt kā PULSE vai ON/OFF izeju
- Izejas impulsa ilgumu var iestatīt starp 0,5.. 10 sekundēm
- Katru ieeju var konfigurēt tā, lai tā aktivizētu izmaiņas no izslēgšanas līdz ieslēgšanai.
- Katru ieeju var konfigurēt tā, lai aktivizētu ON / OFF izmaiņas
- Katru ievades aizkaves laiku var iestatīt no 0 sekundēm līdz 1 stundai
- Īsziņas par izmaiņām ievadēs var nosūtīt 5 dažādiem lietotājiem
- Lietotājs var iestatīt katras ievades nosaukumus un statusa tekstu
- Lietotājs var iestatīt katras izvades nosaukumus un statusa tekstu
- Ierīci var konfigurēt, lai saņemtu SIM kartes atlikuma ziņas, izmantojot USSD ziņojumapmaiņu.
- Visi lietotāji var pieprasīt ierīces I/O statusa atjauninājumus
- Visi lietotāji var kontrolēt atsevišķus izvadus, izmantojot īsziņas
- Visi lietotāji var kontrolēt atsevišķas izejas, zvanot uz ierīci
Drošības līdzekļi
- Ierīces sākotnējo iestatīšanu var veikt tikai, atrodoties vienībā.
- Sākotnējo iestatīšanu var veikt tikai MASTER USER
- Sākotnējās iestatīšanas komandas tiek automātiski atspējotas pēc desmit minūtēm.
- Vienību var vadīt tikai zvani un īsziņas no zināmiem lietotājiem
- Lietotāji var darbināt tikai tos izvadus, kurus tiem ir piešķīris MASTER USER
Citas funkcijas
- Zvani uz šo ierīci ir bezmaksas, jo uz zvanu nekad netiek atbildēts.
- Kad ierīce tiek izsaukta, zvans tiks pārtraukts tikai pēc 2 sekundēm. Tas ir apstiprinājums zvanītājam, ka ierīce atbildēja uz zvanu.
- Ja SIM karšu pakalpojumu sniedzējs atbalsta USSD ziņas, MASTER USER var pieprasīt atlikumu. USSD ziņojums ar atlikumu tiks pārsūtīts MASTER USER.
1. darbība: barošanas avots
Lai ierīci varētu pieslēgt standarta drošības sistēmām (signalizācijas sistēmām, elektriskām garāžas durvīm, elektriskajiem vārtu motoriem), iekārta tiks darbināta no 12 V līdzstrāvas, kas parasti ir pieejama šādās sistēmās.
Barošana tiek veikta 12V IN un 0V spailēs, un to aizsargā 1A drošinātājs. Ir pieejami papildu 12V OUT spailes, un to aizsargā arī drošinātājs.
Diods D1 aizsargā ierīci no pretējas polaritātes savienojumiem 12 V līnijās.
Kondensatori C1 un C2 filtrē 12V barošanas līniju troksni. 12 V barošana tiek izmantota ierīces releju barošanai.
5 V barošana sastāv no sprieguma regulatora LM7805L, un tā izeja ir stabila +5 V, kas nepieciešama SIM800L GSM modulim, kā arī mikroprocesoram. Kondensatori C3 un C4 filtrē jebkādu troksni, kas var rasties pie +5V barošanas līnijas. Tika izmantoti relatīvi liela izmēra elektrolītiskie kondensatori, jo SIM800L GSM modulis pārraides laikā patērē diezgan daudz enerģijas.
Sprieguma regulatoram nav nepieciešama siltuma izlietne.
2. darbība: digitālās ieejas
Visi digitālie ievades signāli ir 12 V, un tiem jābūt savienotiem ar 5 V mikrokontrolleri. Šim nolūkam tiek izmantoti opto savienotāji, lai izolētu 12 V signālus no 5 V sistēmas.
1K ieejas rezistors ierobežo ieejas strāvu līdz opto savienotājam līdz aptuveni 10 mA.
Vietas ierobežojumu dēļ PC panelī nebija vietas 5V pievilkšanas rezistoriem. Mikrokontrolleris ir iestatīts, lai iespējotu ieejas tapas ar vāju pievilkšanos.
Ja opto savienotāja ieejā (LOW) nav signāla, caur opto savienotāja gaismas diodi neplūst strāva. Tādējādi tiek izslēgts opto savienotāja tranzistors. Vājā mikrokontrollera pievilkšana savāks kolektoru līdz gandrīz 5 V, un mikrokontrolleris to uzskatīs par loģisku HIGH.
Ja opto savienotāja ieejai ir pievienots 12 V (HIGH), caur opto savienotāja gaismas diodi plūdīs aptuveni 10 mA. Tādējādi tiks ieslēgts opto savienotāja tranzistors. Tas savāks kolektoru līdz gandrīz 0 V, un mikrokontrolleris to uzskatīs par zemu loģiku.
Ņemiet vērā, ka mikrokontrollera redzamā ieeja ir apgriezta, salīdzinot ar 12 V ieeju.
Parastais kods ievades tapas lasīšanai izskatās šādi:
Būla ieeja = digitalRead (inputpin);
Lai labotu apgriezto signālu, izmantojiet šādu kodu:
Būla ieeja =! digitalRead (inputpin); // PIEZĪME! lasāmā priekšā
Tagad mikrokontrollera redzamā ieeja atbilst 12 V ieejas ieejai.
Pēdējā ievades ķēde sastāv no 4 digitālajām ieejām. Katra ieeja ir pievienota datora plates termināļiem.
3. darbība: digitālās izejas
Parasti, ja ķēde vada tikai minimālu releju skaitu, labākais veids ir izmantot tranzistora draivera ķēdi, kā parādīts attēlā. Tas ir vienkārši, lēti un efektīvi.
Rezistori nodrošina nolaišanos zemē un tranzistora bāzes strāvas ierobežošanu. Tranzistoru izmanto, lai palielinātu releja vadīšanai pieejamo strāvu. Ar tikai 1mA no mikro kontroliera tapas tranzistors var pārslēgt 100 mA slodzi. Vairāk nekā pietiekami lielākajai daļai releju. Diods ir atpakaļgaitas diode, kas aizsargā ķēdi no augstsprieguma tapām releja pārslēgšanas laikā. Šīs shēmas izmantošanas papildu priekšrocība ir tā, ka releja darba spriegums var atšķirties no mikrokontrollera sprieguma. Tādējādi 5V releja vietā var izmantot jebkuru līdzstrāvas spriegumu līdz 48V.
Iepazīstinām ar ULN2803
Jo vairāk releju nepieciešams projektam, jo lielāks komponentu skaits. Tas apgrūtinās PCB dizainu un var iztērēt vērtīgu PCB vietu. Bet, izmantojot tranzistoru masīvu, piemēram, ULN2803, tas noteikti palīdzēs saglabāt nelielu PCB izmēru. ULN2803 ir ideāli piemērots 3,3 V un 5 V ieejām no mikrokontrollera un var vadīt relejus līdz 48 V līdzstrāvai. Šim ULN2803 ir 8 atsevišķas tranzistora shēmas, katra ķēde ir aprīkota ar visiem komponentiem, kas nepieciešami releja pārslēgšanai.
Gala izejas ķēde sastāv no ULN3803, kas vada 4 12 V līdzstrāvas izejas relejus. Katrs releja kontakts ir pieejams PC Board terminālos.
4. solis: mikrokontrolleru oscilators
Oscilatora ķēde
Lai pareizi darbotos, mikrokontrollerim ir nepieciešams oscilators. Lai saglabātu Arduino Uno dizainu, ķēde izmantos standarta 16MHz oscilatoru. Ir pieejamas divas iespējas:
Kristāls
Šī metode izmanto kristālu, kas savienots ar diviem iekraušanas kondensatoriem. Šī ir visizplatītākā iespēja.
Rezonators
Rezonators būtībā ir kristāls un divi iekraušanas kondensatori vienā 3 kontaktu iepakojumā. Tas samazina komponentu daudzumu un palielina pieejamo vietu uz PC Board.
Lai komponentu skaits būtu pēc iespējas zemāks, es izvēlējos izmantot 16MHz rezonatoru.
5. darbība: indikācijas gaismas diodes
Kāda būs ķēde bez dažām gaismas diodēm? Uz PC dēļa tika nodrošināti 3 mm gaismas diodes.
1K rezistori tiek izmantoti, lai ierobežotu strāvu caur LED līdz mazāk nekā 5mA. Izmantojot 3 mm augstas spilgtuma gaismas diodes, spilgtums ir lielisks.
Lai viegli interpretētu statusa gaismas diodes, tiek izmantotas divas krāsas. Apvienojot abas gaismas diodes ar mirgojošām indikācijām, diezgan daudz informācijas var iegūt tikai no divām gaismas diodēm.
Sarkana gaismas diode
Sarkanā gaismas diode tiek izmantota, lai norādītu uz traucējumu apstākļiem, ilgu kavēšanos, nepareizām komandām.
Zaļā gaismas diode
Zaļā gaismas diode tiek izmantota, lai norādītu veselīgas un/vai pareizas ievades un komandas.
6. darbība: mikroprocesora atiestatīšanas ķēde
Drošības apsvērumu dēļ dažas ierīces funkcijas ir pieejamas tikai pirmajās 10 minūtēs pēc ierīces ieslēgšanas.
Izmantojot atiestatīšanas pogu, ierīces barošana nav jāizslēdz, lai atiestatītu ierīci.
Kā tas strādā
10K rezistors saglabās RESET līniju 5V tuvumā. Nospiežot pogu, RESET līnija tiks pavilkta uz 0V, tādējādi saglabājot mikrokontrollera atiestatīšanu. Kad poga tiek atlaista, RESET līnija atgriežas %v, atiestatot mikrokontrolleri.
7. solis: SIM800L modulis
Ierīces sirds ir SIM800L GSM modulis. Šis modulis izmanto tikai 3 I/O tapas mikrokontrollerī.
Modulis ir savienots ar mikrokontrolleri, izmantojot standarta seriālo portu.
- Visas komandas ierīcei tiek nosūtītas, izmantojot seriālo portu, izmantojot standarta AT komandas.
- Ienākoša zvana laikā vai saņemot SMS, informācija tiek nosūtīta mikrokontrolleram, izmantojot seriālo portu, izmantojot ASCII tekstu.
Lai ietaupītu vietu, GSM modulis ir savienots ar PC Board, izmantojot 7 kontaktu galveni. Tas atvieglo GSM moduļa noņemšanu. Tas arī ļauj lietotājam viegli ievietot/izņemt SIM karti moduļa apakšā.
Nepieciešama aktīva SIM karte, un SIM kartei jāspēj sūtīt un saņemt īsziņas.
SIM800L GSM moduļa uzstādīšana
Ieslēdzot iekārtu, GSM moduļa atiestatīšanas tapu uz sekundi velk zemu. Tas nodrošina, ka GSM modulis sāk darboties tikai pēc barošanas avota stabilizācijas. GSM moduļa atsāknēšana prasa pāris sekundes, tāpēc pagaidiet 5 sekundes, pirms nosūtāt modulim AT komandas.
Lai nodrošinātu, ka GSM modulis ir konfigurēts pareizi sazināties ar mikrokontrolleri, startēšanas laikā tiek izmantotas šādas AT komandas:
AT
izmanto, lai noteiktu, vai ir pieejams GSM modulis
AT+CREG?
Aptaujājiet šo komandu, līdz GSM modulis ir reģistrēts mobilo tālruņu tīklā
AT+CMGF = 1
Iestatiet īsziņu režīmu uz ASCII
AT+CNMI = 1, 2, 0, 0, 0
Ja ir pieejama īsziņa, nosūtiet SMS informāciju uz GSM moduļa seriālo portu
AT+CMGD = 1, 4
Dzēsiet visas SIM kartē saglabātās īsziņas
AT+CPBS = / "SM
Iestatiet GSM moduļa tālruņu katalogā SIM karti
AT+COPS = 2, tad AT+CLTS = 1, tad AT+COPS = 0
Iestatiet GSM moduļa laiku uz mobilā tīkla laiku
Pagaidiet 5 sekundes, līdz tiek iestatīts laiks
AT+CUSD = 1
Iespējot USSD ziņojumapmaiņas funkciju
8. solis: mikrokontrolleris
Mikro kontrolieris ir standarta AtMega328p, tāds pats kā Arduino Uno. Tādējādi kods ir salīdzināms ar abiem. Lai atvieglotu iebūvēšanu, datora panelī ir pieejama 6 kontaktu programmēšanas galvene.
Dažādas ierīces daļas ir savienotas ar mikroprocesoru, un tajās ietilpst:
- Četras digitālās ieejas
- Četras digitālās izejas
- Oscilators
- Divas indikācijas gaismas diodes
- Atiestatīt ķēdi
- SIM800L GSM modulis
Visa saziņa uz un no GSM moduļa tiek veikta, izmantojot funkciju SoftwareSerial (). Šī metode tika izmantota, lai izstrādes posmā atbrīvotu Arduino IDE galveno seriālo portu.
Izmantojot tikai 2 KB SRAM un 1 KB EEPROM, nav pietiekami daudz atmiņas, lai saglabātu vairāk nekā pāris lietotājus, kurus var saistīt ar ierīci. Lai atbrīvotu SRAM, visa lietotāja informācija tiek saglabāta GSM moduļa SIM kartē. Izmantojot šo izkārtojumu, iekārta var apkalpot līdz 250 dažādiem lietotājiem.
Iekārtas konfigurācijas dati tiek saglabāti EEPROM, tādējādi atdalot lietotāja datus un sistēmas datus viens no otra.
Joprojām ir pieejamas vairākas rezerves I/O tapas, tomēr LCD displeja un/vai tastatūras pievienošanas iespēja nebija iespējama, jo SoftWareSerial () uztveršanas un pārraides buferi izmantoja lielu SRAM daudzumu, Tā kā ierīcē trūkst jebkāda veida lietotāja interfeisa, visi iestatījumi un lietotāji tiek ieprogrammēti, izmantojot īsziņas.
9. solis: SRAM atmiņas optimizēšana
Diezgan agrīnā izstrādes stadijā Arduino IDE, apkopojot kodu, ziņoja par zemu SRAM atmiņu. Lai to pārvarētu, tika izmantotas vairākas metodes.
Ierobežojiet seriālajā portā saņemtos datus
GSM modulis ziņo visus ziņojumus mikrokontrolleram par seriālo portu. Saņemot dažas īsziņas, saņemtās ziņas kopējais garums var pārsniegt 200 rakstzīmes. Tas var ātri iztērēt visu AtMega mikroshēmā pieejamo SRAM un radīt stabilitātes problēmas.
lai to novērstu, tiks izmantotas tikai pirmās 200 rakstzīmes no jebkura GSM moduļa saņemta ziņojuma. Zemāk redzamais piemērs parāda, kā tas tiek darīts, saskaitot saņemtās rakstzīmes mainīgajā skaitītājā.
// skenējiet datus no programmatūras seriālā porta
// ----------------------------------------------- RxString = ""; Skaitītājs = 0; while (SSerial.available ()) {delay (1); // īsa aizkave, lai dotu laiku jaunu datu ievietošanai buferī // iegūt jaunu rakstzīmi RxChar = char (SSerial.read ()); // pievienojiet virknei pirmās 200 rakstzīmes, ja (skaitītājs <200) {RxString.concat (RxChar); Skaitītājs = skaitītājs + 1; }}
Serial.print () koda samazināšana
Lai gan Arduino sērijas monitors ir ērts izstrādes laikā, tas var izmantot daudz SRAM. Kods tika izstrādāts, izmantojot pēc iespējas mazāk Serial.print () koda. Viena koda sadaļa ir pārbaudīta, lai darbotos, viss Serial.print () kods tika noņemts no šīs koda daļas.
Izmantojot Serial.print (F (("")) kodu
Daudz informācijas, kas parasti tiek parādīta Arduino sērijas monitorā, ir saprātīgāka, pievienojot aprakstus. Ņemiet šādu piemēru:
Serial.println ("Gaida īpašas darbības");
Virkne "Gaida īpašas darbības" ir fiksēta, un to nevar mainīt.
Koda apkopošanas laikā kompilators FLASH atmiņā iekļaus virkni "Gaida īpašas darbības".
Turklāt kompilators redz, ka virkne ir konstante, ko izmanto instrukcija "Serial.print" vai "Serial.println". Mikro sāknēšanas laikā šī konstante tiek ievietota arī SRAM atmiņā.
Funkcijās Serial.print () izmantojot prefiksu "F", tas kompilatoram norāda, ka šī virkne ir pieejama tikai FLASH atmiņā. Šajā piemērā virknē ir 28 rakstzīmes. Tas ir 28 baiti, kurus var atbrīvot SRAM.
Serial.println (F ("Gaida īpašas darbības"));
Šī metode attiecas arī uz SoftwareSerial.print () komandām. Tā kā GSM modulis darbojas ar AT komandām, kods satur daudzas SoftwareSerial.print ("xxxx") komandas. Izmantojot prefiksu "F", tika atbrīvoti gandrīz 300 baiti SRAM.
Nelietojiet aparatūras seriālo portu
Pēc koda atkļūdošanas aparatūras seriālais ports tika atspējots, noņemot visas komandas Serial.print (). Tas atbrīvoja dažus papildu SRAM baitus.
Ja kodā nebija atstātas Serial.print () komandas, tika pieejami papildu 128 baiti SRAM. Tas tika darīts, no koda noņemot aparatūras seriālo portu. Tas palielināja 64 baitu pārraides un 64 baitu saņemšanas buferus.
// Serial.begin (9600); // aparatūras seriālais ports ir atspējots
EEPROM izmantošana stīgām
Katrai ievadei un izvadei vajadzēja saglabāt trīs virknes. Tie ir kanāla nosaukums, virkne, kad kanāls ir ieslēgts, un virkne, kad kanāls ir izslēgts.
Kopā ar 8 I/O kanāliem tie būs
- 8 virknes ar kanālu nosaukumiem, katra 10 rakstzīmes gara
- 8 virknes, kas satur apraksta kanālu, katra 10 rakstzīmes gara
- 8 virknes, kas satur kanāla izslēgšanas aprakstu, katra 10 rakstzīmes gara
Šī reklāma līdz 240 baitiem SRAM. Tā vietā, lai šīs virknes saglabātu SRAM, tās tiek saglabātas EEPROM. Tas atbrīvoja papildu 240 baitus SRAM.
Deklarējošā virkne ar pareizo garumu
Mainīgie parasti tiek deklarēti koda sākumā. Izplatīta kļūda, deklarējot virknes mainīgo, ir tā, ka mēs nepaziņojam virkni ar pareizu rakstzīmju skaitu.
Virkne GSM_Nr = "";
String GSM_Name = ""; String GSM_Msg = "";
Palaišanas laikā mikrokontrolleris šiem mainīgajiem nepiešķir atmiņu SRAM. Tas vēlāk var izraisīt nestabilitāti, ja tiek izmantotas šīs virknes.
Lai to novērstu, norādiet virknes ar pareizo rakstzīmju skaitu, ko virkne izmantos programmatūrā.
Virkne GSM_Nr = "1000000000";
Virkne GSM_Name = "2000000000"; String GSM_Msg = "3000000000";
Ievērojiet, kā es nedeklarēju virknes ar vienādām rakstzīmēm. Ja deklarēsit visas šīs virknes, sakot "1234567890", kompilators trīs mainīgajos redzēs vienu un to pašu virkni un SRAM piešķirs pietiekami daudz atmiņas tikai vienai no virknēm.
10. solis: programmatūras sērijas bufera lielums
Turpmākajā kodā pamanīsit, ka no programmatūras seriālā porta var nolasīt līdz 200 rakstzīmēm.
// skenējiet datus no programmatūras seriālā porta
// ----------------------------------------------- RxString = ""; Skaitītājs = 0; while (SSerial.available ()) {delay (1); // īsa aizkave, lai dotu laiku jaunu datu ievietošanai buferī // iegūt jaunu rakstzīmi RxChar = char (SSerial.read ()); // pievienojiet virknei pirmās 200 rakstzīmes, ja (skaitītājs <200) {RxString.concat (RxChar); Skaitītājs = skaitītājs + 1; }}
Tam nepieciešams arī vismaz 200 baitu buferis programmatūras seriālajam portam. pēc noklusējuma programmatūras seriālā porta buferis ir tikai 64 baiti. Lai palielinātu šo buferi, meklējiet šādu failu:
SoftwareSerial.h
Atveriet failu ar teksta redaktoru un mainiet bufera lielumu uz 200.
/******************************************************************************
* Definīcijas ************************************************ ******************************/ #ifndef _SS_MAX_RX_BUFF #define _SS_MAX_RX_BUFF 200 // RX bufera izmērs #endif
11. solis: PC plates izgatavošana
PC dēlis tika izstrādāts, izmantojot Cadsoft Eagle bezmaksas programmatūras versiju (es uzskatu, ka nosaukums ir mainījies).
- PC Board ir vienpusējs dizains.
- Netiek izmantotas virsmas montāžas sastāvdaļas.
- Visas sastāvdaļas ir uzstādītas uz datora plates, ieskaitot SIM800L moduli.
- Nav nepieciešami ārēji komponenti vai savienojumi
- Stiepļu džemperi ir paslēpti zem sastāvdaļām, lai iegūtu tīrāku izskatu.
PC paneļu izgatavošanai es izmantoju šādu metodi:
- PC Board attēls tiek izdrukāts uz Press-n-Peel, izmantojot lāzera printeri.
- Pēc tam Press-n-Peel tiek novietots virs tīra PC Board gabala un nostiprināts ar lenti.
- Pēc tam PC Board attēls tiek pārnests no Press-n-Peel uz tukšo PC Board, izlaižot dēli caur laminatoru. Man vislabāk der 10 piespēles.
- Pēc tam, kad PC Board ir atdzisis līdz istabas temperatūrai, Press-n-Peel lēnām tiek noņemts no tāfeles.
- Pēc tam PC dēli kodina, izmantojot amonija persulfāta kristālus, kas izšķīdināti karstā ūdenī.
- Pēc kodināšanas zilais Press-n-Peel un melnais toneris tiek noņemts, notīrot iegravēto datora paneli ar nedaudz acetona.
- Pēc tam dēlis tiek sagriezts pēc izmēra ar Dremel
- Visiem caurumiem caurumiem tiek urbti caur 1 mm urbi.
- Termināla skrūvju savienotāji tiek urbti, izmantojot 1,2 mm urbi.
12. solis: PC plates montāža
Montāža tiek veikta, vispirms pievienojot mazākās sastāvdaļas un strādājot pie lielākajām sastāvdaļām.
Visas šajā instrukcijā izmantotās sastāvdaļas, izņemot SIM800 moduli, tika iegūtas no mana vietējā piegādātāja. Domā, ka viņiem vienmēr ir krājumi. Lūdzu, apskatiet viņu Dienvidāfrikas tīmekļa vietni:
www.shop.rabtron.co.za/catalog/index.php
PIEZĪME! Vispirms lodējiet divus džemperus, kas atrodas zem ATMEGA328p IC
Pasūtījums ir šāds:
- Rezistori un diodes
- Atiestatīšanas poga
- IC ligzdas
- Sprieguma regulators
- Galvenes tapas
- Mazi kondensatori
- Gaismas diodes
- Drošinātāju turētājs
- Termināla bloki
- Releji
- Elektrolītiskie kondensatori
Pirms IC ievietošanas pievienojiet ierīci 12 V spriegumam un pārbaudiet, vai visi spriegumi ir pareizi.
Visbeidzot, izmantojot caurspīdīgu laku, pārklājiet datora plates vara pusi, lai pasargātu to no elementiem.
Kad laka ir izžuvusi, ievietojiet IC, bet atstājiet GSM moduli, līdz AtMega ir ieprogrammēta.
13. darbība: AtMega328p programmēšana
# # Programmaparatūras jaunināšana uz versiju 3.02 # #
Iespējotās īsziņas jānosūta MASTER USER, kad ierīce tiek atjaunota
Iekārtas programmēšanai es izmantoju Arduino Uno ar programmēšanas vairogu. Lai iegūtu papildinformāciju par to, kā izmantot Arduino Uno kā programmētāju, skatiet šo pamācību:
Arduino UNO kā AtMega328P programmētājs
Lai piekļūtu programmēšanas galvenei, GSM modulis ir jānoņem no datora plates. Uzmanieties, lai, bojājot GSM moduli, nesabojātu antenas vadu.
Pievienojiet programmēšanas kabeli starp programmētāju un ierīci, izmantojot programmēšanas galveni uz PC Board., Un augšupielādējiet skici ierīcē.
Iekārtas programmēšanai nav nepieciešama ārējā 12 V barošana. PC Board tiks barots no Arduino, izmantojot programmēšanas kabeli.
Atveriet pievienoto failu Arduino IDE un ieprogrammējiet to ierīcē.
Pēc programmēšanas noņemiet programmēšanas kabeli un ievietojiet GSM moduli.
Iekārta tagad ir gatava lietošanai.
14. darbība: ierīces pievienošana
Visi savienojumi ar ierīci tiek veikti caur skrūvju spailēm.
Iekārtas barošana
Pārliecinieties, vai esat ievietojis reģistrētu SIM karti GSM modulī un vai SIM karte spēj nosūtīt un saņemt īsziņas.
Pievienojiet 12V līdzstrāvas barošanas avotu 12V IN un jebkuram 0V terminālim. Kad tas ir ieslēgts, iedegas sarkanā gaismas diode PC panelī. Apmēram pēc minūtes GSM modulim vajadzētu būt savienotam ar mobilo tālruņu tīklu. Sarkanā gaismas diode izslēgsies, un sarkanā gaismas diode uz GSM moduļa ātri mirgos.
Kad šis posms ir sasniegts, iekārta ir gatava konfigurēšanai.
Ievades savienojumi
Digitālās ieejas darbojas ar 12 V spriegumu. Lai ieslēgtu ieeju, ieejai jāpieliek 12V. Noņemot 12 V, ieeja tiks izslēgta.
Izejas savienojumi
Katra izeja sastāv no pārslēgšanas kontakta. Pievienojiet katru kontaktu pēc nepieciešamības.
15. darbība: sākotnējā iestatīšana
Ierīces sākotnējā iestatīšana jāveic, lai nodrošinātu, ka visi parametri ir iestatīti uz rūpnīcas noklusējuma iestatījumiem un SIM karte ir konfigurēta tā, lai pieņemtu lietotāja informāciju pareizā formātā.
Tā kā visas komandas ir balstītas uz īsziņām, iestatīšanai būs nepieciešams cits tālrunis.
Sākotnējai iestatīšanai jums jāatrodas vienībā.
Iestatiet MASTER USER tālruņa numuru
Tā kā ierīci var konfigurēt tikai MASTER USER, šī darbība ir jāveic vispirms.
- Iekārtai jābūt barotai.
- Nospiediet un atlaidiet pogu Atiestatīt un pagaidiet, līdz PC Board sarkanā gaismas diode nodziest.
- GSM moduļa NET gaismas diode ātri mirgos.
- Iekārta tagad ir gatava pieņemt sākotnējās iestatīšanas komandas. Tas jāveic 10 minūšu laikā.
- Nosūtiet uz ierīces tālruņa numuru īsziņu, kas satur MASTER, aprakstu.
- Ja saņemts, PC Board zaļā gaismas diode mirgos divas reizes.
- MASTER USER tagad ir ieprogrammēts.
Atjaunojiet iekārtas rūpnīcas noklusējuma iestatījumus
Pēc MASTER USER ieprogrammēšanas ierīces iestatījumi ir jāiestata rūpnīcas noklusējuma iestatījumos.
- Uz ierīces tālruņa numuru nosūtiet īsziņu tikai ar CLEARALL.
- Ja saņemts, datora paneļa zaļā un sarkanā gaismas diode mirgo pārmaiņus reizi sekundē. Ierīce ir atjaunota, izmantojot rūpnīcas noklusējuma iestatījumus.
- Visi iestatījumi ir atjaunoti uz rūpnīcas noklusējuma iestatījumiem.
- Nospiediet un atlaidiet pogu Atiestatīt, lai restartētu ierīci.
SIM kartes formatēšana
Pēdējais solis ir izdzēst visu SIM kartē saglabāto informāciju un konfigurēt to lietošanai šajā ierīcē.
- Nospiediet un atlaidiet pogu Atiestatīt un pagaidiet, līdz PC Board sarkanā gaismas diode nodziest.
- GSM moduļa NET gaismas diode ātri mirgos.
- Iekārta tagad ir gatava pieņemt sākotnējās iestatīšanas komandas. Tas jāveic 10 minūšu laikā.
- Uz ierīces tālruņa numuru nosūtiet īsziņu tikai ar ERASESIM.
- Ja saņemts, PC Board zaļā gaismas diode mirgos koku laikos.
Ierīce ir konfigurēta un ir gatava lietošanai.
16. darbība: SMS komandas
Vienība izmanto trīs dažādu veidu komandas. Visas komandas tiek sūtītas, izmantojot SMS, un visas ir šādā formātā:
COMMAND,,,,,
- Visas komandas, izņemot komandas NORMAL USER, ir reģistrjutīgas.
- Parametri nav reģistrjutīgi.
Sākotnējās iestatīšanas komandas
MEISTARS, vārds
SMS sūtītāja tālruņa numurs tiek izmantots kā MASTER USER tālruņa numurs. vienības aprakstu var pievienot šeit.
NODZĒST VISU
Atiestatiet iekārtu uz rūpnīcas noklusējuma iestatījumiem
CLEARSIM
Izdzēsiet visus datus no SIM kartes
ATiestatīt
Pārstartējiet vienību
MASTER USER Komandas ierīces konfigurēšanai
OUTMODE, c, m, t PIEZĪME! ! ! VĒL NAV ĪSTENOTS
Iestatiet konkrētus kanālus, lai tiem būtu PULSED, TIMED vai LATCHING izejas. t ir TIMED izejas laika ilgums minūtēs
PULSS, cccc
Iestatiet konkrētus kanālus uz PULSED izejām. Ja tas nav iestatīts, kanāli tiks iestatīti kā LATCHING izvadi.
PULSETIME, tIestata impulsa izejas ilgumu sekundēs (0.. 10 s)
INPUTON, cccc
Iestatiet kanālus, kuriem jāaktivizē, un nosūtiet īsziņu, kad stāvoklis mainās no OFF uz ON
INPUTOFF, cccc
Iestatiet kanālus, kuriem jāaktivizē, un nosūtiet īsziņu, kad stāvoklis mainās no IESLĒGTS uz IZSLĒGTS
INTIME, c, t
Iestata ievades aizkaves laiku statusa izmaiņu noteikšanai sekundēs
INTEXT, ch, nosaukums, ieslēgts, izslēgts
Iestatiet katra ievades kanāla nosaukumu tekstam un izslēgtam tekstam
OUTTEXT, ch, name, ieslēgts, izslēgts
Iestatiet katra izvades kanāla nosaukumu tekstam un izslēgtam tekstam
Pievienot, atrašanās vieta, skaits, Norādes, SMS izejas, ieejas
Pievienojiet lietotāju SIM kartei atmiņas “atrašanās vietā”, lietotājam piešķirot izejas un ievades kanālus
Del, atrašanās vieta
Lietotāja dzēšana no SIM kartes atmiņas “atrašanās vietas”
Kanāla nosaukums
Izvadīs impulsu ar nosaukumu ChannelName
ChannelName, onText vai ChannelName, offText
Ieslēgs/izslēgs izvadi ar nosaukumu ChannelName un onText/offText
Parastas lietotāja komandas ierīces vadīšanai
???? Pieprasīt I/O statusa atjaunināšanu. Statusa īsziņa tiks nosūtīta iniciatoram.
Kanāla nosaukums
Izvadīs impulsu ar nosaukumu ChannelName
ChannelName, onText
Ieslēgs izvadi ar nosaukumu ChannelName un statusa tekstu onText
Kanāla nosaukums, izslēgts teksts Izslēgs izvadi ar nosaukumu Kanāla nosaukums un statusa teksts izslēgts
Sīkāku komandu aprakstu skatiet pievienotajā PDF dokumentā.
Ieteicams:
RPIEasy - uz RPI balstīta multisensoru ierīce: 6 soļi
RPIEasy - uz RPI balstīta daudzu sensoru ierīce: ja kāds plāno izveidot dažus DIY sensorus, tad līdz populārajam ESP8266 lēts un zems patēriņš " Raspberry Pi Zero W " modelis ir arī ievērojama iespēja. RPI Zero W maksā aptuveni 10 USD, un tā enerģijas patēriņš ir
OrangeBOX: uz OrangePI balstīta drošas dublēšanas krātuves ierīce: 5 soļi
OrangeBOX: uz OrangePI balstīta drošas dublēšanas krātuves ierīce: OrangeBOX ir universāls tālvadības krātuves dublējumkopija jebkuram serverim. Jūsu serveris var būt inficēts, sabojāts, noslaucīts, un visi jūsu dati joprojām ir droši OrangeBOX, un kam gan nepatīk neiespējama misija, piemēram, rezerves ierīce, ko jūs vienkārši ievietojat
Arduino GSM balstīta motora vadība (bez GSM moduļa): 3 soļi
Arduino uz GSM balstīta motora vadība (bez GSM moduļa): Šajā projektā es jums parādīšu pamata, bet unikālu metodi, kā visu ieslēgt un izslēgt, izmantojot releju. Šo ideju radīja daži cilvēki, kas veica šādus projektus, taču viņiem bija problēma, ka viņi visi bija atkarīgi no mobilā tālruņa uzvedības zvana laikā. Es vienkāršoju
Arduino balstīta tālvadības pults Eskate vai zemūdens spārniem: 5 soļi (ar attēliem)
Arduino balstīta tālvadības pults Eskate vai zemūdens spārniem: šī pamācība parādīs, kā izveidot fizisku tālvadības pulti, lai to izmantotu kopā ar eskate vai elektrisko zemūdens spārnu, ieskaitot visu nepieciešamo kodu un aparatūru. Ir daudz lodēšanas, taču to ir arī jautri izgatavot. Ko var darīt tālvadības pults? Kopā
TinyPi - pasaulē mazākā Raspberry Pi balstītā spēļu ierīce: 8 soļi (ar attēliem)
TinyPi - pasaulē mazākā Raspberry Pi balstītā spēļu ierīce: Tāpēc es jau kādu laiku spēlēju ar pielāgotu PCB izgatavošanu Raspberry Pi, un tas, kas sākās kā joks, kļuva par izaicinājumu, lai redzētu, cik mazs es varētu iet. TinyPi ir dzimis , tā pamatā ir Raspberry Pi Zero, un tā gandrīz atbilst sa