11
5 Driveri Ovo poglavlje govori o LabVIEW-ovim driverima. Driver je donja razina u trorazinskom pristupu razvoja softvera; međutim, to je možda i najvažnija razina. Ako se driveri koriste i napisani su ispravno, korisnik će imati korist kroz čitljivost, mogućnost ponovnog korištenja koda i brzinu  primjene. LabVIEW driveri su dizajnirani da programeru omoguće upravljanje instrumentima, procesima ili kontrolama. Glavna svrha drivera je da stvori apstrakciju nad temeljnim kodom niže razine. To omogućuje nekome da naredi instrumentu da obavi zadatak bez znanja stvarne naredbe ili načina na koji instrument komunicira. Krajnji korisnik pišući testni VI ne mora znati sintaksu za komunicirati s instrumentom, već samo mora biti u stanju spojiti odgovara juće ulaze na driver instrumenta.  U ovome dijelu će se raspravljati o nekim od uobičajenih komunikacijskih metoda koje LabVIEW  podržava za pristup instrumentima i kontrolama. Nakon komunikacijskiih standarda, govoriti ćemo o klasifikacijama, ulazima i izlazima, otkrivanju pogrešaka, prijedlozima za razvoj i, konačno, o  ponovnom korište nju koda.  Prvo će se raspravljati o standarnom LabVIEW driveru. Ovaj standardi driver je temelj za većinu aktualnih LabVIEW aplikacija. U nastojanju da se poboljša učinkovitost i fleksibilnost aplikacija, stvoreni su Interchangeable Virtual Instrument (IVI) driveri . IVI driveri će biti  dublje opisani kasnije u ovom poglavlju. 5.1 KOMUNIKACIJSKI STANDARDI Postoje mnogi načini na koje se komunikacija izvodi svaki dan. Komunikacija je metoda dijeljenja informacija. Ljudi mogu međusobno djeliti informacije govorom, pisanjem poruka, znakovnim  jezikom, itd .... Ba š kao što ljudi imaju m nogo različitih način a međusobnog kom uniciranja, softverske aplikacije imaju mnogo načina komuniciranja s vanjskim subjektima. Programi mogu razgovarati  jedni s drugima, s instrumentima, ili s drugim računalima. Sljedeći komunikacijski standardi su samo neke od metoda koje LabVIEW koristi za komunikaciju s vanjskim svijetom. 5.1.1 GPIB General Purpose Interface Bus (GPIB) je standardna metoda komunikacije između računala/kontrolera i ispititne opreme. GPIB se sastoji od 16 signalnih linija i 8 povratnih linija zemlje. 16 signalnih linija sastavljene su od 8 podatkovnih linija, 5 upravljačkih vodova, te 3 sinkronizacijske linije. GPIB sučelje usvojeno je kao standard (IEEE 488). Maksimalna brzina prijenosa podataka GPIB -a je oko 1Mbyte/sekundi. Kasnija verzija standarda s dodatnim mogućnostima definirana je 1987. Ovaj standard je ANSI/IEEE 488.2. Ovo poboljšanje standarda definira kako kontroler treba upravljati sabirnicom. Novi standard uključuje definicije standardnih poruka za sve usklađene instrumente,

LabVIEW 5 Driveri 1dio

Embed Size (px)

DESCRIPTION

labview driveri

Citation preview

  • 5/21/2018 LabVIEW 5 Driveri 1dio

    1/11

    5 Driveri

    Ovo poglavlje govori o LabVIEW-ovim driverima. Driver je donja razina u trorazinskom pristupurazvoja softvera; meutim, to je moda i najvanija razina. Ako se driveri koriste i napisani su

    ispravno, korisnik e imati korist kroz itljivost, mogunost ponovnog koritenja koda i brzinu

    primjene.

    LabVIEW driveri su dizajnirani da programeru omogue upravljanje instrumentima, procesima ili

    kontrolama. Glavna svrha drivera je da stvori apstrakciju nad temeljnim kodom nie razine. To

    omoguuje nekome da naredi instrumentu da obavi zadatak bez znanja stvarne naredbe ili naina na

    koji instrument komunicira. Krajnji korisnik piui testni VI ne mora znati sintaksu za komunicirat i s

    instrumentom, ve samo mora biti u stanju spojiti odgovarajue ulaze na driver instrumenta.

    U ovome dijelu e se raspravljati o nekim od uobiajenih komunikacijskih metoda koje LabVIEWpodrava za pristup instrumentima i kontrolama. Nakon komunikacijskiih standarda, govoriti emo o

    klasifikacijama, ulazima i izlazima, otkrivanju pogreaka, prijedlozima za razvoj i, konano, o

    ponovnom koritenju koda.

    Prvo e se raspravljati o standarnom LabVIEW driveru. Ovaj standardi driver je temelj za veinu

    aktualnih LabVIEW aplikacija. U nastojanju da se pobolja uinkovitost i fleksibilnost aplikacija,

    stvoreni su Interchangeable Virtual Instrument (IVI) driveri. IVI driveri e bitidublje opisani kasnije u

    ovom poglavlju.

    5.1 KOMUNIKACIJSKI STANDARDI

    Postoje mnogi naini na koje se komunikacija izvodi svaki dan. Komunikacija je metoda dijeljenja

    informacija. Ljudi mogu meusobno djeliti informacije govorom, pisanjem poruka, znakovnim

    jezikom, itd .... Ba kao to ljudi imaju mnogo razliitih naina meusobnog komuniciranja, softverske

    aplikacije imaju mnogo naina komuniciranja s vanjskim subjektima. Programi mogu razgovarati

    jedni s drugima, s instrumentima, ili s drugim raunalima. Sljedei komunikacijski standardi su samo

    neke od metoda koje LabVIEW koristi za komunikaciju s vanjskim svijetom.

    5.1.1 GPIB

    General Purpose Interface Bus (GPIB) je standardna metoda komunikacije izmeu raunala/kontrolera

    i ispititne opreme. GPIB se sastoji od 16 signalnih linija i 8 povratnih linija zemlje. 16 signalnih linija

    sastavljene su od 8 podatkovnih linija, 5 upravljakih vodova, te 3 sinkronizacijske linije. GPIB

    suelje usvojeno je kao standard (IEEE 488). Maksimalna brzina prijenosa podataka GPIB -a je oko

    1Mbyte/sekundi. Kasnija verzija standarda s dodatnim mogunostima definirana je 1987. Ovaj

    standard je ANSI/IEEE 488.2. Ovo poboljanje standarda definira kako kontroler treba upravljati

    sabirnicom. Novi standard ukljuuje definicije standardnih poruka za sve usklaene instrumente,

  • 5/21/2018 LabVIEW 5 Driveri 1dio

    2/11

    LabVIEW: Tehnike naprednog programiranja Poglavlje 5: Driveri

    2

    metodu za izvjeivanje pogreaka i drugih statusnih informacija, te protokole koji se koriste za

    otkrivanje i konfiguriranje GBIP 488.2 instrumenata spojenih na sabirnicu.

    HS488 je standard kojeg je stvorio NI. Ovaj standard je dopuna IEEE 488 standarda i poveava stopu

    prijenosa podataka GBIP-a. Koritenjem HS488 kontrolera i kompatibilnih instrumenata, brzina

    prijenosa podataka moe se poveati do 8 Mbyte/sekundi. Najvea korist vee brzine prijenosapodataka je uporaba instrumenata koji vraaju velike skupove podataka. Instrumenti kao to su

    osciloskopi i spektralni analizatori alju velike koliine podataka kontrolnom raunalu. HS488

    standardni vam omoguuje da poveate svoju testnu propusnost.

    Postoje dvije vrste GPIB naredbi. Postoje poruke ovisne o ureaju i poruke suelja. Poruke ovisneo

    ureaju sadre programske naredbe, podatke mjerenja i status ureaja. Poruke suelja izvravaju

    sljedee operacije: inicijalizacija sabirnice, konfiguriranje udaljenih ili lokalnih postavki ureaja i

    adresiranje ureaja.

    Mnogi sadanji proizvoai instrumenta imaju standardizirane udaljene naredbe. To omoguuje

    korisniku nekog instrumenta da naui programirati instrument u kratkom vremenskom razdoblju i iniinstrumente izmjenjivijima. Kako bi se pokualo napraviti programiranje instrumenata lake, razvijen

    je skup naredbi SCPI (Standard Commands for Programmable Instrumentation). SCPI naredbe

    standardizirane su za osnovne funkcije koje gotovo svi instrumenti podravaju. Postoje neki

    instrumenti na tritu koji nisu SCPI usklaeni. Ovi instrumenti imaju vlastite setove naredbi i

    formate. To moe uiniti pisanje softvera za automatizaciju tekim. Jedan primjer je T -BERD PCM

    analizator. Ovaj instrument nije SCPI usklaen. Ako ste htjeli resetirati instrument, morati traiti

    naredbu u referentnom priruniku. U ovom sluaju, za resetiranje instrumenta, morali ste upisati

    "FIRST POWER UP" u instrument. Ne samo da je naredba nejasna, ve e to zahtijevati od

    developera da provede vrijeme traei naredbe. Slika 5.1 prikazuje GPIB driver.

    Slika 5. 1

    U I/O dijelu izbornika funkcija instrumenta postoji podizbornik koji sadri GPIB drivere. GPIB

    izbornik sadri tradicionalne GPIB 488 naredbe. Na GPIB izborniku postoji podizbornik, GPIB 488.2,

    koji sadri GPIB 488.2 naredbe. VIiz ovih podizbornika mogu se koristiti u kombinaciji s GPIB 488.2

    instrumentima. Ako instrument koji koristite nije GPIB 488.2 usklaen, moete koristiti samo VI iz

    tradicionalnog GPIB izbornika.

    Primarni VI u GPIB izborniku su GPIB Read (itaj) i GPIB Write (pii). Ta dva VI su osnova za bilo

    koji program koji koristi GPIB instrumente. Tu su i VI koji se koriste za ekanje zahtjeva usluge iz

  • 5/21/2018 LabVIEW 5 Driveri 1dio

    3/11

    LabVIEW: Tehnike naprednog programiranja Poglavlje 5: Driveri

    3

    instrumenta (Wait for GPIB RQS), pribavljanje statusa GPIB sabirnicom (GPIB status), i za

    inicijalizaciju odreene GPIB sabirnice (GPIB Initialization). Meu preostalim GPIB VI, postoji i

    GPIB Miscellaneous VI. Taj VI omoguuje izvravanje low-level GPIB naredbe. GPIB izbornik je

    prikazan na slici 5.2.

    Slika 5. 2

    GPIB 488.2 izbornik sadri dodatne funkcije. GPIB funkcije podjeljene su u pet kategorija: funkcije za

    jedan ureaj, funkcije za vie ureaja, low-level I/O funkcije, funkcije upravljanja sabirnicom i opefunkcije. Funkcije za jedan ureaja su VI koji komuniciraju sa odreenim instrumentom ili ureajem.

    Neke funkcije ukljuuju Device Clear (obrii ureaj), Read Status (oitaj stanje) i Trigger (okida).

    Funkcije vie ureaja komuniciraju s vie ureaja istovremeno. VI definiraju s kojim ureajima e

    komunicirati kroz niz adresa koje su uneene. Ova kategorija VI ukljuuje VI za brisanje popisa

    ureaja, omoguivanje daljinskog upravljanja, okidanje (Trigger) popisa VI i VI obavljanje serijskie ili

    paralelne komunikacije s ureajima.

    Low-level I/O VI omoguuju veu kontrolu nad komunikacijama. VI u ovoj kategoriji ukljuuju

    funkcije za itanje i pisanje bajta sa ureaja, slanje GPIB naredbenih bajtova, i konfiguraciju ureaja u

    pripremi za primanje bajtova. Funkcije upravljanja sabirnicom su VI koji se koriste bilo za itanje

    statusa sabirnice ili obavljanje funkcije nad cijelim GPIB-om. VI u ovoj kategoriji ukljuuju VI za

    pronalazak svih sluatelja na GPIB-u, za resetiranje sustava, za utvrivanje stanje SRQ linije, i za

    ekanje dok se SRQ javi. Konano, ope funkcije se koriste za kreiranje adrese ili za postavljanje

    timeout perioda GPIB ureaja. GPIB 488.2 izbornik prikazan je na slici 5.3.

    Slika 5. 3

  • 5/21/2018 LabVIEW 5 Driveri 1dio

    4/11

    LabVIEW: Tehnike naprednog programiranja Poglavlje 5: Driveri

    4

    5.1.2 SERIJSKA KOMUNIKACIJA

    Komunikacija putem serijskog porta danas je u irokoj uporabi. Jedna od prednosti serijske

    komunikacije u odnosu na druge standarde poput GPIB-a je dostupnost: svako raunalo ima serijski

    port. Jo jedna prednost serijske komunikacije u odnosu na GPIB je sposobnost kontrolne

    instrumenata na veoj udaljenosti. Serijski standardni omoguuje veu duljinu kabela.

    Najei serijski standard je RS-232C. Ovaj protokol zahtijeva spojeve prenoenja, primanja i

    uzemljenja. Postoje i druge linije na raspolaganju za handshaking funkcije, ali one nisu potrebne za

    sve primjene. Macintosh serijski portovi koriste RS-422A protokole. Ovaj protokol koristi dodatni par

    podatkovnih linija. Zbog dodatnih podatkovnih linija, standard je sposoban za pouzdan prijenos na

    vee udaljenosti i vee brzine. Dostupni su i drugi serijski protokoli , ali ovi su najee koriteni u

    ovom trenutku.

    VI serijskog porta nalaze se u izborniku funkcija u dijelu I/O instrumenta. Ovaj podizbornik sadri VI

    koji se koriste za itanje podataka iz serijskog porta, pisanje podataka u serijski port, inicijalizaciju

    serijskog porta, vraanje broj bajtova dostupnih na serijskom portu i postavljanje prekida (break)

    serijskog porta. Serial Port Initialize VI omoguuje podeavanje postavki serijskog porta. Kako bi

    imali uspjenu komunikaciju izmeu serijskog porta i ureaja, postavke porta trebaju odgovarati

    postavkama ureaja. Dostupne postavke su veliina buffera, broj porta, brzina prijenosa, broj

    podatkovnih bitova, broj stop bitova, paritet podataka i cluster za kontrolu toka. Cluster za kontrolu

    toka objedinjuje niz parametara, ukljuujui i brojne handshake postavke. Izbornik serijskog VI

    prikazan je na slici 5.4.

    Slika 5. 4

    Kada programer koristi serijski standard mora osigurati da serijsko pisanje ne ide u pretek zbog

    veliine buffera. Drugi uvjet je da osigura da se svi podaci oitaju sa serijskog porta. Postoje brojne

    LabVIEW ugraene funkcije dizajnirane za konfiguriranje veliine buffera i za pridobivanjeinformacije o broju bajtova dostupnih na serijskom portu. Slika 5.5 pokazuje VI napisan da ita

    podatke iz serijskog porta. VI obavlja itanje dok se svi eljeni podaci ne oitaju.

    Od LabVIEW verzije 7 dolo je do promjene u LabVIEW serijskoj komunikaciji. Dok starija verzija

    VI serijskog porta i dalje radi, a moe se nai u C: \Program Files\National Instruments\LabVIEW 8.0

    \vi.lib\Instr\serial.llb, glavni VI serijskog porta u Serial izborniku su pretvoreni u VISA. Osim VISA

    serijski VI, ostavtina VI serijskog porta takoer su ugraeni u VISA komunikaciju. Ova promjena

    zahtijeva instalaciju VISA s LabVIEW, ak i ako aplikacija rabi samo serijsku komunikaciju.

  • 5/21/2018 LabVIEW 5 Driveri 1dio

    5/11

    LabVIEW: Tehnike naprednog programiranja Poglavlje 5: Driveri

    5

    Slika 5. 5

    Postoje dodatni standardi za serijski port, koji bi zahtijevali posebnu raspravu. Ti standardi su

    Universal Serial Bus (USB) i FireWire (IEEE 1394). USB omoguuje spajanje ureaja na zajedniki

    port, i daje mogunost "hot swap"(brze izmjene) instrumenata. Postoji niz hardverskih ureaja koji

    koriste USB na raspolaganju. Osim toga, National Instruments radi ureaje koji koriste ovutehnologiju, ukljuujui GPIB-to-USB kontroler. Ova vanjska kutija spaja se na raunalo putem USB

    prikljuka i omoguuje korisniku spajanje do 14 GPIB instrumenata bez potrebe za GPIB portom na

    PC-u. To je posebno korisno kada koristite prijenosno raunalo bez I/O utora; kontroler se moe

    prikljuiti na USB port. Takoer su dostupne kutije za dodavanje serijskih portova na vaem raunalu

    putem USB konvertera. Novi serijski portovi izgledaju kao standardni serijski portovi na vaem

    raunalu. USB podrava brzine prijenosa od 1,5 do 12Mbps.

    FireWire je zapravo Macintosh-ova implementacija standarda IEEE 1394. FireWire je brand name

    poput Coca-Cole ili Kleenex-a. FireWire omoguuje brzu izmjenu ureaja i moe povezati do 16

    ureaja u lanac (daisy-chain). Glavna prednost FireWire je brzina. 1394a FireWire standard ima brzinu

    od 100, 200 i 400 Mbit/sec. Izmjene standarda IEEE 1394 (1394b) omoguuju brzine od 800Mbps, 1.6

    Gbps i 3.2 Gbps. Trenutno, postoje samo 800Mbps ureaji komercijalno dostupni. 1394b standard

    takoer poveava doputenu duinu kabela od 4.5m na 100m.

    5.1.3 VXI

    VME ekstenzije za instrumentaciju (VXI) su standardi dizajnirani za podrku implementacije

    instrumenata na kartici. VME je popularna arhitektura sabirnice sposobna prenositi podatke brzinom

    od 40MB/s. VXI kombinira brzinu VME sabirnice s jednostavnim za koritenje setom naredb odGPIB instrumenta. Cilj VXI instrumentacije je proizvesti Cilj VXI instrumentacije je proizvesti mali,

    trokovno smanjeni hardverski sustav sa standardiziranom konfiguracijom i programiranjem. VXI

    Plug&Play standardi promiu multi-vendor izmjenjivost standardiziranjem naredbi instrumenta za sve

    VXI instrumente. Uvoenjem instrumenata na karticama, veliina potrebna za implementaciju probne

    stanice moe biti znatno smanjena. Sposobnost implementacije niza instrumenata u malom okviru

    omoguuju test programeru izradu ispitnog mjesta na mjestima koja nisu bila praktina prije,

    oslobaajui resurse za druge aplikacije. VXI standard takoer daje korisniku fleksibilnost

    prilagoenih rjeenja. Kartice se mogu napraviti i koristiti za implementaciju rjeenja koja nisu

    dostupna s police. VXI VI se nalaze u podizborniku Instrument I/O izbornika.

  • 5/21/2018 LabVIEW 5 Driveri 1dio

    6/11

    LabVIEW: Tehnike naprednog programiranja Poglavlje 5: Driveri

    6

    NI ne preporua koritenje VXI za nove aplikacije. Dostupnost VXI koda je samo za odravanje

    kompatibilnosti s postojeim aplikacijama. Potie se koritenje VISA funkcija za komunikaciju s

    instrumentima.

    5.1.4 LXI

    Zbog elje korisnika da budu u mogunosti postaviti postojee i nove ureaje bez potrebe za

    koritenjem posebnih kabela ili kontrolera, kao i da bi mogli smanjiti trokove (specijalizirani VXI

    moduli povevaju trokove zbog manjeg broja jedinica), razvija se novi standard. LXI standard koristi

    LAN (Ethernet) kao okosnicu sustava. To ima nekoliko prednosti, ukljuujui smanjenje trokova

    (nema card cages ili interface kartica), brzina i dostupnost (svako raunalo ima LAN port i mnogi

    noviji instrumenti ve imaju LAN podrku). Ovaj standard je jo uvijek u fazi razvoja, ali ima podrku

    tvrtki velikih proizvoaa instrumenata. Mislim da ese o LXI uti vie u budunosti.

    5.1.5 VISA DEFINICIJA

    Virtual Instrument Software Architecture (VISA) je standardni Application Programming Interface

    (API) za I/O komunikaciju instrumenata. VISA je sredstvo za komunikaciju GPIB, VXI, ili serijskih

    instrumenata. VISA nije LabVIEW specifian, ali je standard dostupan na mnogo jezika. Kad

    LabVIEW instrument driver koristi VISA Write (pisanje), poziva se odgovarajui driver za tu vrstu

    komunikacije koja se koristi. To omoguuje istom API kontrolu niza instrumenata razliitih vrsta. VI

    napisan za obavljanje pisanja na instrument nee se morati mijenjati ako se korisnik prebacuje sa

    GPIB na serijski ureaj. Samo se mora mijenjati ime resursa kada se koristi instrument za Open

    (otvaranje).

    Jo jedna korist od koritenja VISA je neovisnost platforme. Razliite platforme imaju razliito

    definirane predmete, kao to je veliina integer varijable. Programer se nee morati brinuti o takvim

    problemima; VISA e obaviti potrebne konverzije. Slika 5.6 prikazuje usporedbu GPIB i VISA

    drivera.

    Kao to se vidi na slici 5.6, glavni posao kod primjene VISA je inicijalizacija. GPIB komunikacija

    zahtijeva da se niz adresa prenosi posvuda gdje se driver poziva. Ako bi dolo do promjene u

    instrumentu, kao koritenje serijskog umjesto GPIB instrumenta, veliki broj aplikacija bi zahtijevao

    znatne promjene. Svi driveri bi morali biti promijenjeni. Aplikacija koja koristi VISA bi zahtijevalasamo promjenu ulaza na VISA Open VI. Rezultirajua referenca instrumenta bi i dalje vrijedi la za

    VISA drivera, bez potrebe za promjenom. VISA driveri nude fleksibilnost.

  • 5/21/2018 LabVIEW 5 Driveri 1dio

    7/11

    LabVIEW: Tehnike naprednog programiranja Poglavlje 5: Driveri

    7

    Slika 5. 6

    VISA driver VI se nalaze u Instrument I/O dijelu Functions izbornika. Podizbornik VISA sadri irok

    spektar programskih funkcija. U glavnom izborniku su standardni VISA driveri VI. Ti VI omoguuju

    vam da otvorite komunikaciju sesiju, itate i piete podatke, dodjelite trigger, i zatvorite komunikaciju.

    Osim standardnih VISA VI, postoji veliki broj naprednih VISA funkcija. One se nalaze u

    podizborniku VISA Advanced i tri podizbornika u Advanced izborniku.

    Prvi podizbornik na VISA Advanced izborniku je Bus/Interface. Sadri VI koji se koriste za suelje -

    specifine potrebe. Postoje VI za postavljanje serijske veliine buffera, pranjenje serijskog buffera i

    slanje serijske pauze. VISA GPIB Control REN (Remote Enable) VI omoguuje kontrolu linije REN

    suelja temeljem odreenog moda. VISA VXI CMD or Querry VI omoguava slanje naredbe ili upita,

    ili primanje odgovora na prethodno poslan upit na temelju naina unosa.

    Sljedei podizborniik je Event Handling. VI u ovom izborniku djeluju na odreene dogaaje. Primjeri

    dogaaja su triggeri, VXI signali, ili zahtjevi za uslugom. Konano, podizbornik Register Access

    omoguuje itanje, pisanje, i premjetanje odreenih dugih rijei podataka iz odreene adrese.

    Podizbornik Low-Level Register Access omoguuje peek and poke odreenih vrijednosti duljine bita

    kod odreenih adresa registra. VISA izbornik je prikazan na slici 5.7.

  • 5/21/2018 LabVIEW 5 Driveri 1dio

    8/11

    LabVIEW: Tehnike naprednog programiranja Poglavlje 5: Driveri

    8

    Slika 5. 7

    5.1.6 DDE

    Dynamic Data Exchange (DDE) je nain komunikacije izmeu Windows aplikacija. Ovaj

    komunikacijski standard vie nije podran u trenutnoj verziji LabVIEW-a. Sljedei tekst govori o

    podrci za starije verzije LabVIEW-a.

    U DDE komunikaciji, postoji aplikacija posluitelja i klijenta. DDE klijent je program koji trai

    podatke ili alje naredbe na DDE posluitelj. Pod pretpostavkom da su obje aplikacije otvorene, klijent

    prvi uspostavlja komunikaciju s posluiteljem. Veze se nazivaju "razgovori". Klijent tada moe

    zatraiti od posluitelja da poalje ili izmjeni bilo koji prozvani podatak. Klijent takoer moe slati

    naredbe ili podatke na posluitelj. Klijent moe zatraiti podatke ili zahtjev da se obavijesti o promjeni

    podataka za potrebe praenja stanja. Kao i drugi oblici komunikacije, kada su svi zadaci zavreni,

    klijent mora zatvoriti komunikaciju s posluiteljem.

    LabVIEW moe djelovati kao posluitelj ili klijent. Jedan primjer djelovanja LabVIEW-a kao klijenta

    bio bi VI koji dobiva podatke iz Excel tablice ili pie podatke u tablicu. Ako LabVIEW djeluje kao

    posluitelj, drugi Windows program bi mogao otvoriti i pokrenuti VI, uzimajui dobivene podatke za

    obavljanje zadatka.

    DDE VI su u izborniku Communications. Postoje VI za otvaranje i zatvaranje razgovora i obavljanje

    zadanih funkcija, zahtjeva i izvravanja. Osim DDE funkcijskih drivera, postoji podizbornik u DDE

    izborniku. Ovaj izbornik sadri funkcije DDE servera. Ove funkcije se koriste za registrirati i odjaviti

    DDE usluge i stavke. Tu su i VI koji se koriste za postavljanje i provjeru stavki.

    5.1.7 OLE

    OLE, kao DDE, vie nije podran u trenutnim verzijama LabVIEW -a. Sljedei tekst govori o podrci

    za starije verzije LabVIEW-a.

    Object Linking and Embedding (OLE), ili automatizacija, je sposobnost stavljanja objekata iz drugih

    softverskih programa u drugu aplikaciju. Ova sposobnost omoguuje i irenje sposobnosti programa i

    manipulaciju podacima u drugoj aplikaciji. Primjer za to bilo bi snimanje filmskog zapisa (AVI file) i

    usaivanja u Word datoteku. Iako Word nema pojma to je snimka, moe je prikazati u okolini obrade

    teksta. OLE je nain na koji se objekti mogu prenositi izmeu aplikacija.

  • 5/21/2018 LabVIEW 5 Driveri 1dio

    9/11

    LabVIEW: Tehnike naprednog programiranja Poglavlje 5: Driveri

    9

    OLE radi s objektima koristei standard poznat kao Component Object Model (COM). COM standard

    definira zajednike naine pristupa objektima aplikacije da bi se utvrdilo je li objekt u uporabi,

    izvjeuje li o pogreci, postoji li razmjena podataka izmeu aplikacija, i nain da se identificiraju

    objekte kako bi ih se povezalo s odreenim aplikacijama. OLE je nadskup ActiveX standarda i koristi

    iste VI. Dublja rasprava o ActiveX s primjerima nalazi se u poglavlju 8.

    5.1.8 TCP/IP

    Postoje tri glavna protokola za komunikaciju preko mree: Transmission Control Protocol (TCP),

    Internet Protocol (IP) i User Datagram Protocol (UDP). TCP je izgraen povrh IP -a. TCP razbija

    podatke u pakete da bi ih IP sloj poslao. TCP takoer obavlja provjeru podataka kako bi se osiguralo

    da podaci stignu na odredite u jedinstvenom potpunom obliku. TCP/IP podatak se sastoji od 20 bajta

    IP informacija, koje slijedi 20 bajta TCP informacija, a potom i podatak koji se alje. TCP/IP protokol

    moe se koristiti na svim LabVIEW i BridgeVIEW platformama.

    Svako raunalo na IP mrei ima jedinstvenu internetsku adresu. Ova adresa je 32-bitni cijeli broj,

    najee prikazan u IP tokasto-decimalnom zapisu. Adresa je podijeljena u 8-bitne brojeve odvojene

    decimalnim toakam. Domain Name Service (DNS) sistem je baza podataka IP adresa povezanih s

    jedinstvenim imenima. Na primjer, ako korisnik trai National Instruments web stranice

    (www.ni.com) biti e preusmjeren na odgovarajuu IP adresu koja odgovara imenu. Taj proces je

    poznat kao "hostname resolution".

    Postoji niz standarda koji koriste TCP/IP te se mogu implementirati pomou LabVIEW-a. Telnet,

    SMTP i POP3 su neke od aplikacija izgraene pomou TCP/IP protokola. Telnet se moe koristiti za

    pruanje dvosmjerne komunikacije izmeu lokalnog i udaljenog raunala. POP3 i SMTP koriste se za

    provedbu mail aplikacije.

    S TCP/IP, konfiguracija vaeg raunala ovisi o sustavu u kojem radite. Uz Windows, UNIX i

    Macintosh verzije 7.5 i kasnije verzije, TCP/IP je ugraen. Za starije verzije Macintosh operativnih

    sustava, treba biti instaliran MacTCP driver.

    TCP izbornik se nalazi u Communication dijelu Function izbornika. VI u TCP izborniku omoguuju

    otvaranje i zatvaranje veza. Jednom kada je veza otvorena, moete itati i pisati podatke preko VI u

    TCP izborniku. Tu su i VI za stvaranje sluatelja i ekanje na sluatelja. IP to string funkcija

    omoguuje vam pretvaranje IP adrese u niz. Tu je ulaz za ovu funkcijugdje treba odrediti ako adresa

    koristi dot zapis. Funkcija za pretvaranje niza u IP adresu je takoer dostupna. VI u ovom izbornikuprikazani su na slici 5.8.

    Slika 5. 8

  • 5/21/2018 LabVIEW 5 Driveri 1dio

    10/11

    LabVIEW: Tehnike naprednog programiranja Poglavlje 5: Driveri

    10

    5.1.9 DATA SOCKET

    DataSocket je programska tehnologija koja omoguuje razmjenu podataka izmeu aplikacije i

    raunala. Podaci se lako mogu prenositi izmeu aplikacija preko Internet prikljuka. DataSocket je

    izgraen koritenjem TCP/IP i ActiveX/COM tehnologija. DataSocket posluitelj se moe nalaziti na

    lokalnom raunalu ili na drugom raunalu u mrei. Moete itati podatke pomou DataSocket HTTP,FTP i lokalnih datoteka. DataSocket takoer moe itati uivo podatke putem dstp (DataSocket

    transfer protocol) veze. Takoer imate mogunost kontrole svoje LabVIEW aplikacije putem web

    suelja pomou DataSocket CGI funkcija. Shared Variable u LabVIEW 8 zamjenjuje DataSocket

    funkcionalnost. Podrka za DataSocket e ostati, ali nove aplikacije bi trebalepoeti prelaziti na novu

    varijablu. Shared Variable je detaljno opisana u drugim poglavljima.

    DataSocket VI nalaze se u podizborniku Communication dijelu Function izbornika. DataSocket VI

    rade na isti nain kao i VISA VI ili neki drugi LabVIEW standard. Postoje VI za otvaranje i zatvaranje

    veze. Open funkcija e otvoriti komunikaciju na temelju ulaznog URL-a i pristupnog naina. URL

    ulaz mora biti jedan od gore spomenutih protokola. Izlaz Open funkcije je DataSocket referenca. Ovareferenca se koristi na isti nain kao kod tipine veze. Preostali VI koristite referencu za obavljanje

    radnjo na eljenim informacijama. Nakon toga moete itati ili pisati niz, Boolean, cijeli broj ili

    dvostruku vrijednost. Ako elite itati ili pisati array od tih podataka, potrebni VI su dostupni u

    DataSocket Write i DataSocket Read podizbornicima.

    Slika 5. 9

    Podizbornik Advanced vam daje mogunost za itanje i pisanje varijabli. Osim varijabli funkcija, tu su

    i funkcije niske razine za obavljanje DataSocket komunikacije. Ove funkcije ukljuuju VI za

    povezivanje i auriranje podataka. Konano, postoji VI za programsku kontrolu DataSocket

    posluitelja. Takoer bi trebali biti u mogunosti pristupiti DataSocket posluitelju putem svoga Start

    izbornika pod imenom National Instruments DataSocket. DataSocket izbornik funcija prikazan je na

    slici 5.9.

    Ako elite izvesti live auriranja podataka, najprije je potrebno utvrditi je li DataSocket posluitelj

    pokrenut na lokalnom raunalu. Tipian format za lokalno pisanje podataka na DataSocket posluitelj

    je dstp://localhost/test. Uz pretpostavku da je "test" naljepnica (label) za podatke koje piete na

    posluitelj. Ako koristite lokalnog posluitelja, DataSocket posluitelj treba biti pokrenut pomou

    funkcije u DataSocket Advanced podizborniku. Zatim, trebati ete otvoriti DataSocket vezu s

    oznaenim Write Attribute. Nakon toga moete upisati podatke koje elite podijeliti na DataSocket

    posluitelju. Ako koristite DataSocket posluitelj na drugom raunalu, adresa raunala treba biti u

    DSTP adresi.

    Za itanje podataka s posluitelja, ponovno trebate utvrditi je li posluitelj je lokalno ili udaljenoraunalu. Nakon to rijeite ime posluitelja i imate otvorenu vezu na posluitelju s ukljuenim read

  • 5/21/2018 LabVIEW 5 Driveri 1dio

    11/11

    LabVIEW: Tehnike naprednog programiranja Poglavlje 5: Driveri

    11

    atributom, moete koristiti Read DataSocket VI za itanje podataka.Morati ete koristiti Update data

    VI ako elite proitati nove podatke nakon to su upisani na posluitelj.

    Slika 5. 10

    Za itanje i pisanje statikih podataka, postupak je isti. Jedina razlika je URL koji se koristi za

    spajanje na DataSocket. Primjeri VI koji se koriste za generiranje Live podataka na DataSocket

    posluitelja i VI za itanje podataka iz DataSocketposluitelja, prikazani su na slici 5.10. Ovaj primjer

    ukljuuje dodatne atribute. To omoguuje stavkama kao to su vrijeme i datum da prate podatke koji

    se prenose. DataSocket posluitelj je pokrenut na istom raunalu kao i Data Write VI. Postoje i

    dodatni primjeri on-line.