|
U čemu je razlika između POLLING-a i EVENT-DRIVEN načina rada?
Polling
je jedan od metoda čitanja ili upisivanja podataka u akvizicioni
sistem. Vreme između dva prozvana čitanja se raspoređuje operativnim
sistemom na pr. Windows-ima.
Zbog toga ovo vreme nije deterministički, jednoznačno određeno, nego
zavisi od mnogo faktora u sistemu, kao što su brzina računara,
operativni sistem, programski jezik i optimizovanost vašeg koda. Rad u
pozadini, kao što su DMA transver podataka ili interaptom generisane
aktivnosti, je zadatak koji se obavlja pod kontrolom akvizicionog
hardvera, koji obaveštava aplikaciju kada je operacija kompletirana.
Vreme između dva čitanja koja se obavljaju u pozadini, kontrolisano je akvizicionim hardverom i nezavisno je od Windows tajminga. Tokom prenosa podataka koji se u pozadini
obavlja, akvizicioni hardver prekida CPU, a drajveri opslužuju te
prekide i prebacuj*u podatke u memorijski prostor aplikacije. Kada je
zahtevana operacija u pozadini završena, drajver prosleđuje Windows poruku ili događaj aplikaciji, koja može da odgovori na
taj događaj i da manipuliše podacima.
Šta je greška kvantizacije i u kakvoj je ona zavisnosti sa odnosom signal- šum?
Greška kvantizacije je razlika između analognog signala i najbliže
raspoložive digitalne vrednosti za svaki uzorak iz A/D konvertora. Greška
kvantizacije takođe unosi šum u semplovani signal koji nazivamo šumom
kvantizacije. Što je veća rezolucija A/D konvertora, to je manja greška
i šum kvantizacije. Relacija između rezolucije (u bitovima) i šuma
kvantizacije, za idealni A/D konvertor, može da se iskaže kao odnos
signala prema šumu (S/N) = -20*log (1/2^n),
gde n predstavlja rezoluciju
A/D konvertora izraženu u bitovima.
Zašto treba da linearizujem signale sa termoparova i kako to da uradim?
Termoparovi su
najčešće primenjeni senzori za merenje temperature. Robusni i
jeftini, oni su idealni u aplikacijama u industriji i u nauci. Sastoje
se od dve žice od različitih metala, spojene na jednom kraju. Termopar
generiše napon, koji zavisi od temperature spoja metala (Seebeck-ov
efekat). Za različite temperaturne opsege, na raspolaganju su različite
vrste termoparova. Međutim, problem sa termoparovima je što napon koji
oni generišu nije linearan u odnosu na temperaturu. To je razlog što
se merenja pomoću termoparova moraju linearizovati.
ZA i PROTIV primene vizuelnog softvera umesto pisanja sopstvenog koda?
Uveliko
su na raspolaganju gotovi aplikativni paketi koji obavljaju specifične
zadatke, kao što je simulacija osciloskopa, strip-chart
registracija i sl. Takođe, na raspolaganju su i brojni softverski
paketi koji omogućavaju da dizajnirate sopstvenu aplikaciju uz pomoć
grafičkih alata. Većina tih paketa, kao što su na primer Visual
Designer
ili LabVIEW, omogućavaju da lako dizajnirate korisnički interfejs.
Mnogo su fleksibilniji nego namenski paketi koji obavljaju specifične
zadatke, jer vam omogućavaju da dizajnirate široku lepezu projekata za
vrlo kratko vreme.
Može li se REAL-TIME aplikacija izvršavati u WINDOWS okruženju?
Rad u realnom vremenu je relativan
pojam i zavisi od same aplikacije i korisničkih zahteva. U nekim
aplikacijama, korisnik smatra da je vreme odziva od 100 ms realno
vreme, dok u drugim primenama vreme odziva od nekoliko sekundi
zadovoljava zahteve rada u realnom vremenu. Uopšteno, Windows
nije baš odgovarajuće okruženje za determinističke aplikacije
u realnom vremenu, obzirom da Windows
okruženje nema sposobnost determinističkog tajminga, odnosno
striktno i precizno kontrolisanog odmeravanja realnog vremena,
nezavisno od rada i aktivnosti operativnog sistema. Windows
je operativni sistem opšte
namene, u kojem se mnogi zadaci i aktivnosti odvijaju u pozadini,
bez neposredne kontrole i znanja korisnika šta se događa i na
koji način se određena transakcija izvodi. Ove aktivnosti
uzimaju određen broj procesorskih ciklusa centralnog procesora
(CPU) i generišu zahteve za prekid, tako da na taj način dele
resurse računara sa korisničkom aplikacijom.
Koji programski jezik ili paket treba koristiti u akvizicionom sistemu?
Na
ovo pitanje se najbolje može odgovoriti ako se uzmu u obzir specifične
okolnosti, kao što su aktuelni zahtevi, budući ciljevi, programersko
iskustvo i kvalitet podloga datog projekta. Aplikacija u akviziciji
podataka obično određuje tip hardver, koji utiče na izbor softvera a
ovaj na izbor operativnog sistema. Pre svega traba da se utvrdi da li su
izabrani hardver i programsko okruženje potpuno kompatibilni i da li
mogu da daju potrebne rezultate.
Zašto je ActiveX važan u aplikacijama akvizicije podataka?
Softverska
industrija nas brzo pomera u smeru arhitekture bazirane na instant
komponentama. ActiveX je skup pravila koja nam objašnjavaju kako različite
aplikacije ili softverske komponente treba da međudeluju i dele
informacije u Windows
okruženju.
Šta je to DMA i zašto se koristi?
DMA
ili direktni memorijski pristup (Direct
Memory Access), je tehnika koja se koristi za povećanje propusne moći
sistema (throughput) u
ISA računarima. DMA daje mogućnost za smeštanje podataka
merenja direktno u memoriju, bez intervencije CPU-a, pomoću tzv.
“krađe ciklusa” procesora (cycle
stealing).
Dok je DMA u toku, akvizicioni modul komunicira direktno sa magistralom
podataka, koristeći specijalni set hardverskih handshake signala.
|
Šta je BURST mod kod DAQ sistema?
Burst
Mode (u daljem
tekstu Barst) je tehnika
semplovanja koja koristi veoma brzo skeniranje selektovanih kanala sa
specificiranim intervalom. Kada koristite
Windows okruženje, ovaj način rada je često neophodan, posebno kada se
zahtevaju brzine semplovanja od 100.000 ili više uzoraka u sekundi, ili ako
se zahteva procesiranje podataka. Brzina semplovanja u barst modu je precizna, pošto je barst (grupa određenog broja podataka, uzeta u jednom prolazu) uvek
sinhron.
Koja bazna adresa treba da se postavi na DAQ sistemu?
Sve
ED-ove kartice za akviziciju podataka ili analogni i digitalni
moduli za PC kontrolere se setuju u I/O prostoru ili memorijskoj
mapi. Ove principe adresiranja koriste svi proizvođači DAQ
sistema.
Kako da postavim baznu adresu i kako da konfigurišem Config.sys?
Da bi svi ED-ovi memorijski mapirani sistemi za akviziciju podataka ispravno radili, potrebno je
da u memorijskom
menadžeru (EMM386) zabranite korišćenje dela memorije odnosno
da ovaj memorijski prostor rezervišete za sistem za akviziciju
koji želite da instalirate u vaš PC ili u industrijski PC
kontroler. To se radi tako što se u
fajlu CONFIG.SYS, memorijskom menadžeru pomoću njegove X opcije,
"kaže"
koji deo memorije ne sme da koristi. Znači, prve dve linije u
fajlu CONFIG.SYS treba da glase:
Zašto moj sistem za akviziciju pokazuje više šuma nego digitalni multimetar?
Digitalni voltmetar koristi integrirajući ili
usrednjavajući metod konverzije, dok većina A/D modula uzima
jedan uzorak u jednom trenutku merenja. Digitalni voltmetar usrednjava naponska očitavanja tokom određenog vremenskog
intervala. Pošto se veći deo šuma usrednji tokom vremena,
usrednjavanje čini DMM vrlo imunim na visokofrekventni šum. Većina
A/D ploča uzima naponsko očitavanje u trenutku kada je A/D modul
trigerovan. Ova dva metoda mogu dati isto naponsko očitavanje,
ali i vrlo različito, zavisno od trenutka kada je A/D modul
trigerovan i nivoa šuma koji je u tom trenutku prisutan.
Instalirao sam DAQ modul u PC ali se on ne odaziva. Šta nije u redu?
Jedan
od mogućih problema je da bazna adresa modula nije korektna.
Treba proveriti da li su svi prekidači na modulu postavljeni
pravilno i da li program prijavljuje istu baznu adresu. Ako je
bazna adresa postavljena korektno, treba proveriti da ni jedan
drugi modul ili uređaj u računaru ne koristi bilo koju I/O
lokaciju koja počinje sa specificiranom baznom adresom.
|
Da li trebaju posebni drajveri pri prelazu sa Windows 3.1 na Windows 95 ili NT ? Trebaju! Vaša 16-bitna Windows 3.1 aplikacija za akviziciju podataka uspešno će raditi u Windows 95, ali ne i u Windows NT okruženju, pošto Windows NT ne dopušta direktan pristup hardverskim I/O portovima ako takve koristite. Da bi radila pod Windows NT-om, aplikacija zahteva drajvere u kernel modu; vaša aplikacija mora da bude modifikovana da bi komunicirala sa takvim drajverima. Ako želite da modifikujete 16-bitnu aplikaciju u Windows 95 ili NT okruženje i da koristite 32-bitne kompajlere, kao što su Visual C, Visual C++ ili Visal Basic 5.0, potrebni su vam novi drajveri sa 32-bitnim DLL-ovima. Ovo je potrebno zbog toga što 32-bitni kompajleri nisu kompatibilni unazad, sa 16-bitnim kodom, i ne mogu praviti pozive ka 16-bitnim DLL-ovima. Za ovu svrhu preporučujemo ED-Link, 32-bitni drajver za popularne jezike.
Da li moju aplikaciju treba da prebacim u NT ili u Win98. U čemu je razlika?
Većina
proizvođača opreme za akviziciju podataka podržava i Windows
95/98 i NT a
očekujemo i Windows 2000.
Međutim, na raspolaganju je mnogo više softverskih drajvera za Windows 95
nego za
NT. Iz iskustva znamo da je Windows NT
mnogo stabilnije okruženje nego Windows
95, ali ne mora da znači da će vaša aplikacija akvizicije
podataka bolje raditi pod NT-om.
Ako ste "stari" korisnik i ako ste vašu aplikaciju započeli
od DOS-a ili Windows 3.1
okruženja, ipak je nešto bolje da pređete na Windows 95/98,
pošto bi prelazak na NT zahtevao više modifikacija u vašoj aplikaciji.
Šta je ALIASING greška? Može li se ona pouzdano detektovati?
Pojam
“alias“
odnosi se na lažnu niskofrekventnu komponentu, koja se pojavljuje
u semplovanim podacima koji su prikupljeni sa presporom brzinom
semplovanja. Aliasing
greška se javlja kada su neke frekventne komponente signala više
od Nyquist-ove
frekvencije (Nyquist-ova
teorija ustanovljava da frekvencija semplovanja mora biti bar dva
puta viša od najviše frekventne komponente signala), odnosno od
jedne polovine brzine semplovanja. Na primer, ako prikupljate
podatke sa osam kanala brzinom od 100 Ksempla/sekundi, brzina
uzorkovanja za jedan kanal iznosi 100 Ksempla/sekundi / 8, a to je
12.5 Ksempla/sekundi po kanalu. U tom slučaju, bilo koja
komponenta signala sa frekvencijom iznad 6.25 KHz, izazvaće aliasing
grešku. Aliasing greška
se teško detektuje i najčešće ju je nemoguće otkloniti
softverskim putem.
U čemu je razlika između maksimalne brzine semplovanja i propusnog opsega?
Važno
u primeni sistemima za akviziciju podataka je da korisnik uoči
razliku između maksimalne brzine semplovanja i propusnog opsega.
Maksimalna brzina semplovanja predstavlja “neto“
prousnu moć A/D konvertora, nakon što je uzet u obzir svaki
tajming procesa akvizicije podataka. Brzina sistema se može izračunati
ako se saberu vremena uključivanja multipleksera, vreme sample-and-hold
kola, vreme A/D konverzije, bilo koji digitalni handshaking (ciklus zahteva za DMA i sl.), kao i sva relevantna
vremena izvršenja softvera. Ta vremena se sabiraju i prave
"bruto" propusnu moć sistema.
|
Koje su granice COMMON MODE napona i kako on utiče na DAQ sistem? Common Mode napon (Common Mode Voltage ili CMV) je napon koji se pojavljuje između ulaznih priključaka PC akvizicione kartice i njenog uzemljenja. On predstavlja napon koji se javlja istovremeno na oba ulazna terminala A/D modula. CMV ograničava svaki računarski baziran sistem za akviziciju podataka u pogledu ukupnog ulaznog napona koji može da se meri. Većina A/D modula ne može da meri signale iznad ±10 do ±13 V, jer se ulazni pojačavači na akvizicionom modulu obično napajaju naponom od ±12 do ±15 V. Bilo koji merni signal koji se nalazi unutar dva volta u odnosu na napon napajanja, dovešće do zasićenja pojačavača i prouzrokovaće znatne greške u merenju. To znači da modul koja se napaja sa ±12 V i koja ima maksimalni signalni ulaz od ±10 V, u single- ended ulaznoj konfiguraciji, u kojoj je signal referisan u odnosu na masu, ne sme imati na ulazu ukupni signal veći od ±10 V.
Koji je najefikasniji način da se reši konflikt DAQ sistema u PC-u? Kada je akviziciona kartica u konfliktu sa drugim karticama u PC-u (kartice za periferale i sl.), tipični simptomi su blokiranje PC-a, greške inicijalizacije, a ponekad i pogrešni rezultati. Svaka kartica u PC-u mora da ima jedinstvenu baznu adresu, lični IRQ i DMA kanal. Plug&Play BIOS Windows-a 95 je dizajniran da alocira i sortira te resurse automatski, eliminišući na taj način moguće konflikte. Međutim Plug&Play procedura ponekad ne uspeva da detektuje Plug-In module – posebno ISA-bas module, tako da se ponekad mogu javiti konflikti. Najbrži način da se ustanovi da li je vaša akviziciona kartica u konfliktu sa nekim drugim Plug-In modulom u PC-u, je da privremeno izvadite module (npr. mrežnu, zvučnu ili modemsku karticu) jedan po jedan, sve dok se konflikt ne izgubi odnosno sistem ne proradi. Tada, koristeći device manager, možete pregledati i dokumentovati resurse koje koristi svaki od modula i utvrditi koje od ploča se pozivaju na iste resurse. Da biste ispravili konflikt, moraćete modifikovati adresu na jednom modula od dva koja su u konfliktu.
Uspešna aplikacija na starom računaru ne radi na novom. Šta da uradim? Problem ne potiče od konfiguracije ili konflikata u baznoj adresi, memoriji, IRQ, ili DMA; on je u izvornom kodu vaše aplikacije. Ponekad pojedini delovi koda mogu proizvesti različite efekte na računarima koji rade različitim brzinama – posebno ako taj deo koda komunicira sa periferijama i koristi metod polling-a. Pošto je polling zavisan od brzine CPU-a, greška se može javiti ako je računar brži od periferija sa kojima komunicira. Bilo bi dobro da se prilikom programiranja aplikacije uvek proveri handshaking softvera i hardvera. Ovo može da uspori programera ali će napraviti aplikaciju robusnijom i lakše nadgradivom. |
|
|
© 1982 -
Electronic Design Makenzijeva bb-Pejton, Beograd |
Tel: +381 11 308 50 30 Fax: +381 11 308 50 31 |
Tel: 011 2 450 480 Tel: 011 308 74 59 |
www.ed.rs ed@ptt.rs |