Tartalomjegyzék:

Android és Arduino SMS alapú otthoni automatizálás: 5 lépés (képekkel)
Android és Arduino SMS alapú otthoni automatizálás: 5 lépés (képekkel)

Videó: Android és Arduino SMS alapú otthoni automatizálás: 5 lépés (képekkel)

Videó: Android és Arduino SMS alapú otthoni automatizálás: 5 lépés (képekkel)
Videó: Создание приложений для мобильных устройств, игр, Интернета вещей и многого другого с помощью AWS DynamoDB, Рик Хулихан 2024, Július
Anonim
Android és Arduino SMS alapú otthoni automatizálás
Android és Arduino SMS alapú otthoni automatizálás
Android és Arduino SMS alapú otthoni automatizálás
Android és Arduino SMS alapú otthoni automatizálás

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

Mivel a környékbeli mobiltelefon -tornyot korszerűsítették, már nem tudom használni ezt a GSM modult. Az újabb torony már nem támogatja a 2G eszközöket. Ezért már nem tudok semmilyen támogatást adni ehhez a projekthez

Nemrég kaptam egy viszonylag olcsó négysávos GSM/GPRS modult, amellyel játszhatok. Ez egy SIM800L modul, és soros porton keresztül kommunikál minden mikróval. Komplett antennával szerelték.

Úgy döntöttem, hogy felépítek egy egyszerű SMS vezérlőrendszert, amely rövid üzenetszolgáltatási (SMS) parancsokat használ az eszközök vezérlésére és a riasztások jelzésére.

1. lépés: SMS -parancsok

SMS parancsok
SMS parancsok

Mint minden kommunikációs rendszer esetében, speciális parancsokat kell küldeni egy távoli eszközre, hogy megmondja, mit kell tennie. Hasonlóképpen, a távoli eszköznek válaszolnia kell vagy reagálnia kell ezekre a parancsokra. Ez a projekt két részből áll, az SMS vezérlőből és egy szabványos mobiltelefonból.

Az ötlet egy egyszerű SMS vezérlő létrehozása volt, négy digitális kimenettel. A fogadott SMS -től függően az egységnek képesnek kell lennie az egyes kimenetek vezérlésére.

Úgy döntöttem, hogy négy digitális bemenetet is beépítek. Ezzel riasztásokat vagy egyéb információkat jelezhet.

Az összeállítás megkezdése előtt úgy döntöttem, hogy speciális parancsokat hozok létre bizonyos funkciókhoz. Ezeket a „parancsokat” SMS -ben küldjük el egy mobiltelefonról.

SMS vezérlő fogadási parancsok:

o1: 1 - kapcsolja be az 1 -es kimenetet

o1: 0 - kapcsolja ki az 1 -es kimenetet

o1: p - impulzus kimenet 1 Be, majd kapcsolja ki

o2: 1 - kapcsolja be a 2 -es kimenetet

o2: 0 - kapcsolja ki a 2 -es kimenetet

o2: p - impulzus kimenet 2 Be, majd kapcsolja ki

o3: 1 - kapcsolja be a 3. kimenetet

o3: 0 - kapcsolja ki a 3. kimenetet

o3: p - impulzus kimenet 3 Be, majd kapcsolja ki

o4: 1 - kapcsolja be a 4 -es kimenetet

o4: 0 - kapcsolja ki a 4 -es kimenetet

o4: p - impulzus kimenet 4 Be, majd kapcsolja ki

???? - A bemenetek és kimenetek állapotának kérése

#### - A rendszer visszaállítása

Visszajelzésként az SMS -vezérlőnek válaszolnia kell a kapott parancsokra, és SMS -ben kell válaszolnia. Úgy döntöttem, hogy ennek a válasz SMS -nek tartalmaznia kell az összes I/O pin állapotát.

SMS vezérlő válaszparancsai:

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

ahol x az I/O állapot, 1 a Be, 0 a Ki értéknél.

2. lépés: Az SMS -vezérlő építése

Az SMS vezérlő építése
Az SMS vezérlő építése
Az SMS vezérlő építése
Az SMS vezérlő építése
Az SMS vezérlő építése
Az SMS vezérlő építése

Felszerelés kötelező:

Bármilyen Arduino vagy önálló ATMEGA328p kenyérsütőn

SIM800L GSM/GPRS modul SIM -kártyával, amely képes SMS -ek küldésére és fogadására

Lépjen le a DC/DC átalakítóról

JEGYZET !

A DC/DC átalakító szükséges a SIM800L modul táplálásához. Ez a modul 3,7V és 5V között működik, a használt verziótól függően. Ez a modul olyan tápegységet is igényel, amely akár 2A -t képes leadni, amikor a modul adatokat továbbít. Nem lehet közvetlenül az Arduino Uno -ról táplálni !

Az áramkör meglehetősen egyszerű. Összeszereltem és kipróbáltam kenyértáblán.

Az áramkör áramellátása a DC/DC átalakítón keresztül történik, a kimeneti feszültség pedig 4,5 V. Négy LED van a digitális kimenetek szimulációjához, és négy gomb a digitális bemenetekhez. A SIM800L az ATMEGA328p Rx/Tx csapjaihoz van csatlakoztatva.

Az ötödik LED jelzi, ha a rendszer SMS küldésben van.

3. lépés: Az ATMEGA328p programozása

Az ATMEGA328p programozása
Az ATMEGA328p programozása
Az ATMEGA328p programozása
Az ATMEGA328p programozása

Programozás előtt nyissa meg az INO fájlt, és szerkessze a telefonszámot. Cserélje le az xxxxxxxxxx fájlt a saját mobiltelefonszámára a 46. sorban. Fordítsa újra és töltse fel a fájlt.

Ezenkívül olvassa el a szoftver soros portjának beállítására vonatkozó utasításokat az INO fájlban.

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

//! ! ! JEGYZET ! ! !

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

//

// A PUFF A SZOFTVER SOROZATI KÖNYVTÁRBAN 200 -RA VÁLTOZHATÓ

//

// A Software Serial használatához a felhasználónak a Software Serial BUFFER -t 200 -ra kell módosítania.

// Ezt a következő fájlban kell szerkeszteni:

//

// C:/Program Files/Arduino x.x.x/Hardver/Arduino/AVR/Libraries/SoftwareSerial/src/SoftWareSerial.h

//

// A puffer módosítása az alábbiak szerint:

//

// #ifndef _SS_MAX_RX_BUFF

// #define _SS_MAX_RX_BUFF 200

// RX puffer mérete

// #endif

//

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

Olvassa el ezt az útmutatót az ATMEGA328p programozásához a kenyértáblán Arduino UNO segítségével.

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

4. lépés: Az SMS vezérlő használata

Az SMS vezérlő használata
Az SMS vezérlő használata

Az SMS vezérlő használata

Az SMS -vezérlő automatikusan SMS -t küld a telefonra, ha a négy bemenet bármelyike aktiválódik. A trigger részleteit az SMS szövege tartalmazza.

Az SMS -ek és parancsok az INO fájlban tetszés szerint szerkeszthetők.

Az SMS vezérlő kimeneteinek tesztelése

Mobiltelefonjáról küldje el a következő parancsokat a SIM800L SIM -kártya számára:

o1: 1, ez bekapcsolja az 1 -es kimenetet.

Telefonján a következő SMS -t kapja:

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

01: 0, ez kikapcsolja az 1 -es kimenetet.

Telefonján a következő SMS -t kapja:

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

01: p, ez bekapcsolja az 1 -es kimenetet 1 másodpercre, majd ismét kikapcsolja az 1 -es kimenetet (impulzusos).

Telefonján a következő SMS -t kapja:

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

Az SMS vezérlő bemeneteinek tesztelése

Az SMS vezérlőn nyomja meg röviden az 1 gombot

Telefonján automatikusan megkapja a következő SMS -t:

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

Az SMS vezérlőn nyomja meg röviden a 2 gombot

Telefonján automatikusan megkapja a következő SMS -t:

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

Az SMS -vezérlőn nyomja meg röviden a 3 gombot

Telefonján automatikusan megkapja a következő SMS -t:

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

Amint az a fogadott SMS -n látható, a kimenetek a kapott parancsoknak megfelelően változnak. A bemenetek azonban nem változnak vissza 1 -ről 0 -ra a gombok megnyomása után. Mivel látni akartam a bemeneteken bekövetkező változásokat, úgy döntöttem, hogy lezárom a bemeneti állapotot mindaddig, amíg visszaállítási parancsot nem küld az SMS -vezérlőnek.

Riasztások visszaállítása

A beviteli állapot visszaállításához küldje el a következő parancsot:

####, ezzel visszaállítja a beviteli állapotot.

Telefonján a következő SMS -t kapja:

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

Állapotfrissítések

Az állapotot bármikor kérheti a következő parancs elküldésével:

????, ez az I/O állapotfrissítését kéri.

Telefonján a következő SMS -t kapja:

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

ahol x az állapotot jelzi, 1 be, 0 ki.

5. lépés: Android -alkalmazás

Android alkalmazás
Android alkalmazás
Android alkalmazás
Android alkalmazás
Android alkalmazás
Android alkalmazás

A MIT App Inventor 2 (https://ai2.appinventor.mit.edu/) használatával létrehoztam egy egyszerű felhasználói felületet az Android mobiltelefonomhoz. Ez az alkalmazás lehetővé teszi az egyes I/O -k leírásának testreszabását. Lehetővé teszi a telefonszám megadását is.

A négy gomb a kimenetek vezérlésére szolgál, míg a jelölőnégyzetek a bemeneti állapotot jelzik.

Az alkalmazás szerkesztéséhez hozzon létre egy MIT App Inventor 2 fiókot, és importálja az AIA fájlt.

Az alkalmazás telefonra telepítéséhez másolja át az APK -fájlt a telefonjára, és telepítse azt. Engedélyeznie kell az alkalmazások ismeretlen forrásokból történő telepítését a telefon biztonsági beállításai alatt.

Ajánlott: