35
UNIVERZITET U NOVOM SADU FAKULTET TEHNIČKIH NAUKA Odsek za elektrotehniku i računarstvo Institut za računarstvo i automatiku Katedra za automatiku i upravljanje sistemima Višekanalni USB merno-akvizicioni sistem - Diplomski rad iz predmeta- - Primena DSP-a u upravljanju - Mentor: Doc. Dr. Nikola Jorgovanović Kandidat: Vojin Ilić, E9026 Novi Sad, Oktobar 2004.

Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Embed Size (px)

DESCRIPTION

Elektro

Citation preview

Page 1: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

UNIVERZITET U NOVOM SADU FAKULTET TEHNIČKIH NAUKA Odsek za elektrotehniku i računarstvo Institut za računarstvo i automatiku Katedra za automatiku i upravljanje sistemima

Višekanalni USB merno-akvizicioni sistem

- Diplomski rad iz predmeta- - Primena DSP-a u upravljanju -

Mentor: Doc. Dr. Nikola Jorgovanović

Kandidat: Vojin Ilić, E9026

Novi Sad, Oktobar 2004.

Page 2: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 1

SADRŽAJ

1. Uvod................................................................................................................................... 2 2. Merno – akvizicioni sistemi ............................................................................................... 5

2.1. Pregled raspoloživih merno-akvizicionih sistema na tržištu ......................................... 5 2.2 USB u merno-akvizicionim sistema................................................................................ 6

3. Realizacija USB merno-akvizicionog sistema ................................................................... 8 3.1. Niskofrekventni (NF) filtar ......................................................................................... 9 3.1.1. Sallen-Key topologija ....................................................................................... 9 3.2. Analogni multiplekser ............................................................................................... 11 3.3. Kolo za prilagođavanje ............................................................................................. 11 3.4. Analogno-digitalni konvertor (A/D) ......................................................................... 12 3.4.1. Prenos podataka preko SPI interfejsa ............................................................. 13 3.5. Mikrokontroler .......................................................................................................... 14 3.5.1. Univerzalna serijska magistrala (USB) .......................................................... 15

4. Zaključak ......................................................................................................................... 17 PRILOG A ............................................................................................................................. 18 PRILOG B ............................................................................................................................ 26 PRILOG C ............................................................................................................................. 28 Literatura ................................................................................................................................ 33

Page 3: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 2

1. Uvod

Zadatak biomedicinskih merno-akvizicionih sistema je da prikupe i obrade podatke koje generiše biološki sistem i da ih prenese do personalnog računara, mikroračunara, terminala ili nekog drugog objekta radi dodatne obrade i prikaza. U današnje vreme sve veći broj merno-akvizicionih sistema se povezuje sa personalnim računarom zbog velikog broja raspoloživih programskih paketa koje podržavaju rad sa interfejsima različitog tipa.

Osnovni elementi u lancu biomedicinskih merno-akvizicionih sistema su: elektrode, elektrofiziološki pojačavač, anti-aliasing filtar, anogno-digitalni konvertor i interfejs ka personalnom računaru.

Prvi element u sistemu za merenje bioloških potencijala su elektrode. Njih posmatramo kao pretvarače struje u jonskoj sredini (organizmu) u struju elektrona u provodniku. Elektrode u kontaktu sa organizmom pokazuju otporno-kapacitivne efekte, a dolazi i do složenih biohemijskih procesa koji utiču na proces merenja. Elektrode moraju da budu netoksične, stabilne i predviđene za rad u amplitudskom i frekvencijskom opsegu koji je karakterističan za biološki mehanizam koji se posmatra. U zavisnosti od merne tehnike, postoji više različitih vrsta elektroda kao što su : površineske elektrode, iglene elektrode, mikro elektrode, intramuskularne elektrode, epimizijalne elektrode, manžetna (cuff) elektrode itd.

Drugi element u sistemu za merenje bioloških signala je elektrofiziološki pojačavač. Elektrofiziološki pojačavač ima zadatak da pojača signal (diferencijalni signal) koji generiše biološki sistem, a da potisne neželjeni signal (signal zajedničkog moda) koji predstavlja smetnju. Najčešće korišćena konfiguracija elektrofiziološkog pojačavača je instrumentacioni pojačavač koji se sastoji od tri operaciona pojačavača. U tabeli 1.1 su prikazane osnovne vrste merenja elektrofizioloških signala sa amplitudskim i frekvencijskim opsezima, prema kojima se projektuje elektrofiziološki pojačavač.

Merenje Opseg amplituda Frekvencijski opseg

[Hz] Tip elektrode

Elektrokardiogram 0.5 – 4mV 0.01 – 250 Površinske elektrode Elektroencefalogram 5 - 300µV DC – 150 Površinske elektrode

Elektromiogram 10 - 1000µV DC – 10000 Iglene elektrode Elektrokortikogram 10 - 5000µV DC – 150 Mikro elektrode Elektrookulogram 30 - 3500µV DC – 50 Kontaktne elektrode

Tabela 1.1 Amplitudski i frekvencijski opsezi mernih veličina i najčešće korišćene metode merenja Na osnovu frekvencijskog opsega mernih veličina iz tabele 1.1, može se zaključiti da

univerzalni elektrofiziološki pojačavač treba da ima frekvencijski opseg od jednosmernih signala (DC), do oko 10kHz. Elektrode koje se dovode na elektrofiziološki pojačavač unose dodatni

Page 4: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 3

jednosmerni napon, tj. elektrodni ofset, koji može da dovede pojačavač u zasićenje. Da bi se eliminisao elektrodni ofset, univerzalni elektrofiziološki pojačavači treba da ima frekvencijski opseg od oko 0.01Hz do oko 10kHz. Kao što se može videti u tabeli 1.1 elektrofiziološki signali imaju veoma male amplitude, tj. merni napon koji je posledica akcionog potencijala je reda stotinjak mikrovolta, ili u najboljem slučaju milivolta, tako da je potrebno ostvariti veliko naponsko pojačanje (60 do 100dB). Minimalna ulazna otpornost za diferencijalni signal teba da bude oko 2MΩ za većinu akcionih potencijala, a ulazna otpornost za zajednički signal reda 100MΩ. Prilikom elektrofizioloških merenja su prisutne smetnje koje često pripadaju istom frekvencijskom opsegu kao i elektrofizioški signali, a koje su po intenzitetu veće od merene veličine. Zbog toga faktor potiskivanja zajedničkog signala (CMRR – Common Mode Rejection Ratio) treba da bude veći od 105dB. Elektrofiziološki pojačavač koji podržava sve od gore navedenih zahteva je objašnjen u [1].

Pošto elektrofiziološki pojačavač ima konačan propusni opseg, onda i signal koji se dobija na izlazu pojačavača ima konačan propusni opseg, ali zbog neizbežnog prisustva visokofrekventnog šuma širina spektra signala na izlazu pojačavača je nepoznata. Da bi se sprečila pojava preklapanja u spektru zbog prisustva visokofrekventnih signala, ulazni signal se pre diskretizacije propušta kroz analogni niskofrekventni filtar (anti-aliasing) koji je treći element u sistemu za merenje. Prelomna učestanost ovog filtra bira se tako da propusti celokupni koristan spektar elektrofiziološkog signala, a učestanost odabiranja ovog signala mora da zadovolji Šenonovu teoremu o odabiranju koja glasi : „Vremenski kontinualni signal može se potpuno rekonstruisati iz svojih odbiraka, ako i samo ako je učestanost odabiranja bar dva puta veća od najviše učestanosti u spektru signala. “

Diskretizacija signala se ostvaruje analogno-digitalnim konvertorom, koji je četvrti element u sistemu za merenje. Analogno-digitalni konvertor treba da bude dovoljno brz da omogući odmeravanje signala u skladu sa Šenonovom teoremom. Na osnovu propusnog opsega signala od interesa iz tabele 1.1 može se zaključiti da analogno-digitalni konvertor treba da ima brzinu od najmanje 20000 semplova u sekundi. Još jedna važna osobina anlogno-digitalnog konvertora je rezolucija, tj. ukupan broj nivoa diskretnih vrednosti na koje može da se podeli ulazni signal u procesu diskretizacije. Svaki dodatni bit u rezoluciji analogno-digitalne konverzije povećava odnos signal/šum za 6dB, odnosno, smanjuje snagu šuma kvantovanja za 6dB, ali istovremeno i značajno povećava cenu konvertora. Zbog toga prlikom odabira analogno-digitalnog konvertora treba napraviti kompromis u pogledu rezolucija/cena.

