Panoramica su 4D Systems

Recentemente è stato avviato un progetto in cui era necessario disporre di un timer di sessione di formazione. Era stato richiesto di utilizzare un display touchscreen autonomo e in grado di accoppiarsi con i dongle per più utenti. Ciò significava che la soluzione doveva supportare la programmazione sul dispositivo, il controllo wireless sui dongle ed essere in grado di indicare lo stato della sessione sul display. Inoltre doveva includere alcuni componenti di supporto come un clock in tempo reale e un transceiver per rete a maglie (tali componenti non saranno trattati in questo articolo).

Conoscendo le capacità richieste, esistono molte opzioni idonee. È possibile utilizzare diversi microcontroller, inclusi Arduino e PIC. In alternativa, un computer monoscheda come un Raspberry PI può risolvere il problema. In entrambi i casi, il controller ha anche bisogno di un numero sufficiente di I/O per comunicare con il display, il clock in tempo reale, la scheda micro SD per l'archiviazione delle informazioni e il transceiver per rete a maglie. Il microcontroller deve essere abbinato a un display touchscreen. Il display deve essere abbastanza grande da fornire spazio per la programmazione, quindi la dimensione preferibile è di circa sette pollici.

Ciascuna delle opzioni di cui sopra funzionerebbe ma accuserebbe comunque dei limiti. Le opzioni più piccole di Arduino e PIC hanno una notevole potenza di elaborazione per gestire questo tipo di progetto, che tuttavia si esaurirebbe rapidamente nelle operazioni di I/O. Il Raspberry PI o un computer monoscheda simile molto probabilmente sarebbe eccessivo per l'applicazione, ma offrirebbe alcuni vantaggi rispetto a un microcontroller di base. In entrambi i casi, tutte queste opzioni si trovano a dover gestire la stessa difficoltà, ovvero la progettazione dell'interfaccia grafica utente (GUI). Esistono opzioni che agevolano la creazione della GUI, sia per microcontroller che per computer monoscheda, ma nessuna è facile da usare e intuitiva come il prodotto selezionato.

4D Systems offre Gen4-uLCD-70DCT-CLB (codice componente DigiKey 1613-1277-ND) abbinato al suo Gen4-PA (codice componente DigiKey 1613-1210-ND) e a 4D Workshop (codice componente ): un pacchetto rivelatosi la migliore soluzione per questo progetto. Il display è gestito dal processore Diablo16 che offre anche un set completo di I/O e può interfacciarsi con dispositivi SPI, I2C, seriali, digitali e analogici. Inoltre, il display utilizza una scheda micro SD integrata per la memorizzazione delle immagini a cui è possibile accedere per l'archiviazione dei dati in fase di programmazione.

Il progetto è stato avviato in 4D Workshop. Per prima cosa si è creato un nuovo progetto 4D Systems e si è selezionato il display più idoneo. A quel punto si è passati a selezionare l'ambiente in cui installare il display. Le opzioni sono Designer, ViSi, ViSi Genie e Serial. Per questo progetto la grafica del display è stata impostata in ViSi Genie, quindi il codice è stato portato su ViSi per poter accedere al codice 4DGL.

ViSi Genie consente uno sviluppo grafico completo in modo facile e intuitivo. Il software inizia con una singola pagina o modulo. Da qui è possibile inserire e integrare nel progetto sfondi, pulsanti, cifre, indicatori, I/O, immissioni, etichette, oggetti magici, primitive e oggetti di sistema/multimediali. Una volta che un oggetto viene selezionato e inserito nel modulo, può essere ulteriormente modificato dall'ispettore oggetti. Gli oggetti possono essere rinominati e le loro proprietà modificate dalla vista predefinita nell'ispettore oggetti. Se da un oggetto sono richiesti comandi semplici, come un pulsante che attiva o disattiva un LED su schermo, la seconda pagina della finestra di ispezione oggetti, chiamata "eventi", consente di predisporre queste azioni. Se è necessario disporre di più moduli, è facile aggiungerli dalla barra degli strumenti System/Media nella parte superiore del designer. Il progetto può essere compilato e caricato sul display in qualsiasi momento dalla barra degli strumenti in alto per verificarne la funzionalità. Durante i test, è meglio impostare la destinazione predefinita su "Run RAM" per evitare di sprecare cicli di scrittura nella memoria flash. Tale impostazione è disponibile nella scheda Project.

Dopo aver sviluppato tutta la grafica e aver impostato tutti i moduli, il progetto è stato trasferito su ViSi che fornisce una rappresentazione del display di tipo "ciò che vedi è ciò che ottieni" e quindi nell'ambiente di codifica IDE 4DGL. È qui che tutta la codifica "più pesante" è stata scritta usando le funzioni interne di Diablo16. Il bus I2C è stato configurato per l'esecuzione del clock in tempo reale per la conservazione di data e ora. Tutti gli I/O per le comunicazioni con il transceiver della rete a maglie sono stati programmati in questo ambiente con più eventi di pilotaggio di questi pin. Questo progetto specifico richiedeva il mantenimento di un insieme di variabili che sono state scritte sulla scheda micro SD integrata nel display in grado di conservarle anche attraverso un ciclo di accensione e spegnimento. Anche tutto il codice comparativo per eseguire il timer è stato programmato in questo ambiente.

In conclusione, il software 4D Systems e i display sono un'opzione potente ma facile da usare. La semplice interfaccia del programma e la generazione automatica del codice di ViSi Genie e ViSi rendono lo sviluppo grafico un processo rapido. Il processore Diablo16 integrato offre un'intera gamma di I/O e metodi di comunicazione per eseguire codice su scheda o per interfacciarsi con un altro dispositivo per progetti più complessi.

Informazioni su questo autore

Image of 4D Systems

4D Systems, con sede in Australia, è un leader mondiale nello sviluppo e nella produzione di moduli display grafici intelligenti. 4D Systems progetta e produce moduli display e accessori compatti ed economicamente vantaggiosi sulla base della più recente tecnologia OLED e LCD allo stato dell'arte. I moduli display di 4D Systems hanno processori di grafica personalizzati dalla funzionalità embedded che offrono funzionalità autonoma per una moltitudine di possibilità applicative. I prodotti di 4D Systems sono stati implementati con successo nei settori medicale, aeronautica, militare e automotive.

More posts by 4D Systems
 TechForum

Have questions or comments? Continue the conversation on TechForum, DigiKey's online community and technical resource.

Visit TechForum