4532452346
PROFIBUS电缆和PROFIBUS网络连接器。S7200 PLC端口Port0增加一路RS485接头,连接到DCS系统的Modbus总线上。在工业环境下,通讯线应该使用屏蔽双绞线。注意圆圈内的"终端电阻"开关设置。网络终端的插头,其终端电阻开关必须放在"ON"的位置;中间站点的插头其终端电阻开关应放在"OFF"位置。 4、S7200程序改写部分 4.1关键知识点: 4.1.1 RTU模式下,报文中的每个8位字节被转化为两个16进制字符,然后以字节为单位进行传输,并采用CRC(循环冗余校验)方式进行校验。 4.1.2 西门子Modbus 从站协议库包括两条指令:MBUS_INIT 指令和 MBUS_SLAVE 指令。其中MBUS_INIT指令用于启用和初始化或禁止Modbus通讯,MBUS_INIT指令必须执行完并且“Done”位被立即置位。 4.1.3 MBUS_INIT指令应该在每次通讯状态改变时只执行一次。因此,EN输入端应使用边沿检测元素以脉冲触发,或者只在第一个循环周期内执行一次。 4.1.4 MBUS_SLAVE指令用于服务来自Modbus主站的请求,必须在每个循环周期都执行,以便检查和响应Modbus请求。 4.2 Modbus初始化指令 Network13:在第一循环扫描中初始化Modbus从站协议。设置从站地址为5,设置port0为9600,无检验,可以访问所有的I、Q和AI,允许访问100个保持寄存器(200字节),起始地址为VB0。 ◆参数详解: • EN:指令使能位。 • Mode:模式选择,启动/停止 Modbus从站通信。 Mode 参数允许使用以下两个数值:1—启动, 0—停止。 • Address:从站地址,MODBUS从站地址,取值1~247。 • Baud:波特率,可选1200,2400,4800,9600,19200,38400,57600,115200。 • Parity:奇偶校验,0=无校验;1=奇校验;2=偶校验。 • Delay:延时,附加字符间延时,缺省值为0。 • MaxIQ:最大I/Q位,参与通信的最大I/O点数,S7-200的I/O映像区为 128/128,缺省值为128。 • MaxAI:最大AI字数,参与通信的最大AI通道数,可为16或32。 • MaxHold:设定供Modbus地址4xxxx使用的V存储器中的字保持寄存器数目。 • HoldStart:保持寄存器区起始地址,以&VBx指定(间接寻址方式)。 • Done:初始化完成标志,成功初始化后置1。 • Error:初始化错误代码。 4.3 Modbus从站响应指令 Network14:每循环周期内执行Modbus从站协议。 ◆参数详解: •当MBUS_SLAVE指令响应Modbus请求时Done输出接通。如果没有服务的请求,Done输出会断开。 •Error输出包含该指令的执行结果。该输出只有Done接通时才有效。如果Done断开,错误代码不会改变。 4.4 分配该指令库存储区 利用指令库编程前首先应为其分配存储区,否则 Step7-Micro/Win 编 译时会报错。具体方法如下: (1)执行 Step7-Micro/Win 菜单命令“文件”>“库存储区”,打开“库存储区分配”对话框。 (2)在“库存储区分配”对话框中输入库存储区的起始地址,注意避免该地址和程序中已经采用或准备采用的其它地址重合。 (3)点击“建议地址”按钮,系统将自动计算存储区的截止地址。 (4)点击“确定”按钮确认分配,关闭对话框。 4.5 原梯形图程序中添加DCS远程控制命令行 如下为部分截图: 5、此工程中部分S7200地址与Modbus地址对应表 |
Powered by Discuz! X3.4
© 2001-2023 Discuz! Team.