|
VISUAL DESIGNER 4.0
Kada govorimo o projektovanju sistema za akviziciju podataka (Data Acquisition) podrazumeva
se traženje praktičnog i optimalnog rešenja kako u oblasti hardvera tako i u oblasti softvera.
Većina
proizvođača akvizicionog harvera nudi sopstvena programska rešenja
za prikupljanje, analizu i vizuelizaciju podataka kao i simulaciju,
kontrolu i procesno upravljanje na osnovu prikupljenih podataka.
Strategija ljudi koji se bave ovim poslom je pre svega da se pouzdano,
fleksibilno i relativno brzo dođe do kompletnog programskog rešenja
za interni multitasking, od prikupljanja podataka sa akvizicionog hardvera
do njihove obrade, vizuelnog predstavljanja i eventualnog prosleđivanja
na periferiske module.
|
 |
Grubo rečeno na raspolaganju je više programerskih rešenja:
• Na osnovu drajvera za ponuđeni hardver, koje isporučuju
proizvođači i to za većinu poznatih programskih jezika kao
što su C/C++; Visual Basic itd. na platformi WINDOWS 9xx/NT ili za druge
operativne sisteme napr. UNIX, moguće je na osnovu programerskog
znanja kreirati ciljnu aplikaciju
• Sledeća mogućnost je korišćenje akvizicionih
programskih ''paketa'' koji u sebi sadrže drajvere za ponuđeni
hardver ali i veliki broj funkcionalnih biblioteka pre svega za
monitoring, obradu i kontrolu. Time programeri uobičajenim načinom
pisanja komandi-naredbi, povezuju u funkcionalnu celinu već napisane
izvršne blokove da bi se na kraju izvršilo klasično kompajliranje.
Ovim je svakako posao izuzetno olakšan jer je praktično jako teško
napisati programski kod nekih izvršnih funkcija, uzmimo primer pisanja
FFT transformacije ili PID regulatora. Jedan od "paketa" ovakve
koncepcije je na primer LabWindows/CVI od National Instrumentsa.
• Poslednjih godina u ovoj oblasti se sve više nameće standard
grafičkog-blokovskog programiranja. Ovakvo programsko rešenje je
okrenuto velikom broju stručnjaka koji nemaju nikakvo ili malo
iskustvo u programiranju i korišćenju programskih jezika.
Filozofija ovakvog principa je sjajna, koristeći gotove module
funkcionalne blokove kao na primer za analizu (DSP, statistika, histogram,
RMS, Peak ...); prezentaciju (barovi, plot, prekidači ...) ili
hardverski pristup (A/D, D/A, serijska komunikacija, DIO), korisnik
jednostavnim pozivanjem i grafičkim povezivanjem blokova kreira
krajnju aplikacionu celinu.
Neki od ovakvih softverskih paketa su LabVIEW od National Instrumenta;
LabtechControl (LT); Visual Designer (Inteligent Instrum.); InTouch (Advantech);
GENESIS (Iconics) itd.
VISUAL
DESIGNER 4.0
Visual
Designer je proizvod firmi Inteligent Instrument i Burr-Brown.Verzija 4.0
ima 32-bitnu arhitekturu i namenjena je za PC platformu zasnovanu na
WINDOWS 9xx/NT radnom okruženju.
Na slici 1. prikazana je uprošcena struktura grafickog programiranje u
Visual Designer-u koja se sastoji iz dve faze:
1. Kreiranje radnog blok dijagrama (FlowGram)
2. Kreiranje Run-time aplikacije (FlowCode)
|

|
|
Slika
1. Visual Designer-sistem dijagram |
FLOWGRAM
DIJAGRAM
FlowGram
dijagram je osnovni radni modul i možemo ga uporediti sa konceptom
klasicnog seta programskih instrukcija.
Rad u njemu se sastoji iz nekoliko faza:
• selekcija i postavljanje funkcionalnog bloka u dijagram
• medusobno povezivanje blokova (input-output )
• konfigurisanje parametara blokova
Svaki od blokova u stvari je jedna DLL biblioteka koja ima svoju "ikonicu"
odnosno ime koje identifikuje njegovu funkciju npr. Analog Input, XYplot,
Pulse blok, Analog metar itd.
Pozivanjem blok menija vrši se selekcija i importovanje funkcionalnog
bloka na novo otvorenom dijagramu.
 |
