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
MPCIlayer 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
ReadCoilsRequestandReadDiscreteInputsRequest.
-
class
modpypes.pdu.ReadBitsResponseBase(values=None, **kwargs)[source]¶ Base class for messages that are responses to reading bit values. This is inherited by both
ReadCoilsResponseandReadDiscreteInputsResponse.
-
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
ReadMultipleRegistersRequestandReadInputRegistersRequest.
-
class
modpypes.pdu.ReadRegistersResponseBase(values=None, **kwargs)[source]¶ Base class for messages requesting register values. This is inherited by both
ReadMultipleRegistersResponseandReadInputRegistersResponse.
-
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,ReadDiscreteInputsRequestorReadMultipleRegistersRequestdepending on the address prefix; 1, 5, or 6.
-