一种高可靠性深海水下自主航行器控制方法与流程

文档序号:17738316发布日期:2019-05-22 03:27阅读:184来源:国知局
一种高可靠性深海水下自主航行器控制方法与流程

本发明涉及水下自主航行器控制技术领域,具体涉及一种高可靠性深海水下自主航行器控制方法。



背景技术:

水下自主航行器(auv)在水下执行任务时,大部分时间均处于自主作业状态。在自主状态下,水下自主航行器的控制完全交由其控制系统接管。因而,作为核心组部件,水下自主航行器控制系统的可靠性往往决定着整个水下自主航行器作业任务的成败。尤其是在需要执行远程自主航行作业任务时,控制系统的可靠性要求就更加严苛。而对于控制系统的核心——cpu及其外围器件而言,设计水平和制造工艺决定了其可靠性和使用寿命不可能无限提升。为此,在现有单个器件可靠性无法满足控制系统可靠性需求的情况下,就需要通过系统级解决方案来提升控制系统整体可靠性,以满足水下自主航行器对于控制系统可靠性的要求。

当前,高可靠性的水下自主航行器控制系统大多采用双cpu冗余冷备份的方法,即一个cpu正常工作时,备用cpu只监测工作cpu的状态而不同步运行,当检测到工作cpu出现异常时才接管整个系统的控制权。这种方式下由于两个cpu执行程序的不同和对信息掌握的不对称等因素,必然导致控制系统的实时性和控制权切换的连续性无法保证。另外,部分采用双cpu同步运行热备份的方法,也因其控制系统接口种类繁多,没有形成冲突避免机制完善的总线架构等因素,导致无法实现双cpu间的无缝切换。不能实现连续实时控制的双cpu冗余,并没有真正意义上提高水下自主航行器控制系统的整体可靠性。



技术实现要素:

有鉴于此,本发明提供了一种高可靠性深海水下自主航行器控制方法,基于全总线式控制系统架构实现双cpu热备份的高可靠性深海水下自主航行器控制系统,实现了cpu切换时连续实时的控制。

本发明提供的一种高可靠性深海水下自主航行器控制方法,该方法所适用的水下自主航行器控制系统包括主cpu部、备份cpu部、电源模块部及自适应以太网交换机,具体工作过程包括以下步骤:

步骤1.1、所述控制系统上电后,由所述电源模块首先控制默认主cpu部上电,延时一段时间后,待主cpu部完成启动、获得总线控制权并开始执行自主控制程序和总线监听程序后,再控制默认备份cpu部上电;

步骤1.2、备份cpu部上电后启动运行,执行总线监听程序,与主cpu部同步运行自主控制程序,但不向总线发送指令和状态信息;

步骤1.3、待备份cpu部完成启动过程后,主cpu部通过总线控制外部设备上电运行;

步骤1.4、当主cpu部监测到自身异常时主动释放总线控制权,当备份cpu部监测到主cpu部异常时则获取总线控制权。

进一步地,所述步骤1.4中获取总线控制权的过程,包括如下步骤:

步骤2.1、备份cpu部判断总线是否空闲,若总线空闲则表明主cpu部未正常工作,则将本cpu部切换为主cpu部工作模式,执行总线监听程序和自主控制程序,按照控制周期,向总线发送指令或状态帧;若总线未空闲,则表明主cpu部处于主cpu部工作模式,且运行正常,则本cpu部维持备份cpu部工作模式,执行总线监听程序和自主控制程序,但不向总线发送指令和数据;

步骤2.2、等待控制周期,循环执行步骤2.1。

进一步地,所述电源模块部采用18dc-36vdc锂电池组供电,并为cpu部输出经隔离和电压变换后的24vdc电源。

有益效果:

本发明通过采用全总线式控制系统架构实现双cpu热备份,克服了现有双cpu冗余auv控制系统中,工作cpu与备份cpu切换时无法实现连续实时控制的不足,切实提高auv控制系统的整体可靠性。

附图说明

图1为本发明提供的高可靠性深海水下自主航行器控制方法示意图。

图2为本发明提供的高可靠性深海水下自主航行器控制方法流程图。

图3为本发明提供的高可靠性深海水下自主航行器控制方法中cpu执行的软件流程图。

具体实施方式

下面结合附图并举实施例,对本发明进行详细描述。

本发明的基本思想是:基于全总线式控制系统架构实现双cpu热备份的高可靠性深海水下自主航行器控制系统,通过控制软硬件配置一致的两个cpu先后上电,先上电的为主cpu部,后上电的为备份cpu部,主cpu部和备份cpu部各自同步执行自主控制程序,并对总线进行监听,以判断另一个cpu是否处于正常的工作状态,若工作异常则获取总线控制权,从而确保深海水下自主航行器运行的高可靠性。

本发明提供的一种高可靠性深海水下自主航行器控制方法,该方法所适用的水下自主航行器控制系统包括主cpu部、备份cpu部、电源模块部及自适应以太网交换机,如图1所示。

主cpu部,包括cpu核心处理器、主cpu部板载内存、cpu时钟、看门狗电路、can总线接口、以太网总线接口和实时操作系统及应用程序。

备份cpu部,包括cpu核心处理器、备份cpu部板载内存、cpu时钟、看门狗电路、can总线接口、以太网总线接口和实时操作系统及应用程序。

其中,主cpu部和备份cpu部硬件及软件部分完全相同,以保证整个auv控制系统运行过程中主cpu与备份cpu自主控制软件执行结果在控制周期内的同步。同时,由于二者硬件及软件具备互换性,则在整个控制系统实际运行过程中二者可以互为备份,即当任一cpu出现异常时另一cpu即可实时无缝接管总线。主cpu部和备份cpu部之间通过can总线和以太网接口相连。

电源模块包括上电时序控制模块和dc-dc隔离电源模块,其中上电时序控制模块用于控制两个cpu分时上电。

高可靠性深海水下自主航行器控制系统中的主cpu与备份cpu通过can总线接口或以太网接口与所有外部设备连接,实现与所有外部设备的通信及对外部设备的控制,对通信实时性要求高且数据量相对较小的外部设备大多采用can总线接口,通信数据量大或实时性要求不高的外部设备大多采用以太网接口。所有can总线接口外部设备通过高可靠性深海auv控制系统对外的can总线接口与主cpu部和备份cpu部互联。所有以太网接口外部设备通过高可靠性深海auv控制系统的以太网交换机部对外接口实现与主cpu部和备份cpu部的以太网口互联,且在以太网交换机内部将所有与外设相连的以太网口输入和输出端口均镜像到与主cpu部相连的p1口和与备份cpu部相连的p2口,以确保系统运行时主cpu部和备份cpu部的处理器能够从以太网口监测到相同的外部设备数据。

本发明提供的一种高可靠性深海水下自主航行器控制方法,工作流程如图2所示,包括如下步骤:

步骤1.1、高可靠性深海auv控制系统上电后,由电源模块部中的主cpu、备份cpu上电时序控制模块首先给默认的主cpu部上电,然后延时一段时间,待主cpu部启动完成、获得总线控制权并开始执行自主控制程序和同步执行总线监听程序后,给默认备份cpu部上电。其中,可选用满足18dc-36vdc锂电池组为电源模块部供电,电源模块给cpu部输出经隔离和电压变换之后的24vdc电源。

步骤1.2、备份cpu部上电后启动运行,监听总线数据,与主cpu部同步运行自主控制程序,但不向总线发送指令和状态信息。

步骤1.3、待备份cpu部完成启动过程后,主cpu部通过总线控制外部设备上电,整个auv控制系统开始正常运行,直至系统断电。

步骤1.4、系统运行过程中,主cpu和备份cpu在执行自主控制程序时同步循环执行总线监听程序,当监测到自身异常时主动释放总线控制权,监测到另一cpu异常时获取总线控制权,即主cpu部和备份cpu部的处理器可实现冗余热备份状态下的实时自动无缝切换。

为保证主、备份cpu部软件能够同步运行,二者所执行的软件流程完全一致,如图3所示,包括如下步骤:

步骤2.1、cpu上电后,执行启动加载程序,并持续监听总线1个控制周期时间。

步骤2.2、判断总线是否空闲,若总线空闲则表明另一cpu未正常工作,此时将本cpu切换为主cpu工作模式,开始监听总线数据,执行自主控制程序,并获取总线控制权,按照控制周期,根据控制程序执行结果,向总线发送指令或状态帧;若总线未空闲,则表明另一cpu处于主cpu工作模式,且运行正常,此时将本cpu切换为备份cpu工作模式,监听总线数据,执行控制程序,但不向总线发送指令和数据。

步骤2.3、等待控制周期,循环执行步骤2.2。

综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1