XXVI. ASR '2001 Seminar, Instruments and Control, Ostrava, April 26 - 27, 2001
Paper 41
Terminálová jednotka pro přenos dat prostřednictvím elektrorozvodné sítě MASOPUST, Petr Ing., Ústav automatizace a informatiky, Fakulta strojního inženýrství, Vysoké učení technické v Brně, Technická 2, 616 69 BRNO,
[email protected], http://www.vutbr.cz Abstrakt: Příspěvek popisuje možnosti využití běžných řídicích jednočipových mikroprocesorů ke komunikaci prostřednictvím elektrorozvodné sítě 230V/50Hz. Popisuje realizaci BPSK a QPSK modemu a jeho použití k přenosu řídicích informací, textových zpráv nebo jiných dat. Modem je realizován softwarovým vybavením jediného řídicího mikroprocesoru s minimem okolních součástek. Takovým mikroprocesorem je dnes vybaveno snad každé měřicí a regulační zařízení a k jejich vzájemné komunikaci mnohdy chybí jen vhodný komunikační obvod. Tento příspěvek chce ukázat, že i pouhým softwarovým doplňkem lze nahradit modemový obvod, který je v dnešní době dražší, než samotný řídicí procesor, a ušetřit tak peníze a prostor a zvýšit hodnotu celého zařízení při zachování jednoduchosti. Použití popisovaného modemu se neomezuje jen na vedení elektrorozvodné sítě, je možno ho využít všude tam, kde je potřeba informaci přenášet v určitém omezeném pásmu. Tedy i v případě IR přenosu nebo zvuku. Jsou zde zhodnoceny přibližně možnosti maximálních rychlostí popisovaného modemu pro tři z dnes dostupných jednočipových mikroprocesorů: AT89C2051, PIC16Cxx a AT90Cxx. Klíčová slova: power line, modem, terminál
1 Úvod Stále roste potřeba komunikace. Každý komunikační kanál vyžaduje určité technické prostředky a to s sebou nese určité náklady. Snahou je maximálně využít stávajících cest a ušetřit tak za zřizování jiných. V případech zařízení, která potřebují komunikovat zhruba v rámci jedné budovy, se nabízí využít k přenosu informací energetické sítě, která je dostupná obvykle v celé budově. Odpadá pak potřeba instalace zvláštních vodičů pro komunikaci a energetická síť zároveň slouží k napájení. Jádrem stále většího počtu elektronických zařízení je mikroprocesor. Tento mikroprocesor často vykonává jen jednoduchý úkol a je minimálně vytížen a přitom pro poměrně jednoduchou komunikaci používá obvod, který je nejdražší z celého zařízení. Tento přízpěvek by chtěl ukázat, že jen doplněním správného softwaru a minimálního hardwaru (XOR hradlo a běžný operační zesilovač) lze dosáhnout obdobných výsledků, jako při použití zvláštního a dražšího integrovaného obvodu.
2 Obvod pro power line komunikaci ST7537 V oblasti přenosu informací po energetické síti jsou na trhu k dispozici obvody k tomuto účelu přímo určeny. Nejdostupnějším z nich je asi obvod ST7537 od firmy SGS-Thomson, který umožňuje přenos dat rychlostí 1200 nebo 2400 Bd (ve verzi ST7537HS1). K přenosu používá nosnou o frekvenci 132 kHz, která je frekvenčně modulovaná. Obvod obsahuje vstupní zesilovač s pásmovou propustí a jediné, co je potřeba doplnit, je výstupní výkonový (proudový) zesilovač a vazební obvod k síti (transformátor s vazebním kondenzátorem). S -1-
tímto obvodem byl sestaven terminál vybavený klávesnicí a dvouřádkovým diplejem, jehož jádrem je mikroprocesor Motorola 68HC11. Přes nesporné výhody má obvod i určité nevýhody. Tou hlavní je potřeba dvou napájecích napětí 5V a 10V s tolerancí +/-5% a dále, že spotřeba obvodu je 30mA. V zařízeních navržených s ohledem na maximální jednoduchost a minimální cenu (termostaty pro regulaci teploty v místnosti, různé dálkově ovládané spínače, a jiné prvky domácí automatizace) nemůžeme očekávat, že s takovými požadavky obstojí. U všech těchto zařízení závisí spolehlivost přenosu a vlastní dosah na velikosti útlumu signálu na vedení mezi vysílačem a přijímačem a množství rušení v místě příjmu. Naší snahou bylo vytvořit obvod s jedním nestabilizovaným napájecím napětím, který by byl výrazně levnější a pokud možno rychlejší. Výsledkem je zapojení s jedním jednočipovým mikropočítačem, jednoduchým vazebním obvodem k síti a aplikačním rozhraním, které je možno přizpůsobit dané potřebě.
4 Použitá modulace Použitá modulace je fázová. Snažíme se co nejvíce vytěžit z jejích předností, které při zpracování takového signálu procesorem projeví. Mikroprocesor totiž pracuje s určitým hodinovým taktem a všechny doby jeho reakcí jsou násobky pevného intrukčního cyklu. Zpracování signálu, jehož perioda je násobkem instrukčního cyklu je tedy mnohem snadnější a přesnější, než signálu s plynule proměnnou frekvencí (tedy i periodou). Dvoustavově fázově modulovaný signál má právě takovou výhodu. Takový signál má všechny periody nosné stejně velké, a mění se pouze jeho fáze o 180 stupňů. Pro procesor je snadné jeho vygenerování - patřičný počet intrukčních cyklů je výstup v úrovni "0", a pak stejný počet instrukčních cyklů zase ve stavu "1". Stejně snadné je i jeho přijetí. I když, jak uvidíme dále, pro vyšší odolnost proti rušení si při demodulaci pomůžeme XOR hradlem a RC článkem. V úvahu připadá také použití čtyřstavové fázové modulace (QPSK), která umožní přenést dvojnásobné množství bitů za stejnou dobu proti dvoustavové. Její použití se v našem případě přímo nabízí. Pro vysílač (modulátor) není problém místo fáze 0 a 180 stupňů, vysílat 45, 135, 225 a 315 stupňů. Toho dosáhneme jen zpožděním vysílání o patřičný počet cyklů, odpovídajících 1/4 periody nosné. Pro demodulátor použití QPSK neznamená nic jiného, než že pak odečte hodnotu druhého přenášeného bitu ze signálu E(t) z výstupu násobičky N2 (obr.2).
5 Hardwarové řešení modulátoru a demodulátoru BPSK Pro názornost uvádím řešení modulátoru a demodulátoru bez použití mikroprocesoru a tedy bez softwarového řešení některých částí obvodu. Modulátor fázové modulace se zkládá z generátoru nosné a násobičky. Na výstupu násobičky je fázově modulovaný signál, který vpřípadě, že vstupní složky neměly patřičně omezené spektrum, vyžaduje průchod pásmovou propustí, aby byly potlačeny jeho vyšší harmonické. D(t)
Dsin(ωt) x
G sin(ωt)
Obr. 1. Modulátor BPSK. -2-
Demodulátor fázové modulace je složitější. Základním stavebním kamenem je obvod obnovení nosné, který je tvořen fázovým závěsem. Demodulace fázově modulovaného signálu se dosáhne použitím stejné násobičky jako v modulátoru. Na jejím výstupu je ovšem kromě demodulovaného signálu taky složka s dvojnásobnou frekvencí nosné, kterou odstraní dolní propust tvořená RC článkem. Pro správnou funkci fázového závěsu je však potřeba ještě jeden signál odvozený z přijímaného modulovaného a z obnovené nosné. Na výstupu násobičky N2 je chybový signál E(t), jehož úroveň je úměrná fázovému rozdílu mezi přijímaným signálem a obnovenou nosnou. Tento signál řídí VCO a je invetrován přijímaným demodulovaným signálem, čímž se zamezí rušivému vlivu fázové modulace na zachyzení fázového závěsu. Dsin(ωt)
N1
D(t)
x RC1 N2
E(t)
x RC2 sin(ωt+90°) sin(ωt+0°)
+90° +0°
x
N3
sin(ωt) VCO
Obr. 2. Demodulátor BPSK. V tomto zapojení je modulátor a demodulátor schopen fungovat a realizace vyžaduje tři integrované obvody z řady CMOS 4000 a to 4046 (fázový závěs), 4013 (2x D klopný obvod) a 4032 (4x XOR hradlo).
6 Softwarové řešení Při realizaci fázové smyčky je třeba vzít v úvahu, že procesor je schopen regulovat fázi generované obnovené nosné jen v určitých elementárních krocích, které jsou dány dobou jednoho instrukčního cyklu. S tím souvisí dosažitelná přesnost fázové shody mezi vstupním signálem a obnovenou nosnou. Na přesnosti sledování fázového rozdílu závisí celková schopnost zavěšení smyčky a udržení minimální fázové odchylky. Se zvyšující se frekvencí se zkracuje perioda a odchylka odpovídající době jednoho instrukčního cyklu může znamenat v případě nosné o periodě 8 intrukčních cyklů chybu fáze 45 stupňů, což se pomalu blíží hranici správné demodulace. Pro přenosy v zarušeném prostředí je vhodnější volit větší Tnosné, například 16Tcy. Přesnost fáze je pak lepší než 20 stupňů, což je 5.5% z celé periody nosné. Dále musí procesor přiměřeně často sledovat chybové napětí, aby docházelo k včasné regulaci fáze. To je asi nejcitlivější úkol softwaru procesoru. Analogové řešení fázového závěsu sleduje chybové napětí průběžně a díky RC článkům 2 a 3 je velmi odolné vůči rušení. Díky potřebnému poměru Tnosné/Tcy dosáhneme u konkrétního typu procesoru s danou taktovací frekvencí jen určité maximální frekvence nosné a bitové rychlosti. Pokud by pro danou aplikaci bylo potreba rychlost vyšší, musela by se zvýšit taktovací frekvence procesoru, použít některý jiný rychlejší typ, a pokud by ani to nestačilo, tak zůstat u použití hardwarového řešení PLL. -3-
Softwarové vybavení procesoru nahrazuje VCO ve smyčce fázového závěsu a generuje obnovenou nosnou a s ní druhou nosnou o 90 stupňů fázově posunutou. Obvody XOR s dolními propustmi RC pak vytvoří během každé periody bitu dva signály - demodulovaný bit a chybu fáze. Podle signálu chyby fáze procesor upravuje fázi dvou generovaných signálů. Ještě většího zjednodušení je možno dosáhnout vypuštěním XOR obvodů a RC dolních propustí a celkové zapojení demodulátoru tak zjednodušit na jediný obvod - procesor. K tomu se lze odhodlat ovšem jen tam, kde vystačíme s ještě nižšími rychlostmi než v předchozím případě, nebo tam, kde očekáváme nerušený přenos. Procesor má potom s demodulací více práce, protože musí zastat i funkci součinových demodulátorů a jednou za polovinu každé půlperiody nosné vyhodnotit odchylku fáze a minimálně jednou za periodu bitu uložit demodulovoanou hodnotu bitu. Pro kanály s očekávanýmy krátkými poruchami je potřeba provádět demodulaci každého bitu vícekrát a vypočítávat z navzorkovaných hodnot průměrnou hodnotu, což dále zatěžuje procesor a v předchozím zapojení tuto funkci dobře zajistil RC článek na výstupu součinového demodulátoru. Dsin(ωt)
N1
D(t)
x RC1 N2
E(t)
x
CPU
RC2 sin(ωt+90°) sin(ωt+0°)
Obr. 3. Zapojení demodulátoru s CPU.
8 Teoretické maximální rychlosti modemu Rychlost přenosu má svoje hranice dané několika parametry. - zvoleným typem jednočipového procesoru, - potřebnou frekvencí nosné, - poměrem modulační a nosné frekvence fmod/fnosné - potřebnou odolností vůči rušení (vyšší odolnosti dosáhneme vícenásobným vzorkováním demodulovaných signálů, což zvyšuje zatížení procesoru a tedy znižuje maximální rychlost), - množstvím dalších úkolů procesoru (řizení, monitorování). Maximální rychlosti a frekvence nosné samozřejmě závisí na efektivitě vlastního programu. Údaje uvedené v tab.1 odpovídají implementaci fázového závěsu a přijímací procedury, která odebírá vzorek demodulovaného bitu 1x za periodu bitu. Údaj "Vytížení" platí pro modulaci BPSK, při použití QPSK je vytížení asi 1.5x vyšší a bitová rychlost přenosu 2x vyšší. Pro nižší chybovost v zarušených kanálech je nutné vzorkovat výstup demodulátoru vícekrát a vyhodnocovat průměrnou hodnotu. To samozřejmě zvýší zatížení procesoru a pro nejvyšší rychlosti to není možné. Řešením je pak zvýšit taktovací frekvenci procesoru, nebo použít procesory výkonnější řady.
-4-
Přijímací procedura byla prakticky ověřena pro případ procesoru Intel51 / 12 MHz pro nosnou 50 kHz a modulační rychlost 5 až 20 kBd. Při rychlosti 5kBd modem dosáhl zhruba stejného dosahu jako terminál s obvodem ST7537. Nebyla testována odolnost vůči rušení (obzvláště v blízkosti nosné), kde by se zřejmě obvod ST7537 ukázal jako odolnější. V následující tabulce uvádím teoretické maximální rychlosti pro některé typy procesorů a softwarové řešení modemu podle obr.3: Tab. 1: Procesor:
fnosné
Tn/Tcy
Bitrate BPSK
Vytížení
Intel51 / 12 MHz Intel51 / 12 MHz Intel51 / 12 MHz Intel51 / 12 MHz Intel51 / 12 MHz Intel51 / 12 MHz
10 kHz 10 kHz 50 kHz 50 kHz 125 kHz 125 kHz
100 100 20 20 8 8
1 000 Bd 4 000 Bd 5 000 Bd 20 000 Bd 12 500 Bd 50 000 Bd
3% 7% 16 % 34 % 40 % 85 %
(dvojnásobná frekvence:) Intel51 / 24 MHz Intel51 / 24 MHz
250 kHz 250 kHz
8 8
25 000 Bd 100 000 Bd
40 % 85 %
PIC16Cxx / 20 MHz PIC16Cxx / 20 MHz
250 kHz 250 kHz
20 20
25 000 Bd 100 000 Bd
16 % 34 %
AT90... / 10 MHz AT90... / 10 MHz
250 kHz 250 kHz
48 48
25 000 Bd 100 000 Bd
7% 15 %
7 Výsledné zapojení modemu Celkové zapojení modemu se skládá z modulátoru, výstupního filtru, výstupního zesilovače, vazebního obvodu k síti, vstupního zesilovače, vstupního filtru, a demodulátoru. Modulátor je realizován sofwarově procesorem. Výstupní výkonový zesilovač a vazební obvod do sítě je převzat z katalogového listu obvodu ST7537. Principiální schéma celkového zapojení je na následujícím obrázku. Dsin(ωt)
N1
D(t)
x RC1 N2
E(t)
x
220V 50Hz
RC2 sin(ωt+90°) sin(ωt+0°)
Obr. 4. Výsledné zapojení modemu.
-5-
CPU
Celé zařízení je pak tvořeno třemi integrovanými obvody: jedním jednočipovým procesorem, jedním dvojitým operačním zesilovačem pro zesílení přijímaného signálu a pro případné potřebné zesílení vysílaného signálu a hradly XOR. Na výstup vysílacího operačního zesilovače je připojen ještě tranzistorový prodový zesilovač. Jednotlivé části zapojení lze v širokém měřítku přizpůsobit podle potřeb konkrétní aplikace a přenosového kanálu.
9 Aplikace modemu Hlavní aplikací modemu je vytvoření spolehlivého spojení mezi dvěma body elektrorozvodné sítě pro přenos sériových dat rychlostí 5 až 20 kBd. Každý z těchto dvou modemů disponuje sériovým rozhraním RS232. Přijaté byty odesílá neustále svému protějšku (druhému power line modemu), který je svým rozhraním RS232 zase vysílá. Vytvořené spojení je obousměrné a v případě vzniku chyby se datový paket opakuje. Dosah modemů je srovnatelný s ST7537. Dalším zdokonalením je provedená implementace základních AT příkazů běžných telefonních modemů a zpřístupnění tak elektrorozvodné sítě jako komunikačního prostředku nejširší skupině počítačů PC. Pak už záleží jen na softwarovém vybavení vlastního PC, jakým způsobem s vytvořeným spojením naloží. Možnosti popisovaného modemu se nemusí omezovat jen na vedení elektrorozvodné sítě. Stejně užitečnou službu udělá modem v oblasti infračerveného přenosu. Brána mezi power line a IR může být tvořena jedním procesorem, který střídavě komunikuje buď přes elektrorozvodnou síť, nebo přes IR. Pouhou úpravou sofwaru v řídicím procesoru můžeme přizpůsobit nosnou frekvenci mnoha médiím (např. zvuk, aj.).
9 Závěr Popisované řešení modemu je příkladem jak je možno lépe využít rezerv výkonu stávájících mikroprocesorů, ušetřit za speciální komunikační obvody a přitom rozšířit zařízení o cenné komunikační schopnosti. Během prvních testů se ukázalo srovnatelně odolné při průchodu elektrorozvodnou sítí jako zařízení s obvodem ST7537. Problematika byla řešena v rámci výzkumného záměru "Automatizace technologií a výrobních procesů" MSM260000013.
10 Literatura SGS-THOMSON Microelectronics. ST7537HS1: Home automation modem. SGS-THOMSON Microelectronics, 1995. 9 p. Dostupné z:
HOLOUX, J., MOREL, P. Power line modem application: Remote control using ST7537 and ST6. SGS-THOMSON Microelectronics, 1994. 21 p. Dostupný z: HOLOUX, J., HANUS, L. ST7537 Power line modem application. SGS-THOMSON Microelectronics, 1995. 32 p. Dostupný z: Philips semiconductors. Phase-locked-loop with VCO - 74HC4046A. Philips semiconductors, 1997. 32 p. Atmel Corporation. AT89C2051. Atmel Corporation, 2000. 15 p.
-6-