Na slici 2. prikazana je selekcija bloka za generisanje sinusnog
generatora.
Naredna faza u kreiranju krajnje aplikacije je međusobno povezivanje
blokova postavljenih u FlowGram dijagramu. Povezivanje uz upotrebu Wiring
Tool alata je krajnje jednostavno i svodi se na linijsko povezivanje
In/Out funkcija pojedinih blokova.
Na slici 3. prikazani su međusobno povezani blok (sinusni generator)
i blok (multiChannel plot).
|
 |
| Slika 2.
Selekcija bloka za generisanje sinusnog generatora
|
Slika 3.
Međusobno povezani blok (sinusni generator)
i blok (multiChannel plot)
|
Prostorna organizacija blokova, njihova radna imena, komentari i njihova
preglednost na radnom dijagramu je subjektivna vizija samog programera,
mada je korisno, naročito pri korišćenju velikog broja blokova
i konekcija, koristiti ''subgram'' module koji služe za grupisanje drugih
blokova u jednu celinu. Slika 4. pretstavlja jedan složeniji FlowGram
dijagram koji je spreman za startovanje u Run režim.
|

|
|
Slika
4. Složeniji FlowGram dujagram |
| Da bi se pravilno kreirala Run-time aplikacija potrebno je izvršiti
konfigurisanje parametara svakog od blokova čime se zadaju njegove
operacione karakterstike.
Na slici 5. prikazano je podešavanje parametara ''sinewave'' bloka koji
odgovara FlowGram dijagramu sa slike 3. Pravilno podešavanje parametara
blokova podrazumeva poznavanje nekih osnova iz oblasti elektronike,
hardvera i automatskog upravljanja.
Jedna od prednosti Visual Designer-a je obiman i detaljan help
uz svaku od blok biblioteka. |

|
|
Slika
4. Složeniji FlowGram dijagram |
BIBLIOTEKE
BLOKOVA
Visual Designer sadrži veliki broj funkcionalnih blokova i ovde je dat
pregled sa kraćim opisom:
• COMM komunikacioni blok (IEEE488; Serijska komunikacija)
• COMPARE blokovi za komparaciju (Compare; Treshold alarm; Window alarm)
• CONVERT za konverziju podataka (Accumulate; Bit pack; Bit unpack;
Contacenate; Cut; Decimate; Delay; Modifyunits; Multiplexer; Pack block;
Selector; Type convesion; Unpack)
• DATABASE rad sa MS bazama (Access Action; Access Query)
• DDE razmena podataka (DDEClient; DDExecute; DEPoke; DDEServer block)
• DISPLAY blok (Analog metar; Annunciator; Bargraph; Chart; Digital
metar; List; Multi-channel Plot; Video; XYChart; XYPlot)
• DSP procesiranje podataka (Correlation block; FFT; Filter; Power
Spectrum block)
• FILE I/O rad sa fajlovima (ASCIIFileRead; ASCIIFileWrite; AutoFilename;
Filename; FileRead; FileWrite; RawFileWrite)
• SIGNAL GENERATOR (Constant; Pulse; Random; Sinewave)
• HARDWARE I/O (8254 Counter; AnalogIn/Out; Counter; AnalogIn/OutDMA;
BurstGenerator; CounterDMA; Digitaln/Out; DigitalIn/Bit; DigitalIn/OutDMA;
Period; RateGenerator; Thermocouple)
• LOGIČKA ARITMETIKA (AND; NAND; NOR; NOT; OR; SR-FF; XOR;
IncrementCounter; One-Shot)
• MATEMATIČKE FUNKCIJE (Abs; Add; Clip; Derivate; Divide; Integral;
Equiation; Inverse; Ln; Log; MoveAverage; Multiply; Power; Square;
SquareRoot; TableLookup;
Substract; X^Y)
• MERENJA (Histogram; Max; Min; Mean/Sum; Peak; RMS; QuickSort)
• MEMORY (16bit I/O; 32bit I/O;
8bit I/O)
• MISC (Call; Export; Extract; Import; Latch; Load; PID; Return; Run
Controller; Time; Timer; Wait; Wallpaper)
• SPECIAL (FeedBack; Continue; Do..While; Select; LinkIn/Out; LoopCount;
SubgramIn/Out)
• STRING (Case Convert; Find Character; Match String; String Compare;
Format; Cut; Pack; Unpack; Lenght; Interpret; Conversion)
• USERINF (Alphanumeric Input; Audio Annunciator; MessageBeep; Numeric
Edit; Slider; SwichBar; User Promt)
FLOW
CODE-RUN TIME REŽIM
Poslednja
faza je pokretanje neke vrste kompajlera kojim se, na osnovu fajlova *.dgm,
i *.par (oformljenim u predhodnom radu), prelazi u Run-time radno okruženje
uz otvaranje *.fco fajla. Startovanje je krajnje jednostavno, prostim
klikom na Run ''ikonicu'', kao što je pokazano na slici 6. (kursor miša).
|

