Utilizzo della GUI Raspberry Pi STONE Modulo display touch screen HMI

Catalogo

  • DESCRIZIONE
  • Componente List
  • Installazione di software/strumenti
  • Progettazione e caricamento della GUI Raspberry Pi
  • Codifica funzionante e Raspberry Pi

[1] Descrizione

STONE Technologies è un produttore specializzato di moduli LCD TFT intelligenti per HMI. A seconda dell'applicazione, STONE Technologies offre moduli LCD TFT intelligenti industriali, avanzati e residenziali in diverse dimensioni.

In questo progetto, controllerò i LED con l'aiuto di STONE Display HMI e design della GUI Raspberry Pi. i dati del comando vengono inviati a Raspberry-pi tramite Display, che viene inviato in frame, poiché Display invia i dati in frame e li riceve in frame di codice HEX. Se vuoi capire i frame di dati e come funzionano, sto usando il STWI056WT-01 modello in questo progetto? Puoi scaricare la scheda tecnica da qui.

[2] Elenco componenti

  • STONE-Display HMI [ STWI056WT-01 ]
  • Raspberry Pi
  • Convertitore da TTL a USB
  • Alimentazione 9v-12v
  • Cavo USB
  • Light Emitting Diode

[3] Software / STONE Installazione di design

Prima di procedere, dobbiamo installare STONE Designer e il driver USB, quindi vediamo come installare questo software. Di seguito è riportato il collegamento del driver da cui è possibile scaricare lo strumento Designer e il software del driver USB.

Passaggio 1: – Vai a questo driver, vedrai la finestra come mostrato di seguito e scarica questo software e installalo sul tuo computer.

https://drive.google.com/drive/folders/1SbTuj9sqHLb9zV7pmEXOIyxWa9PAdOPH?usp=sharing 

  带有 Raspberry-Pi-16 的 Stone-HMI 显示器

Da qui devi scaricare il primo e il terzo file, perché il primo file è per lo strumento GUI-Designer e il terzo file è per il driver USB. Quindi scarica questo software e andiamo per la progettazione della GUI.

[4] Progettazione e caricamento della GUI

Iniziamo prima con il design dell'interfaccia. Dopo l'installazione, vai su STONE- Icona Designer e fai clic su di essa, quindi questo software di progettazione si aprirà e otterrai l'interfaccia mostrata nella figura.

带有 Raspberry-Pi-16 的 Stone-HMI 显示器

Una volta aperto, devi creare un nuovo progetto per questo scopo, seleziona "Progetto" dall'alto e quindi seleziona "Nuovo", ti verrà chiesto di fornire gli stessi dettagli mostrati di seguito, ora inserisci il nome del progetto e seleziona la schermata dimensione in base alle dimensioni del tuo display, qui sto usando un display di dimensioni 640X480 e dopo aver compilato tutti i dettagli seleziona anche il percorso del progetto e fai clic su "Crea".

带有 Raspberry-Pi-16 的 Stone-HMI 显示器

Dopo aver completato la sezione precedente, seleziona l'immagine di sfondo per il progetto come mostrato nell'immagine.

Passo 1: – Seleziona "Immagine" dalle risorse per caricare l'immagine come immagine di sfondo, ci sono altre immagini che utilizzeremo a scopo di pulsante in un'ulteriore elaborazione, queste immagini sono riportate di seguito, puoi progettarne una tua se lo desideri.

带有 Raspberry-Pi-16 的 Stone-HMI 显示器

Passaggio 2: – Aggiungi queste immagini nello strumento GUI facendo clic sul pulsante "+" indicato nella figura seguente.

带有 Raspberry-Pi-5 的 Stone-HMI 显示器 

Passo 3: – Ora aggiungi la prima immagine di sfondo facendo clic sullo schermo vuoto e otterrai più opzioni sul lato destro come mostrato nell'immagine. Da questo seleziona l'opzione dell'immagine di sfondo e scegli l'immagine che abbiamo aggiunto in precedenza come mostrato nell'immagine qui sotto.

带有 Raspberry-Pi-16 的 Stone-HMI 显示器

Passo 4 :- Ora aggiungi i pulsanti per RGB uno per uno, puoi vedere nell'immagine che un pulsante è già stato aggiunto, quindi prima applicherai le modifiche in esso e quindi lo stesso farà per l'altro pulsante.

Ora seleziona il primo pulsante che abbiamo aggiunto e vai nelle proprietà di questo che si trova sul lato destro come indicato nell'immagine.

带有 Raspberry-Pi-16 的 Stone-HMI 显示器

Passo 5:- Da quello seleziona l'immagine di sfondo come un'immagine rossa perché questo pulsante è per il LED rosso. E allo stesso modo esegui altre impostazioni come il colore e la dimensione del testo, quindi ora abbiamo fatto con il primo pulsante e puoi seguire la stessa procedura anche per altri pulsanti.

Ma dopo aver aggiunto tutti i pulsanti devi annotarne il nome, che è evidenziato nell'immagine sottostante. Quindi devi annotare ogni pulsante e puoi dare il nome nella sequenza come pulsante1, pulsante2.. e così via. Questa cosa richiederà nella parte di codifica, quindi tienilo a mente.

带有 Raspberry-Pi-16 的 Stone-HMI 显示器

Alla fine sembrerà così con tutti i pulsanti. Quindi ora GUI-Design è pronto ora possiamo procedere ulteriormente.

带有 Raspberry-Pi-16 的 Stone-HMI 显示器

Passo 6 :- Questo passaggio serve per caricare il file GUI-Design nel display. Per questo collegare prima il display con alimentazione di 9-12 volt tramite la porta di alimentazione. E poi collega USB a USB al tuo PC con Display. Sembrerà così.

带有 Raspberry-Pi-16 的 Stone-HMI 显示器

Dopo aver collegato il display ora dobbiamo prima scaricare il file 'Predefinito' cartella tramite GUI-Tool. Per questo vai a Mettere a punto e cliccare su Scaricare quindi seleziona la posizione in cui desideri scaricarlo.

带有 Raspberry-Pi-16 的 Stone-HMI 显示器

Ora abbiamo Predefinito cartella nella nostra macchina locale verrà caricata nella memoria del display, per questo prima collegare il display come menzionato sopra nell'immagine tramite la comunicazione da USB a USB con il tuo PC. Riceverai un dispositivo di archiviazione nel tuo PC che devi eliminare prima precedente Predefinito cartella come menzionato nell'immagine sottostante.

带有 Raspberry-Pi-16 的 Stone-HMI 显示器

Dopodiché puoi incollare qui quella cartella che abbiamo copiato dal design della GUI. Come puoi vedere nell'immagine qui sotto.

带有 Raspberry-Pi-16 的 Stone-HMI 显示器

Dopo aver incollato la cartella predefinita nella memoria del display, è sufficiente rimuovere USB dal display e rimuovere anche l'alimentatore, quindi dopo 2-3 secondi ricollegare l'alimentatore al display. Quindi otterrai come questa GUI che abbiamo progettato.

带有 Raspberry-Pi-16 的 Stone-HMI 显示器

Ora abbiamo finito con la progettazione della GUI e il caricamento di parti, quindi è tempo di esaminare il codice e il suo funzionamento.

[5] Funzionante e Raspberry-Pi GUI codifica

Ora connetti prima Raspberry-Pi tramite il server VNC oppure puoi connetterti direttamente tramite il display secondo la tua convenienza. Quindi ci sono due codici che sono riportati di seguito. Il primo serve per testare tutti i pulsanti che abbiamo creato e il secondo il codice intero con l'impostazione I/O e ha una logica.

Codice di prova:

importare seriale

serialcomm = serial.Serial('/dev/ttyUSB0', 115200) mentre True:

l=comm.seriale.read(dimensione=20) q=l[7:14]

Stampa(q)

 

