Profibus-DP同步、冻结功能的实现

发布时间:2023-10-06
profibus-dp 同步、冻结功能的实现
1 profibus-dp同步、冻结的概念
????profibus-dp主站通过控制命令输出同步(snyc)和输入冻结(freeze)命令,可以实现某些dp从站同步数据通信。系统所涉及的dp从站必须组态在sync和freeze组中,dp主站利用全局控制报文同时发送sync或freeze控制命令给所有的dp从站。
sync命令同步dp从站的输出,dp从站在sync模式时,输出被冻结,主站发送的数据存在dp从站的本地缓存器中,只有在接收sync控制命令后,所有dp从站将缓存器中的数据传送到输出,这样可以同步若干个dp从站的输出。
使用unsync可以取消同步命令,取消后从站循环更新输出。同步过程如图1-1所示。
图1-1 同步过程
若要冻结若干dp从站上的数据,就要用到freeze命令,当freeze控制命令发送到一组dp从站时,所有的dp从站同时冻结输入点的现有信号,以便由dp主站来读取这些信号。dp从站上的输入数据在接收到另一个freeze命令时更新,如果没有新的freeze命令,输入数据保持当前值不变。
用unfreeze命令可以取消dp从站的freeze模式,循环更新从站输入信号,此时,输入数据可以立即由dp从站更新并被dp主站读取。输入冻结过程如图1-2所示。
图1-2 冻结过程
2硬件组态
本例的系统由ps307电源、cpu 319-3 pn/dp模块、im153模块、仿真模块sm374等组成,以下将展示如何实现profibus-dp的同步冻结功能。
序号
操作
图示
1.
首先进行系统的硬件组态,打开step7 v5.5软件,插入一个s7-300主站,本例中为cpu 319-3 pn/dp模块。
2.
组态dp从站,本例中两个从站的站地址分别设置为4和5,每个从站各有一个仿真模块sm374。此仿真模块在组态时,组态为8点输入8点输出,订货号为6es7 323-1bh00-0aa0的模块。
3.
双击cpu中主站的dp接口,弹出dp主站的属性窗口,记录dp主站的诊断起始地址,编程时使用。
4.
双击profibus(1),弹出dp master system(1)的属性窗口,选择group properties选项卡,选择dp总线中每组的同步冻结功能,每条总线多分为8个组,每组默认使能同步冻结功能。
5.
点击group assigment选项卡,将从站分组。本例中将4号站和5号站分在组1中。如果有更多从站,可以继续分配在组1中,也可以分配到不同的组中,每组的同步冻、结功能可以分别设置,也可在用户程序中分别使能和禁止。
3软件编程
在ob1中调用系统功能sfc11启动同步冻结。当m100.0为1时,执行在mb102字节中定义的模式。程序如图3-1所示。
十六进制下,sfc11的mode参数含义如下:4为取消冻结,8为冻结模式,10为取消同步,20为同步模式。也可以同时设置不矛盾的两种模式,十六进制下,mode参数:14非同步冻结,18冻结非同步,24同步非冻结,28同步冻结。需要注意的是,当主站热启动或者暖启动后,dp从站保持sync和freeze模式。
图3-1 程序编写
将程序下载至plc中,并且在变量表中观察以下变量mb0,mb1,qb0,qb1,ib0,ib1。其中将mb0与mb1修改为b#16#f0,可以看到qb0与qb1的值也随之更改为b#16#f0,但是实际的输出模块上的输出区并没有任何led灯亮,这是因为数据被保存在两个从站本地接口模块的存储器中,并没有发送给模块。
而在从站的仿真模块上的输入区有输入信号,但是监控表中的ib0与ib1的数值仍为?b#16#00,这是因为接口模块一直向主站发送上次输入过程值,并没有更新输入过程数据(本例中主站为cpu 319-3 pn/dp),如图3-2所示。
图3-2 cpu中数据与实际模块状态对比
图3-2 cpu中数据与实际模块状态对比
这时,在程序中使能sfc11,则两个从站立即将输出数据从缓存中发送给输出模块,并且更新输入模块的数据并发送给主站。这样便实现了两个从站的输出同步与输入冻结功能。如图3-3所示。
图3-3 输入冻结与输出同步
上一个:炖鱼籽正宗做法 炖鱼籽的制作步骤
下一个:怎样才能长个子 长个子的方法

工程量清单招投标浅析
废铝边料回收嘉兴科技城联合开展废品回收站专项整治行动
腌制生姜的方法
面皮保存方法 面皮保存方法介绍
防护隔离乳怎么用 防护隔离乳的使用方法
水果
林内壁挂锅炉代码10,不出热水是怎么回事?
填土路基施工要点有哪些?
家常卤凤爪步骤
压力设备CE认证和移动式承压设备CE认证的区别