一、创建项目并添加PLC
二、PLC参数设置
双击网口修改ip地址和添加新子网。
右键PLC->属性->勾选下面两个选项
三、创建新的数据块,并填写使用到的变量
下图中为服务器IP地址和端口
取消数据库优化,右键->属性
四、软件编写并修改相关参数
一定要记得将id设置为1,不然无法通信
五、效果查看
1、打开Modbus Slave软件,按如下设置
六、参数说明
MB_MODE、MB_DATA_ADDR 和 MB_DATA_LEN 参数说明:
参数 MB_MODE、MB_DATA_ADDR 和 MB_DATA_LEN 的组合定义了 MB_MODE 值为 0、1 和 2 时,当前 Modbus 消息中所用的 Modbus 功能代码:
MB_MODE 中包含有关读写操作的信息。
MB_MODE=0:读取,MB_MODE=1 和 2:写入(注:MB_MODE=2 时,Modbus 功能 15 和 05 或 Modbus 功能 16 和 06 无区别。)
MB_DATA_ADDR 中包含有关待读取/写入的目标信息,以及“MB_CLIENT”指令用于计算远程地址的地址信息。
MB_DATA_LEN 包含要读/写的值的数量。
示例:
MB_MODE=1、MB_DATA_ADDR=1、MB_DATA_LEN=1 构成的组合设定的功能代码是 05。将从远程地址 0 开始写 1 个输出位。
MB_MODE=1、MB_DATA_ADDR=1、MB_DATA_LEN=2 构成的组合设定的功能代码是 15。将从远程地址 0 开始写 2 个输出位。
以下情况适用于 MB_MODE 值 101 到 106 和 115 到 116:
MB_MODE 定义 Modbus 功能代码。
MB_DATA_ADDR 包含远程地址。
MB_DATA_LEN 包含要读/写的值的数量。
示例:
MB_MODE=104, MB_DATA_ADDR=17,834, MB_DATA_LEN=125
MB_MODE=104 定义功能代码 04(读输入字)。
MB_DATA_ADDR=17834 定义远程地址 17834。
MB_DATA_LEN=125 定义待读取 125 个值。
下表列出了“MB_CLIENT”指令中输入参数 MB_MODE、MB_DATA_ADDR 和 MB_DATA_LEN 与相关 Modbus 功能的关系。