Errore su comunicazione Modbus TCP
Home › Forum › Programmazione IEC 61131 (LogicLab) › Errore su comunicazione Modbus TCP
Taggato: Modbus TCP
- Questo topic ha 3 risposte, 2 partecipanti ed è stato aggiornato l'ultima volta 2 mesi fa da
Sergio Bertana.
-
AutorePost
-
Luglio 1, 2025 alle 5:33 pm #83196
Concetto
PartecipanteBuon giorno, cercherò di essere conciso e (spero) esaustivo.
- Scansione, via Modbus TCP, di Power Meter Electrex configurato come Server TCP (Nodo 1), e, esso stesso, Master RS485 di un ulteriore Power Meter (Nodo 2).
- Per ognuno acquisisco, in cascata, tre blocchi di dati: 33 REAL (66 Points), 1 DINT (2 Points), 1 DINT (2 Points) per un totale di 6 blocchi
- Faccio esattamente la stessa cosa, in parallelo, su un’altra linea TCP (nodi 3 e 4, per ordine mentale).
- Il FB SysTCPClient ha definito RXSize e TXSize di default di 128 (credo) WORD.
Funziona tutto perfettamente per una decina di giorni, poi ModbusMaster_V3 comincia a dare Errors fino a quando non faccio ripartire lo SlimLine.
Ho fatto parlare lo Slimline in Modbus sia con strumentazione che con PLC, Inverter, SCADA, HMI, sia in RS485 che TCP e non ho mai avuto problemi.
Dove sto sbagliando?
Luglio 2, 2025 alle 9:30 am #83202Sergio Bertana
Amministratore del forumNel FB SysTCPClient, i parametri RxSize e TxSize definiscono la dimensione dei buffer di ricezione e trasmissione dati in byte, quindi determinano la dimensione del pacchetto TCP. Il loro valore non influisce sulla dimensione dei dati in transito, in quanto nelle comunicazioni TCP i dati possono essere suddivisi in più pacchetti TCP che poi vengono “riassemblati” dal gestore della comunicazione.
Nel tuo caso il gestore della comunicazione è il FB ModbusMaster che la gestisce, siccome i pacchetti Modbus possono avere come lunghezza massima 250 coils (32 bytes) o 125 registri (250 bytes) è inutile definire valori maggiori in RxSize e TxSize. E se il valore è inferiore alla dimensione del pacchetto Modbus, il pacchetto verrà frazionato.
Ora veniamo al tuo problema che credo sia riferito ad un BUG del FB ModbusMaster_v3 presente nel package Pck055a040, il BUG è stato risolto e verrà rilasciato con la nuova versione di package Pck055a050 disponibile in versione beta scaricabile dal sito.
Luglio 2, 2025 alle 10:29 am #83209Concetto
PartecipanteGrazie, che conforto mi puoi dare sull’affidabilità della nuova libreria Pck055a05_?
Ci sono note di rilascio?
Luglio 2, 2025 alle 11:29 am #83226Sergio Bertana
Amministratore del forumCome indicato in questo articolo le librerie sono in continua evoluzione, aggiornamenti e/o aggiunte di nuovi oggetti, ma le raccolte (Packages) sono rilasciati solo a scadenze programmate. Tra i rilasci ci possono essere versioni di libreria che verranno poi incluse nella successiva versione del package.
Durante questo periodo viene rilasciata una versione beta del package (riconoscibile dal codice che termina con “_”) che contiene le librerie in fase di sviluppo. La versione beta è in continua evoluzione, viene pubblicata sul sito ad ogni variazione in modo che:
- Gli utenti che hanno segnalato un problema possano utilizarla e verificarne l’effettiva risoluzione.
- Gli eventuali nuovi oggetti, fuzioni e FB, possano essere testati sia da noi che dagli utenti.
Solo dopo questo periodo di “rodaggio” si decide di chiudere la fase di beta test e rilasciare la versione definitiva. Nel frattempo chi ha utilizzato la versione beta nei suoi progetti può continuare ad usarla anche se consigliamo nelle eventuali modifiche future di utilizzare la versione rilasciata.
-
AutorePost
- Devi essere connesso per rispondere a questo topic.