Indholdsfortegnelse:
- Trin 1: SMS -kommandoer
- Trin 2: Opbygning af SMS -controlleren
- Trin 3: Programmering af ATMEGA328p
- Trin 4: Brug af SMS -controlleren
- Trin 5: Android -applikation
Video: Android og Arduino SMS -baseret hjemmeautomatisering: 5 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
! ! ! VARSEL ! ! !
På grund af at det lokale mobiltelefontårn er blevet opgraderet i mit område, er jeg ikke længere i stand til at bruge dette GSM -modul. Det nyere tårn understøtter ikke længere 2G -enheder. Derfor kan jeg ikke længere give nogen støtte til dette projekt
For nylig modtog jeg et relativt billigt Quad Band GSM/GPRS -modul at lege med. Det er et SIM800L -modul, og kommunikerer med enhver mikro via en seriel port. Den kom komplet med en panelmonteret antenne.
Jeg besluttede at bygge et simpelt SMS -controllersystem, der bruger kommandoer til korte beskedtjenester (SMS) til at styre enheder og angive alarmer.
Trin 1: SMS -kommandoer
Ligesom med ethvert kommunikationssystem skal specifikke kommandoer sendes til en ekstern enhed for at fortælle det, hvad de skal gøre. På samme måde skal den eksterne enhed svare eller reagere på disse kommandoer. Dette projekt består af to dele, SMS -controlleren og en standard mobiltelefon.
Ideen var at oprette en simpel SMS -controller med fire digitale udgange. Afhængigt af den modtagne SMS skal enheden kunne styre de enkelte udgange.
Jeg besluttede også at inkludere fire digitale indgange. Dette kan bruges til at angive alarmer eller andre oplysninger.
Inden jeg begyndte at bygge, besluttede jeg at oprette specifikke kommandoer til bestemte funktioner. Disse 'kommandoer' vil blive sendt ved hjælp af en SMS fra en mobiltelefon.
SMS -controller Modtag kommandoer:
o1: 1 - slå output 1 til
o1: 0 - slå udgang 1 fra
o1: p - pulsudgang 1 Til, og sluk derefter
o2: 1 - tænd udgang 2 Til
o2: 0 - slå udgang 2 fra
o2: p - pulsudgang 2 Til, og sluk derefter
o3: 1 - slå output 3 til
o3: 0 - slå udgang 3 fra
o3: p - pulsudgang 3 Til, og sluk derefter
o4: 1 - slå output 4 til
o4: 0 - slå udgang 4 fra
o4: p - pulsudgang 4 Til, og sluk derefter
???? - Anmod om status for input og output
#### - Nulstil system
For feedback skal SMS -controlleren svare på de modtagne kommandoer og svare med en SMS. Jeg besluttede, at denne svar -SMS skulle indeholde status for alle I/O -ben.
Svarkommandoer til SMS -controller:
i1: x i2: x i3: x i4: x o1: x o2: x o3: x o4: x
hvor x er I/O -status, 1 for Til, 0 for Fra.
Trin 2: Opbygning af SMS -controlleren
Udstyr påkrævet:
Enhver Arduino eller enkeltstående ATMEGA328p på et brødbræt
SIM800L GSM/GPRS -modul med et simkort, der er i stand til at sende og modtage SMS'er
Træd ned DC/DC -konverter
BEMÆRK !
DC/DC -omformeren er påkrævet for at drive SIM800L -modulet. Dette modul fungerer mellem 3,7V og 5V, afhængigt af den version du har. Dette modul kræver også en strømforsyning, der kan levere op til 2A, når modulet sender data. Det kan ikke drives direkte fra Arduino Uno !
Kredsløbet er ret simpelt. Jeg har samlet og testet det på brødbræt.
Strømmen til kredsløbet er via DC/DC -omformeren, med udgangsspændingen indstillet til 4,5V. Der er fire lysdioder til simulering af de digitale udgange og fire knapper til de digitale indgange. SIM800L er forbundet til Rx/Tx -benene på ATMEGA328p.
En femte LED bruges til at angive, hvornår systemet har travlt med at sende en SMS.
Trin 3: Programmering af ATMEGA328p
Inden du programmerer, skal du åbne INO -filen og redigere telefonnummeret. Erstat xxxxxxxxxx med dit eget mobiltelefonnummer på linje 46. Genkompiler, og upload filen.
Læs også instruktionerne om, hvordan du konfigurerer den serielle softwareport i INO -filen.
//=============================================================================//
//! ! ! BEMÆRK ! ! !
// ================
//
// BUFFER I SOFTWARE SERIAL BIBLIOTEKET ÆNDRES TIL 200
//
// For at bruge Software Serial skal brugeren også ændre Software Serial BUFFER til 200.
// Dette skal redigeres i følgende fil:
//
// C:/Program Files/Arduino x.x.x/Hardware/Arduino/AVR/Libraries/SoftwareSerial/src/SoftWareSerial.h
//
// Skift buffer som nedenfor:
//
// #ifndef _SS_MAX_RX_BUFF
// #define _SS_MAX_RX_BUFF 200
// RX buffer størrelse
// #Afslut Hvis
//
//=============================================================================
Se denne instruktion for at programmere ATMEGA328p på brødbrættet ved hjælp af en Arduino UNO.
www.instructables.com/id/Arduino-UNO-as-AtM…
Trin 4: Brug af SMS -controlleren
Brug af SMS -controlleren
SMS -controlleren sender automatisk en SMS til din telefon, hvis en af de fire indgange udløses. Detaljerne om udløseren vil være indeholdt i SMS -teksten.
SMS -beskeder og kommandoer kan redigeres efter dine behov i INO -filen.
Test af SMS -controllerens udgange
Fra din mobiltelefon skal du sende følgende kommandoer til dit SIM800L -simkortnummer:
o1: 1, dette vil tænde output 1.
På din telefon modtager du følgende SMS:
i1: 0 i2: 0 i3: 0 i4: 0 o1: 1 o2: 0 03: 0 o4: 0
01: 0, vil dette slukke for output 1.
På din telefon modtager du følgende SMS:
i1: 0 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0
01: p, dette vil tænde output 1 i 1 sekund, derefter slukke output 1 igen (pulseret).
På din telefon modtager du følgende SMS:
i1: 0 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0
Test af SMS -controllerindgange
Tryk kort på knap 1 på SMS -controlleren
På din telefon modtager du automatisk følgende SMS:
i1: 1 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0
Tryk kortvarigt på knap 2 på SMS -controlleren
På din telefon modtager du automatisk følgende SMS:
i1: 1 i2: 1 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0
Tryk kort på knap 3 på SMS -controlleren
På din telefon modtager du automatisk følgende SMS:
i1: 1 i2: 1i3: 1 i4: 0 o1: 0 o2: 0 03: 0 o4: 0
Som det kan ses på den modtagne SMS, ændres outputene i henhold til de modtagne kommandoer. Indgangene ændres imidlertid ikke tilbage fra 1 til 0, efter at der blev trykket på knapperne. Fordi jeg ønskede at kunne se ændringer på input, besluttede jeg at forsegle inputstatus, indtil en nulstillingskommando sendes til SMS -controlleren.
Nulstil alarmer
Send nedenstående kommando for at nulstille inputstatus:
####, dette nulstiller inputstatus.
På din telefon modtager du følgende SMS:
i1: 0 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0
Statusopdateringer
Du kan også til enhver tid anmode om status ved at sende følgende kommando:
????, vil dette kræve en statusopdatering af I/Os.
På din telefon modtager du følgende SMS:
i1: x i2: x i3: x i4: x o1: x o2: x 03: x o4: x
hvor x angiver status, 1 for tændt, 0 for slukket.
Trin 5: Android -applikation
Ved hjælp af MIT App Inventor 2 (https://ai2.appinventor.mit.edu/) lavede jeg en simpel brugergrænseflade til min Android -mobiltelefon. Denne app giver dig mulighed for at tilpasse beskrivelsen af hver I/O. Det giver også mulighed for indtastning af telefonnummeret.
De fire knapper bruges til at styre output, mens afkrydsningsfelterne angiver inputstatus.
For at redigere appen skal du oprette en MIT App Inventor 2 -konto og importere AIA -filen.
For at installere appen på din telefon skal du kopiere APK -filen til din telefon og installere den. Du bliver nødt til at aktivere installationen af apps fra "Ukendte kilder" under din telefons sikkerhedsindstillinger.
Anbefalede:
Hjemmeautomatisering med ESP8266 WiFi uden brug af Blynk !: 24 trin (med billeder)
Hjemmeautomatisering med ESP8266 WiFi uden brug af Blynk !: For det første vil jeg takke alle for at gøre mig til en vinder i Automation Contest 2016 for denne INSTRUKTABELE. Så som jeg lovede dig, her er instruktionerne til styring af husholdningsapparater med ESP8266 WiFi -modul
Batteridrevet dørføler med integrering af hjemmeautomatisering, WiFi og ESP-NU: 5 trin (med billeder)
Batteridrevet dørføler med hjemmeautomatiseringsintegration, WiFi og ESP-NU: I denne instruktive viser jeg dig, hvordan jeg lavede en batteridrevet dørføler med hjemmeautomatiseringsintegration. Jeg har set nogle andre flotte sensorer og alarmsystemer, men jeg ville selv lave en. Mine mål: En sensor, der registrerer og rapporterer en doo
Enkleste hjemmeautomatisering ved hjælp af Bluetooth, Android Smartphone og Arduino .: 8 trin (med billeder)
Enkleste hjemmeautomatisering ved hjælp af Bluetooth, Android Smartphone og Arduino .: Hej alle sammen, Dette projekt handler om at bygge den mest forenklede hjemmeautomatiseringsenhed ved hjælp af en arduino og et bluetooth -modul. Denne er meget let at bygge, og den kan bygges på få timer. I min version, som jeg forklarer lige her, kan jeg
Enkel hjemmeautomatisering ved hjælp af Raspberry Pi3 og Android Things: 5 trin (med billeder)
Enkel hjemmeautomatisering ved hjælp af Raspberry Pi3 og Android Things: Ideen er at designe et “ smart HJEM ” hvor man kan styre husholdningsapparater ved hjælp af Android Things og Raspberry Pi. Projektet består af at styre husapparater som lys, blæser, motor osv. Påkrævede materialer: Raspberry Pi 3HDMI Ca
Billig og effektiv hjemmeautomatisering med hindbær Pi: 11 trin (med billeder)
Billig og effektiv hjemmeautomatisering med Raspberry Pi: Jeg har altid ønsket at kunne styre lys trådløst, men kommercielle muligheder er normalt dyre. Philips Hue -lys koster omkring $ 70, og WiFi -tilsluttede lys er også dyre. Denne vejledning fortæller dig, hvordan du styrer op til fem lys/l