Ведомое устройство Modbus rtu не отвечает на запрос, а на ведомое устройство подается сигнал C-ERR

Ситуация У меня восточные моторы LSD-KD Драйвер шагового двигателя, я подключаю через ПК -> USB -> RS232 -> RS485 -> Driver. Драйвер использует RS485 Modbus RTU и отправляется со скоростью передачи 38400, битами данных 8, стоп-битами 1, четностью четности и ведомым числом 2.

Я отправляю, пытаясь отправить 0x02,0x06,0x02,0x4b,0x00,0x50,0xf8,0x6b, которые должны исправить регистр. и я не получаю никакого ответа, и C-DAT/C-ERR становится красным.

У меня есть этот кусочек кода Javascript

var crc = require('crc');
var SerialPort = require("serialport").SerialPort
var serialPort = new SerialPort("/dev/cu.usbserial", {
  baudrate: 38400,
  databits: 8,
  stopbits: 1,
  parity: 'even'
});

var buff = new Buffer([0x02,0x06,0x02,0x4b,0x00,0x50,0xf8,0x6b]);

console.assert(crc.crc16modbus(buff) == 0);

serialPort.open(function () {

   serialPort.on('data', function(data) {
      console.log("recieving:", data);
    });

  setInterval(function() {
    console.log("writing", buff)
   serialPort.write(buff);
  },1000);

});

При запуске кода я вижу:

writing <Buffer 02 06 02 4b 00 50 f8 6b>
recieving: <Buffer 02>
recieving: <Buffer 06>
recieving: <Buffer 02>
recieving: <Buffer 4b>
recieving: <Buffer 00>
recieving: <Buffer 50>
recieving: <Buffer f8>
recieving: <Buffer 6b>

что исключено, поскольку RS485 имеет эхо. но я не получаю ничего от раба.

РЕДАКТИРОВАТЬ: больше на конфигурации. на преобразователе RS232 <-> RS485 он установлен в "T.ON R.ON" и "DCE" именно это устройство. страница устройства.

на драйвере это установлено так:

SW1 установлен на 2, SW1 соответствует номеру раба

SW2 установлен на 2, SW2 со значением два указывает скорость передачи 38400

SW3 установлен на "1: выключен, 2: включен, 3: выключен, 4: включен"

 No.1: Set the address number, this causes the slave address to be 16 values higher
 No.2: Set the protocol, this sets it to use the ModBus Protocol
 No.3: Not used 
 No.4: Set the termination resistor (120 Ω)

Выходной порт преобразователя RS232 <-> RS485 подключен к драйверу. Выходной порт также подключен к входному порту преобразователя. отсюда эхо.

0 ответов

Другие вопросы по тегам