use of com.ghgande.j2mod.modbus.msg.WriteMultipleRegistersRequest in project openems by OpenEMS.
the class ModbusBridge method writeMultipleRegisters.
/**
* Write Multiple Registers (function code 16)
*
* @param modbusUnitId
* @param address
* @param register
* @throws OpenemsModbusException
* @throws ModbusException
*/
private ModbusResponse writeMultipleRegisters(int modbusUnitId, int address, Register... register) throws OpenemsModbusException, ModbusException {
ModbusTransaction trans = getTransaction();
WriteMultipleRegistersRequest req = new WriteMultipleRegistersRequest(address, register);
req.setUnitID(modbusUnitId);
trans.setRequest(req);
try {
trans.execute();
} catch (ModbusException e) {
// try again with new connection
closeModbusConnection();
trans = getTransaction();
req = new WriteMultipleRegistersRequest(address, register);
req.setUnitID(modbusUnitId);
trans.setRequest(req);
trans.execute();
}
return trans.getResponse();
}
Aggregations