modbus_ts.yml
---
# Modbus Tcp Server
Options:
PeriodMs: 1000
ModbusSetup:
Type: TcpServer
Port: 5020
ParameterPacks:
DefaultDDS:
Partition: MYPart
LifespanMs: 3000
DefaultModbus:
Table: HoldingRegister
BigEndianWordOrder: true # This will be disregarded for types <=16 bits
BitOnRegister:
Type: BoolVal
ModbusType: bit
Table: HoldingRegister
BitOnCoil:
Type: BoolVal
Table: BitHolding
ModbusToDDS:
Out_TestCounter:
Type: Uint64Val
Partition: System
LifespanMs: 4000
Table: InputRegister
Index: 0
ModbusType: uint32
BigEndianWordOrder: true
Out_int16: {Index: 0, ModbusType: int16, Type: Int16Val, ParameterPacks: [DefaultDDS, DefaultModbus]}
Out_int32_BigE: {Index: 1, ModbusType: int32, Type: Int32Val, ParameterPacks: [DefaultDDS, DefaultModbus]}
Out_int16Rescld:
Index: 3
Table: HoldingRegister
ModbusType: uint32
Type: DoubleVal
Range: [0, 1000]
LifespanMs: 3000
BigEndianWordOrder: true
Out_bool: {Index: 5+0, ParameterPacks: [DefaultDDS, BitOnRegister]}
Out_i8neg: {Index: 5+1, ParameterPacks: [DefaultDDS, BitOnRegister]}
Out_float3viaInt16:
Type: Float3
LifespanMs: 3000
Fields:
x: {Index: 6, Table: HoldingRegister, ModbusType: int16, Scale: 0.001, Offset: 0}
y: {Index: 7, Table: HoldingRegister, ModbusType: int16, Scale: 10, Offset: 10000}
z: {Index: 8, Table: HoldingRegister, ModbusType: int16, Range: [-100, 100]}
Out_bit_coil: {Index: 0, ParameterPacks: [DefaultDDS, BitOnCoil]}
DDSToModbus: