一 IEC61499协议简述
IEC61499协议标准用于分布式工业自动化系统,旨在实现分布式应用程序的可移植性、可重用性和互操作性。IEC61499定义了一种建模语言,该语言允许对整个控制系统进行建模,即使系统由较小的部分(单个PLC)组成,通过功能块(FB,Function Block)的形式完成具体的控制功能。FB被用来封装功能,通过连接各个FB来创建应用程序(类似于Labview的图形化编程方式)。
图1 4Diac图形化编程
二 FB(Function Block)组成和分类
根据图二所示,FB(Function Block)的接口主要分为事件接口和数据接口。其中输入在左侧,输出在右侧,FB的上部分的事件由红线表示,下部分的数据由蓝线表示。事件触发FB的功能,使用数据输入端传入的数据,事件与数据的连接并不兼容,不允许将事件和数据进行连接。
扇出指的是一个FB的输出端可以连接多个FB的输入端。扇入指的是多个FB的输出端可以连接下一个FB的输入端。在IEC61499中FB的数据接口允许扇出但不允许扇入,事件接口即允许扇入也允许扇出。
图二所示,每个事件输入通过直线和小方格与多个数据输入相连,事件输出也与多个数据的输出相连。这种连接定义了当输入、输出事件发生时,哪些数据输入、输出会被刷新。功能块的具体行为取决于ECC,ECC根据输入事件,执行封装好的功能。
图2 FB接口示意图
FB的分类:IEC61499将功能块分为了基本功能块(BFB,Basic Function Block)、复合功能块(CFB,Composite Function Block )和服务功能块(SFB,Service Function Block)。
基本功能块(BFB),可以使用执行状态图ECC定义状态机,ECC根据状态和输入事件决定执行哪种算法。其中FB中的Algorith ms 封装了功能块具体执行的算法。初始状态start,当事件接口接收到EI1事件时,FB跳转到State1状态,并执行AIg1这个算法,执行完成后输出EO1事件。当状态间的转换条件命名为1时,在这种情况下不需要事件,执行控制会自动跳转到下一个状态,例如state2状态完成后,会自动回正到start状态。
图3 BFB基本构成
复合功能模块:由其他FB组成的内部网络
图4 复合功能块基本组成
服务功能块(SFB),也称服务接口功能块SIFB,该模块主要访问硬件特定部分,由于一个应用程序包含了多个FB,这些FB分布式部署在不同的设备上,应用程序需要访问输入或输出,甚至需要访问特定硬件进行通信。为此,需要使用 SFB。这些类型的 FB 不仅能通过传入事件激活,还能通过硬件激活。因此,应答器 FB 可以在每次数据包到达时触发一个事件。
图5 服务功能块
标签:Block,协议,IEC61499,FB,功能块,事件,输入 From: https://www.cnblogs.com/XZJY/p/17591759.html