Strumenti Utente

Strumenti Sito


hmi

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisione Revisione precedente
Prossima revisione
Revisione precedente
hmi [2019/02/17 17:42]
admin [Note sparse sull'uso dell'HMI]
hmi [2020/11/22 21:58] (versione attuale)
admin [Tia Portal e HMI]
Linea 19: Linea 19:
   * collegarlo al PLC con un cavo Ethernet (meglio attraverso uno [[wpi>Switch]] per poter collegare contemporaneamente anche il PC per programmare PLC e HMI)   * collegarlo al PLC con un cavo Ethernet (meglio attraverso uno [[wpi>Switch]] per poter collegare contemporaneamente anche il PC per programmare PLC e HMI)
  
-All'accensione il pannello presenta mostra una schermata che permette di scegliere se: +All'accensione il pannello mostra una schermata che permette di scegliere se: 
   * trasferire un progetto (pagine, ecc.) dal PC all'HMI   * trasferire un progetto (pagine, ecc.) dal PC all'HMI
   * avviare il progetto caricato nell'HMI   * avviare il progetto caricato nell'HMI
Linea 41: Linea 41:
   * modificare una variabile del PLC in seguito alla pressione di un pulsante sul pannello touchscreen   * modificare una variabile del PLC in seguito alla pressione di un pulsante sul pannello touchscreen
  
-L'associazione viene fatta dalle proprietà dell'oggetto. Ad esempio è possibile associare una PlotLight (spia) ad una variabile del PLC indicando nella sezione //Generale// delle proprietà dell'oggetto il nome della variabile e l'aspetto desiderato quando questa vale 0 o 1. Un'operazione analoga si può fare con i pulsanti indicando quale variabile del PLC si vuole comandare e in seguito a quale evento. Per i pulsanti (disponibili tra gli //Elementi// della //Casella degli strumenti// nella sezione //Click// della scheda //Eventi// si può associare una funzione associata alla pressione del pulsante sul touchscreen. Ad esempio scegliendo la //Elaborazione di bit//|//Imposta bit// si può selezionare dal menu a tendina una variabile del PLC che si vuole comandare (NB quando il pannello HMI comanda il PLC bisogna agire sui merker e non direttamente sulle uscite!).+L'associazione viene fatta dalle proprietà dell'oggetto. Ad esempio è possibile associare una PilotLight (spia) ad una variabile del PLC indicando nella sezione //Generale// delle proprietà dell'oggetto il nome della variabile e l'aspetto desiderato quando questa vale 0 o 1. Un'operazione analoga si può fare con i pulsanti indicando quale variabile del PLC si vuole comandare e in seguito a quale evento. Per i pulsanti (disponibili tra gli //Elementi// della //Casella degli strumenti// nella sezione //Click// della scheda //Eventi// si può associare una funzione associata alla pressione del pulsante sul touchscreen. Ad esempio scegliendo la //Elaborazione di bit//|//Imposta bit// si può selezionare dal menu a tendina una variabile del PLC che si vuole comandare (NB quando il pannello HMI comanda il PLC bisogna agire sui merker e non direttamente sulle uscite!).
  
 Quando l'interfaccia grafica è completa il progetto va compilato e caricato sul pannello HMI. Per farlo si procede come per i PLC con la funzione //Carica nel dispositivo//. Quando l'interfaccia grafica è completa il progetto va compilato e caricato sul pannello HMI. Per farlo si procede come per i PLC con la funzione //Carica nel dispositivo//.
