攀爬机器人移动控制系统恢复方法与流程

文档序号:12661513阅读:496来源:国知局
攀爬机器人移动控制系统恢复方法与流程

本发明涉及机器人控制技术领域,特别是一种攀爬机器人的移动控制系统。



背景技术:

近年来,智能机器人发展异常迅猛,典型的包括攀爬机器人、轮式机器人和旋翼式无人机,其中轮式机器人和旋翼式无人机的控制系统发展也日趋成熟,目前已经广泛地应用于工农业生产过程和居民生活;而相对地,攀爬机器人目前则还处在发展阶段。攀爬机器人从吸附原理主要分为生物粘附式、手爪式、电磁吸附式,从移动机构主要分为足式、轮式;其中足式攀爬机器人主要用于检测空间桁架结构,比如电力杆塔、铁桥、脚手架、信号塔等,其攀爬环境主要是杆件组成的三维空间桁架。攀爬机器人随着自由度的增加,并发度成倍增长,控制逻辑的复杂度也成指数级增长,这就使得控制系统潜在的相互协调、相互制约机制较多,控制耦合度较高。

一般足式攀爬机器人需要开发专用控制系统,控制系统在运行过程中不可避免发生故障,然而目前的控制系统在发生故障后,比如运算溢出、控制系统故障、机器人断电,攀爬机器人通常需要在消除故障后重新从头开始运行,难以从某个时刻点完整准确地继承前期工作,费时费力。



技术实现要素:

本发明需要解决的技术问题是提供一种应用于攀爬机器人移动控制系统的恢复方法,能够在故障消除后,恢复故障发生前攀爬机器人的状态和数据,并使机器人继承故障前的工作状态继续工作。

为解决上述技术问题,本发明所采取的技术方案如下。

攀爬机器人移动控制系统恢复方法,具体包括以下步骤:

A.以事务为单位表示攀爬机器人移动过程中一个关节机械的动作序列,按照时间顺序记录事务及相关信息日志;

B.判断故障类别,如为事务故障,采用步骤C进行系统恢复;如为控制系统故障,采用步骤D进行系统恢复;

C.搜索日志,调取故障发生时刻日志中记录的事务,强行撤销该事务已经完成的机械动作序列;

D.搜索日志,根据故障发生时刻事务的完成情况,对于已经完成的事务进行重做,对于未完成的事务进行强制撤销。

上述攀爬机器人移动控制系统恢复方法,步骤C具体包括以下步骤:

C1.从日志的结尾处反向扫描日志文件,查找故障发生时刻事务的机械动作;

C2.对该事务的机械动作执行逆操作;

C3.继续反向扫描日志,查找该事务的其他机械动作,并做同样处理;

C4.重复步骤C3,直至读取该事务的开始标记,事务故障恢复结束。

上述攀爬机器人移动控制系统恢复方法,步骤D具体包括以下步骤:

D1.设置事务队列,事务队列包括已完成队列、正执行队列、撤销队列、重做队列;

D2.从头开始扫描日志,找出在故障发生前已经完成的事务,把这些事务ID归入重做队列;同时,找出故障发生时尚未完成的事务,把这些事务ID归入撤销队列;

D3.对撤销队列中的事务进行强制撤销处理,具体方法是反向扫描日志文件,对每个撤销事务的机械动作执行逆操作;

D4.对重做队列中的事务进行重做处理,具体方法是正向扫描日志文件,对每个重做事务重新执行日志中记录的机械动作。

上述攀爬机器人移动控制系统恢复方法,步骤A中在进行日志记录的同时,增加稳定点记录以及记录各个稳定点在日志文件中地址的索引文件,并在登录日志文件期间动态地维护日志。

上述攀爬机器人移动控制系统恢复方法,所述稳定点记录的内容包括:稳定点建立时刻所有正在执行的事务队列,上述事务最近一个日志记录的地址以及攀爬机器人在稳定点建立时刻的位置信息和方向信息。

