HYRJE NË SOFTVERËT INXHINIERIK fileDr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW...

108
UNIVERSITETI I PRISHTINËS “HASAN PRISHTINA” FAKULTETI I INXHINIERISË MEKANIKE PROGRAMI MEKATRONIKË Dr. sc. ILIR DOÇI, prof.asoc. USHTRIME NGA LËNDA HYRJE NË SOFTVERËT INXHINIERIK (Dispensë) PRISHTINË 2015

Transcript of HYRJE NË SOFTVERËT INXHINIERIK fileDr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW...

UNIVERSITETI I PRISHTINËS “HASAN PRISHTINA”

FAKULTETI I INXHINIERISË MEKANIKE

PROGRAMI MEKATRONIKË

Dr. sc. ILIR DOÇI, prof.asoc.

USHTRIME NGA LËNDA

HYRJE NË SOFTVERËT INXHINIERIK

(Dispensë)

PRISHTINË

2015

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

2

1. HYRJE NË SOFTVERIN LABVIEW

Lab VIEW paraqet softverin e dizajnimit të sistemeve dhe zhvillimin me anë të

programimit vizuel të krijuar nga kompania amerikane National Instruments (NI). LabVIEW

paraqet shkurtesën për Laboratory Virtual Instrument Engineering Workbench – Laboratori dhe

tavolina e punës i inxhinierisë së instrumenteve industriale. Gjuha programuese grafike që përkrah

ky softver quhet “G”. Së pari u krijuar në vitin 1986 nga kompania Apple Macintosh e pastaj u ble

dhe u avancua nga kompania National Instruments.

LabVIEW është softveri që përdoret për:

- Marrje dhe përpunim të dhënave,

- Kontrollin e instrumenteve,

- Automatizimi industrial,

- Programimi vizuel me gjuhë programuese grafike dhe tekstuale,

- Sisteme të matjes dhe kontrollit,

- Krijim të aplikacioneve të kontrollit dhe industriale,

- Trajnim dhe aftësim për programim dhe për studentë.

Programet dhe nënrutinat e LabVIEW quhen Virtual Instruments (VI).

Punon në platforma të ndryshme operative: Microsoft Window, UNIX, LINUX, dhe

MacOS X. Versioni i fundit i këtij softveri është LabVIEW 2014. Softveri ofron edhe opcionet e

programimit grafik dhe teksutal për analiza numerike. Gjuha programuese tekstuale quhet

MathScript dhe përdor .n file skript sintaksën që mund të ketë kompatibilitet edhe me programin

MATLAB.

Softveri LabVIEW 2013 është pjesë përbërëse e ushtrimeve të kësaj lënde, me qëllim të

mësimit të lidhjes në mes të programimit, softverit të menaxhimit të organizimit të pajisjeve

mekatronike dhe kontrollit të instrumenteve.

Gjuha programuese që pëdoret në LabVIEW e quajtur G është gjuhë programuese e tipit

DataFlow. Ekzekutimi i programit varet nga struktura e bllok diagrameve grafike (Fig.1.4) që

paraqesin kodin burimor në LabVIEW. Në këto blloqe programuesi lidh funksione apo nyje të

ndryshme me drejtëza. Këto drejtëza promovojnë variablat dhe çdo nyje mund të ekzekutojë në

momentin kur të gjitha të dhënat hyrëse janë të gatshme. Pasi që mund të kemi shumë nyje

përnjëherë, gjuha G është e aftë të bëjë ekzekutim paralel – të shumfishtë në bazë të përparësisë së

secilit operacion të definuar në sintaksën e gjuhës.

Programimi grafik përkrah krijimin e interfejsit të përdoruesit (të quajtur Front Panel) në

ciklin e zhvillimit dhe të punës. Programet dhe nënrutinat e LabVIEW quhen Virtual Instruments

(VI). Secila Vi ka katër komponente të rëndësishme: Bllock diagram, Front panel, Connector

panel (Paneli i lidhjeve) dhe Paletat – Tools, Controls, Functions. (Fig.1.1.a).

- Front Panel – paraqet pjesën e programit dhe interfejs ku krijohen kontrollat, indikatorët,

grafikët, vektorët, matricat dhe objektet tjera të programit vi. Paraqet interfejsin e përdoruesit.

Kontrollat janë madhësi hyrëse - i mundësojnë përdoruesit të japin informatat për Vi. Indikatorët

janë daljet – këto japin indikacion, ose paraqesin në formë të display apo grafike rezultatet në bazë

të hyrje që janë dhënë në Vi. Kontrollat dhe indikatorët janë të formave të ndryshme.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

3

- Block diagram – Është paneli i programit që paraqet bllok diagramet dhe kodin burimor

grafik (Fig.1.1.b). Përdoret për të paraqitur programin e Vi-së në formë të bllok diagrameve. Të

gjitha objektet të vendosura në Front panel do të paraqiten në panelin e block diagram në formë të

simboleve të terminaleve. Paneli i bllok diagrameve që quhet edhe Back Panel përmban edhe

strukturat dhe funksionet që realizojnë operacionet në kontrolla dhe ofrojnë të dhëna për

indikatorët. Strukturat dhe funksionet gjenden në paletat e funksioneve dhe mund të vendosen në

Back Panel. Së bashku kontrollat, indikatorët, strukturat dhe funksionet referohen si nyje (Nodes).

Nyjet janë të lidhura me njëra tjetrën duke përdorur vijat apo kabllot (wires) – p.sh. dy kontrolla

dhe një indikator mund të lidhen me vija me një funksion shtesë ashtu që indikatori paraqet

shumën e dy kontrollave. Kështu që një instrument virtual mund të ekzekutohet si program me

Front Panel që përdoret si User Interface, ose të jetë nyje në bllok diagram me ç’rast Front Panel

definon hyrjet dhe daljet për nyjen e dhënë nëpër Panelin e lidhjeve.

a. Front Panel b. Block Diagram paneli

Fig.1.1.

Me anë softverit LabVIEW gjithashtu mund të bëhen edhe lidhja e pajisjeve hardverit dhe

instrumenteve me lidhje-porte paralele, porte serike, USB porte ose porte të rrjetit me qëllim të

matjes së parametrave të tyre, konfigurimit, dirigjimit dhe analizës (Fig.1.2)

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

4

Fig.1.2. Pajisjet hardverike- kontrollerët dhe portet e lidhjes me PC kompjuter dhe LabVIEW

2. PËRDORIMI I PROGRAMIT LABVIEW

Për të punuar në softverin LabVIEW, ai duhet paraprakisht të instalohet në kompjuter. Pas

instalimit, pamja e tij është si në Fig.1.3.

Fig.1.3. Pamja fillestare pas hapjes së LabVIEW

Pas hapjes së LabVIEW, nga Fig.1.3 mund të vërejmë menynë fillestare. Në anën e majtë

është butoni Create Project që ofron mundësinë e krijimit të një projekti. Në anën e djathtë është

butoni Open Existing që mundëson hapjen e një VI ekzistuese. Ndërsa, nëse dëshirojmë të hapim

një Fajll-VI të ri dhe të zbrazët, shkojmë në menynë File -> NewVI. Na paraqitet pamja si në

Fig.1.4. Në këtë figurë kemi të paraqitet dy komponentet kryesore të LabVIEW – Front Panel me

rrjetë të hirtë, dhe mbrapa tij Block Diagram me hapësirë të bardhë. Gjithashtu në anën e djathtë

poshtë vërehet edhe paleta e kontrollave për Front Panel.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

5

Fig.1.4. Pamja e një VI të zbrazët të hapur

Secili Vi ka katër komponente të rëndësishme: Front panel, Block Diagram, Connector

panel (paneli i lidhjeve) dhe Paletat – Tools, Controls, Functions. (Fig.1.4, 1.5).

2.1. FRONT PANEL

Është pjesa kryesore ku fillon të paraqitet dizajni i programit. Programi në Front Panel

krijohet duke përdorur kontrollat dhe indikatorët e ndryshëm. Paraqet interfejsin e përdoruesit për

Vi. Elementët përbërës të programit krijohen me kontrolla dhe indikatorë që paraqesin terminalet e

hyrjes dhe daljes të një VI.

Fig.1.5. Paleta e kontrollit në Front Panel

- Kontrollat janë madhësi hyrëse- i mundësojnë përdoruesit të japin informatat për Vi. Ato

mund të jenë: kontrolla numerike (Numeric Control), hapësirë e tekstit (String), ndërprerës

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

6

(Boolean), butone të shtypjes (push buttons), thirrje (dials), vektorë (Array) dhe Matrica (Matrix),

dhe pajisje tjera hyrëse. Indikatorët mund të jenë edhe grafe (Graphs), LED, dhe display tjetër.

Kontrollat i simulojnë pajisjet hyrëse dhe furnizojnë me të dhëna bllok diagramin e një VI.

- Indikatorët janë madhësitë dalëse – këto japin indikacion, ose paraqesin në formë të

display apo grafike rezultatet në bazë të hyrje që janë dhënë në Vi. Indikatorët simulojnë pajisjet e

instrumenteve dalëse dhe paraqesin të dhënat që bllok diagram i krijon.

Krijimi i kontrollave dhe indikatorëve në Front Panel bëhet nga menyja Control, e cila i

përmban të gjitha kontrolla dhe indikatorë të nevojshëm, dhe nga e cila me metodën Drag and

drop mund të vendosen në Front Panel. (Fig.1.5). Pas krijimit të detyrës me anë të kontrollave dhe

indikatorëve, detyra nuk ka përfunduar, por ato duhet të funksionalizohen duke krijuar kodin me

përdorimim e paraqitjes grafike të funksioneve që lidhen me kontrollin e objekteve në Bllok

diagrame.

2.2. BLOK DIAGRAMET

Block Diagram është paneli i programamit vizuel, dhe ofron mundësinë e krijimit të bllok

diagrameve që paraqesin kodin burimor grafik (Fig.1.6b). Përdoret për të paraqitur Vi-të në bllok

diagrame. Do ta paraqesim në anën e djathtë të ekranit. Të gjitha objektet të vendosura në Front

panel do të paraqiten edhe në panelin e Block Diagram. Objektet e krijuara në Front Panel, do të

paraqiten në Block Diagram në formë të simboleve të terminaleve, në anën e majtë të ekranit. Një

terminal i Block Diagram nuk mund të shlyhet nëse nuk shlyhet edhe nga Front Panel.

Objektet e Block Diagramit përfshijnë terminale, SubVI, funksione, konstanta, struktura

dhe vija lidhëse apo kabllo (wires).

a) b)

Fig.1.6. Paleta e funksioneve në Block Diagram (a) dhe dritarja e block diagrameve (b)

Të dhënat që përpunohen lëvizen me anë të vijave lidhëse që transferojnë të dhëna në mes

të objekteve të block diagramit.(fig.1.6.b.)

Së bashku kontrollat, indikatorët, strukturat dhe funksionet referohen si nyje (Nodes).

Nyjet janë të lidhura me njëra tjetrën duke përdorur vijat apo kabllot lidhëse (wires) – p.sh. dy

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

7

kontrolla dhe një indikator mund të lidhen me vija me një funksion shtesë ashtu që indikatori

paraqet shumën e dy kontrollave.

Krijimi i objekteve në Block Diagram bëhet nga menyja Functions (Fig.1.6.a), e cila i

përmban të gjitha ato terminale, funksione, konstante, struktura të nevojshme për krijimin e

programit funksional, dhe pastaj me anë të miut mund të realizohen lidhjet me tyre me anë të

vijave (wires). Përmbanë të gjitha elementet e nevojshme për të realizuar elementet e programimit

në LabVIEW (Fig.1.6)

- Paneli i lidhjeve – Connection Pane përdoret në subVi për të pasuar parametrat nga dhe deri te

subVi-të (Fig.1.6.c). Sub Vi janë VI që janë nënprograme të një program tjetër apo të një VI.

Fig. 1.6.c. Paneli i lidhjeve – Connection Pane në LabVIEW dhe menyja e veglave

- Paleta Tools - është pjesë të rëndësishme të programit dhe ndihmesë në realizimin e formatit,

madhësia e shkronjave, pozicionim të objekteve, ngjyra, testim të programit, etj. Hapet nga menyja

VIEW->Tools Palette.

- Function Palete janë grupe të funksioneve që përdoren për ndërtimin e Blok diagrameve, dhe

përmbajnë të gjitha elementet e nevojshme për të realizuar elementet e programimit në LabVIEW

(Fig.1.6.b).

Detyrë 1. Të realizohet detyra-programi në Lab VIEW për mbledhjen e dy numrave të plotë dhe të

paraqitet rezultati i tyre.

Zgjidhje: Për realizimin e detyrës hapim një Vi të re në File->New Vi dhe fillojmë me krijimin e

detyrës. Paraprakisht me shkurtesën Ctrl+T ndajmë Front Panel dhe Block Diagram në dy gjysma

që lehtëson krijimin e modelit të detyrës (Fig.1.7). Fillojmë në Front Panel.

Fig.1.7. Hapja e një Vi të re

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

8

Fig.1.8. Paleta Controls në Front Panel dhe nënpaleta Numeric

Klikojmë me miun e djathtë dhe hapet Paleta e kontrollit -Controls. Nga paleta zgjedhim

modulin Numeric, dhe pastaj zgjedhim ikonën për krijimin e kontrollës për numrin e parë që do

mblidhet (Fig.1.8). Zgjedhim modulin Numeric Control me anë të miut. Pastaj shkojmë me miun

kudo diku në Front Panel dhe klikojmë duke e vendosur në atë pozicion. (Fig.1.9a). Fitojmë

kontrllën e parë që ka pamjen si në Fig.1.9, që paraqet një kontrollë me të dhënë numerik, ku e

dhëna fillestare është 0. Emri i kësaj kontrolle është Numeric. Nëse dojmë të ndërrojmë emërtimin,

apo ndonjë parametër tjetër të kësaj kontrolle, mbi të klikojmë me miun e djathtë, dhe në mënynë e

hapur zgjedhim Properties (Fig.1.b). Fitojmë dritaren e vetive të kontrollës, si në Fig.1.9.c

a) b) c)

Fig.1.9. Krijimi i kontrollës numerike dhe ndryshimi i vetive të kontrollës

Në dritaren nga Fig.1.9c, ndryshojmë në fushën nën Label ku shkruan Numeric, e shlyejmë

dhe e shkruajmë Numri i parë. Pas këtij ndryshimi fitojmë pamjen e detyrës si në Fig.1.10.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

9

Ndryshimi i emërtimit mund të bëhet edhe direkt mbi kontrollën në Front Panel me klikim me anë

të miut.

Fig.1.10. Ndryshimi i emërtimit të kontrollës

Kontrollat apo elementët tjerë në Front Panel apo Bllock Diagram mund të lëvizen kudo në

hapësirën e punës së tyre duke i kapur me anë të miut dhe zhvendosen në pozitën tjetër të

dëshiruar. Kjo bëhet zakonisht për të krijuasr distancë të qartë në mes të elementeve dhe moduleve

të detyrës. Këto elemente mund edhe të zgjerohen, si dhe shkronjave të emërtimit mund të

ndërrohet madhësia në menynë e simboleve, në 13pt Application Font.

Fig.1.11. Pamja e detyrës pas krijimit të kontrollës së numrit të parë që do të mblidhet.

Nga Fig.1.11, vërehet se pas krijimit të kontrollës numerike Numri i parë, në anën e

djathtë, në Block Diagram në të njejtën kohë është krijuar moduli programatik apo terminali i

kontrollit me të njejtin emër Numri i parë.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

10

Pas krijimit të kontrollës së numrit të parë, vazhdohet me krijimin e elementëve tjerë të

detyrës. Krijohet numri i dytë mbledhës, duke zgjedhur llojin e njejtë të kontrollit, dhe e shënojmë

me Numri i dytë.

Fig.1.12. Pamja e krijimit të elementëve kryesor të detyrës

Pas krijimit të kontrollës së dytë, krijohet elementi i paraqitjes së rezultatit të shumës së dy

numrave, që e quajmë Indicator. Nga Paleta Controls në Front Panel dhe nënpaleta Numeric

zgjedhim Numeric Indicator dhe e vendosim në Front Panel. E emërojmë me emrin Rezultati.

(Fig.1.12)

Fig.1.13. Paleta Functions dhe nënmenyja Numeric

Deri në këtë fazë, detyra ka vetëm elementët përbërës, por nuk ka funksionalitet dhe nuk

do të japë rezultat. Nëse dëshiroj të ekzekutojmë detyrën, p.sh. shkruajmë në Numri i parë një

numër të çfarëdoshëm – 6 ndërsa në Numri i dytë – 8, dhe pastaj ekzekutojmë me ikonën më lartë

në menynë e ikonave që paraqet komandën ekzekutive Run, atëherë nuk do të kemi kurrfarë

Objektet në Front Panel Terminalet në Block Diagram

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

11

rezultati në Indikatorin Rezultati. Kjo ndodh për arsye se programi dhe detyra – Vi nuk dijnë se

çfarë të bëjnë- se numrat duhet mbledhur. Kjo procedurë duhet bërë në Block Diagram ku do të

realizohet procedura e lidhjes së moduleve për paraqitjen e rezultatit të mbledhjes së numrave.

Në Block Diagram (në të djathtë), krijojmë distancë modulet ekzistuese prej njëri tjetrit dhe

vendosim në mes tyre një element të ri – operatorin e mbledhjes. Ky operator zgjidhet nga Paleta

Functions, dhe në të zgjedhim Numeric, që hap nënpaletën Numeric, ku paraqiten një numër i

madh i moduleve me operatorë matematikor (Fig.1.13). Zgjedhim operatorin trekëndësh Add ose +

që paraqet operatorin e mbledhjes, dhe këtë e vendosim në mes të simboleve në Block Diagram

(Fig.1.14a).

a) b) c)

Fig.1.14. Veprimet e lidhjes së moduleve me operatorin e mbledhjes – Add

Nëse shiqojmë me vëmendje, nëse kalojmë me anë të miut mbi operatorin Add ose + do të

vërehet se në anën e majtë ka dy pika, që paraqesin portet hyrëse të të dhënave apo informatave,

ndërsa në anën e djathtë kemi një pikë, që paraqet portin dalës të informatës (Fig.1.14.b). Modulet

e kontrollave numri i parë dhe numri i dytë kanë vetëm nga një port dalës, ndërsa moduli indikator

Rezultati ka vetëm një port hyrës.

Me qëllim të realizimit të procesit të mbledhjes, bëhet lidhja me anë të vijave të këtyre

porteve. Me anë të miut, nga porti dalës i numri i parë vazhdojmë deri te njëri port hyrës i

operatorit +. Në këtë rast shigjeta e miut do të merr formën e kalemit të telit, dhe do të krijojë vijën

apo telin (wire) e lidhjes në mes të dy porteve (Fig.1.14.c). Të njejtin veprim e bëjmë edhe nga

kontrolla Numri i dytë. (Fig.1.15)

Më tutje, portin dalës të operatorit +, në të djathtë e lidhim me portin hyrës të indikatorit

Rezultati dhe fitojmë modelin si në Fig.1.15.

Fig. 1.15. Lidhja e elementëve me operatorin + me anë të vijave lidhëse

Pas kryerjes së këtyre veprimeve kemi realizuar detyrën programatike, dmth kemi krijuar

blok diagramin, dhe do të fitojmë rezultatin e dëshiruar. Për të vërtetuar se detyrën e kemi në

rregull, kthehemi në Front Panel, dhe shkruajmë në kontrolla dy numrat që do mbledhim – në

njërin 6 dhe në tjetrin 8 (Fig.1.16) dhe do të fitojmë rezultatin 14 në indikatorin Rezultati.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

12

Fig.1.16.Verifikimi i detyrës në Front Panel

Programi LabVIEW ofron edhe shiqimin e rrjedhjes së detyrës dhe verifikim të rezultatit

në Block Diagram duke zgjedhur ikonën që do tregojë rrjedhën e informatave ose ekzekutimi

i detyrës në diagram, dhe pastaj klikojmë ikonën Run.

Pas realizimit të detyrës, ruajmë fajllin në File->Save dhe e shenojmë mbledhja e

numrave.vi. Nëse dojmë të hapim fajllin e krijuar, në LabVIEW zgjedhim File->Open dhe

zgjedhim fajllin që dojmë të hapim.

Nëse të njejtën vi dëshirojmë ta ruajmë në emër tjetër, p.sh. për të plotësuar apo ndryshuar

detyrën ekzistuese, atëherë atë e bëjmë në File->Save As dhe paraqitet dritarja si në vijim

(Fig.1.16a). Zgjedhim opcionin Substitute Copy for Original, që krijon kopje të re, ndërsa e mbyll

fajllin original. Pastaj bëjmë emërimin e fajllit të ri.

Fig.1.16.a. Krijimi i kopjes sw fajllit origjinal

1.3. SHIRITI I VEGLAVE (TOOLBAR)

Shiriti i veglave paraqet shiritin e ekzekutimit dhe monitorimit të detyrës (Fig.1.17 dhe Fig.1.18)).

Shiriti i veglave ekziston edhe në Hapësirën Front Panel dhe në Block Diagram.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

13

Fig.1.17. Shiriti i veglave në Front Panel

Kuptimi i ikonave në shiritin e veglave të Front Panel është:

- Run – Ekzekutimi i detyrës. Realizohet edhe me Operate->Run, ose Ctrl+R

- Run – Pamja e ikonës Run është e ndërprerë. Kjo tregon se detyra ka gabim dhe nuk mund të

ekzekutohet.

- Run Continuously – Ekzekutimi i pandërprerë i detyrës,

- Abort Execution – Ndalimi i ekzekutimit ose Ctrl+.

- Pause – Pauzimi i ekzekutimit të detyrës

- Aplikimi i madhësisë, stilit, ngjyrës dhe llojit të shkronjave në objektet e

Front Panel

- Align Objects – Renditja e objekteve, elementeve apo moduleve në Front Panel

- Distribute Objects – Distribuimi i objekteve, elementeve apo moduleve në hapësirën e punës në

Fron Panel

- Resize Objects – Ndryshimi i madhësisë së objekteve dhe elementeve në Front Panel

- Reorder – Rirenditja e madhësisë së objekteve dhe elementeve në Front panel

Kuptimi i ikonave në shiritin e veglave në Block Diagram është:

Fig.1.18. Shiriti i veglave në Front Panel

- Higlight Execution – Paraqitja e rrjedhës së ekzekutimit të detyrës

- Retain wire values – Identifikimi i vlerave në vijave lidhëse

- Start Single Stepping – Në rast të detyrave me unaza, apo me përsëritje interaktive,

mundësojnë realizimi e detyrës në hapa një nga një.

Detyrë për ushtrime 2. Të krijohen detyra veqmas për realizimin e zbritjes, shumëzimit, pjestimit

të 2 numrave në LabVIEW.

Detyrë për ushtrime 3. Të krijohet detyra-programi për realizimin e mbledhjes së 3 numrave në

LabVIEW – c = a+b+c. Të krijohen detyra për llogaritjen c = a+b-c .

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

14

Detyrë 4. Është dhënë vlera numerike x. Të llogaritet vlera 3·x+4 në LabVIEW.

Hapim një fajll VI të ri. Në Front Panel krijojmë një kontrollë dhe e emërojmë me Vlera x.

Pastaj krijojmë një element indikator dhe e emërojmë me Rezultati. Për të titulluar detyrën, mbi dy

elementet e krijuara klikojmë dy herë me anë të miut dhe shkruajmë titullin e dëshiruara, pastaj

rrisim shkronjat dhe aplikojmë stilin e tekstit si në Fig.1.19. Në Block Diagram duhet të krijojmë

diagramin që llogarit shprehjen 3·x+4.

Së pari krijojmë operatorin e shumëzimit për të kalkuluar 3·x. Zgjedhim nga menynë

operatorin e shumëzimit Function->Numeric->Multiply që paraqitet me simbolin x, dhe e

vendosim në Block Diagram në mes të dy terminaleve Vlera x dhe Rezultati (Fig.1.20). E lidhim

portin dalës të Vlera x me njërin port hyrës të operatorit x.

Fig.1.19. Krijimi në Front Panel i detyrës Fig.1.20. Krijimi fillestar i Block Diagramit

Më tutje duhet të krijojmë shumëzimin e vlerës x me numrin 3, që është konstantë.

Krijojmë vlerën konstantë duke u afruar në portin e dytë hyrës të operatorit x (Fig.1.21).

Fig.1.21. Krijimi i konstantës 3 në portin e dytë të operatorit për shumëzim

Krijojmë operatorin e mbledhjes + për të mbledhur rezultatin e 3·x me 4. E vendosim pas

operatorit x dhe para indikatorit Rezultati. Pastaj e lidhim portin dalës të operatorit x me njërin

port hyrës të operatorit +. Në portin tjetër hyrës të operatorit + krijojmë vlerën konstante 4, sikurse

u krijua vlera konstante 3 më lartë. Në fund, portin dalës të operatorit + e lidhim me portin hyrës të

indikatorit Rezultati. (Fig.1.22).

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

15

Fig.1.22. Realizimi i Block Diagramit të detyrës së dhënë për llogaritjen e shprehjes 3·x+4

Kthehemi në të majtë në Front Panel për të testuar detyrën – Fig.1.23, duke dhënë vlerat

për x dhe për të shiquar rezultatin. Në këtë rast për vlerën x = 4, rezultati është 16.

Fig.1.23. Testimi i detyrës në Front Panel

Detyra për ushtrime 5. Të krijohet detyra-programi në Lab VIEW për llogaritjen e shprehjes e =

(a+b)-c·d ; Të krijohet detyra për llogaritjen e shprehjes (x+1)/3-7, ku vlera e x është e dhënë në

detyrë.

Detyra 6. Të krijohet detyra-programi në Lab VIEW për llogaritjen e shprehjes x2-10·x+2, ku vlera

e x është e dhënë në detyrë

Në këtë detyrë do të krijohet në Block Diagram elementi nyje, dhe operatori x2 për të

llogaritur shprehjen e dhënë x2-10·x+2. (Fig.1.24). Operatori x

2 merret nga nënmenyja Function-

>Numeric->Square. Pas kontrollës Vlera x, është krijuar ndarja në dy degëzime me një nyje, pasi

x paraqitet në dy pjesë të ekuacionit: x2 dhe 10·x.

Fig.1.24. Front Panel dhe Bllok Diagrami për llogaritjen e shprehjes x2-10·x+2

Detyrë për ushtrime 7. Të krijohet detyra-programi në Lab VIEW për llogaritjen e shprehjes 2·x3-

10, ku vlera e x është e dhënë në detyrë

Detyrë për ushtrime 8. Të krijohet detyra-programi për realizimin e njëkohshëm të mbledhjes,

shumëzimit dhe pjestimit të 2 numrave në të njejtin vi në LabVIEW.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

16

Detyrë për ushtrime 9. Të krijohet detyra-programi në Lab VIEW për llogaritjen e shprehjes

, ku vlera e x është e dhënë në detyrë.

Detyrë për ushtrime 10. Të krijohet detyra-programi në Lab VIEW për llogaritjen e shprehjes 2·x2-

5·ln(x)+3·π, ku vlera e x është e dhënë në detyrë.

Detyrë për ushtrime 11. Të krijohet detyra-programi në Lab VIEW për konvertimin e njësisë së

temperaturës nga grade Fahrenheit ºF në gradë ºC. Formula e konvertimit është (°F - 32) x 5/9 =

°C

1.4. VEPRIMET E MODIFIKIMIT TË OBJEKTEVE DHE TERMINALEVE DHE

VERIFIKIMI

- Në LabView mund të bëhet edhe modifikimi i objekteve dhe terminaleve të detyrës me

qëllim të rregullimit, si: shlyerja, kopjimi, lëvizja, rritja, zvogëlimi, etj. Për shumicën e veprimeve,

LabView i ka veprimet e njejta si programet e tjera të Sistemit Operativ Windows.

- Selektimi i objekteve – Realizohet me anë të miut, duke klikuar objektin, apo duke zgjedhur

disa objekte përnjëherë. Selektimi i objekteve mund të bëhet një nga një duke klikuar miun +

tastier SHIFT.

Fig. 1.25. Selektimi i një objekti

Fig.1.26. Selektimi i disa objekteve njëkohësisht Fig.1.27. Vijë e lidhur dhe e palidhur

- Shlyerja e objekteve – Bëhet njejtë si në programet e Windows, duke selektuar objektin dhe

duke klikuar Delete. Gjithashtu mund të shlyhen edhe vijat e lidhura apo të palidhura

(Fig.1.27).

- Kopjimi i objekteve - Bëhet njejtë si në programet e Windows, duke selektuar objektin dhe duke

zgjedhur Copy (Ctrl+c), e pastaj Paste (Ctrl+V). Kjo mundëson duplikimin e objekteve në të

njejtin vi, por edhe në vi tjetër të hapur.

- Lëvizja e objekteve – Bëhet duke selektuar objektet dhe duke i çvendosur nëpër hapësirën e

punës. Kujdes! – Nuk bën të lëvizen objektet nga Front Panel në Block Diagram apo

anasjelltas.

- Rritja dhe zvogëlimi i objekteve – Realizohet duke klikuar në skaje të objektit dhe duke e

tërhequr me anë të miut. Rritja e objektit bëhet për arsye të ndryshme, por kryesisht për pamjen

e numrave të shkallëzimit.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

17

- Ngjyrosja e objekteve – Mund të ndërrohen ngjyrat e objekteve, por jo të gjithëve. Nuk mund të

ndryshohen ngjyrat e terminaleve në Block Diagram. Objektet që mund tu ndërrohen ngjyrat

janë zakonisht në Front Panel. Ngjyrat ndërrohen duke selektuar objektin dhe pastaj me miun e

djathtë zgjedhim Properties. Në dritaren që paraqitet, në Appearance, zgjedhim Fill dhe pastaj

caktojmë ngjyrën e dëshiruar në rreshtat e ngjyrave. Në Fig.1.28, është treguar ndryshimi i

ngjyrës së objektit Slider.

Fig.1.28. Ndryshimi i ngjyrës së objektit Slider

- Vijat e ndërprera – Paraqiten në rastin kur vijat nuk kanë fillim e kanë fund (Fig.1.27), apo

kanë lidhur dy objekte që nuk janë të të dhënave të njejta (P.sh. objekti Numeric me objekt

tekstual – String). Në këtë rast duhet përmirësuar lidhjen në mënyrë që vija e lidhjes të jetë e

plotë, pasi detyra nuk është në rregull, dhe program nuk e proceson.

Fig. 1.29. Lista e gabimeve – Error List

- Verifikimi i gabimeve në detyrë – Në rast se ikona Run paraqitet e ndërprerë , atëherë

kemi gabim, dhe ai gabim duhet verifikuar. Kjo arrihet duke klikuar në ikonën e ndëprerë, ku

pastaj paraqitet dritarja e përshkrimit të gabimit. Pas leximit të gabimit duhet të veprohet në

përmirësim të tij, pasi detyra nuk mund të vazhdohet dhe nuk do të ketë procesim të rezultateve

(Fig.1.29)

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

18

1.5. LLOJET E TË DHËNAVE NË LAB VIEW

Secili objekt apo modul në LabView është i ndonjë lloji të të dhënave të cilat përdoren për

tu përpunuar në një detyrë. Llojet kryesore të të dhënave me të cilat punohet në LabView janë:

- Të dhëna numerike

- Të dhëna logjike (Boolean)

- Të dhëna tekstuale (String)

- Të dhëna vector, matricë dhe Cluster

Fig.1.30. Detyra me llojet kryesore të të dhënave në LabView

Në fig.1.30, në një detyrë janë paraqitur të dhënat e ndryshme në një vi. Këto të dhëna kanë

edhe nëngrupet e tyre. Më të rëndësishmet janë të dhënat numerike. Në fajllin vi mëposhtë janë

krijuar dhe paraqitur llojet kryesore të të dhënave në LabView: Në detyrë janë krijuar të dhënat në formë të kontrollave dhe Indikatorëve që janë lidhur në anën e

djathtë në Block Diagram.

Fig.1.31. Caktimi i llojit të të dhënës numerike

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

19

- Lloji i parë i të dhënave me rend nga lartë është e dhëna e llojit Numeric, tipi i objektit

Control me emrin Konstantë-i plotë, që paraqet të dhënën numerike që është definuar me numër

konstant të plotë. Krijimi i kësaj të dhëne bëhet duke selektuar kontrollën Konstantë-i plotë dhe me

miun e djathtë zgjedhim Representation (Fig.1.31). Pastaj zgjedhet lloji i të dhënave nga grupi prej

15 të dhënave numerike. Zgjedhim I32 - Long signed integer. Në të gjitha llojet e programimit,

Integer do të thotë numër i plotë, pozitiv apo negative. Në anën e djathtë, në Block Diagram, lloji i

të dhënave Integer ka ngjyrë të kaltë, ndërsa nën të shkruan lloji I32. Në mënyrë të njejtë caktojmë

edhe rezultatin duke krijuar tipin Indicator me emrin Rezultati-i Plotë. Në Block Diagram lidhim

me vijën lidhëse kontrollën Konstantë – i plotë dhe indikatorin Rezultati-i plotë.

- Lloji i dytë i të dhënave me rend nga lartë është e dhëna e llojit Numeric, tipi i objektit

Control me emrin Konstantë-racional, që paraqet të dhënën numerike që është definuar me numër

racional. Krijimi i kësaj të dhëne bëhet duke selektuar kontrollën Konstantë-racional dhe me miun

e djathtë zgjedhim Representation (Fig.1.31). Pastaj zgjedhet lloji i të dhënave nga grupi prej 15 të

dhënave numerike. Zgjedhim DBL – Double Precision. Në anën e djathtë, lloji i të dhënave DBL

ka ngjyrë të verdhë, ndërsa nën të shkruan lloji DBL. Në mënyrë të njejtë caktojmë edhe rezultatin

duke krijuar tipin Indicator me emrin Rezultati-Racional. Në Block Diagram lidhim me vija

kontrollën Konstantë – i plotë dhe indikatorin Rezultati-i plotë.

Të dhënat Numerike kanë disa nëngrupe, të treguara në Tab.1:

Lloji i të dhënave

numerike

Hapësira në

disk në bit

Numri i përafërt

i shifrave

decimale

Rangu i përafërt

Single-precision, floating-

point

SGL

32 6

Numri minimal pozitiv: 1.40e–45

Numri maksimal pozitiv: 3.40e+38

Numri minimal negativ: –1.40e–45

Numri maksimal negativ: –3.40e+38

Double-precision, floating-

point

DBL

64 15

Numri minimal pozitiv: 4.94e–324

Numri maksimal pozitiv: 1.79e+308

Numri minimal negativ: –4.94e–324

Numri maksimal negativ: –1.79e+308

Extended-precision,

floating-point

EXT

128

Ndryshon nga 15

në 20 sipas

platformës

Numri minimal pozitiv: 6.48e–4966

Numri maksimal pozitiv: 1.19e+4932

Numri minimal negativ: –6.48e–4966

Numri maksimal negativ: –1.19e+4932

Complex single-precision,

floating-point

CSG

64 6 Njejtë si single-precision, floating-point për

secilën pjesë reale dhe imagjinare

Complex double-precision,

floating-point

CDB

128 15 Njejtë si double-precision, floating-point për

secilën pjesë reale dhe imagjinare

Complex extended-

precision, floating-point

CXT

256

Ndryshon nga 15

në 20 sipas

platformës

Njejtë si extended-precision, floating-point për

secilën pjesë reale dhe imagjinare

Fixed-point

FXP 64, ose 72

Ndryshon në

varësi nga

konfiguracioni i

userëve

Ndryshon në varësi nga konfiguracioni i userëve

Byte signed integer 8 2 –128 deri 127

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

20

I8

Word signed integer

I16 16 4 –32,768 deri 32,767

Long signed integer

I32 32 9 –2,147,483,648 deri 2,147,483,647

Quad signed integer I64 64 18 –1e19 deri 1e19

Byte unsigned integer U8 8 2 0 deri 255

Word unsigned integer U16 16 4 0 deri 65,535

Long unsigned integer U32 32 9 0 deri 4,294,967,295

Quad unsigned integer

U64 64 19 0 deri 2e19

128-bit time stamp 128 19

Koha minimale: 01/01/1600 00:00:00

UTC Koha maksimale: 01/01/3001 00:00:00 UTC

Grupi i të dhënave numerike - Numeric, në Paletën Controls të Front Panel ka 17 objekte

të llojeve të ndryshme: Numeric Control, Numeric Indicator, Time Stamp, Vertical Fill Slider,

Vertical Pointer, etj. Këto do të tregohen në detryat e ardhshme (Fig.1.32.a). Në Paletën Functions

të Block Diagram, ky grup i të dhënave e ka paletën si në Fig.1.32.b.

a) b)

Fig.1.32.Grupi Numeric në Front panel dhe në Block Diagram

- E dhëna e tretë me radhë nga Fig.1.30 është e dhëna logjike Boolean, që në kuptimin e

programimit ka kuptimin Po/Jo, Aktiv/joaktiv, saktë/pasaktë, (True/False, On/Off). E dhëna është

krijuar në formë të kontrollës dhe indikatorit. Për të krijuar kontrollën Boolean të formës së

ndërprerësit si në Fig.1.30, në Paletën e kontrollit zgjedhim Boolean-Vertical Toggle Sëitch ndërsa

për indikatorë zgjedhim Boolean->Round Led. Në Block Diagram bëjmë lidhjen e dy terminaleve

(Fig.1.33). Veprimi i kësaj të dhëne është që nëse ndryshojmë pozitën e ndërprerësit, në këtë rast

lart-poshtë, do të ndryshojë edhe ngjyra e Led llampës nga gjelbër mbyllur në gjelbër qelët.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

21

Fig.1.33. Krijimi dhe lidhja e të dhënës logjike Boolean

Nga Fig.1.33, të dhënat logjike në Paletën Controls->Boolean kanë 13 objekte të

ndryshme: Push Button, Rocker, Vert Rocker, Rouned LED, Horizontal Toggle, etj. . Të dhënat

logjike në Block Diagram kanë shumë operatorë, që janë paraqitur në Fig.1.34.

Fig.1.34. Grupi i Objekteve të të dhënave logjike të llojit Boolean

- E dhëna e katërt me radhë nga Fig.1.30 është e dhëna për krijim të madhësive tekstuale në

hyrje, dhe tregimi i rezulatit tekstual. Kjo e dhënë quhet String. Për të krijuar të dhëna tekstuale

hyrëse zgjedhim në Paletën e kontrollit String &Path -> String Control dhe krijojmë kontrollën që

e quajmë String2. Në të njejtën mënyrë e krijojmë edhe indikatorin e rezultatit tekstual String

&Path -> String Indicator. Në Block Diagram bëjmë lidhjen e dy terminaleve (Fig.1.35).

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

22

Fig.1.35. Krijimi i të dhënave tekstuale String

Nga Fig.1.35, të dhënat String në Paletën Controls->String&Path kanë 5 objekte të

ndryshme: String Control. String Indicator, Combo Box, etj. Grupi i të dhënave String, në Paletën

Functions të Block Diagram, e kanë nënpaletën si në Fig.1.36.

Fig.1.36. Grupi i Objekteve të të dhënave të llojit String

- E dhëna e pestë me radhë nga Fig.1.30 është e dhëna për krijim të të dhënave tabelare, në

një rresht apo shtyllë që e quajmë Arrays. Në terminologjinë e programimit është i njohur edhe me

fjalën vektor. Për të krijuar këtë të dhënë tabelare, zgjedhim në Paletën e kontrollit Array,Matrix &

Cluster -> Array dhe krijojmë kontrollën që e quajmë Array (Fig.1.37.a). Në këtë kontrollë

vendosim kontrolla numerike duke i zgjedhur prap nga Paleta e kontrollit. Numri i tyre mund të

jetë sipas dëshirës, dhe kjo realizohet duke i tërhequr me anë të miut. Array tabela mund të jetë një

rresht vertikal apo një rresht horizontal (Fig.1.37.b).

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

23

a) b) c)

Fig.1.37. Krijimi i të dhënës Array.

Nga Fig.1.37, të dhënat Array në Paletën Controls-> Array,Matrix & Cluster kanë 6

objekte të ndryshme: Array, Cluster, Read Matric.ctl, etj. Por, në Paletën Functions të Block

Diagram, këto të dhëna janë shumë të përbëra me terminale, dhe janë të ndara në tri grupe. Të

dhënat Array (dhe Matrix) në Block Diagram e kanë nënpaletën si në Fig.1.38. Për të krijuar

indikatorin e të dhënës Array, duhet të krijojmë një kontrollë dhe pastaj atë ta konvertojmë në

indicator në Block Diagram. Indikatorin e krijuar e kemi quajtur Array 2 (Fig.1.34.c). Në fund në

Block Diagram bëjmë lidhjen e dy terminaleve të krijuara.

Fig.1.38. Grupi i Objekteve të të dhënave të llojit Array dhe Matrix

- E dhënë e ngjashme me Array është e dhëna Matrix, që mundëson krijimin e të dhënave

në formë matricore në LabView të llojit të njejtë. Cluster gjithashtu mundëson krijimin e të

dhënave në formë matricore, por të dhënat mund të jenë të llojeve të ndryshme. Të dhënat Cluster

në Block Diagram e kanë nënpaletën si në Fig.1.39.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

24

Fig.1.39. Grupi i Objekteve të të dhënave të llojit Cluster (Cluster, Class & Variant)

1.6. OBJEKTET TJERË TË PALETAVE

1.6.1. Objektet tjerë të Paletës Controls në Front Panel

Në kuadër të Front Panel, paraqiten edhe grupi tjera që ndërlidhen me të dhënat e

paraqitura më lartë dhe në realizimin e detyrave të llojeve të ndryshme. Këto janë:

- Kontrollat List, Table & Tree – Paraqet menynë e krijimit të tabelave dhe listave në Front

Panel.

- Listbox është objekti me një kolonë që paraqet grupe të dhënave të cilat mund të zgjedhen

nga një. Multicolumn Listbox mund të ketë më shumë kolona që mund të paraqesin më shumë

informata për secilën të dhënë, si madhësia e të dhëns, data kur është krijuar, etj.

- Tables – paraqet të dhënat në formë tabelare ku secila qelizë e tabelës është një string, dhe

secila qelizë gjendet në një kolonë dhe në një rresht. Nga kjo rrjedh se tabela paraqet një të dhënë

2D array të të dhënave string.

- Tree Control – ofron mundësinë e paraqitjes së listës së gjërave në formë hierarkike – të

degëzuar.

-

Fig.1.40. Objektet e Grupit Listbox, Table & Tree

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

25

Fig.1.40. Grupi i Objekteve List, Table & Tree

Fig.1.41. Grupi i Grafeve dhe paraqitjes grafike – Graph

- Kontrollat Graph – Ofron mundësitë e paraqitjes grafike të të dhënave numerike në forma

të ndryshme.

- Waveform Chart dhe Waveform Graph që ofrojnë paraqitjen e të dhënave në formë të