Interfejs između merno-akvizicionog sistema i personalnog računara može biti serijski ili paralelni. Standardni interfejsi koje podržavaju savremeni personalni računari su: ISA, PCI, PCMCIA, RS232, paralelni port, USB itd. Ako je interfejs implementiran kao ISA, PCI ili PCMCIA, tada se sistem nalazi u personalnom računaru i smanjena je prenosivost sistema sa jednog mesta na drugo mesto. Ukoliko je interfejs implementiran kao USB, RS232 ili paralelni port, prenosivost je moguća u potpunosti. Takođe je veoma bitna brzina prenosa podataka između merno-akvizicionog sistema i personalnog računara. Preko ISA, PCI, PCMCI, USB ili paralelnog porta je ostvarena velika brzina prenosa podataka, dok je preko RS232 značajno manja brzina prenosa podataka.

Merno-akvizicioni sistemi koji se mogu naći na tržištu, pored osnovnih gore navedenih komponenti sadrže i neke dodatne komponente. Ukoliko imamo potrebu za snimanjem više od jednog signala, tada se koristi više analogno-digitalnih konvertora ili analogni multiplekser. Zbog visoke cene jednog kvalitetnog analogno-digitalnog konvertora, uobičajeno je da se koristi analogni multiplekser za povećavanje broja ulaza.

Vrlo često se u merno-akvizicionom sistemu nalazi i mikrokontroler ili procesor za digitalnu obradu signala (DSP – Digital Signal Procesor), koji ima zadatak da upravlja radom merno-akvizicionog sistema i ukoliko je to potrebno vrši dodatnu obradu signala u vidu digitalnog filtriranja ili usrednjavanja rezultata merenja.

Merno-akvizicioni sistem koji je opisan u ovom radu sadrži sve elemente koji su potrebni za kvalitetno merenje signala i prenos podataka ka personalnom računaru. Njegove osnovne osobine su : osam ulaza za snimanje analognih signala naponskog nivoa u opsegu od -12V, do +12V i frekvencijskog opsega od jednosmernih (DC), do 10kHz, USB i RS232 interfejs i

Page 5: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 4

galvansko odvajanje ulaza od izlaza sistema. Zbog USB i RS232 interfejsa, merno-akvizicioni sistem postaje potpuno autonoman sistem, tj. sistem nije vezan samo za jedan personalni računar, već se može lako prenositi. Ukoliko postoji potreba za snimanjem većeg broja ulaza od osam, sistem se lako može proširiti dodavanjem većeg broja analognih multipleksera. Ovo je veoma bitno jer se za snimanje elektroencefalografije koristi čak 64 odvoda.

Ukoliko se ovaj merno-akvizicioni sistem koristi u kombinaciji sa elektrofiziološkim pojačavačima opisanim u [1], sistem postaje biomedicinski merno-akvizicioni sistem. Signali koji se tada mogu snimati su reda mikrovolta ili milivolta i frekvencijskog opsega od 0.01Hz do 10kHz. Pošto po međunarodnom stadardu IEC 60601-1 pacijent mora da bude galvanski odvojen od glavnog napajanja radi sprečavanja da struja koja može da ugrozi pacijenta dođe na elektrode, i da neki slučajni veliki ulazni signal ošteti sistem uvedeno je galvansko odvajanje ulaza od izlaza i zaštita samog sistema.

Posebna pažnja je posvećena implementaciji USB interfejsa na mikrokontroleru. USB interfejs je odabran zbog svoje velike fleksibilnosti, velikog protoka podataka i sve veće popularnosti u svetu. Njegove osnovne osobine su : povezivanje do 127 periferijskih uređaja u višeutičnoj (multidrop) konfiguraciji, sinhrona komunikacija preko deljene dvožične linije, NRZI kodiran diferencijalni signal, dužina kabla jednog USB segmenta do 5m, brzine prenosa 1.5Mbit/s (spori uređaji), 12Mbit/s (uređaji pune brzine) i 480Mbit/s (uređaji visoke brzine), distribucija napajanja 5V za uređaje koji troše 100-500mA uz smanjenje utroška energije u neaktivnom stanju kada se potrošnja smanjuje na oko 500µA, automatsko prepoznavanje priključenja nove periferijske jedinice i njen nesmetan rad bez potrebe za restartom sistema, četiri režima komunikacije, u skladu sa prirodom periferijksih uređaja, uz neophodne mehanizme kontrole grešaka i retransmisije poruka, standardizovan tip konektora i kablova za povezivanje.

.

Page 6: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 5

2. Merno-akvizicioni sistemi

2.1. Pregled raspoloživih merno-akvizicionih sistema na tržištu Merno-akvizicioni sistemi su sastavni deo svake laboratorije koja se bavi instrumentacijom

i merenjima. Zbog sve veće potrebe za merno-akvizicionim sistemima, pojavljuje se sve veći broj firmi u svetu, a polako i kod nas koje proizvode ovakve sisteme. Glavne razlike u merno-akvizicionim sistemima različitih proizvođača su: broj ulaza, brzina odmeravanja, tip interfejsa prema personalnom računaru, mobilnost itd.

Jedne od vodećih firmi u svetu koje se bave obradom i akvizicijom podataka su National Instruments i Measurement Computing Corporating. One imaji veliki broj različitih merno-akvizicionih sistema koji se oslanjaju na svoja programska okruženja i ovde će biti pomenuti samo neki od tih sistema.

DAQ-STC602xE su merno-akvizicioni sistemi firme National Instruments koji imaju šesnaest analognih ulaza, koji mogu da se konfigurišu kao osam diferencijalnih ulaza ili šesnaest običnih ulaza, dva analogna izlaza i osam do tredeset dve digitalne ulazno/izlazne linije. Interfejs ka personalnom računaru je PCI.

Glavna mana ovih merno-akvizicionih sistema je interfejs sa pernosalnim računarom, tj. smanjena je prenosivost sistema zbog korišćenja PCI magistrale. Upotreba ovi merno-akvizicionih sistema za akviziciju elektrofizioloških signala zahteva upotrebu izolacionih pojačavača pošto ne poseduju galvansko razdvajanje ulaza od računarskog sistema.

DAQPad-6070E je merno-akvizicioni sistem firme Nationa Instruments koji ima šesnaest običnih ili osam diferencijalnih analognih ulaza rezolucije dvanaest bita, maksimalne brzine semplovanja od 1,25MS/s i naponskog opsega ±0,05V do ±10V, dva analogna izlaza rezolucije dvanaest bita, maskimalne brzine osvežavanja izlaza od 1MS/s i naponskog opsega od ±10V, osam digitalnih ulazno-izlaznih linija i dva brojača. Interfejs prema računaru je IEEE1394, tj. FireWire čime je postignuta velika mobilnost ovog sistema.

miniLAB1008 je merno-akvizicioni sistem firme Measurement Computing Corporation. Glavne karakteristike ovog sistema su : osam običnih ili četiri diferencijalna analogna ulaza dvanaestobitne rezolucije, dva desetobitna analogna izlaza, jedan tridesetdvobitni brojač događaja, dvadeset osam digitalnih ulazno/izlaznih linija, USB 1.1 interfejs prema personalnom računaru.

Kod nas na tržištu firma MikroElektronika između ostalog proizvodi i merno-akvizicione sisteme. Za sada je na raspojaganju jedan merno-akvizicioni sistem DAQ-12 koji ima osam analognih ulaza naponskog nivoa od 0 – 5V, LCD displej, CAN magistralu, RS232 i infra-crvenu (IrDA) komunikaciju sa personalnim računarom ili nekim drugim uređajem.

Page 7: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 6

Ovaj merno akvizicioni sistem sistem spada u industrijske sisteme za akviziciju podataka. Takođe nije implementirana galvanska izolacija ulaza i izlaza, što ograničava primenu samog sistema u medicinskim aplikacijama.

