参考文献[1]详细地介绍了本节各种通信方式的组态和编程的方法。
1.FDL通信
FDL是PROFIBUS的第2层——现场总线数据链路层(Fieldbus Data Link)的缩写,用于实现PROFIBUS主站之间的通信。它是安全系数很高的发送/接收双向数据通信服务,可以有效地检测出通信的错误。
PROFIBUS网络中的FDL连接与工业以太网中的ISO、ISO-on-TCP、TCP、UDP连接统称为S5兼容的连接,FC5 AG_SEND和FC6 AG_RECV用于实现S5兼容的通信。
FDL数据传输是双向的,可以在FDL连接上同时发送和接收数据。两个站都具有同样的权限,每个站都可以触发发送和接收过程。FDL支持SDA(有确认的数据发送)和SDN无确认的数据发送)、自由第2层通信、广播通信和多点传送通信。
只有PROFIBUS通信处理器(CP)才支持FDL的数据通信,例如,用于S7-300系列PLC的CP 342-5、CP 343-5,以及用于S7-400系列PLC的CP 443-5。通信处理器可以同时与多个主站建立通信连接,大多数通信处理器的FDL连接个数最多16个。S7连接采用OSI 开放系统互连模型)的第1、2、7层,专门用于西门子PLC之间的通信。因为FDL只使用OSI模型的第1、2层,传输请求由硬件发起,传输速率快,但是传输的数据量较小,仅有240B。
2.直接数据交换
直接数据交换(Direct Data Exchange,DX)又称为交叉通信,主要用于智能从站接收DP从站的数据,和多主站系统的从站发送数据到其他主站。直接数据交换通信不需要编程,其组态方法与主站和智能从站的主从通信类似。
直接数据交换通信采用广播式通信方式,从站作为生产者(Publisher),可以不经过主站将信息直接发送给作为消费者(Subscribers)的从站。这样从站可以直接接收别的从站发送的数据。可以理解为图6-51中的3号从站向它的主站发送数据时,4号智能从站或其他主站“偷听”3号从站发送的部分或全部数据。
图6-51 直接数据交换示意图
3.一组从站的输出同步与输入冻结
(1)同步输出与解除同步
通常情况下,DP主站周期性地将输出数据发送到DP从站的输出模块上。DP主站如果调用SFC11发送SYNC(同步)控制命令,组态的DP从站组中的所有从站将切换到同步模式,DP主站将当前的输出数据发送给从站,并指示相关DP从站冻结各自的输出。DP从站组将主站的输出数据存放在它们的内部缓冲区,将它们送到输出模块,并保持输出状态不变。这样可以同步激活一组DP从站上的输出数据。
每执行一次SYNC控制命令,该组从站将新的输出数据发送到输出模块。只有用SFC11发送控制命令UNSYNC,才能解除DP从站组的SYNC模式,使该组DP从站返回正常的循环数据传送状态,即DP主站周期性发送的数据立即被传送到从站的输出模块。(www.xing528.com)
(2)输入信号的冻结与解除冻结
通常情况下,DP主站按照PROFIBUS-DP的总线周期,周期性地读取DP从站的输入数据,供CPU使用。如果需要得到一组DP从站同一时刻的输入数据,可以通过SFC11将FREEZE(冻结)命令发送到该组DP从站来实现。
当FREEZE命令被发送到一组DP从站时,组内所有的DP从站切换到FREEZE模式,即它们的输入模块上的信号被冻结,并将它们传送到CPU的过程映像输入区,以便DP主站来读取这些信号。接收到下一个FREEZE命令时,DP从站更新和重新冻结它们的输入数据。只有用SFC11发送UNFREEZE命令,才能解除DP从站的FREEZE模式,使DP主站重新开始周期性地接收从站当前的输入状态。
在暖起动和热起动后,DP从站不进入SYNC或FREEZE模式,只有当它们接收到由DP主站发出的第一个SYNC或FREEZE命令之后,才进入SYNC或FREEZE模式。
4.用SFC12激活和禁止DP从站
如果系统中有已经组态,但是并不存在、有故障或当前不需要的DP从站或PROFINET IO设备,CPU仍然会不断地访问它们。如果用SFC12“D_ACT_DP”禁止这些从站或IO设备,CPU将停止访问它们,这样可以缩短总线周期。如果用SFC12禁止了IE/PB Link PN IO以太网与PROFIBUS的链接器),它连接的所有PROFIBUS-DP从站也将停止运行。可以在需要时用SFC12来激活被禁止的DP从站或PROFINET IO设备,还可以查询它们当前处于激活状态还是处于禁止状态。
某些设备有大量的选件可供用户选用,但是机器制造厂商交付的具体的设备仅仅是选定的选件的组合。制造商将这些可能的机器选件组态为DP从站或PROFINET IO设备,以便创建包含所有可能的选件的通用用户程序。通过调用SFC12,用户程序可以激活当前需要的选件,禁止那些当前不需要的选件。
5.PROFIBUS子网的恒定总线周期
与主站机架中的集中式I/O相比,PROFIBUS-DP网络上的分布式I/O没有确定的过程响应时间。
某些生产过程(例如运动控制和闭环控制)要求控制系统具有迅速准确的响应时间。通过PROFIBUS的等时模式,可以实现从分布式I/O的输入响应、CPU的处理和输出到分布式I/O的端子,有一个确定的和相等的时间,时间响应的确定性甚至可能优于集中式I/O。
等时模式整个过程的响应时间是由恒定的DP总线周期和同步的单个时间段构成的。DP主站周期性地发送给各从站一个作为时钟脉冲的全局控制帧(GC),用它来同步接收和发送从站数据。总线循环时间的固定和各段时间的同步保证了过程响应时间的恒定。与非等时模式相比,总线循环时间减少了等待读取数据和发送数据的时间,使响应变得更加迅速。
在每个恒定的总线周期,DP主站首先处理与各从站的循环数据交换,然后处理中断、总线接收、诊断服务等非循环部分,可能还需要处理与PG/OP的通信。DP主站随后将保持一段等待的时间,直到组态的恒定DP总线周期时间到,以便对可能的网络干扰进行补偿,并重新获取可能重发的消息帧。此后,全局控制帧(GC)启动新的DP周期。
通信处理、执行用户程序和读/写分布式I/O是并行(即同时)进行的,这样能提高运行效率,减少所需的总线周期。
循环同步只适用于某些型号的ET 200,不能用于集中式I/O设备。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。