K tomuto výtvoru jsem byl přinucen značnou nespolehlivostí linuxového serveru ve spojení se softwarovým access pointem a wifi kartou ZCOM XI-626. Na tomto počítači docházelo k častým zátuhům a pokaždé jej musel nahazovat jeho správce. Resetátor umožnil dálkový tvrdý reset tohoto serveru a tím snížení doby nedostupnosti sítě. Prostě jednoduše řečeno, pošlete SMSku s heslem a resetátor na cca 3-4 sekundy odpojí 230V.. :-) Testováno a provozováno na telefonu Siemens C35.
Předem bych chtěl poděkovat Davidu Hankovci, majícího www stránky na adrese: http://www.dhservis.cz/ , od kterého jsem čerpal cenné informace ohledně rozhraní USART v jednočipu PIC16F628A. Na svých stránkách má podobně řešenou aplikaci, GSM alarm, tak se tam určitě koukněte.
Není to nic složitého. Na napájecí straně trafo 1.9VA a výše, můsek, stabilizátor 78S05. Taková kadence rozhodně není potřeba, ale původní Davidův návrh počítal i s nabíjením přes tento stabilizátor. Zjistil jsem však, že i při nižším vstupním napětí se stabilizátor velmi zahřívá, takže cesta vedla použitím menšího a levnějšího transfomátoru na napájení PICu + relátek a externí nabíječky (zapojení kladného vodiče z nabíječky je na DPS označeno nab). Dále se zapojení dělí na 2 verze. První je prototypová verze, kdy jsem až dodatečně zjistil, že PIC16F628A má již integrovaný oscilátor a signál MCLR se dá interně pripojit k Ucc, takže zapojení obsahuje krystal 4MHz a rezistor 6k8 zajištující přípojení log.1 na MCLR pin. V první verzi jsou použity 3 reléové výstupy, svorkovnice a podobná bižuterie. Verze druhá nemá nic navíc, tedy neobsahuje krystal, MCLR interně připojeno na Ucc. Obsahuje pouze 2 reléové výstupy a žádnou svorkovnici - jen to zvyšuje cenu zařízení. Jakožto interface s mobilním telefonem jsou nutné pouhé 2 rezistory a jedna zenerova dioda. Nedoporučuji dělat přívodní kabel moc dlouhý.
Ovládací program je pro obě verze téměř shodý. Rozdíl je
pouze v konfiguraci, kterou najdete na začátku zdrojového kódu.
Program jsem i pro vlastní potřebu poměrně hodně okomentoval
a použil intuitivní názvy návěstí, takže by z jeho případou
modifikací neměl být problém.
Jak jsem již zmínil výše, jedná se o kód pro jednočip PIC16F628A,
přeloženo kompilátorem MPASM. Po zapnutí resetátoru se
testuje přítomnost mobilního telefonu (odpoveď na AT příkazy),
pokud je nalezen, začne periodicky blikat LED dioda. Několikrát
blik, poté delší svit a tak stále dokola. Tím je signalizována
komunikace s telefonem, resp dotazy na nově příchozí zprávy.
Pokud telefon obdží SMS zprávu, PIC zkontroluje, zda-li je
shodá s hesly Reset01, Reset02
nebo Reset03 a pokud není, zprávu smaže. Tady
jsem našel drobnou chybku v Davidově programu. V případě, že
na jeho konstrukci přijde behěm jedné periody testování více
SMS zpráv, dojde ke smazání pouhé jedné zprávy. Tímto může
dojít v případě aktivity nějakého chorého člověka k
zahlcení paměti pro SMS zprávy a nefukčnosti zařízení.
Tento problém jsem vyřešil zkrácením intervalu pro kontrolu
nových zpráv a následném mazání tří zpráv i v případě,
že přijde jen jedna. Ještě se mi nepodařilo masivním útokem
z www brány dosáhnout toho, aby v paměti zůstala jediná
nesmazaná zpráva. Tak a teď co se stane, jestliže SMS zpráva
obsahuje výše uvedená hesla. V prvé řadě dojde k sepnutí příslušného
relé (odpojení spotřebiče od 230V), poté k mazací proceduře,
časové prodlevě a opětovnému odpojení relé. Poté se načte
z telefonního seznamu číslo umístěné na 1,2 a 3 pozici a
toho číslo se prozvoní. V programu je 3. číslo zakomentované,
protože jsem jej ještě nepotřeboval, ale není problém dodělat
těch čísel klidně 10, je to principielně stále to samé
dokola. Po prozvonění přejde program do své základní smyčky
a opět k periodickému poblikávání LED. Program znatelně využívá
watchdog timer, protože GSM telefon je věc v mnoha případech
neposlušná a bez watchdogu docházelo k mnoha zakousnutím, takže
ho nechejte zapnutý.
To je vcelku pochopitelné s DPS. Relé odpojují 230V směrem ke
spotřebičům. Velkým problémem Siemensů bývá nabíjení,
respetive logika nabíjení. Nutnou pomínkou správného chodu
je použít NIMH akumulátor. V případě Li-Ion se telefon
jednou nabije, vybije a vypne, tedy nedobíjí se neustále.
Tento defekt se týká právě jen Siemensů C35, zřejmě vývojáři
nepočítali s možností použití Li-Ion akumulátorů. Každopádně
s NIMH resetátor pracuje naprosto spolehlivě.
Konektor se k telefonu připojuje podle následujícího obrázku:
Verze 1 - DPS
Verze 1 - Rozmístění
součástek
Verze 2- DPS
Verze 2- Rozmístění
součástek
Dokumentační balík (jsou tam i další verze a postřehy)