2.2 USB u merno-akvizicionim sistema Jedan od važnih delova merno-akvizicionog sistema je komunikacioni interfejs. On treba

omogući što je moguće veći protok podataka između samog sistema i personalnog računara. Još jedna veoma bitna osobina interfejsa merno-akvizicionih sistema je mobilnost. Zbog ovih karakteristika, proizvođači merno-akvizicione opreme se sve više opredeljuju na USB ili FireWire tip interfejsa.

Da bi merno-akvizicioni sistem mogao da komunicira sa personalnim računarom preko USB-a, on prvenstveno mora da poseduje USB kontroler. Osnovi delovi USB kontrolera su : analogni prijemnik i analogni predajnik, blok za oporavak takta, PLL, serijski interfejs i interfejs prema mikrokontroleru ili procesoru. Na slici 2.1 je prikazan blok dijagram USB kontrolera.

Slika 2.1. Blok dijagram USB kontrolera

Analogni prijemnik i analogni predajnik (Analog trasceiver) imaju zadatak da komuniciraju sa personalnim računarom preko kabla terminisanog otpornicima (diferencijalni transiveri) i nadgledaju stabilnost naponskih nivoa prekidanja sa pragom okidanja između 0,8V i 2,0V na USB magistrali u vremenskom intervalu koji je propisan USB specifikacijom (jednostruku prijemnici).

Blok za oporavak takta (Bit block recovery) oporavlja takt od dolazećeg USB podatka, koristeći veću frekvenciju semplovanja od frekvencije USB-a (Oversampling).

PLL (Phase Locked Loop) služi za podizanje frekvencije takta kontrolera na radnu frekvenciju USB-a. Pomoću PLL-a je omogućeno priključivanje kristala koji ima mnogo manju radnu frekvenciju od frekvencije USB-a. Pomoću PLL-a se tada ova frekvencija podigne na radnu frekvenciju USB-a, npr. 48MHz za USB 2.0.

Serijski interfejs (SIE – Serial Interface Engine) izvršava NRZI kodiranje i dekodiranje, popunjavanje bita, generisanje i testiranje CRC-a i konverziju podataka iz serijskog u paralelni prenos.

Memorijska jedinica (MMU – Memory Management Unit) ima za zadatak da upravlja prenosom podataka između serijskog interfejsa i RAM-a. Podaci koji su smesteni u RAM se preko memorijske jedinice prenose do paralelnog interfejsa.

PLL

Blok za oporavak takta

SIE Memorijska jedinica

Rx/Tx

Paralelni i DMA interfejs

RAM

Naponski regulator

Page 8: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 7

Interfejs između mikrokontrolera ili procesora treba da bude sa što većom propusnom moći. Zbog toga se USB kontroleri poseduju paralelni interfejs za spregu sa mikrokontrolerom. Ovaj interfejs omogućava da se USB kontroler smesti u memorijski prostor mikrokontrolera. Ukoliko USB kontroler poseduje i DMA prenos, propusna moć postaje još veća.

Neki od ovakvih USB kontrolera koji se mogu naći na tržištu su: 802x00 firme Intel, PDIUSBD12 firme Phillips, USBN9604 firme National Semiconductor i dr. Takođe postoje i mikrokontroleri sa integrisanim USB kontrolerom i transiverom. Neki od mikrokontrolera koji se mogu naći na tržištu sa integrisanim USB kontrolerima su: AT89C5131 firme Atmel, PIC16C75x firme Microchip, C540 firme Siemens i dr.

Page 9: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 8

3. Realizacija USB merno-akvizicionog sistema

U ovom poglavlju biće prikazana realizacija kompletnog USB merno-akvizicionog sistema, sa opisom korišćenih komponenti za implementaciju sistema.

Blok šema osmokanalnog USB merno-akvizicionog sistema prikazana je na slici 3.1. Ovaj merno-akvizicioni sistem poseduje sve elemente standardnih merno-akvizicionih sistema. Jedina razlika u odnosu na ostale merno-akvizicione sisteme je galvansko odvajanje analogno-digitalnog konvertora od mikrokontrolera, tako da postoje dve nezavisne mase u sistemu: analogna i digitalna. Ovo je posebno bitno prilikom snimanja elektrofizioloških signala, jer pacijent treba da je galvanski odvojen od računarskog sistema.

Slika 3.1 Blok šema višekanalnog merno-akvizicionog sistema

Izlolovani deo se sastoji od analogno-digitalnih komponenti, dok se neizolovani deo sastoji samo od digitalnih komponenti.

Analogne komponente izolovanog dela su ulazni niskofrekventni (NF) filtri, analogni multiplekser, kolo za prilagođavanje i referentno napajanje, dok u digitalne komponente spada samo analogno-digitalni konvertor. Analogni multiplekser ima zadak da jedan od osam ulaznih signala prosledi ka kola za priladođavanje i dalje prema analogno-digitalnom konvertoru.

Page 10: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 9

Zadatak analognog dela je da ograniči spektar ulaznih signala i da prilagodi njihove naponske nivoe ulazu analogno-digitalnog konvertora. Podaci koji se digitalizuju pomoću analogno-digitalnog konvertora se preko bloka za galvansku izolaciju prenose do neizolovanog dela. Napajanje analogno-digitalnog konvertora mora da bude precizno sa minimalnim promenama prilikom promene temperature. Zbog toga se uvodi poseban blok za napajanje analogno-digitalnog konvertora, tj. referentno napajanje.

Postavljeni zahtevi su potpuna kompatibilnost sa elektrofiziološkim pojačavačem iz [1]. Pojačavač na svom izlazu daje napon u opsegu od -12V do +12V. Da bi se ovaj napon prilagodio na radni napon analogno-digitalnog konvertora uvodi se kolo za prilagođavanje napona ova dva stepena.

Neizolovani deo se stastoji od mikrokontrolera i interfejsa prema personalnom računaru. Mikrokontroler ima zadak da prikupi podatke sa analogno-digitalnog konvertora i da ih prenese personalnom računaru. Mikrokontroler takođe upravlja radom celog merno-akvizicionog sistema.

Blok sa izolaciju se sastoji od opto-kaplera i DC/DC konvertora. DC/DC konvertor služi da obezbedi napajanje izolovanom delu elektronike i ono je realizovano kao prekidački izvor napajanja. Da bi se postigla potpuna galvanska izolacija, ubacuju se opto-kapleri između analogno-digitalnog konvertora i mikrokontrolera. U cilju ostvarivanja dovoljno velike brzina prenosa podataka sinhronom serijskom komunikacijom od analogno-digitalnog konvertora ka mikrokontroleru galvansko razdvajanje ostvareno je primenom brzih opto-kapleri.

3.1. Niskofrekventni filtar (NF)

Da bi se sprečila pojava preklapanja spektra zbog prisustva visokofrekventnih signala,

spektar ulaznog signal se pre diskretizacije ograničava propuštanjem kroz analogni niskofrekventni filtar (engl. anti-aliasing filter).

Uloga filtra je da smanji snagu ulaznog signala iznad učestanosti Ω = πT =

Ωs2 . U praksi

se smatra da je dovoljno ako se amplituda signala iznad Nikvistove učestanosti smanji na manje od 1% (-40dB) amplitude korisnog signala. Ulazni filtar je implementiran kao Butherwoth Sallen-Key filtar drugog reda.

3.1.1. Sallen-Key topologija Filtar drugog reda implementiran samo preko pasivnih komponenti je ograničen zbog

malog faktora dobrote (Q) koji je uvek manji od 0.5. Većina filtara zahteva faktor dobrote veći od 0.5.

Filtri sa većim faktorom dobrote se mogu implementirati koristeći pojačavač sa pozitivnom povratnom spregom. Na slici 3.2 je prikazan NF filtar u Sallen-Key konfiguraciji.

1955. godine su R.P. Sallen i E.L. Key opisali rad ovog filtra i od tada ovi filtri su generalno poznati kao Sallen-Key filtri. Rad ovog filtra se može opisati na sleći način :

• na niskim učestanostima C1 i C2 se ponašaju kao otvoreni prekidači i signal je prosleđen sa ulaza na izlaz sa pojačanjem filtra

