《现场总线FF在分布式控制系统中的运用.docx》由会员分享,可在线阅读,更多相关《现场总线FF在分布式控制系统中的运用.docx(22页珍藏版)》请在三一办公上搜索。
1、合肥工业大学计算机与信息学院计算机系2008级方向综合设计报告方 向:分布式控制与嵌入式系统课题题目:现场总线FF在分布式控制系统中的应用姓 名:专业班级:学 号:指导教师:一、设计目的和内容:设计目的:了解分布式控制系统和FF总线,并掌握其通信规程;设计内容:掌握和了解分布式控制系统的结构以及组成,现场总线FF在分布 式控制系统中的作用,尝试编写一个符合规约的通信软件。二、背景知识:FF(Fieldbus Foundation)现场总线简介 FF总线系统体系结构FF现场总线基金会是由WORLDFIP NA(北美部分,不包括欧洲)和ISP Foundation于1994年6月联合成立的,它是一
2、个国际性的组织,其目标是建立单一的、开放的、可互操作的现场总线国际标准。这个组织给予了IEC现场总线标准起草工作组以强大的支持。这个组织目前有l00多成员单位,包括了全世界主要的过程控制产品及系统的生产公司。1997年4月这个组织在中国成立了中国仪协现场总线专业委员会(CFC)。致力于这项技术在中国的推广应用。FF成立的时间比较晚,在推出自己的产品和把这项技术完整地应用到工程上相对于Profibus和WORLDFIP要晚。但是正由于FF是1992年9月成立的,是以Fisher Rosemount公司为核心的ISP(可互操作系统协议)与WORLDFIP NA两大组织合并而成的,因此这个组织具有相
3、当实力:目前FF在IEC现场总线标准的制订过程中起着举足轻重的作用。FF(HSE) 现场总线即为IEC定义的H2总线,它由Fieldbus Foundation(FF)组织负责开发,并于1998年决定全面采用已广泛应用于IT产业的高速以太网(highspeed ethernet HSE)标准。该总线使用框架式以太网(Shelf Ethernet)技术,传输速率从100Mbps到1Gbps或更高。HSE完全支持IEC 61158现场总线的各项功能,诸如功能块和装置描述语言等,并允许基于以太网的装置通过一种连接装置与H1装置相连接。连接到一个连接装置上的H1装置无须主系统的干予就可以进行对等层通信
4、。连接到一个连接装置上的H1装置同样无须主系统的干预也可以与另一个连接装置上的H1装置直接进行通信。 HSE总线成功地采用CSMA/CD链路控制协议和TCP/IP传输协议,并使用了高速以太网IEEE802.3标准的最新技术。 现场总线基金会自1984年成立以来,经过十年的发展,已经形成了一个开放的、全数字化的工业通信系统,并在上世纪末开始进入中国市场,推动了中国的工业自动化技术进步,并开始了大型全区域系统集成的应用。一个开放式的总线协议,很重要的一点就是有多少设备支持这个协议。否则,这个协议的开放性就没有意义了。从2001年起,支持FF总线的产品越来越多。据统计,2002年通过FF基金会认证注
5、册的产品增长了24%,累计达到137种。其中,压力仪表32种,温度仪表12种,流量仪表19种,物位仪表12种,分析仪表16种,阀门类仪表30种,高速以太网联接设备5种,调节仪表1中,其他仪表10种。有10个公司的控制系统能够联接FF总线的H1网段。它们是ABB,Emerson(Delta-V);Honeywell(Plantscape,Experion PKS);Invensys,Smar(System302);Yamatake(Industrial DEO),Yokogawa(Centum,Stardom)。在具体工程方面,截至2002年6月,全球已经安装的FF总线仪表达到205,000台,
6、已经安装的系统达到4000个。石油、天然气、石油化工、化工领域的项目数占FF总线全部项目数的44.9%,说明石化领域目前是FF总线最主要的应用领域。 但实际上,现场总线系统已经逐步在大型和超大型规模系统中得到采用。据报道,目前已经在使用的FF总线系统的最大规模已经达到12000台仪表。我国广西惠州新建的大型石化装置约采用数千台FF总线仪表,自动化的总投资达到5000万美元。上海SECCO新建的石化装置也全部采用FF总线技术和仪表,合同金额达到3000万美元。 现在在我国已经安装的FF总线系统已经超过100个,当然大部分是中小系统。最近报道厦门湘鲁石化有限公司,一期投资为6亿美元。生产纯净对苯二
7、酸,是世界上第一个在本安区域使用FF总线的PTA工厂。该系统在本安区域,有161个网段,挂接742台FF总线设备。另外自备锅炉还有38个网段,挂接173台FF总线设备。平均一个网段挂接4台设备。采用的系统是Emerson公司的产品随着现场总线技术的发展,制造商和用户将越来越加深对它的理解。据预测,到2005年,我国的几个采用FF总线系统的大型石化工程都将投产。届时,我国安装的FF仪表将达到数万台。人们对如何进行FF总线系统的设计、调试、组态、维护以及现场总线为用户带来的实际利益都会更加明朗。因此,随时掌握各种总线的发展状况是十分重要的。1.1 FF总线H1总线电路和信号形式H1网段下,总线电路
8、如图2所示。现场设备静态供电电流1015mA,信号恒流方式l520mApp,多个设备可以并联,接收信号在0.751Vpp电压范围,最小不低于150mVpp,信号负载的作用是将1520mApp电流方波信号转化为0.751Vpp的电压信号。所以,匹配阻抗器既不能多,也不能少,否则信号电压将不正常,特别是长线传输的时候,如果终端阻抗不匹配,经常会产生反射而使波形失真。电缆的特征阻抗是100欧姆,长线要安装在两端。1.2 物理层FFH1、HSE是高可靠性要求的热工过程控制的首选,在当前工业现场应用极其广泛,它们的传输距离可根据实际情况而定,不同的传输介质和传输介质质量的好坏对信号的传输距离有很大的影响
9、,就拿FFH1低速总线来说,如果采用#18AWG屏蔽双绞线的传输介质,传输距离可达1900米,但若采用#22AWG屏蔽双绞线,传输距离则只有1200米,且此传输距离包含主干与分支的和,分支最长不能超过120米。另外,传输介质的质量对传输距离也有影响,但据有关部门考证,目前,国内很多厂家生产的电缆在要求不是很严格的情况下是能够满足FF总线的现场需要的。所以,在我们设计FF总线网络时,要根据FF总线特性、技术参数来选择适当的传输介质,这样就能起到事半功倍的效果。FF总线技术参数表如表1所示。1.3 链路层FF总线的链路层是总线上信息正确传递的重要保障,每条总线上有且只有一台现行链路活动调度器(LA
10、S),在FF总线网络上任何一个智能总线仪表都可以作为该条线路的LAS,LAS中有总线上所有的设备清单,它负责管理总线,管理其它设备是否占用总线。LAS将“时间重要”的实时过程数据与后台MM1及组态下装数据分别处理即周期受调度和非周期不受调度通信。1.4 应用层FF现场总线应用层遵循开放式系统互联模式OSI的基本架构,FF现场总线的应用层服务由FMS(Fieldbus Message Specification)来定义该层定义了用户进行通信所需要的通信服务、信息格式、行为状态等。在应用层中定义了网络可视对象(Network Visible Objects)、虚拟现场设备(Virtual Fiel
11、d Device,简称VFD)、虚拟通信关系(Virtual Communication Relationship,简称VCR)几个概念。在FF现场总线规范中现场设备之间进行信息传输所使用的预组态的信道称为虚拟通信关系相当于计算机网络中的虚电路。在现场总线网络系统中,设备中的不同的应用进程进行通信时通过使用不同的VCR可以进行互不干扰的通信。FMS在VCR的端点向应用进程提供服务,FMS提供的服务分为有确认的服务和无确认服务,其中有确认的服务用于操作和控制应用对象,如读,写变量的值、访问对象字典OD等。使用Client/Server VCR;无确认的服务用于发布数据或通报事件,发布数据使用Pu
12、blisher/Subscriber VCR;通报事件使用Report Distributton VCR。1.5 用户层基金会现场总线以ISO/OSI开放系统互连模型为基础,取其物理层、数据链路层、应用层为FF通信模型的相应层次,并在应用层上增加了用户层,用户层主要针对自动化测控应用的需要,定义了信息存取的统一规则,采用设备描述语言规定了通用的功能块集,FF总线利用这些嵌入到系统内部的功能块实现工业控制上的各种控制功能。FF公布十个基本功能块:摸拟输入AI;摸拟输出AO;控制选择CS;P,PD控制PD;手动ML;开关输入DI;开关输出DO;偏置增益BG;PID,PI,I控制PID;比率RA。F
13、F公布十九个先进功能块:复杂摸出;复杂开出;脉冲输入;输入选择;运算;积算;分离器;算术运算;信号特征;装置控制;摸拟报警;死区;定时;超前滞后补偿;摸拟接口;步进PID;SP发生器;开关报警;开关接口。用以上功能块可以构筑几乎所有基本的控制策略,功能相强大。1.6 协议数据的构成与层次图3表明了现场总线协议数据的内容和模型中每层应该附加的信息。他也从一个角度反映了现场总线保温信息的形成过程如某个用户要将数据通过现场总线发往其他设备,首先在用户层形成用户数据,并把它们送往总线报文规范层处理,每帧最多可发送251个8位字节的用户数据信息;用户数据信息在FAS,FMS,DLL各层分别加上各层的协议
14、控制信息,在数据链路层还加上帧校验信息后,送往物理层将数据打包,即加上帧前、帧后定界码,也就是开头码、帧结束码,并在开头码之前再加上用于时钟同步的前导码(或称之为同步码)。该图还表明了各层所附的协议信息的字节数。信息帧形成之后,还要通过物理层转换为符合规范的物理信号,在网络系统的管理控制下,发送到现场总线网段上。图3 现场总线协议数据的生成2 FF现场总线的拓扑结构基金会现场总线一般会采用以下几种网络拓扑结构,为清楚并简单起见,图中省略了电源和终端器。在实际应用往往会是几种方式的组合,下面详细论述每种拓扑结构的特性。2.1 点对点拓扑结构这类拓扑结构是只有由两台设备的段组成,段可以完全在现场(
15、一台从设备和一台主设备独立运行,如变送器和阀此外不再带其它设备),或者也可以由一台现场设备(变送器)连接到一个主系统(作为控制或监视),如图4所示点对点总线联接。图4 简单点到点拓扑结构简单的点对点(主机和每个总线的一个设备)不会常用,因为它每段只有一个测量或者控制设备,如同在传统控制420mA时那样,同每个具有多个设备的总线段相比没有优点。2.2 带支线拓扑结构这类拓扑结构方式,现场总线设备通过一段支线的电缆联接到总线段上。支线的长度可以从lm到l20m,长度小于1m的支线看作是一个接头,如图5所示,带支线总线联接。图5 带支线总线拓扑结构2.3 菊花链拓扑结构这种联接方式,在一个段中现场总
16、线电缆从一台设备走到另一台设备,在每个现场设备的端子上互连。使用这种拓扑安装应该使用联接器或一种接线方式,使得一台设备的接线断了不会影响整个段的工作,如图6所示菊花链联接。图6 菊花链拓扑结构2.4 树形拓扑结构树形拓扑结构就是在一台现场总线段上的设备都是以独立的双绞线联接到公共的端子盒、端子、仪表板或I/O卡。这种布局可以用于通向主机电缆的一个端上,实际上同一段上的设备是相互分开的,但是一般是在同一个接线盒的区域内。如图7所示,树形联接。使用这种布局方式,必须考虑到支线电缆的最大长度。图7 树形拓扑结构三、系统方案和实现 VCR由包含FMS,FAS,DLL及物理层的通信栈共同维护,是应用进程
17、之间的通信通道。在FAS子层中,提供了主要的报文传送服务,而在FMS的Contex模块中,则包含了有关VCR的总的约定,共提供了三条联络关系管理服务:Initiate,Abort及Reject,可用来建立一条新的VCR连接或释放一条已存在的VCR连接,亦可拒绝不合理的建立VCR连接请求。1.VCR在报文规范子层的约定 VCR包含有静态VCR信息和动态VCR信息这两类属性,这其中定义了一些在VCR状态机建立过程中用于条件判断的参数,它们的正确理解是状态机正确实现的关键:(1)静态VCR信息是事先配置好的,相应参数存放在NMlB中。1.QMax FMSPDU SendingMax FMSPDU R
18、eceiving:用于限制相应VCR上收发FMSPDU的长度。2.Max Outstanding Service Sending(MaxSCC)和Max Outstanding ServiceReeeiving(MaxRCC):这两个参数定义了ClientServer和Peer to Peer VCR上可以并发运行的状态机的数目,对应于可以同时运行的线程的个数。3.FMs Features Supported:对应于建立连接状态机中的条件判断FMSFeatures Supported test。该属性参数规定了某个VCR上面允许收发的服务类型,每项服务对应一个bit位,1表示可用,0表示不可用
19、。(2)动态VCR信息是动态创建的,相应参数可以在VCR初始建立过程中协商决定。1.OActualMaxSCC对应于上面的MaxScc;ActualMaxRCC对应于上面的MaxRCC。2.对应于实际上每个VCR上已经运行的发送机、接收机数目(相当于运行的线程数、,用OSCC和OSCR计数表示。每多一个“已经请求而尚无收到应答的确认服务”,对应的OSCC或OSCR加1。3.FMS State,即VCR的4种状态:SI:Connection NotEstablished,连接未建立;s2:Connection Established Calling,本地用户欲建立联接;S3:Connection
20、 Established Callcd,远程用户欲建立联接;S4:Connection Established,连接已建立。在每个状态下,不被支持的原语由断开连接原语Abort拒绝。2. VCR的初始化VCR的初始化部分也可理解为VCR的组态过程,即每个设备中包含的各个VCR的初始状态,也就是上面所提的静态属性和动态属性的初始状态。一般可将设备中包含的多个VCR以结构体数组的形式维护起来,每个结构体分别包含了静态属性和动态属性。如上面所提,Max FMSPDU Sending,Max FMSPDUReceiving等静态参数为通信双方在系统组成时即协商好,而动态属性如ActualMaxSCC等
21、,则要初始化为零,在VCR运行过程中此值会随着服务的不同而产生相应的变化,由FMS来维护。重要的一点是VCR的动态属性FMS State要初始化为VCR未建立Connection Not Established,这样才能应用VCR状态机中建立连接部分的处理,将VCR带入到数据传输状态。3.处理对象Transaction Object前面提到,动态VCR信息参数OSCC和OSCR代表“已经请求而尚无收到应答的确认服务”的个数,而这里所说的“已经请求而尚无收到应答的确认服务”就是通过处理对象Transaction Object来处理的。这个处理对象与相应的确认服务原语一一对应,每收到一个确认服务请
22、求(指示),就创建一个这样的对象,记录下服务的名称、对象本身的InvokelD和选用的VCR通道的静态VCR ID等参数。在收到相应服务的确认(响应)后,该处理对象就被删除。这里的lnvokelD是用来唯一标识这个处理对象在当前VCR中的序号的。因为在同一VCR同时可能有多个确认服务原语等待确认,因此就可能同时存在多个处理对象,必须把这些对象进行有效的管理,而实现的方法就是设置InvokelD。4. VCR的兼容性检测这个检测包括两部分:FMS的Context测试和FMS用户的测试12】。在FMS的实现部分只需考虑前一个。FMS Context测试是被请求建立连接方的FMS在接收到请求建立连接
23、协议数据单元InitiateReqPDU后进行的,主要分为两个方诬的测试:MAX FMS PDU测试和FMS Features Supported钡4试。MAX FMS PDU测试包含以下内容:本地FMS能够发送的最大FMS PDU长度要小于等于远程FMS能够接收的最大FMS PDU长度;本地FMS能够接收的最大FMS PDU长度要大于等于远程FMS能够发送的最大FMS PDU长度。FMS Feamrcs Supported测试包含以下内容:本地作为客户方Client时,所能发送的服务请求原语要与远程服务器方Server的服务指示原语相兼容;本地作为服务器方Server时,所能发送的服务指示原
24、语要与远程的客户方Client服务请求原语相兼容。5.VCR建立与数据传输流程前面提到,FF中共有三种类型的VCR,其中以客户服务器型VCR的建立最为复杂,需要进行协议数据单元的交换。下面就以客户服务器型VCR为例,给出通过VCR状态机函数建立起VCR通道的流程图(图43的(1)一(4)分别描述了从请求建立连接方发出请求到最后收到连接建立好的确认的过程): (1)请求方发出建立连接请求的处理 (2)接收方收到建屯连接指示的处理 (3)接收方作出响应后的处理 4)发送方收到连接建立好的确认处理 图1 客户服务器型VCR的建立VCR建立好之后,就可以进行数据的传输了。下面以确认性数据传输为例,给出
25、通过VCR通信通道进行数据传输的流程图(图44的(1)一(4)分别描述了从请求服务方发出请求到最后收到服务确认的过程): (1)请求方发确认性服务请求的处理 (2)接收方收到确认性服务指示的处理 (3)接收方用户作出响应后的处理 (4)发送方收到连接建立好的确认处理 图2 确认性服务的传输过程436VCR与AR映射分析如前所述,VCR是应用进程之间的通信通道,由包含FMS、FAS、DLL的通信栈共同维护。在FMS子层的Context模块中,包含了有关VCR的总的约定,如静态属性和动态属性等。这些动态属性等的维护就由FMS子层来维护,例如在VCR建立过程当中的状态改交等。而在FAS子层中,将这个
26、虚拟通信通道称为应用关系AR。也就是说,VCR在FAS子层维护的部分称为AR。FAS提供的主要也就是三种不同类型AR的报文传送服务。同VCR建立过程中的状态转换类似,在FAS中的建立连接的AREP端点也会发生状态的转变。并且,唯一标识VCR通道的VCRID号码与唯标识AR的AREPID号码具有一一对应的关系f19l。结合FAS予层,VCR建立过程中各层的状态转换如图所示: 、 图3 VCR建立过程中的状态转换在一个完整的VCR建立过程中,先是根据上层用户提供的VCRID,由FMS子层进行相应的处理,VCR的状态也会发生相应的转换;然后根据这个VCRID,FMS会提供对应的AREPID,从而调用
27、FAS服务来进行进一步的处理:FAS则会按照前一章所述的方式进行相应的处理。四、设计结果测试案例与结果一致性测试系统包含三种测试模式:FMS,SM,NM。也就是说,FAS与DLL没有专门针对它们的测试,只要在测试上层功能的同时,便说明FAS与DLL通过了测试。NM测试方案仅仅包含了FMS,而SM测试方案包含了SM和FMS。因此,应用层的一致性测试主要为FMS的一致性测试。FMS测试的目的是测试所有的FMS服务,包括各种变量的值的情况。(I)FMS测试描述在测试新设备之前,首先必须针对每一个测试的类型准备好PICSPIXT文件。PICSPIXT文件包含了宏观的信息,以及测试所需要的一些特征信息。
28、他们的创建的格式得依照需要测试的类型来确定。在测试之前,还需要进行环境变量的一系列配置。测试类型、测试目的、测试动作;测试设备的设置;从测试列表或任务中选择需要测试的小项:测试执行的次数;输出模式:曰志模式;在测试完成之后,需要进行以下工作:将测试用的设备特征描述文件备份到另外的文件夹;将设备从测试系统中删除。FMS钡|试组的目标是采用所有的FMS服务来执行IUT(Implementation UnderTest),包括其中所有的变量,IUT都支挣。通常获得任意两个设备和使它们的所有服务用其所有的变量来测试的方法是不可能的。这个测试系统可以如我们所期望的那样很容易的用一种特定的变量发送服务。这
29、样仅仅一个设备能以某种方式适应FF FMS的一致性测试:这个要求是标准的并且通过一个上位测试装置代理UTA来实现。通过使用UTA,IUT能被很容易的测试并且处于一个可控制的方式下;lUT的一个标准的目标性评估是可能的,并且通过大量覆盖服务以及他们的变量来使IUT以正确的方式工作。(2)FMS测试案例FMS测试案例被写来使每个测试案例既可以用在客户端也可以服务器的致性测试。对于每个测试案例中的下位测试装置和上位测试装置在测试案例中都有角色的整体描述,那么就没有必要将客户端和服务器的一致性测试分离。在测试案例中指定使用的变量值必须精确地与一个特定的值相匹。测试案例包括如下两个部分:头:c语句的结构
30、体块;测试方案主体:一些支持并定义了测试案例执行的块。在选择了FMS测试模式后,紧接着就要进行FMS服务的测试了。对于每一条FMs服务,都有多个测试案例进行选择。只有所有的测试案例都通过,才说明这条FMs服务通过测试。每个测试案例通过后,界面上会显示结果Passed。测试案例的选择界面如下图所示: 测试案例的选择 测试案例的选择是基于测试案例的要求和在PICSPIXIT文档中描述的IUT的能力,如果TIJT不符合钡l试案例的要求, NOTAPPLICABLE(不可应用)判定将加入到铡试结果,测试案例将不运行;反之,则可以运行。如果IUT能够同时执行两个任务,那么两个任务都可运行,同时测试系统执
31、行对应的任务。如果测试案例未通过,则根据实际原因会在界面上显示Failed或NOT APPLICABLE等结果,界面的左半部分会有具体的数据通信过程和测试主体的运行情况的详细记录。通过对这些记录进行分析,可以推断协议实现不合理的地方,从而进行修改,直至测试案例通过为止。如果一条的服务的所有测试案例都已通过单独测试,还需要选择迸彳亍调度测试,即一条服务的所有测试案例在一个测试主体中进行。如果这个调度测试也显示通过,才说明这条FMS服务己完全通过标准的一致性测试。(3)FMS测试结果使用专用的一致性测试软件,采用上面的测试方法,对FMS服务进行一一测试。目前,已开发的FMS服务已全部通过一致性测试
32、。这也说明应用层协议的功能已成功实现。部分测试结果如下图所示: FMS测试案例结果五、设计总结和体会通过本次学习现场基金会总线和分布式控制系统,并在老师的带领下自行开发和设计了基于FF总线的通信软件, 结合硬件的角度对软件有了更加深刻的认识。作为工业现场设备级的通信控制,FF是相对更成熟、更完善、更实用的技术。因此,基于基金会现场总线通信协议的研究和开发,具有很深的现实意义,也具有较好的实用价值。目前发展现场总线技术已成为工业自动化领域广为关注的焦点课题。而在众多的现场总线当中,基金会现场总线FF则显示了巨大的优点与潜力。本次实训的不足之处在于对通信软件的细节功能把握不足,比如未能很好的饿解决冲突问题以及多点访问问题。希望能在以后的学习工作中能更关注这方面的问题。