Vai al contenuto

Domande varie su programmazione terminali

Home Forum Terminali operatore (Weintek) Domande varie su programmazione terminali

Stai visualizzando 6 post - dal 1 a 6 (di 6 totali)
  • Autore
    Post
  • #35073
    Anonimo
    Ospite

    1) 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.

    #36877
    Sergio Bertana
    Amministratore del forum

    1) 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ù.

    #36972
    Anonimo
    Ospite

    Non 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 ?

    #36973
    Sergio Bertana
    Amministratore del forum

    Non 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.

    #37056
    Mario Mazza
    Partecipante

    Sul 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.

    #37058
    Sergio Bertana
    Amministratore del forum

    La 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.

Stai visualizzando 6 post - dal 1 a 6 (di 6 totali)
  • Devi essere connesso per rispondere a questo topic.