Linea 58: Linea 58:
   * per rendere visibile/invisibile un oggetto o cambiare alcune proprietà si seleziona l'oggetto e nella scheda //Animazioni// si sceglie //Dinamizza visibilità//; a questo punto si può abbinare una variabile e scegliere un campo di valori che influenzi visibilità/colore   * per rendere visibile/invisibile un oggetto o cambiare alcune proprietà si seleziona l'oggetto e nella scheda //Animazioni// si sceglie //Dinamizza visibilità//; a questo punto si può abbinare una variabile e scegliere un campo di valori che influenzi visibilità/colore
   * lo stesso si può fare per muovere un elemento   * lo stesso si può fare per muovere un elemento
 +
 +===== Simulare un pannello HMI =====
 +
 +Bisogna distinguere due casi:
 +  * si simula sia il PLC che il pannello HMI
 +  * si simula solo il pannello HMI e si usa un vero PLC
 +
 +Nel primo caso non ci sono particolari problemi: si usa PLCSim per simulare il PLC (come descritto [[plcsim|qui]]) e si simula il pannello HMI selezionandolo nella finestra //Navigazione del progetto// e scegliendo //Online|Simula// dal menu. Questa soluzione è comoda se non dispone dell'hardware ma piuttosto lenta (compilazione, avvio di PLCSim, caricamento, ecc.).
 +
 +Se è disponibile un PLC vero e proprio ha senso simulare il solo pannello HMI ma perché la simulazione funzioni bisogna modificare un'opzione nel pannello di controllo di Windows:
 +  * dal pannello cercare o selezionare la voce //Imposta interfaccia PG/PC (32 bit)//
 +  * abbinare a ''S7ONLINE'' la scheda di rete collegata al PLC (ad esempio la Realtek nei PC del laboratorio) scegliendo la voce che termina con ''TCPIP.1''
 +
 +Senza questa impostazione la simulazione funziona ma il pannello non comunica col PLC.
 +
 +===== HMI e manipolatore =====
 +
 +Il progetto del [[manipolatore]] si presta ad essere integrato con un pannello HMI che svolga funzioni di:
 +  * supervisione
 +  * configurazione
 +
 +{{ ::manipolatore-hmi-2020.zip |Questa versione aggiornata del progetto}} contiene un pannello HMI Basic che svolge queste funzioni oltre ad un software aggiornato che permette l'interazione tra PLC e HMI.
 +
 +==== Hardware ====
 +
 +Il pannello HMI ha un'alimentazione separata a 24V e comunica con PLC e PC grazie a uno switch((per i PLC 1215C non serve perché hanno due porte di rete e uno switch integrato)). Quando si aggiunge un HMI al progetto è bene controllare - e eventualmente modificare - l'indirizzo IP che non deve essere in conflitto con PLC (192.168.0.1) o PC (192.168.0.2).
 +
 +==== HMI ====
 +
 +L'interfaccia comprende tre pagine navigabili con un menu a tendina o con dei bottoni. La finestra principale contiene solo un'immagine del modellino. La pagina di supervisione permette di avviare il ciclo anche con un pulsante "start" virtuale e di interrompere il movimento con pulsante di emergenza (premendolo si fermano tutti i motori, disarmandolo si ha l'homing). I movimenti sono monitorati in due modi:
 +  * con dei campi I/O che mostrano il valore dei contatori dei quattro encoder
 +  * con delle rappresentazioni schematiche delle parti del manipolatore associate a delle animazioni
 +In questa pagina i campi I/O sono solo uscite e le variabili associate sono copiate dal PLC all'HMI ogni 100ms. Le animazioni sono:
 +  * movimenti orizzontali o verticali definiti in pixel dato un range di valori di variabili del PLC (ad esempio da 0 a 12 -> spostamento da 0 a 24 pixel)
 +  * movimenti diretti (orizzontali e verticali) che producono uno spostamento lungo l'asse X e l'asse Y pari al valore di due variabili
 +  * un elenco di grafiche per la rotazione del braccio dove si associa associata una determinata immagine a un intervallo di valori del conteggio legato alla rotazione((questa soluzione è dovuta al fatto che i pannelli Basic non permettono di ruotare le grafiche))
 +
 +La pagina per la configurazione contiene dei campi I/O associati alle variabili delle impostazioni e dei pulsanti che ripristinano il valore di default. Il range di valori ammesso è definito nella tabella delle variabili standard dell'HMI (nella sezione Area); i pulsanti scrivono un valore predefinito in una variabile del PLC in corrispondenza dell'evento "rilascia".
 +
 +==== Software ====
 +
 +Il programma è modificato così:
 +  * l'emergenza è gestita con un nuovo stato attivato dalla pressione del pulsante su HMI; il fronte di discesa del segnale associato al pulsante porta al passo P0 (homing)
 +  * le coordinate dei movimenti non sono più valori numerici costanti inseriti nel programma ma dei valori contenuti in apposite variabili a ritenzione((il valore si conserva anche quando manca l'alimentazione)) contenute in un blocco dati (DB) apposito
 +  * per gestire correttamente le animazioni dell'HMI si utilizzano contatori CTUD per i sensori a impulsi (l'informazione sul verso viene ottenuta dallo stato dei motori) e con una variabile che contiene il valore del conteggio diviso per 10 (per ottenere uno spostamento in pixel non troppo grande)
 +
 +
  
 ==== Riferimenti ==== ==== Riferimenti ====
hmi.1550421756.txt.gz · Ultima modifica: 2020/07/03 17:58 (modifica esterna)