lakoreve. (Fig.1.41). Waveform Chart paraqet të dhënat një nga një, sipas lakores së dhënë.

Waveform Graph paraqet tërë grafikun e funskionit në një interval të dhënë.

- XY Graph mundëson paraqitjen grafike të funksioneve y=f(x).

- Mixed signal Graph mund të paraqesin të dhëna analoge dhe digjitale, dhe pranon të gjitha

të dhënat nga Waveform Graph, XY Graph, dhe Waveform digital.

- Intensity chart – mundëson paraqitjen grafike të të dhënave në formë të intensitetit të

shpërndarjes së të dhënave.

- Digital Waveform Graph – është grafi që mundëson paraqitjen e të dhënave digjitale,

veqanërisht të të dhënave me të cilat punojmë në diagrame kohore ose analizues logjik.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

26

Waveform chart Waveform Graph XY Graph

Digital Waveform Graph Intensity Chart Mixed Signal

Fig.1.42. Disa lloje të paraqitjeve në grafik

Fig.1.43. Disa lloje të 3D Grafeve

3D Graph - mundëson vizualizimin e të dhënave tredimensionale dhe mundëson përshtatjen e

paraqitjes së të dhënave. Lab View ofron shumë forma të 3D grafeve - Scatter, Stem, Comet,

Surface, Contour Mesh, Waterfall, Ribbon, Bar, Pie, 3D Parametric, 3D Surface, 3D Line.

- Kontrollat Ring & Enum – Paraqet një grup të kontrolleve dhe indikatorëve që ofrojnë

mundësinë e krijimit të listës së të dhënave string në të cilën mund të qaset në mënyrë ciklike.

Ring Controls – Janë objekte numerike që lidhin vlerat numerike me string ose me fotografi.

Paraqiten si meny rënëse në të cilat përdoruesi mund të lëvizë dhe të zgjedh një të dhënë. Enum

controls – janë lloje të objekteve që i ofrojnë përdoruesit listën e të dhënave të cilën mund ta

zgjedhin duke lëviz nëpër kontrollë.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

27

Fig.1.42. Grupi Ring&Enum

- Kontrollat Containers – Ofron mundësinë e grupimit të kontrolleve dhe indikatorëve ose

të paraqesin Front panel të një tjetër VI në Front panel të VI aktuale. Mund të përdoren edhe për të

paraqitur .NET dhe ActiveX objekte në Front Panel.

Fig.1.42. Grupi Containers Fig.1.43. Grupi I/O

- Kontrollat I/O – Paraqet menynë e krijimit të kontrollave dhe indikatorëve për pajisjet

hardverike Input/Output (I/O) të komunikimit. Mundëson krijimin e emrave të DAQ kanaleve,

VISA emra të resurseve. Paraqet paletën që mundëson krijimin e VI për komunikim me një

instrument ose DAQ device (Data Acquisiton Device)

- Kontrollat Variant&Class – Paraqet menynë e krijimit të kontrollave dhe indikatorëve për

të ndërvepruar me të dhënat variant dhe class. Klasët e LabView (Class) definojnë të dhëna të

asocuara me një object, si dhe metodat për të definuar veprimet që mund të realizohen në të

dhënat. Llojet e të dhënave class janë: Public, Community, Protected, Private, Not specified .

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

28

Fig.1.43. Grupi Variant&Class

- Kontrollat Decorations – Paraqet menynë për të ndarë objektet në Front Panel me katror,

ramë, trekëndësha, drejtëza, apo shigjeta. Këto objekte janë vetëm për qëllime dekorimi dhe nuk

paraqesin të dhëna as nuk ndërveprojnë me të dhëna.

Fig.1.44. Grupi Decorations

- Kontrollat Refnum – Ofron mundësinë e krijimit të kontrolleve me numra referees për të

punuar me fajll, direktoriume, pajisje dhe lidhje në rrjetë. Përdoret edhe për të dërguar objekte nga

Frnt Panel në SubVi. Numri i referencës, ose refnum, paraqet një identifikim unik për një object, si

file, pajisje ose lidhje në rrjetë. Kur të hapet një file, pajisje ose lidhje në rrjetë, LabView krijon

një refnum të asociuar me atë file, pajisje apo lidhje në rrjetë.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

29

Fig.1.44. Grupi Refnum

Objektet tjera të paletës Control si Silver, System, Classic, Express, Control Design &

Simulation etj. janë forma që përmbajnë të gjitha kontrollat e përmendura më lartë, por të

rregulluara dhe të përshtatura (Fig.1.44).

1.6.2. Objektet tjerë të Paletës Functions në Block Diagram

Në kuadër të Block Diagram, paraqiten edhe grupe tjera të paletave në paletën Functions.

Këto fillojnë me grupin e paletave të programimit - Programming:

- Grupi i kontrollave Structures – Paraqet grupin e parë dhe kryesor të strukturave për krijimin e

VI të ndryshme. Ky grup i terminaleve përdorë strukturat si For Loop (unaza For) , Ëhile Loop

(Unaza Ëhile), Timed Structure (Strukturë me kohëzgjetje), Case Structure, Event Structure, In

Place in/Out element, Formula Node, etj., që do ti përdorim shumë gjatë zgjedhjes së detyrave.

Fig. 1.45. Funksionet Structures

- Funksionet Comparision - Paraqet nënmenynë e relacioneve logjike dhe operatorëve të

krahasimit. Kjo nënmeny mund të përdoret me disa lloje të të dhënave sipas nevojës. Elementet e

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

30

kësaj nënpalete janë: Equal? (Baraz?), Not Equal? (Jo baraz), Greater? (Më i madh?), Less (Më i

vogël?), Greater or Equal (Më i madh ose Baraz?), Less or Equal (Më i vogël ose Baraz?), etj.

Fig.1.45. Funksionet e operatorëve relacional - Comparision

- Funksionet Timing – Mundëson manipulimin e shpejtësisë me të cilën një operacion

ekzekutohet, evidentimin e kohës së kaluar dhe marrjen e informatave të të dhënave nga ora e

kompjuterit.

Fig.1.46. Funksionet Timing

- Funksionet Dialog & User Interface – Ofron funksionet për të krijuar objekte të dialogur

(Dialog Boxes) për të informuar përdoruesit me instruksione, mesazhe, lajmërime për gabimet, etj.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

31

Fig.1.47. Funksionet Dialog & User Interface dhe Funksionet I/O

- Funksionet I/O – Mundëson përdorimin e VI Fajllave të tipit I/O dhe funksionet përkatëse për të

hapur, mbullur, lexuar nga, dhe shkruar në file, krijim i direktoriumeve dhe file që specifikohen në

kontrollin e vendndodhjes së file, marrje e informatave nga direktoriumet; dhe shkruarje e string,

numrave, array dhe klasterëve (Clusters) në file.

Fig.1.48. Funksionet Waveform dhe Application Control

- Funksionet Waveform – Mundëson përdorimin e VI të llojit Waveform dhe funksioneve

përkatëse për të krijuar waveforms (forma të lakoreve të valëzuara) që përfshijnë vlerat ëaveforms,

informata për kanalet, informatat për kohën, dhe për të krijuar dhe përfituar atributet e Waveform

dhe komponenteve të tyre.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

32

- Funksionet Application Control - përdorimi i VI të llojit Application Control dhe funksioneve

përkatëse për të kontrolluar VI-të nëmënyrë programatike dhe aplikacionet e LabView në

kompjuter local dhe në rjetë. Këto VI dhe funksione mund të përdoren për të konfiguruar shumë

Vi në të njejtën kohë.

- Funksionet Synchronization - Mundëson përdorimin e VI të sinkronizimit dhe funksioneve

përkatëse për të sinkronizuar detyrat që ekzekutohen paralelisht dhe për të përcjellur të dhënat në

mes të detyrave paralele.

Fig.1.49. Funksionet Synchronization dhe Graphics & Sound

- Funksionet Graphics & Sound - Mundëson përdorimin e VI të sinkronizimit dhe funksioneve

përkatëse për të krijuar display të çfarëdoshëm, importim dhe eksportim të të dhënave nga file

grafik, dhe për të ekzekutuar audio.

Fig.1.50. Funksionet Report Generation dhe Measurement I/O

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

33

- Funksionet Report Generation - Përdorimi i VI për gjenerim të raporteve për të krijuar dhe

manipuluar raporte të LAbView Aplikacioneve. Në këtë paletë mund të përdoren edhe Vi për të

insertuar tekst, tabela, grafe. (Fig.1.50)

- Funksionet Measurement I/O – Këtu fillojmë me paraqitjen e grupeve tjera të paletave në

kuadër të paletës Functions. Measurement I/O mundëson përdorimin e VI Fajllave të tipit I/O dhe

funksionet përkatëse për të ndërvepruar me NI-DAQmx pajisjet dhe pajisjet tjera Data Acquisition

Device (DAQ). Këto paleta paraqesin VI dhe funksionet për pajisjet hardverike të cilat instalohen.

Nëse driver të VI mungojnë në këtë paletë, atëherë duhet instaluar kata driver në LabView.

Funksioni më i rëndësishëm i kësaj palete është System Configuration ku bëhet konfigurimi i

lidhjes dhe komunikimit me pajisjet hardverike. (Fig.1.50)

- Funksionet Instrument I/O - Mundëson përdorimin e VI Fajllave të tipit I/O dhe funksionet

përkatëse për të ndërvepruar me pajisjet GPIB, pajisjet serike, modulare, PXI, dhe llojet tjera të

instrumenteve (Fig.1.1). Instrumentet e lidhura në kompjuter mund të gjenden me NI Instrument

Driver Finder dhe kërkohen duke shkuar në menynë Tools -> Instrumentation-> Find

Instrumentation Driver. Ndërsa Measurement & Automation Explorer (MAX) paraqet veglën për

menaxhimin e instrumenteve të lidhura në kompjuter. Qaset nga menyja Tools -> Measurement &

Automation Explorer. Nëse një driver i instrumenteve nuk është në listë të pajisjeve dhe driver,

atëherë mund të përdoret Create New Instrument Driver Project për të kërkuar instrumentin dhe

driver të tij. Nëse nuk mund të gjendet apo të krijohet driver i insrumentit, atëherë mund të

përdoret Instrment I/O Assistant për të komunikuar me instrumente.

Nëse driver të VI në këtë paletë mungojnë, atëherë duhet instaluar driverët përkatës në LabView.

Fig.1.51. Funksionet Instrument I/O dhe Vision and Motion

- Funksionet Vision and Motion – I referohet opcioneve të NI Vision, d.m.th opcionet për lidhje

me pajisjet e shiqimit dhe të regjistrimit të lëvizjes. Gjithashtu përfshinë edhe komunikimin me NI

Vision Acquisition Softëare, NI-Motion, NI SoftMotion file, etj. Nëse këto opcione nuk janë të

instaluara, atëherë në menu nuk paraqiten.

- Funksionet Mathematics - Paraqet funksionet kryesore matematikore që instaluara në

LabView, për të realizuar lloje të ndryshme të analizave matematikore. Gjithashtu mund të

ndërlidhen matjet e ndryshme në instrumente me algoritmet matematikore.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

34

Fig.1.51. Funksionet Mathematics dhe Signal Processing

Fig.1.51. Funksionet Data Communication dhe Connectivity

- Funksionet Signal Processing – Paraqet funksionet e procesimit të sinjaleve nga matjet

apo VI fajllat, ku përfshihen këto veprime me sinjalet – Gjenerim i sinjaleve (Signal Generation),

Digital Filtering (Filtrim digjital), Transforms (Transformime), Spectral (analiza spektrale), etj.

- Funksionet Data Communication – Paraqet VI të transmetimit të të dhënave dhe

funksionet përkatëse për të këmbyer të dhënat në mes të aplikacioneve. VI-të dhe funksionet në

këtë paletë mund të gjenerojnë SMTP email reply codes (SMTP - email kode të përgjigjes).

- Funksionet Connectivity - Paraqet VI të lidhjes të të dhënave dhe funksionet përkatëse

për të punuar me objektet .NET, ActiveX aplikacionet, pajisjet hyrëse, adresat e regjistrave të

procesorit, kontrollin e burimeve, web shërbimet, regjistrin e Windows, dhe softverë të tjerë, duke

përfshirë edhe produkte të NI – National Instruments.

- Funksionet Express - Paraqet VI Express dhe funksionet përkatëse për të krijuar detyra të

matjeve

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

35

Fig.1.51. Funksionet Express

1.7. PËRDORIMI I OBJEKTEVE TË NDRYSHME TË LAB VIEW NË DETYRA

Detyrë 12. Me anë të objekteve nga Menyja Control e Front Panel, në paletën Numeric

përdorim kontrollën Dial dhe indikatorin Tank, për të paraqitur konvertimi i vlerave të presionit

nga njësia Bar në Megapaskal. Faktori i konvertimit është 1 bar = 0.1 Mp.

Fig.1.52. Zgjedhja e detyrës 12

Në zgjidhjen e detyrës, me rastin e lëvizjes së kontrollës Dial, që paraqet vlerat në njësinë

Bar, realizohet ndryshimi i nivelit në indikatorin Tank që tregon nivelin në njësinë Mp. Nëse

dojmë që për çdo ndryshim në Dial të fitojmë nivel të ri në Tank pa e klikuar vazhdimisht ikonën

Run, zgjedhim paraprakisht ikonën Continuous. Vërehet se indikatori Tank ka shkallëzimin nga 0

– 10, ndërsa kontrolla Dial ka shkallëzimin 0-100. Për të dy objektet, shkallëzimi mund të

rregullohet në Properties, me ç’rast paraqitet dritarja si në Fig.1.53, e pastaj zgjedhet Scale. Në

Scale Range shkruhen vlerat minimale dhe maksimale që paraqiten në shkallëzimin e objektit.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

36

Fig.1.53. Paraqitja e shkallëzimit të vlerave të objektit

Detyrë 13. Me anë të objekteve – kontrollës Vertical Point Slider dhe grafeve të paraqitet

konvertimi i vlerave nga ºF në ºC. Të jepen vlera të ndryshme dhe të paraqiten rezultatet në

indikatorin Thermometer dhe në Grafin Graph Chart. Formula e konvertimit është nga detyra për

ushtrime 11: (°F - 32) x 5/9 = °C.

Në Fig.1.54. është paraqitur zgjedhja e detyrës.

Fig.1.54. Pamja e detyrës për konverimin e vlerave nga ºF në ºC

Në Front Panel, zgjedhim objektin që paraqet kontrollën e nivelit të temperaturës në

paletën Control->Modern->Numeric-> Vertical Point Slider dhe e vendosim në Front Panel. Ky

është një tregues i nivelit që ka treguesin që mund të rrëshqet në gjatësinë e tij për zgjedhjen e

vlerës së dëshiruar. Kjo paraqet vlerën e temperaturës në ºF. Pasi ta vendosim, e selektojmë dhe

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

37

shkojmë në Properties, ku zgjedhim Visible Items-> Digital Display, për të paraqitur vlerën e

temperaturës ºF në formë digjitale nën Vertical Point Slider. (Fig.1.55)

Më tutje në detyrë caktojmë dy objekte të llojit Indicator, njëri merret në Control-

>Modern->Numeric->Numeric Indicator dhe tjetri Control->Modern->Numeric-> Thermometer.

Të dy këta indikatorë do të përdoren për të paraqitur rezultatin në ºC.

Fig.1.55.

Për të vendosur grafikun që do të tregojë vlerat e zgjedhura në formë grafike, zgjedhim Waveform

Chart dhe e vendosim nën objektet tjera.

Pas vendosjes së objekteve në Front Panel, në anën e djathtë krijojmë programin në Block

Diagram. (Fig.1.56.)

Fig.1.56. Programi i krijuar në Block Diagram

Nga Fig.1.56. në pjesën e majtë të programit është paraqitur terminali i objektit hyrës Slide

dhe është krijuar formula e konvertimit. Në pjesën e djathtë të programit vërejëm se janë tri

objekte dalëse që paraqesin terminalet e objekteve nga Front Panel, dhe janë lidhur me nyje për të

paraqitur vlerën e njejtë numerike si rezultat që paraqet temperaturën në ºC.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

38

Detyrë 14. (Bazuar ne detyrën 3). Të bëhet mbledhja e tre numrave me përdorimin e operatorit

Compound Arithmetic.

Operatori Compound Arithmetic mundëson krijimin e shumë madhësive hyrëse dhe një madhësi

dalëse. Ky operatori zgjidhet në Block Diagram, në Paletën Functions->Numeric. Pamja e

programit të detyrës është më poshtë.

Fig.1.57. Llogaritja me anë të operatorit Compound Arithmetic të shumës së tre numrave

Detyrë 15. Të realizohet detyra që tregon se cili nga dy numra të dhënë është më i madh.

Detyra realizohet duke aplikuar në Front Panel dy objekte Controls për shkruarje të dy

numrave. Për paraqitje të rezultatit zgjedhim një Indikator të tipit Boolean -> Square Led (dritë

katërkëndëshe). Në indikatorin Square Led, zgjedhim opcionet për ndryshimin e ngjyrës dhe

paraqitjen e tekstit brenda saj. Kjo bëhet në opcionin Properties të Square Led (Fig.1.59). Qëllimi

i detyrës është të krahasojë se cili numër i dhënë është më i madh apo më i vogël se tjetri.

Fig.1.58. Aplikimi

Në Block Diagram paraqitet diagrami duke përdorur operatorin nga paleta Functions-

>Comparision->Greater? Ky operator përdoret për krahasim të madhësisë së dy vlerave

numerike.

Ngjashëm mund të përdoren edhe operatorët tjerë të këtij grupi: Equal?, Not Equal?,

Less?, Greater or Equal?, Less or Equal?, Equal to Zero?, Greater then Zero?, Less than Zero?,

Greater or Equal?, Less or Equal?

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

39

Fig.1.59. Rregullimi i opcioneve të indikatorit Square Led.

1.8. PËRDORIMI I VEKTORËVE DHE MATRICAVE NË LAB VIEW

Më lartë kemi treguar llojin e të dhënave vektor (Array) dhe matricë (Matrix). Këto të

dhëna dhe elemente paraqiten në shumë detyra të programimit, dhe kanë për qëllim llogaritje të

ndryshme të të dhënave numerike në një tabelë në formë të një apo më shumë shtylla dhe rreshta.

Detyrë 16. Për vektorin e dhënë në detyrë, të realizohet detyra që llogaritë shumën e

numrave të vektorit.

A(n) = 2 -1 0 -3 4 5 1

Detyra realizohet duke aplikuar në Front Panel, në menynë Controls->Array,Matrix & Cluster

dhe pastaj duke zgjedhur objektin Array. Në Array të krijuar krijojmë një Numeric Control, dhe

pastaj e zgjerojmë në numrin e anëtarëve që është n =7. Pastaj i plotësojmë hapësirat me nurmat e

vektorit. Detyra e ka pamjen si më poshtë:

Fig.1.60. Detyra e mbledhjes së numrave të vektorit

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

40

Detyrë 17. Për vektorin e dhënë në detyrë, të gjenden këto parametra të vektorit: indeksi i

anëtarit të vektorit (pozita rendore në vektor), Numëri i elementëve të vektorit, Anëtari më i madh

dhe më i vogël i vektorit. Në fig.1.61. është treguar detyra.

Rezultati fillestar i vektorit – vlerat numerike janë treguar në formë të treguesve indikatorë të llojit

Vertical Fill Slide.

Programi është treguar në Block Diagram. Të gjitha veprimet e programit nga madhësitë hyrëse në

dalëse është treguar në një degëzim.

- Numri i elementeve të vektorit është realizuar me operatorin Functions->Programming->Array-

> Array Size.

- Anëtari më i madh dhe më i vogël i vektorit është realizuar me operatorin Functions-

>Programming->Array-> Max&Min.

- Indeksi i anëtarit të vektorit është realizuar me operatorin Functions->Programming->Array-

>Index Array. Në këtë rast duhet krijuar Control që kërkon dhënjen e index-it për të paraqitur

elementin në atë index (pozicion). Duhet përmendur se renditja e elementëve në vektor fillon nga

0, e jo nga 1.

Fig.1.61. Veprimet me vektorë

Detyrë 18. Për matricën e dhënë në detyrë, të realizohet detyra që paraqet: numrin e

rreshtave dhe shtyllave, shumën e numrave të matricës, produkti i elementeve të matricës, Anëtari

më i madh dhe më i vogël, matricën e transponuar AT.

1 2 0 -2

A= 3 1 -1 2

4 -3 2 5

7 6 0 3

Detyra realizohet duke aplikuar në Front Panel, në menynë Controls->Array,Matrix &

Cluster dhe pastaj duke zgjedhur objektin Real Matrix. Matricën e krijuar e zgjerojmë në numrin e

rreshtave dhe shtyllave 4x4. Pastaj i plotësojmë hapësirat me numrat e matricës. Detyra e ka

pamjen si më poshtë:

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LabVIEW – Ushtrime1

41

Fig.1.62. Detyra e veprimeve me matrica

Programi është treguar në Block Diagram. Të gjitha veprimet e programit nga madhësitë hyrëse në

dalëse është treguar në një degëzim.

- Shuma e elementeve të matricës është realizuar me Functions->Programming->Numeric->Add

Array Elements. Paraprakisht krijohet një Indikator në Front panel për paraqitje të rezultatit.

- Numri i rreshtave dhe shtyllave të matricës është realizuar me operatorin Functions-

>Programming->Array->Matrix->Matrix Size. Paraprakisht krijohen dy Indikatorë në Front

panel për paraqitje të rezultatit, njëri për numrin e rreshtave dhe tjetri për numrin e shtyllave

- Produkti i elementeve të matricës është realizuar me Functions->Programming->Numeric-

>Multiply Array Elements. Paraprakisht krijohet një Indikator në Front Panel për paraqitje të

rezultatit.

- Anëtari më i madh dhe më i vogël i matricës është realizuar me operatorin Functions-

>Programming->Array-> Max&Min. Paraprakisht krijohen dy Indikatorë në Front panel për

paraqitje të rezultatit.

- Matrica e transponuar fitohet duke krijuar një matricë të re në Front panel, Controls->Array,

Matrix & Cluster dhe pastaj duke zgjedhur objektin Real Matrix. E zgjerojmë në madhësinë 4x4.

Në Block Diagram zgjedhim terminalin e matricës dhe me miun e djathtë zgjedhim Change to

Indicator e shndërrojmë në indikator të rezultatit.

Rezultatet janë treguar në Fig.1.62.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime2

42

2. STRUKTURAT NË LABVIEW

Strukturat janë paraqitje grafike e unazave programuese dhe deklaratat e procedurës (Case statements) të gjuhëve programuese të bazuara në tekst dhe vizuele. Përdorimi i strukturave bëhet në Block Diagram bëhet për të përdëritur blloqe të strukturave apo përsëritje të procedutës së kodit për të ekzekutuar kodin me kushtëzim të caktuar apo në renditje të caktuar. Në LABVIEW ekzistojnë disa struktura nga paleta Functions->Structures, tw cilat janë: While Loop, For Loop, Case structures, Timed Structures, Event Structure, Flat Sequence structure, Stacked Sequence structure, Formula Node, etj. Dy të parat While Loop dhe For Loop janë struktura unazore të përsëritjes.

2.1. Strukturat unazore While Loop

Me qëllim të realizimit të llogaritjeve të shumfishta që përsëriten sipas një rregulli të

përsëritjes, duke u shtuar apo duke u zvogëluar, ose strukturave unazore në programe, ekzistojnë urdhëra dhe procedura për realizimin e këtyre llogaritjeve. Në programin Lab View struktura While Loop është e ngjashme me while apo do...while në C++. Struktura While Loop ekzekuton një nëndiagram derisa të plotësohet kushti i kërkuar. While Loop vendoset në Block Diagram nga paleta Functions->Structures->While Loop.

Një While Loop i kompletuar paraqet një katërkëndësh që mund të rritet apo zvogëlohet (Fig.2.1). Ky katërkëndësh ka dy elementë kryesorë: Iteration Terminal – Terminali i iterimeve dhe Condition Terminal – Terminali i kushtëzimit.

Fig.2.1. Katërkëndëshi i While Lopp

Brenda katërkëndëshit të While Loop mund të shtohen elementë tjerë duke i vendosur

brenda tij – brenda kufijve. While Loop ekzekuton nëndiagramin derisa të plotësohet terminali i kushtëzimit, terminali i hyrjes (Input terminal), pranon një vlerë Boolean, etj. Gjendja fillestare e terminalit të kushtëzimit është Vazho nëse është e vërtetë (Continue if True). Nëse terminali i kushtëzimit është në gjendjen Continue if True, unaza While Loop do të ekzekutojë nëndiagramin derisa terminali i kushtëzimit të pranojë vlerën FALSE.

Terminali i iterimeve majtas i përmban një numër të iteracioneve të kompletuara. Vlera e iterimeve në While Loop gjithmonë fillon me zero.

Terminali i iterimeve

Terminali i kushtëzimit

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime2

43

Detyrë 2.1. Me anë të unazës While Loop, të realizohet programi për numrimin me numra

të plotë deri të barazohet me numrin e dhënë.

Fig.2.2. Paraqitja e numrimit deri të jetë baras me numrin e dhënë

Për realizimin e detyrës në Front Panel krijohen dy objekte, një Control me emrin Vlera hyrëse n, dhe një Indikator me emrin Rezultati i numrimit. Në Block Diagram krijohet një While Loop. Controla me emrin Vlera hyrëse n lihet jashtë unazës While Loop, ndërsa indikatori lidhet me terminalin e iterimit i. Pastaj krijohet operatori i kushtëzimin Baraz (Equal?) nga Paleta Functions->Comparision->Equal. Në këtë operator, në njërin port hyrës lidhet kontrola Vlera hyrëse n, ndërsa në tjetrin port ndahet një nyje nga terminali i iterimit i. Porti dalës i operatorit Baraz lidhet me terminalin e kushtëzimit të mbylljes. (Fig.2.2).

Në rast se detyra ekzekutohet shpejt, mund të ngadalësohet ekzekutimi me anë të terminalit kohor. Nga Paleta Functions->Timing-> Wait until Next multiple, zgjedhim terminalin e rregullimit kohor. Në portin hyrës të këtij terminali shkruajmë shpejtësinë e ekzekutimit në milisekonda. Në detyrë është dhënë 100 ms.

Detyrë 2.2. Nga detyra më lartë, të paraqitet në unazën While Loop vlera e funksionit F(x)

që plotëson kushtin, sipas vlerës së dhënë të x:

F(x) = F(x) = 0 ; x ≤ 0 F(x) = x ; x > 0

While Loop

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime2

44

Fig.2.3. Paraqitja e vlerës së funksionit me objektin Dial

Në detyrë, në Front Panel, në vend të objektit Contol, është paraqitur objekti nga Paleta Controls->Numeric->Dial me emrin Zgjedhja e vlerës së x. Ky objekt në Representation përcaktohet të jetë i llojit të dhënave I32 (Integer). Në Properties->Scale, i caktojmë rangun në Scale Range, në mes të -20 deri 20. Indikatori i rezultatit do të quhet Rezultati.

Në Block Diagram krijohet unaza While Loop. Jashtë unazës vendoset objekti Dial – Zgjedhja e vlerës së x. Mbrenda unazës, indikatori Rezultati lidhet me terminalin e iterimit i. Pastaj krijohet operatori i kushtëzimin Baraz (Equal?) nga Paleta Functions->Comparision->Equal. Në këtë operator, në njërin port hyrës lidhet kontrola Dial, ndërsa në tjetrin port ndahet një nyje nga terminali i iterimit i.

Krijohet operatori me i vogël se 0, nga Paleta Functions->Comparision->Less Than zero? Nga dega dalëse e funksionit Dial krijojmë nyjen deri te operatori Less Than Zero?

Zgjedhim operatorin logjik ose (�) nga Paleta Functions->Boolean->Or, dhe e vendosim brenda unazës. Në njërin port hyrës të këtij operatori lidhim portin dalës të Equal, ndërsa në protin tjetër hyrës lidhim portin dalës të Less Than Zero? Porti dalës i operatorit Or lidhet me terminalin e kushtëzimit të mbylljes. (Fig.2.3) Gjithashtu, nga Paleta Functions->Timing-> Wait until Next multiple, zgjedhim terminalin e rregullimit kohor. Dhe i japim hapin kohor 100 ms.

Detyra funksionon në këtë mënyrë: Nëse në Controlën Dial jepet ndonjë vlerë zero apo më e vogël, programi nuk llogarit asgjë, mbetet rezultati 0, pasi iterimi fillestar është 0. Nëse në Controlën Dial jepet ndonjë vlerë më e madhe se zero, atëherë programi e paraqet atë vlerën e dhënë në rezultatin e fundëm.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime2

45

Detyrë 2.3. Me anë të unazës While Loop, të realizohet programi për llogaritjen e shumës

së numrave natyral prej 1 deri n.

Fig.2.4. Llogaritja e shumës së numrave prej 1 deri n, me anë të unazës While Loop

Për realizimin e detyrës në Front Panel krijohen tri objekte, një Control me emrin Vlera hyrëse n, dhe dy Indikatorë me emrin Rezultati i shumës, dhe Shuma e përkohshme. Në Block Diagram krijohet një While Loop. Controla me emrin Vlera hyrëse n lihet jashtë unazës While Loop, indikatori Rezultati i shumës lihet jashtë unazës në anën e djathtë. Krijohet operatori i kushtëzimin Më i vogël ose Baraz (Less or Equal?) nga Paleta Functions->Comparision->Less or Equal? Ky operator krijohet me qëllim që kur të arrihet vlera hyrëse n të ndalojë mbledhjen e nurmave. Në këtë operator, në njërin port hyrës lidhet kontrola Vlera hyrëse n, ndërsa në tjetrin port ndahet një nyje nga terminali i iterimit i. Porti dalës i operatorit Less or Equal? lidhet me terminalin e kushtëzimit të mbylljes.

Krijohet operatori i mbledhjes Functions->Numeric->Add. Në njërin port hyrës vazhdohet nyja nga terminali i iterimit i. Nga portin dalës të operatorit Add krijohet lidhja në dalje të unazës, tek indikatori Rezultati i shumës.

Më tutje, Indikatori Shuma e përkohshme lidhet me nyje në degën dalëse të operatorit Add. Ky është indikatori që mbledh të dhënat nga shuma e iterimit të fundit. Rezultatet e shuëms së iterimit të fundit duhet të kthehen sërish për kalkulim në iterimin e ardhshëm. Kjo arrihet duke zgjedhur nga Indikatori Shuma e përkohshme, me miun e djathtë Create->Local Variable. Në objektin e krijuar si variabël lokale, me miun e djathtë e ndërrojmë në Change to Read. Pastaj, portin hyrës të variablës lokale e lidhim me portin tjetër hyrës të variablës Add. (Fig.2.4)

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime2

46

Detyrë 2.4. Të krijohet programi në LABVIEW për të llogaritur shumën si më poshtë.

10

Fig.2.5.

Detyra zgjidhet ngjashmë me detyrën 2.3. Të ushtrohet!

Detyrë 2.5. Të krijohet grafiku që regjistron në formë të lakores në grafik nga të dhënat hyrëse numerike për shndërrimin e temperaturës nga njësitë ºF në ºC.

Fig.2.6.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime2

47

Detyra paraqet regjistrimin e të dhënave hyrëse me anë të një Vertical Slide, të cilat do të regjistrohen përkohësisht në grafikun Waveform Chart, që ndodhet brenda unazës While Loop, dhe përfundimisht në grafikun Waveform Graph, në dalje djathtas të unazës While Loop. Numrat të cilët zgjidhen në Vertical Slide do të regjistrohen në grafikët përkatës, por edhe në Indikatorin Numeric të krijuar në Front Panel.

Në këtë detyrë, është krijuar objekti i ri Stop në formë butoni në Front Panel, që paraqet një Objekt nga Controls->Boolean->Stop Button, i cili lidhet me terminalin e kushtëzimit të mbylljes. Kjo do të thotë që procesi në detyrë nuk do të ndalojë derisa të klikohet butoni i ndalimit Stop Button.

Nga Paleta Functions->Timing->Wait (ms), zgjedhim terminalin e rregullimit kohor. Ky terminal pret derisa të plotësohet koha e ekzekutimit në milisekonda, për të ekzekutuar procesin. Në portin hyrës të këtij terminali shkruajmë shpejtësinë e ekzekutimit në milisekonda. Në detyrë është dhënë 100 ms. Detyra është paraqitur në Fig.2.6. 2.2. Strukturat unazore For Loop

Struktura unazore For Loop paraqet strukturën që përsëritë pjesë të programit të krjuar paraprakisht në formë të iterimeve. For Loop përbëhet nga një katërkëndësh që mund ti ndryshohet madhësia dhe dy terminale: terminali i numërimit - Count terminal ose terminali i hyrjeve, dhe terminali i terimeve – Output terminal. Terminali i numërimit specifikon sa herë të ekzektuohet unaza. Terminali i itermimeve përmban sa herë unaza ka ekzekutuar. For Loop unaza ndryshon nga While Loop unaza në atë se For Loop ekzekuton një numër të caktuar paraprakisht të iterimeve, derisa While Loop ndalon përsëritjen e ekzekutimeve bazuar në një kusht që duhet plotësuar. Iterimet në For Loop fillojnë nga 0. Unaza For Loop është ekuivalent me kodin e gjuhës programuese C++: if, if…else.

Fig. 2.7. Elementet e strukturës unazore For Loop

Detyrë.2.6. Të paraqitet grafiku i funksionit y = 5·x+3, për vlerat x= 0…99.

Krijojmë në Front Panel Grafin ku do të paraqitet funksioni i dhënë. Në Controls->Graph->XY Graph marrim objektin e grafikut dhe e vendosim në Front Panel. (Fig.2.8) Shkruajmë edhe tekstin përkatës.

Krijohet unaza For Loop, në të cilën krijohet numri i përsëritjeve 100, si në fig.2.9. Numri i përsëritjeve 100 krijohet duke krijuar konstatën 100 nga Terminali i numërimit N. Nga terminali i numërimit N, në lidhjen në mes të këtij terminali dhe konstantës 100, tërheqim një vijë poshtë deri te kufiri i majtë i unazës, ku krijohet një katërkëndësh i vogël i mbyllur. Ky është operatori Tunnel,

Terminali i iterimeve

Terminali i numërimit

Numri i përsëritjeve

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime2

48

që mundëson kalimin më të shpejtë të të dhënave në unazë apo nga unaza For Loop pa ndonjë manipulim shtesë të të dhënave.

Fig. 2.8. Front Panel për krijimin e funksionit y = 5·x+3

Fig. 2.9. Block Diagrami me unazën For Loop, për krijimin e funksionit y = 5·x+3

Më tutje, merret terminali i iterimeve i dhe tërhiqet diku afër qendrës së unazës For.

Krijohet operatori i shumëzimit x (Multiply). Terminali i iterimeve i lidhet me njërin port hyrës të terminalit. Në portin tjetër krijohet konstata 5, që është pjesë e funksionit të dhënë. Më ttuje në detyrë krijohet terminali i mbledhje + (Add). Në portin hyrës të këtij terminali lidhet dalja e terminalit të shumëzimit x, ndërsa në tjetrin port hyrës krijohet konstanta 10, që është pjesë e funksionit të dhënë y = 5x+3.

Krijimi i Funksionit Cluster - Në dalje të unazës For Loop krijojmë për herë të parë terminalin Cluster, që përdoret për të mbledhur shënimet disa dimensionale nga madhësitë hyrëse dhe i përcjall në dalje. Terminali Cluster është opcioni më i mirë për të krijuar grafet e funksioneve F(x). Zgjedhim në Functions->Cluster,Class & Variant, dhe zgjedhim Bundle. Do të paraqitet terminali i ri Cluster, që pranon të dhënat hyrëse. Terminali krijohet jashtë unëzës. Ky terminal ky aktualisht dy porte hyrëse dhe një dalës, por portet hyrëse mund të shtohen në Miu i djathtë-> Add Input. E krijojmë një lidhje, nyje të ndarë nga terminali i iterimeve i dhe e vazhdojmë deri te porti i parë hyrës i Cluster. E Tërheqim tjetrën vijë nga Porti dalës i terminalit + deri te porti i dytë hyrës i terminalit Cluster. Më tutje, nga terminali dalës i Cluster e lidhim me terminalin e grafit XY. (Fig.2.9)

Pas ekzekutimit të detyrës, do të paraqitet grafiku i funksionit si në fig.2.8.

Terminali Cluster - Bundle

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime2

49

Detyrë.2.7 (Për ushtrime). Të paraqitet grafiku i funksionit y = 3·x2+1, për vlerat x=0…99

Detyrë.2.8. Të paraqitet grafiku i funksionit y = 4·x3-1, për vlerat x= -30…+30

Në detyrat më lartë u paraqit grafiku i funksionit vetëm për vlerat pozitive, pasi unaza For Loop nuk mund të ofrojë iterime negative (Numri i përsëritjeve N nuk përkrah numrat negativ). Për të krijuar funksionin e plotë, duhet të krijojmë opcionin e pranimit të vlerave negative të funksionit. Krijojmë detyrën si më poshtë (Fig.2.10, Fig.2.11) :

Fig. 2.10. Front Panel për krijimin e funksionit y= 4·x3-1, në vlerat x=-30…+30

Fig. 2.11. Block Diagrami me unazën For Loop, për krijimin e funksionit y= 4·x3-1, në vlerat x=-

30…+30

Në këtë detyrë, janë krijuar dy degëzime nga terminali i iterimeve i, njëri drejt në lidhje të drejtpërdrejt, tjetri nëpërmjet operatorit Negate (-x), që do të shndërrojë vlerat pozitive të i në vlera negative. Krijojmë dy terminale Cluster të llojit Bundle brenda unazës For Loop. Në portet e para hyrëse të tyre i lidhim daljet nga terminali i iterimeve i , ndërsa në portet e dyta hyrëse i lidhim funksionin e krijuar.

Terminali Build Cluster - Bundle

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime2

50

Krijojmë dy terminale Cluster-> Bundle jashtë unazës, në të djathtë. Këto terminale i krijojmë me një Input (e heqim nga një Input në Miu i djathtë -> Remove Input). Portin hyrës të tyre e lidhim me portin dalës të Cluster terminaleve brenda For Loop unazës. Ndërsa portin dalës të tyre e lidhim me një element të ri Build Array që e marrim nga Functions->Array->Build Array. Ky element i ri mundëson krijimin e të dhënave në formë të Array nga të dhënat hyrëse të pavarura njëra prej tjetrës. Në fund, nga terminali Build Array, nga porti dalës i tij e lidhim me XY Grafin e krijuar në Front Panel.

Me ekzekutimin e detyrës fitohet grafiku si në Fig.2.10. Kjo paraqet grafikun e plotë të funksionit.

Me detyrë të tillë, ngjashëm mund të krijohen më shumë se një lakore në grafik të ndryshëm.

Detyrë.2.9. (Për ushtrime). Të paraqitet grafiku i funksionit y = (2·x-1)/(3·x+2), për vlerat x= -30…+30

Detyrë.2.10. Të paraqitet grafiku i funksioneve y1 =sin(x/2) dhe y2 =3·cos(x) në të njejtin xy grafik, për vlerat x= -30…+30. Zgjedhja e detyrës është dhënë më poshtë.

Fig. 2.12. Front Panel për krijimin e funksioneve y= 4·x3-1, y1 =sin(x/2) dhe y2 =3·cos(x) në të njejtin

xy grafik, për vlerat x= -30…+30.

Fig. 2.13. Block Diagrami për krijimin e funksioneve y= 4·x3-1, y1 =sin(x/2) dhe y2 =3·cos(x) në të

njejtin xy grafik, për vlerat x= -30…+30.

Në këtë detyrë, funksionet trigonometrike zgjedhen nga menyja Functions->Mathematics->Elementary->Trigonometric. Identifikimi se cila lakore cilit funksion i takon, bëhet duke shkuar

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime2

51

në Vetitë e grafit në Front Panel. Zgjedhim Properties mbi XY graph, dhe në Plots, pastaj në Names shkurajmë emrin e lakores (Fig.2.14.a). Në të njejtën mënyrë e bëjmë duke zgjedhur lakoren tjetër në tek shigjeta. Në këtë dritare mund të zgjedhet edhe trashësia e lakores, si dhe mundësia e paraqitjes me pikat kryesore të funksionit.

Fig.2.14. a. Emërimi i lakoreve Fig.2.14. b. Paraqitja e lakoreve në graf

Në Fig.2.14.b është treguar opcioni i paraqitjes së legjendës së lakoreve, në Shoë Plot legend. Në Plot Shown tregohet se paraqiten 2 lakore. Nëse ka më shumë lakore në të njejtin grafik, aty zgjedhet numri i paraqitjeve të tyre. Nëse zgjedhim Show Graph palette, do të paraqitet paleta e grafikut nën grafik (Fig.2.15), në të cilën mund të bëhet zmadhimi apo zvogëlimi i grafikut, lëvizja e tij, etj.

Nga Fig.2.15, nëse dëshirohet të ndërrohet ngjyra e lakores, kjo bëhet duke zgjedhur lakoren në Show Plot legend, klikojmë me miun e djathtë dhe zgjedhim Color. Pastaj zgjedhim ngjyrën e dëshiruar për lakoren.

Fig.2.15. Konfigurimi i të dhënave në grafikun xy

Detyrë.2.11. Të paraqitet grafiku i krijuar nga të dhënat numerike të rastit. Numri i iterimeve të jetë deri në 100.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime2

52

Detyra zgjidhet duke krijuar unazën For Loop dhe në të krijohet së pari terminali Functions->Numeric->Random Number. Ky terminal përdoret për të gjeneruar numrat e çfarëdoshëm në mes të 0 dhe 1. Për të ngadalësuar ekzekutimin e detyrës është përdorur terminlai Timing për shpejtësi 500 ms.

Fig.2.16. Krijimi i grafikut nga të dhënat e rastit

Detyrë.2.12. Të paraqitet lista në një vektor e numrave të rastit të gjeneruar nga 0 deri 1.

Lista është paraqitur për 10 iterime, që do të thotë për 10 të dhëna të rastit. Lista është një objekt Array, i cili në Front Panel krijohet si një indikator. Në Block Diagram Lista vendoset jashtë Unazës For Loop, dhe lidhet me portin dalës të terminalit të rastit - Random.

Fig.2.17. Krijimi i listës me Array nga të dhënat e rastit

2.3. Strukturat Shift Register në kuadër të strukturave unazore

Strukturat Shift Register përdoren në kuadër të strukturave unazore While Loop dhe For Loops. Këto përdoren për të transferuar të dhënat nga një iteracion në iteracionin e ardhshëm. Shift Register krijohet duke klikuar kufirin e majtë të For Loop apo While Loop dhe me miun e djathtë, duke zgjedhur Add Shift Register.

Terminali i të dhënave të rastit - Random

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime2

53

