Pokojový termostat řízený pomocí SMS zpráv v síti GSM Prezentace bakalářské práce Tomáš Vondra České vysoké učení technické v Praze Fakulta elektrotechnická Katedra počítačů Červen 2009 Vedoucí práce: Ing. Martin Novotný
Osnova Cíl práce Rozbor trhu Vlastní výrobek Komponenty projektu Softwarová část – SMS PDU Softwarová část – AT příkazy Softwarová část – Hlavní program Hardwarová část – AVR Butterfly Hardwarová část – Spínací obvod Výsledky práce
Cíl práce Pokojový termostat GSM řízení a dohled Princip znám v průmyslu (např. výtahy) Málo rozšířen v domácnostech Použití: rekreační objekt / služební cesty Motivace: Neexistuje řešení v rozumné cenové hladině Nenašel jsem volně dostupnou implementaci
Rozbor trhu: Electrobock PT30GSM Programovatelný 7+2 týdenní programy funkce dovolená Nastavení teploty přes SMS a tlačítka Přesnost na 0,1˚C Nastavitelná hystereze Specielní LCD displej Výkonový spínač Cena: 6 188 Kč
Rozbor trhu: SEA GSM RELÉ var. 2 Nastavení teploty přes SMS Žádná tlačítka a displej 3 logické vstupy 1 výkonový a 2 logické výstupy Přehrávání zvuků Cena: 7 173 Kč
Rozbor trhu: Jablotron GD-04 DAViD Nelze nastavit teplotu Žádná tlačítka a displej 4 vstupy 2 výkonové výstupy Bezdrátové rozšíření Komplexně programovatelný Cena: 4 205 Kč bez termostatu
Vlastní výrobek: GSM termostat Nastavení teploty přes SMS a tlačítka Přesnost na 1˚C Pevná hystereze 6 znakový LCD displej Výkonový spínač Možnost rozšíření Výrobní cena: asi 770 Kč bez telefonu
Komponenty projektu Softwarová část Hardwarová část SMS PDU AT příkazy Hlavní program Hardwarová část AVR Butterfly Spínací obvod Mobilní telefon Propojovací kabel
Softwarová část – SMS PDU SMS PDU mode Kodér a dekodér standardních SMS GSM 7bit kódová stránka Bitový packing Kódování i dekódování Psáno v jazyce C a testováno na platformě GNU
Schéma kódování GSM 7 bit
Softwarová část – AT příkazy Podmnožina AT příkazů pro práci se SMS Norma GSM 07.07 (3GPP TS 27.007) Funkce na: Inicializaci telefonu Odeslání zprávy Polling příchozích zpráv Přečtení zprávy Smazání zprávy Stavový automat na vyhodnocení odpovědí vč. přijímače oznámení o příchodu zprávy +CSMS Select Message Service +CMGF Select SMS Message Format +CPMS Preferred Message Storage +CMGS Send Message +CNMI New SMS Message Indications +CMGL List Messages +CMGR Read Messages +CMGD Delete Messages
Softwarová část – Hlavní program Platforma Atmel AVR Vývojové prostředí WinAVR / AVR-gcc Upravený demo program AVR Butterfly Přejaty procedury na ovládání hardware Změny zvláště v měření teploty a timerech Lepší knihovna pro práci s USARTem Napsána nová hlavní smyčka Portován AT parser a PDU kodér
Struktura programu
Hardwarová část – AVR Butterfly Platforma AVR Butterfly obsahuje: Mikrokontrolér AVR ATmega169 Displej, tlačítka, termistor, hodinový krystal RS-232 převodník, baterii, flash paměť, piezo Open-source demonstrační aplikace Rozumná cena Mnoho periferií -> málo volných pinů
Hardwarová část – Spínací obvod Nutno připojit relé k procesoru Mikrokontrolér nedodá dostatečný proud -> spínací tranzistor Pro tranzistor proud zbytečně velký -> předřadný odpor Tranzistor nesnese napěťové špičky z relé -> ochranná dioda Nelze postavit „ve vzduchu“ -> univerzální plošný spoj Přidáno několik dalších součástek (LED, D-sub) Propojeno s AVR Butterfly pomocí kolíků/dutinek
Schéma obvodu
Výsledky práce Funkční prototyp GSM Termostatu Možnosti přídání více vstupů/výstupů: další topná soustava, chlazení, snímání teploty ve více místnostech + termokohouty, alarm, spínání osvětlení, zavlažování… Univerzální knihovna pro SMS zprávy v jazyce C Zkušenosti s programováním mikrokontroléru v jazyce C Použijí elektroamatéři mou konstrukci?