发表于:2004-02-03 12:29:00
楼主
现场总线由 IEC于1985年首次提出,随后几个国际组织和国家组织如IEC,ISA SP50,FIP,PROFIBUS等对其协议的标准化方面作了大量研究工作[1,2],到1996年3月,现场总线基金会FF(Fieldbus Foundation)成立,并制定了基金会现场总线标准FF(Foundation Fieldbus)。
1 现场总线的体系结构
现场总线的体系结构是计算机网络体系结构OSI/RM的子集,取其三层:物理层、数据链路链、应用层。但现场总线标准对各层功能及层间接口进行了进一步的定义,形成如下的体系结构模型[3]:
<图1>
1.1 物理层
现场总线的物理层标准规定了物理介质的类型以及用于传输数据的信号协议,具体涉及以下几个方面[3]:
(1) 传输介质支 持屏蔽双绞线、无屏蔽双绞线、屏蔽多对双绞线、多芯屏蔽电缆、光纤、射频电缆等。
(2) 节点供电方式有两种:总线供电和独立供电方式。
(3) 关于信号传输速率,FF定义了两种类型H1、H2,其中 Hl是低速现场总线,主要支持低速设备,传输速率是31.25Kbps;H2是高速现场总线,用于低速现场总线的互联以及连接大型控制设备,速率为l Mbps、2.5Mbps。
(4) 物理层标准支持 MAU冗余,支持可达8个物理链路,以保证系统通信的可靠性。
1.2 数据链路层
数据链路层采用ISA数据链路层协议的子集,分为 MAC子层和数据传送子层。
(1) MAC子层
MAC子层的主要功能是控制对介质访问,现场总线的 MAC方法采用融合了集中式轮询和令牌传递总线之优点为一体的总线仲裁器方法[3],这种方法描述如下:
①设备以总线方式连接到介质上,采取广播通信方式,节点要发送信息必须获得令牌,令牌被称为LAS( Link Active Scheduler)的节点集中管理。
②令牌有两种类型:一种称为“查询令牌”,收到这种令牌的节点立刻向总线发送令牌所要求的数据。另一种令牌称为“传送令牌”,收到“传送令牌”的节点有权在一特定时间内与其它节点通信。
③FF定义了三种设备:基本设备、链路主设备、网桥设备。三种设备在系统中的连接如图2:
<图2>
基本设备:只能响应令牌,不能成为 LAS。现场总线上的所有设备都具有基本设备的功能。
链路主设备:能够成为 LAS,总线上至少有一个链路主设备,但同一时刻成为 LAS的主设备只有一个。LAS的产生方式有两个:
竞标方式:
当系统中所有节点同时加电时,总线上的主设备通过竞标产生一个 LAS,分别上电时,先上电的主站成为 LAS。
组态方式:
离线时通过组态工具人为地设置某个主设备成为 LAS,然后再连接到总线上。
网桥设备:用于两个链路之间的互联。现场总线控制系统的各个链路设计成树型结构,以简化路由选择问题。
(2) 数据传送子层
主要功能是向上层提供数据传送服务,数据链路层支持无连接服务和面向连接服务,有确认服务和无确认服务。
1.3 应用层
应用层分为两个子层:FAS(Fieldbus Access Sublayer)和FMS(Fieldbus Message Specification)。
(1) FAS子层
FAS子层的功能是利用数据链路层提供的服务传送应用数据,用户的数据传送到FAS子层后,加上FAS控制信息后形成FAS PDU,交给数据链路层发送[4]。
(2) FMS子层
FMS子层则对用户提出的服务请求进行编码,形成FMS PDU,然后提交给FAS子层。
FMS向其服务用户提供多种服务,包括连接的建立与释放,现场总线变量的读写,现场控制事件的报告与处理,现场设备应用程序的管理,设备内部各种数据结构的操作等[5]。
1.4 用户层
现场总线的用户层以功能块及其连接的形式提供。现场总线提供了10个标准的功能块和19个扩展算术功能块。
1.5 系统管理
系统管理的主要目的是提供设备之间的互操作性。主要功能有:设置物理设备标签和标识、应用时钟发布、功能块的调度以及访问系统管理信息库等[6]。
1.6 网络管理
网络管理包括通信栈的组态管理、性能管理、错误管理,其主要功能是管理通信栈和物理层的参数和状态[7]。
2 系统设计
系统从总体功能上分成五部分:系统管理、网络管理、用户应用模块、应用层、数据链路层,这些部分建立于嵌入式实时多任务操作系统内核平台之上,如图3所示:
<图3>
网络管理中含有网络管理代理NMA(Network Management Agent)进程,每一层有层管理实体,层管理实体与NMA进行本地交互,系统中的网络管理器通过NMA访问各层的通信栈参数,以进行通信栈参数的设置和网络性能参数的访问。
系统管理中含有系统管理代理SMA(System Management Agent)进程,与系统管理器交互,进行系统参数设置及功能块的调度。
应用层中的FMS子层向用户层以原语的形式提供服务,应用层提供的服务原语有以下几类:
(1)连接的建立与拆除原语
Initiate_request(id, cr, para) 连接建立请求
Initiate_indication(id, cr, Para) 连接建立指示
Initiate_response(id, cr, Para) 连接建立响应
Initiate_confirm(id, cr, para) 连接建立确认
Abort_request(id, cr, para) 拆除连接请求
Abort_indication(id, cr, para) 拆除连接指示
(2)数据传送服务原语
数据传送服务原语有两种,一种是有确认服务,另一种是无确认服务,其服务原语如以下描述(其中响应和确认服务原语仅支持有确认服务):
Service_request(id, cr, para) 服务请求
Service_indication(id, cr, para) 服务指示
Service_response(id, cr, para) 服务响应(仅支持有确认服务)
Service_confirm(id,cr,para) 服务确认(仅支持有确认服务)
其中:id是服务原语的服务用户标识。
cr是进程之间进行会话的连接的标识号。
para是服务原语的参数。
Service是服务原语的标识,不同的服务原语标识不同。
FAS子层用下列原语向FMS子层提供服务:
(1)连接的建立与释放
Associate_request(cr, [address], data) 连接建立请求
Associate_indication(cr, [address], data) 连接建立指示
Associate_response(cr, [address], data) 连接建立响应
Associate_confirm(cr, [address], data) 连接建立确认
ABT_request(cr, [address], data) 拆除连接请求
ABT_indication(cr, [address, data)拆除连接指示
(2) 有确认数据传送
DTC_request(cr, data)
DTC_indication(cr, data)
DTC_response(cr, data)
DTC_confirm(cr, data)
(3) 无确认数据传送
DTU_request(cr, data,remote_ DLSAP, timeliness)
DTU_indication(cr, data,remote_DLSAP, timeliness)
(4) 其他原语
强制数据传送服务原语
FCMP—request(cr)
FCMP—confirm(status)
向 DLL请求数据。
GBM—request(cr)
GBM—confirm(cr, data, timeliness)
其中:data是用户数据。
address是连接的远程端点地址。
remote_DLSAP是远程数据链路层服务访问点地址。
timeliness是所传输的数据的服务质量中的时间要求。
3 过程控制系统结构模型
基于现场总线的工厂过程控制系统(即FCS)是一种全数字全分布式控制系统,仪表和执行器等现场设备本身就是智能控制器,因此,该系统结构如图4:
<图4>
4 结语
现场总线技术一经出现,就得到了过程工业界及仪表界的广泛关注。现场总线控制系统(FCS)将代替CCS、DCS而成为未来过程控制系统的主流。本文的主要工作在于分析了基金会现场总线的体系结