Modbus Slave 的使用

文章目录

  • Connetcion 参数配置
  • Slave Definiton 参数配置

Connetcion 参数配置

配置“Connection”参数 – 从站的 Socket
Modbus Slave 的使用_第1张图片

  1. Socket
    一个 IP + 端口号的组合 = 一个 Socket,通常写成:IP地址:端口
    192.168.1.1:8080192.168.1.1:8081是两个 Socket
  2. Connection 配置界面
    Modbus Slave 的使用_第2张图片
    1. 允许来自任意地址的请求:一般勾选。若不勾选需要指定 IP 地址
      勾选后 Modbus 主机(客户端)只要能访问模拟器所在电脑本地 IP 的 Socket ,就能连上模拟器
      (本地 IP 的 Socket = 本地 IP + 配置的从机端口地址)
    2. 忽略站号请求:建议不勾选
      若勾选,则之后本软件窗口中的站号配置将无效,所有窗口都认为站号 = 1
    3. 请求地址的格式:选 IPV4
  3. 从站 Socket 与 软件界面 的关系
    Modbus Slave 的使用_第3张图片
    1. 同一台电脑,模拟不同【端口】下的设备
      –> ip 相同,端口不同 --> 相当于不同 Socket --> 要开启不同软件窗口
    2. 同一台电脑,模拟相同【端口】下,不同【站号】下的设备
      –> ip 相同,端口也相同 --> 相同的 Socket --> 开启一个软件界面接口
    3. 同一台电脑,模拟相同【端口】下,相同【站号】,包含不同功能码(寄存范围)的设备
      –> ip 相同,端口也相同 --> 相同的 Socket --> 开启一个软件界面接口

Slave Definiton 参数配置

对软件界面中的每个窗口,配置“Slave Definiton”
image.png

  1. Slave Definition 配置界面
    Modbus Slave 的使用_第4张图片
    1. 站号
      与 iPlat 点表中的【站号@】对应
    2. 功能码 & 寄存器
      根据 主站 要获取的数据类型进行选择,后面括号 (4x / 3x / 1x / 0x)对应的就是 iPlat 点表地址的最高位(4XXXXX / 3XXXXX / 1XXXXX / 0XXXXX)
    3. 起始地址
      这里的填写范围与下面的“使用 PLC 地址规则”有联动
      不使用 PLC 地址规则 --> 使用 Modbus 协议标准的地址范围(0x0000-0xFFFF),可填 0-65535
      使用 PLC 地址规则 --> 起始地址为1,地址范围(0x0001-0xFFFF),可填 1-65535
      1. iPlat 采用 PLC 地址标准,若要保证这里设置与 iPlat 中的地址配置完全对应,则应使用 PLC 地址规则
      2. 因为 iPlat 的 Modbus 驱动是从点表对应设备的最低地址批量读 / 写连续的地址(一次最多连续读取 240 个地址的数据),因此要保证 iPlat 读取的数据地址在 模拟器 中都有定义,否则批量读取的数据会报错,导致所有数据都上不来
    4. 寄存器数量
      从起始地址开始,有多少个寄存器地址可以被读写
      如:要模拟读取寄存地址 400007-400020 的数据 (标准地址规则),则模拟器起始地址 = 7(标准地址规则)或8(PLC 地址规则),寄存器数量 = 20
      1. 因为 iPlat 的 Modbus 驱动是从最低地址批量读 / 写连续的地址(一次最多连续读取 240 个地址的数据),因此要保证 iPlat 读取的数据地址在 模拟器 中都有定义,否则批量读取的数据会报错,导致所有数据都上不来
    5. 地址标识显示
    6. 使用 PLC 地址规则
      这里的配置与上面的“起始地址”有联动
      不使用 PLC 地址规则 --> 使用 Modbus 协议标准的地址范围(0x0000-0xFFFF),可填 0-65535
      使用 PLC 地址规则 --> 起始地址为1,地址范围(0x0001-0xFFFF),可填 1-65535
      1. iPlat 采用 PLC 地址标准,若要保证这里设置与 iPlat 中的地址配置完全对应,则应使用 PLC 地址规则
    7. 差错仿真:一般情况下不勾选,如有特殊需要可进行设置
  2. 窗口与 Modbus 协议间的关系 – 每个窗口有独立的 Slave Definition
    Modbus Slave 的使用_第5张图片
    1. 不同【站号】
      –> 需要新建不同的窗口,窗口的 Slave Definiton 配置不同【站号】
    2. 相同【站号】、不同【寄存器类型】(如模拟站号 2 设备的 AI / DI 点)
      –> 需要新建不同的窗口,窗口的 Slave Definiton 配置相同【站号】、不同【功能码】
    3. 相同【站号】、相同【寄存器类型】、不连续的地址(如 3 号设备 400003-400007,400009-400020)
      –> 可认为是连续的,使用一个窗口,配置使所有地址都可用(如配置寄存器 = 4x,起始地址 = 3,寄存器个数 = 18)
      –> 可严格按照不连续地址,配置多个窗口
      窗口1:寄存器 = 4x,起始地址 = 3,寄存器个数 = 5
      窗口2:寄存器 = 4x,起始地址 = 9,寄存器个数 = 12

你可能感兴趣的:(基础设施,codesys平台,网络,modbus,工控协议,模拟器)