|
Pri tome ako se pri povezivanju ili setovanju parametara blokova napravila
neka greška program će izbaciti tip greške odnosno error dijalog
koji će ponuditi korigovanje loše konekcije tj. vizuelno
prikazivanje problematičnog bloka i konekcije. Jedan primer error
dijaloga nepovezanosti Thermocouple bloka prikazan je na slici 7.
Jednom startovana aplikacija odnosno rad u Run-time okruženju omogućava
neposredno dizajniranje pokaznih panela,menjanje njihovog oblika, boje,
veličine pa čak i menjanje njihovih radnih parametara što je
izradu krajnjeg dizajna učinilo jednostavnim.
|
|
Slika
6. Startovanje je krajnje jednostavno, prostim klikom na Run ikonicu |
| |
|
 |
|
Slika
7. Error dijalog nepoveyanosti Thermocouple bloka |
| |
Verzija 4.0 donela je novi alat Alignment Tools kojim je u Run-time okruženju
olakšano geometrisko podešavanje i poravnavanje pokaznik displeja.
Na slici 8. prikazana je jedna startovana Run-time aplikacija. Naravno
finalizovanu verziju radnog displeja moguće je ''zaključati'' od
daljih promena. Posebna pogodnost je što se sa komandama Show/Hide postiže
vizuelno (ne)prikazivanje više radnih displeja.
U Visual Designeru je moguće startovanje više Run-time aplikacija
koje se odvijaju nezavisno jedna od druge.
|
 |
|
Slika
6. Primer startovane Run-time aplikacije |
CUSTOM
BLOCK TOOLKIT
Intelligent
Instrum. je za korisnike koji žele da kreiraju svoje funkcionalne blokove
ponudio razvojni alat Custom Block ToolKit. Uz obimnu dokumentaciju i
primere otvorena je mogućnost genereisanja novih DLL biblioteka,
naravno za programere vične radu u C/C++ (podržan je Borland C++;
Microsoft Visual C++ Symentec).
KRITIČKI
OSVRT
Sistemski
zahtevi po specifikaciji Intelligent Instr. su 80486DX, minimalno 12 Mb.
RAM, CD-Rom.
Praktična iskustva autora za neki fleksibilan rad je bar 200MMX
procesor ili PII tehnologija sa 32 Mb. RAM, grafičkom karticom sa 4
Mb., pri rezoluciji 800x600 u 16-bit paleti boja.
Visual Designer podržava kompletan hardverski akvizicioni program
Inteligent Inst.-ta, i to sledeće module:
• EDAS-1002E (Multifunction Ethernet Data Acquis.)
• PCI-460P Series IOcard
• PCI-470W Series High Speed Board
• PCI-20377W Series Board
• PCI-20428W Series Board
• PCI-20450p Series DASports
• PCI-20098C Series Board
Prednosti ovog paketa su pre svega što ne zahteva programiranje i što je
korisnički interfejs uprošćen i lak za korišćenje, a sa
druge strane dovoljno snažan da svojom kombinacijom funkcionalnih blokova
omogući kreiranje složenih aplikacija.
U ranijoj 16-bitnoj verziji Visual Designera 3.0, bilo je izvesnih
problema - nemogućnost kreiranja i pokretanja *.fco fajla, pri
upotrebi velikog broja blokova i konekcija između njih, (preko 1000
blokova), pa je čak i Intelligent Instr. na svom sajtu (www.instrument.com),
dao ispravku RUN.EXE fajla. Nova verzija 4.0 donela je nove blokove i po
specifikaciji proizvođača otklonjeni su raniji problemi, mada
treba biti oprezan.
Na njihovom sajtu nalaze se najnovije informacije iz proizvodnog programa
Intelligent Inst., kao i brojni primeri rada u Visual Designeru.
Osnovni nedostatak Visual Designera je snažnija grafička podrška,
pre svega nedostatak industrijskih simbola pa crtanje i rad u ovim
okolnostima može da bude otežano. Sigurno da je potrebno dalje unapređenje
i dodavanje novih blokova naročito u pogledu statistike, linearne
algebre i matematičke obrade, što bi omogućilo da se Visual
Designer svrsta u sam vrh paketa ovakve namene.
Jedno je sigurno, u Visual Designeru je potrebno minimalno vreme za
kreiranje krajnje aplikacije, a vreme je novac. Zar ne? x
|