Qui lo scopo del test del codice è controllare tutti i pulsanti, quindi per questo è necessario collegare prima USB-0 di Raspberry-Pi al connettore Display TTL e quindi copiare questo codice in Thonny di Raspberry-Pi come indicato nell'immagine sottostante, quindi fare clic sul pulsante Esegui per testarlo.

带有 Raspberry-Pi-16 的 Stone-HMI 显示器

Facendo clic su qualsiasi pulsante visualizzato otterrà un nome di pulsante particolare che abbiamo assegnato all'inizio come discusso in precedenza. Puoi vedere dopo aver premuto Pulsante-1 sul display stiamo ottenendo una stringa di output come button1 perché abbiamo fatto l'affettatura del tutto da cui otteniamo dalla visualizzazione.

l=comm.seriale.read(dimensione=20) q=l[7:14]

Qui, come nel test del codice di queste righe di codice, qui l è una variabile che sta ricevendo il frame dalla dimensione del display di 20, quindi q sta memorizzando il valore suddiviso secondo il nostro requisito.

E di conseguenza nel codice completo abbiamo realizzato la logica come da singolo pulsante. Di seguito viene data la logica in quanto il pulsante 6 premerà quindi accenderà il LED2 alto e se il pulsante7 premerà il LED2 sarà spento. Allo stesso modo tutta la logica funziona per gli altri LED.

elif(q==b'pulsante6'):

GPIO.output(led2,GPIO.HIGH)

elif(q==b'pulsante7'):

  GPIO.output(led2,GPIO.LOW)

Codice completo della GUI Raspberry Pi:

importa RPi.GPIO come GPIO GPIO.setmode(GPIO.BCM) GPIO.setwarnings(False) led1 = 26

led2 = 19

led_rosso= 13

led_verde= 6

blue_led= 5 status1=0 status2=0

GPIO.setup(led_rosso,GPIO.OUT) GPIO.setup(led_verde,GPIO.OUT) GPIO.setup(led_blu,GPIO.OUT) GPIO.setup(led1,GPIO.OUT) GPIO.setup(led2,GPIO.OUT) GPIO.output(led_rosso,GPIO.LOW) GPIO.output(led_verde,GPIO.LOW) GPIO.output(led_blu,GPIO.LOW) GPIO.output(led1,GPIO.LOW) GPIO.output(led2,GPIO.LOW) ##########################

importare seriale

serialcomm = serial.Serial('/dev/ttyUSB0′, 115200)

while True: l=serialcomm.read(size=20) q=l[7:14]

if(q==b'pulsante1'): print(q)

GPIO.output(led_rosso,GPIO.HIGH) GPIO.output(led_verde,GPIO.LOW) GPIO.output(led_blu,GPIO.LOW)

elif(q==b'pulsante2′): GPIO.output(led_verde,GPIO.HIGH) GPIO.output(led_rosso,GPIO.LOW) GPIO.output(led_blu,GPIO.LOW)

elif(q==b'pulsante3'): GPIO.output(led_blu,GPIO.HIGH) GPIO.output(led_rosso,GPIO.LOW) GPIO.output(led_verde,GPIO.LOW)

elif(q==b'pulsante4'): GPIO.output(led1,GPIO.HIGH)

elif(q==b'button5'): GPIO.output(led1,GPIO.LOW)

elif(q==b'button6'): GPIO.output(led2,GPIO.HIGH)

elif(q==b'button7'): GPIO.output(led2,GPIO.LOW)

现在 我们 已经 了解 了 代码 背后 的 逻辑 , 让 在 Raspberry-Pi 中运行 第二 个 代码 , , 它 完整 的 代码 , 但 但 在 之前 进行 电路 , , 如 下面 的 电路图 中 中 所 示 示 示 示 示 示 示 示 示 示 示 示 示 示 示 示 示 示 示 示 示 示 示 示 示 示 示 tivamente

电路原理图 :

带有 Raspberry-Pi-16 的 Stone-HMI 显示器

树莓派 GUI 输出:

现在我们已经完成了整个项目,现在您可以测试您的项目,最终设置将如下所示。

 

Carrello
Scorrere fino a Top