Opšte


Pred novim sistem-integratorom često stoji dilema: da li za svoj sistem za akviziciju podataka, merenje i procesno upravljanje treba sam da napiše softver ili da upotrebi softverski paket koji ima gotova rešenja i koji  nudi korisniku jednostavno povezivanje blokova u programske dijagrame toka.

Ako korisnik želi da napiše svoj softver za ED-ovu opremu na raspolaganju su mu softverski drajveri za C, PASCAL, BASIC ili LabView. Za više informacija pogledajte stranu  ED-Link, LabWindows/CVI  i LabView.

Kada korisnik ne želi da piše softver, na raspolaganju su mu softverski paketi višeg nivoa čiji je glavi predstavnik  Lab VIEW.

ED ima nekoliko korisnika koji rade pod QNX OS. Nažalost, ovaj odličan paket je prilično skup tako da se ograničeno koristi. Microsoft Windows CE V6. jos nije u upotrebi u ED-u, ali je oprema kompatibilna sa ovim paketom i moguće je da uskoro učinimo prve korake. Softverski alati za Linux još nisu raspoloživi jer ovaj OS još nije tačno definisan i zvanično verifikovan od strane nekog tela za standarde. Međutim, kao za CE, tako i za Linux se očekuju bolji dani. Više podataka o raspoloživom softveru naći će te na sledećim stranama:

 

LabVIEW National Instruments 

LabWindows/CVI National Instruments 

ED-Link Electronic Design

 

 

Softverski paketi za upotrebu sa ED hardverskim komponentama, mogu prema vrsti i nameni da se podele na tri celine, koje se često međusobno nadopunjuju:

 

   Programski alati i kompajleri za razvoj aplikacija,
   Biblioteke funkcionalnih potrpograma i rutina,
   Kompletni, menijem upravljani akviziciono upravljčki paketi

Programski alati za razvoj aplikacija, kao i biblioteke funkcionalnih podprograma omogućavaju korisniku da napiše sopstvene aplikacione programe. Zato oni uglavnom sadrže "pogonske" potprograme za rad sa hardverom, tzv. "drajvere", koji čine spregu sa ulazno-izlaznim kolima. Ovi programski paketi koje nazivamo ED-Link olakšavaju pisanje sopstvenih programa u višim programskim jezicima kao što su C/C++, PASCAL, BASIC i dr. Ovaj način programiranja je fleksibilan i koristan je za specifične primene, ali programeru uzimaju dosta vremena.

Kompletni, "menijem upravljani" aplikacioni paketi projektovani su da obezbede gotovo trenutnu upotrebu sistema za akviziciju, vrlo često bez ikakvog programiranja, uz mogućnost modifikacije od strane korisnika. Ovakvi programski paketi su veoma kompaktni, ali manje fleksibilni i prilagodljivi u poređenju sa drugim rešenjima.

Pravi izbor je kombinacija ova dva rešenja, gde se svi standardni, a često i veoma složeni zahtevi realizuju kreiranjem funkcionalnih dijagrama, a tek specifični i izuzetni zahtevi traže dodatno programiranje. Prirodno, ovakvi paketi moraju imati mogućnost dodavanja korisničkih podprograma, koji se pišu u nekom višem jeziku, kao što su C, PASCAL, BASIC.
 

Performanse


Za rad većine sistema za prikupljanje i obradu podataka i upravljanje od najveće važnosti je vremenski precizno izvršavanje operacija čitanja i upisa perifernih kola. Kad je brzina rada kritična koriste se najčešće tri vrste programske kontrole izvršenja operacija: prozivanje (polling), rad sa prekidima (interaptima) i upotreba DMA, direktnog pristupanja memoriji.

Svi "real-time" softverski paketi i alati moraju imati posebno razvijenu podršku za ovakav vid akvizicije i mogućnost pravovremene reakcije na spoljašnje događaje. Zbog toga se u "real-time" programima često definiše vreme izvršavanja jednog prolaza programske petlje, tj. "sken" vreme. Ovo je garantovano vreme za koje će se pristupiti svim delovima programske petlje, izvršiti potrebna akvizicija, zatim analiza prikupljenih podataka, eventualna razmena informacija sa centralnim računarskim sistemom i odgovarajuće upravljačko dejstvo na izlazne module i izvršne organe, u zavisnosti od detektovanih uslova.
 

Raspodela poslova


Svi upravljački "real-time" sistemi treba da podržavaju interni "multitasking", raspodelu zadataka na pojedine programske celine, koje se izvršavaju relativno nezavisno, pod kontrolom centralnog operativnog sistema, ili "real-time" kernela. Takvi odvojeni "taskovi" treba da opslužuju određene srodne funkcionalne zahteve.

Na primer, jedan task može biti zadužen za akviziciju podataka sa hardverskih modula i prosleđivanje upravljačkih dejstava na izlazne hardverske module. Drugi task odgovaran je za opsluživanje zahteva operatora i njegovo informisanje pomoću video monitora, zvučnog signala i sl. Sledeći task može da definiše komunikacioni kanal sa drugim kontrolerima i centralnim računarom. Četvrti task može da predstavlja samu obradu prikupljenih signala, onu upravljčku logiku i srž zbog koje se akvizicioni sistem i upotrebljava.

Ovakvi taskovi očigledno imaju različitu važnost i zbog toga je potrebno da odgovarajući softver omogući dodeljivanje prioriteta pojedinim taskovima. U "real-time" sistemu primarnu važnost imaju taskovi akvizicije i upravljanja, a svi ostali treba da sačekaju njihovo izvršavanje.

Vreme preklapanja između taskova, tzv. "context-switch time", na PC Kontrolerima može da bude manje od 80 ms. Takođe, vreme izvšenja programske petlje, vreme jednog "skena", zavisno od broja merenja i ostalih zadataka može da se spusti ispod 5 ms. Mogućnosti koje PC kontroleri imaju u pogledu prezentacije informacija i jednostavnost upotrebe od strane korisnika, danas su jedinstven i neprevaziđen adut, koji uz odgovarajući softver pružaju korisniku visoke performanse i kvalitet, uz vrlo nisku cenu.

ED-ove hardverske komponente su u svojim korisničkim upustvima vrlo dobro dokumentovane sa svakom adresom i do nivoa samih registara tako da korisnik koji ima formirana softverska znanja i iskustva sa pojedinim OS na vrlo lak način može da napiše drajvere optimizovane za svoju specifičnu primenu.
 

 

  © 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