INHOUDSOPGAWE:

Android en Arduino SMS -gebaseerde tuisautomatisering: 5 stappe (met foto's)
Android en Arduino SMS -gebaseerde tuisautomatisering: 5 stappe (met foto's)

Video: Android en Arduino SMS -gebaseerde tuisautomatisering: 5 stappe (met foto's)

Video: Android en Arduino SMS -gebaseerde tuisautomatisering: 5 stappe (met foto's)
Video: Главная Автоматизация с помощью SMS - Использование и коды использования GSM-клавиатуры Arduino 2024, Julie
Anonim
Android en Arduino SMS -gebaseerde tuisautomatisering
Android en Arduino SMS -gebaseerde tuisautomatisering
Android en Arduino SMS -gebaseerde tuisautomatisering
Android en Arduino SMS -gebaseerde tuisautomatisering

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

Omdat die plaaslike selfoontoring in my omgewing opgegradeer is, kan ek nie meer hierdie GSM -module gebruik nie. Die nuwer toring ondersteun nie meer 2G -toestelle nie. Daarom kan ek hierdie projek nie meer ondersteun nie

Onlangs het ek 'n relatief goedkoop Quad Band GSM/GPRS -module gekry om mee te speel. Dit is 'n SIM800L -module en kommunikeer met enige mikro via 'n seriële poort. Dit het 'n paneelmonteer -antenna.

Ek het besluit om 'n eenvoudige SMS -beheerstelsel te bou wat gebruik maak van opdragte vir kort boodskappe (SMS) om toestelle te beheer en alarms aan te dui.

Stap 1: SMS -opdragte

SMS opdragte
SMS opdragte

Soos met enige kommunikasiestelsel, moet spesifieke opdragte na 'n afgeleë toestel gestuur word om te vertel wat om te doen. Die afstandtoestel moet ook op hierdie opdragte antwoord of reageer. Hierdie projek bestaan uit twee dele, die SMS -beheerder, en 'n standaard selfoon.

Die idee was om 'n eenvoudige SMS -kontroleerder met vier digitale uitsette te skep. Afhangende van die SMS wat ontvang is, moet die eenheid die individuele uitsette kan beheer.

Ek het ook besluit om vier digitale insette in te sluit. Dit kan gebruik word om alarms of ander inligting aan te dui.

Voordat ek begin bou het, het ek besluit om spesifieke opdragte vir spesifieke funksies te skep. Hierdie 'opdragte' word met 'n SMS vanaf 'n selfoon gestuur.

SMS -beheerder ontvang bevele:

o1: 1 - skakel uitset 1 aan

o1: 0 - draai uitset 1 af

o1: p - pulsuitset 1 Aan, skakel dan uit

o2: 1 - skakel uitset 2 aan

o2: 0 - draai uitset 2 af

o2: p - pulsuitset 2 Aan, skakel dan uit

o3: 1 - skakel uitset 3 aan

o3: 0 - draai uitset 3 af

o3: p - pulsuitset 3 Aan, skakel dan uit

o4: 1 - skakel uitset 4 aan

o4: 0 - draai uitset 4 af

o4: p - polsuitset 4 Aan, skakel dan uit

???? - Versoekstatus van insette en uitsette

#### - Stel stelsel terug

Vir terugvoer, moet die SMS -beheerder reageer op die opdragte wat ontvang is en met 'n SMS antwoord. Ek het besluit dat hierdie antwoord -SMS die status van alle I/O -penne moet insluit.

Opdragte vir SMS -beheerder se reaksie:

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

waar x die I/O -status is, 1 vir Aan, 0 vir Uit.

Stap 2: Bou die SMS -beheerder

Bou die SMS -beheerder
Bou die SMS -beheerder
Bou die SMS -beheerder
Bou die SMS -beheerder
Bou die SMS -beheerder
Bou die SMS -beheerder

Toerusting benodig:

Enige Arduino, of losstaande ATMEGA328p op 'n broodbord

SIM800L GSM/GPRS -module met 'n simkaart wat SMS'e kan stuur en ontvang

Skakel DC/DC -omskakelaar af

LET WEL !

Die DC/DC -omskakelaar is nodig om die SIM800L -module aan te dryf. Hierdie module werk tussen 3.7V en 5V, afhangende van die weergawe wat u het. Hierdie module benodig ook 'n kragtoevoer wat tot 2A kan lewer wanneer die module data stuur. Dit kan nie direk vanaf die Arduino Uno aangedryf word nie !

Die kring is redelik eenvoudig. Ek het dit op broodbord bymekaargemaak en getoets.

Die krag na die stroombaan is via die DC/DC -omskakelaar, met die uitgangsspanning op 4.5V. Daar is vier LED's om die digitale uitsette te simuleer, en vier knoppies vir die digitale insette. Die SIM800L is gekoppel aan die Rx/Tx -penne van die ATMEGA328p.

'N 5de LED word gebruik om aan te dui wanneer die stelsel besig is om 'n SMS te stuur.

Stap 3: Programmering van die ATMEGA328p

Die programmering van die ATMEGA328p
Die programmering van die ATMEGA328p
Die programmering van die ATMEGA328p
Die programmering van die ATMEGA328p

Maak die INO -lêer oop en wysig die telefoonnommer voordat u dit programmeer. Vervang xxxxxxxxxx met u eie selfoonnommer in reël 46. Stel weer op en laai die lêer op.

Lees ook die instruksies oor hoe om die Serial Software -poort in die INO -lêer op te stel.

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

//! ! ! LET WEL! ! !

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

//

// BUFFER IN Sagteware -seriële biblioteek om na 200 gewysig te word

//

// Om Software Serial te gebruik, moet die gebruiker ook die Software Serial BUFFER na 200 verander.

// Dit moet in die volgende lêer gewysig word:

//

// C:/Programlêers/Arduino x.x.x/Hardware/Arduino/AVR/Libraries/SoftwareSerial/src/SoftWareSerial.h

//

// Verander buffer soos hieronder:

//

// #ifndef _SS_MAX_RX_BUFF

// #defineer _SS_MAX_RX_BUFF 200

// RX buffer grootte

// #endif

//

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

Verwys na hierdie instruksies om die ATMEGA328p op die broodbord te programmeer met 'n Arduino UNO.

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

Stap 4: Gebruik die SMS -beheerder

Gebruik die SMS -beheerder
Gebruik die SMS -beheerder

Gebruik die SMS -beheerder

Die SMS -beheerder stuur outomaties 'n SMS na u telefoon as een van die vier insette geaktiveer word. Die besonderhede van die sneller sal in die SMS -teks verskyn.

Die SMS -boodskappe en opdragte kan volgens u behoeftes in die INO -lêer gewysig word.

Toets die uitsette van die SMS -beheerder

Stuur vanaf u selfoon die volgende opdragte na u SIM800L -simkaartnommer:

o1: 1, dit sal uitset 1 aanskakel.

U sal die volgende SMS op u telefoon ontvang:

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

01: 0, sal dit uitset 1 uitskakel.

U sal die volgende SMS op u telefoon ontvang:

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

01: p, dit sal uitset 1 vir 1 sekonde aanskakel en dan uitset 1 weer afskakel (pols).

U sal die volgende SMS op u telefoon ontvang:

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

Toets die insette van die SMS -beheerder

Druk kortliks op knoppie 1 op die SMS -beheerder

U sal outomaties die volgende SMS op u telefoon ontvang:

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

Druk kortliks op knoppie 2 op die SMS -beheerder

U sal outomaties die volgende SMS op u telefoon ontvang:

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

Druk kortliks op knoppie 3 op die SMS -beheerder

U sal outomaties die volgende SMS op u telefoon ontvang:

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

Soos gesien kan word op die ontvangen SMS, verander die uitsette volgens die opdragte wat ontvang is. Die insette verander egter nie van 'n 1 na 'n 0 nadat die knoppies gedruk is nie. Omdat ek enige veranderinge aan die insette wou sien, het ek besluit om die invoerstatus in te sluit totdat 'n herstelopdrag na die SMS -beheerder gestuur word.

Stel alarms terug

Om die invoerstatus te herstel, stuur die volgende opdrag:

####, dit sal die invoerstatus herstel.

U sal die volgende SMS op u telefoon ontvang:

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

Statusopdaterings

U kan die status ook te eniger tyd versoek deur die volgende opdrag te stuur:

????, dit sal 'n statusopdatering van die I/Os versoek.

U sal die volgende SMS op u telefoon ontvang:

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

waar x die status aandui, 1 vir aan, 0 vir af.

Stap 5: Android -toepassing

Android -toepassing
Android -toepassing
Android -toepassing
Android -toepassing
Android -toepassing
Android -toepassing

Met die MIT App Inventor 2 (https://ai2.appinventor.mit.edu/) het ek 'n eenvoudige gebruikerskoppelvlak vir my Android -selfoon geskep. Met hierdie app kan u die beskrywing van elke I/O aanpas. Dit maak dit ook moontlik om die telefoonnommer in te voer.

Die vier knoppies word gebruik om die uitsette te beheer, terwyl die blokkies die invoerstatus aandui.

Om die program te wysig, skep 'n MIT App Inventor 2 -rekening en voer die AIA -lêer in.

Om die app op u telefoon te installeer, kopieer die APK -lêer na u telefoon en installeer dit. U moet die installering van programme vanaf 'Onbekende bronne' onder die sekuriteitsinstellings van u telefoon moontlik maak.

Aanbeveel: