基金会现场总线系统(Foundation Fieldbus,简称FF)是基于现场总线技术的一种分布式控制系统,其主要优势在于采用了全分布式控制的实现方法。现场总线技术的发展相对较晚,但已经形成了多种现场总线技术并存的局面,其中以基金会现场总线(FF)、LonWorks、Profibus、Hart和CAN等为代表的总线技术在各自的应用领域中展现出独特的技术和市场优势。基金会现场总线(FF)由于其先进的技术特性和强大的会员支持,在众多现场总线技术中具有很高的竞争力。
基金会现场总线系统通过数字智能化现场设备和控制、监控设备的互联,共同提供I/O数据交换、控制、自动处理等多种功能。在这样的系统中,每个现场设备都负责执行一部分功能,这些功能可以包括关键的时间应用,如传感器数据的获取和控制算法的执行。整个现场应用是通过一系列的功能块(Function Blocks,简称FB)来实现的。功能块是封装了一组自动化功能的模块,包含输入参数、内含参数和执行特定算法的逻辑,其目的是产生可用的输出参数。
每个功能块可以通过输入/输出参数与其他功能块进行数据交换,而内含参数则是功能块的私有参数,用于内部处理,不会直接参与功能块之间的连接。功能块通过位号(FBTag)和对象字典(OD)的索引来标识。位号为功能块提供了一个独一无二的符号引用,而对象字典索引用于快速访问特定功能块。功能块的参数通过设备描述(DD)的MemberId和对象字典索引来标识,确保在系统中的唯一性。
功能块定义和DD描述了根据应用领域、设备功能和厂商定义的一组参数。典型的现场总线功能块包括模拟输入(AI)、模拟输出(AO)和PID控制等。功能块应用结构定义了功能块应用的内部组件,并规定了在应用内或多个应用之间组件的接口,设计包括功能块应用的设计和执行、配置和集成功能块应用到现场设备中,以及在系统运行时保证功能块之间的互操作性。
功能块的执行是由事件输入激活的,这些事件可能包括调度、功能块执行的结束或厂商自定义。在基金会现场总线系统中,调度执行是最常见的方式。功能块的调度执行需要符合一系列特性以保证执行的正确性和实时性,包括系统内所有功能块应用有统一的时间标准、测量设备定期采样以确保连续控制的输入参数的正确性、在功能块执行时输入和控制参数保持一致性,以及输出参数的产生和应用之间的时间间隔必须小于控制回路的执行时间。
功能块执行的正确性和实时性要求功能块在三个方面的调整:保证系统内时间同步、确保输出参数产生在其他功能块需要这个参数之前,以及保证功能块调度与总线上数据传输的同步,以确保输出参数在合适的时间进行传输。这三个方面的调整主要通过时钟同步、功能块调度和网络传输调度来实现。在FF系统中,应用时钟同步是通过系统管理的时钟发布来实现的,系统管理内核(SMK)周期性地向现场设备发布应用时钟同步消息,包含应用时钟时间和链路时间,接收设备通过调整其本地应用时间以达到同步的目的。
系统管理内核还管理了功能块的调度,通过对系统管理信息库中的FBStart参数进行配置来实现对功能块运行的调度。FBStart的定义是确保功能块能够在正确的时间执行,避免功能块调度执行时出现错误和实时性问题的关键。这不仅要求系统内的功能块拥有统一的时间基准,还需要确保在功能块执行过程中数据的连续性和一致性,以及在功能块之间数据传输的效率和准确性。