上述攀爬机器人移动控制系统恢复方法,所述动态地维护日志是在攀爬机器人攀爬足具有稳定特性时,建立稳定点,保存攀爬机器人的位置信息和方向信息,具体包括以下步骤:

a.把日志缓冲区中所有的现有日志记录写入磁盘的日志文件上;

b.在日志文件中写入一个稳定点记录;

c.把当前缓冲区的所有关节机械动作序列执行完毕;

d.把稳定点记录在日志文件中的地址记入索引文件中。

上述攀爬机器人移动控制系统恢复方法,利用稳定点进行系统恢复的具体步骤为:

首先,从索引文件中找到最近一个稳定点记录在日志文件中的地址,由该地址在日志文件中找到最近一个稳定点记录,读取攀爬机器人的位置信息和方向信息,据此对攀爬机器人进行复位;

其次,由上述稳定点记录得到稳定点建立时所有正执行的事务队列,同时把正执行队列暂时放入撤销队列,并置空重做队列;

再次,从稳定点开始正向扫描日志文件,直到日志文件结束;

最后,对撤销队列中的每个事务执行撤销操作,对重做队列中的每个事务执行重做操作。

由于采用了以上技术方案,本发明所取得技术进步如下。

本发明利用冗余数据使攀爬机器人移动控制系统在故障解除后自动恢复故障前的状态,并使机器人继承故障前的工作状态继续工作,原理简单,容易实施,稳定性强;本发明还在日志的基础上建立攀爬机器人的稳定点和日志的索引文件,加快了检索速度,提高了系统的恢复速度。

附图说明

图1为本发明的原理图;

图2为本发明中具有稳定点的日志和索引文件示意图;

图3为本发明中利用稳定点的恢复策略;

图4为本发明中的镜像技术原理。

具体实施方式

下面将结合附图和具体实施例对本发明进行进一步详细说明。

一种攀爬机器人移动控制系统恢复方法,其原理如图1所示,具体为:机器人控制系统中不正确的数据和机械动作导致的故障可以根据存储在系统其它地方的冗余数据来重建,这些冗余数据通常在每次关节机械动作前存储在专门创建的日志中,并通过稳定点为日志建立索引文件,加快检索速度;针对硬件问题导致的故障,可以通过在地面工作站的镜像数据和计算环境恢复。具体包括以下步骤。

A.以事务为单位表示攀爬机器人移动过程中一个关节机械的动作序列,按照时间顺序记录事务及相关信息日志。

本发明中提出的事务具有三个特性:原子性、稳定性、中间可撤销性。

原子性是指攀爬机器人的逻辑工作单位,是一个不可分割的机械动作序列,要么都做要么都不做。

稳定性是指攀爬机器人在事务的开始时刻和结束时刻必须是从一个稳定性状态到另一个稳定性状态。如果控制系统在运行中发生故障,有些事务还未完成就被强制中断,这时攀爬机器人就不处于一个不稳定状态。例如四足攀爬机器人的左前足和右后足都还未落地,因掉电停止,机器人就处于一种不稳定状态。

中间可撤销性是指事务在运行中如发生故障或者系统错误,可以撤回本事务已经完成的部分机械动作,回到原来的稳定性状态。例如,攀爬机器人移动中发现障碍物超过关节的极限跨越能力,可以撤回已完成的机械动作,回到稳定性状态后重新计算。

本发明以日志技术为核心,日志是用来记录攀爬机器人机械动作的文件。

日志有机械动作型、坐标型、复合型三种格式。

机械动作型日志按照时间顺序记录每一步的机械动作,其内容如表1所示。

表1

坐标型日志按照时间顺序记录每一步移动前后的坐标,其内容如表2所示。

表2

复合型日志按照时间顺序记录每一步的机械动作和移动前后的坐标,综合记录机械动作和移动前后坐标信息,其内容如表3所示。

