Interfacciamento Labview Arduino - Interfaccia Grafica | DAQ code laboratory

Interfacciamento Labview Arduino – Interfaccia Grafica

Nel post verrà concluso l’esempio di interfacciamento Labview Arduino, andando a sviluppare il codice Labview per effettuare la comunicazione seriale e comandare l’arcuino, senza utilizzare i toolkit specifici della NI per questa scheda.

Definizione dell’interfaccia Grafica

Nell’interfaccia grafica si potrà inserire la porta seriale di comunicazione con l’Arduino. Ovviamente tale controllo è inutile se invece viene utilizzato il subVI per la ricerca automatica di tale porta.

Inoltre sono presenti i tasti sulla sinistra per effettuare le cinque operazioni previste che ricordo essere:

Digital Reset (RST): resetta lo stato del arduino mettendo ad off i canali digitali attivi;

  • DIO 13 ON (DIO13on): setta ad on il pin digitale 13;
  • DIO 13 OFF (DIO13off): setta ad off il pin digitale 13;
  • DIO 13 Blink (DIO13blink): setta per un secondo il pin digitale 13 ad on poi lo setta ad off e vi rimane per un altro secondo;
  • Acqu. CH 3 (ACQ3): acquisisce un campione dal pin analogico 3 e ne restituisce tramite seriale in risultato;

Ovviamente è presente un tasto di stop per fermare il programma. Tale funzionalità è lasciata in tale maniera ma è evidente che nel caso in cui si intenda distribuire l’applicazione è necessario dopo lo stop terminare labview o il VI.

Come indicatori di uscita sono presenti il grafico dei dati acquisiti dall’apposito tasto e la stringa inviata da Arduino.

Front Panel del sistema di controllo del arduino

Block Diagram

La struttura del VI dal punto di vista del codice può essere suddivisa in due blocchi principali concatenati tra di loro.

Inizialmente viene semplicemente dettata la comunicazione seriale. In tale fase viene previsto un ritardo prima di passare al blocco di codice successivo. Infatti, l’arduino quando si instaura una comunicazione seriale si rosetta. Tale operazione richiede del tempo e se nel frattempo LabView prova a leggere o scrivere delle informazioni l’operazione va in errore.

Successivamente, parte un ciclo al con interno un Event Structure effettua determinate azioni in funzione di quale pulsante viene premuto. Per i primi 4 tasti le azioni sono essenzialmente le stesse in quanto il programma invia una stringa alla scheda e non è richiesta una risposta da quest’ultima. Mentre per l’operazione di acquisizione successivamente all’invio della stringa c’è l’operazione di lettura dell’informazione. Ovviamente, il campione acquisito viene restituito come una stringa e va opportunamente riconvertito in valore numerico. Dal codice non è stata inserita la conversione da codice del ADC a tensione, ma è un operazione facilmente ottenibile.

Struttura del programma e fase di acquisizione

Evento di Time-OutEvento di Stop

Evento di ResetEvento DIO 13 ONEvento DIO 13 OFF

Evento DIO 13 Blink

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.