I.nf osciloskop s výstupem na TV
1.Úvod
2.Blokový popis jednotlivých celků
II.Modul TV terminálu
1.Úvod
2.Popis televizného signálu
3.Způsob generování signálu
4.Příjem dat
5.Odesílání dat
6.Napájení
7.Schéma zapojení
8.Seznam použitých součástek
9.Deska plošných spojů
10.Možnosti využití modulu TV terminálu
III.Modul osciloskopu
1.Úvod
2.Vstupní obvod
3.Řídící obvod
4.Nastavení vnitřního oscilátoru řídícího obvodu
5.Sériová komunikace
6.Módy měření
7.Napájení
8.Schéma zapojení
9.Seznam součástek
10.Deska plošných spojů
11.Shrnutí vlastností osciloskopu
IV.Citace
V.Použité prameny
I.nf osciloskop s výstupem na TV
1.Úvod
Osciloskop patří bezesporu mezi základní měřící přístroje v elektrotechnice. Osciloskopy se vyrábějí ve dvou základních provedeních - analogové a digitální. Amatérská konstrukce analogového osciloskopu je poměrně složitá a nákladná, naopak konstrukce digitálního osciloskopu je vzhledem k dostupnosti mikrokontrolérů mnohem snazší.
Jedním ze základních prvků každého osciloskopu je zobrazovací jednotka. U analogových osciloskopů se můžeme setkat s osciloskopickými obrazovkami. Moderní digitální osciloskopy používají různé displeje, které bývají často velmi nákladné. Proto jsou některé konstrukce pojaty jako moduly, které se dají připojit k počítači. Data se pak zobrazují pomocí nainstalovaného software na monitoru počítače. Nevýhodou takové koncepce je požadavek na počítač, tedy větší energetická náročnost zařízení a také vyšší cena.
Snahou této konstrukce bylo vytvořit osciloskop, který by byl nezávislý na počítači, zároveň aby jeho displej nabízel dostatečný prostor pro zobrazování naměřených dat. Po zvážení dostupných možností byla zvolena jako zobrazovací jednotka obrazovka standardního televizoru. Výhoda televizoru je v tom, že nabízí dostatečné rozlišení, snadnou komunikaci se zařízením a všeobecnou dostupnost.
Většina digitálních osciloskopů se skládá z rychlého AD převodníku, paměti FISO1 a z řídícího obvodu. Tato koncepce je standardní a osvědčená, dostupnost součástkové základny umožňuje tyto bloky zahrnout do jediné součástky - mikrokontroléru. Výhodou tohoto řešení je jednoduchost a nízké náklady, nevýhodou je nižší vzorkovací frekvence osciloskopu. Protože cílem konstrukce bylo vytvořit osciloskop, který umožní měření v oblasti nízkofrekvenčních kmitočtů, je možné toto omezení přijmout.
Výsledkem je nf osciloskop, který dokáže snímat signál s vzorkovací frekvencí 500 kHz.
2.Blokový popis jednotlivých celků
Celkové zařízení se dělí na dvě části.
obr. 1.Koncepce zařízení
První část zařízení, kterou jsem nazval modul TV terminálu. Jeho úkolem je zajistit komunikaci mezi uživatelem a osciloskopem. Hlavním úkolem TV terminálu je zobrazování naměřených dat na TV obrazovce. Komunikaci uživatele s osciloskopem umožňuje klávesnice pro osobní počítače kompatibilní s IBM AT.
Druhou částí je osciloskop, který slouží k samotnému měření signálu. Toto zařízení obsahuje vstupní obvody pro úpravu měřeného signálu a mikrokontrolér, který obsahuje AD převodník pro převod napětí z analogové podoby do digitální. Dále umožňuje úpravu získaných dat a jejich odeslání k zobrazení.
1.Úvod
Snahou bylo vytvořit zařízení, které by se chovalo jako terminál s výstupem na televizní obrazovku. U terminálu se data nejen přijímají, ale jsou také vysílána. Proto je k modulu kromě TV připojena také klávesnice. Volil jsem klávesnici kompatibilní s IBM AT. Tento typ klávesnice je velmi levný a běžně dostupný.
TV obrazovka má dostatečné rozlišení pro zobrazování znaků, ale také dostatečné rozlišení pro základní grafiku. Funkce standardního znakového terminálu bylo nutné doplnit o jednoduché příkazy, které umožňují vykreslovat na obrazovku čáry, obdélníky a další.
Vývoj tohoto zařízení si vyžádal i doplnění některých speciálních funkcí určených pro osciloskop. Přesto výsledné zařízení nabízí univerzální využití i v jiných typech přístrojů a zařízení.
2.Popis televizního signálu
Pro komunikaci s televizorem TV terminál generuje černobílý video signál, který časově odpovídá normě PAL. Data přicházející na obrazovku jsou rozkládána do jednotlivých snímků a jednotlivých řádků. Generovaný signál využívá lineárního řádkování. Při odesílání dat na obrazovku se musí ve správných časových intervalech vkládat synchronizační impulsy.
Snímkové synchronizační impulsy udávají okamžik, kdy bude zahájeno vykreslování nového snímku a elektronový paprsek by se vrací zpět do levého horního rohu obrazovky. Snímková frekvence (počet snímků za sekundu) je 50Hz, s touto periodou také musí přicházet sekvence tří řádků se snímkovým synchronizačním impulsem.
obr. 2.Řádek s jedním snímkovým synchronizačním impulsem
Řádkové synchronizační impulsy udávají okamžik, kdy se začíná vykreslovat jeden řádek a elektronový impuls se vrátí na začátek řádku. Samotný synchronizační impuls potom trvá 4ms a je definován úrovní signálu na 0 V.
Jeden řádek začíná řádkovým synchronizačním impulsem, potom následuje tzv. zatemňovací impuls ~8ms, je to doba, kdy nejsou vysílána žádná data a čeká se, než se paprsek posune na začátek zobrazované plochy. Poté se začnou vysílat data. Ty se vysílají 44ms. Následně řádek dobíhá opět zatemňovacím impulsem.
obr. 3.Časový průběh jednoho řádku
Průběh jednoho snímku je složen z ~26 prázdných řádků. Během těchto řádků se nezobrazují data, protože tyto řádky můžou být deformovány zaoblením obrazovky. Potom následuje 256 datových řádků po kterých se odvysílá ~27 prázdných řádků. Následují 3 řádky snímkových synchronizačních impulsů. Celkový počet řádků tedy odpovídá 312 řádkům, které jsou definovány v normě PAL..
obr. 4.Časový průběh jednoho snímku
3.Způsob generování signálu
Jako základ zařízení je použit mikrokontrolér ATmega 8515. Program mikrokontroléru jde rozdělit na dvě části. První je hlavní smyčka, která zpracovává příchozí znaky a ukládá jejich podobu do externí paměti a druhá část je obsluha přerušení, které generuje video signál.
Aby se obraz nevytrhával, musí přicházet přerušení přesně každých 64ms (doba jednoho řádku). Na začátku se vždy vygeneruje řádkový synchronizační impuls (pokud se nemá řádek se snímkovým synchronizačním impulsem). Počká se přibližně 8ms (zatemňovací impuls) a začnou se vysílat data. Po odvysílání dat se přerušení ukončí.
Ukázalo se, že problémem je různá doba instrukcí v hlavním programu. Instrukce mohou trvat 1 až 4 instrukční cykly2. Přerušení nastává až po ukončení dané instrukce, a proto začátek přerušení se při používání 12 MHz krystalu u procesoru může lišit až o 333 ns což je již viditelné okem.
Proto program využívá dvě přerušení. První přerušení přichází každých 64ms (doba jednoho řádku). V tomto „přípravném“ přerušení jsou rychlé instrukce, které trvají 1 až 2 cykly, které slouží k ukládání přijatých znaků do fronty (viz. dále)
Během tohoto přerušení přichází „hlavní“ přerušení, které odesílá data a synchronizační impulsy.
Rozlišení obrazovky je 256 x 256 pixelů. Zařízení umožňuje zobrazovat data na obrazovce ve čtyřech barvách. Proto je každý pixel na obrazovce reprezentován dvěma bity v paměti. Jeden Byte zobrazený na obrazovce se tak skládá ze dvou Byte vybraných z paměti.
obr. 5.Způsob uložení barvy jednoho pixelu v obrazovce
Jeden řádek na obrazovce je potom reprezentován 32 Byte, což je 64 Byte v paměti. Data pro vykreslení celé obrazovky potom zabírají 16 384 Byte3. Takové množství dat by se do mikrokontroléru Atmega 8515 nevlezlo, proto je k němu připojena externí paměť, která slouží pro uložení zobrazovaných dat.
Z ekonomických důvodů byla vybrána 32 KB paměť. Tato paměť potřebuje pro adresování paměťového prostoru 15 vývodů a pro přenos dat dalších 8. Takové řešení by neúměrně zabíralo mnoho vývodů mikrokontroléru, proto se využívá záchytný paměťový registr typu D, který umožňuje 8 dolních bitů adresy uložit do tohoto registru a potom tyto piny může mikrokontrolér využít pro práci s daty.
obr. 6.Schematické znázornění připojení externí paměti
Na portu PA se nejdříve objeví spodní část adresy. Následuje ALE impuls, který zapíše spodní bity adresy do D registru (IO 74HC573). Na portu PC se nastaví horní část adresy. Nyní se můžou nastavit data při zápisu a zapsat impulsem WD nebo pomocí impulsu RD číst data. Uvedené zapojení je převzato z [4.]
obr. 7.Časový diagram zápisu do externí paměti (zdroj [4.])
Na jednom řádku se zobrazuje 256 pixelů během 44ms. To znamená, že vždy po 170 ns se musí odeslat další pixel. Což odpovídá zhruba dvěma instrukčním cyklům. Mikrokontrolér není schopný takto rychle odesílat data, proto se data vysílají ze dvou posuvných registrů 74HC166.
Z důvodu úspory vývodů a času, jsou tyto registry připojeny na stejnou sběrnici jako externí paměť. Výhodou je, že mikrokontrolér sám vygeneruje signálem WD impuls pro zápis do posuvných registrů. Během ukládání dat, když se zrovna nezobrazuje, jsou registry trvale nulovány a neodesílají žádná data na obrazovku.
Signál pro vstup hodin posuvných registrů se vytváří přímo v mikrokontroléru. Jedná se o časovač T0, který je nastaven tak, aby na pinu PB.0 vytvářel obdélníkový signál s frekvencí 6MHz.
Povolování vysílání posuvných registrů je připojeno na pin PB.1.
Posuvné registry vysílají postupně bity od nejvyššího po nejnižší. Vzhledem k tomu, že se z každého registru odesílají pouze 4 bity, je na vstupy D7 … D4 jednoho registru přiveden signál z PA7 … PA4 a na vstupy druhého registru D7 … D4 přiveden signál PA3 … PA0. Ostatní vstupy posuvných registrů jsou uzemněny.
V okamžiku kdy se mají data odesílat na obrazovku tak mikrokontrolér vybere data z paměti. Uloží data do paměti (současně i do registrů) a zvedne hodnotu registru ukazatele do paměti.
Celá tato posloupnost trvá právě 8 instrukčních cyklů, což je doba 4 pixelů na obrazovce.
obr. 8.Schématické znázornění připojení výstupních posuvných registrů
Výsledný video signál se musí složit ze synchronizačních impulsů a dat tak, aby při synchronizačních impulsech bylo na výstupu napětí 0V, při vykreslování černého bodu 0,33V a při bílém bodu 1V. Výsledný signál je složen pomocí rezistorů a diod.
obr. 9.Převodník pro výstupní video signál.
4.Příjem dat
Pro komunikaci se TV terminálem je využita sériová asynchronní komunikace. Zařízení pracuje v duplexním4 režimu. Pro odeslání jednoho Bytu informace je třeba odeslat minimálně 10 bitů (start bit + 8bitů informace + stop bit).
obr. 10.Asynchronní sériový přenos
Parametry komunikace:
rychlost: 9600 Baud
počet bitů: 8
parita: bez parity
počet stop bitů: 1 až 2, doporučovány 2
konektor: CANNON 9 M
Zařízení může fungovat pouze textově, to znamená, že přijaté 8 bitové číslo je převedeno na znak podle ASCII6 tabulky. Ze speciálních znaků jsou zpracovávány znaky uvedené v tab. 1.
Číslo | znaku | Název znaku | Funkce |
DEC | HEX | ||
8 | 8 | BS | Vymaže poslední znak |
9 | 9 | TAB | Zarovná kurzor na nejbližší vyšší pozici s násobkem 6 |
10 | A | LF | Posune kurzor na další řádek |
12 | C | FF | Vymaže obrazovku a nastaví kurzor na počáteční pozici |
13 | D | CR | Posune kurzor na začátek dalšího řádku |
Kód | Parametry | Funkce |
[ESC] + [TAB] | Zařízení umožňuje díky dostatečné paměti mít uloženy dvoje data pro obrazovku. Tento kód přepne zobrazení a zápis na nyní nezobrazovanou část externí paměti. | |
[ESC]+[B] | [P] .. '0','1' | Pokud [P] = '0' nastaví znaky na neprůhledné (znak kolem se vytiskne na černý podklad 6 x 8 pixelů). Pokud [P] = '1' nastaví znaky na průhledné (znak přetiskne své pozadí). |
[ESC]+[C] | [C] .. 0-255 | Podle bitů [C] nastaví barvu se kterou u vybraných funkcí a u znaků provádí logický součin jednotlivých bitů ukládaného Byte do paměti. |
[ESC]+[G] |
[X] .. 0-255 [N] .. 0-255 N*[Y] .. 0-255 | Tato funkce je připravena pro osciloskop. Na pozici [X,Y0] začne vykreslovat spojitý graf tak, že pro každou zadanou vertikální pozici [YN] vykreslí čáru spojující body [X,YN] a [X-1,YN=1] (pokud X+N>255 neprovede nic; použije aktuální barvu). |
[ESC]+[H] | [X] .. 0-15 | Podle hodnoty [X] nastaví celkové horizontální posunutí obrazu na obrazovce - nastaví dobu prvního zatemňovacího impulsu (podle spodních 4 bitů čísla [X]) |
[ESC]+[L] |
[X1] .. 0-255 [Y1] .. 0-255 [X2] .. 0-255 [Y2] .. 0-255 | Vykreslí úsečku z bodu [X1,Y1] do bodu [X2,Y2] (použije aktuální barvu) |
[ESC]+[M] |
[AH]..128-255 [AL] .. 0-255 [N] .. 0-255 N*[D] .. 0-255 | Od adresy externí paměti [AL,AH] uloží postupně [N] Byte dat [D0 .. DN] (adresa se automaticky inkrementuje; pokud je [N] rovno nule, příjme se 256 hodnot). |
[ESC]+[O] | [Y] .. 0-15 | Podle hodnoty [Y] nastaví celkové Vertikální posunutí obrazu na obrazovce - nastaví počet prvních zatemňovacích řádků (podle spodních 4 bitů čísla [Y]). |
[ESC]+[P] |
[X] .. 0-255 [Y] .. 0-255 | Vykreslí bod na pozici [X,Y] (použije aktuální barvu). |
[ESC]+[Q] | Softwarově restartuje zařízení. | |
[ESC]+[R] |
[X] .. 0-255 [Y] .. 0-255 [dX] .. 0-255 [dX] .. 0-255 | Vykreslí obdélník z bodu [X,Y] o horizontální délce [dx] a vertikální délce [dy] (pokud by se měl obdélník vykreslit mimo obrazovku nevykreslí jej, použije aktuální barvu). |
[ESC]+[S] | Vymaže obrazovku a nastaví pozici kursoru na [0,0] | |
[ESC]+[T] |
[X] .. 0-255 [Y] .. 0-255 [dx] .. 0-255 | Vykreslí vodorovnou čáru z bodu [X,Y] o délce [dx] (při (X+dx)>255 čáru nevykreslí; použije aktuální barvu) |
[ESC]+[U] |
[X] .. 0-255 [Y] .. 0-255 [dY] .. 0-255 | Vykreslí svislou čáru z bodu [X,Y] o délce [dY] (při (Y+dY)>255 čáru nevykreslí; použije aktuální barvu) |
[ESC]+[V] | [P] .. '1','2' | Zařízení umožňuje díky dostatečné paměti mít uloženy dvoje data pro obrazovku. Tento kód přepne zobrazení dat na část 1. ([P] = '1'), nebo na část 2. ([P] = '2') |
[ESC]+[W] | [P] .. '1','2' | Zařízení umožňuje díky dostatečné paměti mít uloženy dvoje data pro obrazovku. Tento kód přepne zápis dat na část 1. ([P] = '1'), nebo na část 2. ([P] = '2') |
[ESC]+[X] | [X] .. 0-41 | Nastaví horizontální textovou pozici na [X] |
[ESC]+[Y] | [Y] .. 0-31 | Nastaví vertikální textovou pozici na [Y] |
[ESC]+[Z] |
[X] .. 0-234 [Y] .. 0-226 [Z] .. ' '-'~' | Vykreslí 4x větší znak [Z] na pozici [X,Y] (použije aktuální barvu). |
5.Odesílání dat
Pro zadávání výstupních dat z TV terminálu slouží klávesnice kompatibilní s IBM AT, která se obvykle připojuje k PC. Požadavek byl, aby veškerá komunikace s cílovým zařízením probíhala pomocí sériové komunikace. Proto bylo třeba použít převodník mezi scan kódy klávesnice a kódem ASCII.
Softwarová implementace převodníku do ATmega 8515 již nebyla možná. Vzhledem k časové vytíženosti nezvládal mikrokontrolér v reálném čase obsluhovat klávesnici. Proto byl modul doplněn o samostatný mikrokontrolér ATtiny 13, jehož úkolem je snímání scan kódů klávesnice a jejich převod na ASCII kód a odesílání pomocí sériové komunikace.
Obvod pro obsluhu klávesnice není nijak vázán na obsluhu TV obrazovky a lze jej úplně vynechat.
Program pro ATtiny 13 jsem neprogramoval, ale převzal jsem jej z oficiálních stránek firmy Atmel, kde byl tento problém již vyřešen [1.] případně obdobný program pro mikrokontrolér HC705JA můžeme nalézt na [2.]
Hlavní funkcí programu mikrokontroléru je převod scan kódu klávesnice na ASCII kód, komunikační části byly mírně upraveny.
obr. 11.Mapa scan kódů klávesnice (zdroj [2.])
obr. 12.Mapa scan kódů druhé části klávesnice (zdroj [2.])
Vstup klávesnice je realizován přes konektor DIN6 mini na který je možné připojit redukci na konektor DIN 5. Výstup ze zařízení je realizován přes stejný konektor, který se využívá pro vstup dat.
6.Napájení
Napájecí napětí k zařízení se přivádí přes konektor NEB 21 R. Velikost napájení by měla být 9 … 15V stejnosměrných. Maximální proudový odběr by neměl přesáhnout 0,3 A. Ke stabilizaci napětí na +5V se využívá LM 2575. Jedná se o spínaný zdroj, tento obvod má proto menší ztrátový výkon než klasické stabilizátory řady 78xx.
obr. 13.Schéma stabilizátoru napětí
7.Schéma zapojení
obr. 14.Schéma zapojení
Označení součástky | Hodnota | Označení součástky | Hodnota |
C1, C2 | 22pF | L1 | 330mH |
C3, C4, C5, C6, C7, C8, C9, C10 | 100nF | LED1 | LED 5mm |
C11 | 100mF/35V | Q1 | 12MHz |
C12 | 470mF/16V | R1, R2, R12 | 330W |
C13 | 220mF/16V | R3, R7 | 1KW |
D1, D2, D3, D4 | 1N4148 | R4 | 820W |
D5, D6 | 1N4004 | R5, R8, R9, R10, R11 | 4K7W |
D7 | 1N5819 | R6 | 470W |
IC1 | ATmega 8515 | T1 | BC 547 |
IC2 | AMIC A6253082 | X1 | W237-102 |
IC3 | 74HC573 | X2, X5 | PFH 02-06-P |
IC4, IC5 | 74HC166 | X3 | CANNON 9 M |
IC6 | ATtiny13 | X4 | DIN 6 mini F DPS |
IC7 | LM2575 | X6 | NEB21R |
9.Deska plošných spojů
obr. 15.Rozložení součástek na DPS
obr. 16.Pohled na DPS ze strany součástek
obr. 17.Pohled na DPS ze strany spojů
10.Možnosti využití modulu TV terminálu
V současné době si mnoho lidí pořizuje nové televizory ať již s plochou obrazovkou nebo připravené pro příjem digitálního vysílání. Tím amatéři dostávají k dispozici řadu televizorů, které se již nepoužívají. Tyto přístroje lze použít jako velkoplošné zobrazovače pro různá amatérská zařízení.
Vzrůstající možnosti amatérů používat ve svých konstrukcích různé typy mikrokontrolérů přinášejí možnost využít tento modul jako výstupní zobrazovací jednotku pro zařízení s potřebou zobrazovat větší objem dat. Lze si představit tento televizní modul jako výstupní část například u řady měřících zařízení jako například složitější voltmetry, měřiče kapacity, indukčnosti, záznamníky dat, měřiče charakteristik atd.
Celkové nízké náklady na zhotovení tohoto modulu otevírají mnoha amatérům možnost doplnit svůj výrobek a efektní způsob zobrazení dat.
1.Úvod
Cílem zde popsaného osciloskopu je zobrazovat průběhy napěťových signálů s frekvencí až 50 kHz. Osciloskop byl zároveň vyvíjen pro komunikaci s výše popsaným TV terminálem. Naměřená data se odesílají přes sériovou linku do připojeného zařízení.
Digitální osciloskop umožňuje naměřená data zaznamenávat a také zobrazit nejen grafický průběh, ale i konkrétní hodnotu napětí u dané křivky.
Osciloskop byl koncipován s cílem jednoduché konstrukce, přesto s důrazem na kvalitu měřených dat s minimální chybou měření.
Obvod by bylo možné připojit i k počítači. Nevýhodou je, že v současné době není vytvořen žádný program pro zpracování přenesených dat.
obr. 18.Blokové schéma jednotlivých částí osciloskopu
2.Vstupní obvod
Vstupní obvod patří mezi nejdůležitější částí osciloskopu. Jeho úkolem je připravit měřený signál pro AD převodník. Použitý AD převodník mikrokontroléru je schopný měřit napětí v rozsahu 0 až 3,3 V (viz. dále). Proto je potřeba napětí zesílit, či podělit tak aby co nejlépe vyhovovalo zvolenému rozsahu a tím dosažení co největší přesnosti měření.
Řešení některých prvků vstupního děliče vychází z článku [3.]. Oproti zde uváděnému zapojení je jinak zapojen vstupní multiplexer a celá vstupní část je zjednodušena.
Na vstupu obvodu je vazební kondenzátor, kterým se může na vstupu osciloskopu oddělit stejnosměrná složka signálu. Zařazení či nezařazení kondenzátoru do obvodu řídí mikrokontrolér.
obr. 19.Blokové schéma vstupní obvod osciloskopu
Další částí je vstupní dělič neboli atenuátor. Úkolem děliče je při napětí s amplitudou vyšší než 2 V podělit vstupní signál 1:99. Díky tomu lze osciloskopem měřit střídavé napětí s amplitudou až 200 V. Volba dělení signálu 1:1 či 1:99 se opět ovládá programově mikrokontrolérem. Vstupní dělič je kmitočtově kompenzován. Pro nastavení kmitočtové kompenzace je využit otočný kondenzátorový trimr C24 pomocí něhož lze kmitočtovou kompenzaci dostavit s konkrétním kusem připojené osciloskopické sondy. Celkové zapojení vstupního děliče udává vstupní parametry osciloskopu – 1 MW / 35 pF, což je srovnatelné s některými staršími typy analogových osciloskopů.
obr. 20.Detailní schéma vstupního děliče
Následuje zesilovač signálu. Slouží k zesílení malých signálů. Zesilovač má proměnné zesílení, které lze nastavit mikrokontrolérem. Základem je odporový dělič, který je připojen ve zpětné vazbě operačního zesilovače OZ. Odporový dělič obsahuje pět trimrů na jejichž běžcích lze nastavit takovou úroveň signálu, aby zesílení operačního zesilovače bylo 50, 20, 10, 5, 2 a 1. K přepínání úrovní je určen analogový multiplexer typu 4051.Operační zesilovač je zapojen jako běžný neinvertující zesilovač.
V zapojení [3.] byl multiplexer zapojen tak, že přepínal jednotlivé rezistory k výstupu operačního zesilovače. Nevýhodou tohoto zapojení je, že při nastavování zesílení operačního zesilovače se uplatňuje také vnitřní odpor multiplexeru. Poroto jsem volil jiné zapojení, kdy je multiplexer zapojen mezi odporový dělič a vstup operačního zesilovače. Odpor multiplexeru je v tomto zapojení zanedbatelný proti vstupnímu odporu operačního zesilovače.
Patřičně upravený signál jde do oddělovacího operačního zesilovače. Tento operační zesilovač není pravým sledovačem neboť má malé zesílení. Upravuje signál tak, aby AD převodník mikrokontroléru již měřil reálné hodnoty a nebylo nutné měřená data programově přepočítávat. Toto zesílení lze doladit pomocí trimru ve zpětné vazbě zesilovače.
Posledním prvkem je obvod pro posouvání napěťových úrovní. Jak již bylo zmíněno v úvodu je mikrokontrolér schopen měřit napětí v rozsahu 0 až 3,3V. Proto je potřeba aby obvod napětí v rozsahu -5 až 5V zmenšil a posunul. Tento obvod rovněž nabízí možnost měřit data v unipolární či bipolární variantě. Standardní je bipolární režim, při kterém se zobrazuje jak kladná, tak záporná část signálu. Pokud chceme ovšem osciloskop použít pro sledování číslicových signálů, nepotřebuje zobrazovat zápornou část dat. Proto je lepší, když osciloskop je schopný oříznout zápornou část dat (pokud ji data mají) a nulu posunou níž a tím zvětšit rozlišení dat. Přepínání mezi bipolárním a unipolárním režimem opět řídí mikrokontrolér pomocí spínacího tranzistoru T1.
3.Řídící obvod
V současné době je na trhu mnoho mikrokontrolérů od různých výrobců. Pro osciloskop jsou nejdůležitější vlastnosti AD převodníku daného mikrokontroléru. Požadované rozlišení (8 bitů) splňují téměř všechny. Kritickým parametrem je však rychlost převodu. Při výběru z dostupných typů mikrokontrolérů se jako nejlepší ukázal typ MC9S08QG8 od firmy Freescale.
Na jedno měření AD převodníku u tohoto typu je třeba 17 bus instrukcí (při osmibitovém rozlišení a kontinuálním převodu). Jedna bus instrukce je dána dvěma impulsy oscilátoru. Pro buzení mikrokontroléru jsem zvolil vnitřní oscilátor mikrokontroléru, který je potřeba na začátku nastavit na hodnotu 17 MHz. Tím je získána minimální doba převodu 2 ms.
Toto mírně překračuje povolované parametry avšak při osmibitovém převodu pracuje AD převodník naprosto spolehlivě.
obr. 21.Periferie připojené k mikrokontroléru
Mikrokontrolér dále slouží k ovládání zvolených módů při měření. Spíná pomocí tranzistorů relé, která nastavují režimy AC/DC, 1:1/1:99, Unipolar/Bipolar (viz. předchozí kapitola). Mikrokontrolér zajišťuje také sériovou komunikaci. Při sériové komunikaci jsou data oddělena pomocí optočlenů, aby se galvanicky oddělilo celé zařízení od dalších přístrojů.
4.Nastavení vnitřního oscilátoru řídícího obvodu
Po spuštění programu mikrokontroléru se frekvence vnitřního oscilátoru nastaví na 17 MHz. K tomu slouží synchronizační funkce, která postupně nastavuje trimovací registr a spouští zkušební smyčku. Úkolem zkušební smyčky je provést daný počet instrukcí a během nich počítat příchozí impulsy, které jsou generovány pomocí externího integrovaného obvodu typu 4060 s připojeným krystalem.
Výpočtem vyšlo a empiricky potvrzeno bylo, že by se mělo provést 2360 cyklů aby se oscilátor dostal na frekvenci 17 MHz. Na přesné nastavení trimovacího registru má funkce 50 opakování, během kterých by se měl trimovací registr nastavit na přesnou hodnotu.
Integrovaný obvod 4060 se zároveň používá pro generování kontrolního kmitočtu 800Hz, který je vyveden na výstupní svorku. Tento kontrolní kmitočet se může použít pro kontrolu funkčnosti osciloskopu a pro případné nastavování kmitočtové kompenzace s připojenou osciloskopickou sondou.
5.Sériová komunikace
Naměřená data i data sloužící k ovládání osciloskopu se přenášejí pomocí sériové linky. Pro ovládání osciloskopu stačí přenášet pouze znaky v ASCII kódu. Jednotlivé znaky jsou uvedeny v helpu, který je součástí programu osciloskopu (viz. následující kapitola).
obr. 22.Zapojení datového konektoru u osciloskopu
Parametry sériové komunikace jsou shodné s TV terminálem. Aby byla zajištěna funkce výstupního oddělení sériové komunikace je potřeba zajistit napájení výstupního optočlenu. Proto je nezbytné aby na vývod číslo 9 na konektoru CANNON bylo přivedeno napětí. Pokud je osciloskop připojen k TV terminálu, je na vývod 9 přivedeno +5 V. U jiných zařízení musíme toto zajistit například softwarově. Pro osobní počítače IBM je potřeba nastavit správnou polaritu signálu označovaného jako RING.
obr. 23.Detail galvanického oddělení sériové komunikace
6.Módy měření
Osciloskop umožňuje nastavovat různé módy měření. Módy se mění pomocí znaků, které přichází po sériové lince. Změnu a nastavení jednotlivých módů udává následující tabulka:
Klávesa | Funkce | ||||||||||||||||||||||||||||||||||||||||||||||||||||
<- -> |
Nastavení časové základny. Klávesa <- snižuje dobu jednoho dílku, klávesa -> zvyšuje dobu dílku. Jednotlivé rozsahy časové základny: 50 us / dílek; 100 us / div; 200us/div; 500us/div; 1ms/div; 2ms/div; 5ms/div; 10ms/div; 20ms/div; 50ms/div; 100ms/div; 200ms/div; 500ms/div; 1s/div; 2s/div; |
||||||||||||||||||||||||||||||||||||||||||||||||||||
/|\ \|/ |
Nastavení zesílení signálu. Klávesa \|/ zvyšuje zesílení signálu, klávesa /|\ zmenšuje zesílení signálu. Jednotlivé zesílení a nastavení vstupního odporového děliče:
tab. 4.Zesílení jednotlivých rozsahů |
||||||||||||||||||||||||||||||||||||||||||||||||||||
S |
Nastavování synchronizace. Přepíná mezi režimy No synchro, Synchro Down, Synchro Up. Při zapnuté synchronizaci se začne měřit až v okamžiku, kdy se dosáhne napěťové úrovně definované triggerem. No synchro – vypnutá synchronizace Synchro Down – synchronizace na sestupnou hranu Synchro Up – synchronizace na vzestupnou hranu |
||||||||||||||||||||||||||||||||||||||||||||||||||||
U, u, D, d |
Nastavení úrovně tirggeru pro synchronizaci. U – zvednutí úrovně triggeru o dílek u – zvednutí úrovně triggeru o 0,2 dílku S – snížení úrovně triggeru o dílek s – snížení úrovně triggeru o 0,2 dílku |
||||||||||||||||||||||||||||||||||||||||||||||||||||
space |
Zobrazení posledních měřených hodnot k analyzování – tzv. Hold. Při módu Hold se objeví kurzor, kterým lze pohybovat a zobrazovat hodnotu napětí signálu v daném bodě (pouze při bipolárním režimu). |
||||||||||||||||||||||||||||||||||||||||||||||||||||
< > | Klávesy pro posuv kurzoru v módu Hold. | ||||||||||||||||||||||||||||||||||||||||||||||||||||
P | Přepínání mezi bipolárním a unipolárním režimem. | ||||||||||||||||||||||||||||||||||||||||||||||||||||
A | Přepínání mezi režimy AC / DC. | ||||||||||||||||||||||||||||||||||||||||||||||||||||
F | Tato klávesa přepíná mezi kontinuálním režimem Free run a jednotným sejmutím signálu Single shot. Režim Single shot po zmáčknutí startovní klávesy (enter) začne měřit, případně vyčká na synchronizační úroveň. | ||||||||||||||||||||||||||||||||||||||||||||||||||||
enter | Spouštění měření v režimu Free run. | ||||||||||||||||||||||||||||||||||||||||||||||||||||
C | Pro komunikaci s TV terminálem je vhodné mít možnost vycentrovat obraz. Při zmáčknutí tlačítka C se zapne režim při kterém je možné vycentrovat obraz na televizoru. Po vycentrování se potvrdí klávesou enter. | ||||||||||||||||||||||||||||||||||||||||||||||||||||
H | Zobrazí Help který zobrazuje informace o funkčních klávesách. |
7.Napájení
V zapojení je potřeba celkově tří úrovní napětí. Logické obvody jsou napájeny napětím 3,3 V. Operační zesilovače a multiplexer vyžadují napětí +5 V a -5 V.
Napájecí napětí k zařízení se přivádí přes konektor NEB 21 R. Velikost napájení by měla být 9 … 15 V stejnosměrných. Maximální proudový odběr by neměl přesáhnout 0,2 A. Je nutné, aby byl zdroj napětí galvanicky oddělený od elektrické sítě.
Napájecí napětí se přivede přes ochrannou diodu, aby se zabránilo přepólování napětí. Následně se napájení pomocí stabilizátoru 7805 upraví na +5 V. Toto napětí je potom přiváděno na stabilizátor typu LE33, který vytvoří napětí 3,3 V pro napájení logických obvodů. Napájecí napětí +5 V je také přiváděno na měnič typu ICL7660, který mění polaritu napětí na -5V.
U měniče ICL7660 se objevil problém se zvlněným výstupním napětím. Ukázalo se, že -5 V bylo tak zvlněné, že pronikalo do vstupních operačních zesilovačů a projevovalo se to na měřeném signálu. Proto bylo třeba na výstup měniče připojit filtr tvořený kondenzátorem C8 a tlumivkou L1.
obr. 24.Detail schéma zapojení měniče
8.Schéma zapojení
obr. 25.Schéma zapojení osciloskopu
Označení součástky | Hodnota | Označení součástky | Hodnota |
C1, C2,C4, C5, C9, C10, C11, C14, C15, C19, C21, C22, C23 | 100n | R1, R2, R5, R20 | 10KOhm |
C3, C6, C13 | 470u/16V | R3 | 750KOhm |
C7, C8 | 10u/16V | R4 | 240KOhm |
C25 100u/16V | R6 | 200Ohm TRIMM | |
C12 | 2n7 | R7, R8 | 100Ohm TRIMM |
C16 | 22p | R9, R10 | 50Ohm TRIMM |
C17 | 82p | R11, R19, R22, R31, R32 | 1K2 Ohm |
C18, C20 | 1u/16V | R12 | 220Ohm |
C24 | C-TRIMM3-40pF | R13 | 330Ohm |
D1 | 1N4004 | R14 | 150Ohm |
D2, D10 | BZX55/5V1 | R15 | 82Ohm |
D3, D4, D5, D6, D7, D8, D9 | 1N4148 | R16, R28 | 2K2 Ohm |
IC1 | MC9S08QG8 | R17 | 10MOhm |
IC2 | 4051 | R18, R21 | TRIMM 500Ohm |
IC3 | 4060 | R23 | 3K3 Ohm |
IC4 | ICL7660 | R24 | 470 Ohm |
IC5 | NE5532N | R25, R30 | 4K7 Ohm |
IC7 | 7805 | R26 | 6K8 Ohm |
IC8 | LE33 | R27 | 1K5 Ohm |
T1 | BC560 | R29 | 1K Ohm |
K1, K2 | G5V1 | X1 | NEB21R |
L1 | 1mH | X2,X4 | R141426 |
OK1, OK2 | PC817 | X3 | F09HP |
Q1, Q2 | BC639 | X4 | 22-23-2031 |
10.Deska plošných spojů
obr. 26.Rozložení součástek na DPS
obr. 27.Pohled na DPS ze strany součástek
obr. 28.Pohled na DPS ze strany spojů
11.Shrnutí vlastností osciloskopu
Parametry popsaného osciloskopu jsou limitovány především použitým mikrokontrolérem a jeho AD převodníkem. Pokud by měli být parametry výrazně lepší musela by být konstrukce zcela jiného charakteru s využitím rychlých AD převodníků a rychlé vyrovnávací paměti. Taková konstrukce by však byla neúměrně složitější. Pro cíl, který byl stanoven na počátku návrhu tj. osciloskop pro nf signály však daný mikrokontrolér a AD převodník vyhovují a účel splňují.
Při školním měřením jsem se setkal s tvrzením, že odečítat data z osciloskopu lze s přesností přibližně 10%. Při správném zkalibrování osciloskopu můžeme dosáhnout mnohem lepší přesnosti. Výhodou u tohoto digitálního osciloskopu je možnost procházet změřený signál bod po bodu a odečítat naměřené napětí.
Nevýhodou, kterou tento osciloskop trpí podobně jako jiné digitální osciloskopy je tzv. aliasing. Jedná se o zobrazování chybného průběhu při shodě vzorkovací frekvence s násobky měřené periody.
Pro používání v běžné amatérské praxi nabízí tento osciloskop jednoduchou a levnou možnost doplnění amatérského pracoviště o kvalitní měřící přístroj.
[1.] Interfacing the PC AT keyboard, http://www.atmel.com/dyn/resources/prod_documents/doc1235.pdf, ©ATMEL corporation 2002
[2.] http://www.beyondlogic.org/keyboard/keybrd.htm ©Craig Peacock 1999-2005
[3.] Praktická elektronika A Radio, ročník XI/2006, číslo 10, str. 9 – 13
[4.] ATmega 8515 datasheet,www.atmel.com/dyn/resources/prod_documents/doc2512.pdf, ©ATMEL corporation 2002
Belza J.: Operační zesilovače pro obyčejné smrtelníky, BEN – technická literatura, Praha 2004, ISBN: 8073000601
Dietmeier U.: Vzorce pro elektroniku, BEN – technická literatura, Praha 1999, ISBN: 8086056538
Jedlička P.: Přehled obvodů řady CMOS 4000 díl I. 4000 … 4099, BEN – technická literatura, Praha 1994
Vít V.: Základy televizní techniky; SNTL; Praha 1987
Praktická elektronika A Radio, ročník XI/2006, číslo 10
Katalog elektronické součástky, stavebnice a moduly; Elektronika Zdeněk Krčmář 2007
http://www.beyondlogic.org/keyboard/keybrd.htm ©Craig Peacock 1999-2005
http://www.lancos.com/prog.html
ATmega 8515 datasheet,www.atmel.com/dyn/resources/prod_documents/doc2512.pdf, ©ATMEL corporation 2002
ATtiny 13 datasheet, http://www.atmel.com/dyn/resources/prod_documents/doc2535.pdf, ©ATMEL corporation 2002
LM2575 datasheet, http://www.ortodoxism.ro/datasheets2/9/0o5u8fuw6uw86g2qtrc3178eexcy.pdf, ©ON Semiconductor
74HC573 datasheet, http://www.ortodoxism.ro/datasheets/philips/74HC_HCT573_CNV_2.pdf, © Philips Semiconductors 1990
74HC166 datasheet, http://www.ortodoxism.ro/datasheets/philips/74HC_HCT166_CNV_2.pdf, © Philips Semiconductors 1990
Interfacing the PC AT keyboard, http://www.atmel.com/dyn/resources/prod_documents/doc1235.pdf, ©ATMEL corporation 2002
Switching diode 1N4148/1N4150/1N4448/1N914B, http://www.ortodoxism.ro/datasheets/rohm/1n4148.pdf ©ROHM
NE5532, NE5532A,SA5532,SA5532A Dual low-noise operational,http://www.ortodoxism.ro/datasheets/texasinstruments/ne5532.pdf ©Texas Instruments Incorporated 2005
Switched-Capacitor Voltage Converters, ©Maxim Integrated Products 1994
MC9S08QG8,MC9S08QG4 Data Sheet, http://freescale.com, ©Freescale Semiconductor, Inc. 2005
nf_osc_dokumentace.pdf Dokumentace k nf osciloskopu s výstupem na TV (soubor pdf)
nf_osc_prezentace.pdf Prezentace k nf osciloskopu s výstupem na TV (soubor pdf)
nf_osc_tv.zip Program pro IO ATmega 8515 v TV terminálu (soubor v jazyku AMS, překompilovaný soubor hex)
nf_osc_osc.zip Program pro IO MC9S08QG8 v osciloskopickém modulu (soubor pro jazyk C, překompilovaný soubor .s19)
Kompletní zařízení | Modul oscilloscopu | TV board |