Sadržaj:

Android i Arduino SMS automatizacija doma: 5 koraka (sa slikama)
Android i Arduino SMS automatizacija doma: 5 koraka (sa slikama)

Video: Android i Arduino SMS automatizacija doma: 5 koraka (sa slikama)

Video: Android i Arduino SMS automatizacija doma: 5 koraka (sa slikama)
Video: Дедушка не выдержал и дал ответ за Украинский флаг 2024, Srpanj
Anonim
Automatizacija doma temeljena na Androidu i Arduinu putem SMS -a
Automatizacija doma temeljena na Androidu i Arduinu putem SMS -a
Kućna automatizacija temeljena na Androidu i Arduinu putem SMS -a
Kućna automatizacija temeljena na Androidu i Arduinu putem SMS -a

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

Zbog nadogradnje lokalnog tornja za mobitele u mom području, više ne mogu koristiti ovaj GSM modul. Noviji toranj više ne podržava 2G uređaje. Stoga više ne mogu davati nikakvu podršku ovom projektu

Nedavno sam dobio relativno jeftin Quad Band GSM/GPRS modul za igru. To je modul SIM800L i komunicira s bilo kojim mikro uređajem putem serijskog porta. Došao je u kompletu s antenom za montiranje ploče.

Odlučio sam izgraditi jednostavan sustav SMS kontrolera koji koristi naredbe usluge kratkih poruka (SMS) za upravljanje uređajima i ukazivanje na alarme.

Korak 1: SMS naredbe

SMS naredbe
SMS naredbe

Kao i kod svakog komunikacijskog sustava, posebne naredbe moraju se poslati udaljenom uređaju kako bi mu se reklo što treba učiniti. Slično, udaljeni uređaj mora odgovoriti ili reagirati na ove naredbe. Ovaj se projekt sastoji od dva dijela, SMS kontrolera i standardnog mobitela.

Ideja je bila stvoriti jednostavan SMS kontroler s četiri digitalna izlaza. Ovisno o primljenom SMS -u, jedinica mora moći kontrolirati pojedinačne izlaze.

Također sam odlučio uključiti četiri digitalna ulaza. Ovo se može koristiti za označavanje alarma ili drugih informacija.

Prije početka gradnje odlučio sam stvoriti posebne naredbe za određene funkcije. Ove 'naredbe' bit će poslane SMS -om s mobitela.

Naredbe za primanje SMS kontrolera:

o1: 1 - uključite izlaz 1

o1: 0 - isključite izlaz 1 Isključeno

o1: p - impulsni izlaz 1 Uključite, a zatim isključite

o2: 1 - uključite izlaz 2

o2: 0 - isključite izlaz 2

o2: p - impulsni izlaz 2 Uključite, a zatim isključite

o3: 1 - uključite izlaz 3

o3: 0 - isključite izlaz 3

o3: p - impulsni izlaz 3 Uključite, a zatim isključite

o4: 1 - uključite izlaz 4

o4: 0 - isključite izlaz 4

o4: p - impulsni izlaz 4 Uključite, a zatim isključite

???? - Zahtjev za status ulaza i izlaza

#### - Resetiranje sustava

Za povratne informacije, SMS kontrolor treba odgovoriti na primljene naredbe i odgovoriti SMS -om. Odlučio sam da ovaj SMS s odgovorom uključi status svih I/O pinova.

Naredbe za odgovor SMS kontrolera:

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

gdje je x I/O status, 1 za Uključeno, 0 za Isključeno.

Korak 2: Izgradnja SMS kontrolera

Izgradnja SMS kontrolera
Izgradnja SMS kontrolera
Izgradnja SMS kontrolera
Izgradnja SMS kontrolera
Izgradnja SMS kontrolera
Izgradnja SMS kontrolera

Potrebna oprema:

Bilo koji Arduino ili samostalni ATMEGA328p na ploči

SIM800L GSM/GPRS modul sa sim karticom koja može slati i primati SMS -ove

Odstupite od DC/DC pretvarača

BILJEŠKA !

Za napajanje modula SIM800L potreban je DC/DC pretvarač. Ovaj modul radi između 3,7 V i 5 V, ovisno o verziji koju imate. Ovaj modul također zahtijeva napajanje koje može isporučiti do 2A kada modul prenosi podatke. Ne može se napajati izravno iz Arduino Uno !

Krug je vrlo jednostavan. Sastavio sam ga i testirao na ploči.

Napajanje u krug dolazi putem DC/DC pretvarača, s izlaznim naponom postavljenim na 4,5V. Postoje četiri LED diode za simulaciju digitalnih izlaza i četiri tipke za digitalne ulaze. SIM800L je spojen na Rx/Tx pinove ATMEGA328p.

5. LED se koristi za označavanje kada je sustav zauzet slanjem SMS -a.

Korak 3: Programiranje ATMEGA328p

Programiranje ATMEGA328p
Programiranje ATMEGA328p
Programiranje ATMEGA328p
Programiranje ATMEGA328p

Prije programiranja otvorite INO datoteku i uredite telefonski broj. Zamijenite xxxxxxxxxx vlastitim brojem mobitela u retku 46. Ponovno kompajlirajte i prenesite datoteku.

Također pročitajte upute o tome kako konfigurirati programski serijski port u INO datoteci.

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

//! ! ! BILJEŠKA ! ! !

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

//

// BUFER U SERIJSKOJ KNJIŽNICI SOFTVERA PROMIJENITI NA 200

//

// Za upotrebu serijskog softvera, korisnik bi također trebao promijeniti programski serijski BUFFER na 200.

// Ovo se mora urediti u sljedećoj datoteci:

//

// C:/Programske datoteke/Arduino x.x.x/Hardver/Arduino/AVR/Knjižnice/SoftwareSerial/src/SoftWareSerial.h

//

// Promijenite međuspremnik kako slijedi:

//

// #ifndef _SS_MAX_RX_BUFF

// #define _SS_MAX_RX_BUFF 200

// RX veličina međuspremnika

// #završi ako

//

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

Pogledajte ovu uputu za programiranje ATMEGA328p na matičnoj ploči pomoću Arduino UNO -a.

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

Korak 4: Korištenje SMS kontrolera

Korištenje SMS kontrolera
Korištenje SMS kontrolera

Korištenje SMS kontrolera

SMS kontroler automatski će poslati SMS na vaš telefon ako se aktivira bilo koji od četiri ulaza. Pojedinosti okidača bit će sadržane u tekstu SMS -a.

SMS poruke i naredbe mogu se urediti prema vašim potrebama u INO datoteci.

Testiranje izlaza SMS kontrolera

Sa svog mobitela pošaljite sljedeće naredbe na broj SIM kartice SIM800L:

o1: 1, ovo će uključiti izlaz 1.

Na telefon ćete primiti sljedeći SMS:

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

01: 0, ovo će isključiti izlaz 1.

Na telefon ćete primiti sljedeći SMS:

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

01: p, ovo će uključiti izlaz 1 na 1 sekundu, a zatim će ponovno isključiti izlaz 1 (pulsira).

Na telefon ćete primiti sljedeći SMS:

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

Testiranje ulaza SMS kontrolera

Na SMS kontroleru kratko pritisnite gumb 1

Na telefon ćete automatski primiti sljedeći SMS:

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

Na SMS kontroleru kratko pritisnite gumb 2

Na telefon ćete automatski primiti sljedeći SMS:

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

Na SMS kontroleru kratko pritisnite gumb 3

Na telefon ćete automatski primiti sljedeći SMS:

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

Kao što se može vidjeti na primljenom SMS -u, izlazi se mijenjaju prema primljenim naredbama. Međutim, ulazi se ne mijenjaju s 1 na 0 nakon pritiska na tipke. Budući da sam želio vidjeti sve promjene na ulazima, odlučio sam zapečatiti status ulaza sve dok se naredba za reset ne pošalje SMS kontroleru.

Poništite alarme

Da biste poništili status unosa, pošaljite sljedeću naredbu:

####, ovo će poništiti status unosa.

Na telefon ćete primiti sljedeći SMS:

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

Ažuriranja statusa

Status također možete zatražiti u bilo kojem trenutku slanjem sljedeće naredbe:

????, ovo će zahtijevati ažuriranje statusa I/O.

Na telefon ćete primiti sljedeći SMS:

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

gdje x označava status, 1 za uključeno, 0 za isključeno.

Korak 5: Android aplikacija

Android aplikacija
Android aplikacija
Android aplikacija
Android aplikacija
Android aplikacija
Android aplikacija

Koristeći MIT App Inventor 2 (https://ai2.appinventor.mit.edu/), stvorio sam jednostavno korisničko sučelje za svoj Android mobitel. Ova vam aplikacija omogućuje prilagodbu opisa svakog U/I -a. Također omogućuje unos telefonskog broja.

Četiri gumba koriste se za upravljanje izlazima, dok potvrdni okviri označavaju status ulaza.

Za uređivanje aplikacije stvorite račun MIT App Inventor 2 i uvezite datoteku AIA.

Da biste instalirali aplikaciju na telefon, kopirajte APK datoteku na telefon i instalirajte je. Morat ćete omogućiti instalaciju aplikacija iz "Nepoznatih izvora" u sigurnosnim postavkama telefona.

Preporučeni: