一种飞行器的冗余控制方法与流程

文档序号:12460624阅读:423来源:国知局
一种飞行器的冗余控制方法与流程

本发明涉及飞行器控制领域,特别涉及一种飞行器的冗余控制方法。



背景技术:

无人机现被广泛用于消费级市场的航拍,以及专业级市场的救灾支援、电力巡检、科学测绘及植保等等应用。目前,大多数无人机系统在各组成子系统之间主要采用传统的串口通信的方式,即以飞控系统为中心,通过串口连接云台系统、电调动力系统(Electronic Speed Control,ESC)等;但串口通信的方式在全系统抗干扰、多冗余、可扩展的可靠安全需求上存在缺陷,具有严重安全隐患。

随着时间的推移,也出现了基于控制器局域网络(Controller Area Network,CAN)总线的无人机系统解决方案,但这类CAN总线的无人机方案基本都是重点考虑无人机的飞控系统与传感器、ESC之间采用CAN总线连接,并没有考虑无人机多飞控系统的冗余需求以及对云台等必不可少的无人机子系统的全包含,即无人机中的云台等系统并不是通过CAN总线连接的。



技术实现要素:

鉴于上述描述,本发明提供了一种飞行器的冗余控制方法,以解决现有CAN总线方案无法实现无人机多飞控系统间的冗余控制的问题。

为达到上述目的,本发明的技术方案是这样实现的:

本发明提供了一种飞行器的冗余控制方法,该飞行器包括两条CAN总线,其中一条CAN总线构成多个飞控处理器的冗余通讯回路,另一条CAN总线构成多个飞控处理器与挂载器件之间的控制通讯回路,所述方法包括:

从飞行器的多个飞控处理器中确定一个主飞控处理器,其他飞控处理器确定为备用飞控处理器,并确定备用飞控处理器的控制优先权;

主飞控处理器通过控制通讯回路对飞行器的挂载器件进行控制,并通过冗余通讯回路与备用飞控处理器进行数据交互,实时判断本身是否发生故障,在发生故障时,通过冗余通讯回路向每个备用飞控处理器广播其控制失效信息,控制优先权级别最高的备用飞控处理器作为新的主飞控处理器继续控制飞行器。

本发明实施例的有益效果是:

1、本发明基于飞行器的两条CAN总线构成的冗余通讯回路和控制通讯回路,通过冗余通讯回路主飞控处理器与各备用飞控处理器进行数据交换,实现各个飞控处理器之间的内部冗余;控制通讯回路完成主飞控处理器和挂载器件之间的控制冗余;通过这两种冗余控制实现了整个飞行控制过程的冗余控制,提高飞行器的安全保障。

2、由于在当前主飞控处理器发生故障时,每个备用飞控处理器都有机会接管飞行器,作为新的主飞控处理器继续控制,因此每个飞控处理器都能够独立对飞行器进行控制,保证了飞行器的全数据冗余,进一步提高了飞行器的安全性。

3、主飞控处理器与挂载器件通过一条CAN总线进行数据通讯,飞控处理器之间通过另一条CAN总线进行数据通讯,有效地提高了数据的通讯效率。

附图说明

图1为本发明实施例提供的飞行器的冗余控制方法流程图;

图2为本发明实施例提供的飞行器的通讯线路框图;

图3为本发明实施例提供的飞行器冗余控制过程示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

目前,飞行器领域中的余度技术,从物理层面讲,主要包括硬件冗余和软件冗余;其中,硬件冗余主要实现方式为核心部件(例如通讯模块,中央控制器模块以及电机控制模块等)的多备份,这些备份以串联或者并联形式介入到系统工作当中,串联形式表示多个备份模块不会同时工作,当前运行的模块出问题时才会切换到下一个模块实现相同功能,并联形式表示所有备份模块都会同时工作,以同样功能形式介入到系统工作当中;而软件冗余主要实现方式为软件模块的管理,管理算法处理的效率直接影响系统查询故障部分的时间以及系统恢复的时间。

本发明的设计构思是:基于飞行器的两条CAN总线构成的冗余通讯回路和控制通讯回路,利用控制通讯回路完成主飞控处理器和挂载器件之间的控制冗余;以及利用冗余通讯回路完成各个飞控处理器之间的内部冗余;通过这两种冗余控制保证整个飞行控制过程的冗余,提高飞行器的安全保障。

实施例一

本实施例提供了一种飞行器的冗余控制方法,该方法适用于具有两条CAN总线的飞行器,其中一条CAN总线构成多个飞控处理器的冗余通讯回路,另一条CAN总线构成多个飞控处理器与挂载器件之间的控制通讯回路。

图1为本发明实施例提供的飞行器的冗余控制方法流程图,为图1所示,该方法包括:

S100,在飞行器的初始化过程中,从飞行器的多个飞控处理器中确定一个主飞控处理器,其他飞控处理器确定为备用飞控处理器,并确定备用飞控处理器的控制优先权。

在飞行器的初始化过程中,可以根据飞行器的上电顺序从飞行器的多个飞控处理器中确定一个主飞控处理器,其他飞控处理器确定为备用飞控处理器;如第一个完成上电的飞控处理器为主飞控处理器,后完成上电的其他飞控处理器为备用飞控处理器。还可以随机从飞行器的多个飞控处理器中确定一个主飞控处理器,其他飞控处理器确定为备用飞控处理器;也可以根据用户指令从飞行器的多个飞控处理器中确定一个主飞控处理器,其他飞控处理器确定为备用飞控处理器。

在确定好主飞控处理器和备用飞控处理器后,可以通过下述任一种方式确定费用飞控处理器的控制优先权:

根据备用飞控处理器的上电顺序确定每个备用飞控处理器的控制优先权;或者,根据用户指令确定每个备用飞控处理器的控制优先权;或者,主飞控处理器为每个备用飞控处理器分配控制优先权。

其中,当主飞控处理器为每个备用飞控处理器的控制优先权时,主飞控处理器可以通过冗余通讯回路获取每个备用飞控处理器反馈的初始化状态信息,该初始化状态信息一般包括飞控处理器的标识ID,各自传感器模组的原始状态信息(如信噪比、误差漂移、错误计数等),根据各备用飞控处理器的传感器模组的原始状态信息为相应的备用飞控处理器分配控制优先权。

需要说明的是,为便于实现,优选地,在根据飞行器的上电顺序确定主飞控处理器和备用飞控处理器时,同时根据该上电顺序确定各备用飞控处理器的控制优先权,使备用飞控处理器对应的控制优先权与其上电次序相同;在根据用户指令确定主飞控处理器和备用飞控处理器时,同时可以根据用户指令指定每个备用飞控处理器的控制优先权。

进一步需要说明的是,本实施例中每个备用飞控处理器的控制优先权有级别之分,即每个备用飞控处理器都有机会作为新的主飞控处理器接管飞行器,但在当前主飞控处理器出现故障时,优选地优先权级别最高的备用飞控处理器作为新的主飞控处理器接管飞行器,当新的主飞控处理器发生故障时,剩余的备用飞控处理器中控制优先权级别最高的备用飞控处理器继续作为新的主飞控处理器继续对飞行器进行冗余控制。

在步骤S100中,飞行器初始化后,主飞控处理器对每个备用飞控处理器进行时间同步控制,保证飞行器的同步数据处理。

S200,主飞控处理器通过控制通讯回路对飞行器的挂载器件进行控制,并通过冗余通讯回路与备用飞控处理器进行数据交互,实时判断本身是否发生故障,在发生故障时,通过冗余通讯回路向每个备用飞控处理器广播其控制失效信息,控制优先权级别最高的备用飞控处理器作为新的主飞控处理器继续控制飞行器,而之前的主飞控处理器丧失在控制通讯回路上发布数据的权限,由新的主飞控处理器通过控制通讯回路控制挂载器件。

本实施例基于飞行器的两条CAN总线构成的冗余通讯回路和控制通讯回路,通过利用控制通讯回路完成主飞控处理器和挂载器件之间的控制冗余;以及利用冗余通讯回路完成各个飞控处理器之间的内部冗余;通过这两种冗余控制保证整个飞行控制过程的冗余,提高飞行器的安全保障。

本实施例中,每个飞控处理器都集成有传感器模组和滤波器,则可以通过下述方式中的任一种判断本身是否发生故障:

方式一,主飞控处理器利用来自其传感器模组的传感器数据计算飞行器当前的飞行状态数据,并利用滤波器对飞行状态数据进行滤波处理,得到飞行状态优化数据,根据飞行状态优化数据判断本身是否发生故障,例如判断本身是否发生传感器故障或滤波发散等故障。

在方式一的故障判断处理过程中,主飞控处理器可以采集集成在主飞控处理器上的传感器模组数据,利用采集到的传感器模组数据计算飞行器当前的飞行状态数据,飞行状态数据可以为俯仰数据、滚转数据、偏航数据、速度数据和位置数据等,利用滤波器,优选为卡尔曼滤波器对飞行器当前的飞行状态数据进行卡尔曼滤波处理,得到接近飞行器真实飞行状态的飞行状态优化数据,将飞行状态优化数据与设定的状态参考值进行比较,判断是否发生传感器故障或滤波发散等故障,状态参考值一般根据经验设定。

方式二:主飞控处理器通过冗余通讯回路获取每个备用飞控处理器反馈的飞行状态优化数据,根据每个备用飞控处理器反馈的飞行状态优化数据判断本身是否发生故障,例如判断本身是否发生传感器故障、滤波发散、或系统进程死锁等故障。

在方式二的故障判断处理过程中,每个飞控处理器(包括主飞控处理器和备用飞控处理器)采集各自的传感器模组数据,并计算飞行器当前的飞行状态数据,飞行状态数据可以为俯仰数据、滚转数据、偏航数据、速度数据和位置数据等,利用滤波器,优选为卡尔曼滤波器对飞行器当前的飞行状态数据进行融合滤波处理,得到接近飞行器真实飞行状态的飞行状态优化数据,每个飞控处理器将各自的飞行状态优化数据发布到冗余通讯回路上,主飞控处理器从冗余通讯回路上获取各个备用飞控处理器的飞行状态优化数据,比较其飞行状态优化数据与备用飞控处理器的飞行状态优化数据,如果差异较大,则判断主飞控处理器发生故障。

其中,方式二的故障判断处理过程可以由主飞控处理器上的裁决模块执行。

方式三:在主飞控处理器通过控制通讯回路对飞行器的挂载器件进行控制时,备用飞控处理器实时通过冗余通讯回路获取主飞控处理器反馈的飞行状态数据,当备用飞控处理器在设定时间间隔内未获取到主飞控处理器反馈的飞行状态数据时,备用飞控处理器判断当前主飞控处理器失效,取消当前主飞控处理器对飞行器的控制权限,实现时,可通过关闭当前主飞控处理器或断开主飞控处理器与控制通讯回路和冗余通讯回路的连接即可,控制优先权级别最高的备用飞控处理器作为新的主飞控处理器继续控制飞行器。

由上,本实施例的主飞控处理器可以通过上述的方式一或方式二判断其本身是否发生故障,或者结合方式一和方式二进行故障判断;而在某些情况下,主飞控处理器可能无法判断本身是否发生故障,即无法向过冗余通讯回路上传信息,此时可以采用方式三的故障判断方法,利用备用飞控处理器判断当前主飞控处理器是否发生故障(或失效)。

在本实施例中,主飞控处理器还可以根据每个备用飞控处理器反馈的飞行状态优化数据判断备用飞控处理器是否发生故障,在某个备用飞控处理器发生故障时,取消该备用飞控处理器的控制优先权,被取消控制优先权的备用飞控处理器没有权限接管飞行器,保证在当前主飞控处理器发生故障时,由可以正常工作的备用飞控处理器掌控飞行器,控制飞行器正常飞行。

为了在当前主飞控处理器发生故障时,保证由控制效果良好的备用飞控处理器接管飞行器,图1所示的方法还包括:

主飞控处理器通过冗余通讯回路获取每个备用飞控处理器反馈的飞行器状态信息、传感器状态信息和滤波器状态信息,并根据每个备用飞控处理器反馈的飞行器状态信息、传感器状态信息和滤波器状态信息为相应的备用飞控处理器重新分配控制优先权。本实施例的冗余控制方法至少具有以下优点:

1、通过控制通讯回路完成主飞控处理器和挂载器件之间的控制冗余,以及通过冗余通讯回路完成各个飞控处理器之间的内部冗余,保证整个飞行控制过程的冗余,提高飞行器的安全保障。

2、通过设置每个飞控处理器具有相同的硬件结构,使每个飞控处理器都能够独立对飞行器进行控制,实现了全数据冗余,进一步提高了飞行器的安全性。

3、主飞控处理器与挂载器件通过一条CAN总线进行数据通讯,飞控处理器之间通过另一条CAN总线进行数据通讯,有效地提高了数据的通讯效率。

实施例二

为了更详细的说明本发明对飞行器的冗余控制过程,本发明通过实施例二进行详细说明。

图2为本发明实施例提供的飞行器的通讯线路框图,如图2所示,该飞行器包括两条CAN总线,其中一条CAN总线构成多个飞控处理器的冗余通讯回路,另一条CAN总线构成多个飞控处理器与挂载器件之间的控制通讯回路。

本实施例中每个飞控处理器的结构相同,在实际应用中,可以利用ARM嵌入式平台的飞行控制芯片(如型号为STM32F756的控制芯片)以及传感器模组共同构成飞控处理器,飞控处理器的数量为两个以上,优选为三个,在实际应用中,可以合理设置飞控处理器的数量,利用多个结构相同的飞控处理器组成飞行器控制系统的核心。传感器模组可以包括三轴地磁罗盘、六轴IMU模块,以通过每个飞控处理器的传感器模组辅助飞行器的冗余控制。

如图2所示,每个飞控处理器还可以包括其他的功能模块,如与地面站通讯的数传2.4Ghz接收模块,作为上传通道接收遥控设备对飞行器的控制信息;或获取全球卫星定位系统信息的GPS模块,基于全球卫星定位系统信息计算飞行器的位置、速度以及航向角等信息;为了与CAN总线进行数据交互,每个飞控处理器还包括一个标准的高速CAN收发器芯片。

每个飞控处理器通过集成上述模块形成了一个具有独立飞行控制、飞行数据采集、姿态位置导航等功能为一体的独立飞控系统。

图3为本实施例提供的飞行器冗余控制过程示意图,如图3所示,该控制过程如下:

S301,启动飞行器。

开机上电启动飞行器,飞行器的电源模块为多个飞控处理器以及相关的挂载器件供电。

S302,初始化飞行器。

多飞控处理器对各自的功能模块,如三轴地磁罗盘、六轴IMU模块、GPS模块等进行初始化,检测各功能模块是否正常工作、时钟频率是否正常、传感器是否正常启动、传感器的噪声是否符合标准等。

S303,各飞控处理器通过冗余通讯回路反馈各自的初始化状态信息。

例如,每个飞控处理器向冗余通讯回路发布本身的标识ID、滤波器状态以及传感器的原始状态信息,如信噪比、误差漂移、错误计数等。

需要说明的是,在步骤S301~S303的任意过程,可以通过相应的方式确定一主飞控处理器,如在步骤S301的开机上电启动飞行器的过程中,可以根据上电顺序从飞行器的多个飞控处理器中确定一个主飞控处理器,其他飞控处理器确定为备用飞控处理器;或在步骤S302的初始化过程中,随机从飞行器的多个飞控处理器中确定一个主飞控处理器,其他飞控处理器确定为备用飞控处理器;或者,根据用户指令从飞行器的多个飞控处理器中确定一个主飞控处理器,其他飞控处理器确定为备用飞控处理器。

S304,进行时间同步,确定各备用飞控处理器的控制优先权。

主飞控处理器对每个备用飞控处理器进行时间同步控制,保证各飞控处理器之间的通讯可以由时间戳进行验证,进而保证各飞控处理器之间的数据处理的时间一致性。

本实施例优选地,由主飞控处理器为每个备用飞控处理器的控制优先权,可以根据各备用飞控处理器的传感器信噪比、GPS水平精度、滤波器收敛因子为备用飞控处理器分配控制优先权。

S305,主飞控处理器进行控制冗余。

主飞控处理器通过控制通讯回路对飞行器的挂载器件进行控制,其中,只有主飞控处理器有权限通过控制通讯回路对挂载器件进行控制,即只有主飞控能够向控制通讯回路发布控制挂载器件的控制命令,备用飞控处理器没有权限向控制通讯回路发布控制命令,但备用飞控处理器可以通过控制通讯回路获取挂载器件反馈的信息。

示例性地,如图2示出挂载器件包括电机驱动板、云台及相机以及黑匣子数据记录仪等器件,以主飞控处理器控制电机驱动板为例进行说明:

主飞控处理器利用来自其传感器模组的传感器数据计算飞行器当前的飞行状态数据,如利用来自其本身的三轴地磁罗盘、六轴IMU模块、GPS模块的传感数据计算飞行器当前的俯仰数据、滚转数据、偏航数据、速度数据和位置数据等,主飞控处理器通过控制通讯回路获取电机驱动板反馈的信息,例如反馈当前电机驱动板的驱动力等,主飞控处理器根据飞行器当前的飞行状态数据、电机驱动板反馈的信息和用户指令生成控制命令,将该控制命令通过控制通讯回路发送给相应的电子调速器,使电子调速器根据该控制命令控制相应的电机驱动板。

在主飞控处理器通过控制通讯回路对飞行器的挂载器件进行控制的过程中,实时判断主飞控处理器是否发生故障(判断方式在此不再赘述,可参见实施例一),在发生故障时,通过冗余通讯回路向每个备用飞控处理器广播其控制失效信息,控制优先权级别最高的备用飞控处理器作为新的主飞控处理器继续控制飞行器。

参考图2,图2中示例性示出了飞控处理器A、B、C、D四个飞控处理器,假设飞控处理器A为当前的主飞控处理器,则飞控处理器B、C、D为备用飞控处理器,假设备用飞控处理器B、C、D的控制优先权从高到低为备用飞控处理器B、备用飞控处理器C和备用飞控处理器D,则当前的主飞控处理器A发生故障并向冗余通讯回路广播其控制失效信息,备用飞控处理器B、C、D分别通过冗余通讯回路接收主飞控处理器A广播的其控制失效信息,由于备用飞控处理器B的控制优先权级别最高,则备用飞控处理器B作为新的主飞控处理器进行控制飞行器,此时,只有新的主飞控处理器B有权限向通过控制通讯回路对挂载器件进行控制。

需要说明的是,由于飞行器的特殊性,在当前的主飞控处理器发生故障时,应立刻由备用飞控处理器接管控制,切换时间应控制在50ms内,保证飞行器飞行的稳定性。

S306,各飞控处理器之间进行内部冗余。

各个飞控处理器的结构相同,都集成有相应的传感器模组、滤波器和其他的功能模块,每个飞控处理器内设置有同步算法,可以通过冗余通讯回路进行多个飞控处理器的同步控制,实现了各飞控处理器之间进行内部冗余。

其中,步骤S305和步骤S306不区分执行先后,一般步骤S305和步骤S306同步进行。

由上,本实施例通过上述步骤S301~S306实现了飞行器的冗余控制,保证整个飞行控制过程的冗余,提高飞行器的安全保障。

为了便于清楚描述本发明实施例的技术方案,在发明的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分,本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定。

以上所述,仅为本发明的具体实施方式,在本发明的上述教导下,本领域技术人员可以在上述实施例的基础上进行其他的改进或变形。本领域技术人员应该明白,上述的具体描述只是更好的解释本发明的目的,本发明的保护范围应以权利要求的保护范围为准。

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