Domande varie su programmazione terminali
Home › Forum › Terminali operatore (Weintek) › Domande varie su programmazione terminali
- Questo topic ha 5 risposte, 2 partecipanti ed è stato aggiornato l'ultima volta 13 anni, 4 mesi fa da
Sergio Bertana.
-
AutorePost
-
Agosto 2, 2011 alle 8:29 am #35073
Anonimo
Ospite1) Avrei necessità da macro di gestire 2 protocolli diversi sulla stessa porta seriale (non contestualmente ovviamente), è possibile attivare/disattivare più protocolli sulla stessa COM (Esempio Modbus e free protocol).
Workaround: Ho utilizzato due porte COM parallelate, su una configuro il protocollo Modbus e sull’altra il free protocol. Naturalmente non eseguo le comunicazioni simultanee.
2) Avrei nescesità di aprire socket TCP/IP per dialogare con un dispositivo non tramite definizione di indirizzo IP ma tramite DNS. E’ possibile effettuare chiamate a server DNS anche accedendo a qualche chiamata di sistema ?
3) Esiste qualche modo per salvare delle stringhe in flash, senza occupare le LW/RW ?
4) Nell’editor MACRO non riesco in alcun modo a scrivere la parola “TO” maiuscola, anche virgolettata per inserirla in una stringa. Il parser me la modifica continuamente in “to” minuscola. La macro apre la connessione verso un server SMTP di posta che richiede espressamente l’uso delle maiuscole.
Workaround: Ho sostituito il singolo carattere assegnando il valore ascii nell’array della stringa.
Agosto 2, 2011 alle 9:38 am #36877Sergio Bertana
Amministratore del forum1) Non esiste la possibilità di modificare run time da macro il protocollo assegnato ad una risorsa (Esempio porta COM) nel menù Edit -> Parametri di sistema. Quindi il workaround da te trovato è sicuramente la soluzione migliore, certo capisco che utilizza due risorse del terminale.
2) Non esistono funzioni ne chiamate al sistema operativo per risolvere nomi DNS. Da macro è possibile modificare l’indirizzo IP e la porta di comunicazione del PLC agendo sui registri interni del terminale.
LW-9600~LW-9629 (IP0:IP1:IP2:IP3)/Port Nr PLC IP address setting
3) Non è possibile salvare stringhe in FLASH, l’unico modo è salvarle su variabili del terminale. Ma se le stringhe sono definite nella macro, di fatto sono salvate in memoria FLASH.
4) Effettivamente c’è questo bug nell’editor, l’ho comunicato al fornitore. Tutte le funzioni di gestione stringhe (StringFind, StringInsert, StringCompare, …) sono state aggiunte ultimamente nel programma EasyBuilder e “pagano” qualche errore di gioventù.
Settembre 23, 2011 alle 7:16 am #36972Anonimo
OspiteNon riusciamo a cancellare gli eventi dallo storico, anche usando gli appositi comandi, pur togglando il flag per la scrittura forzata della memoria. Avete qualche suggerimento ?
Settembre 23, 2011 alle 7:27 am #36973Sergio Bertana
Amministratore del forumNon mi è chiaro il riferimento al flag scrittura forzata della memoria, credo tu ti riferisca ai ticks da definire in fase di download del programma sul terminale (Screenshot).
Ricordo che è possibile eseguire la cancellazione dei logs dalla memoria del terminale agendo sui System Reserved Bits. In particolare:
LB-9021 Reset current event log (set ON)
LB-9022 Delete the earliest event log file on HMI memory (set ON)
LB-9023 Delete all event log files on HMI memory (set ON)Fare riferimento al Manuale utente EasyBuilder 8000 per l’elenco completo dei bits di sistema.
Attenzione! Il caricamento dei dati storici avviene alla apertura della pagina, quindi se la cancellazione viene eseguita dopo avere aperto la pagina, i dati continuano a restare visualizzati anche se il file storico è stato rimosso dal disco. Solo alla succesiva riapertura della pagina i dati storici non saranno più visualizzati.
Dicembre 8, 2011 alle 2:49 pm #37056Mario Mazza
PartecipanteSul pannello operatore 8050i ho un oggetto toggle che cambia stato alla pressione sullo schermo. E’ possibile ottenere lo stesso risultato a seguito di un comando provienente dal PLC (SlimLine).
Es all’attivazione di ingresso PLC, oppure al termine di una temporizzazione l’oggetto toggle cambia di stato, o assume uno stato definito.
Dicembre 9, 2011 alle 11:27 am #37058Sergio Bertana
Amministratore del forumLa risposta alla tua domanda mi sembra troppo semplice, temo di non avere ben capito la domanda. Se quello che vuoi è gestire un pulsante Toggle sia da touch screen che da SlimLine devi solo collegare l’oggetto ad una variabile di memoria dello SlimLine, ad esempio una variabile BOOL.
Nell’esempio di cui allego screenshot, l’oggetto Toggle Switch, è collegato in lettura ed in scrittura alla variabile BOOL MB100.16 dello SlimLine (Address su terminale 40016). Toccando l’oggetto sul terminale verrà invertito lo stato della variabile nello SlimLine, viceversa modificando da programma lo stato della variabile verrà modificato lo stato grafico dell’oggetto sul terminale.
Come vedi dalle proprietà dell’oggetto, puoi differenziare l’indirizzo letto dall’indirizzo scritto, cosi è possibile operando da terminale agire su di una variabile SlimLine mentre per modificare lo stato dell’oggetto sul terminale occorrerà agire su di un’altra variabile da programma SlimLine.
-
AutorePost
- Devi essere connesso per rispondere a questo topic.