s7-200与计算机modbus通讯案例,S7-200实现Modbus通信范例(绝对精华)

《S7-200实现Modbus通信范例(绝对精华)》由会员分享,可在线阅读,更多相关《S7-200实现Modbus通信范例(绝对精华)(11页珍藏版)》请在人人文库网上搜索。

1、实用标准文档说明:使用下面的例程你可以在 S7-200CPU之间设置一个简单的 Modbus 通讯。这个例子是关于Modbus功能码6的(写从站保持寄存器),也可以作为其他所支持的功能码:1,2, 3, 4, 5, 15 和16的基本参数设置步骤。要求:要使用 Modbus 协议必须先在 STEP 7 Micro/Win上安装指令库 。Modbus 主站协议只支持 STEP 7 Micro/Win V4.0 SP5及其以上版本.。1. 硬件设置2. 参数匹配3. 指令库的存储地址4保持寄存器值得传输1. 硬件设置例程中的Modbus通讯是在两个 S7-200 CPU的0号通讯口间进行的(最好每。

2、个CPU都 有两个通讯口)。在主站侧也可以选择相应库文件 MBUS_CTRL_P1 和MBUS_MSG_P1 通过1号通讯口通信。 通讯口 1与Micro/WIN 建立PG或PC连接,两个CPU的通讯口 0通过PPI电缆进行连接(电缆的针脚连接为2,3,7,8)。文案大全图 012. 参数匹配对于MODBUS 通讯,主站侧需要程序库 MBUS_CTRL 和MBUS_MSG, 从站侧需要程序库 MBUS_INIT and MBUS_SLAVE 。在Micro/WIN中您需要为主站和从站新建一个项目,程序与参数设置见图.02。必须要保证主站与从站的Baud ”和Parity的参数设置要一致,并且程。

3、序块MBUS_MSG中的Slave地址要与程序块MBUS_INIT中的Addr所设置的一致 (见图.02)。Micro/WIN “系统块”中设置的0通讯口的波特率与 MODBUS协议无关(Mode = 1)图.02F面的表格列出了程序块各个参数选项及其意义主站MBUS_CTRLrENModGttPPlJMODBUS珈隹输速率kbps1 200, 2400, 4300, 9600,1 9200, 38400. 57600.115200Parity校验悅择A无粳验1=奇校箍偶枝验Innieout从站的牟世咆应时间msDone”完成”标吉位Error错饯代码1)表011) 参看STEP 7 Micr。

4、o/WIN 帮助:MODBUS 主站执行 MBUS_MSG 时的错误代码MBUS_MSG。MBUS_MSGN使能F rstif富诗求位Slavs區站地吐m渎或罗0W羌1二写Aidf荷写从诂妁数誓地址CL.伍三如基辅出Q0.0. Q15.71001 ,.10120-T 1曙“ Q15.730001 . 30092 -模也垦输入 AIWO . AIW&24uoui . 4jyuy -保持寄存墨2Douit恂貳字第1-卜綁(Owof. 1 nrsfi) wnrris (3xxaDataPh溶诘區起处施址揩针Dore完肃标志位ErroV表021)参看STEP 7 Micro/WIN 帮助:MODBUS。

5、 主站执行 MBUS_MSG 时的错误代码MBUS_MSG。从站MBUS_INIT参數2选變ENMode0=PPE11=MODBUSAddr从站地址aud播输遠車ktap1 200h 2400, 4000, 9800, 1 9200, 30400. 57SOO 11 5200Parity0况校號站奇按验上偶校捡Delay超时时间msMaMlQ可便比的數输入辎出点效(VfaxAl可佞压的模担量输入点数MaxHoid礫将哥荐器字的培式藪量2)HoldStart保持寄存器的起始地址(4C001)DoneError错保件码表032) 最大的地址取决于所用CPU的类型及其最大值。3) 参看STEP 7 。

6、Micro/WIN 帮助:“ MODBUS 从站协议的错误代码”。MBUS_SLAVE表043)参看STEP 7 Micro/WIN 帮助:“ MODBUS 从站协议的错误代码”。3. 库的存储地址项目完成后必须要在 Micro/WIN中定义库的存储地址,当定义完存储区后,要保证在任何情况下不能再被其它程序所使用(主站侧:DataPtr + Count 从站侧:HoldStart +MaxHold)。图.034保持寄存器值的传输将程序下载到相应的 CPU后,可以在状态表中给主站侧的V存储区赋值,然后监视从站的变化。当主站的10.0使能后,VW2中的内容就被发送到从站并写入从站的VW2 。保持寄。

7、存器值的传输见图.04。指针DataPtr 代表了 V区被读的起始地址。参数Count 表明了地址Addr = 4xxxx(保持寄存器)以字为单位被读的个数。主站中被读取的 V存储区被写入地址为Addr = 40002 (RW = 1)的保持寄存器中。保持寄存器是以字为单位工作的,它与从站的V区地址对应。指针HoldStart明确了与保持寄存器起始地址40001相对应的V存储区的初始地址。可以这样计算从站的 V区目标指针:2 * (Addr - 40001) + HoldStart = 2 * (40002 - 40001) + &VB0 = &VB2另外,要保证MaxHold定义的数据区能够。

8、包含主站侧所要写入的数据区MaxHold = Addr - 40001 + Cou nt = 40002 - 40001 + 1 = 2Fig. 04关于 STEP 7 Micro/WIN MOBDUS库的更多信息可以参看S7-200系统手册(EntryID 1109582) 和 STEP 7 Micro/WIN 帮助。如何在 STEP 7 Micro/WIN中找到Modbus RTU协议和USS协议操作库?说明:在 STEP 7 Micro/WIN中,Modbus RTU协议和USS协议操作库位于操作树的“库”为V3.2或更高版本。文件夹中。MODBUS 函数库要求 STEP 7 Micro。

9、/WIN图1:添加函数库这些库是附加函数库,并非组态软件STEP 7 Micro/WIN的组成部分。您如果需要使用Modbus RTU 协议,必须购买“ SIMATIC STEP 7 Micro/WIN ADDON: Fun ctio n Library V1.1 (USS + MODBUS) for STEP 7 Micro/WIN 32” 软件。这个可选附加函数库的订货号是6ES7830-2BC00-0YX0安装顺序:先安装“ STEP 7 Micro/WIN 32 Toolbox V1.0 ” (包括库),然后安装“ STEP 7 Micro/WIN ”。注意:这个函数库包含可以在STEP 7 Micro/WINV3.2中使用的 Modbus RTU协议库和USS协议库。如果您安装了 STEP 7 Micro/WIN V4.0 SP5或者更高版本,那么操作库中就会包含下列函数:Modbus RTU Master V1.2对应端口 0 和端口 1Modbus RTU Slave V1.0对应端口 0USS protocol V2.3对应端口 0 和端口 1。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值