CJ2M+CJ1W-SCU41-V1 模块做Modbus-RTU 从站 实验时间:2011年11月8号 实验人员:汪强 实验设备:CJ2M-CPU33,CJ1W-SCU41-V1,Commix 实验目的:CJ1W-SCU41-V1 做modbus-rtu slave 实验步骤: 1、系统概述,硬件搭建和接线 ①CJ2M-CPU33 加 CJ1W-SCU41-V1,SCU 模块安装在 CPU 右侧,盖上端板,用 XW2Z-200S-CV 连接SCU 模块上的PORT2 和电脑的串口。 ②modbu s-rtu 协议规则如下图: 2、CJ2M单元设置 CPU 先用 USB 和编程软件在线 双击 IO 表和单元设置 先把 PLC 切换到编程模式,然后点击 IO 表中的选项菜单,找到创建,然后点击确定,PLC自己创建 IO 表。双击 CJ1W -SCU41-V1,出现如下图的设置,在显示的参数组中选到 PORT2 SETTINGS。 在显示的参数组中选择PORT2 MODBUS-RTU SLAVE SETTINGS,把从站地址改为1。 这里如果从站地址默认 0,SCU 模块会报错。 3、COMMIX 设置 波特率和数据格式需要与 SCU 模块一致 编程说明: Modbus-RTU 从站的命令帧格式: 功能码如下: 01:读取位状态 02:读取CIO 区多位状态 03/04:读取保持/输入寄存器内容 05/0F:写单个/多个位 06/10:写单个/多个寄存器 08:回路测试 实验现象: 01:读取位状态 读取CIO 0 中0-9 位的状态,共计10 个位。 绿色为命令帧,蓝色为反馈帧 4 个位地址是一个数字 01 01 00 00 00 10 3D C6 03/04:读取保持/输入寄存器内容 读取DM 2000-2005 中的值 01 03 07 D0 00 06 C5 45 读取CIO 中100-105 中的值 0F:写单个/多个位 把 200.00-200.09置 1 10:写单个/多个寄存器 分别往 D100-D108 写入 0-8 RS-485 9-pins Sub-D type connector pin assignment Pin number Abbreviation Signal name I/O 1 SDA Send data- Output 2 SDB Send data+ Output 3 NC Unused -- 4 NC Unused -- 5 NC Unused -- 6 RDA Receive data- Input 7 NC Unused -- 8 RDB Rdceive data+ Input 9 NC Unused -- Hood FG Shield --- NOTE:When the 2-wire connections are used,use either pins 1 and 2,or pins 6 and 8.