Sergio Bertana
Risposte nei forum create
-
AutorePost
-
Sergio Bertana
Amministratore del forumIntanto nel report SpyData non vedo i frames Tx dei comandi Modbus inviati al dispositivo, immagino tu abbia eseguito lo spionaggio triggerando solo i pacchetti Rx. Per quanto riguarda gli errori puoi fare riferimento alla pagina elenco.
- 10007050 Timeout esecuzione, dopo l’invio del comando il sistema non ha risposto nel tempo definito di timeout.
- 10007170 Valore address errato in risposta a comando “Preset single register”, è stato definito un indirizzo nel comando di preset single register ed il sistema slave ha risposto con un’altro.
- 10007652 Codice funzione errato in frame risposta a comando, è stato inviato un codice di comando ed il sistema ha risposto con un’altro codice.
- 10007152 Valore dato reset bit errato in risposta a comando “Force single coil”, è stato inviato un comando di Force single coil di reset bit ma il sisatema slave ha risposto con il valore di bit set “FF00”.
- 10007153 Valore dato set bit errato in risposta a comando “Force single coil”, è stato inviato un comando di Force single coil di set bit ma il sisatema slave ha risposto con il valore di bit reset “0000”.
Mi sembra che ci siano problemi di comunicazione con il tuo sistema slave. Ti consiglio di testare i singolo comandi Modbus utilizzando Toolly per verificare se sono corretti e se il sistema slave risponde correttamente.
Aprile 4, 2023 alle 8:48 am in risposta a: Import data from version 18 of TIA portal (SIEMENS) #71384Sergio Bertana
Amministratore del forumAttualmente EasyBuilder non importa il file ap18.
Come workaround è possibile rinominare il file ap18 in ap17 momentaneamente e poi eseguire l’importazione.
La versione di EasyBuildePro 6.08.02…. che sarà rilasciata a breve avrà anche ap18 già configurato.
Sergio Bertana
Amministratore del forumSpiegarti velocemente il CANOpen è impossibile, intanto diciamo che le funzioni base SysCANTxMsg e SysCANRxMsg servono a inviare e ricevere messaggi CAN, il CANOpen utilizza i messaggi CAN secondo regole precise che ne determinano il funzionamento.
Quindi intanto per gestirlo ti conviene fare riferimento alla CANOpenMaster, che permette di attivare una modalità sniffer per visualizzare i pacchetti in transito. Il protocollo si basa su pacchetti di configurazione SDO (Che sono quelli a cui fa riferimento la documentazione) e pacchetti dato PDO.
Una idea sul funzionamento del protocollo te la puoi fare guardando il sorgente della FB BeckhoffBK5100, in cui viene gestito un modlo di I/O.
- Il master alla inizializzazione invia un comando CANOMMCTYPE#MODRST.
- Poi inizia la configurazione del modulo scrivendo e leggendo i vari SDO, questo modulo è semplice quindi viene solo eseguita la lettura del tipo di dispositivo CANOMMCTYPE#SDORD.
- Terminata la configurazione il modulo viene reso operativo CANOMMCTYPE#MODOP.
- A questo punto il modulo comincerà ad inviare lo stato degli ingressi ed ad accettare il settaggio delle uscite attraverso pacchetti PDO.
Sergio Bertana
Amministratore del forumCosì per sfizio ti posto anche l’esempio della macro.
macro_command main() bool ResetBit=false //Reset bit command bool SetBit=true //Set bit command short CTime=0 //Current time short TouchNow[2]={0,0} //Touch now position short TouchSave[2]={0,0} //Touch save position // Read data from HMI support variables. GetData(CTime, "Local HMI", LW, 10, 1) //Current time GetData(TouchSave[0], "Local HMI", LW, 11, 2) //Touch save position // Increase current time. CTime=CTime+1 //Current time // Acquire last touch position. GetData(TouchNow[0], "Local HMI", LW, 9042, 2) //Touch X, Y position // Check is screen is touched. if ((TouchNow[0] <> TouchSave[0]) or (TouchNow[1] <> TouchSave[1])) then CTime=0 //Current time SetData(ResetBit, "Local HMI", LB, 10, 1) //Reset pop-up trigger TouchSave[0]=TouchNow[0] //Touch save position TouchSave[1]=TouchNow[1] //Touch save position end if if (CTime > 10) then SetData(SetBit, "Local HMI", LB, 10, 1) //Set pop-up trigger end if // Save data on HMI support variables. SetData(CTime, "Local HMI", LW, 10, 1) SetData(TouchSave[0], "Local HMI", LW, 11, 2) //Touch save position end macro_commandLa macro viene eseguita a tempo ogni 1 secondo, ed esegue l’incremento di un avariabile tempo, se viene toccato lo schermo (siccome eseguo la macro a tempo non posso utilizzare il bit di schermo toccato, ho usato le posizioni di tocco), eseguo il reset del tempo e del bit di attivazione finestra pop-up.
Se scade il tempo si attiva il bit di attivazione finestra pop-up, ho scelto un bit a caso LB10 ed ho inserito nella Common window un oggetto Direct window che visualizza una finestra di pop-up se LB10 è attivo. Così quando si attiva la finestra di pop-up basta toccare lo schermo per resettare il bit e chiuderla.
Sergio Bertana
Amministratore del forumIntanto la notte ha portato consiglio, potresti spostare gli oggetti dalla Common Window in una nuova finestra, poi nelle tue finestre andare a definire nei settaggi questa finestra come Underlay window.
In questo modo avrai un funzionamento identico a prima ma nella finestra che utilizzerai come salvaschermo non definendo nessuna Underlay window non avrai nessun oggetto tranne quelli dichiarati nella pagina.
Sergio Bertana
Amministratore del forumCome scritto nel post precedente e come vedi dall’Appendice A il protocollo MPI è supportato da:
- Serie iP, iE, eMT, mTV, XE
- Serie cMT-SVR, cMT3071, cMT3072, cMT3090, cMT3103, cMT3151, cMT-HDM, cMT-FHD, cMT-G01, cMT-G02, cMT-G03, cMT-G04, cMT-CTRL01
- Serie cMT3092X, cMT3102X, cMT3108XH, cMT3152X, cMT3162X, cMT3072XH, cMT3072XH2, cMT3072XHT
- Serie cMT-FHDX-220, cMT-FHDX-820, cMT-SVRX-820, cMT-SVRX-822
Quindi hai l’imbarazzo dela scelta, le serie iP ed iE sono piu economiche le serie cMT sono più performanti.
Marzo 27, 2023 alle 11:31 am in risposta a: Gestione screensaver con oggetti in Common Window #71284Sergio Bertana
Amministratore del forumAvendo definito degli oggetti degli oggetti nella Common Window questi vengono visualizzati su ogni pagina, quindi la funzione automatica di screen saver non può essere utilizzata. La funzione esegue un cambio pagina in visualizzazione ma essendoci oggetti nella Common Window questi vengono comunque visualizzati. Ora che alternative hai:
- Rimuovi gli oggetti dalla Common Window e li vai ad inserire nelle pagine dove ti occorre visualizzarli, ma questa soluzione certo comporta una modifica pesante del progetto.
- Puoi crearti una macro ad esecuzione periodica che gestisce un conteggio del tempo trascorso in cui nessuno tocca lo schermo, il bit 0 della variabile LW-9041 se attivo indica che l’utente stà toccando lo schermo. Dopo il tempo desiderato puoi attivare una pagina in pop-up grande come la pagina base, in modo da ricoprire completamente la pagina base ed anche la Common Window.
Sergio Bertana
Amministratore del forumPer eseguire l’upload del programma da un pannello MT6100i dovresti utilizzare il programma EasyBuilder8000, connettendoti in USB con il pannello.
Molto più agevole inserire un PenDrive (Max 8Gb) nel pannello a pannello acceso, apparirà una finestra di po-up da cui è possibile scegliere di effettuare l’upload del programma. Verrà richiesta una password quella di default è 111111.
Terminato l’upload ti troverai sul PenDrive il file progetto che potrai importare direttamente in EasyBuilderPro. Naturalmente potrai eseguirne l’importazione solo se il file non è protetto da password o se sai la password.
Sergio Bertana
Amministratore del forumE’ possibile realizzare una macro che con GetData acquisisce le variabili dai due PLC ed esegue la condizione appoggiando il risultato su di un bit LB del pannello che verrà utilizzato per l’abilitazione dell’oggetto.
Se pannello è un modello cMT è possibile utilizzare le if condition per generare il bit di abilitazione (Screenshot).
Sergio Bertana
Amministratore del forumAggiungendo all’App cMTViewer (Sia su PC che su tablet/smartphone) i pannelli cMT si vede una schermata ridotta in monitor mode della grafica del pannello.
Cliccando sull’immagine del pannello che si vuole gestire questa viene aperta a dimensioni schermo e può essere controllata. Non è possibile avere aperte più istanze in contemporanea.
L’App cMTViewer è stata pensata proprio per poter controllare più pannelli cMT da un unico punto, tutti i pannelli connessi sono iconizzati in piccole dimensioni, selezionando il pannello desiderato si apre a pieno schermo, così si opera su di esso, poi con un pinch lo si richiude ad icona e si apre un’altro pannello e così via…
Marzo 22, 2023 alle 2:44 pm in risposta a: Rilevazione e storicizzazione dati sedi produttive #71137Sergio Bertana
Amministratore del forumPossiamo offrire i sistemi STE2 con le relative sonde ambientali e sonde di corrente monofase. Questi prodotti supportano il protocollo SNMP e/o possono inviare dati al portale dedicato SensDesk.
In alternativa la gamma di sensori temperatura/umidità wireless Aranet, che si connettono alla stazione base Aranet pro, che può essere interrogato con protocollo Modbus TCP e/o inviare dati al portale dedicato Aranet cloud.
Altra possibilità è utilizzare i sensori di temperatura Comet, che si possono interrogare in Modbus TCP e/o inviare dati al portale dedicato.
Infine è possibile utilizzare i nostri sistemi programmabili SlimLine per gestire la connessione in SNMP, Modbus TCP con i sensori visti precedentemente e/o per collegare sensori combinati temperatura/umidità, meter di energia monofase e trifase in RS485. I dati rilevati possono essere storicizzati nel PLC e/o inviati ad un server FTP per la storicizzazione.
Utilizzando il protocollo MQTT è possibile inviare i dati ad un portale pubblico IoT ad esempio Beebotte od a un sito web realizzato ad-hoc per le proprie esigenze.
Marzo 21, 2023 alle 6:07 pm in risposta a: Comunicazione Modbus RTU fra CMT-SVR-100 e Yotta A-1012 #71049Sergio Bertana
Amministratore del forumSei caduto nella “trappola” della documentazione Modbus dove molti produttori indicano con la prima cifra il tipo di comando Modbus da utilizzare (In questo caso 4xxxx, comando 04 Read input registers).
In realtà proprio come hai visto tu quando nel manuale indicano 40131 si vuole indicare di eseguire un comando di 4x Read input register all’indirizzo 131. Modbus ha offset 1, e tu invece hai usato il Modbus RTU Zero Based Addressing, quindi l’offset lo devi sottrarre tu dalla definizione dell’indirizzo.
Sergio Bertana
Amministratore del forumIn effetti ci siamo accorti di un BUG, eseguendo il backup viene creato il file temporaneo UplInfos.ini sul disco definito.
Ora avendo formattato la SDCard in FAT32, come indicato in questo articolo, si possono utilizzare solo nomi di lunghezza massima 8+3 e tutti in maiuscolo. Quindi il file temporaneo non è possibile crearlo.
In attesa di risolvere il BUG su una prossima versione di sistema operativo, ti consiglio di formattare la SDCard con il formato FAT_32_ELS e per trasferire il file ssu PC utilizza una connessione in FTP.
Sergio Bertana
Amministratore del forumIn effetti nelle vecchie versioni di LogicLab in caso di sovrapposizione di variabili appariva un pop-up di alert, ora non appare più.
Sinceramente non mi sono posto il problema ma ho girato la domanda al supporto Axel, posterò la risposta appena la ricevo.
Le opzioni a cui ti riferisci, riguardano il comportamento di LogicLab quando importi un programma o variabili. Trovi le spiegazioni sul manuale al capitolo MERGE FUNCTION.
Marzo 21, 2023 alle 10:53 am in risposta a: Policy servizio Weincloud, piattaforma di monitoraggio su cloud #71023Sergio Bertana
Amministratore del forumQui trova i prezzi per il servizio WeinCloud Dashboard ed attualmente il costo è un canone annuale.
Se le macchine sono nella stessa sottorete si può convogliare nel possibile le informazioni su un unico HMI quindi ridurre il numero di canoni. Se invece le macchine sono dislocate in luoghi diversi occorre sottoscrivere canoni indipendenti.
Teoricamente però i canoni sono a carico del cliente finale che li mantiene per essere conforme con le richieste della normativa Industry 4.0. In ogni caso che si utilizzino SCADA o connessioni MQTT a portali IoT ci sarebbero costi sia di sviluppo che canoni per l’utilizzo.
Se utilizzi il protocollo MQTT sia da pannello Weintek che con i nostri prodotti SlimLine o puoi connetterti a Beebotte, ma anche in questo caso hai un canone da pagare.
-
AutorePost