Hi. When using your library v4.3 during request of data very often there are two mistakes, namely "Response CRC check failed" and "No Response from Modbus Slave". These mistakes arise during request of data in a cycle and prevent normal work of the program. Case of emergence of floating. I can start several times in a row performance of this cycle and it will take place successfully, but then will be interrupted from one of mistakes.
And for purity of an experiment I have downloaded NModbus4 library and have checked her work. So it is stable all the work out. But your library in use was pleasant more and the most part of the program is already written. it wouldn't be desirable to remake. There are some reasons on the matter?
for (int i = 0x8000; i < 0x80B8; i++)
{
modbusClient.ReadHoldingRegisters(i, 125);
jrnCrashByteArr = jrnCrashByteArr.Concat(modbusClient.receiveData.Skip(skipBytes).Take(250).ToArray()).ToArray();
}
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
In the new version of the V4.4Alpha library, there seem to be no errors, but the execution time is very long:
START:
The thread 0x4084 ended with code 0 (0x0).
The thread 0x3f0 ended with code 0 (0x0). STOP: 00:04:47
In the previous version of v4.3, these indicators were as follows:
START:
An exception is thrown: "System.TimeoutException" in EasyModbus.dll No Response from Modbus Slave
The thread 0x504 ended with code 0 (0x0).
An exception is thrown: "System.TimeoutException" in EasyModbus.dll No Response from Modbus Slave
The stream 0x1a7c ended with code 0 (0x0).
An exception is thrown: "System.TimeoutException" in EasyModbus.dll No Response from Modbus Slave
The 0x46e0 thread ended with code 0 (0x0).
An exception is thrown: "System.TimeoutException" in EasyModbus.dll No Response from Modbus Slave
The 0x37dc thread ended with code 0 (0x0).
An exception is thrown: "System.TimeoutException" in EasyModbus.dll No Response from Modbus Slave
The 0x1dac thread ended with code 0 (0x0). STOP: 00:00:14
START:
An exception is thrown: "System.TimeoutException" in EasyModbus.dll No Response from Modbus Slave
The stream 0x1810 ended with code 0 (0x0). STOP: 00:00:09
START:
Вызвано исключение: "EasyModbus.Exceptions.CRCCheckFailedException" в EasyModbus.dll Response CRC check failed
Поток 0x170c завершился с кодом 0 (0x0).
Вызвано исключение: "EasyModbus.Exceptions.CRCCheckFailedException" в EasyModbus.dll Response CRC check failed
Поток 0x4720 завершился с кодом 0 (0x0).
Вызвано исключение: "System.TimeoutException" в EasyModbus.dll No Response from Modbus Slave
Поток 0x3ab0 завершился с кодом 0 (0x0). STOP: 00:00:11
START:
An exception is thrown: "System.TimeoutException" in EasyModbus.dll No Response from Modbus Slave
The stream 0x34e8 ended with code 0 (0x0).
An exception is thrown: "System.TimeoutException" in EasyModbus.dll No Response from Modbus Slave
The thread 0x3654 ended with code 0 (0x0).
An exception is thrown: "System.TimeoutException" in EasyModbus.dll No Response from Modbus Slave
The 0x3fdc thread ended with code 0 (0x0). STOP: 00:00:08
In the NModbus4 library, the same code is executed for the next time and without errors:
Hi. When using your library v4.3 during request of data very often there are two mistakes, namely "Response CRC check failed" and "No Response from Modbus Slave". These mistakes arise during request of data in a cycle and prevent normal work of the program. Case of emergence of floating. I can start several times in a row performance of this cycle and it will take place successfully, but then will be interrupted from one of mistakes.
And for purity of an experiment I have downloaded NModbus4 library and have checked her work. So it is stable all the work out. But your library in use was pleasant more and the most part of the program is already written. it wouldn't be desirable to remake. There are some reasons on the matter?
for (int i = 0x8000; i < 0x80B8; i++)
{
modbusClient.ReadHoldingRegisters(i, 125);
jrnCrashByteArr = jrnCrashByteArr.Concat(modbusClient.receiveData.Skip(skipBytes).Take(250).ToArray()).ToArray();
}
Hi,
I will run some tests the next days and take care. I was working a lot on the ModbusRTU part and it could be that I missed an issue.
Hi Rudenko,
please try : https://sourceforge.net/projects/easymodbustcp/files/V4.4%20Alpha/
Hi, Rossmann Engineering!
How would it say =) Ok. I have the following code:
In the new version of the V4.4Alpha library, there seem to be no errors, but the execution time is very long:
In the previous version of v4.3, these indicators were as follows:
In the NModbus4 library, the same code is executed for the next time and without errors: