Sadržaj:

Android i Arduino kućna automatizacija zasnovana na SMS -u: 5 koraka (sa slikama)
Android i Arduino kućna automatizacija zasnovana na SMS -u: 5 koraka (sa slikama)

Video: Android i Arduino kućna automatizacija zasnovana na SMS -u: 5 koraka (sa slikama)

Video: Android i Arduino kućna automatizacija zasnovana na SMS -u: 5 koraka (sa slikama)
Video: Smart Home Automation with Android + Ethernet Internet + Arduino 2024, Juli
Anonim
Android i Arduino SMS bazirana kućna automatizacija
Android i Arduino SMS bazirana kućna automatizacija
Android i Arduino SMS bazirana kućna automatizacija
Android i Arduino SMS bazirana kućna automatizacija

! ! ! BILJESKA ! ! !

Zbog nadogradnje lokalnog tornja za mobilne telefone 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 sa bilo kojim mikro uređajem putem serijskog porta. Došao je u kompletu sa antenom za montiranje ploče.

Odlučio sam izgraditi jednostavan sistem za upravljanje SMS porukama 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 sistema, posebne naredbe moraju biti poslane na udaljeni uređaj kako bi mu rekli šta da radi. Slično, udaljeni uređaj mora odgovoriti ili reagirati na ove naredbe. Ovaj projekt se sastoji od dva dijela, SMS kontrolera i standardnog mobilnog telefona.

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

Odlučio sam uključiti i č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 'komande' će biti poslane putem SMS -a sa mobilnog telefona.

Komande za prijem SMS kontrolera:

o1: 1 - uključite izlaz 1

o1: 0 - okrenite 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

???? - Status zahtjeva za ulaze i izlaze

#### - Resetujte sistem

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

Komande 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 prilično jednostavan. Sastavio sam ga i testirao na ploči.

Napajanje kruga se vrši 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 povezan sa Rx/Tx pinovima ATMEGA328p.

Peta LED dioda se koristi za označavanje kada je sistem 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 sa svojim brojem mobilnog telefona u redu 46. Ponovo kompajlirajte i otpremite datoteku.

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

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

//! ! ! BILJEŠKA ! ! !

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

//

// BUFER U SERIJSKOJ KNJIŽNICI SOFTVERA BITI PROMJENJEN NA 200

//

// Da bi koristio softverski serijski broj, korisnik bi trebao promijeniti i programski serijski BUFFER na 200.

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

//

// C:/Programske datoteke/Arduino x.x.x/Hardver/Arduino/AVR/Biblioteke/SoftwareSerial/src/SoftWareSerial.h

//

// Promijenite bafer na sljedeći način:

//

// #ifndef _SS_MAX_RX_BUFF

// #define _SS_MAX_RX_BUFF 200

// Veličina međuspremnika RX

// #endif

//

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

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

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

Korak 4: Upotreba SMS kontrolera

Upotreba SMS kontrolera
Upotreba SMS kontrolera

Upotreba SMS kontrolera

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

SMS poruke i naredbe možete urediti prema vašim potrebama u INO datoteci.

Testiranje izlaza SMS kontrolera

Sa svog mobilnog telefona 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 ponovo 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 dugme 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 dugme 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 dugme 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 unosa sve dok se naredba za resetiranje ne pošalje SMS kontroleru.

Resetirajte 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 mobilni telefon. Ova vam aplikacija omogućuje prilagodbu opisa svakog U/I -a. Takođe omogućava unos telefonskog broja.

Četiri dugmeta se koriste za kontrolu izlaza, dok polja za potvrdu označavaju status ulaza.

Da biste uredili aplikaciju, stvorite MIT App Inventor 2 račun i uvezite AIA datoteku.

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

Preporučuje se: