Jump to content

pyModbusTCP Information


Recommended Posts

After spending a few hours looking for this information I  figure I might not be the only one wishing more information was out there.

# Simple code to read the first 100 MI

from pyModbusTCP.client import ModbusClient
from pyModbusTCP import utils

def read_registers():
    host_ip = 'x.x.x.x'		# Change to your device IP
    port_number = 502		# Change to your device Port
    c = ModbusClient(
    host=host_ip,
    port=port_number,
    unit_id=1,
    auto_open=True,
    timeout='2'			# Increase timeout if needed
    )

    register = 0x0000		# Change acording to the list below the code block
    data = c.read_holding_registers(register,100)	# change 100 to how ever many registers you wish to read
    print(data)

read_registers()

# Coils
#------------------------
# 0x0000 mb
# 0x3000 xb
# 0x4000 o
# 0x5000 sb
# 0x6000 i
# 0x7000 t
# 0x8000 c

# Registers ( any long or double word uses 2 registers  when pulling data )
#------------------------
# 0x0000 mi
# 0x3000 xi
# 0x9000 si
# 0x5000 xl
# 0x6000 xdw
# 0x7000 ml
# 0xA000 sl
# 0x8000 mdw
# 0xB000 sdw
# 0xC000 timer preset
# 0xD000 timer current
# 0x4000 mf


Additional information on Long and Double words:  The first register is 0 through its bit register (ML is 65,536).  Any number after this is returned to 0 and incrementing the second register by 1.

Example1: 70,000  =      4,464  +  (1 = 65,536 * 1)
Example2: 170,000 =  38,928 +  (2 = 65,536 * 2 = 131,072 + 38,928 = 170,000)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...