表3

为了保证所有事务都是可以恢复的,登记日志时必须遵循以下两条原则:1)日志登记的次序严格按事务执行的时间次序;2)必须先在日志中登记,然后执行事务。防止在日志登记与事务之间发生系统故障,导致日志不完整。

B.判断故障类别,如为事务故障,采用步骤C进行系统恢复;如为控制系统故障,采用步骤D进行系统恢复。

本发明在设置过程中,将攀爬机器人移动中的故障分为两类,事务故障和系统故障。

事务故障是指单个事务发生故障(运算溢出、突然出现的障碍物等),无法运行到预期的终点,攀爬机器人处于一种不稳定的状态。

系统故障是指造成攀爬机器人停止运转的任何事件,必须重新启动,比如运算部件故障、系统掉电,这种故障影响正在运行的所有事务,迫使它们非正常终止,导致攀爬机器人处于一种不稳定的状态。

C.事务故障的恢复方法是:搜索日志,调取故障发生时刻日志中记录的事务,在不影响其他事务运行的情况下,强行撤销该事务已完成的部分机械动作,这是由系统自动完成的,用户不用任何操作。具体包括以下步骤。

C1.从日志的结尾处反向扫描日志文件,查找故障发生时刻事务的机械动作。

C2.对该事务的机械动作执行逆操作;如前进动作的逆操作是后退,左转的逆操作是右转。

C3.继续反向扫描日志,查找该事务的其他机械动作,并做同样处理。

C4.重复步骤C3,直至读取该事务的开始标记,事务故障恢复结束。

D.系统故障的恢复是在系统重启时自动完成的,不需要用户任何操作。系统故障导致攀爬机器人不稳定主要有两方面的因素,一是已完成的事务因为故障导致事务的机械动作序列已经作废了,二是未完成的事务已经执行了部分关节机械动作序列。系统故障的恢复方法是在系统重启后,需要从数据角度撤销所有未完成的机械动作,从机械角度重做从某个时刻点开始的已经完成的事务;即搜索日志,根据故障发生时刻事务的完成情况,对于已经完成的事务进行重做,对于未完成的事务进行强制撤销。具体包括以下步骤。

D1.设置事务队列,事务队列包括已完成队列、正执行队列、撤销队列、重做队列。其中,已完成队列是指机械动作序列已经全部完成的事务队列;正执行队列是指机械动作序列正在执行的事务队列;撤销队列是指机械动作序列计划撤销的事务队列;重做队列是指机械动作序列计划重做的事务队列。

D2.从头开始扫描日志,找出在故障发生前已经完成的事务,把这些事务ID归入重做队列;同时,找出故障发生时尚未完成的事务,把这些事务ID归入撤销队列。

D3.对撤销队列中的事务进行强制撤销处理,具体方法是反向扫描日志文件,对每个撤销事务的机械动作执行逆操作。

D4.对重做队列中的事务进行重做处理,具体方法是正向扫描日志文件,对每个重做事务重新执行日志中记录的机械动作。

本发明在利用日志进行控制系统恢复时,必须搜索整个日志,以确定哪些事务需要重做,哪些事务需要强制撤销。恢复过程存在两个问题,一是搜索整个日志将耗费大量的时间,二是重做队列的处理需要重新执行机械动作序列,浪费了大量时间。为了解决上述两个问题,本发明进一步提出了具有稳定点的恢复方法,即在进行日志记录的同时,增加稳定点记录以及记录各个稳定点在日志文件中地址的索引文件,并在登录日志文件期间动态地维护日志。

上述稳定点记录的内容包括:稳定点建立时刻所有正在执行的事务队列,上述事务最近一个日志记录的地址以及攀爬机器人在稳定点建立时刻的位置信息和方向信息。

索引文件用来记录各个稳定点记录在日志文件中的地址,图2描述了建立稳定点Si时对应的日志和索引文件。

动态地维护日志是在攀爬机器人攀爬足具有稳定特性时,建立稳定点,保存攀爬机器人的位置信息和方向信息,具体包括以下步骤。

a.把日志缓冲区中所有的现有日志记录写入磁盘的日志文件上。

b.在日志文件中写入一个稳定点记录。

c.把当前缓冲区的所有关节机械动作序列执行完毕。

d.把稳定点记录在日志文件中的地址记入索引文件中。

使用稳定点方法可以大幅改善恢复效率,主要体现在以下两点:首先,是当事务T在一个稳定点之前已经完成所有的关节机械动作序列,在进行恢复处理时,首先把攀爬机器人按最近一个稳定点的位置和方向放置,就没有必要对事务T执行重做;其次,是通过索引文件、日志中的稳定点记录能很快找到事务对应的日志记录地址,不必从头开始扫描日志文件。

控制系统出现故障时,攀爬机器人恢复方法根据事务完成的不同状态采取不同的恢复策略,事务完成的不同状态如图3所示:T1事务在稳定点之前已经完成所有关节机械动作序列;T2事务在稳定点之前开始执行关节机械动作序列,在稳定点和故障点之间全部完成;T3事务在稳定点之前开始执行关节机械动作序列,在故障点时还未全部完成;T4事务在稳定点之后开始执行关节机械动作序列,在故障点之前已经全部完成;T5事务在稳定点之后开始执行关节机械动作序列,在故障点时还未全部完成。

T1事务在稳定点之前已经全部完成,所以不必执行重做操作;T2事务和T4事务在稳定点之后才全部完成,它们的关节机械动作序列在故障发生时已经全部执行完毕,需要重做;T3事务和T5事务的关节机械动作序列在故障发生时还未执行完毕,所以从日志文件强制撤销。

在本发明中,利用上述稳定点进行系统恢复的具体步骤如下。

首先,从索引文件中找到最近一个稳定点记录在日志文件中的地址,由该地址在日志文件中找到最近一个稳定点记录,读取攀爬机器人的位置信息和方向信息,据此对攀爬机器人进行复位。

其次,由上述稳定点记录得到稳定点建立时所有正执行的事务队列,同时把正执行队列暂时放入撤销队列,并置空重做队列。

再次,从稳定点开始正向扫描日志文件,直到日志文件结束。如有新开始的事务Ti,把Ti暂时放入撤销队列中;如有完成的事务Tj,把Tj从撤销队列移到重做队列。

最后,对撤销队列中的每个事务执行撤销操作,对重做队列中的每个事务执行重做操作。

在本发明中,本发明除上述事务故障和系统故障外,还可能在移动过程中发生掉落、碰撞等情况,所携带的存储设备和运算设备存在接触不良、损坏等情况。控制系统出现这种故障后,再现故障前一刻的信息很困难,系统恢复起来也比较费时。在比较严酷或者不稳定的环境中,可以采用镜像技术来帮助系统恢复。具体地说,如图4所示,在地面工作站内布置一个和攀爬机器人本体携带的同样规模大小的存储环境和计算环境,数传设备时刻保持地面工作站和攀爬机器人本体的存储数据一致,地面工作站的数据是攀爬机器人本体数据的镜像。一旦出现故障后,可立即启用地面工作站的镜像数据和计算环境,继续控制攀爬机器人完成剩下的工作。在故障修复后,可以通过镜像数据恢复攀爬机器人控制系统,解决了系统的硬件故障难恢复问题,提升了方法在面对严酷或者不稳定环境的适应性。

但无论攀爬机器人自身存储的数据,还是地面工作站记录存储的数据,都是采用以事务为单位记录日志并结合对日志建立稳定点和索引文件的方式进行存储,此种方式逻辑简单清楚、稳定性强、可行度高、可操作性强,大大提高了攀爬机器人移动控制系统的自动恢复能力。

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