基于负荷分担式的容错飞行控制系统及故障检测方法

文档序号:6327197阅读:286来源:国知局
专利名称:基于负荷分担式的容错飞行控制系统及故障检测方法
技术领域
本发明涉及一种负荷分担式双机容错技术,具体为一种基于负荷分担式的容错飞行控制系统及故障检测方法。
背景技术
典型无人机飞行控制系统一般由传感器、飞行控制计算机、执行机构组成。三部分都是飞行控制系统的关键,而飞行控制计算机更是飞行控制系统的核心组成部分,因此采用容错技术提高飞行控制计算机的可靠性。容错是指系统对故障的容忍能力,是利用外加的冗余资源,使处于工作状态的系统中一个或多个关键部分发生故障或出错时,通过自动检测与诊断来掩盖故障的影响,并能采取相应措施保证系统维持其规定功能或保持其功能在可接受的范围内。容错计算机的多处理机间工作方式有热备份式、负荷分担式。热备份式系统中的主机和备份机是同步随动关系,它们输入相同的信息,执行相同的程序,比较输出结果,再有输出切换电路决定哪个处理机的结果最为系统最终输出。

发明内容
本发明目的是针对现有技术存在的缺陷提供一种基于负荷分担式的容错飞行控制系统及故障检测方法。本发明为实现上述目的,采用如下技术方案本发明基于负荷分担式的容错飞行控制系统,包括调度管理模块、故障管理模块、 控制律模块、导航制导模块、航线管理模块、遥控遥测模块和数据采集模块,上述每个模块都固定共享内存块,所述内存块由上述多个模块读但只能由上述一个模块写,利用互斥信号量实现任务模块访问内存时独享内存块的使用权,从而实现上述模块间的数据通信。基于负荷分担式的容错飞行控制系统的故障检测方法如下正常工作时,第一飞行控制计算机、第二飞行控制计算机分担完成不同的飞行控制功能模块,若发生故障,剩下的飞行控制计算机完成所有飞行控制功能;社设置5个故障检查点(1)双口 RAM初始化在飞行控制软件未进入多任务调度时,对双口 RAM所有内存单元写入固定值,再读取双口 RAM内存单元的数值,当固定值与双口 RAM内存单元的数值一致,则初始化成功,否则双口 RAM初始化失败重新初始化;(2)看门狗监测点;(3)任务运行频率判断将任务运行频率的判断放在优先级最高的任务中,隔Is 判断一次,当任务运行频率误差在理论任务运行频率士5%以外,则断定实时操作系统调度异常;(4)双口 RAM数据定时更新判断;(5)工作状态判断双处理机间通过CAN总线进行工作状态信息的交互。处理机一方面发送状态信息,并判断是否收到对方的状态信息,以确定对方是否也在工作;另一方面收到对方状态信息后,比较双机的工作状态,若不兼容则进行故障处理。所述的第一、二飞行控制计算机正常运行时通过双口 RAM、CAN总线通信,协同完成飞行控制功能,检测到其中一个计算机故障时,剩余的能完全担负起飞行控制功能。本发明负荷分担式系统中的主机和从机协同完成系统功能,与热备份式双机系统相比,它不需要额外硬件支持,实现简单。


图1是主CPU的工作状态切换图。图2是从CPU的工作状态切换图。图3是双口 RAM初始化工作流程。图4是从CPU开机同步工作流程。图5是主CPU双机配合工作流程。
图6是从CPU双机配合工作流程。图7是主CPU单机工作流程。图8是从CPU单机工作流程。图9是各个任务运行调度示意图。
具体实施例方式现结合附图对本发明作进一步描述分析双CPU的不同运行阶段,将它们的工作状态分为开机同步、双机配合、单机运行、隔离状态,根据故障检测、处理结果,切换CPU的工作状态,主从CPU的状态切换见图1、 图2。本将负荷分担式双机容错技术引入飞行控制软件中,将软件容错分为5个方面设计(1)双口 RAM 初始化双口 RAM初始化是双处理机分别初始化双口 RAM的不同内存块,用于检测双口 RAM 是否正常。因为此时飞行控制计算机还没有正式进入正常飞行控制状态,所以当双口 RAM 初始化失败时,主CPU直接进入隔离状态,而从CPU则单机工作并通知地面监控软件飞行控制计算机已发生故障,如图3所示。(2)开机同步开机同步是进入双机配合工作的一个过渡阶段,并没有开始控制无人机飞行,只用于等待双处理机同时“准备好”并开始配合工作。若是处理机运行在开机同步,就会发出状态信息。若此时收到对方的状态信息,则表明双机全部“准备好”,同时开始正常配合工作。图4表示主CPU开机同步阶段的整个工作流程。在图4中,主CPU发送状态信息至CAN总线,查看是否收到从CPU的主动隔离信息,若没有收到则判断主CPU是否收到从 CPU的状态信息,当检测到没有从CPU状态信息且在等待时间阈值范围内时,回到发送状态信息处重新执行以上操作。如果收到该信息则对双机的工作状态做比较,判断双机同在开机同步阶段时,则同时步入双机配合,否则主CPU进入隔离状态。若收到从CPU的主动隔离信息、没有收到从CPU状态信息且等待超时,主CPU需要进入单机工作阶段独立承担飞行控制任务。但是图4与图5不同的是,若双机工作状态不一致时,从CPU进入单机工作,目的是无人机还没飞行前,将故障信息下传,地面人员能及时采取措施。此外,从CPU还必须判断是否收到主CPU的隔离信息,若收到该信息,说明主CPU检测出从CPU故障或者主CPU在单机工作阶段,这时从CPU进入隔离状态。(3)双机配合双机配合是飞行控制功能,软件容错功能执行的阶段。飞行控制功能由双处理机分担运行,而软件容错功能要求结合故障自检测、互检测,在飞行控制软件上设置四个故障检查点——看门狗、任务频率判断、双口 RAM数据更新判断、工作状态判断。因为看门狗基于硬件实现,当任务使能看门狗并完成第一次喂狗操作后,启动WDT,任务只需周期地喂狗。图5、图6是主从CPU在双机配合工作时各自的故障检测流程。在图5中,主CPU完成喂狗操作、发送状态信息给从CPU后,先后进行任务运行频率是否在理论运行频率士 5% 之内、是否收到从CPU的主动隔离信号、双口 RAM数据是否定时更新、是否收到从CPU状态信息的判断。如果诊断出任务运行频率误差过大、主从CPU工作状态分别为双机配合/单机工作,主CPU进入隔离状态。若双口 RAM数据没有定时更新、没有收到从CPU状态信息且等待超时、主从CPU工作状态分别是双机配合/开机同步,主CPU切换工作状态至单机工作。 当没有从CPU状态信息但在等待时间阈值内或者收到从CPU状态信息且双机工作状态一致时,回到喂狗处重新执行以上操作。(4)单机工作单机工作阶段是飞行控制计算机经过检测发现故障,进行故障处理后,失去冗余处理机,降级到单处理机运行。虽然此时只有一个处理机负责飞行控制任务,但是为了保证双机同时输出舵机控制指令,在该工作状态内必须实施避免矛盾出现的措施。设计主CPU 的优先级高于从CPU,所以定义双口 RAM中OxFFFD内存单元为主CPU工作状态标志位,当单机工作时,设标志位为1,否则为0,并且发送隔离信息给从CPU,经过双口 RAM、CAN总线通知从CPU。单机工作时,主CPU (见图7)执行喂狗操作,发送状态信息,将双口 RAM OxFFFD内存单元置位,发送隔离信息给从CPU。图8描述了从CPU单机工作时,执行喂狗操作,发送状态信息,然后判断双口 RAM的状态,若是为1则说明主CPU此时的工作状态为单机工作,从 CPU进入隔离状态,再检查是否收到主CPU的隔离信息,若收到从CPU同样进入隔离状态,反之从CPU工作状态仍为单机工作。(5)各个任务之间的调度关系飞行控制软件运行时序示例如图9所示。软件任务在Oms处,依据任务优先级的高低逐个完成全部任务。在IOms处,根据任务设置的运行周期,只有调度管理任务、GPS接收任务、遥控任务准备就绪。到了 80ms,软件任务所有又重新全部准备就绪,等待内核调度运行。从图9中可以看到GPS接收任务、遥控任务的前后两次运行时间有些偏差,因为yC/ OS-II能识别的最小精度是系统时钟节拍数。当GPS接收任务在第0 1时钟节拍之前完成一次运行,开始延时,到第3个节拍到来之后,内核就认为GPS接收任务延时时间到,进入就绪状态。
权利要求
1. 一种基于负荷分担式的容错飞行控制系统,其特征在于包括调度管理模块、故障管理模块、控制律模块、导航制导模块、航线管理模块、遥控遥测模块和数据采集模块,上述每个模块都固定共享内存块,所述内存块由上述多个模块读但只能由上述一个模块写,利用互斥信号量实现任务模块访问内存时独享内存块的使用权,从而实现上述模块间的数据通
2.一种基于权力要求1所述基于负荷分担式的容错飞行控制系统的故障检测方法,其特征在于所述方法如下正常工作时,第一飞行控制计算机、第二飞行控制计算机分担完成不同的飞行控制功能模块,若发生故障,剩下的飞行控制计算机完成所有飞行控制功能;社设置5个故障检查占.^ \\\ ·(1)双口RAM初始化在飞行控制软件未进入多任务调度时,对双口 RAM所有内存单元写入固定值,再读取双口 RAM内存单元的数值,当固定值与双口 RAM内存单元的数值一致, 则初始化成功,否则双口 RAM初始化失败重新初始化;(2)看门狗监测点;(3)任务运行频率判断将任务运行频率的判断放在优先级最高的任务中,隔Is判断一次,当任务运行频率误差在理论任务运行频率士5%以外,则断定实时操作系统调度异常;(4)双口RAM数据定时更新判断;(5)工作状态判断双处理机间通过CAN总线进行工作状态信息的交互。处理机一方面发送状态信息,并判断是否收到对方的状态信息,以确定对方是否也在工作;另一方面收到对方状态信息后,比较双机的工作状态,若不兼容则进行故障处理。
3.根据权利要求2所述的基于负荷分担式的容错飞行控制系统的故障检测方法,其特征在于,所述的第一、二飞行控制计算机正常运行时通过双口 RAM、CAN总线通信,协同完成飞行控制功能,检测到其中一个计算机故障时,剩余的能完全担负起飞行控制功能。
全文摘要
本发明公布了一种基于负荷分担式的容错飞行控制系统及故障检测方法,所述系统包括调度管理模块、故障管理模块、控制律模块、导航制导模块、航线管理模块、遥控遥测模块和数据采集模块。所述方法分别设置看门狗、任务运行频率判断、双口RAM数据定时更新判断、处理机工作状态判断等四个检查点的基础上,增加故障处理、系统重构,实现飞行控制计算机的容错功能,达到了提高飞行控制系统可靠性目的。
文档编号G05B23/02GK102402220SQ20111002769
公开日2012年4月4日 申请日期2011年1月21日 优先权日2011年1月21日
发明者傅媛媛, 李春涛, 王毅, 魏林 申请人:南京航空航天大学, 成都飞机工业(集团)有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1