Shift Register përmban një çift të terminaleve direkt dhe në anën e kundërta të kufijve të unazës. Terminali i djathtë ruan të dhënat pas kompletimit të një iteracioni. Këto të dhëna pastaj zhvendosen në terminalin e majtë, në fillim të iteracionit të ardhshëm. Një Shift Register mund të përmbajë çfarëdo të dhëna: Numerike, Boolean, string, Array, etj. Shift Register i përshtatet në mënyrë automatike të dhënave me të cilat lidhet, dhe ndërron ngjyrën sipas atyre të dhënave. Shift Register zyrtarisht kan vlerë iniciale 0, por mund të deklarohet edhe vlerë tjetër fillestare si vllerë iniciale.

Fig. 2.18. Pamja e funksionimit të Shift Register

Detyrë 2.13. (Bazuar në detyrën 2.3). Me anë të unazës For Loop dhe Shift Register, të realizohet programi për llogaritjen e shumës së numrave natyral prej 1 deri n.

Fig.2.19. Llogaritja e shumës së numrave natyral prej 1 deri në n

Vlera iniciale Vlera iniciale Vlera e re

Vlera e kaluar Vlera e re Vlera e re

Shif Register

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime2

54

Detyrë 2.14. (Bazuar në detyrën 2.13). Krijimi i listës së numrave. Me anë të unazës For Loop dhe Shift Register, të realizohet programi për llogaritjen e shumës së numrave natyral prej 1 deri n dhe ata numra të paraqiten në një listë të numrave, në formë të objektit Array.

Fig.2.20. Llogaritja e shumës së numrave natyral prej 1 deri në n dhe paraqitja në listë

Në këtë detyrë, për paraqitjen e rezultateve në tabelën Array, është krijuar në Front Panel objekti Array, si Indicator, dhe i është shtuar një Dimension, në opcionin Add Dimension. Në Block Diagram, Terminali i Array është vendosur në anën e djathtë jashtë unazës. Brenda unazës është krijuar terminali Build Array, nga paleta Functions->Array. Ky terminal në portin hyrës është i lidhur me vijën e Shift Register, ndërsa në portin dalës është lidhur me Indikatorin Array.

Detyrë 2.15. Me anë të opcionit Shift Register të paraqitet Grafiku që do të paraqet vlerat e rastit dhe mesataren e të tri vlerave – vlerës aktuale dhe dy vlerave të fundit të rastit.

Detyra paraqet perdorimin e Shift Registers për të llogaritur mesataren e numrave te rastit te gjeneruar nga terminali Random. Detyra do te paraqet ne njerën lakore vleren aktuale të rastit, ndersa në tjetren lakore mesataren e dy vlerave të fundit të rastit. Detyra krijohet me anë të unazës While Loop. Detyra nuk ndalet derisa te klikohet butoni Stop. Grafiku në Front Panel është krijuar me objektin Waveform Chart.

Fig.2.21. Krijimi i programit në Block Diagram për grafikun e të dhënave të rastit

Në detyrë është krijuar funksioni i dyfishtë Shift Register në hyrje. Kjo arrihet me Krijim e Shift Register, e pastaj me krijimin e një elementi shtesë në Add Element. Më tutje është krijuar terminali Compound Arithmetic, që përmban numrat e krijuar të rastit nga Random, si dhe dy numrat e iterimeve të kaluara. Shprehja e pjestimit për 3 paraqet mesataren e tri vlerave. Paraqitja e lakoreve është bërë me krijimin e terminalit Bundle të grupit Cluster, ndërsa në portin dalës të tij është lidhur Grafiku i të dhënave.

Terminali Build Array

Shif Register

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime2

55

Fig.2.22. Grafiku i krijuar në Front Panel. Ndarja e lakoreve është bërë me Stack Plots

Detyrë 2.16. Nga pajisja e çfarëdoshme hardverike virtuale e lidhur për kompjuteri, dhe e detektuar nga Lab View, janë lexuar vlerat e matjeve të temperaturës në milivolt (mV). Këto vlera të lexuara, të paraqitura në formë të objektit Array duhet lexuar në temperaturë në ºC, dhe duhet të paraqiten grafikisht. Të dhënat hyrëse dhe detyra e zgjedhur është treguar në Fig.2.23 dhe Fig.2.24. Në këtë detyrë, leximi është bërë në grafikun e temperaturës, dhe në indikatorin dalës të quajtur Temperatura.

Fig. 2.23. Pamja e detyrës në Front Panel

Fig. 2.24. Pamja e detyrës në Block Diagram

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime2

56

2.4. Krijimi i 3D grafikëve në Lab View

Grafikët e llojit 3D mund të krijohen në Lab View në lloje të shumta, të përmendura në kapitullin 1.6.1 të dispensës së ushtrimeve. Krijimi i tyre bëhet me anë të unazës së dyfishtë For Loop dhe llojit të grafit që do të paraqitet.

Detyrë 2.17. Të paraqitet grafiku i funksionit z = 4·x+y3

Fig.2.25. Pamja e programit për grafikun e funksionit z = 4·x+y3

Për realizimin e detyrës, në Front Panel zgjedhet objekti për 3D grafikun e llojit Mesh në Control->Graph->3D Graph-> Mesh. Ky opcion – Mesh zgjidhet një prej disa opcioneve të 3D grafeve. Mund të zgjidhen edhe opcionet tjera si Surface dhe Surface Graph. E vendosim objektin Mesh në Front Panel. Nëse shkojmë brenda grafit Mesh dhe klikojmë me miun e djathtë, paraqitet menyja e opcioneve si në Fig.2.26. Zgjedhim 3D Plot Properties për të rregulluar opcionet e grafit. Në Block Diagram krijojmë programin për paraqitjen grafike të funksionit, si në Fig.2.25. Në këtë Block Diagram janë krijuar dy unaza For Loop, njëra brenda tjerës. Unaza e brendshme përmban pjesën e funksionit 4·x.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime2

57

Fig.2.26. Rregullimi i parametrave kryesor të 3D grafit

Unaza e jashtme përmban numrin e iteracioneve i = 30, që do të thotë që funksioni do të llogaritet për 30 vlera. Unaza e jashtme përmban pjesën e funksionit +y3 . Unaza e jashtme lidhet me unazën e brendshme me operatorin N. Jashtë unazës së jashtme, në anën e djathtë është lidhur objekti – terminali i grafikut Mesh për kalkulim të rezultatit. Ky terminal përbëhet nga dy pjesë – Plot Helper dhe 3D Mesh. Portet hyrëse x vector dhe y vector të terminalit Plot Helper lidhen me daljet e ekuacionit nga For Loop. Ndërsa në z matrix lidhet dalja e funksionit z. Në dalje të objektit Plot Helper, njëri port lidhet me grafikun 3D Mesh ndësa porti tjetër dalës lidhet me terminalin Simple Error Handler. (Fig.2.27)

Fig.2.27. Terminali i Mesh për 3D grafik

Në këtë diagram për herë të parë është përdorur terminali Error (Fig.2.23). Ky terminal është Simple Error Handler, që merret nga Functions->Dialog & User Interface->Simple Error Handler. Ky terminal paraqet një VI të paraprogramuar që është pjesë e LabVIew. Tregon nëse ka ndodhur gabimi në program. Nëse paraqitet gabimi, kjo Vi tregon përshkrimin e gabimit dhe e tregon në një dialog box dritare.

Shkalla e grafikut dhe shkalla e variablave mund të rregullohet në 3D Plot Properties (Fig.2.26).

Detyrë 2.18. (Për ushtrime) Të paraqitet grafiku i funksionit z = x2+y2 duke përdorur opcionin Surface Graph. Të bëhet llogaritja për 100 vlera (iteracione).

Detyrë 2.19. (Për ushtrime) Të paraqitet grafiku i funksionit z = 3·x+2·y+1 duke përdorur opcionin 3D Mesh. Të bëhet llogaritja për 100 vlera (iteracione).

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime3

58

3. STRUKTURAT CASE

Strukturat Case janë objekte dhe terminale të LabView të cilat janë analoge me komandat if…then…else të gjuhëve programese tekstuale. Strukturat Case kanë disa opcione në program dhe janë konfiguruar të funksionojnë sikur fletët e librit, duke treguar vetëm njërën “fletë” apo opcion, ndërsa tjerat nuk shifen por qëndrojnë në prapavi.

Fig.3.1. Strukturat Case në bazë të llojit të të dhënave

Strukturat Case vendosen në Block Diagra, duke i marrë në Paletën Functions->Structures->Case Structure. Objektet tjera mund të vendosen brenda strukturës ose të lihen jashtë strukturës. Secili opcion – Case përmban një nëndiagram (subdiagram). Vetëm njëri opcion ekzekutohet, në vearësi të vlerës që ndodhet në terminalin e selektorit të Case strukturës. Terminali selector mund të jetë numeric, Boolean ose string. Nëse lloji i të dhënave është Boolean, struktura ka opcionin True ose False. Nëse lloji i të dhënave është Numeric ose String, struktura mund të ketë shumë opcione, në varësi të detyrës.

Më tutje janë dhënë disa shembuj të Strukturave Case.

Detyrë 3.1. Të krijohet detyra me Case Structure ku njëri opcion i mbledh dy numra, ndërsa tjetri opcion i zbret dy numra. Lloji i kushtëzimit të jetë Boolean.

Detyra është paraqitur në Fig.3.2. Në këtë detyrë në Front Panel janë krijuar dy kontrolla që përmbajnë numrat të cilët mblidhen apo zbriten (a, b), një objekt Boolean i llojit të ndërprerësit Horizontal Toggle Sëitch dhe një object Indicator për të përaqitur rezultatin. Është krijuar Objekti Horizontal Toggle Switch rregullohet në Properties, me emrin Kushti, të tregojë ngjyrën e gjelbër dhe tekstin Mbledhje, në rastin kur kemi mbledhje të nurmave, dhe ngjyrën e kuqe dhe tekstin Zbritje, në rastin kur kemi zbritje të nurmave.

Në Block Diagram krijohet Case Structure nga Paleta Functions->Structures->Case Structure. Në anën e majtë të strukturës janë vendosur kontrollat hyrëse Numeric – Numri a dhe

Terminali selector

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime3

59

Numri b, si dhe kontrolli Horizontal Toggle Switch i cili lidhet me terminalin hyrës të Case Structurës me shenjën ?. Në dalje, në anën e djathtë të strukturës vendoset terminali Indikator – Rezultati.

Fig.3.2. Detyra me Case Structure për mbledhjen dhe zbritjen e dy numrave me kushtin Boolean

Në terminalin Selector të Case Structure, opcioni zyrtar është True, që shihet në pjesën e epërme të srukturës. Në këtë opcion, brenda Case strukturës vendosim operatorin e mbledhjes Add, dhe e lidhim në portet e tij hyrëse me kontrollat Numri a dhe Numri b, ndërsa në portin dalës me indikatorin Rezultati. Zgjedhim opcionin False nga terminali Selector. Në këtë opcion, brenda Case strukturës vendosim operatorin e zbritjes Subtract, dhe e lidhim në portet e tij hyrëse me kontrollat Numri a dhe Numri b, ndërsa në portin dalës me indikatorin Rezultati. E testojmë detyrën duke i dhënë vlera numerike kontrollave Numri a dhe Numeri b, dhe duke ndërruar opcionet e objektit Kushti.

Detyrë 3.2. Të krijohet detyra me Case Structure ku njëri opcion i shumëzon dy numra a*b, tjetri opcion i pjeston dy numra a/b, ndërsa opcioni i tretë llogarit a2 + b2 . Lloji i kushtëzimit të jetë Numeric.

Detyra është paraqitur në Fig.3.3. Në këtë detyrë në Front Panel janë krijuar objektet e njejta, përveq objektit Numeric me emrin Opcioni, që paraqet objektin ku zgjidhet njëri prej opcioneve, 0, 1, ose 2.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime3

60

a. Opcioni 0 - i shumëzimit

b. Opcioni 1- i pjestimit

c. Opcioni 2- i llogaritjes a2 + b2

Fig.3.3. Detyra me Case Structure për mbledhjen dhe zbritjen e dy numrave me kushtin Numeric Në Block Diagram krijohet Case Structure nga Paleta Functions->Structures->Case Structure. Në anën e majtë të strukturës janë vendosur kontrollat hyrëse Numeric – Numri a dhe Numri b, si dhe kontrolli Opcioni i cili lidhet me terminalin hyrës të Case Structurës me shenjën ?. Në dalje, në anën e djathtë të Case strukturës vendoset terminali Indikator – Rezultati. Në terminalin Selector të Case Structure , opcioni zyrtar është 0, Default. Duhet të kemi tri opcione, pasi do të kryejmë tri veprime algjebrike me numrat a dhe b. Mbi operatorin Selector klikojmë me miun e djathtë, dhe zgjedhim Add Case After. Do të krijohet opcioni me numër 2.

dhe a2+b2

dhe a2+b2

dhe a2+b2

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime3

61

Në opcionin me numër 0 krijohet operatori i shumëzimit Multiply dhe e lidhim në portet e tij hyrëse me kontrollat Numri a dhe Numri b, ndërsa në portin dalës me indikatorin Rezultati. (Fig.3.3.a) Në opcionin me numër 1 nga terminali Selector brenda Case strukturës vendosim operatorin e pjestimit Divide, dhe e lidhim në portet e tij hyrëse me kontrollat Numri a dhe Numri b, ndërsa në portin dalës me indikatorin Rezultati. (Fig.3.3.b) Në opcionin me numër 2 nga terminali Selector brenda Case strukturës krijojmë programin për llogaritjen e a2 + b2, dhe e lidhim në portet e tij hyrëse me kontrollat Numri a dhe Numri b, ndërsa në portin dalës me indikatorin Rezultati. (Fig.3.3.c)

Në kuadër të Case Structure, në operatorin terminal, opcioni Default mund të ndërrohet dhe ti deklarohet ndonjë opcioni tjetër. Detyrë 3.3. Të krijohet detyra me Case Structure ku njëri opcion i shumëzon dy numra, ndërsa tjetri opcion i pjeston dy numra. Lloji i kushtëzimit të jetë String.

Detyra është paraqitur në Fig.3.4. Në këtë detyrë është përdorur për herë të parë String kontrolla e quajtur Combo Box, që zgjedhet nga paleta Controls->String&Path->Combo Box me emrin Zgjidhe Opcionin. Në këtë kontrollë janë vendosur-shkruar dy opcionet e shumëzimit dhe pjestimit të cilat zgjedhen. Kjo kontrollë pastaj është lidhur në Case Structure.

Fig.3.4

Në objektin Combo Box, klikojmë me miun e djathtë, paraqitet menyja, nga e cila zgjedhim Edit Items. Paraqitet dritarja si në Fig.3.4.a. Në Items, me anë të klikim në Insert, mund të shtojmë opcionet e Combo Box që paraqiten në Case Structure. Në këtë rast shkruajëm Shumëzim dhe Pjestim. Në Terminalin e kontrollit të Case Structure janë shkruar opcionet Shumëzim dhe Pjestim, në të cilat krijohen programet përkatëse si në dy detyrat më lartë.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime3

62

Fig.3.4.a.

Detyrë 3.4. Me anë të Case Structures të paraqitet grafikisht funksioni F(x) që plotëson

kushtet, sipas vlerës së dhënë të x= -99…99. Grafiku të paraqitet veqmas për secilin nga dy opcionet. (Shiqo edhe detyrën 2.6)

2x-1 për x < 0 F(x) =

x2 + 1 për x ≥ 0

Detyra zgjidhet duke aplikuar unazën Foor Loop brenda Case Structure për të realizuar funksionin grafikisht (Fig.3.6). Në Front Panel (Fig.3.5) krijohet grafiku i funksionit, dhe kontrolla e quajtur Zgjedhe opcionin, me dy mundësi – 0 ose 1. Opcioni 0 paraqet grafikun e funksionit 2x-1, më i vogël se zero, ndërsa opcioni 1 paraqet grafikun e funksionit x2 +1, më i madh ose baraz me zero. Në fig.3.6 është paraqitur programi në Block Diagram, në të cilin në opcionin 0 është krijuar programi për paraqitjen e grafikut 2x-1, ndërsa në opcionin 1 është krijuar programi për paraqitjen e grafikut x2+1. Brenda Case Structure është krijuar unaza For Loop me programin për zgjidhjen e funksionit, pastaj me lidhjen dalëse Cluster të llojit Bundle dhe me terminalin e diagramit xy.

Fig.3.5

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime3

63

Fig.3.6

Detyrë 3.5. Me anë të Case Structures të llogaritet rrënja katrore e vlerës së dhënë x. Programi të llogarisë rrënjën katrore për vlera të x≥0, dhe të lajmërojë gabim nëse vlera e x<0.

a) b)

c) Fig.3.7. Programi për llogaritjen e rrënjës katrore

Në detyrë, në Front Panel madhësia hyrëse është kontrolla Vlera x ndërsa madhësia dalëse është indikatori Rezultati – rrenja katrore e x. Në Block Diagram është krijuar program për opcionin True dhe False. Në True të Case Structure është paraqitur opcioni i llogaritjes së rrënjës katrore me terminalin Sqare Root nga paleta Functions->Numeric dhe është lidhur me portin hyrës dhe dalës të Case Structure. Në opcionin False është krijuar për herë të parë, opcioni i deklarimit të paraqitjes së gabimit, duke zgjedhur terminalin Functions-> Dialog & User Interface->One Btn

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime3

64

Dialog. Në hyrje të këtij terminali krijohet një String konstantë, duke e zgjedhur nga Functions-> String->String Constant. Në këtë terminal e shkruajmë Gabim, numri negativ. Kjo do të thotë që nëse shkruajmë numrin negative në Vlera e x, do na paraqitet gabimi si në fig.3.7.b.

Fig. 3.8. Zgjedhja e terminaleve për deklarimin e gabimit

3.1. STRUKTURA SEKUENCIALE

Këto struktura përbëhen nga një apo më shumë nëndiagrame apo korniza që ekekutojnë në mënyrë sekuenciale. Me anë të klikimit në kufirin e strukturës me miun e djathtë dhe me zgjedhjen e Add Frame After, shtojmë sekuencat njëra pas tjetërs ose për të kaluar të dhënat nga një kornizë në tjetrën (Fig.3.9). Strukturat sekuenciale zgjedhen nga paleta Functions-> Structures->Stacked Sequence Structure. Këto sekuenca përdoren edhe për të ekzekutuar nëndiagramet njëri pas tjetrit.

Fig.3.9. Krijimi i strukturave sekuenciale

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime3

65

Detyrë 3.6. Me anë të Stacked Sequence Structure të paraqitet grafikisht funksioni F(x) që plotëson kushtet të treguara më poshtë. Grafiku të paraqitet veqmas për secilin nga tri opcionet. Detyra është treguar në Fig.3.10, Fig.3.11, Fig.3.12.

3x+1 për x < 0

F(x) = x2 - 1 për 0 ≤ x < 10

2x-3 për 10 ≤ x < 99

Detyra është realizuar duke paraqitur tre grafikët në Front Panel. Në Block Diagram është realizuar programi ku janë krijuar tri sekuenca me anë të Stacked Sequence Structure të numëruara me 0, 1, 2, për secilin funksion përkatësisht. Në secilën sekuencë është krijuar program me For Loop, me lidhjen dalëse të llojit Cluster dhe me terminalin e diagramit xy. Në sekuencën 0 është krijuar program për paraqitjen e grafikut 3x+1, për kushtin x < 0 dhe është lidhur me grafikun e parë në Front Panel. Në sekuencën 1 është krijuar program për paraqitjen e grafikut x2 - 1, për kushtin 0 ≤ x < 10 dhe është lidhur me grafikun e dytë në Front Panel. Në sekuencën 2 është krijuar program për paraqitjen e grafikut 2x-3, për kushtin 10 ≤ x < 99 dhe është lidhur me grafikun e tretë në Front Panel. Përparësia e Stacked Sequence Structure është se nuk ka nevojë të krijohet dhe të zgjedhet opcioni për ekzekutim. Në këtë rast ekzekutohen të tri diagramet përnjëherë.

Fig.3.10. Pamja e detyrës në Front Panel

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime3

66

Fig.3.11. Pamja e pjesë së Stacked Sequence me vlerë 0, për 3x+1, për kushtin x < 0

Fig.3.12. Pamja e pjesë së Stacked Sequence me vlerë 1, për x2 - 1, për kushtin 0 ≤ x < 10

Fig.3.13. Pamja e pjesë së Stacked Sequence me vlerë 2, 2x-3, për kushtin 10 ≤ x < 99

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime3

67

Detyrë 3.7. (Për ushtrime) Me anë të Stacked Sequence Structure të paraqitet grafikisht funksioni F(x) që plotëson kushtet të treguara më poshtë. Grafiku të paraqitet veqmas për secilin nga tri opcionet.

2x3-x+1 për x < 0

F(x) = 1-x2 për 0 ≤ x < 10

ln(x+1) për 10 ≤ x < 99

3.2. STRUKTURA E FORMULAVE – FORMULA NODE

Në kuadër të LabView ekziston edhe struktura që mund të bëjë evaluimin e formulave dhe shprehjeve të ngjashme me gjuhën programuese C në Block Diagram. Strukturat e formulave zgjedhen nga paleta Functions-> Structures->Formula Node. LabView përkrah shumë funksione që përdoren edhe në gjuhën C që mund të aplikohen në këtë strukturë: abs, acos, acosh, asin, asinh, atan, atan2, atanh, ceil, cos, cosh, cot, csc, exp, expm1, floor, getexp, getman, int, intrz, ln, lnp1, log, log2, max, min, mod, pow, rand, rem, sec, sign, sin, sinc, sinh, sizeOfDim, sqrt, tan, tanh. Këto funksione do ti përdorim edhe në detyra tjera të ardhshme.