• na visokim učestanostima C1 i C2 se ponašaju kao zatvoreni prekidači i signal je vezan na masu na ulazu pojačavača, tako da se ulazni signal ne pojavljuje na izlazu

• blizu prelomne učestanosti impedanse kondenzatora C1 i C2 su istog reda kao R1 i R2 i tada pozitivna povratna sprega preko C2 omogućava povećanje faktora dobrote.

Page 11: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 10

Slika 3.2. NF Sallen-Key filtar

Standardna jednačina u frekvencijskom domenu za NF filtar drugog reda sa pojačanjem K je:

Hlp = K

-

f

f c

2+

jfQfc+1

(1)

Sa fc je označena granična učestanost propusnog opsega, a sa Q faktor dobrote. Kada je f<<fc, jednačina 1 se svodi na pojačanje K i filtar propušta signale pojačanane pojačanjem K. Kada je f=fc, jednačina 1 se svodi na –jKQ, signali su povećani za faktor Q. Kada je f>>fc,

jednačina 1 se svodi na -K

f

f c

2 , i signali su potisnuti za kvadrat odnosa učestanosti.

Funkcija prenosa za filtar prikazan na slici 2 je :

Vo(s)Vi(s) =

1 + R4R3

s2R1R2C1C2 + s(R1C1 + R2C1 + R1C2(1 - K)) + 1

(2)

Ako se uvedu oznake :

s=j2πf, K=1 + R4R3 , fc=

12π R1R2C1C2

i Q=R1R2C1C2

R1C1 + R2C1 + R1C2(1 - K)

dobija se jednačina 1 za NF filtar drugog reda. Jednačina 2 ima veliki broj interesantnih osobina :

• Pojačanje na niskim frekvencijama, odnosno pojačanje u propusnom opsegu može da se odredi iz jednačine 2 tako što se uvrsti da s→0. U tom slučaju faktor pojačanja je jednak K.

• Ako je potrebno promeniti prelomnu frekvenciju, dovoljno je samo promeniti ili vrednosti otpornosti ili kapacitivnosti. Takva promena ne utiče na faktor pojačanja u propusnom opsegu. Ako je pored toga potrebno izvršiti podešavanje tako da odnos vrednosti dva promenjena elementa ostane konstantan, tj. da se svaki od njih procentualno jednako promeni, normirana amplitudna i fazna karakteristika kola ostaje nepromenjena. To znači da se u ovom filtru prelomna frekvencija može lako podešavati.

Kolo sa slike 2 ima i jedan nedostatak, tj. u imeniocu jednačine 2 nema negativnog člana, prenosnu funkciju filtra nemoguće realizovati sa malim faktorom dobrote.

Page 12: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 11

3.2. Analogni multiplekser

Da bi se izbeglo korišćenje osam A/D konvertora i postigla ušteda u pogledu cene merno-

akvizicionog sistema korišćen je analogni multiplekser osam na jedan. Korišćeni osmokanalni multiplekser je firme Maxim, MAX308. To je precizni, monolitni CMOS analogni multiplekser. Ovaj multiplekser može da radi sa dvostrukim napajanjem, do +/- 20V, pa je zbog toga i izabran za implementaciju opisanog merno-akvizicionog sistema. Još jedna od bitnih osobina pri izboru analognih multipleksera je otpornost izabranog kanala, što u konkretnom slučaju oznosi maksimalno 50Ω. Na slici 3.3 je prikazan funkcionalni blok dijagram analognog multipleksera.

Slika 3.3. Fukcionalni blok dijagram analognog multipleksera MAX308

Sa slike se vidi da ovaj multiplekser ima osam ulaza, jedan izlaz, tri selekciona ulaza i jedan kontrolni ulaz od kog zavisi rad multipleksera (EN – Enable). Kada je ulaz EN aktivan, tj. nalazi se na visokom logičkom nivou, tada je multiplekser omogućen za prenos signala od ulaza ka izlazu. Na osnovu adrese koja se određuje pomoću adresnih ulaza A0 – A2, bira se željeni ulaz analognog multipleksera koji se prosleđuje ka izlazu. Velika brzina menjanja adresa od oko 250nS, omogućava kvalitetno snimanje ulaznih signala, bez gubljenja delova informacija.

3.3. Kolo za prilagođavanje

Naponski nivo signala koje merno-akvizicioni sistema treba da snimi su u opsegu od

±12V, a maksimalni ulazni napon analogno-digitalnog konvertora je 5V. Da bi se izvršilo prilagođavanje ova dva stepena potrebno je uvesti kolo koje napon od ±12V pretvara u opseg od 0-5V, koji je pogodan za rad analogno-digitalnog konvertora. Na slici xx je prikazana šema kola za prilagođavanje koje je korišćeno u ovom u radu.

Sa slike 3.4. Mogu da se primete dva dela: invertujućeg pojačavača i invertujućeg sabirača.

Za invertujući pojačavač može da se napiše sledeća jednačina, koja određuje naponsko pojačanje ovog kola.

Vx = - R2R1Vin

Page 13: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 12

Slika 3.4. Kolo za prilagođavanje

Ako je otpornost R2 veća od otpornosti R1, tada ovo kolo radi kao pojačavač. Ali ako je

otpornost R2 manja od otpornosti R1, tada ovo kolo radi kao oslabljivač, što je i primenjeno ovde. Otpornosti R1 i R2 su izabrane tako da se ulazni napon u opsegu od +/- 12V snizi na napon od +/-2.5V. Pošto je ovaj napon i dalje nepogodan za rad analogno-digitalnog konvertora, potrebno ga je dalje obraditi prema ulaznom naponu konvertora. To je urađeno pomoću drugog stepena kola za prilagođavanje. Zadatak ovog kola je da skine ofset od 2.5V i da takav signal dovede na ulaz analogno-digitalnog konvertora.

Kada signal prođe kroz kolo za prilagođavanje, tada napon na njegovom izlazu od 5V

odgovara ulaznom naponu od -12V, a signal od 0V odgovara naponu od +12V. Ova logika obrnuta. To može da ispravi na tri načina. Prvi je da se uvede još jedan invertujući pojačavač, drugi je da se to programski reši u mikrokontroleru ili da se za V+ postavi negativno napajanje. Uvođenje invertujućeg pojačavača povećava prostor na štampanoj ploči i potrošnju sistema. Takođe uvođenje negativnog referentnog napajanja povećava se prostor na štampanoj poloči, potrošnja i cena. Zbog toga je izabran drugi način, tj. da se inverzija izvrši programski u mikrokontroleru.

Za ovaj deo kola može da se napiše sledeća jednačina :

Vout = - R5R3Vx -

R5R4V+

Pravilnim izborom komponenti i ofset napona V+, moguće je postići prilagođavanje

ulaznog napona na radni napon A/D konvertora. Takođe ovo kolo može da se koristi ne samo u ovom merno-akvizicionom sistemu, već u bilo kojoj aplikaciji koja zahteva prilagođavanje sa jednog naponskog nivoa na drugi naponski nivo.

3.4 Analogno-Digitalni konvertor (A/D)

Analogno-digitalni konvertor u merno-akvizicionim sistemima treba zadovolji zahteve u

pogledu brzine konverzije signala, u pogledu rezolucije i pogledu greške konverzije. Na osnovu ovih zahteva se vrši odabir odgovarajućeg analogno-digitalnog konvertora.

Analogno-digitalni konvertor koji zadovoljava sve navedene zahteve u pogledu brzine, rezolucije i cene je LTC1286 firme Linear Techology.

Ovaj analogno-digitalni konvertor radi na principu sukcesivnih aproksimacija. Rezolucija konvertora je 12 bita, što znači da je odnos signal/šum usled kvantizacije 72dB, tj. potiskivanje šuma kvantizacije je 72dB. Potrošnja konvertora je tipično 250µA za vreme konverzije i automatski se ubacuje u mod smanjene potrošnje kada nema konverzije, kada potrošnja iznosi svega 1nA. Komunikacija sa mikrokontrolerom je preko sinhrone serijske komunikacije, SPI (Serial Periferal Interface).

Page 14: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 13

Blok dijagram analogno-digitalnog konvertora LTC1286 je prikazan na slici 3.5.

Slika 3.5. Blok dijagram analogno-digitalnog konvertora LTC1286

3.4.1. Prenos podataka preko SPI interfejsa Interfejs između analogno-digitalnog konvertora i mikrokontrolera ili neke druge periferije je sinhrona serijska komunikacija. Kompletan prenos podataka je sinhronizovan preko takt linije (CLK). Prijem bita od strane mikrokontrolera se vrši na opadajućoj ivici takt signala, dok je prenos svakog bita koji se šalje od konvertora ka mikrokontroleru vrši na rastućoj ivici takt signala. Korišćeni analogno-digitalni konvertor ne zahteva konfiguracionu reč od strane mikrokontrolera i nema ulaz za prijem podataka Din koji služi i za kaskadno vezivanje više konvertora. Pošto ovaj konvertor ima dva ulaza D+ i D- on je inicijalno konfigurisan kao diferencijalni ulaz ili jedan običan ulaz ako je drugi vezan na masu. Opadajuća ivica CS signala koji služi za prozivanje konvertora, inicira prenos podatak između konvertora i mikrokontrolera, kao što je prikazano na slici 3.6.

Page 15: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 14

* Posle završenog takt signala iako je i dalje prisutan signal CS, analogno-digitalni konvertor će da daje nule na svom izlazu.

Slika 3.6. Sekvenca rada analogno-digitalnog konvertora LTC1286

Posle opadajuće ivice signala CS drugi takt impuls omogućuje prenos podataka od konvertora do mikrokontrolera preko linije Dout. Kada se linija CS podigne na visok nivo, konvertor se resetuje i spreman je za novu konverziju.

3.5. Mikrokontroler

U današnje vreme veliki broj proizvođača mikrokontrolera je počeo da integriše USB

kontroler u sam mikrokontroler, kao osnovnu komponentu za bržu komunikaciju sa drugim uređajima.

Odluka na mikrokontroler AT89C5131 firme Atmel bila je prvenstveno zbog implementiranog USB kontrolera u samom miktokontroleru. Još jedna veoma bitna osobina ovog mikrokontrolera je interna programska FLASH memorija i fabrički integrisan BootLoader koji smanjuju vreme razvoja sistema, jer se programiranje mikrokontrolera obavlja u samom sistema gde je mikrokontroler implementiran.

Ostali proizvođači mikrokontrolera sa USB periferijom zahtevaju dodatnu spoljnu memoriju za program, a i za RAM ili imaju kao internu programsku memoriju EPROM, što povećava dimenzije štampane ploče i cenu sistema, a takođe i vreme porebno za razvoj sistema.

Osnovne karakteristike izabranog mikrokontrolera su : • Jezgro mikrokontrolera je bazirano na mikrokontroleru 80C52X2 (6 taktova po

instrukciji) - Maksimalna radna frekvencija je 48MHz u X1 modu ili 24MHz u X2

modu - Dvostruki pokazivač na podatke - Full-duplex UART - Tri šesnaestobitna tajmera/brojača : T0, T1 i T2

• 32 Kbyte programske Flash memorije koja može da se programira preko USB port-a ili UART-a

• 4 Kbyte EEPROM-a • USB kontroler po specifikaciji 1.1 i 2.0 sa prekidom na kraju prenosa podataka

- Kontrolna tačka (Endpoint) 0 za kontrolni prenos podataka : FIFO od 32 byte

- Šest programabilnih Endpoint-a sa ulaznim ili izlaznim smerovima i sa masovnim (Bulk), prekidnim (Interrupt) ili izohronim (Isochronus) prenosom podataka

Endpoint 1, 2, 3 : 32-byte FIFO Endpoint 4, 5 : 2x64-byte FIFO sa dvostrukim baferovanjem

(Ping-pong mode) Endpoint 6 : 2x512-bzte FIFO sa dvostrukim baferovanjem (Ping-

pong mode) - Power-on reset i reset preko USB-a

Page 16: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 15

- 48MHz digitalni PLL za uređaje pune brzine - Prekid USB komunikacije na zahtev mikrokontrolera

• Programabilni hardverski watchdog timer sa periodom od 50mS do 6S na 4MHz • I2C komunikacija sa brzinom do 400Kbit/s • SPI komunikacija (Master/Slave mod)

Na slici 3.7 je prikazana blok šema opisanog mikrokontrolera.

Slika 3.7. Blok šema mikrontrolera AT89C5131

3.5.1. Univerzalna Serijska Magistrala (USB)

Na slici 3.8 je prikazan blok dijagram USB kontrolera koji poseduje mikrokontroler AT89C5131. Ovaj USB kontroler šalje podatke koji se nalaze u DPRAM-u (Dual Port Random Access Memory) po USB stardu do glavnog računara (host computer) i on zahteva takt od 48MHz +/-0,25%. Ovaj takt se dobija pomoću PLL-a na koji se dovodi osnovni takt mikrokontrolera podeljen sa deliteljem takta, što u konkretnom slučaju iznosi 6 ili 12. Ovaj takt se koristi da generiše 12MHz za diferencijalni prenos podataka za uređaje pune brzine. Oporavak takta je izvršen preko digitalnog PLL-a (Digital Phase Locked Loop) koji je kompatibilan sa USB specifikacijom. Serijski interfejs (SIE – Serial Interface Engine) izvršava NRZI kodiranje i dekodiranje, popunjavanje bita, generiše CRC i proverava CRC i konverziju podataka iz serijskog u paralelni prenos. Univerzalni funkcijski interfejs (UFI – Universal Function Interface) realizuje interfejs između podataka u DPRAM-a. Prilikom podešavanja USB kontrolera procedura je sledeća :

• Uključivanje USB kontrolera Pre bilo kakve USB transakcije, takt od 48MHz mora biti korektno generisan.

• Postavljanje adrese Posle reseta sistema ili USB reseta, programski mora da se postavi bit koji će da omogući USB kontroleru da odgovori na zahtev poslat od strane glavnog računara na adresi 0.

Page 17: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 16

Slika 3.8 Blok dijagram USB kontrolera u mikrokontroleru AT89C5131

Kada je primljen zahtev za adresom, USB kontroler mora jedino da odgovori na adresu

definisanu zahtevom. Ovaj proces se naziva enumeracija. Kada se završi sa konfiguracijom USB kontrolera, moguće je razmenjivati podatke sa

glavnim računarom preko brzine od 12Mbit/s ili 480Mbit/s.

C51 interfejs

Takt do 48MHz

Page 18: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 17

4. Zaključak Na osnovu postavljenih zahteva isprojektovan je jedan kvalitetan merno-akvizicioni

sistem koji poseduje dobre karakteristike u pogledu kvaliteta i u pogledu cene. Na osnovu velikog opsega ulaznih signala, sa malim dodacima merno-akvizicioni sistem

može da radi sa velikim brojem različitih periferija kao što su transmiteri sa interfejsom 4-20mA, termistorima, RTD-ovima itd.

Ukoliko se merno-akvizicioni sistem koristi u kombinaciji sa elektrofiziološkim pojačavačima mogućnosti mu postaju još veće, jer je sistem u mogućnosti da pored signala reda nekoli volti snima i signale reda mikrovolta ili milivolta.

Da bi se ostvarila velika brzina prenosa podataka i prenosivost samog sistema, posebna pažnja je posvećena implementaciji USB interfejsa. Pisanjem drajvera za USB, ovaj sistem ima mogućnost da mu se pristupa iz bilo kog programskog jezika i programskog okruženja oslanjajući se na sam drajver.

Ukoliko nema potrebe za velikom brzinom prenosa podataka i potreban je jednostavniji interfejs, personalni računar sa merno-akvizicionim sistemom može da komunicira preko RS232 porta. Za ovaj vid komunikacije nije potreban nikakav poseban drajver, već može da se koristi bilo koji monitorski program ili ako se projektuje sopstveno okruženje za ra sa sistemom mogu se koristiti gotove funkcije za rad sa serijskim portom.

