Lightweight Modbus RTU master.
More...
|
def | __init__ (self, str device_name=None, int baudrate=9600, timeout=1, debug_active=False, **kwargs) |
|
tuple[bool,...] | read_discrete_input_registers (self, int slave_id, int start_register_no=10001, int n_registers=8) |
| Read one or more discrete (on/off) input registers ("coils") More...
|
|
tuple[int,...]|tuple[bytes,...]|bytes | read_holding_registers (self, int slave_id, int start_register_no=40001, int n_registers=1, str dtype="uint16" # Since Python 3.10 typing can be:#) |
| Read one or more value holding registers. More...
|
|
tuple[int,...]|tuple[bytes,...]|bytes | read_input_registers (self, int slave_id, int start_register_no=30001, int n_registers=1, str dtype="uint16" # Since Python 3.10 typing can be:#) |
| Read one or more input read-out registers. More...
|
|
def | set_discrete_output_register (self, int slave_id, int register_no, bool active) |
| Set one discrete (on/off) output register ("coil") More...
|
|
def | set_holding_register (self, int slave_id, int register_no=40001, int value=0x0000) |
| Set one (analog or general-purpose) 16-bit value holding register. More...
|
|
def | set_holding_registers (self, int slave_id, int start_register_no, tuple[int,...] values, bool expect_echo_response=False) |
| Set one or more (analog or general-purpose) 16-bit value holding registers. More...
|
|
|
| debug_active |
|
| serial_device |
|
Lightweight Modbus RTU master.
2022-12-07 Ulrich Lukas
◆ read_discrete_input_registers()
tuple[bool, ...] cheap_modbus_rtu.modbus_rtu_master.ModbusRtuMaster.read_discrete_input_registers |
( |
|
self, |
|
|
int |
slave_id, |
|
|
int |
start_register_no = 10001 , |
|
|
int |
n_registers = 8 |
|
) |
| |
Read one or more discrete (on/off) input registers ("coils")
- Parameters
-
slave_id | Modbus Slave ID |
start_register_no | First register number to read |
n_registers | Number of registers to read |
- Returns
- Tuple of register values as boolean flag values
◆ read_holding_registers()
tuple[int, ...] | tuple[bytes, ...] | bytes cheap_modbus_rtu.modbus_rtu_master.ModbusRtuMaster.read_holding_registers |
( |
|
self, |
|
|
int |
slave_id, |
|
|
int |
start_register_no = 40001 , |
|
|
int |
n_registers = 1 , |
|
|
str |
dtype = "uint16"
# Since Python 3.10 typing can be:
# |
|
) |
| |
Read one or more value holding registers.
- Parameters
-
slave_id | Modbus Slave ID |
start_register_no | First register number to read |
n_registers | Number of registers to read |
dtype | Configures format of return value, see below |
- Returns
- Tuple of register values interpreted as 16-bit integers if dtype == "uint16" (default)
-
Tuple of register values interpreted as 16-bit signed integers if dtype == "int16"
-
Tuple of register values each in a 16-bit bytes object if dtype == "words"
-
bytes of register values if dtype == "raw"
◆ read_input_registers()
tuple[int, ...] | tuple[bytes, ...] | bytes cheap_modbus_rtu.modbus_rtu_master.ModbusRtuMaster.read_input_registers |
( |
|
self, |
|
|
int |
slave_id, |
|
|
int |
start_register_no = 30001 , |
|
|
int |
n_registers = 1 , |
|
|
str |
dtype = "uint16"
# Since Python 3.10 typing can be:
# |
|
) |
| |
Read one or more input read-out registers.
- Parameters
-
slave_id | Modbus Slave ID |
start_register_no | First register number to read |
n_registers | Number of registers to read |
dtype | Configures format of return value, see below |
- Returns
- Tuple of register values interpreted as 16-bit unsigned integers if dtype == "uint16" (default)
-
Tuple of register values interpreted as 16-bit signed integers if dtype == "int16"
-
Tuple of register values each in a 16-bit bytes object if dtype == "words"
-
bytes of register values if dtype == "raw"
◆ set_discrete_output_register()
def cheap_modbus_rtu.modbus_rtu_master.ModbusRtuMaster.set_discrete_output_register |
( |
|
self, |
|
|
int |
slave_id, |
|
|
int |
register_no, |
|
|
bool
|
active |
|
) |
| |
Set one discrete (on/off) output register ("coil")
- Parameters
-
slave_id | Modbus Slave ID |
register_no | Register number to set |
active | Set output enabled if active == True, otherwise disable output |
◆ set_holding_register()
def cheap_modbus_rtu.modbus_rtu_master.ModbusRtuMaster.set_holding_register |
( |
|
self, |
|
|
int |
slave_id, |
|
|
int |
register_no = 40001 , |
|
|
int |
value = 0x0000 |
|
) |
| |
Set one (analog or general-purpose) 16-bit value holding register.
- Parameters
-
slave_id | Modbus Slave ID |
register_no | Register number to set |
value | Integer value to be written into 16-bit big-endian |
register. | |
◆ set_holding_registers()
def cheap_modbus_rtu.modbus_rtu_master.ModbusRtuMaster.set_holding_registers |
( |
|
self, |
|
|
int |
slave_id, |
|
|
int |
start_register_no, |
|
|
tuple[int, ...] |
values, |
|
|
bool |
expect_echo_response = False |
|
) |
| |
Set one or more (analog or general-purpose) 16-bit value holding registers.
- Parameters
-
slave_id | Modbus Slave ID |
start_register_no | First register number to read |
values | Tuple of integer values to write into registers |
expect_echo_response | If set to True, expect a device response which is a copy of the original query, which is not standard Modbus behaviour. |
The documentation for this class was generated from the following file:
- src/cheap_modbus_rtu/modbus_rtu_master.py