Usage¶
To use modpypes in a project:
import modpypes
Protocol Data Units¶
-
class
modpypes.pdu.
BigEndianDoubleInt
[source]¶ This class packs and unpacks a pair of registers as a bit endian 32-bit signed integer.
-
class
modpypes.pdu.
BigEndianString
(registerLength=6)[source]¶ This class packs and unpacks a list of registers as a null terminated string.
-
class
modpypes.pdu.
BigEndianUnsignedDoubleInt
[source]¶ This class packs and unpacks a pair of registers as a bit endian 32-bit unsigned integer.
-
class
modpypes.pdu.
DoubleInt
[source]¶ This class packs and unpacks a pair of registers as a 32-bit signed integer.
-
class
modpypes.pdu.
ExceptionResponse
(function=None, exceptionCode=None, **kwargs)[source]¶ Exception Response
-
class
modpypes.pdu.
MPCI
(*args, **kwargs)[source]¶ This class contains the MODBUS protocol control information which is the 8 octet header at the front of all MODBUS PDUs.
-
class
modpypes.pdu.
MPDU
(*args, **kwargs)[source]¶ This class is a generic MODBUS PDU. It inherits the
MPCI
layer and the more generic PDU data functions.
-
class
modpypes.pdu.
ReadBitsRequestBase
(address, count, **kwargs)[source]¶ Base class for messages requesting bit values. This is inherited by both
ReadCoilsRequest
andReadDiscreteInputsRequest
.
-
class
modpypes.pdu.
ReadBitsResponseBase
(values=None, **kwargs)[source]¶ Base class for messages that are responses to reading bit values. This is inherited by both
ReadCoilsResponse
andReadDiscreteInputsResponse
.
-
class
modpypes.pdu.
ReadDiscreteInputsRequest
(address=None, count=None, **kwargs)[source]¶ Read Discrete Inputs Request
-
class
modpypes.pdu.
ReadDiscreteInputsResponse
(values=None, **kwargs)[source]¶ Read Discrete Inputs Response
-
class
modpypes.pdu.
ReadInputRegistersRequest
(address=None, count=None, **kwargs)[source]¶ Read Input Registers Request
-
class
modpypes.pdu.
ReadInputRegistersResponse
(values=None, **kwargs)[source]¶ Read Input Registers Response
-
class
modpypes.pdu.
ReadMultipleRegistersRequest
(address=None, count=None, **kwargs)[source]¶ Read Multiple Registers Request
-
class
modpypes.pdu.
ReadMultipleRegistersResponse
(values=None, **kwargs)[source]¶ Read Multiple Registers Response
-
class
modpypes.pdu.
ReadRegistersRequestBase
(address=None, count=None, **kwargs)[source]¶ Base class for messages requesting register values. This is inherited by both
ReadMultipleRegistersRequest
andReadInputRegistersRequest
.
-
class
modpypes.pdu.
ReadRegistersResponseBase
(values=None, **kwargs)[source]¶ Base class for messages requesting register values. This is inherited by both
ReadMultipleRegistersResponse
andReadInputRegistersResponse
.
-
class
modpypes.pdu.
ReadWriteMultipleRegistersRequest
(raddress=None, rcount=None, waddress=None, wcount=None, registers=None, **kwargs)[source]¶ Read Write Multiple Registers Request
-
class
modpypes.pdu.
ReadWriteMultipleRegistersResponse
(registers=None, **kwargs)[source]¶ Read Write Multiple Registers Response
-
class
modpypes.pdu.
ReadWriteValueBase
(address=None, value=None, **kwargs)[source]¶ Base class for messages reading and writing values. This class is inherted by
WriteSingleCoilRequest
,WriteSingleCoilResponse
,WriteSingleRegisterRequest
, andWriteSingleRegisterResponse
.
-
class
modpypes.pdu.
String
(registerLength=6)[source]¶ This class packs and unpacks a list of registers as a null terminated string.
-
class
modpypes.pdu.
UnsignedDoubleInt
[source]¶ This class packs and unpacks a pair of registers as a 32-bit unsigned integer.
-
class
modpypes.pdu.
UnsignedInt
[source]¶ This class packs and unpacks a register as a 16-bit unsigned integer.
-
class
modpypes.pdu.
WriteMultipleCoilsRequest
(address=None, count=None, coils=None, **kwargs)[source]¶ Write Multiple Coils Request
-
class
modpypes.pdu.
WriteMultipleCoilsResponse
(address=None, count=None, **kwargs)[source]¶ Write Multiple Coils Response
-
class
modpypes.pdu.
WriteMultipleRegistersRequest
(address=None, count=None, registers=None, **kwargs)[source]¶ Write Multiple Registers Request
-
class
modpypes.pdu.
WriteMultipleRegistersResponse
(address=None, count=None, **kwargs)[source]¶ Write Multiple Registers Response
-
class
modpypes.pdu.
WriteSingleCoilRequest
(address=None, value=None, **kwargs)[source]¶ Write Single Coil Request
-
class
modpypes.pdu.
WriteSingleCoilResponse
(address=None, value=None, **kwargs)[source]¶ Write Single Coil Response
Application¶
-
class
modpypes.app.
ModbusClient
(**kwargs)[source]¶ This class simplifies building MODBUS client applications. All of the PDUs are MODBUS.
Client¶
This executable module is a console application for generating read and write MODBUS PDUs.
-
class
modpypes.client.
ConsoleClient
[source]¶ Console Client
-
do_read
(args)[source]¶ read <addr> <unitID> <register> [ <count> ]
Parameters: - addr – IP address of the MODBUS/TCP device or gateway
- unitID – unit identifier
- register – register in 5-digit or 6-digit format
- count – number of registers to read, defaults to one
This command generates a
ReadCoilsRequest
,ReadDiscreteInputsRequest
orReadMultipleRegistersRequest
depending on the address prefix; 1, 5, or 6.
-