Android және Arduino SMS негізіндегі үй автоматикасы: 5 қадам (суреттермен)
Android және Arduino SMS негізіндегі үй автоматикасы: 5 қадам (суреттермен)
Anonim
Android және Arduino SMS негізіндегі үй автоматикасы
Android және Arduino SMS негізіндегі үй автоматикасы
Android және Arduino SMS негізіндегі үй автоматикасы
Android және Arduino SMS негізіндегі үй автоматикасы

! ! ! N O T I C E! ! !

Менің аймағымда жергілікті ұялы телефон мұнарасы жаңартылғандықтан, мен бұл GSM модулін қолдана алмаймын. Жаңа мұнара 2G құрылғыларына қолдау көрсетпейді. Сондықтан мен бұл жобаға бұдан былай қолдау көрсете алмаймын

Жақында мен салыстырмалы түрде арзан Quad Band GSM/GPRS модулін алдым. Бұл SIM800L модулі және кез келген микроорганизммен сериялық порт арқылы байланысады. Ол панельдік антеннамен бірге келді.

Мен құрылғыларды басқару және дабылдарды көрсету үшін қысқа хабарлама қызметі (SMS) командаларын қолданатын қарапайым SMS Controller жүйесін құруды шештім.

1 -қадам: SMS пәрмендері

SMS пәрмендері
SMS пәрмендері

Кез келген байланыс жүйесімен AS, нақты командаларды қашықтағы құрылғыға жіберіп, не істеу керектігін айту керек. Сол сияқты, қашықтағы құрылғы бұл командаларға жауап беруі немесе жауап беруі қажет. Бұл жоба екі бөліктен тұрады, SMS контроллері және стандартты ұялы телефон.

Идея төрт цифрлық шығысы бар қарапайым SMS контроллерін құру болды. Қабылданған SMS -ке байланысты құрылғы жеке шығуларды басқара алуы керек.

Мен сондай -ақ төрт цифрлық кірісті енгізуді шештім. Бұл дабылдарды немесе басқа ақпаратты көрсету үшін пайдаланылуы мүмкін.

Құрылысты бастамас бұрын мен белгілі бір функцияларға арналған арнайы командаларды құруды шештім. Бұл «командалар» ұялы телефоннан SMS арқылы жіберіледі.

SMS контроллері командаларды қабылдайды:

o1: 1 - шығуды 1 қосу

o1: 0 - шығуды 1 Өшіру

o1: p - импульстік шығыс 1 Қосулы, содан кейін Өшіріңіз

o2: 1 - шығуды 2 қосу

o2: 0 - шығуды 2 Өшіру

o2: p - импульстік шығыс 2 Қосулы, содан кейін Өшіріңіз

o3: 1 - шығуды 3 қосу

o3: 0 - шығуды бұру 3 Өшіру

o3: p - импульстік шығыс 3 Қосулы, содан кейін Өшіріңіз

o4: 1 - шығуды 4 қосу

o4: 0 - шығуды бұру 4 Өшіру

o4: p - импульстік шығыс 4 Қосулы, содан кейін Өшіріңіз

???? - Кіріс және шығыс күйін сұрау

#### - Жүйені қалпына келтіру

Кері байланыс үшін SMS контроллері алынған командаларға жауап беруі және SMS арқылы жауап беруі керек. Мен бұл жауапты SMS барлық енгізу -шығару түйреуіштерінің күйін қамтуы керек деп шештім.

SMS контроллерінің жауап командалары:

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

мұндағы x - енгізу -шығару күйі, Қосу үшін 1, Өшіру үшін 0.

2 -қадам: SMS контроллерін құру

SMS контроллерін құру
SMS контроллерін құру
SMS контроллерін құру
SMS контроллерін құру
SMS контроллерін құру
SMS контроллерін құру

Қажетті құрал -жабдықтар:

Кез келген Arduino немесе жеке тақтадағы ATMEGA328p

SIM -картасы бар SIM800L GSM/GPRS модулі SMS жіберуге және қабылдауға қабілетті

DC/DC түрлендіргішін төмендетіңіз

ЕСКЕРТУ !

DC/DC түрлендіргіші SIM800L модулін қуаттандыру үшін қажет. Бұл модуль сізде бар нұсқаға байланысты 3,7 В пен 5 В аралығында жұмыс істейді. Бұл модуль сонымен қатар модуль деректерді жібергенде 2А дейін жеткізе алатын қуат көзін қажет етеді. Оны тікелей Arduino Uno -дан қуаттандыруға болмайды !

Схема өте қарапайым. Мен оны тақтаға жинап, сынап көрдім.

Электр тізбегінің кернеуі тұрақты кернеу/тұрақты ток түрлендіргіші арқылы болады, шығыс кернеуі 4,5 В -қа орнатылады. Сандық шығуды имитациялауға арналған төрт жарық диоды және цифрлық кірістерге арналған төрт түйме бар. SIM800L ATMEGA328p Rx/Tx түйреуіштеріне қосылған.

5 -ші жарық диоды жүйеде SMS жіберу уақытын көрсету үшін қолданылады.

3 -қадам: ATMEGA328p бағдарламалау

ATMEGA328p бағдарламалау
ATMEGA328p бағдарламалау
ATMEGA328p бағдарламалау
ATMEGA328p бағдарламалау

Бағдарламалау алдында INO файлын ашып, телефон нөмірін өңдеңіз. 46 -жолда xxxxxxxxxx ұялы телефон нөмірімен ауыстырыңыз. Файлды қайта құрастырыңыз және жүктеңіз.

Сонымен қатар, INO файлындағы Бағдарламалық қамтамасыз етудің сериялық портын конфигурациялау бойынша нұсқауларды оқыңыз.

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

//! ! ! ЕСКЕРТУ ! ! !

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

//

// БАҒДАРЛАМАЛЫҚ КІТАПХАНАНЫҢ БУФЕРІ 200 -ге ӨЗГЕРІЛЕДІ

//

// Бағдарламалық қамтамасыз ету сериясын пайдалану үшін пайдаланушы Software Serial BUFFER параметрін 200 -ге өзгертуі керек.

// Бұл келесі файлда өңделуі керек:

//

// C:/Бағдарлама файлдары/Arduino x.x.x/Аппараттық құрал/Arduino/AVR/Кітапханалар/SoftwareSerial/src/SoftWareSerial.h

//

// Буферді төмендегідей өзгертіңіз:

//

// #ifndef _SS_MAX_RX_BUFF

// #анықтау _SS_MAX_RX_BUFF 200

// RX буферлік өлшемі

// #endif

//

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

ATMEGA328p бағдарламасын Arduino UNO көмегімен тақтаға бағдарламалау үшін осы нұсқаулықты қараңыз.

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

4 -қадам: SMS контроллерін пайдалану

SMS контроллерін қолдану
SMS контроллерін қолдану

SMS контроллерін қолдану

SMS контроллері телефонға автоматты түрде SMS жібереді, егер төрт кірістің кез келгені іске қосылса. Триггер туралы мәліметтер SMS мәтінінде болады.

SMS хабарламалар мен пәрмендерді сіздің қажеттіліктеріңізге сәйкес INO файлында өңдеуге болады.

SMS контроллерінің шығуын тексеру

Ұялы телефоннан SIM800L картасының нөміріне келесі пәрмендерді жіберіңіз:

o1: 1, бұл 1 шығысын қосады.

Сіздің телефоныңызға келесі SMS келеді:

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

01: 0, бұл 1 шығысын өшіреді.

Телефоныңызға келесі SMS келеді:

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

01: p, бұл 1 шығуды 1 секундқа қосады, содан кейін шығуды 1 қайтадан өшіреді (импульсті).

Телефоныңызға келесі SMS келеді:

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

SMS контроллерінің кірістерін тексеру

SMS контроллерінде 1 түймешігін қысқа басыңыз

Телефоныңызға келесі SMS автоматты түрде келеді:

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

SMS контроллерінде 2 батырмасын қысқа басыңыз

Телефоныңызға келесі SMS автоматты түрде келеді:

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

SMS контроллерінде 3 түймешігін тез басыңыз

Телефоныңызға келесі SMS автоматты түрде келеді:

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

Қабылданған SMS -тен көрініп тұрғандай, шығыс алынған командаларға сәйкес өзгереді. Бірақ түймелер басылғаннан кейін кірістер 1 -ден 0 -ге дейін өзгермейді. Мен кірістердегі кез келген өзгерістерді көргім келгендіктен, SMS контроллеріне ысыру пәрмені жіберілгенге дейін енгізу күйінде мөр қоюды шештім.

Дабылдарды қалпына келтіру

Кіріс күйін қалпына келтіру үшін келесі пәрменді жіберіңіз:

####, бұл кіріс күйін қалпына келтіреді.

Сіздің телефоныңызға келесі SMS келеді:

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

Күй жаңартулары

Сіз кез келген уақытта келесі пәрменді жіберу арқылы күйді сұрай аласыз:

????, бұл енгізу -шығару жүйесінің күйін жаңартуды сұрайды.

Телефоныңызға келесі SMS келеді:

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

мұндағы x күйді көрсетеді, 1 қосу үшін, 0 өшіру үшін.

5 -қадам: Android қосымшасы

Android қосымшасы
Android қосымшасы
Android қосымшасы
Android қосымшасы
Android қосымшасы
Android қосымшасы

MIT App Inventor 2 (https://ai2.appinventor.mit.edu/) көмегімен мен Android ұялы телефоныма қарапайым қолданушы интерфейсін құрдым. Бұл бағдарлама әр енгізу -шығару сипаттамасын реттеуге мүмкіндік береді. Бұл телефон нөмірін енгізуге де мүмкіндік береді.

Төрт түйме Шығуды бақылау үшін пайдаланылады, ал құсбелгілер кіріс күйін көрсетеді.

Қолданбаны өңдеу үшін MIT App Inventor 2 есептік жазбасын жасаңыз және AIA файлын импорттаңыз.

Қолданбаны телефонға орнату үшін APK файлын телефонға көшіріп, орнатыңыз. Телефонның қауіпсіздік параметрлері астындағы «Белгісіз көздерден» қосымшаларды орнатуды қосу қажет болады.

Ұсынылған: