Satura rādītājs:

Android un Arduino SMS balstīta mājas automatizācija: 5 soļi (ar attēliem)
Android un Arduino SMS balstīta mājas automatizācija: 5 soļi (ar attēliem)

Video: Android un Arduino SMS balstīta mājas automatizācija: 5 soļi (ar attēliem)

Video: Android un Arduino SMS balstīta mājas automatizācija: 5 soļi (ar attēliem)
Video: Дешевый сервер домашнего помощника, дешевое решение #homeassistant #solarpanelsforhome 2024, Novembris
Anonim
Android un Arduino SMS balstīta mājas automatizācija
Android un Arduino SMS balstīta mājas automatizācija
Android un Arduino SMS balstīta mājas automatizācija
Android un Arduino SMS balstīta mājas automatizācija

! ! ! 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

Nesen es saņēmu salīdzinoši lētu četrjoslu GSM/GPRS moduli, ar kuru spēlēties. Tas ir SIM800L modulis un sazinās ar jebkuru mikro, izmantojot seriālo portu. Tas tika komplektēts ar paneļa stiprinājuma antenu.

Es nolēmu izveidot vienkāršu SMS kontroliera sistēmu, kas izmanto īsziņu pakalpojumu (SMS) komandas, lai kontrolētu ierīces un norādītu trauksmes.

1. darbība: SMS komandas

SMS komandas
SMS komandas

Tāpat kā ar jebkuru sakaru sistēmu, īpašas komandas ir jānosūta uz attālo ierīci, lai pateiktu, kas jādara. Tāpat attālajai ierīcei ir jāatbild vai jāreaģē uz šīm komandām. Šis projekts sastāv no divām daļām, SMS kontroliera un standarta mobilā tālruņa.

Ideja bija izveidot vienkāršu SMS kontrolieri ar četrām digitālajām izejām. Atkarībā no saņemtās SMS vienībai jāspēj kontrolēt atsevišķas izejas.

Es arī nolēmu iekļaut četras digitālās ieejas. To var izmantot, lai norādītu trauksmes signālus vai citu informāciju.

Pirms būvniecības uzsākšanas es nolēmu izveidot īpašas komandas konkrētām funkcijām. Šīs “komandas” tiks nosūtītas, izmantojot SMS no mobilā tālruņa.

SMS kontroliera saņemšanas komandas:

o1: 1 - ieslēdziet 1. izeju

o1: 0 - izslēdziet 1. izeju

o1: p - impulsa izeja 1 Ieslēgts, pēc tam izslēdziet

o2: 1 - ieslēdziet 2. izeju

o2: 0 - izslēdziet 2. izeju

o2: p - impulsa izeja 2 Ieslēgts, pēc tam izslēdziet

o3: 1 - ieslēdziet 3. izeju

o3: 0 - izslēdziet 3. izeju

o3: p - impulsa izeja 3 Ieslēgts, pēc tam izslēdziet

o4: 1 - ieslēdziet 4. izeju

o4: 0 - izslēdziet 4. izeju

o4: p - impulsa izeja 4 Ieslēgts, pēc tam izslēdziet

???? - Pieprasīt ieeju un izeju statusu

#### - atiestatīt sistēmu

Lai saņemtu atsauksmes, SMS kontrolierim jāatbild uz saņemtajām komandām un jāatbild ar SMS. Es nolēmu, ka šajā atbildes īsziņā jāiekļauj visu I/O tapu statuss.

SMS kontroliera atbildes komandas:

i1: x i2: x i3: x i4: x o1: x o2: x o3: x o4: x

kur x ir I/O statuss, 1 - ieslēgts, 0 - izslēgts.

2. darbība: izveidojiet SMS kontrolieri

SMS kontroliera izveide
SMS kontroliera izveide
SMS kontroliera izveide
SMS kontroliera izveide
SMS kontroliera izveide
SMS kontroliera izveide

Nepieciešamais aprīkojums:

Jebkurš Arduino vai atsevišķs ATMEGA328p uz maizes dēļa

SIM800L GSM/GPRS modulis ar sim karti, kas spēj nosūtīt un saņemt īsziņas

Atlaidiet līdzstrāvas/līdzstrāvas pārveidotāju

PIEZĪME !

Līdzstrāvas/līdzstrāvas pārveidotājs ir nepieciešams SIM800L moduļa barošanai. Šis modulis darbojas no 3,7 V līdz 5 V, atkarībā no jūsu versijas. Šim modulim ir nepieciešams arī barošanas avots, kas var piegādāt līdz 2A, kad modulis pārraida datus. To nevar darbināt tieši no Arduino Uno !

Ķēde ir diezgan vienkārša. Esmu to samontējis un pārbaudījis uz maizes dēļa.

Strāvas padeve notiek caur DC/DC pārveidotāju, izejas spriegums ir iestatīts uz 4,5 V. Ir četras gaismas diodes, kas simulē digitālās izejas, un četras pogas digitālajām ieejām. SIM800L ir savienots ar ATMEGA328p Rx/Tx tapām.

Piekto gaismas diodi izmanto, lai norādītu, kad sistēma aizņem SMS sūtīšanu.

3. darbība: ATMEGA328p programmēšana

