C# Modbus SlaveException Реестр чтенияC#

Место общения программистов C#
Ответить
Anonymous
 C# Modbus SlaveException Реестр чтения

Сообщение Anonymous »

Я работаю над проектом C#, который должен общаться с PLC от TCP Modbus.
Я использую библиотеку Nmodbus, и это работает нормально.
Проблема в том, когда я пытаюсь читать /написать Реестр более 12000.
Я получаю это исключение: < /p>

Exception 'Modbus.SlaveException' Function Code: 131
< /code>

Это часть кода, которая генерирует исключение: < /p>

private TcpClient tcpClient;
private ModbusIpMaster master;
private void connect(){
// connect to Modbus TCP Server
string ipAddress = "192.168.77.7"; //Input WISE IP
int tcpPort = 502;
tcpClient = new TcpClient(ipAddress, tcpPort);

// create Modbus TCP Master by the tcp client
master = ModbusIpMaster.CreateIp(tcpClient);

// rewrite the value of AO ch0 (40020~40021) by float
byte slaveID = 1;
// ushort rewriteAddress = 20;
// ushort[] rewriteValue = new ushort[2] { 0, 0 };
// float[] floatData = new float[1] { 223.456F };
// Buffer.BlockCopy(floatData, 0, rewriteValue, 0, 4);
Random random = new Random();

// read the holding register 12001~12005
// write the holding register 301~305

ushort startAddress = 12000;
ushort numOfPoints = 5;
master.Transport.ReadTimeout = 1000;
while (!_shouldStop1)
{
try
{
ushort[] register = master.ReadHoldingRegisters(slaveID, startAddress, numOfPoints);

for (int index = 0; index

Любое предложение будет оценено.
Спасибо,
federico.

Подробнее здесь: https://stackoverflow.com/questions/431 ... g-registry
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»