3DMicro Toolkit Arduino Expansion: programmare per l’Arduino all’interno di NI LabVIEW

 LabVIEW rende molto semplice l’apprendimento dei rudimenti della programmazione attraverso la programmazione grafica e, finora, questo prodotto non si è mai avvicinato al mondo Arduino se non con dei toolkit che funzionavano da semplice interfaccia.

Questi toolkit, infatti, non permettono la vera e propria programmazione del micro, ma solo un metodo per lo scambio di informazioni col Pc e questa limitazione, rimarcata anche da molte persone durante il NIDays a Roma, sta per essere superata attraverso il 3Dmicro Toolkit Arduino Expansion prodotto dalla 3D-SVS, uno spin-off dell’Università Politecnica delle Marche con la collaborazione di Automazione Open Source.

Quest’azienda, che deve parte della sua esperienza in questo campo allo sviluppo di un Toolkit analogo anche per microcontrollori della famiglia PIC32, è riuscita in poco tempo a presentare un prototipo del prodotto in questo video presente su YouTube:

Si può vedere come in poco tempo viene creato il programma che implementa un’inseguitore solare che viene direttamente caricato sull’Arduino, utilizzando parti di codice che possono essere “riciclate” da altri progetti(nell’esempio il blocchetto che implementa il controllore P).

Questo prototipo supporta alcune feature dell’Arduino come, ad esempio:

  • Gestione diretta dei pin
  • Gestione delle funzioni temporali
  • Gestione degli ingressi e uscite digitali e analogiche: sono presenti tutti i canali dell’A/D converter e le funzioni per gestire i PWM( in particolare i pin relativi al timer1 si possono configurare anche nel periodo)

Il toolkit è compatibile con la famiglia di microcontrollori ATMega168,ATMega328 e ATMega2560 che comprendono quindi sia l’Arduino Duemilanove, Diecimila, UNO e l’Arduino Mega( per quest’ultimo ci sarà una palette con blocchetti lievemente diversi). 

Il programma creato all’interno di LabVIEW viene convertito attraverso il C Code Generator in linguaggio C che viene modificato opportunamente per essere compatibile con l’Arduino e successivamente può essere caricato all’interno dello stesso.

Alcune delle funzionalità che si vogliono implementare in futuro sono:

  • Implementare altre funzioni presenti sull’Arduino( shiftIn e shiftOut ad esempio)
  • Gestione di un’interfaccia tra il PC e l’Arduino per lo scambio di informazioni attraverso la seriale
  • Implementazione di alcuni tipi di libreria( LCD ad esempio)
  • Gestione degli interrupt 
L’articolo ufficiale si può trovare all’interno del sito della 3D-SVS

Luca Panebianco
Ciao! Mi chiamo Luca e frequento la magistrale in Ingegneria Informatica e dell'Automazione all'Università Politecnica delle Marche. Qui ho apprezzato pian piano la programmazione su microcontrollori oltre che la canonica sul PC. Sono interessato ai vari campi della programmazione su diversi dispositivi.
By Luca Panebianco | maggio 18th, 2012 | LEAVE A COMMENT