通过容错策略对球形机器人的设计方案

描述

自HALME A等于1996年首次研制出球形机器人以来,控制系统一直被视为球形机器人研究领域的关键问题。球形机器人结构的特殊性和控制方法的复杂性使目前的研究内容主要集中在动力学分析与建模和运动控制与规划策略的设计等方面,而关于如何设计可靠的、安全的控制系统以降低系统运行时的故障率的研究却少有涉及。

容错控制系统能够有效地提高系统的可靠性和安全性。赵京等通过构造退化条件数和容错空间影响因子等性能指标来确定使冗余度机器人具有最佳容错操作性能的设计参数。王太勇等将冗余容错控制理论应用于壁面爬行机器人系统中,将平均无故障工作时间延长1倍。而在实时嵌入式系统中,基于时间容错技术设计的容错策略对瞬间故障具有良好的容错性能,而且占用较少的时间和存储资源。FORSATI等综合考虑信息容错和时间容错技术,并应用到电路系统的设计中,从而有效地降低了电路系统的复杂度,并在容许的时延内较大地节省了硬件资源。

因此,本文以图l所示的球形机器人为平台,基于容错策略设计球形机器人的控制系统。图1所示的球形机器人由球壳、框架和重摆组成,依靠两组轴向垂直安装的电动机改变重摆的势能来驱动球壳的运动。该结构具有利用最少的控制输入达到全方位行走的特点。文献分别针对此球形机器人的动力学建模、鲁棒运动控制和路径跟踪策略进行了研究。本文的研究内容同时也是这些研究工作的延续,是实现球形机器人自主运动控制的基础。本文首先提出了球形机器人控制系统的结构设计方法,并在此基础上设计复合型控制系统。然后基于不同的容错技术分别设计了具有高可靠性的冗余双备份电动机伺服控制系统和软件系统。最后通过试验验证控制系统的可行性以及容错策略的有效性,并对结果进行具体分析和讨论。


图1 球形机器人

1 球形机器人控制系统的设计与分析

迄今为止,自主机器人的控制体系主要有3种典型的结构:基于功能分解和分层递阶的控制结构、基于行为控制的反应式控制结构和基于规划和反应的混合式控制结构。分层递阶式体系结构控制结构层次清楚,较好地解决了系统性能和控制精度的问题,但需要对外界环境进行全面的感知和精确的建模。反应式控制结构中系统的各个层次均具有独立的环境感知能力,对环境具有良好的鲁棒性和适应性,但缺少全局性的指导与协调。混合式控制结构将环境感知、决策控制和上层推理等功能模块有机地结合起来,既保留了分层结构的系统性,又继承了反应式结构的灵活性。因此,本文采用基于规划和反应的混合式控制结构设计方法设计球形机器人的控制系统,将信息处理模块与电动机控制结合起来,上层采用有意识规划,底层采用基于行为的电动机控制,构成一个递阶式的控制结构。

1.1 球形机器人控制系统的结构设计方法

球形机器人(图1)控制系统可以称为“复合型控制系统”,是由控制算法和局部控制部件组成的。每个控制算法称为基本控制器,相互之间存在上下等级和相互耦合的关系。部分能够完成特定任务的基本控制器构成了局部复合型控制器,而球形机器人的控制系统正是由这些局部复合型控制器构成的。局部复合型控制器相互之间存在着局部的耦合关系,具有相互通信和信息交互的能力,在任务分配和协作方面具有自主性。为球形机器人自主运动任务设计的8个局部复合型控制器的具体含义和功能如下。

(1)移动机器人监控单元(Mobile robotsupervision unit,MRSU)是整个控制系统中最高级局部控制器,拥有最高级优先权,负责机器人传感器的信息检测、局部控制器的状态协调、远程控制命令的接收和机器人状态信息的反馈等。

(2)电动机监控单元(Motor supervision unit,MSU)是电动机伺服控制子系统中的监督级局部控制器,能够根据具体运动任务直接监管下级局部控制器的运行,并检测电动机的运行状态。

(3)电动机控制单元(Momr control unit,MCU)负责电动机的运动控制,并接收电动机监控单元的监管和调度。

(4)电源监控单元(Power supervision unit,PSU)是电源子系统的监督级局部控制器,负责监管电源的运行情况。

(5)运动决策单元(Vehicle decision unit,VDU)能够根据任务、环境信息和导航单元的信息做出有效的决策,并通过运动控制单元控制机器人的运动。

