PTP模块通讯实例.docxVIP

  • 46
  • 0
  • 约1.12千字
  • 约 6页
  • 2019-09-27 发布于江苏
  • 举报
Modbus RTU通讯 例 通过ptp模块与PAC3100或PAC3200通讯 组态ptp模块 打开模块属性对通讯信息进行编写。 协议:自由口/Modbus,传输率:19200,奇偶校验:无,数据位8位 结束位2。与许通讯设备端口参数一致。 模式:2线制操作模式。 接线图: 端子12:A- 段子14:A+ 端子15/16:PE/COM 外部通讯参数图: PAC3100/3200 Moudbus功能代码 编写程序。 通讯需要用到2个功能块分别是 Modbus_Comm_Load和Modbus_Master它们分别是通讯组态模块和Modbus主站通讯。 调用并建立背景数据块 程序编写。 在OB30中调用Modbus_Comm_Load REQ:功能块启动位当接收到启动点的上升沿该功能块运行。(该快只在上升沿信号后运行一次,后功能块处于块空闲状态。) PORT:连接ptp模块的硬件标识符。 BAUD:通讯速率 PARITY:奇偶校验,0表示无 MB_DB:连接Modbus_Master DB块 DONE:表示无错误运行 ERROR:有故障 STATUS:故障代码 具体在博图中按F1查询。 在OB1中调用Modbus_Master REQ:启动位接通时该功能块运行。 MB_ADDR:Modbus地址设定为1与通信设备地址相对于。 MODE: 0为读 1为写 DATA_ADDR:读写设备的启始地址。PAC3100/PAC3200为40002开始。每个数据的长度为32位. DATA_LEN:读取地址的长度。图中为10即读取10个32位的数据。 DATA_PTR:储存的位置。这里不要用M位,图中用的DB3背景数据块。 数据类型和引脚写法如上图。 NONE:无错误输出位。 BUSY:命令执行,数据交换中。 ERROR:出现错误。 STATUS:故障代码。 与多个设备进行通讯。 方法1. 更改Modbus_Master引脚中的MB_ADDR位。来实行循环切换。但输出储存的DB3块的数据也要进行循环提出。 方法2.建立多个DB2。 图一 图二 由于都是使用DB2,多个块不能同时接通,不然后面的块不会运行。块于快之间要互锁。(当一个运行其他停止,以此循环。) 图二中的数据储存放在DB4中,该设备地址为二。 故障代码读取: 切换程序:运行循环位移。 位移数据中有一位为1,如0000 0001.没2秒上升沿触发循环一次1就会像左移动一位。图中MB600中的那个位在一个周期内就会接通2秒。来达到其中一个接通其他断开的目的。

文档评论(0)

1亿VIP精品文档

相关文档