基于有限状态机的IEC-101通信规约链路建立方法技术

技术编号:9408812 阅读:259 留言:0更新日期:2013-12-05 06:58
一种基于有限状态机的IEC-101通信规约链路建立方法,包括步骤S100,设置IEC-101通信规约的链路建立和通信机制的状态机,至少包括请求链路状态、复位远方链路状态、链路空闲状态及链路工作状态;步骤S200,启动状态机,发送请求链路报文,进入请求链路状态;步骤S300,解析请求链路报文,确认无误后状态机转移到复位远方链路状态,并发送复位远方链路报文;步骤S400,收到终端回复报文,解析终端回复报文,确认无误后状态机转移到链路空闲状态;步骤S500,根据工作指令,状态机由链路空闲状态转移到链路工作状态,并在完成该工作状态时返回到链路空闲状态。该方案不但程序代码简洁,而且可维护性有效增强。

【技术实现步骤摘要】
【专利摘要】一种基于有限状态机的IEC-101通信规约链路建立方法,包括步骤S100,设置IEC-101通信规约的链路建立和通信机制的状态机,至少包括请求链路状态、复位远方链路状态、链路空闲状态及链路工作状态;步骤S200,启动状态机,发送请求链路报文,进入请求链路状态;步骤S300,解析请求链路报文,确认无误后状态机转移到复位远方链路状态,并发送复位远方链路报文;步骤S400,收到终端回复报文,解析终端回复报文,确认无误后状态机转移到链路空闲状态;步骤S500,根据工作指令,状态机由链路空闲状态转移到链路工作状态,并在完成该工作状态时返回到链路空闲状态。该方案不但程序代码简洁,而且可维护性有效增强。【专利说明】基于有限状态机的IEC-101通信规约链路建立方法
本专利技术涉及电力通讯领域,尤其涉及一种基于有限状态机的IEC-101通信规约链路建立方法。
技术介绍
随着计算机通信技术的发展和国民经济发展的需要,电网建设日趋现代化、智能化,IEC-101电力通信规约在电力通信中的应用越来越广泛。IEC-101电力通信规约定义了一套链路建立及通信方式,但在当前我国电力通信建设中,各个局方(电力局)在IEC-101规约的基础上根据不同需要制定了自己的电力通信协议,这些通信规约主体基本是一致的,只是在细节上略有不同,因此电力设备厂家在设计实现IEC-101规约时,需要考虑各个局方的实际要求,以提高产品的兼容性,以适应各个局方的通信规约。通常,很多厂家在设计实现IEC-101电力通信规约时,通常采用面向过程的设计方法实现IEC-101的链路建立流程,即以过程为中心的编程思想实现IEC-101的链路建立流程;同时为了适应各个局方的不用规约,在程序中大量使用宏定义或者if-else语句。因此,在对IEC-101电力通信规约设计时,随着要求适应局方数目的增多,程序将会变的非常庞大而且可读性大大降低,对后期代码的维护带来了极大的不便。
技术实现思路
本专利技术旨在解决现有技术中IEC-101电力通信规约在设计时程序庞大、可读性低及不易维护的技术问题,提供一种基于有限状态机的IEC-101通信规约链路建立方法,不但程序代码简洁,而且可维护性有效增强。本专利技术提供一种基于有限状态机的IEC-101通信规约链路建立方法,包括以下步骤:步骤S100,设置IEC-101通信规约的链路建立和通信机制的状态机,至少包括请求链路状态、复位远方链路状态、链路空闲状态及链路工作状态;步骤S200,启动状态机,发送请求链路报文,进入请求链路状态;步骤S300,解析请求链路报文,确认无误后状态机转移到复位远方链路状态,并发送复位远方链路报文;步骤S400,收到终端回复报文,解析终端回复报文,确认无误后状态机转移到链路空闲状态;步骤S500,根据工作指令,状态机由链路空闲状态转移到链路工作状态,并在完成该工作状态时返回到链路空闲状态。优选地,所述链路工作状态至少包括初始化状态、总召状态、对时状态及遥控状态。优选地,在步骤S200中,当状态机处于请求链路状态且数据发送超时时,则控制向终端重新发送请求链路报文。优选地,在步骤S300中,当状态机处于复位远方链路状态且数据发送超时时,则控制终端重新发送复位远方链路报文;当发送次数达到第一内设值时,状态机进入请求链路状态。优选地,在步骤S500中,状态机由链路空闲状态转移到链路工作状态,当该状态数据发送超时时,重复发送上一次发送过的数据,当重发次数达到第二内设值时,则认为链路通信失败,状态机进入请求链路状态。优选地,当状态机发生状态转移时,状态机执行上一状态退出动作、下一状态进入动作及下一状态工作动作。优选地,状态机在链路工作状态下发生链路错误或重启时,状态机转移到请求链路状态,重新建立链路。以上技术方案中,通过将IEC-101通信规约进行设计,按规约的通信机制将将不同局方的规约特点涉及的通信流程的每一步封装成一个个“状态”,形成包含多种“状态”的状态机,只要控制状态机通过选择不同的“状态”进行转移即可实现软件兼容性,而且程序简洁,后期可维护性有效提高,同时可将不同局方的规约特点封装为”状态”,便于开发维护人员的使用,在保证程序的兼容性的同时提高了工作效率。【专利附图】【附图说明】图1是本专利技术一种实施例的基于有限状态机的IEC-101通信规约不同状态之间的转移示意图;图2是本专利技术一种实施例的基于有限状态机的IEC-101通信规约通讯机制示意图。【具体实施方式】为了使本专利技术所解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。如图1所示,本专利技术的实施例提供一种基于有限状态机的IEC-101通信规约链路建立方法,针对IEC-101通信规约中的链路建立流程和通信机制的特点,提出一种基于有限状态机的规约设计实现方法,该方法使用面向对象的设计思想巧妙地将规约通信流程与“状态” 一一对应起来,同时可将不同局方的规约特点封装为“状态”。可根据IEC-101规约的链路建立和通信机制可将其主要分成4个状态:请求链路状态、复位远方链路状态、链路空闲状态、链路工作状态;链路工作状态又可细分为初始化状态、总召状态、对时状态、遥控状态等,同时也可根据实际需要增加相应状态。即根据IEC-101规约的链路建立和通信机制,其状态不不限于请求链路状态、复位远方链路状态、链路空闲状态、链路工作状态;而链路工作状态不限于初始化状态、总召状态、对时状态及遥控状态。请求链路状态,表示此时有建立通信链路的需求,终端之间,或者终端与主站之间需要通信之前,一方发出的需要建立通信链路的请求;复位远方链路状态,表示接收到一方发送的请求链路报文后,另一方需要作出应答,从而建立起通信链路,该过程即为复位远方链路状态;链路空闲状态,表示此时链路建立成功,但没有执行任何操作流程,为链路空闲的意思,算是空闲状态,在这个状态下可接收命令进入各种工作状态,完成各种工作状态后又回到该状态,大多数情况下,都处于该状态;链路工作状态,表示终端之间或者终端与主站之间根据各种指令进行相应的通信操作,比如进行总召状态,进行遥控状态等,该状态表示继进行的实际通讯过程。在上述实施例中,每个状态在一定的条件下可向其他状态转移,发生状态转移时,状态机会执行状态退出动作、状态进入动作及状态工作动作,同时也可根据需要增加响应动作,如根据IEC-101通信规约超时重发机制,当超时发生时,执行该状态的超时动作,将会把数据重发一次,这样就可以通过各个状态转移时的不同动作的执行来实现IEC-101的通信机制。结合图2所示,IEC-101通信规约链路建立的状态转移流程包括以下步骤:步骤S100,设置IEC-101通信规约的链路建立和通信机制的状态机,至少包括请求链路状态、复位远方链路状态、链路空闲状态及链路工作状态;步骤S200,启动状态机,首先为请求链路状态,发送请求链路报文,进入请求链路状态;当收到请求链路报文并确认后则进入复位远方链路状态;步骤S300,解析请求链路报文,确认无误后状态机转移到复位远方链路状态,并发送复位远方链路报文;步骤S400,收到终端回复报文,解本文档来自技高网
...

【技术保护点】
一种基于有限状态机的IEC?101通信规约链路建立方法,其特征在于:包括以下步骤:步骤S100,设置IEC?101通信规约的链路建立和通信机制的状态机,至少包括请求链路状态、复位远方链路状态、链路空闲状态及链路工作状态;步骤S200,启动状态机,发送请求链路报文,进入请求链路状态;步骤S300,解析请求链路报文,确认无误后状态机转移到复位远方链路状态,并发送复位远方链路报文;步骤S400,收到终端回复报文,解析终端回复报文,确认无误后状态机转移到链路空闲状态;步骤S500,根据工作指令,状态机由链路空闲状态转移到链路工作状态,并在完成该工作状态时返回到链路空闲状态。

【技术特征摘要】

【专利技术属性】
技术研发人员:岑银
申请(专利权)人:航天科工深圳集团有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1