(6)导航系统单元(Navigation system unit,NSU)负责两个激光测距仪和视觉传感器的信号检测、融合以及设备状态监控等任务。

(7)运动控制单元(Vehicle control unit,VCU)执行球形机器人速度和姿态的伺服控制。

(8)位姿观测单元(Position attitude estimationunit,PAEU)实现光电编码器与惯性测量装置的信息融合,并对球形机器人的位姿信息进行估计。

机器人监控单元、电源监控单元、运动控制单元和位姿观测单元分别对应一个实时任务,在基于高性能耐SC处理器(Advanced RISC Machines,ARM)设计的电路系统内运行。该电路系统可以称为嵌入式控制器。运动决策单元和导航系统单元分别对应一个实时任务,同样在基于ARM设计的电路系统内运行。该电路系统可以称为环境探测器。电动机监控单元和电动机控制单元分别对应一个实时任务,在基于数字信号处理器(Digital signalprocessor DSP)设计的电动机伺服控制器内运行。球形机器人控制系统逻辑结构如图2所示。

机器人
图2 球形机器人控制系统逻辑结构图

1.2 球形机器人控制系统的结构分析

根据图2提出的结构设计方法研制的球形机器人控制系统的主要组成部分有:伺服控制子系统、电源子系统、导航与传感子系统、通信子系统、嵌入式控制子系统和远程控制系统等。其中伺服驱动子系统由电动机、减速器和电动机驱动器组成;导航和传感子系统由惯性测量装置、激光测距仪、视觉传感器和光电编码器组成:通信子系统由现场总线、串行总线和无线发送/接收模块组成:嵌入式控制子系统由嵌入式控制器和环境探测器组成;远程监控系统能够通过无线通信模块实时查询球形机器人嵌入式控制系统的工作状态,设置球形机器人的工作模式。而且,每个子系统的实体在具体实现时,并非相互独立的。球形机器人控制系统的组成如图3所示。嵌入式控制器通过控制器局域网(Controller area network,CAN)总线分别接收来自环境探测器的关于激光测距仪的信息和来自伺服驱动器的光电编码器的信息,同时通过RS232总线分别接收来自惯性测量装置和视觉传感器的数据信息以及远程控制信息,并对所有的信息数据进行分析和融合,根据任务和环境做出相应的决策,再通过CAN总线发送给伺服驱动器,从而控制电动机的动作。嵌入式控制器利用CAN总线和RS232总线实时监测每个传感器和伺服驱动器的状态,同时通过无线模块将系统的运行状态反馈给远程监控系统。

机器人
图3 球形机器人控制系统组成方框图

2 球形机器人控制系统的容错策略

球形机器人的控制系统是一个比较复杂的计算机控制系统,硬件和软件的规模比较大,因此系统出现故障的概率也较大。为了降低由于软硬件问题频频发生的运行故障的概率,必须努力寻求提高控制系统可靠性的方法。除了筛选更可靠的元器件和设备,努力提高工程技术外,本节基于容错策略研究球形机器人伺服控制子系统和软件系统的设计方法。

2.1 冗余双备份伺服控制子系统的设计

本文提出了一种冗余双备份的电动机伺服控制子系统。两个电动机均为无刷直流电动机,并装配了行星减速器和光电编码器以及驱动控制器。伺服控制子系统采用两套相同的驱动控制器在仲裁管理下共同控制一个电动机的运行模式。如果嵌入式控制器检测到某个驱动器出现故障,可以利用切换电路将电动机的绕组切换到备份驱动器的绕组接口上,从而实现对电动机的连续控制。如图4所示,嵌入式控制器发出的信号“Set”和“Clk”经过双路D触发器产生等效的“与”逻辑切换控制信号“SW”。D触发器不仅对切换控制信号具有保持作用,而且双D触发器同样采用了双备份的设计,提高系统的可靠性。图4中的3个反馈信号“M_A”、“M_B”和“M_C”经过检测电路的逻辑组合产生3个信号,分别为“M_F”、“M&D_F”和“D_F”,并反馈回嵌入式控制器的外部中断端口。如果嵌入式控制器检测到这3个反馈信号中的任何1个为“事故信号”,则根据“事故”类型采取对应的措施,最“坏”的情况是通过CAN总线关闭电动机伺服驱动器。切换电路利用光耦设备控制继电器实现绕组的切换。嵌入式控制器利用CAN总线实时监控驱动控制器的运行状态。当执行切换任务时,可以通过触发器控制相应光耦设备的输出,并根据嵌入式控制器外部中断的状态判断动作执行的结果。故障检测信号的逻辑触发关系为:①M F=M A&MB&M_C;②M&D_F=M_A&M_B&M_C&D_F:③D_ F=Q_N_A&Q_N_B。

机器人
图4 双备份切换信号保持与反馈电路原理

冗余双备份伺服控制子系统的信号关系如图5所示。根据可靠性级别的高低,可以选择热备份和冷备份两种执行方式。热备份是指在系统启动时,同时对冗余的驱动控制器进行初始化,但它仅处于“预操作”模式。当发生切换任务时,冗余驱动控制器立即由“预操作”模式进入工作模式。冷备份则需要在切换前由嵌入式控制器对冗余驱动控制器进行初始化,再进入热备份阶段。虽然后者实时性较前者多了一个“启动一初始化”周期,但功耗较小。冗余双备份伺服控制器如图6所示。

机器人
图5 伺候驱动子系统逻辑图


图6 冗余双备份伺服驱动器

综上所述,球形机器人的冗余双备份伺服控制子系统是由两个相同的备份模块组成的,通过故障检测、故障定位以及系统恢复实现容错功能。由于系统恢复采用重组技术,因此系统的冗余结构可以根据故障情况发生相应的变化。若运行的模块(伺服控制器)发生故障,则可以通过重组备用模块(伺服控制器)使整个系统恢复正常运行。在重组的过程中,7伺服控制子系统的运行发生了暂时中断。

2.2 软件系统的容错策略

球形机器人控制系统的软件主要采用了时间容错和信息容错的设计方法。时间容错方法是以牺牲时间来换取系统高可靠性的一种手段。信息容错是指为了检测和纠正信息在运算或传输过程中的错误而外加了一部分冗余信息码,使原来不相关的数据变为相关,并把这些冗余码作为监督码与有关的信息一起传递,从而实现冗余容错。

球形机器人控制系统的软件采用两种方式的时间容错设计方法:一种是有限地降低系统的运行速度以提高系统的可靠性;另一种是通过重复执行指令或者程序来检测故障。球形机器人系统在运行过程中,环境等因素的变化可能导致系统出现某些故障。此时,在保证设备基本功能的范围内,通过降低设备运行速度,可以有效地排除某些故障。例如降低嵌入式控制器查询指令周期可以有效地减轻总线的负荷,避免由于总线堵塞而引发的故障。环境探测器的某些指令重复执行一定的次数,可以对瞬时性故障起到过滤的作用,保证原程序继续向前执行。指令的重复执行虽然增加了系统的运行时间,但可以有效地消除瞬时故障的影响。

球形机器入控制系统的通信程序采用了信息容错技术,其检错和纠错码分别为奇偶校验码、校验和以及循环冗余校验码。例如基于串行总线的通信设备(惯性测量装置、激光测距仪和无线传感器等),在数据链路层采用奇偶校验码,而在应用协议层则采用校验和的方式。对于基于现场总线的通信设备(嵌入式控制器、伺服控制器和环境探测器),循环冗余校验则是一种有效的冗余校验方法。

机器人
图7 球形机器人控制系统监控程序流程图

本文除采用时间容错和信息容错的方法提高系统软件的可靠性外,还为运动决策子程序、运动控制子程序和双备份切换子程序分别设计了监控子程序用于监视这些程序的运行状态。监控程序的基本流程如图7所示,首先判断软件功能是否正常完成,然后通过错误估计判断软件已经执行的功能与设计目标的偏差。如果存在较大偏差,通过影响*价来估计软件未来的执行结果以及主程序是否能够完成设计目标。若预期软件的继续运行可以达到目标,则可以忽略该错误,主程序继续运行;反之,错误不可忽略。这时需要调用备份程序。如果备份程序仍然不能正常工作,则提示软件错误。

综上所述,球形机器人控制系统软件容错主要有以下特点。

(1)容错的对象是规定功能的软件,这些功能是根据任务需求定义的,包括鲁棒运动控制子程序、路径跟踪控制予程序和切换控制子程序等。容错只是为了保证当编程缺陷导致系统出现故障时,能够维持这些功能。如果软件的设计是完全正确的(理想软件),那么容错部分将不起任何作用。

(2)容错的能力总是有一定限度的,这是因为软件缺陷很多是不可预见的。对于球形机器人控制系统而言,输入信息的构成也极为复杂。因此,即使是软件容错有时会失效,有时即使不完全失效,也只是维持其部分功能作降级运行。

(3)当软件由于自身存在缺陷而在运行中出现故障时,若其为容错软件,则能够屏蔽这一故障,对其进行处理以避免失效。这一功能是通过故障检测、故障恢复以及调动软件冗余备份来实现的。这里所说的冗余备份,不是指球形机器人控制软件的全部功能,而是其中的各个功能块、子程序或程序段。这些备份程序、检测程序和恢复程序一起统称为容错资源。一个容错软件实际是由规定功能的常规软件和容错软件共同来实现的。常规软件是主体,容错软件只是为了提高可靠性。

3 球形机器人控制系统的试验研究

为了验证设计的球形机器人控制系统的可行性,本节进行试验研究。在试验过程中,嵌入式控制系统控制球形机器人的框架保持垂直于地面的姿态,并绕中垂线匀速转动,此时机器人像“陀螺”一样在原地旋转。在运动过程中每间隔约50S,远程监控系统向嵌入式控制器发出电动机伺服控制子系统出现故障的信息,从而简单地模拟实际中的情况以检验冗余双备份伺服控制器的工作情况。试验流程如图8所示。

机器人
图8 冗余双备份试验流程图

图8中的鲁棒运动控制策略,能够分别保证球形机器人的姿态和转动速度收敛到期望的邻域内,而且具有一定的鲁棒性。试验过程中旋转运动的伺服控制子系统的试验结果如下表所示。在整个试验过程中,远程监控系统共发出了5次故障信息。初始时刻球形机器人控制系统采用热备份的方式选择“主”份电动机伺服控制器进行正常工作。当嵌入式控制器在第一次接收到“主”份电动机伺服系统故障信息后,通过切换电路将输出绕组切换到“备”份电动机伺服控制器上,同时启动“备”份电动机伺服控制器,并采用指示灯显示和向远程监控系统发送信息的方式报警。切换任务完成后球形机器人仍然进行正常地旋转运动。运动约50 S后,远程控制系统首先清除“主”份伺服控制器的“故障”状态,再向嵌入式控制器发出“备”份伺服控制器故障信息。嵌入式控制器通过切换电路将输出绕组重新切换到已经恢复正常的“主”份伺服控制器上,同时启动“备”份电动机伺服控制器,并采用指示灯显示和向远程监控系统发送信息的方式报警。切换任务完成后球形机器人仍然正常地进行旋转运动。

表 电动机伺服控制系统容错试验数据

机器人

上述“故障信息”模拟试验重复进行了4次。当嵌入式控制器接收到“主”份和“备”份伺服控制器均出现故障的信息后,停止切换任务,并将自身调整到待机状态,同时采用指示灯显示和向远程监控系统发送信息的方式报警。在切换过程中,机器人旋转角速度的响应曲线如图9所示。在每次切换任务执行过程中,电动机的输出受到扰动,致使机器人旋转角速度发生变化。当切换任务完成后,执行伺服控制任务的伺服控制系统调整电动机的输出使机器人旋转角速度重新稳定到期望值附近。综上所述,本文设计的冗余双备份伺服控制系统成功实现了冗余容错控制,最大切换时间为650IllS,且切换任务运行正常。但同时发现在切换过程中,球形机器人的状态出现了轻微地抖动。经过试验观测和分析,发现球壳与地面接触部分不够光滑,同时机器人内部机构的质量分布相对于中垂线非对称性较大,从而增强了对运动控制策略的干扰。为了克服这种现象,除提高机器人的装配精度和鲁棒控制策略的控制能力外,可以采用诸如预测控制、前馈控制等作为过渡控制算法以提高系统切换的动态特性。

机器人
图9 双备份切换试验中旋转角速度的响应曲线

结论

(1)针对球形机器人控制系统复杂性和结构特殊性,提出了球形机器人控制系统的设计方法,并将控制问题分解为s个局部控制器。这些局部控制器的集合构成了球形机器人的控制系统,而且局部子控制器相互之间具有通信和信息交互的能力,在任务分配和协作方面具有自主性。

(2)基于提出的控制系统结构,研制了球形机器人的嵌入式控制系统,论述了各个组成部分之间的相互关系。

(3)为了提高球形机器人控制系统的可靠性,基于容错控制技术研制了冗余双备份伺服控制子系统;基于时间容错、信息容错和监控软件技术设计了软件系统。试验结果表明基于容错策略设计的球形机器人控制系统是有效的、可行的。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分