Za merno-akvizicioni sistem je isprojektovana štampana ploča i napisan osnovni program za mikrokontroler koji ima zadatak da upravlja radom analognog multipleksera i analogno-digitalnog konvertora. Podaci koji se dobiju prilikom digitalizacije se prenose personalnom računaru preko RS232 porta.

Dalji pravci razvoja uređaja su: projektovanje USB drajvera i sprega sa LabView, dodatno digitalno filtriranje signala i promena frekvencije odabiranja.

Page 19: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 18

PRILOG A

Univerzalna serijska magistrala

Osnovna ideja Univerzalne serijske magistrale (Universal Serial Bus – USB) je izmeštanje sporih uređaja iz računara, tačnije izvan njegovog memorijskog i U/I prostora. Komunikacija sa njima se ostvaruje serijski, posredstvom specijalizovanog kontrolera povezanog na PCI magistralu, koji koristi samo jedan vektor prekida i jedan skup memorijskih i U/I adresa. Svi spoljni uređaji se multipleksiraju preko njega, i ne zahtevaju dodatne računarske resurse. Na taj način se na PCI magistrali otavara dodatni prostor za povezivanje brzih periferija koje opravdavaju korišćenje internih računarskih resursa. U periodu od objavljivanja prve USB specifikacije (revizija 1.0, 1996) ovakav koncept je potvrđen u praksi i postao verovatno najperspektivniji način sprezanja brojnih periferija sa računarskim sistemom.

U odnosu na prethodna rešenja koja zamenjuje, USB magistrala je mnogo fleksibilnija. Cena koja se pritom plaća je njena interna složenost, pogotovo u delu programskih rukovaoca niskog nivoa. USB je deljena serijska magistrala, kod koje se većina inteligentnih sprežnih funkcija izvršava na samom računaru (Host computer). Glavni izazov u razvoju serijskih magistrala ovakvog tipa predstavlja povećanje brzine prenosa i propusnosti magistrale. Prvobitno projektovane brzine prenosa od 1.5Mbit/s i 12Mbit/s, unapređene su revizijom 2.0 (april 2000. godine) do nivoa od čak 480Mbit/s.

Osnovne karakteristike USB magistrale su sledeće : • Povezivanje do 127 periferijskih uređaja u višeutičnoj (multidrop) konfiguraciji. • Sinhrona komunikacija prekodeljene dvožične linije, NRZI kodiran

diferencijalni signal, dužina kabla jednog USB segmenta do 5m. • Brzine prenosa 1.5Mbit/s (spori uređaji), 12Mbit/s (uređaji pune brzine) i

480Mbit/s (uređaji visoke brzine). • Distribucija napajanja 5V za uređaje koji troše 100-500mA uz smanjenje utroška

energije u neaktivnom stanju kada se potrošnja smanjuje na oko 500µA. • Automatsko prepoznavanje priključenja nove periferijske jedinice i njen

nesmetan rad bez potrebe za restartom sistema. • Četiri režima komunikacije, u skladu sa prirodom periferijksih uređaja, uz

neophodne mehanizme kontrole grešaka i retransmisije poruka. • Jedan tip konektora i kablova za povezivanje.

Page 20: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 19

A.1. USB arhitektura U okviru USB sistema mogu se uočiti sledće osnovne komponente prikazane na slici A.1.

Slika A.1 Topologija USB magistrale

Na vrhu USB stabla, direktno povezan sa PCI magistralom, nalazi se glavni kontroler (host controller) kao osnovna upravljačka jedinica USB magistrale. To je jedina komponenta sa kojom sistemska programska podrška direktno komunicira, i koja je zadužena za izvršenje brojnih funkcija razmene podataka preko magistrale. Komunikacija sa USB uređajima odvija se na osnovu podataka koji definišu:

• Adresu USB uređaja, • Tip i smer prenosa podataka, • Adresu memorijskog bafera rukovaoca uređaja.

Korenski čvor (root hub) je osnovni spojni element koji obezbeđuje komunikaciono povezivanje glavnog kontrolera sa uređajima, kao i distribuciju napajanja 5V ka njima. Na njega se uređaji (periferijske jedinice) priključuju direktno, ili posredstvom dodatnih čvorova (hub) čime se širi broj priključaka i USB struktura. Svaki čvor ima jedan ulazni priključak, orijentisan ka sloju višem u USB strukturi, i 2-8 izlaznih priključaka namenjenih za povezivanje uređaja ili dodatnih USB čvorova. Osnovna funkcija čvora je realizacija fizičkog prenosa podataka (serijske sprege na magistrali). Dodatne funkcije obuhvataju:

• Konverziju brzine prenosa između sporih uređaja i magistrale, • Dozvolu i zabranu komunikacije preko priključaka, u cilju izolacije uređaja sa različitom

brzinom prenosa povezanih na istom čvoru, • Prepoznavanje priključenja uređaja i detekciju njegovog tipa, tačnije brzine prenosa, • Kontrolu napajanja na svojim priključcima, što podrazumeva uključivanje/isključivanje

napajanja i limitiranje izlazne struje na 500 mA (100mA za sisteme napajane baterijom), • Smanjivanje struje napajanja pojedinačnog uređaja na nivo reda 500µA, ukoliko je isti

neaktivan duže od 3 ms, • Određivanje i postavljanje statusa (stanja) priključka, o čemu se izveštava na upit.

Interna struktura čvora sa dva priključka prikazana je na slici A.2. Čvorni kontroler upravlja izvršenjem prethodno navedenih funkcija. Ponavljač (repeater) regeneriše komunikacioni signal na magistrali, tako što vrši retransmisiju primljene poruke. Komukikacija se obavlja preko

Page 21: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 20

aktivnih (dozvoljenih) priključaka i to u oba smera. Kontrolne poruke upućene datom kontroleru se zadržavaju.

Slika A.2 Interna struktura USB čvora

Periferijski USB uređaji su međusobno vrlo različiti u pogledu obima podataka koje je

potrebno preneti, kao i pri tome prisutnim vremenskim ograničenjima (dozvoljenim kašnjenjima pre svega). Obzirom na deljenu magistralu, USB uređaji ne mogu inicirati prenos podataka, već moraju sačekati upit koji generiše glavni kontroler. USB specifikacijom definisan je standardan način za opisivanje periferijskog uređaja, tj. njegov USB model koji je osnova za povezivanje sa programskim rukovaocima niskog nivoa. Ovaj model zadaje se deskriptorima različitih nivoa, prikazanim na slici A.3.

Deskriptor uređaja čuva pre svega podatke potrebne za komunikaciju sa rukovaocem i operativnim sistemom. Opis se nastavlja definicijom brzine sprege i karakteristikama napajanja, što je u standardu označeno kao konfiguracija uređaja. Deskriptor sprege posveđen je različitim funkcijama (režimima rada) istog periferijskog uređaja. Na primer, CD-ROM uređaj različito izvršava funkcije čitanja podataka, muzike (audio zapis) i slike (video). Konačno, odredišne tačke (u standardu end-point) definišu krajnje podatke o tipovima prenosa, registrima ili memorijskim zonama koje u komunikaciji učestvuju, i sl. Model upotpunjuje deskriptor teksta, kao sprega za ispis određenih poruka krajnjem korisniku, a na raspolaganju je i korisnički (class-specific) deskriptor kao pomoć u rešavanju eventualno nepokrivenih varijanti. Pored podataka specifičnih za nivo opisa, svaki deskriptor sadrži i podatke o skupu sadržanih deskriptora nižeg nivoa, tako da se iz programskog rukovaoca lako pristupa svakom od njih.

Slika A.3 Konfiguraconi model USB uređaja

Page 22: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 21

Prilagođenje različitostima periferijskih uređaja je podržano uvođenjem četiri tipa prenosa:

• Prekidni prenos (interrupt transfer), na osnovu prozivke uređaja na USB magistrali imitira prekid na računaru. Ovakav režim rada namenjen je sporim uređajima, poput tastature ili miša, koji ne postavljaju velike zahtreve pred sprežni sistem. Osnovne karakteristike ovakvog načina prenosa su niska učestalost ponavljanja, skroman obim podataka i ograničena (relativno mala) kašnjenja pri prenosu.

