System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及一种机器人重构方法,具体涉及一种基于元模块互助的模块化机器人自重构方法。
技术介绍
1、模块化机器人系统是由多个同质或异质的、具有一定感知能力的模块利用机械或电磁对接面联接而成的一类特种机器人。通过对接面的断连和模块位置的转移,模块化机器人可以组装成为具备不同功能和构型的机器人,解决了传统机器人结构固定、功能单一的问题,能够更好的适应复杂的任务和非结构化的环境,具有多功能性、高鲁棒性、可扩展性等优势,受到了机器人和人工智能领域的关注,并在工业生产、智能家居、航空航天等领域展现出初步的应用前景。
2、模块化机器人的构型变换功能是其优势的基础,实现该功能的基础就是模块的自重构。然而,模块化机器人的自重构问题已被证明是一类np完全问题,必须使用搜索的方式来解决。根据模块移动能力的不同可以将模块分为独立移动、相对移动和辅助移动三类。独立移动是以轮式模块为代表的一类模块化机器人,每一个模块都可以独立的改变自身位置以完成自重构。针对这类模块自重构算法的研究可以转化为一个简单的多智能体路径规划问题,相关算法已经十分成熟,但是轮式等移动部件的加入会造成大量的机构冗余,从而对模块化机器人整体构型的操作和运动产生负面影响。相对移动是指模块可以在其他模块的表面运动,其运动形式包括滑块运动、隧道运动以及球形滚动等等,这一类模块自重构算法研究的重点在于大量模块避免冲突和碰撞的的并行移动,目前已经取得了一定的成果,但在实现上述运动的部件设计中,很难保证模块之间连接的可靠性。辅助移动是指模块的移动需要其他模块的辅助,这一类模块通常形
3、现已有研究者通过基于搜索的方法探索了辅助移动模块的自重构问题。由于模块操作能力的有限,很难设计一个有效的启发函数,暴力搜索只会造成计算爆炸。外力辅助的方法是指利用小型机器人、水流、磁场等方法实现模块位置的移动,但这类方法对外力的要求较为苛刻,在三维重构层面也存在较大问题。元模块的方法是目前常用的一类方法,通过几个模块的简单结合获得类似于相对移动模块所具备的移动能力,但该方法会影响模块的微型化,甚至会破坏模块的规则性。因此,如何实现辅助移动式模块的自重构是模块化机器人研究的热点和难点问题。
技术实现思路
1、本专利技术为克服现有技术,提供一种基于元模块互助的模块化机器人自重构方法。该方法能够赋予辅助移动式模块全局移动能力,实现了模块化机器人的自重构,在重构过程中避免了阻塞和碰撞的问题。
2、一种基于元模块互助的模块化机器人自重构方法包含以下步骤:
3、s1、获取模块化机器人目标构型的构型信息,包含关节姿态和连接方式;
4、s2、分析构型信息获取组装序列;
5、综合考虑构型信息、元模块运动特性和相互辅助特性,利用气泡算法将装配阻塞位置的顺序替换到前面,并不断更新整个装配序列,直到找到合适的顺序;
6、s3、利用元模块互助能力按顺序执行元模块位置变化;
7、通过移动和翻滚互助,按组装序列依次执行元模块的移动以填充组装位置,直至所有元模块变化到组装位置,最终完成模块化机器人的自重构。
8、进一步地,步骤s1中模块化机器人的形态是通过边和顶点的组合拓扑来建模得到,构型信息表达如下:
9、每个顶点包含一个数字、一个上标和一个下标。数字表示元模块的编号,上标包含四位数字,前两位和后两位分别代表构成元模块的两个基本模块的关节姿态,其中j为关节,下标表示元模块的类型,使用t和m分别表示翻滚者和移动者;
10、边表示元模块之间的连接,该连接由三元组(fi,fj,ori)表示,其中,fi为对接元模块i的连接器编号,fj为对接元模块j的连接器编号,j>i,ori表示元模块j相对于元模块i的方向。
11、进一步地,步骤s2中组装序列获取的具体过程为:
12、s21、根据目标构型的布局特征对装配顺序进行预定,然后在不考虑元模块互助运动约束的情况下,将元模块与装配位置逐一匹配,得到初始装配序列;
13、s22、遍历初始装配序列并检查元模块的互助约束;首先检查移动者协助翻滚者时是否有运动阻塞或装配障碍,其次,检查翻滚者协助移动者时是否有有效的协助,如果元模块不能满足这些互助约束,该元模块所在位置的装配优先级将高于阻塞或辅助它的元模块所在位置,然后将继续遍历汇编序列,直到遍历所有位置。
14、更进一步地,互助约束是指元模块互助的特点体现在运动约束上,运动约束会造成阻塞和碰撞,当翻滚者需要在移动者的帮助下改变方向时,必须满足:
15、position(m,m)
16、or
17、position(m,m)and exist(tp)
18、当移动者需要借助翻滚者进行旋转时,必须满足:
19、position(t,m)and cross(t,tp)
20、其中,m表示需要辅助的元模块,m表示在装配序列中存在移动者,t表示在装配序列中存在翻滚者,tp表示目标位置,position(x,y)表示在装配序列中存在x,且x的组装顺序在y之前,exist(tp)表示至少在目标位置的一个延伸方向上延伸区域内没有障碍物,指定元模块长边对应的方向为延伸方向,沿该方向经过的区域为延伸区域,cross(t,tp)表示翻滚者的延伸区域与目标位置的延伸区域存在交集,交集后沿交集方向延伸至两个单位位置的区域畅通无阻。
21、进一步地,步骤s3中利用元模块互助执行动作,分别为移动者协助翻滚者改变方向和翻滚者辅助移动者翻转,在组装序列的规划过程中,可得到交点的位置,所述交点是指翻滚者的延伸区域与目标位置的延伸区域的交集,当获得此交集信息时,移动者和翻滚者将移动到该位置并完成旋转,然后翻滚到组装位置,最终完成自重构。
22、本专利技术相比现有技术的有益效果是:
23、1、本专利技术针对辅助移动式模块化机器人系统设计了一种基于元模块互助的重构方法,。辅助式模块结构简单且规则,连接可靠且冗余性较低,具有较强的应用性。然而由于模块的操作能力有限,现有的基于搜索的方法不适用于此类型模块化机器人的重构问题,其他基于外力或者元模块的方式也都存在一定的弊端。本专利技术提出的重构算法能够赋予辅助移动式模块全局移动能力,实现了模块化机器人的自重构。
24、2、本专利技术的核心是利用元模块互助的概念和基于冒泡法的集中式规划。前者解决了元模块在形态规则性和移动能力之间的冲突,在尽可能保证重构单元结构规则简单的前提下实现了全局可达的能力。后者则充分考虑了元模块互助的限制,利用气泡迭代算法生成模块移动顺序,从而避免了阻塞和碰撞的问题。
25、下面结合附图和实施例对本专利技术的技术方案作进一步地说明:
本文档来自技高网...【技术保护点】
1.一种基于元模块互助的模块化机器人自重构方法,其特征在于:包含以下步骤:
2.根据权利要求1所述一种基于元模块互助的模块化机器人自重构方法,其特征在于:
3.根据权利要求1所述一种基于元模块互助的模块化机器人自重构方法,其特征在于:
4.根据权利要求3所述一种基于元模块互助的模块化机器人自重构方法,其特征在于:
5.根据权利要求3或4所述一种基于元模块互助的模块化机器人自重构方法,其特征在于:所述互助约束是指元模块互助的特点体现在运动约束上,运动约束会造成阻塞和碰撞,当翻滚者需要在移动者的帮助下改变方向时,必须满足:
6.根据权利要求1或5所述一种基于元模块互助的模块化机器人自重构方法,其特征在于:步骤S3中利用元模块互助执行动作,分别为移动者协助翻滚者改变方向和翻滚者辅助移动者翻转,在组装序列的规划过程中,可得到交点的位置,所述交点是指翻滚者的延伸区域与目标位置的延伸区域的交集,当获得此交集信息时,移动者和翻滚者将移动到该位置并完成旋转,然后翻滚到组装位置,最终完成自重构。
7.根据权利要求6所述一种基于
8.根据权利要求7所述一种基于元模块互助的模块化机器人自重构方法,其特征在于:
...【技术特征摘要】
1.一种基于元模块互助的模块化机器人自重构方法,其特征在于:包含以下步骤:
2.根据权利要求1所述一种基于元模块互助的模块化机器人自重构方法,其特征在于:
3.根据权利要求1所述一种基于元模块互助的模块化机器人自重构方法,其特征在于:
4.根据权利要求3所述一种基于元模块互助的模块化机器人自重构方法,其特征在于:
5.根据权利要求3或4所述一种基于元模块互助的模块化机器人自重构方法,其特征在于:所述互助约束是指元模块互助的特点体现在运动约束上,运动约束会造成阻塞和碰撞,当翻滚者需要在移动者的帮助下改变方向时,必须满足:
6.根据权利要求1或...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。