Analogni vhod, Vklop LED diode v odvisnosti od napetosti

Na analognem vhodu razvojne plošče Arduino Uno bomo spreminjali napetost s potenciometrom. Napetost na analognem vhodu bomo prikazovali na LabVIEW vmesniku, na Čelni plošči virtualnega instrumenta. Skrajna priključka potenciometra sta priključena na GND oziroma 5 V, drsnik potenciometra pa na analogni vhod A0. S spreminjanjem položaja drsnika potenciometra se bo napetost na analognem vhodu spreminjala v območju od 0 V do 5 V.

Razvojna plošča Arduino Uno je priključena na USB vhod računalnika.

Slika 1: Algoritem programa v Blok diagramu za branje in prikazovanje napetosti na analognem vhodu A0.

Slika 2: Vmesnik, Čelna plošča virtualnega instrumenta.

Functions > Arduino > Low Level > Analog Read Pin. Z blokom Analog Read Pin beremo analogno napetost na izbranem analognem vodu Arduino Uno.

Analog Input Pin (0) => Izberemo analogni vhod Arduino Uno, na katerem želimo brati napetost.

Voltage => Priključimo indikator za prikaz napetosti na izbranem analognem vhodu.

Izdelajmo virtualni instrument ki bo vklopil LED diodo, če napetost na analognem vhodu preseže določeno vrednost.

Slika 3: Algoritem za vklop LED diode v odvisnosti od napetosti, Struktura Case okvir True.

Slika 4: Algoritem za vklop LED diode v odvisnosti od napetosti, Struktura Case okvir False.

Uporabili smo strukturo Case. Najprej jo opišimo.

Struktura Case:

Programska struktura Case (Case Structure) spada v skupino odločitvenih (pogojnih) stavkov. Ti stavki ponujajo možnost izbiranja različnih poti izvajanja. Struktura Case se uporablja, ko je potrebno izvesti določen del kode samo če je izpolnjen pogoj.

Strukturo Case kreiramo z orodjem Case Structure, ki se nahaja na paleti Functions > Programming > Structures > Case Structure.

Privzeto se ob namestitvi strukture kreirata dva okvirja (True in False), ki sta nameščena drug nad drugim. Struktura Case vsebuje izbirni priključek (Selector Terminal) in selektor strukture (Case Selector).

Slika 5: Struktura Case, okvir True.

Okvir oziroma algoritem, ki se bo izvedel, je odvisen od podatka, pripeljanega na izbirni priključek (Selector Terminal) in podatka, vnesenega v selektor strukture Case (Case Selector).

Slika 6: Struktura Case, okvir False.

Na izbirni priključek strukture Case lahko priključimo različne tipe podatkov. Ko je na izbirni priključek pripeljan logični podatek (slika 5 in slika 6), vsebuje struktura Case dva okvirja, okvir True in okvir False. Če je vhodni podatek enak True, se izvede algoritem, ki se nahaja znotraj okvirja True (na digitalni pin 8 pošljemo 5 V), v nasprotnem primeru pa algoritem znotraj okvirja False (na digitalni pin 8 pošljemo 0 V).

Podobno kot pri zanki While, se pri prenosu podatkov preko roba strukture Case, na robu kreira tunel oziroma majhen kvadrat s črno obrobo in ozadjem v barvi podatkovnega tipa podatka. Izhodni tuneli morajo biti v vseh okvirjih povezani, v nasprotnem primeru LabVIEW javi napako (sintaktična napaka), ozadje tunela pa obarva z belo barvo.

Na izbirni priključek strukture Case smo pripeljali izhod primerjalnika (Greater?), ki primerja vrednosti obeh vhodov, x in y.

Če je vrednost na vhodu x večja od vrednosti na vhodu y, dobimo na izhodu vrednost True (res je), v nasprotnem primeru pa vrednost False (ni res). V prvem primeru se izvede algoritem znotraj okvirja True, v drugem primeru pa algoritem znotraj okvirja False. Na vhod x smo priključili indikator Napetost na analognem vhodu (V), ki prikazuje izmerjeno napetost na analognem vhodu A0. Na vhod y smo priključili kontrolo Napetost za vklop LED diode (V), s katero nastavimo tisto vrednost napetosti, pri kateri želimo, da LED dioda vklopi. Če napetost na analognem vhodu A0 preseže nastavljeno napetost, LED dioda vklopi, v nasprotnem primeru pa LED dioda izklopi.

Slika 7: Vklop LED diode v odvisnosti od napetosti, Čelna plošča.