Il modulo Seneca utilizza il protocollo Modbus RTU, questo protocollo utilizza un slot temporale per suddividere i pacchetti. Solitamente se il pacchetto RTU trasmesso in seriale è continuo (Non vi sono spazi temporali tra i caratteri) il convertitore Ethernet/Seriale lo impacchetta in un unico frame TCP e lo invia.
Ma se ad esempio vi è un piccolo ritardo nella trasmissione seriale RTU (Vengono trasmessi i dati e poi c’è una piccola pausa prima del CRC) può essere che vengano creati più pacchetti TCP e quindi il software che riceve su PC vede uno slot temporale e lo considera come fine frame. Ma interpretando il frame si accorge che manca il CRC. Tutto quanto enunciato è pura teoria bisognerebbe fare analisi approfondite.
Un test semplice è utilizzare Toolly ed inviare un frame di richiesta Modbus e vedrificare la risposta (Vedi topic, topic) così ti accerti che tutto funziona (Cioè ricevi il frame di risposta corretto completo di CRC). Purtroppo non puoi capire se c’è ritardo tra il frame ed il suo CRC.
Comunque per cercare di risolvere il problema, dovresti provare a variare le impostazioni della seriale (Screenshot), in particolare aumentare i tempi di Idle, abilitare il Match Packing.