modbus_ts.yml
Options:
PeriodMs: 1000
ModbusSetup:
Type: TcpServer
Port: 502
MaxNumConnections: 10
ModbusRead:
ModbusWrite:
- { Index: 0, RegisterHandler: { Type: uint32 } , Type: Uint64Val , Topic: TestCounter}
- { Index: 2, RegisterHandler: { Type: int16 } , Type: Int8Val , Topic: In_int8 }
- { Index: 3, RegisterHandler: { Type: int16 } , Type: Int16Val , Topic: In_int16 }
- { Index: 4, RegisterHandler: { Type: int32, BigEndian: true } , Type: Int32Val , Topic: In_int32 }
- { Index: 6, RegisterHandler: { Type: int32, BigEndian: false } , Type: Int32Val , Topic: In_int32 }
- { Index: 8, RegisterHandler: { Type: uint16 } , Type: Uint8Val , Topic: In_uint8 }
- { Index: 9, RegisterHandler: { Type: uint16 } , Type: Uint16Val , Topic: In_uint16 }
- { Index: 10, RegisterHandler: { Type: uint32, BigEndian: true } , Type: Uint32Val , Topic: In_uint32 }
- { Index: 12, RegisterHandler: { Type: uint32, BigEndian: false } , Type: Uint32Val , Topic: In_uint32 }
- { Index: 14, RegisterHandler: { Type: int16 } , Type: Int8Val , Topic: In_int8 }
- { Index: 15, RegisterHandler: { Type: double, BigEndian: true} , Type: DoubleVal , Topic: In_double }
- { Index: 19, RegisterHandler: { Type: double, BigEndian: false} , Type: DoubleVal , Topic: In_double }
- { Index: 23, RegisterHandler: { Type: float, BigEndian: true} , Type: FloatVal , Topic: In_float }
- { Index: 25, RegisterHandler: { Type: float, BigEndian: false} , Type: FloatVal , Topic: In_float }
- { Index: 27, RegisterHandler: { Type: bit, Bit: 0} , Type: BoolVal , Topic: In_bool }
- { Index: 27, RegisterHandler: { Type: bit, Bit: 1} , Type: BoolVal , Topic: In_i8neg }
- { Index: 27, RegisterHandler: { Type: bit, Bit: 2} , Type: BoolVal , Topic: In_i16pos }
- { Index: 27, RegisterHandler: { Type: bit, Bit: 3} , Type: BoolVal , Topic: In_i32neg }
- { Index: 27, RegisterHandler: { Type: bit, Bit: 4} , Type: BoolVal , Topic: In_ui64neg }
- { Index: 27, RegisterHandler: { Type: bit, Bit: 5} , Type: BoolVal , Topic: In_false }
- { Index: 27, RegisterHandler: { Type: bit, Bit: 6} , Type: BoolVal , Topic: In_true }
- { Index: 27, RegisterHandler: { Type: bit, Bit: 7} , Type: BoolVal , Topic: In_false }
- { Index: 27, RegisterHandler: { Type: bit, Bit: 8} , Type: BoolVal , Topic: In_true }
- { Index: 27, RegisterHandler: { Type: bit, Bit: 9} , Type: BoolVal , Topic: In_false }
- { Index: 27, RegisterHandler: { Type: bit, Bit: 10} , Type: BoolVal , Topic: In_true }
- { Index: 27, RegisterHandler: { Type: bit, Bit: 11} , Type: BoolVal , Topic: In_false }
- { Index: 27, RegisterHandler: { Type: bit, Bit: 12} , Type: BoolVal , Topic: In_true }
- { Index: 27, RegisterHandler: { Type: bit, Bit: 13} , Type: BoolVal , Topic: In_false }
- { Index: 27, RegisterHandler: { Type: bit, Bit: 14} , Type: BoolVal , Topic: In_true }
- { Index: 27, RegisterHandler: { Type: bit, Bit: 15} , Type: BoolVal , Topic: In_true }
# Casted and scaled values
- { Index: 28, RegisterHandler: { Type: int16 } , Type: Int16Val , Topic: In_intToScldDblSine , Scale: [1, 0] }
- { Index: 29, RegisterHandler: { Type: int32 } , Type: Int16Val , Topic: In_int16 , Scale: [0.01, 0] }
# Numeric limits and truncation
- { Index: 31, RegisterHandler: { Type: uint16 } , Type: Int16Val , Topic: In_int16 }
- { Index: 32, RegisterHandler: { Type: double } , Type: DoubleVal , Topic: In_NaN }
- { Index: 36, RegisterHandler: { Type: float } , Type: DoubleVal , Topic: In_NaN }
- { Index: 38, RegisterHandler: { Type: int16 } , Type: DoubleVal , Topic: In_NaN }
- { Index: 39, RegisterHandler: { Type: uint16 } , Type: DoubleVal , Topic: In_NaN }
- { Index: 40, RegisterHandler: { Type: int32 } , Type: DoubleVal , Topic: In_NaN }
- { Index: 42, RegisterHandler: { Type: uint32 } , Type: DoubleVal , Topic: In_NaN }
- { Index: 44, RegisterHandler: { Type: double } , Type: DoubleVal , Topic: In_inf }
- { Index: 48, RegisterHandler: { Type: float } , Type: DoubleVal , Topic: In_inf }
- { Index: 50, RegisterHandler: { Type: int16 } , Type: DoubleVal , Topic: In_inf }
- { Index: 51, RegisterHandler: { Type: uint16 } , Type: DoubleVal , Topic: In_inf }
- { Index: 52, RegisterHandler: { Type: int32 } , Type: DoubleVal , Topic: In_inf }
- { Index: 54, RegisterHandler: { Type: uint32 } , Type: DoubleVal , Topic: In_inf }
- { Index: 56, RegisterHandler: { Type: double } , Type: DoubleVal , Topic: In_infneg }
- { Index: 60, RegisterHandler: { Type: float } , Type: DoubleVal , Topic: In_infneg }
- { Index: 62, RegisterHandler: { Type: int16 } , Type: DoubleVal , Topic: In_infneg }
- { Index: 63, RegisterHandler: { Type: uint16 } , Type: DoubleVal , Topic: In_infneg }
- { Index: 64, RegisterHandler: { Type: int32 } , Type: DoubleVal , Topic: In_infneg }
- { Index: 66, RegisterHandler: { Type: uint32 } , Type: DoubleVal , Topic: In_infneg }
- { Index: [68,70,72], RegisterHandler: { Type: float } , Type: Float3 , Topic: In_float3, Scale: [1.0, 0] }
- { Index: [74,75,76], RegisterHandler: [{ Type: int16 }, { Type: int16 }, { Type: int16 }], Type: Float3, Topic: In_float3, Fields: [x, y, z], Scale: [[0.01, 0], [0.01, 0], [0.01, 0] ] }