毕业论文(设计)基于FSM 的IEC608705104 的设计与实现19091.doc

上传人:文库蛋蛋多 文档编号:3030674 上传时间:2023-03-09 格式:DOC 页数:8 大小:172.50KB
返回 下载 相关 举报
毕业论文(设计)基于FSM 的IEC608705104 的设计与实现19091.doc_第1页
第1页 / 共8页
毕业论文(设计)基于FSM 的IEC608705104 的设计与实现19091.doc_第2页
第2页 / 共8页
毕业论文(设计)基于FSM 的IEC608705104 的设计与实现19091.doc_第3页
第3页 / 共8页
毕业论文(设计)基于FSM 的IEC608705104 的设计与实现19091.doc_第4页
第4页 / 共8页
毕业论文(设计)基于FSM 的IEC608705104 的设计与实现19091.doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《毕业论文(设计)基于FSM 的IEC608705104 的设计与实现19091.doc》由会员分享,可在线阅读,更多相关《毕业论文(设计)基于FSM 的IEC608705104 的设计与实现19091.doc(8页珍藏版)》请在三一办公上搜索。

1、基于FSM的IEC60870-5-104的设计与实现刘明坤1 傅钦翠2(华东交通大学 交通信息及控制研究所 江西 南昌 330013)摘要:随着IEC60870-5-104规约标准的制定,为了便于该规约的在实际中的应用,编写较好的应用软件,引入了有限状态机FSM (Finite State Machine)进行设计,并且基于面向对象技术提出了一种高度结构化的有限状态机的实现框架。对该框架的引入,实现了灵活的复用机制,提高了系统的健壮性和可维护性。对此类通信软件的开发,提供了便捷通用的开发模式,且在实际运行中效果良好。关键词: IEC60870-5-104 有限状态机(FSM) 面向对象 远动规

2、约 Design and implement of IEC60870-5-104 based on FSM Liu Mingkun,Fu Qincui (East China Jiaotong University, Nanchang 330013, China)Abstract: As the international standard protocol IEC 60870-5-104 has been established, for the convenience of its practice and writing to high-quality application softw

3、are, FSM(Finite State Machine) introduced in the design and an object-oriented and modularized FSM Implementation Framework is presented.Based on FSM theory, it realizes the flexible reuse and improves the system robustness and maintainability .for communication software emplodering,it provides a co

4、nvenient and universal design pattern and runs well.Key words: IEC60870-5-104; finite state machine; object-oriented; communication protocol随着电力系统网络化的发展,很多调度主站和变电站RTU的通信已逐步采用以太网进行传输,为此,IEC TC-57技术委员会第3工作组(WG03)于1998年8月制定了IEC 60870-5-104标准1,我国也制定了相应的配套标准DL/T 634. 5104-2002。简称104规约。网络化传输是今后远动通信的必然趋势,但

5、在实际编程实现104规约的过程中,面对传输规则的复杂性,事件转化的多样性,在程序设计方面却没有统一规范的开发模式,一个系统往往要经过反复修改,浪费大量时间。本文通过引入有限状态机FSM (Finite State Machine)理论进行设计,提出了一种有限状态机的实现框架,运用此框架成功实现了基与104规约远动通信软件的开发,为以后此类软件的开发提供了便捷通用的开发模式。1有限状态机理论简介有限状态机用于对系统的动态行为建模,一般用状态图(state-chart)来可视化表示,是对反应式系统建模的强大工具。近20年来,FSM和状态图的形式化机制得到了很多扩展研究,有效地支持了各种复杂行为的建

6、模,并应用于UM L等面向对象建模方法中去。FSM经扩展提供了很多高级特征,如组合状态、状态的进入动作和退出动作、转换动作、转换监护条件等。文中定义的有限状态机由状态、事件、转换和活动组成。每个状态有1个状态进入动作(entry-action)和1个状态退出动作(exit-action),每个转换有1个源状态和目标状态并且与1个事件相关联。当在源状态时,该事件发生且触发转换的监护条件为真,则顺序执行下列动作:源状态的退出动作;转换动作;目标状态的进入动作。 FSM可以形式化表示为1个五元组: M=(Q,T,qo)式中:Q为有限状态集; 为有穷的事件输入集;T为非空的转换集合; 为映射函数;qo

7、为初始状态,qoQ 。 T中的每个元素又可以表示为1个五元组,T=(Source-State, Target-State, Input-Event, Constrain,Action),其中Source-State和Target -State分别表示 T的初始状态和目标状态,Input-Event表示来自于的输入事件或为空,Constraint表示监护条件及输入事件参数等约束,Action表示转换执行的动作。 在进行有限状态机设计时,有4个步骤: a.正确理解问题。将状态机的行为规范用语言文字描述,用词准确,不能产生二义性。 b.有限状态机的抽象描述,即合适地抽象出系统的状态和事件,一旦理解清

8、楚问题,就要对该问题进行抽象,表小方法有多种,如状态图、算法状态机,以及用状态转移表描述等。通常采用的是状态图。 c.状态最小化。在b中可能会产生很多状态,因为有些其他功能等价的路径已覆盖它们的输入/输出,状态机上的有些路径和状态实际上可以不要。d.状态机的实现。其任务就是将已经得出的最简状态图通过编程实现。2.IEC60870-5-104协议的主要特点104协议是101协议在网络层的应用,除了继承了101的很多共性外,也有自己的特点:1)主站(调度端)和RTU之间使用lEC104协议进行通信时采用网络传输层的可靠传输协议TCP;主站(客户)端为TCP客户端,RTU(从站)为TCP服务器端,即

9、主站主动进行TCP连接,而RTU被动响应TCP连接;双方都使用固定的TCP端口号2404。服务器端和客户端都需要知道对方的1P地址,作为连接判断的依据。2)104中与连接有关的4个超时时间(t0, t1, t2, t3)。to: TCP连接建立的超时时间; t1: RTU(服务器)端启动U格式测试过程后等待U格式测试应答的超时时间,若超过此时间还未收到主站(客户)端的U格式测试应答,就主动关闭TCP连接; t2: RTU(服务器)端以突发的传送原因向主站(客户端)发送了变化信息或以激活结束的传送原因向主站(客户)端发送了总召唤/电度召唤信息结束后,等待主站(客户)端发送S格式的超时时间,若超过

10、此时间还未收到,就主动关闭T C P连接;t3: RTU(服务器)端和主站(客户)端之间没有实际的数据交换时,任何一端启动U格式测试过程的最大间隔时间。3)主动上送。由于lEC104协议采用平衡传输方式,当主站(客户)端没有进行数据召唤,而RT U(服务器)端中有变化数据时,RT U要主动上送变化数据。4)I格式和S格式报文控制字节中发送序号和接收序号的规律。本端每发送1次I格式报文,其发送序号加1;本端发送U格式或S格式报文,本端发送序号保持不变。正常情况下,对端上次报文中的发送序号加1为本端本次报文中的接收序号。对端上次报文中的接收序号小于本端的发送序号。3 系统设计与实现本文采用面向对象

11、设计方法,引入有限状态机,设计开发了调度端的通信软件模块,实现了104规约。3.1分层设计如图1所示,根据104规约标准,联系实际的通信要求,在设计整个通信系统时,采取面向对象分析方法,将系统划分为三层,分别是网络层(最底层),传输控制层(中间层),应用层(上层)。每层的模块都为上层的模块提供服务。一个模块可调用底层的模块,但不能调用高层模块。每层提供一类独特服务,并为上层提供一个接口集作为操作3。其中,网络层主要功能是建立主站与从站的通信连接通道,传输的是数据流,主要用了Socket网络编程技术。传输控制层的主要任务是实现通信协议的传输规则,在104规约中为实现报文传输的启停控制、传输连接的

12、监视、保护报文不至丢失以及重复传送,确保ASDU的可靠传输,主要运用了状态机原理进行状态的控制。应用层负责远动应用功能,远动应用的功能除了数据采集、远程控制等功能外还有一些管理功能,如接收用户命令、周期命令、下发的顺序以及RTU主动上送事件的处理等,主要应用了多线程技术。应用层传输控制层网络层图1 通信软件分层模型Fig.1 Modle of communication software 3.2有限状态机的描述使用状态机可以描述一个对象在生命期内响应事件所经历的状态序列,帮助分析对象的行为。如图2采用UM L语言对传输控制层对象的行为进行了图形化描述。在传输控制层对象的生命周期里共有九个状态。

13、每个状态之间有条件的进行转换。事件是一次激励的产生,激励能够触发一个状态转换,它可以包括: a.调用,表示对一个操作的调用,在此是由应用层对象调用传输控制层对象引起的; b.时间事件,表示一段时间推移的事件,用after()表达式表示; c.信号,表示由一个对象异步地发送、并由另一个对象接收的一个已命名的对象 监护条件由一个方括号括起来的布尔表达式表示,如果表达式取值为真,则激活转换,如果为假,则不激活转换。动作是一个可以执行的原子计算,可以包括操作调用、另一对象的创建或撤消或者向一个对象的信号发送。在此为发送帧。 传输控制层对象的行为由状态图非常清楚地表达出来,根据状态图很容易编程实现。图2

14、.主站(调度端)的状态图Fig.2 State-chart for control center3.3 状态机的实现方法FSM经扩展提供了很多高级特征,如组合状态、状态的进入动作和退出动作、转换动作、转换监护条件等,这些高级特征虽然便于复杂行为的建模,但是它们的实现往往存在复用性差、维护困难等问题。近年来,随着FSM的扩展研究及其在复杂反应式系统的广泛应用,FSM传统实现方法存在的问题日益突出,因此必须基于面向对象技术的研究提出一种更清晰的FSM结构框架,建立与状态图更直接的映射机制。通过FSM的形式化描述和对传统FSM实现方法的缺陷分析,提出了一种面向对象的高度结构化的FSM实现框架,不仅实

15、现了灵活的复用机制,而且.提高了系统的健壮性与可维护性。文中给出了FSM的实现框架。 图3所示是FSM的实现框架的类图。图3 FSM实现框架类图Fig.3 class diagram for FSM imp1mention 如图3所示,该框架将各个动作(包括进入动作、退出动作和与状态转换相关的动作等)封装在各独立的类中,动作类都实现同一个FSMAction接口,该接口只有一个方法excuteAction (),执行与动作有关的操作。其他FSM元素(状态、转换、事件等元素)起协调作用,确保以正确的顺序激发动作。转换(FSM Transition)类执行与状态转换联系在一起的动作。FSMState

16、类执行进入和退出动作。该实现方法应用命令模式(Command Pattern)5对应于命令模式术语,所有Action类皆为命令(Command),上下文(FSMContext类、状态(FSMState)类、FSMTransition类执行Action,为触发者(Invoker)。FSMContext触发初始化动作,FSM State触发进入和退出动作。FSMTransition触发与转换有关的动作。同时,FSMContext还是接收者,因为它存储那些由Action 在执行时更新的数据。以下分别描述采用java语言实现的各类功能。 a. FSMContext这个类的对象维护当前状态,它将处理委派

17、给FSMState的当前实例。 b. FSMState对FSM中的状态建模,每个状态对象都有一个名字,并且提供将事件和转移联系的方法以及分派事件到转移的机制。 c. FSMTransition:这个类的对象只有一个executeTransition()方法,在与该转移相联系的事件发生时调用。 d. FSMAction:它是一个抽象接口类,FSM中的所有行为类都是它的子类。 相对于传统的FSM实现方法,文中提出的FSM实现框架具有3个特点。 a.利用面向对象方法清晰地表达了状态、转换、事件、动作等FSM中的主要元素及它们之间的关系在FSM的设计与实现之间建立了直接的映射机制。 b.将结构与行为分

18、离,并通过对象组合技术代替类继承而提高了软件的复用性和维护性。 c.实现状态机功能的动作类从抽象类(FSMAction)派生,不用包含别的动作类的信息,因此可以在一个甚至多个状态机中复用。4结语本文围绕调度端通信软件的设计分析,应用有限状态机理论,抽象出传输控制层对象有限状态机模型并用状态图进行描述,并且基于面向对象技术提出一种高度结构化的FSM实现框架。FSM模型的建立非常清楚地表达了传输控制层对象的行为,同时FSM实现框架的引入,不仅实现了灵活的复用机制,而且提高了系统的健壮性与可维护性。参考文献:1谭文恕,张秀莲,叶世勋,等.DL/T634-1997 远动设备及系统基本远动任务配套标准

19、北京: S 中国电力出版社, 1998.2 牛春霞,宋玮. IEC60870-5-104远动网络通信协议的应用与实施. 河北电力技术,20063 GOMAAH.G.J UML 设计并发、分布式、实时应用M . 吕庆中,李烨,罗方斌,译.北京:北京航空航天大学出版社,2001.4孙军平,盛万兴,王孙安. 远动信息网络化传输. 电网技术,20025GAMMA E,HELM R,JOHNSON R,et al. Design patterns-elements of reusable object oriented software M.Addison Wesley,1995作者简介:待添加的隐藏文

20、字内容2刘明坤(1981-),男,硕士生,江西吉安人,主要从事电力系统通信协议的研究。E-mail:lmk1573傅钦翠(1975-),女,硕士,江西南昌人,讲师,主要从事电力系统及其自动化方面的教学与研究工作。E-mail:fuqcwEditors note: Judson Jones is a meteorologist, journalist and photographer. He has freelanced with CNN for four years, covering severe weather from tornadoes to typhoons. Follow him

21、on Twitter: jnjonesjr (CNN) - I will always wonder what it was like to huddle around a shortwave radio and through the crackling static from space hear the faint beeps of the worlds first satellite - Sputnik. I also missed watching Neil Armstrong step foot on the moon and the first space shuttle tak

22、e off for the stars. Those events were way before my time.As a kid, I was fascinated with what goes on in the sky, and when NASA pulled the plug on the shuttle program I was heartbroken. Yet the privatized space race has renewed my childhood dreams to reach for the stars.As a meteorologist, Ive stil

23、l seen many important weather and space events, but right now, if you were sitting next to me, youd hear my foot tapping rapidly under my desk. Im anxious for the next one: a space capsule hanging from a crane in the New Mexico desert.Its like the set for a George Lucas movie floating to the edge of

24、 space.You and I will have the chance to watch a man take a leap into an unimaginable free fall from the edge of space - live.The (lack of) air up there Watch man jump from 96,000 feet Tuesday, I sat at work glued to the live stream of the Red Bull Stratos Mission. I watched the balloons positioned

25、at different altitudes in the sky to test the winds, knowing that if they would just line up in a vertical straight line we would be go for launch.I feel this mission was created for me because I am also a journalist and a photographer, but above all I live for taking a leap of faith - the feeling o

26、f pushing the envelope into uncharted territory.The guy who is going to do this, Felix Baumgartner, must have that same feeling, at a level I will never reach. However, it did not stop me from feeling his pain when a gust of swirling wind kicked up and twisted the partially filled balloon that would

27、 take him to the upper end of our atmosphere. As soon as the 40-acre balloon, with skin no thicker than a dry cleaning bag, scraped the ground I knew it was over.How claustrophobia almost grounded supersonic skydiverWith each twist, you could see the wrinkles of disappointment on the face of the cur

28、rent record holder and capcom (capsule communications), Col. Joe Kittinger. He hung his head low in mission control as he told Baumgartner the disappointing news: Mission aborted.The supersonic descent could happen as early as Sunday.The weather plays an important role in this mission. Starting at t

29、he ground, conditions have to be very calm - winds less than 2 mph, with no precipitation or humidity and limited cloud cover. The balloon, with capsule attached, will move through the lower level of the atmosphere (the troposphere) where our day-to-day weather lives. It will climb higher than the t

30、ip of Mount Everest (5.5 miles/8.85 kilometers), drifting even higher than the cruising altitude of commercial airliners (5.6 miles/9.17 kilometers) and into the stratosphere. As he crosses the boundary layer (called the tropopause), he can expect a lot of turbulence.The balloon will slowly drift to

31、 the edge of space at 120,000 feet (22.7 miles/36.53 kilometers). Here, Fearless Felix will unclip. He will roll back the door.Then, I would assume, he will slowly step out onto something resembling an Olympic diving platform.Below, the Earth becomes the concrete bottom of a swimming pool that he wa

32、nts to land on, but not too hard. Still, hell be traveling fast, so despite the distance, it will not be like diving into the deep end of a pool. It will be like he is diving into the shallow end.Skydiver preps for the big jumpWhen he jumps, he is expected to reach the speed of sound - 690 mph (1,11

33、0 kph) - in less than 40 seconds. Like hitting the top of the water, he will begin to slow as he approaches the more dense air closer to Earth. But this will not be enough to stop him completely.If he goes too fast or spins out of control, he has a stabilization parachute that can be deployed to slo

34、w him down. His team hopes its not needed. Instead, he plans to deploy his 270-square-foot (25-square-meter) main chute at an altitude of around 5,000 feet (1,524 meters).In order to deploy this chute successfully, he will have to slow to 172 mph (277 kph). He will have a reserve parachute that will

35、 open automatically if he loses consciousness at mach speeds.Even if everything goes as planned, it wont. Baumgartner still will free fall at a speed that would cause you and me to pass out, and no parachute is guaranteed to work higher than 25,000 feet (7,620 meters).It might not be the moon, but Kittinger free fell from 102,800 feet in 1960 - at the dawn of an infamous space race that captured the hearts of many. Baumgartner will attempt to break that record, a feat that boggles the mind. This is one of those monumental moments I will always remember, because there is no way Id miss this.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 教育教学 > 成人教育


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号