ATMEGA328p programmēšana
ATMEGA328p programmēšana
ATMEGA328p programmēšana
ATMEGA328p programmēšana

Pirms programmēšanas atveriet INO failu un rediģējiet tālruņa numuru. Aizstājiet xxxxxxxxxx ar savu mobilā tālruņa numuru 46. rindā. Pārkopējiet un augšupielādējiet failu.

Izlasiet arī instrukcijas, kā konfigurēt programmatūras sērijas portu INO failā.

//=============================================================================//

//! ! ! PIEZĪME ! ! !

// ================

//

// Buferis programmatūras sērijas bibliotēkā jāmaina uz 200

//

// Lai izmantotu programmatūras sēriju, lietotājam arī jāmaina programmatūras sērijas buferis uz 200.

// Tas ir jārediģē šādā failā:

//

// C:/Program Files/Arduino x.x.x/Hardware/Arduino/AVR/Libraries/SoftwareSerial/src/SoftWareSerial.h

//

// Mainiet buferi, kā norādīts zemāk:

//

// #ifndef _SS_MAX_RX_BUFF

// #define _SS_MAX_RX_BUFF 200

// RX bufera izmērs

// #endif

//

//=============================================================================

Skatiet šo pamācību, lai programmēt ATMEGA328p uz maizes dēļa, izmantojot Arduino UNO.

www.instructables.com/id/Arduino-UNO-as-AtM…

4. darbība: SMS kontroliera izmantošana

Izmantojot SMS kontrolieri
Izmantojot SMS kontrolieri

Izmantojot SMS kontrolieri

Īsziņu kontrolieris automātiski nosūtīs īsziņu uz jūsu tālruni, ja tiks aktivizēta kāda no četrām ievadēm. Sīkāka informācija par aktivizētāju tiks iekļauta SMS tekstā.

Īsziņas un komandas INO failā var rediģēt atbilstoši jūsu vajadzībām.

SMS kontroliera izeju pārbaude

No sava mobilā tālruņa nosūtiet šādas komandas uz SIM800L simcard numuru:

o1: 1, tas ieslēgs 1. izeju.

Tālrunī jūs saņemsit šādu SMS:

i1: 0 i2: 0 i3: 0 i4: 0 o1: 1 o2: 0 03: 0 o4: 0

01: 0, tas izslēgs 1. izeju.

Tālrunī jūs saņemsit šādu SMS:

i1: 0 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

01: p, tas ieslēgs 1. izeju uz 1 sekundi, pēc tam vēlreiz izslēgs 1. izeju (impulss).

Tālrunī jūs saņemsit šādu SMS:

i1: 0 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

SMS kontroliera ievades pārbaude

Īslaicīgi nospiediet SMS kontrollera pogu 1

Tālrunī jūs automātiski saņemsit šādu SMS:

i1: 1 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

Īslaicīgi nospiediet SMS kontrollera pogu 2

Tālrunī jūs automātiski saņemsit šādu SMS:

i1: 1 i2: 1 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

Īslaicīgi nospiediet SMS kontrollera pogu 3

Tālrunī jūs automātiski saņemsit šādu SMS:

i1: 1 i2: 1i3: 1 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

Kā redzams saņemtajā SMS, izejas mainās atbilstoši saņemtajām komandām. Tomēr pēc taustiņu nospiešanas ievade nemainās no 1 uz 0. Tā kā es vēlējos redzēt jebkādas izmaiņas ieejās, es nolēmu aizzīmogot ievades statusu, līdz SMS kontrolierim tiek nosūtīta atiestatīšanas komanda.

Modinātāju atiestatīšana

Lai atiestatītu ievades statusu, nosūtiet šādu komandu:

####, tas atiestatīs ievades statusu.

Tālrunī jūs saņemsit šādu SMS:

i1: 0 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

Statusa atjauninājumi

Varat arī jebkurā laikā pieprasīt statusu, nosūtot šādu komandu:

????, tas pieprasīs I/O statusa atjaunināšanu.

Tālrunī jūs saņemsit šādu SMS:

i1: x i2: x i3: x i4: x o1: x o2: x 03: x o4: x

kur x norāda statusu, 1 - ieslēgts, 0 - izslēgts.

5. darbība: Android lietojumprogramma

Android lietojumprogramma
Android lietojumprogramma
Android lietojumprogramma
Android lietojumprogramma
Android lietojumprogramma
Android lietojumprogramma

Izmantojot MIT App Inventor 2 (https://ai2.appinventor.mit.edu/), es izveidoju vienkāršu lietotāja interfeisu savam Android mobilajam tālrunim. Šī lietotne ļauj pielāgot katra I/O aprakstu. Tas arī ļauj ievadīt tālruņa numuru.

Četras pogas tiek izmantotas, lai kontrolētu izejas, savukārt izvēles rūtiņas norāda ievades statusu.

Lai rediģētu lietotni, izveidojiet MIT App Inventor 2 kontu un importējiet AIA failu.

Lai instalētu lietotni savā tālrunī, nokopējiet APK failu savā tālrunī un instalējiet to. Tālruņa drošības iestatījumos jums būs jāiespējo lietotņu instalēšana no “Nezināmiem avotiem”.

Ieteicams: