Arduino e Qt, facciamoci un nostro labView per acquisizione dati e controllo

Ciao a tutti, si, ho voluto, un po' provocatoriamente, mettere questo titolo al post perchè mi sembra possa essere utile sentire il parere della community in merito al progetto open source che sto avviando. Il progetto è ancora in fase iniziale e l'intenzione è quella di creare un ambiente di lavoro (diciamo un IDE) per connettere direttamente le schede Arduino (via seriale o via rete) a Qt Creator (IDE open source per chi non lo conoscesse). Perchè quest'idea? Perchè nel tempo mi son trovato molte volte a dover riscrivere (quasi) da zero applicazioni con graphical user interface per i miei esperimenti e mi rendo conto che servirebbe qualcosa di meno ostico per chi non conosce il C++ e più veloce per poter prototipare al volo alcune idee. Tanto per semplificare... lo scopo del progetto è creare una "sottospecie" di LabView (molto in piccolo ovviamente) che permetta di interagire con gli I/O della scheda Arduino e, volendo, trasferire via seriale o via rete il codice di controllo (semplice e limitato) che un apposito "parser" sulla scheda potrà interpretare e mandare in esecuzione. Il tutto ovviamente sarà open source e disponibile gratuitamente. Non so se ho reso l'idea, chiunque voglia approfondire il progetto può farsi avanti. Ben vengano commenti, suggerimenti o critiche. Ciao Paolo

paolosereno: Ben vengano commenti, suggerimenti o critiche.

Praticamente esiste già e si chiama MegunoLink.

Si, vedo però che di libero c'è solo il trial e non mi pare open source. Sinceramente usare strumenti closed source non mi piace tanto.... Non ci puoi mettere le mani... non è tanto per i 30 o 90 dollari, quanto per la possibilità di veder come è fatto dentro ed imparare. Grazie per la segnalazione.

paolosereno: Sinceramente usare strumenti closed source non mi piace tanto.... Non ci puoi mettere le mani...

Personalmente preferisco spendere 30 $, come ho fatto, ed avere subito uno strumento valido, perfettamente funzionante, piuttosto che perdere giorni di lavoro per creare un qualcosa di simile.

Certo, capisco benissimo il tuo punto di vista. Grazie per il feedback.

Ciao Paolo, spero presto di vedere e provare il tuo programma.

Conosco LabView per sentito dire, quindi non so se ho capito bene quali saranno le funzionalità. Scriverai un plugin per QtCreator?

Dalla descrizione che hai dato ad intuito e con un poco di immaginazione viene fuori la seguente:

Scriverai un plugin per QtCreator, tramite il quale sia possibile costruire la GUI e programmare in QtQuick le funzionalità. Il protocollo dati lato PC sarà implementato da un modulo C++ esportato in QtQuick. Lato embedded il protocollo viene implementato con codice arduino style e magari potrebbe anche essere firmata.

Spero di riuscire a rimanere sintonizzato sul tuo progetto. Ciao.

Ciao, caspita, vedo che conosci bene l'ambiente. Mi fa piacere. Si confermo, si tratta di più plugin per Qt Creator. Per quanto riguarda i widget grafici ho già alcune cose pronte, per il protocollo devo sistemare meglio le cose fatte in passato. Lato scheda la prima idea era usare firmata, ma al momento sto ripensando a questa scelta... volendo volare alto, si potrebbero mettere in rete più schede e allora serve un secondo protocollo per la gestione... ma ripeto questo è un gradino più su e ci penserò in un secondo momento. Il "parser" dei comandi che vengono inviati dal PC è in realtà molto semplice, questa è un'idea che ho da diversi anni e nel tempo ho fatto un po' di prove. Vedo che anche tu ti occupi di questioni simili, spero anche io di riuscire a rimenere sintonizzato. Ciao

caspita, vedo che conosci bene l'ambiente. Mi fa piacere. Si confermo, si tratta di più plugin per Qt Creator. Per quanto riguarda i widget grafici ho già alcune cose pronte, per il protocollo devo sistemare meglio le cose fatte in passato.

Sono abbastanza distante da QtQuick e QML, mi sono fermato tempo fa su QScript, l'ho usato fino a esportare le mie classi, poi per altri motivi ho dovuto abbandonare il progetto.

Ho anche provato più volte a scrivere dei plugin per QtCreator ma per vari motivi ho dovuto abbandonare e il codice ha fatto le ragnatele. ;D

Lato scheda la prima idea era usare firmata, ma al momento sto ripensando a questa scelta... volendo volare alto, si potrebbero mettere in rete più schede e allora serve un secondo protocollo per la gestione... ma ripeto questo è un gradino più su e ci penserò in un secondo momento.

Se il protocollo dati viene gestito tramite un modulo QML, c'è ne sarà uno per firmata e uno generico che gestisce nodi di rete. Se firmata lo conosci bene conviene partire da li, almeno hai qualcosa da mostrare.

Ho del codice (fermo anche lui) che gira su ATmega644A, che implementa un controller HVAC, specifico per la conduzione di celle frigorifere. L'applicazione embedded in questione, per le funzionalità accessorie, necessita di una applicazione lato PC, tipo configurazione, aggiornamento firmware ecc. Pensi che il tuo progetto possa tornare utile al caso appena descritto?

Ciao.

Vedo che anche tu ti occupi di questioni simili, spero anche io di riuscire a rimenere sintonizzato.

Per adesso diciamo che mi occupo di tirare a campà, quindi mi occupavo di questioni simili.

Ciao, i plugin per Qt Creator sono uno strumento piuttosto comodo e potente, o megio,Qt Creator è lo strumento comodo e potente. Poterlo espandere è davvero utile... Il protocollo o i protocolli saranno oggetto di pensate nel prossimo futuro (tempo a disposizione permettendo) e ogni idea è gradita. Per il progetto relativo alle celle frigorifere, una volta che i plugin sono pronti basta creare un'applicazione (mettendoci la logica applicativa che manca) e dovrebbe essere a posto. Questo potrebbe essere un primo caso d'uso... Ci teniamo aggiornati Ciao Paolo