11. Laboratóriumi gyakorlat
A/D és D/A konverterek vezérlése számítógéppel
1. A gyakorlat célja: Az ADC0804 és a DAC08 konverterek ismertetése, bekötése, néhány felhasználási lehetőség tanulmányozása, valamint a vezérlésükhöz szükséges programok megírása.
2. Elméleti bevezető: Az A/D és D/A konverterek használata szorosan összefügg a számítógépes adatgyűjtéssel és a folyamatszabályozással, ezért fontos működésük és vezérlésük ismerete. Az ADC0804 analóg-digitál átalakító egy CMOS 8 bites szukcesszív approximációs A/D konverter. Az adatokat egy háromállású (TRI-STATE) tárolón keresztül kapjuk. Differenciál-analóg bemenettel rendelkezik, ami növeli a CMR-t. A referencia feszültség állítható kisebb és nagyobb feszültségértékekre, hogy a vizsgált feszültségtartományban mind a 8 bitet ki lehessen használni, így a feszültségtartományok 0-5V, 5V, 10V, 0-3V, vagy akár a nulla szint megfelelő eltolásával 2-5V lehetnek. A konverziós idő 100s. A hiba ±1/4 LSB, ±1/2 LSB és ±1 LSB a használt feszültségtartománytól függően. A 11.1 ábra a konverter tipikus bekötését mutatja.
11. 1. ábra Működéséhez órajelre van szükség, melyet a CLKR és CLKIN bemenetekre kötött ellenállással (R=10 k), illetve kondenzátorral (C=150pF) biztosítunk. A konverter működhet számítógép által vezérelve, használva a CS , RD,WR, INTR bemeneteket, vagy önállóan. A 11. 2 ábra a működési idődiagramot mutatja. Önálló működés esetében (FreeRunning Mode) a WR és INTR össze vannak kötve.
11.2. ábra Ha a konvertert a számítógép párhuzamos portjára akarjuk kötni, akkor az adatok beolvasására nem áll rendelkezésünkre 8 vonal, csak 4. Ezért a konverter és a számítógép párhuzamos portja közé egy digitális multiplexert kötünk, melynek segítségével először az első 4, majd utána a többi 4 bitet olvassuk be. Az ADC0804 teljes bekötését a 11.3 ábra mutatja:
11.3. ábra
A DAC08 R-2R ellenálláshálózattal rendelkező D/A konverter, mely ellenálláshálózat súlyozott áramokat szolgáltat: a k-adik ágban az áram nagysága Ik=Iref/2k . A bemenetek B1B8 logikai állapotától függően a kimeneti áram, I0 arányos ezen bináris szám értékével. A maximális kimeneti áramot akkor kapjuk, ha mindegyik bemenet logikai szintje“1”. Az áramkör rendelkezik egy komlementer kimenettel is: I 0 . 8
8
1 225 I ref k 256 k 1 2
I 0 I k I ref k 1
(11.1.)
Az áramkör tömbvázlatát a 11.4 ábra mutatja:
11.4. ábra A referencia áram, Iref, a bemeneti analóg jel, mely szükséges a konverzióhoz. Ezt biztosíthatjuk egy áram- vagy feszültséggenerátorral. Vref I ref (11.2.) Rref ahol Rref az áramkör 14-es bemenetére kötött ellenállás, amin keresztül biztosítjuk az Iref jelet. A referencia áram 0,2mA és 4mA között változhat, tipikus érték a 2mA. A tápfeszültség 9V és 36V között változhat. Nagyrészt szimmetrikus tápfeszültséggel használatos, 4,5V és 18V között. Konverziós idő 100ns, hiba 1LSB, kis fogyasztás. A skála felső határának beállítását az áramkör 15-ös bemenetére kötött potenciométerrel végezzük. A 15-ös bemenet és a test között kb. 5V kell legyen. Az alapbekötést a 11. 5 ábra szemlélteti:
11.5. ábra A kimenetek (2 és 4) megfelelő bekötésével a kimeneti analóg feszültség lehet szimmetrikus (10V) vagy nem szimmetrikus (0-10V). Szimmetrikus kimeneti feszültség esetében 0V-ot kapunk a bemeneti logikai érték felénél (10000000), maximális pozitiv feszültséget a bemeneti logikai érték maximális értékénél, valamint maximális negativ feszültséget a bemeneti logikai érték minimális értékénél. A DAC08 teljes bekötését a 11. 6 ábra mutatja:
11.6. ábra
3. A mérés menete: A laboratóriumi mérőhelyen mindkét konverter (ADC0804 és DAC08) megtalálható, a 11.3 illetve a 11.6 ábrának megfelelő bekötés szerint. Az áramkörök egy DB25-ös csatlakozón keresztűl a párhuzamos portra vannak kötve, mely csatlakozó kivezetéseinek száma szintén a 11.3 illetve a 11.6 ábrán vannak feltüntetve. Ennek alapján végig lehet követni, hogy a bemenő és kimenő, valamint a vezérlőjeleket melyik vonalon adja, illetve kapja a számítógép. A 11. 7 ábra a párhuzamos port regisztereinek címét, állapotát és a DB25-ös csatlakozó kimenetei közti kapcsolatot mutatja.
11.7. ábra
Először az analóg-digitál konvertert (ADC0804) vizsgáljuk. Az S1 kapcsolóval két üzemmód közt választhatunk. Ha S1=1 a konverter a 11.2 ábrán feltüntetett idődiagram szerint működik, tehát mind a 4 vezérlő jelet a számítógépből kapja CS , RD, WR , illetve a számítógép kapja INTR . Ha S1=2 a konverter a Self-Clocking vagy Free-Running módban működik, vagyis a WR és INTR össze vannak kötve és automatikusan végzi a bemeneti jel konverzióját külső vezérlő jel (Start) nélkül. Az S3 kapcsolóval választjuk ki, hogy milyen bemeneti feszültséget fogad a konverter. Ha S3=1 szimmetrikus bemeneti feszültséget (5V) köthetünk a bemenetre (IN). Ha S3=2 a bemeneti feszültség 0V és 5V között változhat. Írjunk programot az ADC0804 vezérlésére, illetve a konverzió eredményének beolvasására! Határozzuk meg a kimeneti kódot a minimum, maximum bemeneti feszültségekre és a feszültségtartomány felénél, valamint a kvantum nagyságát szimmetrikus és nem szimmetrikus bemeneti feszültségek esetében! Magyarázzuk meg a különbséget! Az eredményeket írjuk le!
A digitál-analóg konverter (DAC08) esetében a bemenetre küldött bináris számmal arányos analóg feszültséget kapunk, melynek tartományát az S kapcsolóval választjuk ki. Ha S=1 a DAC08 komplementer kimenete I 0 a testre van kötve, a kimeneti feszültség 0V és
5V között változhat. Ha S=2, a kimeneten szimmetrikus feszültséget kapunk 5V tartományban. A digitál-analóg konverter kimenetére (illetve a műveleti erősítő kimenetére) analóg műszert kapcsolva vizsgáljuk meg a feszültség lépcsőket szimmetrikus és nem szimmetrikus kimeneti feszültségekre! Az eredményeket írjuk le! Irjunk megfelelő programot a DAC08 vezérlésére, hogy következő függvényeket generálja: - négyszögjel - háromszögjel - fűrészfogjel. A jelformákat oszcilloszkópon figyeljük! Hogyan változnak a generált függvények, ha az S kapcsoló 1 illetve 2 helyzetben van? Az eredményeket és a generált függvény formákat írjuk le, illetve rajzoljuk le!
4. Kérdések, megjegyzések: 4. 1. Magyarázzuk meg az ADC0804 bemenetére kötött ellenállások szerepét, amikor az S3 kapcsoló az 1 pozicióban van! 4. 2. Ha a bemeneti, illetve a kimeneti feszültségtartomány nő, hogyan változik a kvantum? Adjunk példát az elvégzett gyakorlat alapján! 4. 3. Hogyan változnak a DAC08-al generált függvények a ha az S kapcsoló 1 illetve 2 helyzetben van? 4. 4. Mit kell módosítani a programban, ha nem szimmetrikus tényezőjű négyszögjelet akarunk előállitani? 4. 5. Adjunk konkrét példát A/D és D/A konverterek használatára!