• Masovni prenos (bulk transfer) podrazumeva prenos velikog obima podataka, ali bez vremenskih uslovljenosti u pogledu brzine ili periodičnosti. Tipičan primer uređaja koji rade u ovom režimu je štampač, kome se šalju masovni podaci, ali eventualna kašnjenja u prenosu podataka ne nanose štetu. Zato se paketi podataka mogu slati u momentima kad je magistrala rasterećena, a zadržani dok se ona ne oslobodi.

• Izohroni prenos (isochronous transfer) je orijentisan ka najzahtevnijim periferijama koje zahtevaju prenos podataka velikog obima uz konstantnu periodiku. Tipičan primer su audio/video periferijski uređaji gde i malo kašnjenje direktno utiče na kvalitet ili čak onemogućava uslugu. U toku izohronog prenosa, obe strane (predajna i prijemna) moraju biti sinhronizovane u pogledu brzine i kašnjenja.

• Prenos kontrolnih poruka (control transfer) obuhvata komunikaciju u cilju koordinacije rada, prepoznavanja i inicijalizacije USB uređaja, i sl. Dešava se najčešće po priključenju uređaja na USB magistralu, nije periodičan i predstavlja niz upit/odgovora koje pokreće sistemska programska podrška. Deo saobraćaja na magistrali vezan je za komunikaciju glavnog kontrolera sa čvorovima.

Tip prenosa definiše različite osobine komunikacionog toka: format poruke, veličinu

paketa, smer i redosled prenosa paketa, dozvoljena kašnjenja, pristup magistrali, rukovanje greškama itd.

U samoj razmeni podataka učestvuju programske komponente različitog nivoa (slika A.4). Klijentska programska podrška (Client SW) posredstvom uslužnih funkcija operativnog sistema komunikcira isključivo sa USB sistemskom podrškom, i ne zna mehanizme slanja/prijema poruka preko USB magistrale. USB sistemska podrška, koju čine rukovaoc USB uređaja i rukovaoc glavnog kontrolera, prenosi zahteve do glavnog kontrolera koji započinje njihovo izvršenje. Na strani USB uređaja, potrebno je obezbediti funkcije koje odgovaraju na primljene standardizovane upite.

Slika A.4 Tok USB komunikacije po hijerarhijskim nivoima

Komunikacija se fizički odvija uvek između glavnog kontrolera i adresiranog uređaja.

Logički posmatrano, prenos podataka se dešava između neke odredišne tačke na uređaju, i

Page 23: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 22

memorijskog bafera programskog rukovaoca. Ovakva logička konekcija označena je kao vod (message pipe) i ona se uspostavlja za svaku odredišnu tačku. Karakteristike voda uspostavljene pri njegovom formiranju ostaju nepromenjene u toku njegovog trajanja.Slanje preko voda inicira rukovaoc USB uređaja posredstvom strukture IRP (I/O Request Packet), na osnovu koje rukovaoc glavnog kontrolera formira sekvencu transakcija koje izvršava glavni kontroler. USB rukovaoc sprečava konkurentno slanje više zahteva na jedan vod, pre nego što se tekući zahtev završi. Specifikacijom je predviđena procedura prekida izdatih zahteva usled prekida komunikacije. Transakcija se dalje realizuje razmenom niza paketa, od kojih prvi tzv. predznak (token) označava početak transakcije, a preostali paketi nose podatke ili kontrolne (handshake) informacije. Svaki paket sastoji se od tri polja: identifikatora, informacionog i CRC dela.

Slika A.5 ilustruje prethodno iznete mehanizme i tok komunikacije između učesnika na USB magistrali.

Slika A.5 Organizacija USB komunikacije po vodovima i učesnicima

Rukovanje komunikacijom na USB magistrali zasniva se na kontrolnom periodu u kome

se pokreću sve aktivnosti, a koji se označava kao ram (frame). Za magistrale niske i srednje brzine (1.5 i 12 Mbit/s) ovaj period iznosi 1ms (ram), a za brze magistrale (480 Mbit/s) 125µs (mikroram). Pod kontrolom glavnog USB kontrolera, u datom vremenu prvo se šalje tzv. SOF (Start Of Frame) paket a potom se pokreće jedna ili više transakcija, shodno tipu prenosa i odredišne tačke. Izvršenje izohronog i prekidnog prenosa se može konfigurisati na svaki N-ti ram, čime se otvara prostor za ostale uređaje na magistrali. Broj uređaja koji se mogu povezati na magistralu određen je propusnim opsegom magistrale. Kada se on popuni, priključenje novih uređaja se odbija.

A.2. Fizičko okruženje USB magistrale

USB specifikacija propisuje minimum mehaničkih i električnih zahteva koje svako kompatibilno rešenje mora zadovoljiti. Na taj način obezbeđeno je međusobno uklapanje komponenti velikog broja različitih proizvođača, pa samim tim i široka primenjivost univerzalne serijske magistrale.

Page 24: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 23

Mehanički deo specifikacije definiše karakteristike konektora tipa A i tipa B, lociranih na čvoru i USB uređaju. Različitost ovih konektora onemogućava pogrešno povezivanje uređaja i čvora usled obrtanja kabela.

USB kabel ima četiri žile, dve za napajanje i dve signalne (za komunikaciju). Signalne žile su upredene u paricu (slika A.6). Standardan USB kabel je oklopljen, dug do 5m i može se koristiti za sve brzine prenosa. Specifikacijom su propisane njegova mehaničke i električne osobine, poput njegove kompozicije, izbora materijala, promera žila i kabla, kapacitivnosti i sl. Spori uređaji se mogu povezati jednostavnijim kabelom koji nije oklopljen i ne mora imati signalne žile upredene u paricu. Ovo je značajno za uređaje poput miša ili tastature, koji moraju imati što mekši i fleksibilniji kabel.

Slika A.6 USB kabel

Postizanje velikih brzina prenosa preko ovako jednostavnog kabela zahteva primenu

sinhrone komunikacije, diferencijalnog serijskog signala i tehnike NRZI kodiranja. NRZI (Non Return to Zero - Inverted) je poznata metoda za utiskivanje takta u signal koji

se prenosi, te stoga nije potreban prenos komunikacionog takta preko posebnih žila. U NRZI nizu, promenom NRZI signala se kodira vrednost 0 bita izvorne poruke. Vrednost 1 u poruci ne izaziva promenu NRZI izlaznog signala. Pri tome se između dva uzastopna bita poruke električni signal ne vraća na 0. Slika A.7 ilustruje postupak NRZI kodiranja serijskih podataka.

Slika A.7 Postupak NRZI kodiranja

Promene NRZI signala dozvoljavaju ekstrakciju takta na prijemnoj strani. Ukoliko se u

originalnoj poruci pojavi niz jedinica (1111...11) , promene NRZI signala izostaju. Stoga je potrebna korektivna logika, koja se zasniva na brojanju uzastopnih jedinica u izvornom nizu. Posle 6 uzastopnih jedinica se ubacuje 0, čime se obezbeđuje promena NRZI signala posle 6 taktova bez promene. Ovaj postupak se označava kao popunjavanje bita (bit stuffing), i na prijemnoj strani zahteva inverzni postupak detekcije i odstranjivanja umetnute 0 (slika A.8).

Slika A.8 Postupak popunjavanja bita

Pobudna kola za serijsko povezivanje USB komponenti formiraju diferencijalni serijski

signal, koji je prilagođen visokim brzinama prenosa na magistrali. Prenos USB serijskog signala u jednom pravcu prikazan je na slici A.9. Slanje vrši diferencijalni predajnik sačinjen od dva CMOS bafera, upravljana kontrolnim signalom dozvole izlaza (OE - Output Enable). Zbog deljenog prenosnog puta na magistrali, neaktivni predajnici se postavljaju u stanje visoke

Page 25: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 24

impedanse. Dvosmerno slanje podataka zahteva na obe strane USB segmenta uparene komponente oba tipa (predajnik i prijemnik).

Slika A.9 Blok dijagram prenosnog puta USB magistrale

Dodatna funkcija sprežnog USB podsistema je vezana za prepoznavanje priključenja uređaja na čvor i detekcija njegove brzine. Stoga se spori i brzi uređaji povezuju na magistralu na način prikazan slikom A.10.

