Utilizzo Shape in movimento senza lo stato della shape
Home › Forum › Terminali operatore (Weintek) › Utilizzo Shape in movimento senza lo stato della shape
- Questo topic ha 6 risposte, 3 partecipanti ed è stato aggiornato l'ultima volta 9 anni, 10 mesi fa da
Massimo.
-
AutorePost
-
Giugno 15, 2015 alle 10:32 am #35813
Anonimo
InattivoDispongo di un HMI Weintek MT8050ie e vorrei muovere una immagine sul display lungo la sola asse Y utilizzando il valore presente su di uno specifico registro del PLC collegato via MODBUS. Il problema che sto riscontrando è che, da quanto letto sul manuale, il registro impostato nella configurazione del controllo “Shape in movimento” viene utilizzato non solo per leggere la posizione ma anche per leggere il valore dello stato da utilizzare per la Shape
Il mio problema è che il registro del PLC che utilizzo contiene solo la posizione da usare per l’asse Y e i registri precedenti o successivi a questo contengono altre informazioni per cui non possono essere assolutamente utilizzati. C’è qualche modo per muovere una immagine lungo un asse Y, X o entrambi a partire da un unico valore contenuto in un registro ?
Giugno 16, 2015 alle 1:19 pm #38977Sergio Bertana
Amministratore del forumQuindi mi sembra di capire che non puoi allocare registri contigui sul PLC. In questo caso nulla di più semplice, relazioni l’oggetto Shape in movimento a variabili LW del terminale anzichè ai registri diretti del PLC. Poi tramite l’oggetto Trasferimento ciclico trasferisci i registri del PLC sulle variabili LW del terminale.
Giugno 16, 2015 alle 4:00 pm #38979Anonimo
InattivoAvevo intuito che la strada potesse essere una soluzione di questo tipo ma non avendo molta esperienza con l’HMI non conoscevo il componente “Trasferimento ciclico”. Vedo di mettere in opera il meccanismo poi posto un aggiornamento. Intanto grazie mille del suggerimento.
Giugno 26, 2015 alle 12:43 pm #38994Anonimo
InattivoHo effettuato qualche prova con la soluzione proposta e il meccanismo funziona, ma sto incontrando un altro problema dovuto al fatto che il dispositivo PLC mi fornisce un valore float (su du registri Word consecutivi) che rappresenta la posizione che dovrei utilizzare per pilotare lo spostamento dell’oggetto Shape ma quest’ultimo accetta la posizione solamente in formato Integer in un registro Word. C’è qualche modo di convertire (ed eventualmente scalare) la posizione float letta dal PLC e inserirla in un registro Word per l’oggetto “Shape in movimento” ?
Giugno 29, 2015 alle 12:50 pm #38995Massimo
ModeratorePresumo che il problema lo si possa risolvere in 2 modi:
a) creando una nuova variabile intera sul PLC in cui inserire il valore di posizione float convertito in intero. Da HMI si andrà a leggere la nuova variabile intera.
b) usando una macro lato HMI che legge il valore float e lo appoggia in una variabile intera del pannello.Luglio 1, 2015 alle 8:03 am #39000Anonimo
InattivoLa soluzione (a) non è attuabile in quanto non si ha nessuna possibilità di accedere alla logica del PLC.
La soluzione (b) mi sembra quella più logica e adattabile alle situazioni che di solito si trovano in ambito reale, ma non riesco a metterla in pratica: come è possibile scalare (eventualmente utilizzando una macro) il valore di un registro PLC al momento della sua lettura per poi depositare il risultato in un registro interno all’HMI ? Mi sarei aspettato di trovare questa possibilità nel controllo “Trasferimento ciclico” invece non c’è. Come posso procedere allora ?Luglio 1, 2015 alle 1:30 pm #39001Massimo
ModeratoreIn questo progetto EasyBuilderPro, viene fatto muovere un “Moving Shape” sull’asse X partendo da un valore float letto dal PLC SlimLine in Modbus e presente ad indirizzo 40000. Viene utilizzata una macro a tempo che oltre a leggere il valore dal PLC, lo scala e lo memorizza nella LW1 dell’HMI (nella LW0 c’è lo stato del MovingShape che eventualmente si può usare per cambiare la dimensione dell’oggetto). Lo slider presente nella pagina può servire per vedere il comportamento del Moving Shape se si disattiva la macro.
-
AutorePost
- Devi essere connesso per rispondere a questo topic.