Detyrë 3.8. Me anë të strukturës së formulave Formula Node të paraqitet programi për llogaritjen e shprehjes së funksionit F(x) të dhënë më poshtë. Detyra është treguar në Fig.3.14.

2x+1 për x ≥ 0

F(x) = x3 + 1 për x < 0

Fig.3.14. Programi për llogaritje me anë të Formula Node

Në detyrë, brenda Formula Node është krijuar programi nga gjuha programuese C për llogaritjen e funksionit në bazë të vlerës së x të krijuar si kontrollë në Front Panel. Rezultati është paraqitur në formë të madhësisë Indicator. Të dy këto objekte janë lidhur me Formula Node. Kontrolla Vlera e x është lidhur me hyrjen e Formula Node në portin x, ndërsa Indikatori Rezultati y është lidhur në portin y dalës të Formula Node.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime4

68

4. KRIJIMI I subVI

Sub Vi - që në përkthim i bie nënVi, apo nëngrup i Vi, paraqet një Vi në kuadër të një Vi tjetër. Një SubVi krijohet njejtë si një Vi, dhe mund të aplikohet në një apo më shumë Vi. Duhet paraprakisht të përcaktohet ikona e subVi si dhe madhësitë hyrëse dhe dalëse që pastaj do të lidhen në Vi.

Një SubVi i korrespondon një një nënrutine në gjuhët tjera programuese që zakonisht quhet subroutine. Përdorimi kryesor është të krijohet një sekuencë programuese që mund të përdoret disa herë në një Vi të çfarëdoshme, apo në disa Vi.

Pas krijimit të një Vi që destinohet për subVi, atëherë do të krijohet edhe ikona përkatëse, dhe madhësitë hyrëse dhe dalëse.

Detyrë.4.1. (Referuar në detyrën 2.8) Në detyrën 2.8, fq.49, është treguar detyra e paraqitjes së grafikut të funksionit y = 4·x3-1, për vlerat x= -30…+30. Në fig.4.1 është treguar Block Diagram i programit për grafikun e funksionit.

Fig. 4.1. Block Diagrami me unazën For Loop, për krijimin e funksionit y= 4·x3-1, në vlerat x=-30…+30

Hapim detyrën 2.8, dhe e ruajmë si detyrë e re 4-1-Funksioni-4x3-1-me subvi. Në Block Diagram të detyrës, në kuadër të unazës For Loop, janë përsëritur dy herë i njejti operacion matematikor për llogaritjen e funksionit y = 4·x3-1, njëri për llogaritjen në vlerat negative të x (lartë) dhe tjetri për llogaritjen në vlerat pozitive të x (poshtë), (të treguara brenda elipsës). Me qëllim që të mos përsëritet dy herë e njejta sekuencë në Block Diagram, do të krijojmë këtë grup të terminaleve dhe vijave në një subVi. E mbyllim këtë vi përkohësisht.

Hapi i ardhshëm - Krijojmë një vi të re, për Subvi, dhe në të vendosim vetëm terminalet e llogaritjes së funksionit y = 4·x3-1. Krijojmë në Front Panel një kontrollë – Vlera e x, si madhësi hyrëse, dhe një indikator- Rezultati y (Fig.4.2). Krijojmë apo kopjojmë sekuencën e terminaleve dhe vijave të llogaritjes së funksionit y = 4·x3-1 dhe e vendosim në Block Diagram. Lidhim kontrollën Vlera e x në hyrje të terminalit të fuqisë Poëer of x. Kontrollën Vlera e x, e bëjmë të dhënë integer, duke zgjedhur I32. Kjo për arsye se në vi të funksionit (Fig.4.1), terminal i

Dr.sc. Ilir D

iterimeve në dalje, n

Nëlidhjeve – dalëse nëzgjedhim

definuar –klikojmë nmiut klikovi. Klikojklikojmë Panel i lidrast kaltër

Nëklikojmë dritarja si

Pane

Doçi

i , si madhënga operator

F

ë pjesën e epConnection P

ë Vi. Klikojnjë konfigu

– një hyrësnë drejtkëndojmë në Frojmë në drejtnë Front Padhjeve do tër dhe protoka

ë pjesën djambi këtë bunë fig.4.4, e

eli i lidhjeve

ësi hyrëse mr i zbritjes Su

Fig. 4.2. Kriji

përme të FroPane (fig. 4.3jmë me miuuracion që

se dhe një ddëshin e majtont Panel kontkëndëshin e

anel indikatoë ndryshojë nalli).

Fig. 4

athtas të Pauton me mie quajtur Ico

Krijimi i ikonë

merr vetëm vubtract.

mi i subVi pë

ont Panel, në3). Ky panelun e djathtëi përshtatet

dalëse, prantë të Panelitntrollën Vlee djathtë (k

orin Rezultatngjyrën në v

4.3. Paneli i l

nelit të lidhjiun e djathtën Editor. Në

ës

Hyrje n

vlera të plota

ër llogaritjen e

ë këndin e dj ofron mundë në Panelimadhësive

ndaj zgjedhit të lidhjeve (ra e x. Me k

kursori prap ti y. Me këtëvarësi të lloj

lidhjeve – Con

hjeve është oë, zgjedhimë këtë editor

në Softverët in

a pozitive. L

e funksionit y

djathtë, paraqdësinë e krijin e lidhjevhyrëse në

im opcionin(kursori ndrykëtë veprim ndryshonë

ë veprim kriit të të dhën

nnection Pan

opcioni i krm nga menyj

janë shumë

xhinierik - LA

idhim indika

y = 4·x3-1

qitet elementimit të madh

ve, shkojmë vi. Kemi dy

n në kyshonë formkrijuam maformën) dheijuam madhënave që janë

e

rijimit të ikoa rënëse Edopcione gra

ABVIEW – Ush

atorin- Rezu

ti i quajtur Phësive hyrëste Patterns

y madhësi p

këtë panel. mën) dhe me adhësinë hyre me anë tëësinë dalëse definuar (n

onës për vi.dit Icon. parafike dhe tek

htrime4

69

ultati y

Paneli i se dhe s, dhe për të

Pastaj anë të

rëse të ë miut të vi.

në këtë

Nëse raqitet

kstuale

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime4

70

për krijimin e ikonës së subvi që e identifikon aty ku vendoset. Zgjedhim një simbol nga opcioni Glyphs (i treguar me shigjetë), që paraqitet në dritaren e ikonës në të djathtë.

Fig. 4.4. Dritarja e opcioneve për krijimin e ikonës së Subvi

Nëse dëshirojmë të ndryshojmë apo të vendosim tekst në ikonë, zgjedhim opcionin Icon Text dhe shkruajmë tekstin deri në 4 rreshta. Pas realizimit të të gjitha veprimeve, e ruajmë vi të krijuar dhe e emërojmë, p.sh. 4-1a-subvi.

Për të implementuar këtë vi të krijuar si subVi në një vi tjetër, e hapim edhe njëherë fajllin vi , detyrën 4.2, nga Fig.4.1, për paraqitjen e grafikut të funksionit y = 4·x3-1 me emrin 4-1-Funksioni-4x3-1-me subvi. Shlyejmë pjesën e terminaleve që llogarisin funksionin (nga fig.4.1, të rrethuara me elipsë). Në vend të tyre do të vendoset subvi e krijuar më lartë. (Fig.4.5).

Për të vendosur subvi të krijuar më lartë, në Block Diagram, në paletën Functions zgjedhim Select a Vi, dhe në dritaren e hapur për zgjedhjen e një fajlli, e zgjedhim 4-1a-subvi.vi. Në Block diagram del në formë të ikonës me një port hyrës dhe një port dalës (Fig.4.6). E vendosim brenda

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime4

71

unazës ForLoop, dhe e lidhim në portin hyrës me daljen e operatorit të numrave negativ (-x) dhe në dalje me Terminalin Cluster.

E bëjmë edhe njëherë të njejtin veprim duke zgjedhur edhe njëherë të njejtin SubVi me opcioni Select a Vi, dhe e vendosim në unazën For Loop. Këtë herë e lidhim me pjesën nga terminali i që paraqet numrat pozitiv të x dhe në dalje me Terminalin tjetër Cluster. Në pjesën tjetër të Block Diagramit nuk ndryshojmë asgjë.

Fig. 4.5. Front Panel dhe Block Diagrami për implementimin e SubVi

Fig. 4.6. Ikona e SubVi e krijuar paraprakisht, me një port hyrës dhe një port dalës

Pas ekzekutimit të detyrës – Fig.4.5, programi do të procesojë paraqitjen e diagramit, njejtë si në detyrën 2.8. Detyrë.4.2. Të krijohet një subvi, ngjashëm me detyrën 2-16, që lexon të dhënat e matjeve në milivolt (mV) të paraqitura në formë të objektit Array, ndërsa të dhënat dalëse duhet shndërruar dhe paraqitur në volt (V). Të dhënat hyrëse dhe dalëse të lidhen në Panelin e lidhjeve. Subvi e krijuar të ruhet dhe të emërohet.

Pas krijimit të subvi, të krijohet një vi, që do të përdorë subVi të krijuar për të simuluar instrumentin matës të temperaturës që shndërron të dhënat hyrëse në mV në të dhëna dalëse Temperaturë (ºC) të njësisë së caktuar.

SubVi e krijuar është paraqitur në Fig.4.7. Lartë në këndin e djathtë të Front Panel është treguar Paneli i lidhjeve dhe ikona e krijuar. Është emëruar 4-2a-Leximi i të dhenave ne volt-1.

Vi e krijuar për matjen e madhësisë dalëse, temperaturës në njësi ºFahrenheit apo ºCelcius, është paraqitur në Fig.4.9. Është emëruar 4-2-Konvertimi i volt ne temp.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime4

72

Fig.4.7. SubVi e krijuar dhe e emëruar 4-2a-Leximi i të dhenave ne volt-1

Fig.4.8. Ikona e krijuar për SubVi

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime4

73

VI me emrin 4-2-Konvertimi i volt ne temp merr vlerat e Volt (V) nga një SubVi, ato të dhena i konverton në temperature duke i shumëzuar me 10, dhe pastaj duke i paraqitur direkt në njesinë ºCelcius apo duke i konvertuar në ºFahrenheit, duke hapur Vi tjetër si SubVi. (Fig.4.9) Në madhësi hyrëse është paraqitur kontrolli Boolean i llojit Vertical Toggle Switch me emrin Shkalla e temp i cili në opcionin On jep rezultatin në ºC, ndërsa në opcionin Off jep rezultatin në ºFahrenheit. Opcionet janë rregulluar edhe me ngjyrë. Në dalje, në anën e djathtë të strukturës vendoset terminali Indikator – Thermometer i quajtur Temperatura që paraqet rezultatin e temperaturës.

Fig.4.9. Detyra e zgjedhur

Në këtë vi për herë të parë është përdorur Operatori Select, që jep si rezultat vlerën hyrëse t, ose f, në varësi nga vlera e s. Nëse s është TRUE, ky funksion jep vlerën e lidhur për t. Nëse është FALSE, ky funksion jep vlerën e lidhur për f. Ky operator-terminal mund të merret nga paleta Functions->Comparision->Select. (Fig.4.10)

Fig.4.10. Operatori Select

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime5

74

5. VEPRIMET ME FAJLLA NË LAB VIEW – FILE I/O

Operacionet me fajlla (skedarë) në LabView, të quajtura edhe si File input and output (I/O)

vendosin informatat apo shënimet, ruajnë dhe marrin informatat nga file apo skeda të formateve të

ndryshme në disk të kompjuterit, apo në ndonjë medium tjetër (Flash Disk, hard disk eksternal),

etj.

Lab View ka shumë funksione që merren me veprimet me fajlla, që njihen edhe me termën

File I/O. Të gjitha funksionet File I/O janë të vendosura në paletën Functions->File I/O. Këto

funksione ndërlidhem edhe me funksionet tjera në këtë paletë: Measurements I/O, Instrument I/O,

Signal Processing, etj. (Fig.5.1). Aplikim të rëndësishëm kanë në shkruarjen dhe ruajtjen e

informatave që merren me anë të matjeve nga pajisjet e ndryshme hardverike dhe sinjalet e

ndryshme.

Për të kuptuar më mirë File I/O procesin, do ta tregojmë me anë të shembujve me detyra.

Fig.5.1. Paleta File I/O me funksionet-terminalet

Detyrë.5.1. Të realizohet shkruarja e tekstit nga Front Panel dhe ai tekst të ruhet në një file

të ri të dhënave me titull Test1.dat.

Në Fig. 5.2. është treguar zgjedhja e detyrës. Në Front Panel është krijuar një kontrollë e

llojit String, nga paleta Controls->String&Path-> String Control me emrin Te dhenat (Fig.5.2.a).

Në këtë kontrollë do të vendoset teksti që do të shkruhet në një file.

Në Block Diagram është krijuar programi (Fig.5.2.b). Në program, nga e majta, është

krijuar terminali i parë Open/Create/Replace File nga paleta Functions->File I/O->

Open/Create/Replace File. Në portin hyrës të këtij terminali file path (use dialog) krijohet një

konstantë, që paraqet një string konstantë, në të cilën shkruhet vendndodhja e file dhe emri i fajll

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime5

75

që do të krijohet. Vendndodhja duhet të shkruhet bazuar në sistemin e file dhe folder të Sistemit

Operativ Windows, në formën, si p.sh:

G:\Shenime-Softveret inxhinierik1\LabView-ushtrime-detyra\Test1.dat

Vendndodhja e paraqitur tregon se fajlli që do të krijohet është fajll tekstual i llojit

test1.dat, dhe do të vendoset në një folder të diskut virtual G:

a)

b) Fig.5.2. Detyra e zgjidhur

Terminali Open/Create/Replace File paraqet terminalin kryesor për krijimin e një file,

hapjen apo zëvendësimin e një file duke përdorur edhe File dialog box – hapjen e dritares së

folderit ku vendoset apo ndodhet file.

Write to Text File – Paraqet terminalin tjetër të domosdoshëm që shkruan një të dhënë

tesktuale – String apo një vektor – Array me më shumë rreshta string në një file. Në këtë terminal,

në portin e tij hyrës – text lidhet porti dalës i indikatorit string – Te dhenat.

Simple Error Handler VI – Krijon informatat e gabimit – error dhe ato i paraqet në ekran,

nës rast se ka ndonjë gabim. Ky terminal është i lidhur në dy terminalet e programit, për të

informuar mbi gabimin në krijim të fajllit dhe në shkruarje të fajllit

Në Fig.5.3. është treguar file i krijuar tekstual me emrin Test1.dat. Ky file mund të hapet me anë

të programit Notepad. File tekstual mund të ruhet edhe në formatin txt, p.sh. test1.txt.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime5

76

Fig.5.3. Fajlli i krijuar – test1.dat dhe përmbajtja tekstuale e tij e krijuar në objektin string në LabView

Detyrë.5.2. Të realizohet shkruarja nga tri objekte nga Front Panel: një objekt String me

përmbajtje tekstuale dhe titullin Të dhënat, një vlerë numerike, dhe një një object String me

përmbajtje tekstuale dhe titullin Njësia matëse, që paraqesin të dhënat e përvetësuara nga

instrumenti matës i presionit. Teksti te ruhet në një file të ri tekstual me titull Test2.txt.

a)

b)

Fig.5.4. Detyra e krijuar

Në Fig. 5.4. është treguar zgjedhja e detyrës. Në Front Panel është krijuar një objekt i ri në

Controls->String&Path->File Path Control që paraqet objektin e definimit të vendndodhjes së

file që do krijohet (Fig.5.5). Objekti e ka emrin: Vendndodhja e fajllit qe krijohet dhe emri i fajllit.

Në këtë objekt shkruhet vendndodhja e folder dhe file që krijiohet.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime5

77

Janë krijuar edhe tri objekte tjera që paraqesin të dhënat që duhet shkruar në file të ri: një

kontrollë e llojit String, nga paleta Controls->String&Path-> String Control me emrin Te dhenat

(Fig.5.4.a), një objekt i llojit Numeric Control për të shkruar vlerën numerike të majtes, dhe një

tjetër object String nga Controls->String&Path-> String Control me emrin Njesia Matese.

Fig.5.5. Paraqitja e objektit string të llojit File Path Control në Front Panel

Në Block Diagram është krijuar programi (Fig.5.4.b). Në program, nga e majta, është

paraqitur terminali i parë File Path Control i krijuar në Front Panel i cili lidhet me portin hyrës të

terminalit Open/Create/Replace File nga paleta Functions->File I/O. Në tjetrin port hyrës të

terminalit Open/Create/Replace File në Operation definohet veprimi i shkruarjes në file, që në

këtë rast zgjedhet Create.

File Path Control lidhet dhe me terminalin Write to Text File nga paleta Functions->File

I/O. Në portin hyrës text të terminalit Write to Text File, lidhet terminali i ri Concatenate String që

ka për funksion mbledhjen e disa të dhënave hyrëse të llojit String në një grup të të dhënave

dalëse. Numri i porteve hyrëse të tij mund të shtohet sipas nevojës. Në portet hyrëse të këtij

terminali lidhen madhësitë hyrëse: Te dhenat, Vlera Numerike, Njesia Matese.

Në mes tyre është krijuar objekti , që paraqet Carriage Return Constant nga Paleta

Functions->String, që zakonisht përdoret për të shkruar të dhënat në rresht të ri.

Për shkak se terminali Concatenate String pranon vetëm madhësi tekstuale-string në hyrje,

atëherë madhësinë Vlera numerike që është madhësi numerike duhet shndërruar në teskt-string.

Kjo arrihet duke lidhur objektin Vlera numerike me objektin e ri Number to Decimal String që

merret nga Paleta Functions->String->Number/String Conversion, që bën konvertimin e vlerave

numerike në vlera tekstuale. Pastaj, portin dalës të Number to Decimal String e lidhim me portin

hyrës të Concatenate String.

Në dalje të objekteve Open/Create/Replace File dhe Write to Text File janë krijuar

terminalet e informimit mbi gabimin - Simple Error Handler VI .

Vendndodhja e paraqitur në detyrë tregon se fajlli që do të krijohet është fajll tekstual i

llojit test2.txt, dhe do të vendoset në një folder të diskut virtual G. File i krijuar është paraqitur në

Fig.5.6. Ky file mund të hapet me anë të programit Notepad.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime5

78

Fig.5.6. File i krijuar – test2.txt dhe përmbajtja tekstuale e tij e krijuar në detyrë

Detyrë.5.3. Leximi nga file. Të realizohet detyra që bën leximin e të dhënave nga file i krijuar nga

Detyra5.2, me titull Test2.txt.

a)

b)

Fig.5.7. Leximi i të dhënave nga file tekstual

Në Fig. 5.7 është treguar zgjedhja e detyrës. Në Front Panel është krijuar objekti File Path

Control nga Controls->String&Path që paraqet objektin e definimit të vendndodhjes së file që do

krijohet (Fig.5.7.a). Objekti e ka emrin: Vendndodhja e fajllit qe krijohet dhe emri i fajllit. Në këtë

objekt shkruhet vendndodhja e folder dhe file që krijiohet. Më poshtë, në Front Panel është krijuar

një drejtëz dekoruese, nga Controls->Decorations->Thick Line. Objekti tjetër poshtë me radhë

është një String Indicator nga Controls->String&Path me titull Të dhënat e lexuara nga file që do

të përaqesë përmbajtjen e file që lexohet, në këtë rast test2.txt.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime5

79

Në Block Diagram është krijuar programi (Fig.5.7.b). Në program, nga e majta, është

paraqitur terminali i parë File Path Control i krijuar në Front Panel i cili është lodhur me portin

hyrës të terminalit Open/Create/Replace File nga paleta Functions->File I/O. Në tjetrin port hyrës

të terminalit Open/Create/Replace File në Operation definohet veprimi i hapjes së file për lexim,

dhe në këtë rast zgjedhet Open.

Terminali File Path Control me emrin Vendndodhja e fajllit qe krijohet dhe emri i fajllit

lidhet edhe me terminalin e ri Read from Text File nga paleta Functions->File I/O. Në portin dalës

text të terminalit Read from Text File, lidhet terminali i objektit String Indicator që përdoret për të

paraqitur të dhënat nga file.

Në dalje të objekteve Open/Create/Replace File dhe Read from Text File janë krijuar

terminalet e informimit mbi gabimin - Simple Error Handler VI.

5.1. Krijimi i file tabelar të formatit .xls të programit Microsoft Excel

File tabelar janë të përshtatshëm për leximin dhe interpretimin e të dhënave nga

instrumentet matëse apo të dhëna tjera të mbledhura. LabView ofron mundësinë e shkruarjes në

file tabelar, veqanërisht në formatin e programit Microsoft Excel -.xls , .xlsx, apo në formatin

Comma Separated Values - .csv. Detyrë.5.4. Të krijohet file i formatit Excel (xls), dhe në këtë file të shkruhen të dhënat

numerike nga vektori i dhënë. Emri i file të quhet Test3.xls.

Në Fig. 5.8 është treguar zgjedhja e detyrës. Në Front Panel është krijuar objekti File Path

Control nga Controls->String&Path që paraqet definimin e vendndodhjes së file që do krijohet

(Fig.5.8.a). Objekti ka emrin: Vendndodhja e fajllit qe krijohet dhe emri i fajllit. Në këtë objekt

shkruhet vendndodhja e folder dhe file që krijiohet. Majtas, në Front Panel është krijuar objekti

vektor dydimensional, me 3 kolona dhe 7 rreshta, të cilat janë plotësuar me numra. Qëllimi i

detyrës është që këta numra të vektorit të dhënë të vendosen në një excel file.

Fig.5.8.a.

Në Block Diagram është krijuar programi (Fig.5.8.b). Në program, nga e majta, është

paraqitur terminali i parë File Path Control i krijuar në Front Panel i cili është lodhur me portin

hyrës të terminalit Open/Create/Replace File nga paleta Functions->File I/O. Në tjetrin port hyrës

të terminalit Open/Create/Replace File në Operation definohet veprimi i krijimit të file, dhe në

këtë rast zgjedhet create.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime5

80

Fig.5.8.b. Detyra e krijuar

Terminali File Path Control me emrin Vendndodhja e fajllit qe krijohet dhe emri i fajllit

lidhet edhe me terminalin e ri Write to Spreadsheet File.vi nga paleta Functions->File I/O. në

njërin port hyrës file path. Porti tjetër hyrës 2D data (Fig.5.9) lidhet me terminalin e vektorit të

krijuar në Front Panel – Vektori i dhënë. Në terminalin Write to Spreadsheet File.vi mund të

lidhet edhe vektori njëdimensional.

Në dalje të objektit Open/Create/Replace File është krijuar terminali i informimit mbi

gabimin - Simple Error Handler VI.

File i krijuar në formatin .xls është paraqitur në Fig.5.10.

Fig. 5.9. Sintaksa e terminalit Write to Spreadsheet File.vi

Në fig.5.9 është paraqitur terminali Write to Spreadsheet File.vi dhe sintaksa e tij. Është me

rëndësi të elaborohet elementi në krye të këtij terminali format (%.3f). Ky element paraqitet me

miu i djathtë->Create->Constant. Paraqet formatin e të dhënave që do të shkruehn në file të

krijuar. Ky element paraqitet edhe në terminale tjera që përdoren për shkruarje të të dhënave.

Formati i treguar në Fig.5.8.b në formën %#f do të thotë:

% - fillim i specifikimit të formatit

# - hiqen zero pas presjes dhjetore

f – paraqiten të dhëna të llojit Floating number me format decimal (p.sh. 11.4)

Përveq të dhënës f paraqiten edhe kode tjera të formateve:

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime5

81

x – Numër Hexadecimal (për shembull, B8).

o - Numër Octal (për shembull, 701).

b- Numër Binar (për shembull, 1011).

d - numër decimal i destinuar.

u - numër decimal i padestinuar.

e - Floating-point numër në format shkencor in scientific notation (për shembull, 1.14E1).

s – String (për shembull, Madhesi matese).

Sintaksa e formatit të shkruarjes së të dhënave është si vijon:

%[$][-][+][#][^][0][Width][.Precision || _SignificantDigits][{Unit}][<Embedded

information>]Conversion Code

Fig.5.10. File i krijuar në formatin tabelar – test3.xls dhe të dhënat e vektorit të krijuar në LabView të

shpërndara në tabelën e test3.xls

Detyrë.5.5. Të krijohet file i formatit Excel (.xls), dhe në këtë file të shkruhen të dhënat e

llogaritjes së shpehjes së funksionit F(x) = x+rand, në 5 rreshta dhe 10 shtylla. Funksioni rand

paraqet funksionin random që krijon numra të çfarëdoshëm në mes të 0 dhe 1. Emri i file të quhet

Test4.xls.

Fig.5.11.a

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime5

82

Në Fig. 5.11.a është treguar zgjedhja e detyës në Front Panel. Është krijuar objekti File

Path Control nga Controls->String&Path që paraqet definimin e vendndodhjes së file që do

krijohet (Fig.5.11.a). Objekti ka emrin: Vendndodhja e fajllit qe krijohet dhe emri i fajllit. Në këtë

objekt shkruhet vendndodhja e folder dhe file që krijiohet. Më poshtë, në Front Panel është krijuar

objekti Numeric Control, për të shkruar vlerën e x. Qëllimi i detyrës është që vlerat e funksionit të

shkruhen në file tabular të formatit .xls në 5 rreshta dhe 10 shtylla (në këtë rast 11, pasi paraqiten

edhe indekset e rreshtave).

b) Fig.5.11.b. Detyra e zgjidhur në Block Diagram

Në Block Diagram, në portin hyrës të terminalit Open/Create/Replace File në Operation definohet

veprimi i krijimit të file apo i mbishkruarjes së file, dhe në këtë rast zgjedhet replace or create.

Janë krijuar dy unaza For Loop njëra brenda tjetrës. Unaza e jashtme mundëson krijimin e

rreshtave-5, ndërsa unaza e brendshme krijimin e shtyllave -10 (Fig.5.11.b). Shtyllën e parë e

krijon terminali i unazës së jashtme – i. Shtyllën e dytë dhe të tretë e krijon terminali i paraqitjes së

dates dhe orës kur është krijuar file apo matjet.

Janë paraqitur edhe disa terminale për herë të parë:

Expression Node – është terminali i marrë nga paleta Functions->Numeric-> Expression Node, që

është e ngjashme me Formula Node nga kapitulli i strukturave, brenda unazës së brendshme. Në

këtë terminal shkruhet shprehja matematikore, që në këtë rast është x+rand. Në portin hyrës të

këtij terminali lidhet e dhëna hyrëse - variabla x, ndërsa në dalje lidhet me daljen e unazës së

brendshme.

Array To Spreadsheet String – nga Paleta Functions->String, konvertimi nga Array - vektor i

krijuar nga For Loop Unaza e brendshme në String-teksual për fajllin në excel. Ndodhet në unazën

e jashtme. Formati në këtë terminal në formën %3.3f për paraqitjen e të dhënave në Excel tabelë

do të thotë:

% - fillim i specifikimit të formatit

3.3 – numri paraqitet me më së shumti tri vlera para presjes dhjetore dhe tre numra pas presjes

dhjetore

f – paraqiten të dhëna të llojit Floating number me format decimal (p.sh. 11.4)

Number To Decimal String Function - nga Paleta Functions->String->Numer/String Conversion

Konvertimi nga vlera numerike ne String – tekst.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime5

83

Get Date/Time String Function - Konverton vlerën kohore në vlerë numerike të dates ose kohës,

ne zonën kohore të konfiguruar. Ky terminal është i vlefshëm për kohën, ne term te datës dhe orës,

dhe kalkulon vlerën ne sekonda. Ky terminal mundëson paraqitjen e datës dhe kohës së krijimit të

file.

- Operatori nga paleta Functions->String->Tab Constant që është i përshtatshëm për të shtyer-

kaluar të dhënat në kolonë tjetër. Në këtë detyrë është përdorur disa herë në terminalin

Concatenate Strings.

Të gjithë terminalet tjerë në detyrë janë të njohur paraprakisht. File i krijuar në formatin .xls me

titull test4.xls është paraqitur në Fig.5.12.

Fig.5.12. File i krijuar në formatin tabelar – test4.xls dhe të dhënat e funksionit f(x)=x+rand të paraqitura

në 5 rreshta dhe 10 (13) shtylla

5.2. SHKRUARJA E SINJALEVE TË SIMULUARA NË FILE

Detyrë.5.6. Të krijohet file i formatit Excel (.xls), dhe në këtë file të shkruhen të dhënat e

sinjalit të simuluar të llojit sinusoidë nga një instrument matës. Emri i file të quhet Test5.xlsx.

Detyra është e rëndësishme për kuptimin e sinjaleve me anë të LabView.

Në Fig. 5.13 është treguar zgjedhja e detyrës. Në Front Panel jane krijuar dy objekte nga

File Path Control nga Controls->String&Path që paraqesin definimin e vendndodhjes së file që

do krijohet (Fig.5.13.a). Objekti i parë ka emrin: Emri i fajllit. Në këtë objekt shkruhet emri i fajllit

që krijohet: Test5.xls. Objekti tjetër ka emrin: Vendndodhja e fajllit. Në këtë objekt shkruhet

vendndodhja e folder për file që krijohet.

Në Block Diagram, Fig.5.13.b është treguar programi i realizuar i detyrës. Programi ka një

unazë For…Loop me 10 iteracione. Në këtë detyrë për herë të parë janë përdorur tri terminale të

reja.

Terminali i parë, jashtë unazës, që përdoret si madhësi hyrëse është Build Path, që përdoret

për të krijuar vendndodhjen dhe emrin e file që krijohet. Gjendet në Functions->File I/O-> Build

Path. Terminali ka dy hyrje: Build Path – që krijon vendndodhjen e file në një folder, dhe Name or

relative path – emri i file që krijohet (Fig.5.14). Kjo është një procedurë tjetër, ndryshe nga detyra

më lartë e krijimit të një file dhe vendndodhjes së tij.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime5

84

a)

b) Fig.5.13

Fig.5.14. Sintaksa e terminalit Build Path

Terminal tjetër jashtë unazës, që përdoret si madhësi hyrëse është Simulate Signal, që

gjendet në Functions->Signal Processing->Waveform Generation->Simluate Sig (Fig.5.15). Ky

terminal ofron në mënyrë simulative gjenerimin e sinjaleve të ndryshme të instrumenteve dhe ato

sinjale i krijon në dalje në formë numerike (Fig.5.16). Objekti ofron disa lloje të sinjaleve (Signal

type): Sine-sinjal sinusoidë, square-sinjal katorë, triangle-sinjal trekëndësh, sawtooth-sinjal i

dhëmbëzuar, DC- Sinjal i rrymës së vazhduar. Gjithashtu mund të rregullohet frekuenca e sinjalit,

amplituda, faza, dhe offset-menjanimi nga pozita ndaj boshtit x, etj. Në rastin e detyrës sonë,

frekuenca e sinjalit është 11 Hz, amplituda e sinjalit λ = 2, faza φ = 0º, ndërsa offset =0. Samples

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime5

85

per second – paraqet numrin e vlerave të matura në second. Vlera zyrtare është 1000. Number of

samples – paraqet numrin e matjeve që paraqiten në file. Numri zyrar është 100.

Fig.5.15. Pozita e terminalit Simulate Sig

Fig.5.16. Vetitë e terminalit Simulate Sig dhe lloji i sinjalit Sine (Sinusoidë)

Fig.5.17. Sinjali sinusoidë me zhurmë uniforme (Uniform White Noise), që ka amplitudë 0.6

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime5

86

Element tjetër i rëndësishëm i sinjaleve në këtë terminal është zhurma e sinjalit (signal

noise) që paraqet madhësinë e parregullsive dhe jorrafshirave në sinjalin e gjeneruar (Fig.5.17). Në

këtë detyrë është zgjedhur zhurma e sinjalit Uniform White Noise, si njëri prej disa llojeve të

zhurmës, me amplitudë λ = 0.6.

Terminali tjetër brenda unazës është Write to Measurement File. Gjendet në Functions-

>File I/O->Write to Measurement File. Përdoret për të shkruar të dhënat nga matjet e sinjaleve në

një file. Nga Fig.5.13.a, dalja nga objekti Build Path lidhet me portin hyrës Filename, ndërsa dalja

nga objekti Simulate Sig lidhet me portin hyrës Signals. Nga porti dalës ErrorOut lidhet me

objektin e krijuar për paraqitje të gabimit - Simple Error Handler. Duhet pasur kujdes së ky

terminal në këtë version të LabView shkruan vetëm file excel të formatit .xlsx.

Pas ekzekutimit të detyrës do të paraqitet file si në fig.5.18, që paraqet të dhënat e

funksionit sinusoidë në vlera numerike.

Fig.5.18. File i krijuar test5.xlsx me vlerat numerike të funksionit sinusoidë

Detyrë.5.7. Të krijohet file i formatit Excel (.xls), dhe në këtë file të shkruhen të dhënat e sinjalit të

simuluar të llojit Sawtooth nga një instrument matës. Sinjali gjithashtu të paraqitet grafikisht.

Emri i file të quhet Test6.xlsx.

Në Fig. 5.19 është treguar zgjedhja e detyrës. Në Front Panel janë krijuar disa objekte:

File Path Control nga Controls->String&Path që paraqesin definimin e vendndodhjes së

file që do krijohet (Fig.5.19.a). Objekti i parë ka emrin: Emri i fajllit. Në këtë objekt shkruhet emri

i fajllit që krijohet: Test6.xlsx. Objekti tjetër ka emrin: Vendndodhja e fajllit. Në këtë objekt

shkruhet vendndodhja e folder për file që krijohet.

Dy objekte në të djathtë, janë krijuar për të definuar dy madhësi hyrëse. Objekti Knob me

emrin Frekuenca është krijuar për të dhënë madhësinë hyrëse të frekuencës së sinjalit, i ndarë në

10 shkallë. Objekti Knob është krijuar për të dhënë madhësinë hyrëse të amplitudës së sinjalit, i

ndarë në 10 shkallë.

Objekti tjetër është Waveform Graph, që paraqet sinjalin që gjenerohet me simulim. Në

rastin e detyrës sonë, është zgjedhur lloji i sinjalit Sawtooth (Shiqo Fig.5.16).

Në Block Diagram, Fig.5.19.b është treguar programi i detyrës. Programi ka një unazë

For…Loop me 5 iteracione. Programi është i ngjashëm me detyrën 5.6. Ndryshimi është se objekti

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime5

87

Frekuenca lidhet me portin hyrës Frequency të Simulate Signal. Ndërsa objekti Amplituda lidhet

me portin hyrës Amplitude të terminalit Simulate Signal. Kjo mundëson zgjedhjen e frekuencave

dhe amplitudave të dëshiruara dhe shiqimin e rezultateve të fituara në formë grafike dhe tabelare.

Në dalje të terminalit Simulate Signal dhe brenda unazës For Loop është krijuar terminali i

shkruarjes në file excel - Write to Measurement File dhe terminali i paraqitjes grafike Waveform

Graph.

a)

b)

Fig.5.19.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime6

88

6. REGJISTRIMI I TË DHËNAVE NGA PAJISJET

HARDVERIKE DHE KONTROLLI - DAQ

LabView është softver shumë i përshtatshëm për regjistrimin e të dhënave nga pajisjet

hardverike, makinat, llojet e ndryshme të instrumenteve, pajisjet matëse, etj dhe kontrollin e këtyre

pajisjeve me qëllim të aplikimit të skenareve të ndryshme të rregullimit të proceseve. Kjo jep

mundësinë e integrimit të pajisjeve hardverike që lidhen me kompjuter dhe krijimit të

aplikacioneve dhe procedurave programuese në LabView për të realizuar detyrat e nevojshme.

Procesi i regjistrimit të të dhënave nga pajisjet e jashtme hardverike quhet DAQ – Data

Acquisition. Ndërsa pajisjet hardverike nga të cilat regjistrohen të dhënat quhen DAQ device

(DAQ pajisje) apo DAQ board (DAQ pllakë).

Qëllimi kryesor i DAQ pajisjeve është matja e sinjaleve apo gjenerimi i sinjaleve reale nga

këto pajisje. Qëllimi është që këto sinjale të maten apo gjenerohen me anë të pajisjeve të lidhura

me kompjuter dhe të mund të menaxhohen me anë të softverit LabView.

Para se një sistem i bazuar në kompjuter të mund të masë një sinjal fizik, një sensor apo

transducer (konvertor) duhet të konvertojë sinjalin fizik në sinjalin elektrik siq është tensioni,

intensitetii rrymës apo rezistenca. Shpesh për këtë qëllim përdoret një pajisje konvertuese DAQ që

është e lidhur në kompjuter dhe komunikon me ndonjë port të caktuar. Këto pajisje bëjnë edhe

rregullimin e sinjalit. Pas realizimit të lidhjes hardverike në mes të pajisjes dhe kompjuterit,

softveri LabView kontrollon sistemin DAQ duke kërkuar, mbledhur të dhënat, analizon të dhënat

dhe prezenton rezultatet. Pas këtij procesi mund të realizohet edhe procesi i kundërt, në bazë të

dhënave mund të realizohen skenaret e kontrollit apo rregullimit duke përdorur DAQ pajisjet.

Kompjuteri dhe DAQ modulet komunikojnë me anë të porteve të ndryshme: porte paralele, USB,

ose PCMCIA. Këto lloje të sistemeve për komunikim janë praktike për mbledhjen e të dhënave

dhe krijimin e aplikacioneve.

Fig.6.1. Konfiguracioni i pajisjes për regjistrimin dhe gjenerimin e sinjaleve

Porti i lidhjes (COM,

USB, etj.)

Softveri

LabView

DAQ moduli i mbledhjes

të dhënave dhe kontrollit)

Pajisja që matet apo

kontrollohet

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime1

89

Për të kuptuar procedurat e DAQ për mbledhjen dhe gjenerimin e sinjaleve, do të përdorim

pajisjen apo modulin DAQ të llojit NI USB-6008 të krijuar nga kompania National Instruments, që

mundëson veprimet me sinjale nga pajisjet hardverike dhe krijimin e aplikacioneve në LabView

për mbledhjen e të dhënave, matjen e madhësive të ndryshme elektrike dhe krijimin e kontrollit.

Kjo pajisje është pjesë e kompanisë National Instruments (NI) që ka krijuar programin LabView

dhe komunikon me lehtësi me programin LabView. (Fig.6.2)

Fig.6.2. Pajisja NI USB 6008

Fig.6.3. Pjesët tjera përcjellëse të NI USB 6008

Pajisja NI USB 6008 vjen në kutinë së bashku me pjesët përcjellëse që janë: CD me driver

për instalim, dy blloqet terminale (majtas dhe djathtas), USB kabllo për lidhje me kompjuter dhe

manuali për instalim.

Për të funksionalizuar këtë pajisje duhet të instalohen së pari driver-ët në kompjuter që janë

kompatibil me sistemin Operativ Windows. Versioni i tyre në CD është NI-DAQmx 9.1.7. që

90

mundëson insalimin e driverëve që përkrahin pajisjet hardverike të prodhuesit National

Instruments.

Vërejtje: Çdo prodhues i pajisjeve, makinave dhe instrumenteve që ofron opcionin për ti

lidhur ato pajisje në kompjuter duhet të krijojë dhe ofrojë edhe driver-ët përkatës në varësi nga

sistemi operativ i kompjuterit.

Fig.6.4. Opcioni i instalimit të NI-DAQmx 14.5 (version i fundit)

Me qëllim të qasjes në versionin e azhuruar të NI-DAQmx, preferohet të shkarkohet dhe

instalohet version i fundit i këtyre driver-ëve në ëeb faqen e NI (Fig.6.4):

http://search.ni.com/nisearch/app/main/p/bot/no/ap/tech/lang/en/pg/1/sn/catnav:du,n8:3478.41.181

.5495,ssnav:ndr/

Pas instalimit, bëjmë lidhjen e pajisjes NI USB 6008 me kompjuter me anë USB kabllos.

Sistemi Operativ Windows i kompjuterit do ta detektojë këtë pajisje si pajisje e lidhur në njërin

prej USB porteve të kompjuterit. Për të verifikuar nëse pajisja është funksionale e bëjmë

verifikimin dhe testimin në modulin e programit LabView të quajtur NI MAX që është instaluar së

bashku me LabView. Pas hapjes së këtij moduli, shfaqet dritarja si në fig.6.5.

Shkojmë në Devices and Interfaces dhe e klikojmë, dhe na paraqiten pajisjet hardverike të

lidhura që detektohen nga sistemi NI MAX. Këtu është paraqitur pajisja NI USB-6008 me Emrin

“Dev 1”. Në anën e djathtë paaqiten shënimet e pajisjes si dhe opcionet për testim.

Në Self-Test ofrohet opcioni për testim të funksionalitetit të pajisjes. Nëse çdo gjë është në

rregull me pajsijen do të jep konfirmimin The self test completed successfully.

Në Test Panels paraqitet opcioni i testimit dhe analizës së detajuar të pajisjes së zgjedhur.

(Fig.6.6). Këtu mund të testohen:

- Analog Input (Hyrjet analoge) të pajisjes, Analog Output (Daljet Analoge), Digital I/O

(Hyrjet/Daljet digjitale), Counter I/O (Numrimi dhe dalja e sinjaleve të caktuara digjitale).

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime1

91

Fig.6.5. Moduli i verifikimit dhe testimit NI MAX

Fig.6.6. Test Panels- testimi dhe analiza e detajuar e pajisjes

Konfiguracioni i pajisjes NI USB 6008 është i përbërë nga porte analoge që mund të jenë

porte hyrëse dhe dalëse, porte digjitale, porte të tokëzimit, etj. Skema e tyre është treguar në

Fig.6.7.

Karakteristikat kryesore teknike të kësaj pajisje janë:

Inputet analoge

Kanalet single-ended 8

Kanalet diferenciale 4

Diapazoni maksimal i tensionit -10 V - 10 V

Toleranca e saktësisë 138 mV

Diapazoni minimal i tensionit -1 V - 1 V

Numri i rangjeve 8

92

On-Board Memoria 512 B

Outputet analoge

Numri i kanaleve 2

Diapazoni maksimal i tensionit 0 V - 5 V

Toleranca e Saktësisë 7 mV

Diapazoni minimal i tensionit 0 V - 5 V

Shkalla e azhurimit 150 S / s

Digital I / O

Kanalet dydrejtimëshe 12

Kanalet Input-Only 0

Kanalet Output-Only 0

Digital Input

Diapazoni maksimal i tensionit 0 V - 5 V

Digital Output

Diapazoni maksimal i tensionit 0 V - 5 V

Ekzistenca e OEM versioneve

Kompatibil me LabView,

LabWindows™/CVI, dhe Measurement

Studio for Visual Studio .NET

Fig. 6.7. Pamje e porteve të NI-USb 6008

Kjo pajisje në njërën anë ka portet analoge, në anën tjetër porte digjitale. Në Fig.6.7,

kuptimi i porteve është:

GND – tokëzim (Ground). Pika referuese për matjet e inputeve analoge, tensionin e outputeve

analoge, sinjalet digjitale, furnizimit +5 VDC, dhe +2.5 VDC në konektorin I/O.

AI <0..7> - Kanalet e inputeve analoge prej 0 deri 7. Për matje single-ended, secili sinjal është një

kanal i hyrjeve (inputeve) analoge të tensionit. Për matje diferenciale, AI0 dhe AI 4 janë inputet

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime1

93

positive dhe negative të kanalit për inputet diferenciale 0. Sinjali gjithashtu shkon në çift me

kanalet e hyrjeve diferenciale: AI<1, 5>, AI<2, 6>, and AI<3, 7>.

AO <0, 1> - Analog Output kanalet 0 and 1— Furnizojnë me tension dalës AO kanalin 0 dhe

AO kanalin 1.

P0.<0..7> - Port 0 Digital I/O kanalet 0 deri 7— mund të konfigurohet në mënyrë individuale

secili kanal si input ose output.

P1.<0..3> - Port 1 Digital I/O kanalet 0 to 3— mund të konfigurohet në mënyrë individuale

secili kanal si input ose output informatë.

PFI 0 GND Input PFI 0— Ky pin është i konfigurueshëm ose si digital trigger apo input i

numërimit të ngjarjeve (event counter). Triggering do të thotë mbledhja apo gjenerimi i sinjaleve

apo informatave në rast se është plotësuar kushti.

+2.5 V GND Output ose +2.5 V Referenca eksternale — përdoret si referencë për testim. NI

USB-6008/6009 krijon një tension refereues të pastër furnizues për ADC, duke përdorur

rregullorin e shumë gjendjeve (multi-state regulator), amplifikator, dhe filterin e qarqeve. Mund të

përdoret referuesi +2.5 V si sinjal për self-test (autotestim)

+5 V GND Output +5 V burim i rrymës— ofron rrymën +5 V, deri në 200 mA. NI USB-

6008/6009 furnizon me 5 V, 200 mA output. Ky burim i rrymës mund të përdoret për të furnizuar

komponentet eksternale.

Fig. 6.8. Pamja anësore e orteve të NI USB 6008

Detyrë 6.1. Të krijohet vi për realizimin e loopback testimit nga hyrja në dalje të pajisjes NI

USB 6008.

Detyra ka të bëjë me lidhjen enjë kablloje në NI USB nga porti në hyrje në portin dalës,

dhe matjen e vlerave të tensionit të rrymës në dalje bazuar në vlerat e dhëna të tensionit në hyrje.

Kemi të bëjmë me detyrë të matjes së të dhënave dalëse. Më poshtë është dhënë foto dhe vi e

detyrës.

Për të realizuar detyrën, së pari duhet lidhur pajisjen NI USB 6008 me kompjuter përmes

USB kabllos. Pastaj marrim një tel rryme të thjeshtë, dhe njërin skaj e lidhim me portin hyrës AI0

dhe tjetrin skaj me portin dalës AO0. Kjo do të mundësojë që të dhënat hyrëse që i japim në portin

hyrës të paraqiten në portin dalës. (Fig.6.9)

94

Fig.6.9. Lidhja loopback e pajisjes në mes të portit hyrës AI0 dhe portit dalës AO 0

Krijojmë një vi të ri në LabView. Në Front Panel krijojmë detyrën si në Fig.6.10. Krijojmë

një objekt Dial, me emrin Rregullator (Hyrje) dhe e ndajmë në shkallë në mes të 0 dhe 5, që

paraqesin vlerat e tensionit që mund të mat pajisja USB NI 6008 në dalje.

Pastaj krijojmë një objekt tjetër për matje Meter nga Controls->Numeric->Meter, dhe e

emërojmë Metri në dalje. Në Properties->Scale të këtij objekti e ndajmë në shkallë në mes të 0

dhe 5. Ky do të jetë objekti apo matësi që do të paraqesë të dhënat e madhësive të matura si

madhësi dalëse me anë të treguesit gjilpërë.

Fig.6.10. Detyra e realizuar në Front Panel

Krijojmë Programin në Block Diagram. Krijojmë një While Loop unazë, që nënkupton se

detyra do të ekzekutohet deri në ndalimin e saj nga përdoruesi. Në While Loop së pari krjojmë

objektin – butonin STOP, duke zgjedhur në terminalin e kushtëzimit të While Loop opcionin

Create Control.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime1

95

Më tutje objektin Rregullator (Hyrje) e vendosim brenda unazës (Fig.6.11). Krijojmë

terminalin për herë të parë DAQ Assistant. Këtë objekt e marrim nga Functions->Measurement

I/O->NI-DAQmx-> DAQ Assist. (Fig.6.12). Duhet pasur parasysh se kjo ikonë paraqitet vetëm

nëse është instaluar moduli NI-DAQmx.

Fig.6.11. Detyra e realizuar në Block Diagram

Fig.6.12. Zgjedhja e ikonës DAQ Assist

Pas zgjedhjes së ikonës, inicohen procedurat për krijimin e DAQ assistant. Paraqitet

dritarja si në fig. 6.13. Paraqiten dy opcione kryesore: Acquire Signals dhe Generate Signals. E

para ofron opcionin e mbledhjes së sinjaleve, ndërsa e dyta është opcioni i krijimit apo gjenerimit

të sinjaleve.

Zgjedhim opcionin Generate Signals, dhe pastaj Analog Output. Paraqiten dy madhësi

matëse, zgjedhim Voltage – do të thotë matje e tensionit në volt, dhe Current – matje e rrymës në

amper. Opcioni Current nuk është i aplikueshëm për pajisjen NI USB 6008. Më tutje paraqitet

96

zgjedhja e portit dalës nga njëri prej dy porteve ekzistuese. Zgjedhim portin ao0 në të cilin është

lidhur teli në NI USB 6008. (Fig.6.14)

Fig.6.13. Gjenerimi i sinjaleve të tenstionit të rrymës në volt

Fig.6.14. Zgjedhja e portit dalës

Pas zgjedhjes së portit dalës, paraqitet dritarja si në fig.6.15, ku ofrohet opcioni i testimit të

madhësisë dalëse, në këtë rast volt, si dhe konfigurimi. Në diapazonin e tensionit: Min 0, Max 5, të

njësisë volt, nuk bëhet asnjë ndryshim pasi ky është diapazoni i pajisjes, dhe jashtë këtyre vlerave

pajisja nuk matë.

Është me rëndësi të zgjedhet mënyra e matjes RSE, që paraet matjen duke marrë parasysh

edhe tokëzimin.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime1

97

Në Generation Mode zgjedhim 1 Sample (On Demand) – që nënkupton që detyra gjeneron

një mostër të rezultatit për një veprim.

Nga menyja e Generation Mode paraqiten edhe këto opcione tjera:

- 1 Sample (HW Timed) – specifikon se detyrado të kërkojë apo gjenerojë një mostër në kufirin e

orës së hardverit.

- N Samples – specifikon se detyra kërkon apo gjeneron një numër të fundëm të mostrave të

rezultatit, të specifikuar nga opcioni në të djathtë Samples To Read/Write

- Continuous – Specifikon se se detyra kërkon apo gjeneron sinjale deri sa të ndalet.

Fig.6.15. Opcionet e testimit të matjes dhe konfigurimit të madhësisë dalëse

Pas zgjedhjes së konfiguracionit të nevojshëm, klikohet në OK, dhe paraqitet terminali si

në fig.6.11. E lidhim objektin Rregullator (Hyrje) me portin hyrës data të terminalit DAQ

Assistant. Mos të harrojmë se ky terminal ka funksionin e mbledhjes së sinjaleve si madhësi

hyrëse nga objekti Rregullator (Hyrje).

Vazhdojmë ngjashëm me krijimin e terminalit DAQ Assistant2 si terminal për paraqitjen e

madhësive të matura më herët në objektin Metri në dalje (fig.6.11). Fillojmë prap procesin e

krijimit të DAQ Assistant. E marrim nga Functions->Measurement I/O->NI-DAQmx-> DAQ

Assist. (Fig.6.12). Paraqitet dritarja, Fig.6.16. Zgjedhim Acquire Signals, që do të thotë kërkimi i

sinjaleve apo paraqitja e sinjaleve. Pastaj zgjedhim Analog Input, dhe Voltage.

Në Acquire Signals, janë disa nënopcione – Analog Input, Counter Input, Digital Input,

TEDS. E zgjedhim Analog Input, pasi në detyrën tonë kemi mbledhjen e sinjaleve nga porti analog

AI0.

98

Fig.6.16. Dritarja e krijimit të DAQassistant të ri.

a) b)

Fig.6.17. Vazhdim i krijimit të DAQ Assistant

Pas zgjedhjes së Analog Input, paraqitet opcioni si në fig.6.17.a, zgjedhja e madhësisë që

matet. Mund të zgjedhim njërën prej madhësive të paraqitura:

- Voltage – tensioni i rrymës,

- Temperature – matja e temperaturës me eksitimin e termistorit të rrymës. Termistori është

një gjysëmpërques i krijuar nga oksidet e metalit, i presuar në ndonjë disk të vogël, apo të ndonjë

forme tjetër në temperaturë të lartë, dhe i veshur me ndonjë material ngjitës apo qelq. Nërastin e

kalimit të rrymës nëpër termistor, mund të lexohet tension në volt në termistro dhe tëpërcaktohet

temperature e tij. Termistorët kanë rezistencë të lartë –diku nëmes të 2000 deri 10000 Ω dhe

sensitivitet të lartë ~200 Ω/°C.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime1

99

Ka edhe madhësi tjera për matje të cilat nuk do ti elaborojmë këtu.

Në detyrë do të zgjedhim Voltage, që do të thotë se do të masim tensionin e rrymës në volt.

Pas zgjedhjes së Voltage, paraqitet dritarja Fig.6.17.b, që kërkon zgjedhjen e portit hyrës nga i cili

matet madhësia hyrëse. Zgjedhim aio. Në fund klikojmë Finish. Paraqitet dritarja si në fig.6.15.

Këtu kemi opcionet e testimit të matjes dhe konfigurimit. Nëse klikojmë Run, mund të paraqitet

test i vlerës që matet.

Më poshtë në Fig.6.18 paraqiten opcionet e konfigurimit të diapzaonit të madhësisë matëse

(Max, Min), Njësitë e shkallëzuara (Scaled Units), Mënyra e konfigurimit të terminalit

(Differential, RSE, etj), Shkallëzimi sipas zgjedhjes (Custom Scaling), mënyra e kërkimit të matjes

(Acquistion Mode), etj.

Fig. 6.18. Opcionet e testimit të matjes dhe konfigurimit të madhësisë hyrëse

Pas zgjedhjes së konfiguracionit të nevojshëm, klikohet në OK, dhe paraqitet terminali si

në fig.6.11. E lidhim terminalin DAQ Assistant2 me portin e tij dalës data me objektin Metri ne

dalje. Mos të harrojmë se ky terminal ka funksionin e mbledhjes së sinjaleve si madhësi hyrëse.

E testojmë detyrën duke ndërruar vlerat në objektin Rregullator (Hyrje) dhe pastaj duke i

shiquar ato vlera se si po ndryshojnë në treguesin e objektit Metri ne dalje. Vlerat paraqesin

tensionin në volt që gjenerohet nga porti hyrës i pajisjes në portin dalës të saj.

DAQ Assistant është një vi e krijuar automatikisht nga ana e LAbView. Për të parë se si

doket DAQ Assistant2, është paraqitur në fig.6.19.

100

Fig.6.19. vi e krijuar automatikisht në Lab View për DAQAssistant2. Pamja në Front Panel dhe Block

Diagram

Detyrë 6.2. Të krijohet vi për aplikimin dhe funksionimin e ndërpresësit të rrymës me

ndihmën e pajisjes NI USB 6008.

Në detyrë do të implementohet ndërprerësi, dhe do të testohet funksionimi i tij me lidhjen

me pajisjen NI USB 6008, dhe me krijimin e një vi.

Ndërprerësi dhe lidhja e tij me NI USB 6008 është paraqitur në fig.6.20. Ndërprerësi është

i llojit analog, dhe ka tri porte. Ndërprerësi ka të lidhura tri tela të tij me portet e pajisjes: njëri në

portin hyrës a01 (teli i kaltër), tjetri në portin e furnizimit +5 V (teli i zi), dhe i treti për tokëzimin

GND (teli i verdhë). Madhësia që do të matet është tensioni i rrymës në volt. Ndërprerësi do të

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime1

101

tregojë rrymë me tension 5V kur është i lëshuar (numri 1) ose nuk do të tregojë tension të rrymës

kur është i ndalur (numri 0)

Fig.6.20. Lidhja e ndërprerësit me pajisjen NI USB 6008

Fig. 6.21. Detyra e zgjidhur në Front Panel dhe Block Diagram

Në 6.21 është paraqitur detyra në Front Panel dhe Block Diagram. Në Front Panel janë

krijuar tri objekte për paraqitjen e të dhënave: një Waveform Chart për paraqitjen e lakores së

tensionit të rrymës, një vlerë Numeric për paraqitjen e vlerës numerike të tensionit, dhe një matës

Meter për paraqitjen e tensionit në formë të treguesit gjilpërë.

102

Në Block Diagram është krijuar unaza While Loop, dhe butoni stop, që bën ndalimin e

ekzekutimit të detyrës. Terminalet e objekteve nga Waveform Chart, Numeric, Meter janë

vendosur brenda unazës. Është krijuar pastaj terminali DAQ Assistant, si në fig.6.17, apo tani në

fig.6.22, duke zgjedhur Acquire Signals->Analog Input->ai0, dhe duke vazhduar procedurën deri

te krijimi i DAQ Assistant të krijuar si në detyrën e kaluar.

Pas krijimit të DAQ Assistant, e vendosim brenda unzës While Loop. E lidhim portin e tij

dalës data me objektet e krijuara Waveform Chart, Numeric, Meter i(Fig.6.21).

a) b)

Fig.6.22. Krijimit të DAQ Assistant për Analog Input

Pas realizimit të detyrës në Block Diagram, e testojmë detyrën. E lëshojmë në shigjetën

Run, dhe në ndërkohë e aktivizojmë ndërprerësin duke e ndalur (0) dhe duke e lëshuar (1) dhe

shiqojmë në Objektet në Front Panel se si po ndryshon tensioni në volt.

Detyrë 6.3. Të krijohet vi për aplikimin dhe funksionimin e potenciometrit të rrymës me

ndihmën e pajisjes NI USB 6008.

Në detyrë do të implementohet potenciometri, dhe do të testohet funksionimi i tij me

lidhjen me pajisjen NI USB 6008, dhe me krijimin e një vi.

Potenciometri dhe lidhja e tij me NI USB 6008 është paraqitur në fig.6.23. Potenciometri

është i llojit analog, dhe ka tri porte. Potenciometri ka të lidhura tri tela të tij me portet e pajisjes:

njëri në portin hyrës a01 (teli i kaltër), tjetri në portin e furnizimit +5 V (teli i zi), dhe i treti për

tokëzimin GND (teli i verdhë), njejtë si në detyrën e kaluar në rastin e lidhjes së ndërprerësit.

Madhësia që do të matet është tensioni i rrymës në volt. Ai do të tregojë rrymë me tension prej 0 V

deri 5V gjatë lëvizjes së tij djathtas apo majtas.

Pamja e detyrës së zgjedhur është e njejtë me detyrën 6.2., dhe është treguar në fig.6.23.

Procedurat e realizimit të detyrës po ashtu janë të njejta si në detyrën e kaluar, prandaj nuk do ti

elaborojmë prap.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime1

103

Fig.6.23. Lidhja e potenciometrit me pajisjen NI USB 6008

Fig. 6.24. Detyra e zgjidhur në Front Panel dhe Block Diagram me aplikim të potenciometrit

Pas realizimit të detyrës në Block Diagram, e testojmë detyrën (Fig.6.24). E lëshojmë në

shigjetën Run, dhe në ndërkohë e lëvizim potenciometrin majtas - djathtas, dhe shiqojmë në

objektet në Front Panel se si po ndryshon tensioni në volt, prej 0V deri në 5V.

104

Detyrë 6.4. Të krijohet vi me aplikimin e potenciometrit të rrymës dhe me ndihmën e pajisjes

NI USB 6008 për matjen e rezistencës së rrymës

Detyra realizohet njejtë si detyra në Fig.6.3. Ndryshon vetëm madhësia që do të matet.

Madhësia që do të matet është rezistenca e rrymës që matet me madhësinë Ohm (Ω). Ai do të

tregojë rezistencën e potenciometrit gjatë lëvizjes së tij djathtas apo majtas.

Krijimi i DAQ Assitant në këtë rast konsiston në zgjedhjen e madhësisë së matjes

Resistance nga Acquire Signals->Analog Input dhe pastaj zgjedhim portin analog ai0. (Fig.6.25)

Fig.6.25. Krijimit të DAQ Assistant për Analog Input për matjen e rezistencës

Pamja e detyrës së zgjedhur është i ngjashëm me detyrën 6.3., dhe është treguar në

fig.6.26. Dallimi është në shkallëzimin e Objekteve në Front Panel, për matjen e rezistencës.

Potenciometri dhe pajisja kanë kufijtë e tyre të rezistencës që varirojnë në mes -1500 Ω dhe 3500

Ω, që duhet aplikuar në shkallëzimin e objekteve.

Fig. 6.24. Detyra e zgjidhur në Front Panel dhe Block Diagram me aplikim të potenciometrit për matjen e

rezistencës elektrike

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime1

105

Detyrë 6.5. Të krijohet vi për aplikimin dhe funksionimin e pajisjes së rrymës me ndihmën e

pajisjes NI USB 6008 për leximin e të dhënave dhe eksportimin e tyre ne file të llojit Excel

(.xls)

Pamja e detyrës së zgjedhur është e ngjashme me detyrën 6.3, dhe është treguar në fig.6.25.

Në këtë rast kemi matjet e lëvizjes së potenciometrit dhe regjistrimin e tyre në një file. Madhësia

që matet dhe regjistrohet është tensioni i rrymës në volt (V).

a)

b) Fig. 6.25. Detyra e zgjidhur në Front Panel dhe Block Diagram me aplikim të potenciometrit për matjen e

tensionit të rrymës dhe regjistrimi në një file

Në Front Panel janë paraqitur 5 objekte për paraqitjen e të dhënave:

Objekti i parë ka emrin Vendndodhja e fajllit. Nga File Path Control nga Controls-

>String&Path që paraqesin definimin e vendndodhjes së file që do krijohet (Fig.6.25). Objekti

tjetër ka emrin: Emri i fajllit. Në këtë objekt shkruhet emri i fajllit që krijohet p.sh.: Test5-7.xls.

106

Më tutje janë krijuar një Waveform Chart për paraqitjen e lakores së tensionit të rrymës,

një matës Meter për paraqitjen e tensionit në formë të treguesit gjilpërë. Është paraqitur edhe një

buton stop për ndalimin e unazës.

Në Block Diagram, Fig.6.25.b është treguar programi i realizuar i detyrës. Programi ka një

unazë While Loop që mundëson regjistrimin e të dhënave derisa të shtypet butoni Stop, apo derisa

të ndalet detyra në menynë e programit.

Terminali i parë, jashtë unazës, që përdoret si madhësi hyrëse është Build Path, që përdoret

për të krijuar vendndodhjen dhe emrin e file që krijohet dhe lidhet me objektet Vendndodhja e

fajllit dhe Emri i fajllit.

Brenda unzës janë krijuar dy terminale: DAQ Assistant për marrjen e të dhënave nga

pajisja hardverike, dhe Write to Measurement File për shkruarje në file. Në fig.6.26 është treguar

konfigurimi i Write to Measurement File ku duhet veqanërisht të zgjidhen opcionet One Header

Only dhe One Column per channel për të pasur të dhënat të grupuara njëra pas tjetrës, si në file në

fig. 6.27.

Fig.6.26. Konfigurimi i terminalit Write to Measurement File

Në fig. 6.27. është paraqitur file i formatit excel pas regjistrimit të të dhënave. Në file

është paraqitur data dhe koha e matjes. Dy kolonat kryesore paraqesin:

- Kolona e parë paraqet kohën në sekonda nga fillimi i matjes,

- Kolona e dytë paraqet njësin e matjes së tensionit të rrymës në volt. Vlera e paraqitur 2.336.215

do të thotë 2.336 Volt.

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Ushtrime1

107

Fig.6.27. Pamja e vlerave të matura nga potenciometri të vendosura në file të llojit Excel

Dr.sc. Ilir Doçi Hyrje në Softverët inxhinierik - LABVIEW – Literatura

108

LITERATURA

1. Dr. sc. Ilir Doçi, prof.asoc., Hyrje në softverët inxhinierik, dispensë, Prishtinë, 2015

2. LabVIEW Basics I Course Manual 6.0, National Instruments Corporation, 2000.

3. LabVIEW Basics II Course Manual 6.0, National Instruments Corporation, 2000.

4. LabVIEW Excercises, Tempus IV Project, Development of Regional Interdisciplinary

Mechatronic Studies – DRIMS, 2012.

5. Ronald W. Larsen, LabVIEW for Engineers, Prentice Hall, 2011.

6. Yik Yang, LabVIEW Graphical Programming Cookbook, Packt Publishing, 2014.

7. LabVIEW Tutorial Manual, 1996, National Instruments Corporation.

8. http://en.wikipedia.org/wiki/LabVIEW

9. http://en.wikipedia.org/wiki/Visual_programming_language