Slika A.10 Priključivanje sporih i brzih uređeja na USB čvor

Na USB čvoru su komunikacioni signali D+ i D- preko otpornika Rpd povezani na masu,

tako da su oba na niskom nivou kad USB uređaj nije priključen. Na strani USB uređaja, otpornikom Rpu jedan od signala D+/D- povezan je na napon napajanja Vcc. Priključenjem uređaja na čvor, formira se razdelnik napona Rpd/Rpu, te se naponski nivo reda 90% Vcc pojavljuje na ulazu USB čvora. Na taj način, kontroler čvora može da prepozna priključeni uređaj, tačnije da pouzdano zna kojom brzinom radi. USB specifikacijom propisani su tačni uslovi pod kojim se promena signala registruje kao priključenje ili odspajanje uređaja. U osnovi pad napona ispod 0.8V označava isključenje, a porast napona iznad 2.0V ukazuje na priključenje USB uređaja. U oba slučaja, signal mora biti stabilan najmanje 2.5 µs.

Detekcija ovih uslova zahteva dodatne jednostruke prijemnike (single-ended receivers), čiji je zadatak kondicioniranje D+/D- signala sa magistrale, u cilju njihovog sprovođenja do kontrolera USB čvora. Stoga kompletna sprežna kola USB čvora i USB uređaja, i način hjihovog međusobnog povezivanja, izgledaju kao na slici A.11.

Page 26: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 25

Slika A.11 Prikaz sprege između USB čvora i USB uređaja

Page 27: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 26

PRILOG B

Asinhrona serijska komunikacija

Još jedan tip komunikacije koji podržava isprojektovana merno-akviziciona kartica je

serijska komunikacija po RS232 standardu. Tip komunikacije je asinhroni, pa će u kratkim crtama biti objašnjen asinroni prenos podataka.

Asinhroni prenos podataka znači da su prenos i prijem podataka nezavisni jedno od drugog, tj. da je omogućen istovremen prenos i prijem podataka. Asinhroni oblik prenosa podataka se prvenstveno koristi onda kada se podaci koje treba preneti generišu u slučajnim vremenskim intervalima - npr. kada korisnik na terminalu komunicira sa računarom. Svaki prenešeni podatak je uokviren između dodatnog startnog bita i jednog ili više stop bita. Na slici B.1 je prikazana ilustracija asinhronog prenosa.

Slika B.1 Ilustracija asinhronog prenosa podataka

Osnovna PC arhitektura podržava postojanje do 4 komunikaciona kanala. Uobičajeno je da standardna PC konfiguracija poseduje dva komunikaciona kanala (COM1 i COM2). Serijska komunikacija kod PC XT se bazira na upotrebi Intelovog UART (Universal Asynchronous Receiver Transmitter) kola 8250 i 16450 ili NS16550AN kod AT. Oba ova kola su u osnovi ista, s tim što je 16450 poboljšana verzija 8250 kod koga su uočene i neke greške. Ovim kolima se realizuje serijska sprega EIA-232. Svakom kanalu dodeljeno je po jedno UART kolo. U U/I adresnom prostoru, komunikacioni kanali su mapirani na sledećim adresama:

Tabela B.1 Adresni prostor komunikacionih kanala na PC XT

Page 28: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 27

UART kola su povezana na prekidne linije PIC kontrolera i to:

Tabela B.2 Zauzeće prekida po komunikacionom kanalu

Vidi se da više komunikacionih kanala može deliti isti prekid. Ako se želi jednoznačno

dodeljivanje prekida, UART kolo se može povezati na neku od raspoloživih slobodnih prekidnih linija.

Među različitim serijskim spregama, dve najpopularnije su RS-232C i RS-422. Oni definišu nivoe električnih signala i značenje različitih električnih vodova. RS-232 (Recommend Standard 232) sprega, predstavlja univerzalnu serijsku spregu. Može se koristiti za asinhronu (najčešći slučaj) i sinhronu serijsku komunikaciju. Koristi se za povezivanje dva računara, računara i eksternih uređaja (modema, miša, itd.), kao i za povezivanje računara sa mikrokontrolerima koji upravljaju nekim procesom.

RS-232 spregu karakteriše relativno mala propusnost (256 kbps) i mala moguća dužina linija za povezivanje (15 m). Logička jedinica je predstavljena naponskim nivoom signala od +3 do +25 V, dok je logička nula predstavljena nivoom od -3 do -25 V. Budući da većina digitalnih uređaja zahtevaju TTL/CMOS logičke nivoe (od 0 do 5 V), najčešće je neophodno koristiti RS-232 konvertore, kako bi se prilagodili naponski nivoi ovim zahtevima. Mrtva zona između -3 i +3 V ima za svrhu absorpciju šumova i smetnji.

Bitna osobina RS-232 sprege je da mora postojati linija zajedničke mase između uređaja koji se povezuju. Postoje dve vrste serijskih (D-type RS-232) konektora: 9-to pinski i 25-to pinski. Konektori su međusobno kompatibilni i postoje adapteri sa 9-to na 25-to pinski i obrnuto (kod 25-to pinskog konektora se koriste 22 pina, te on omogućava sinhronu komunikaciju i prenos dodatnih. upravljačkih signala). Za povezivanje se koristi takozvani nul-modem kabel koji može biti: 9-9, 9-25 i 25-25 u zavisnosti od tipa konektora.

Page 29: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 28

PRILOG C

U ovom prilogu se nalazi kompletna električna šema isprojektovanog uređaja sa

proračunatim vrednostima komponenti. Na prvoj slici se nalazi električna šema digitalnog dela elektronike sa ESD zaštitama na

kritičnim delovima elektronike. Na drugoj slici se nalazi analogni deo elektronike, tj. analogni multiplekser, kolo za prilagođavanje, A/D konvertor, referentno napajanje i galvanska izolacija između analognog i digitalnog dela elektronike. Na trećoj slici se nalaze anti-aliasing filtri sa zaštitama od prevelikog ulaznog napona i na četvrtoj slici se nalazi šema napajanja uređaja sa kondenzatorima za rasprezanje.

Page 30: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 29

Page 31: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 30

Page 32: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 31

Page 33: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 32

Page 34: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 33

Literatura

[1] Jorgovanović N., Upravljanje funkcionalnom električnom stimulacijom za

neurorehabilitaciju pokreta, Doktorska disertacija, Novi Sad 2003 [2] High-SpeedAmplifiers Data Book, Texas Instruments [3] Popović D., M. Popović, Biomedicinska instrumentacija i merenja, Nauka, Beograd 1997. [4] Živković D., M. Popović, Impulsna i digitalna elektronika, Nauka, Beograd

1992. [5] Brodić T., Analogna integrirana elektronika, Svjetlost, Sarajevo 1986. [6] Popović M., Digitalna obrada signala, Akademska misao, Beograd 2003. [7] Kovačević V., Logičko projektovanje računarskih sistema I, Novi Sad 2001. [8] Universal Serial Bus Specification, Intel, Compaq, Microsoft, NEC 1998. [9] AT89C5131, Data sheet, Atmel [10] LTC1286, Data sheet, Linear Technology [11] REF02, Data sheet, Analog Devices [12] TL082, Data sheet, Texas Instruments [13] HCPL0201, Data sheet, Agilent Technologies [14] MAX3221E, Data sheet, MAXIM [15] 74LCX14, Data sheet, ST Microelectronics [16] 74HC132, Data sheet, ST Microelectronics

Page 35: Vojin Ilic - Visekanalni USB Merno-Akvizicioni Sistem

Diplomski rad Vojin Ilić

Fakultet Tehničkih Nauka 34

Biografija

Vojin Ilić je rođen u Kragujevcu, 7. novembra 1980.

godine. Osnovnu školu “Svetozar Marković” i Prvu Tehničku školu “Kragujevac”, smer za računarstvo, završio je u Kragujevcu. Fakultet tehničkih nauka u Novom Sadu, odsek elektrotehnika, smer računarstvo i automatika upisao je 1999. godine. Školske 2002/2003 godine se upisao na usmerenje za Automatiku i upravljanje sistemima. Položio je sve ispite predviđene planom i programom.