1.本技术涉及软体机器人技术领域,特别涉及一种软体机器人的控制方法、设备以及计算机存储介质。
背景技术:2.随着软体机器人领域的快速发展,出现了各种软体机器人控制方案,但大多数并不能实现自由的移动,只能实现简单的向前运动,且不具备路径纠偏功能。这样的方案在实际应用中有较大的缺陷,如何控制软体机器人的多方向乃至全方向的高适应性精确移动是一个值得深究的问题。
3.现有的软体机器人方案往往采用控制单个,或者多个同向驱动模块共同驱动,所以只能使软体机器人单方向运动,虽然这些控制方案可以满足软体机器人运动的要求,但缺乏对实际应用需求的适应性。即可以精确地控制软体机器人的运动方向,如转弯,倒退等实际运用中具有必要性的功能。没有考虑软体机器人应对复杂实际应用的能力。
技术实现要素:4.本技术主要提供一种软体机器人的控制方法、设备以及计算机存储介质,以解决现有技术中的软体机器人只能实现简单的前后移动的问题,实现软体机器人的全方向运动控制。
5.为解决上述技术问题,本技术采用的一个技术方案是:提供一种软体机器人的控制方法,所述软体机器人包括若干软体肌肉组成的阵列结构,所述若干阵列结构分别往圆周不同方向延伸,且每一阵列结构由单独的驱动模块驱动,实现冗余控制策略,所述若干阵列结构任意组合产生圆周向不同角度的运动,实现任意轨迹跟踪;
6.所述控制方法,包括:
7.基于预设路径,生成所述软体机器人的运行信息;
8.按照所述软体机器人的运行信息,生成每一软体肌肉阵列结构的驱动信息;
9.将所述每一软体肌肉阵列结构的驱动信息输入对应的驱动模块,以使所述驱动模块按照所述驱动信息驱动所述软体肌肉阵列结构,控制所述软体机器人按照所述预设路径运行。
10.根据本技术提供的一实施方式,所述控制方法,还包括:
11.获取所述软体机器人的实际路径;
12.计算所述实际路径和所述预设路径的误差;
13.在所述误差小于等于允许误差阈值的情况下,继续按照所述预设路径生成的驱动信息驱动所述软体机器人运行,直至到达所述预设路径的终点;
14.在所述误差大于所述允许误差阈值的情况下,基于所述误差计算调整量,利用所述调整量调整所述预设路径生成的驱动信息,并按照调整后的驱动信息驱动所述软体机器人运行。
15.根据本技术提供的一实施方式,所述基于所述误差计算调整量,利用所述调整量调整所述预设路径生成的驱动信息,包括:
16.将所述误差输入预设频率控制器,获取所述预设频率控制器输出的频率调整量;
17.基于所述频率调整量,获取速度调整量;
18.利用所述速度调整量调整所述预设路径生成的驱动信息。
19.根据本技术提供的一实施方式,所述控制方法还包括:
20.在所述误差大于所述允许误差阈值的情况下,将计数器累加次数加1;
21.监测所述计数器累加次数是否达到预设次数阈值;
22.若是,检测每个驱动模块的电流,确认每个驱动模块的电路完整性,并将电路不完整的驱动模块标记为异常驱动模块。
23.根据本技术提供的一实施方式,所述控制方法还包括:
24.获取所述软体机器人中正常驱动模块的数量;
25.在所述正常驱动模块的数量大于等于预设数量阈值的情况下,继续驱动所述软体机器人;
26.在所述正常驱动模块的数量小于预设数量阈值的情况下,停止所述软体机器人的运行。
27.根据本技术提供的一实施方式,所述控制方法还包括:
28.在所述正常驱动模块的数量大于等于预设数量阈值的情况下,获取异常驱动模块与其相邻的正常驱动模块的夹角;
29.在所述夹角小于等于预设夹角阈值的情况下,屏蔽所述异常驱动模块;
30.在所述夹角大于预设夹角阈值的情况下,停止所述软体机器人的运行。
31.根据本技术提供的一实施方式,所述控制方法还包括:
32.在所述误差小于所述允许误差阈值的情况下,重置所述计数器。
33.根据本技术提供的一实施方式,所述驱动信息为单片机生成的脉冲宽度调制波;
34.所述将所述每一软体肌肉阵列结构的驱动信息输入对应的驱动模块之前,所述控制方法还包括:
35.利用场效应管放大所述脉冲宽度调制波。
36.根据本技术提供的一实施方式,所述脉冲宽度调制波依次包括:波谷、上升沿、波峰、下降沿、波谷;
37.所述按照所述驱动信息驱动所述软体肌肉阵列结构,包括:
38.按照所述脉冲宽度调制波的上升沿波段驱动所述软体肌肉阵列结构的前腿收缩;
39.按照所述脉冲宽度调制波的波峰波段驱动所述软体肌肉阵列结构的后腿收缩向前运动;
40.按照所述脉冲宽度调制波的波谷波段驱动所述软体肌肉阵列结构的前腿向前移动。
41.为解决上述技术问题,本技术采用的另一个技术方案是:提供一种软体机器人的控制设备,所述控制设备包括:规划模块、驱动模块以及控制模块,其中;
42.所述规划模块,用于基于预设路径,生成所述软体机器人的运行信息;
43.所述驱动模块,用于按照所述软体机器人的运行信息,生成每一软体肌肉阵列结
构的驱动信息;
44.所述控制模块,用于将所述每一软体肌肉阵列结构的驱动信息输入对应的驱动模块,以使所述驱动模块按照所述驱动信息驱动所述软体肌肉阵列结构,控制所述软体机器人按照所述预设路径运行。
45.为解决上述技术问题,本技术采用的另一个技术方案是:提供一种软体机器人的控制设备,所述控制设备包括存储器以及与所述存储器耦接的处理器;
46.其中,所述存储器用于存储程序数据,所述处理器用于执行所述程序数据以实现如上述的控制方法。
47.为解决上述技术问题,本技术采用的另一个技术方案是:提供一种计算机存储介质,所述计算机存储介质用于存储程序数据,所述程序数据在被计算机执行时,用以实现如上述的控制方法。
48.本技术提供了一种软体机器人的控制方法、设备以及计算机存储介质,该软体机器人包括若干软体肌肉组成的阵列结构,所述若干阵列结构分别往圆周不同方向延伸,且每一阵列结构由单独的驱动模块驱动,实现冗余控制策略,所述若干阵列结构任意组合产生圆周向不同角度的运动,实现任意轨迹跟踪;所述控制方法,包括:基于预设路径,生成所述软体机器人的运行信息;按照所述软体机器人的运行信息,生成每一软体肌肉阵列结构的驱动信息;将所述每一软体肌肉阵列结构的驱动信息输入对应的驱动模块,以使所述驱动模块按照所述驱动信息驱动所述软体肌肉阵列结构,控制所述软体机器人按照所述预设路径运行。通过上述方式,本技术提供的软体机器人通过独立驱动每一软体肌肉阵列结构,使得软体机器人能够实现多方向、多点、多模态的控制方案,能够有效实现自动避障等功能。
附图说明
49.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,其中:
50.图1是本技术提供的软体肌肉模块一实施例的结构示意图;
51.图2是本技术提供的基体一实施例的结构示意图;
52.图3是本技术提供的软体机器人一实施例的结构示意图;
53.图4是本技术提供的软体机器人制作的流程示意图;
54.图5是本技术提供的五足结构软体机器人一实施例的结构示意图;
55.图6是本技术提供的六足结构软体机器人一实施例的结构示意图;
56.图7是本技术提供的八足结构软体机器人一实施例的结构示意图;
57.图8是本技术提供的软体腿部结构一实施例的结构示意图;
58.图9是本技术提供的软体机器人步态与状态原理的示意图;
59.图10是本技术提供的软体机器人速度大小与方向的合成的原理示意图;
60.图11是本技术提供的软体机器人的控制方法一实施例的流程示意图;
61.图12是本技术提供的软体机器人的控制方法总流程示意图;
62.图13是本技术提供的脉冲宽度调制波对应状态图的示意图;
63.图14是本技术提供的软体机器人的控制方法另一实施例的流程示意图;
64.图15是本技术提供的纠偏整体过程的示意图;
65.图16是本技术提供的纠偏过程的示意图;
66.图17是本技术提供的冗余流程的示意图;
67.图18是本技术提供的移动机器人的控制设备一实施例的结构示意图;
68.图19是本技术提供的移动机器人的控制设备另一实施例的结构示意图;
69.图20是本技术提供的计算机存储介质一实施例的结构示意图。
具体实施方式
70.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
71.需要说明,若本技术实施例中有涉及方向性指示(诸如上、下、左、右、前、后
……
),则该方向性指示仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
72.另外,若本技术实施例中有涉及“第一”、“第二”等的描述,则该“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本技术要求的保护范围之内。
73.本技术的软体机器人控制方法应用于软体机器人,下面先介绍关于软体机器人及其组件的相关结构:
74.请参阅图1,图1是本技术提供的软体肌肉模块一实施例的结构示意图。
75.如图1所述,本技术实施例的软体肌肉模块100包括基体11以及记忆合金丝12。
76.其中,基体11内设置有若干凹槽111,而记忆合金丝12则是通过这些凹槽111固定在基体11内,形成软体肌肉模块100。
77.具体地,凹槽111的形成请继续参阅图2,图2是本技术提供的基体一实施例的结构示意图。
78.图2中的基体11由若干底层板112,以及若干顶层板113组成。其中,所述若干底层板112按照第一方向排列,所述若干顶层板113按照第二方向堆叠在所述若干顶层板113上,所述若干顶层板113之间的间隙形成所述若干凹槽111。
79.其中,工作人员可以先将若干底层板112按照相同的间隔进行铺设,然后将若干顶层板113按照与若干底层板112交叉叠加的方式铺设于若干底层板112之上,从而形成图2所示的基体11。其中,若干顶层板113可以按照相同的间隔设置,而相邻顶层板113之间的间隙以及底部的底层板112形成一容置空间,即为图2所示的凹槽111。
80.例如,本技术实施例中,工作人员可以采用0.2mm厚度的底层板112,以及0.4mm的
顶层板113,而相邻顶层板113以及底层板112形成的凹槽宽度,即相邻顶层板113的间隙可以设计为1mm,能够容纳图1所示的记忆合金丝12。
81.具体地,本技术实施例的记忆合金丝12在通电后会产生热量,同时会收缩产生形变。由于记忆合金丝12被嵌入基体11的凹槽111内,记忆合金丝12形变的同时将会带动软体肌肉模块100共同形变。当记忆合金丝12断电之后,记忆合金丝12失去收缩力,此时结构的回弹力将会驱使软体肌肉模块100回到初始状态。
82.因此,本技术通过控制记忆合金丝12通电的频率,重复这个过程,软体肌肉模块100便能得到一个可控的振动频率,加上固定于外部的腿部结构,就可以控制软体机器人向某一方向运动。如果采用不同的驱动参数,如改变电压,电流等参数,还以可以控制软体肌肉模块100力振动幅度和振动力的大小,达到调节软体机器人步幅和负重性能等参数。
83.具体地,本技术的软体肌肉模块100的控制方式可以是利用pwm(脉冲宽度调制,pulse width modulation)波的各项参数综合调节,例如,控制产生热量的频率等。
84.另外,软体肌肉模块100可以具体为一种带有凹槽111的长方形网格,记忆合金丝12被嵌入软体肌肉模块100的凹槽111内,且用聚二甲基硅氧烷(pdms)进行封装隔离,从而形成一个可以独立驱动的软体肌肉模块100。
85.本技术实施例的软体肌肉模块包括:基体,所述基体内设置有若干凹槽;记忆合金丝,固定设置于所述若干凹槽内;其中,所述记忆合金丝用于根据通过的电流大小进行形变,从而带动所述基体进行形变。通过上述方式,本技术提供的软体肌肉模块通过记忆合金丝独立驱动,能够实现软体机器人多步态运动的需求。
86.请继续参阅图3和图4,图3是本技术提供的软体机器人一实施例的结构示意图,图4是本技术提供的软体机器人制作的流程示意图。
87.需要说明的是,软体机器人200的主体结构是由丙烯腈、丁二烯、苯乙烯(abs)三种单体的三元共聚物,通过3d打印的对称结构,有四足到八足等结构。图3和图4仅为一种具体实施例的,即四足结构软体机器人。而在其他实施例中,通过相同的发明思路和创造,也可以实现其他足数的机器人,例如如图5所示的五足结构,如图6所示的六足结构,如图7所示的八足结构等。
88.在本技术实施例中,三足结构软体机器人即可实现满足要求的任意方向、多步态等功能。超过三个软体肌肉模块的设计可以看作是冗余结构,可以增强软体机器人的鲁棒性,即在某些模块无法正常工作时不会影响软体机器人的正常功能,同时也能增加软体机器人的承载能力和执行任务时的灵敏度和稳定性。
89.具体地,图3所示的软体机器人200包括模具21以及若干软体肌肉模块22。其中,软体肌肉模块22的具体结构请参见上述实施例介绍的软体肌肉模块,在此不再赘述。
90.本技术实施例的模具21具体包括位于中间位置的连接件211、以及朝向至少三个不同方向的容置件212。需要说明的是,本技术区分连接件211和容置件212仅是为了更好地表示相互位置关系,如图4所示的,模具21也可以为由3d打印模具打印的一体成型的模具21。
91.一般而言,容置件212与软体肌肉模块22的数量应当一致,即如图3所示的四足结构软体机器人200包括四个容置件212,以及对应的四个独立驱动的软体肌肉模块22。
92.在其他实施例中,容置件212的数量保证大于等于软体肌肉模块22的数量即可。例
如,3d打印模具打印生成如图7所示的八足结构软体机器人200时,工作人员也可以仅利用上述等角度分布的四个容置件212放置软体肌肉模块22,肌肉八足结构软体机器人200的结构形态实现四足结构软体机器人200的效果,可以有效提高软体机器人200的灵活性和可扩展性。
93.具体地,模具21的连接件211内设置有连接孔(图中未示出),其中,连接孔用于容置若干软体肌肉模块22的记忆合金丝,即如图4所示。本技术在模具21的中央设置圆形或者其他形状的开孔的作用在于,便于记忆合金丝或者电路线路的布线,形成共负极,能够有效利用软体机器人200的空间,方便走线,减小软体机器人200的整体重量。
94.例如,软体机器人200的所有记忆合金丝可以通过连接孔同时连接到驱动结构上(图中未示出),驱动结构可以根据每个软体肌肉模块22的驱动参数分别向其对应的记忆合金丝传输电流,从而达到独立驱动每个软体肌肉模块22的效果。
95.进一步地,本技术的软体机器人200还包括若干软体腿部结构23,其中一种腿部结构形态可以参阅图8。其中,软体腿部结构23的数量与容置件212的数量对应,每一软体腿部结构23通过接着剂固定在所述软体肌肉模块22远离所述连接件211的一端,且所述软体腿部结构23设置于所述软体肌肉模块22面向所述软体肌肉模块22中的记忆合金丝的一侧。
96.其中,本技术的软体腿部结构23可以由聚碳酸酯制作而成,软体肌肉模块23结合软体腿部结构23即可形成一个独立的软体肌肉模块阵列。其中,软体腿部结构23的基体21可以通过3d打印直接生成。
97.一个软体机器人200一般包括若干软体肌肉模块阵列,通过若干软体肌肉模块阵列独立驱动产生的速度合成不同方向的合速度,实现软体机器人200能够实现不同方向的运动,甚至能够实现转向的优势。另外,由于每个软体肌肉模块阵列的单个运动可以借助其余软体肌肉模块阵列的合成运动替代,软体机器人200也可以实现一个或多个软体肌肉模块阵列的冗余替换,一方面可以减少单独驱动的软体肌肉模块阵列,减少软体机器人200的功耗,另一方面可以在部分软体肌肉模块阵列损害后其功能可以被其他软体肌肉模块阵列替换,从而保证软体机器人200的整体功能正常运行。
98.通过多个独立的软体结构模块阵列控制软体机器人200的步态和状态的原理示意图请参阅图9。如图9所示,在没上电的时候,软体机器人200展示状态1的静止状态;在开始上电的时候,根据电流的逐渐增大,上电的软体肌肉模块22通电收缩产生形变,软体机器人200展示状态2和状态3的运动状态,出现步态1的移动;当停止上电的时候,停止通电的软体肌肉模块22失去收缩力,结构的回弹力驱使软体机器人200回到初始状态,即最终恢复到状态1。
99.进一步地,由于每个软体肌肉模块22都可以独立控制,并且产生不同的位移方向和速度,软体机器人200的速度可由以下速度的合成公式计算得到合速度的大小和方向:
[0100][0101][0102]
其中,v1为第一软体肌肉模块的速度,v2为第二软体肌肉模块的速度,α为第一软体
肌肉模块的速度方向与第二软体肌肉模块的速度方向的夹角,β为软体机器人的合速度方向与第一软体肌肉模块的速度方向的夹角。
[0103]
请继续参阅图10,本技术通过速度的合成,软体机器人200可以通过改变竖直方向与水平方向的速度,从而得到任意方向的合速度,从而实现向任意方向运动。
[0104]
本技术的软体机器人单个机器腿的软体肌肉模块都是相同的,可以阵列组成多足结构的软体机器人,并通过任意数量组合的软体肌肉模块阵列,实现多足结构的软体结构的任意方向转弯,还可以实现多种步态,以满足不同的实际场地情况,如越障,爬坡等功能,能适应更多的实际应用。
[0105]
在以上图1至图10的软体机器人的基础上,本技术进一步提出基于软体机器人的控制方法。
[0106]
具体请参见图11和图12,图11是本技术提供的软体机器人的控制方法一实施例的流程示意图,图12是本技术提供的软体机器人的控制方法总流程示意图。本技术实施例的软体机器人包括若干软体肌肉组成的阵列结构,若干阵列结构分别往圆周不同方向延伸,且每一阵列结构由单独的驱动模块驱动,实现冗余控制策略,若干阵列结构任意组合产生圆周向不同角度的运动,实现任意轨迹跟踪。
[0107]
如图11所示,本技术实施例的控制方法具体可以包括以下步骤:
[0108]
步骤s11:基于预设路径,生成软体机器人的运行信息。
[0109]
在本技术实施例中,控制设备获取软体机器人的预设路径,即软体机器人提前设定的运行路径,并按照软体机器人提前设定的运行路径,生成软体机器人的运行信息。其中,软体机器人的运行信息包括但不限于:软体机器人的运行位置、运行方向、运行速度、运行频率等。
[0110]
步骤s12:按照软体机器人的运行信息,生成每一软体肌肉阵列结构的驱动信息。
[0111]
在本技术实施例中,控制设备按照软体机器人的运行信息,即软体机器人的总体运动状态,分配每一个软体肌肉阵列结构的驱动信息。其中,软体肌肉阵列结构的驱动信息可以具体为单片机生成的脉冲宽度调制波,由于每个软体肌肉阵列结构均通过独立的驱动模块独立驱动,每个软体肌肉阵列结构按照分配的驱动信息运行,其合成的运行即为软体机器人的运行信息。
[0112]
具体请继续参阅图12,如图12所示,控制设备利用单片机产生脉冲宽度调制波,通过场效应管放大脉冲宽度调制波,并将脉冲宽度调制波通用每一个软体肌肉阵列结构的驱动模块,以使每一个软体肌肉阵列结构的驱动模块按照脉冲宽度调制波驱动软体肌肉阵列产生运动,进而驱动软体机器人。
[0113]
需要说明的是,单片机能够根据软体机器人的运行信息不断产生脉冲宽度调制波,从而支撑软体机器人根据图12所示的控制方案持续运行。
[0114]
步骤s13:将每一软体肌肉阵列结构的驱动信息输入对应的驱动模块,以使驱动模块按照驱动信息驱动软体肌肉阵列结构,控制软体机器人按照预设路径运行。
[0115]
在本技术实施例,通过图13所示的脉冲宽度调制波对应状态图,进一步阐述驱动模块根据脉冲宽度调制波驱动每一个软体肌肉阵列结构的原理:
[0116]
驱动模块控制的方式是通过单片机产生脉冲宽度调制波,通过连接直流电源的放大模块放大,最终通入驱动模块。使用者可以通过单片机调节产生的脉冲宽度调制波的参
数,如频率,电压,电流,占空比等控制驱动模块的运动速度,运动力,步长等参数。整个控制流程如图13所示:在一个周期中,(1)首先经历脉冲宽度调制波的波谷,此时电路不导通,软体机器人无动作;(2)脉冲宽度调制波到达上升沿,此时电路导通,软体机器人开始发生形变,前腿收缩;(3)脉冲宽度调制波到达波峰,此时软体机器人充分形变,带动后腿收缩向前运动;(4)脉冲宽度调制波到达下降沿,此时软体机器人发热量降低,软体机器人自身的回复力逐渐大于弯曲力;(5)脉冲宽度调制波回到波谷,此时只存在软体机器人自身的回复力,从而软体机器人伸张,引起前腿向前移动,最终实现一个完整单步。重复以上步骤,软体机器人即可连续向前迈步,实现移动。
[0117]
需要说明的是,图13所示的是一个软体肌肉阵列结构的驱动方式,而整个软体机器人的则是利用多个软体肌肉阵列结构通过如图10所示的速度、方向合成方式得到软体机器人的总运动信息。
[0118]
在本技术实施例中,该软体机器人包括若干软体肌肉组成的阵列结构,所述若干阵列结构分别往圆周不同方向延伸,且每一阵列结构由单独的驱动模块驱动,实现冗余控制策略,所述若干阵列结构任意组合产生圆周向不同角度的运动,实现任意轨迹跟踪;所述控制方法,包括:基于预设路径,生成所述软体机器人的运行信息;按照所述软体机器人的运行信息,生成每一软体肌肉阵列结构的驱动信息;将所述每一软体肌肉阵列结构的驱动信息输入对应的驱动模块,以使所述驱动模块按照所述驱动信息驱动所述软体肌肉阵列结构,控制所述软体机器人按照所述预设路径运行。通过上述方式,本技术提供的软体机器人通过独立驱动每一软体肌肉阵列结构,使得软体机器人能够实现多方向、多点、多模态的控制方案。
[0119]
请继续参阅图14,图14是本技术提供的软体机器人的控制方法另一实施例的流程示意图。
[0120]
因为软体机器人不同于刚体机器人,其运动过程中存在挠性的干扰,同时环境的变化也会影响软体机器人的运动,使其运动方向并不总能符合预期,一般软体机器人控制方案不存在纠偏的功能,而本技术配合结构特殊的结构可以在运动过程中实现动态纠偏。纠偏过程如图14和图15所示:
[0121]
如图14所示,本技术实施例的控制方法具体可以包括以下步骤:
[0122]
步骤s21:获取软体机器人的实际路径。
[0123]
步骤s22:计算实际路径和预设路径的误差。
[0124]
在本技术实施例中,软体机器人按预设路径或者预定点位运动后,基于视觉反馈和陀螺仪检测实际路径和预设路径是否产生偏差,并判断是否需要进行调整,若误差在允许范围内,则可以视为无误差。具体判断公式如:
[0125]
e(与目标误差)≤ε(允许误差范围)
[0126]
步骤s23:在误差小于等于允许误差阈值的情况下,继续按照预设路径生成的驱动信息驱动软体机器人运行,直至到达预设路径的终点。
[0127]
在本技术实施例中,如果与目标误差小于规定范围,则判断是否到达终点,到达终点即停止,否则继续移动。
[0128]
步骤s24:在误差大于允许误差阈值的情况下,基于误差计算调整量,利用调整量调整预设路径生成的驱动信息,并按照调整后的驱动信息驱动软体机器人运行。
[0129]
在本技术实施例中,如果与目标误差大于等于规定范围,则进入如图15所示的纠偏整体流程,利用pid(比例、积分、微分)公式控制每一个驱动模块的运行速度,达到控制路径和点位的目的。其中,本技术提供的pid公式如下:
[0130][0131]
其中,k
p
为比例增益;t
t
为积分时间常数;td为微分时间常数;u(t)为pid控制器的输出信号;e(t)为给定值r(t)与测量值之差。
[0132]
具体的控制方式有调节目标电压、电流、频率、占空比等方式,并且完成一次纠偏后计数器加一,无误差后计数器清零。
[0133]
值得注意的是,软体机器人存在某一频率下移动的效率最高的现象,可以视作软体机器人的固有频率,其规律如以下公式所示:
[0134][0135]
其中,f为测量频率,m为质量、ls为长度,k为刚度,e为杨氏模量,i为惯性矩。
[0136]
在如果弹性体长度、记忆合金根数不变,刚度则不变,速度与变形与电压、频率有关,所以其运动规律如以下公式所示:
[0137]
v=δs
×f[0138]
其中,v为运动速度,δs为步长,f为运动频率。
[0139]
如图15所示的纠偏整体流程图,若计数器累加次数超过阈值,将触发自检程序,具体通过传感器检测每个驱动模块的电流以检测电路完整性,若电路完整,将进入避障模式;若电路不完整,将进入冗余替代模式,利用完整的驱动模块代替损坏的进行正常移动。
[0140]
其中,图16所示的纠偏流程中,首先根据接受的信号判断目标速度偏向方向,然后计算目标方向需要调整的速度,若偏移方向驱动模块速度快,则该驱动模块减速。若偏移方向驱动模块速度慢,则另一个方向速度加快,当加速超过极限时,偏移方向速度同时减慢。
[0141]
在本技术实施例中,控制速度主要采用调节频率的方式,在一定的频率范围内,频率与速度呈线性相关,控制频率的pid公式如以下公式所示:
[0142]
v=kf×f[0143][0144]
其中,kf为频率比例常数;k
p
为比例常数;ki为积分常数;kd——微分常数;f(k)为频率pid控制器的输出信号;e(k)为目标值r(k)与测量值之差。
[0145]
由于本技术的控制方案每对驱动模块可以独立控制,并且产生不同的位移方向与速度。可由速度的合成公式得到合速度的大小和方向如以下公式所示,即可达到如图10所示的效果,控制软体机器人移动方向:
[0146][0147]
[0148]
进一步地,软体机器人阵列结构超过3条时,多余的结构可看作冗余结构,这些冗余的模块可以增加软体机器人控制的精确性,同时也可以增加机器人的承载能力。
[0149]
当软体机器人部分模块异常无法正常工作时,冗余结构也可以提供一定的鲁棒性。冗余流程如图17所示,首先根据反馈的驱动模块通断信息,判断具体受损模块。然后计算受损模块临近模块的夹角α,当α小于180
°
时,控制设备将屏蔽受损模块,将程序中的α值更新;当α大于180
°
时,判断为软体机器人无法正常运行,控制设备将会停止软体机器人的运动,等待人工干预。
[0150]
在本技术实施例中,提供了一种软体机器人驱动模块结构的控制方案;能够控制多足之间组合,实现任意多点运动且能够对轨迹进行纠偏,能较为精确地控制,符合实际应用情况;控制方案能够分别控制成对驱动模块,通过调节脉冲宽度调制波的频率,电压等参数改变软体机器人步频,步长,实现多模态运动,能够实现越障,爬坡等功能。
[0151]
以上实施例,仅是对本技术的其中一种常见案例而已,并非对本技术的技术范围做任何限制,故凡是依据本技术方案的实质对以上内容所做的任何细微修改、等同变化或者修饰,均仍属于本技术技术方案的范围内。
[0152]
请继续参见图18,图18是本技术提供的移动机器人的控制设备一实施例的结构示意图。其中,控制设备30包括规划模块31、驱动模块32以及控制模块33。
[0153]
其中,所述规划模块31,用于基于预设路径,生成所述软体机器人的运行信息。
[0154]
所述驱动模块32,用于按照所述软体机器人的运行信息,生成每一软体肌肉阵列结构的驱动信息。
[0155]
所述控制模块33,用于将所述每一软体肌肉阵列结构的驱动信息输入对应的驱动模块,以使所述驱动模块按照所述驱动信息驱动所述软体肌肉阵列结构,控制所述软体机器人按照所述预设路径运行。
[0156]
请继续参见图18,图18是本技术提供的移动机器人的控制设备另一实施例的结构示意图。本技术实施例的控制设备500包括处理器51、存储器52、输入输出设备53以及总线54。
[0157]
该处理器51、存储器52、输入输出设备53分别与总线54相连,该存储器52中存储有程序数据,处理器51用于执行程序数据以实现上述实施例所述的控制方法。
[0158]
在本技术实施例中,处理器51还可以称为cpu(central processing unit,中央处理单元)。处理器51可能是一种集成电路芯片,具有信号的处理能力。处理器51还可以是通用处理器、数字信号处理器(dsp,digital signal process)、专用集成电路(asic,application specific integrated circuit)、现场可编程门阵列(fpga,field programmable gate array)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器51也可以是任何常规的处理器等。
[0159]
本技术还提供一种计算机存储介质,请继续参阅图19,图19是本技术提供的计算机存储介质一实施例的结构示意图,该计算机存储介质600中存储有程序数据61,该程序数据61在被处理器执行时,用以实现上述实施例的控制方法。
[0160]
本技术的实施例以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现
出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0161]
以上所述仅为本技术的实施例,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
技术特征:1.一种软体机器人的控制方法,其特征在于,所述软体机器人包括若干软体肌肉组成的阵列结构,所述若干阵列结构分别往圆周不同方向延伸,且每一阵列结构由单独的驱动模块驱动,实现冗余控制策略,所述若干阵列结构任意组合产生圆周向不同角度的运动,实现任意轨迹跟踪;所述控制方法,包括:基于预设路径,生成所述软体机器人的运行信息;按照所述软体机器人的运行信息,生成每一软体肌肉阵列结构的驱动信息;将所述每一软体肌肉阵列结构的驱动信息输入对应的驱动模块,以使所述驱动模块按照所述驱动信息驱动所述软体肌肉阵列结构,控制所述软体机器人按照所述预设路径运行。2.根据权利要求1所述的控制方法,其特征在于,所述控制方法,还包括:获取所述软体机器人的实际路径;计算所述实际路径和所述预设路径的误差;在所述误差小于等于允许误差阈值的情况下,继续按照所述预设路径生成的驱动信息驱动所述软体机器人运行,直至到达所述预设路径的终点;在所述误差大于所述允许误差阈值的情况下,基于所述误差计算调整量,利用所述调整量调整所述预设路径生成的驱动信息,并按照调整后的驱动信息驱动所述软体机器人运行。3.根据权利要求2所述的控制方法,其特征在于,所述基于所述误差计算调整量,利用所述调整量调整所述预设路径生成的驱动信息,包括:将所述误差输入预设频率控制器,获取所述预设频率控制器输出的频率调整量;基于所述频率调整量,获取速度调整量;利用所述速度调整量调整所述预设路径生成的驱动信息。4.根据权利要求2所述的控制方法,其特征在于,所述控制方法还包括:在所述误差大于所述允许误差阈值的情况下,将计数器累加次数加1;监测所述计数器累加次数是否达到预设次数阈值;若是,检测每个驱动模块的电流,确认每个驱动模块的电路完整性,并将电路不完整的驱动模块标记为异常驱动模块。5.根据权利要求4所述的控制方法,其特征在于,所述控制方法还包括:获取所述软体机器人中正常驱动模块的数量;在所述正常驱动模块的数量大于等于预设数量阈值的情况下,继续驱动所述软体机器人;在所述正常驱动模块的数量小于预设数量阈值的情况下,停止所述软体机器人的运行。6.根据权利要求5所述的控制方法,其特征在于,
所述控制方法还包括:在所述正常驱动模块的数量大于等于预设数量阈值的情况下,获取异常驱动模块与其相邻的正常驱动模块的夹角;在所述夹角小于等于预设夹角阈值的情况下,屏蔽所述异常驱动模块;在所述夹角大于预设夹角阈值的情况下,停止所述软体机器人的运行。7.根据权利要求4所述的控制方法,其特征在于,所述控制方法还包括:在所述误差小于所述允许误差阈值的情况下,重置所述计数器。8.根据权利要求1所述的控制方法,其特征在于,所述驱动信息为单片机生成的脉冲宽度调制波;所述将所述每一软体肌肉阵列结构的驱动信息输入对应的驱动模块之前,所述控制方法还包括:利用场效应管放大所述脉冲宽度调制波。9.根据权利要求8所述的控制方法,其特征在于,所述脉冲宽度调制波依次包括:波谷、上升沿、波峰、下降沿、波谷;所述按照所述驱动信息驱动所述软体肌肉阵列结构,包括:按照所述脉冲宽度调制波的上升沿波段驱动所述软体肌肉阵列结构的前腿收缩;按照所述脉冲宽度调制波的波峰波段驱动所述软体肌肉阵列结构的后腿收缩向前运动;按照所述脉冲宽度调制波的波谷波段驱动所述软体肌肉阵列结构的前腿向前移动。10.一种软体机器人的控制设备,其特征在于,所述控制设备包括:规划模块、驱动模块以及控制模块,其中;所述规划模块,用于基于预设路径,生成所述软体机器人的运行信息;所述驱动模块,用于按照所述软体机器人的运行信息,生成每一软体肌肉阵列结构的驱动信息;所述控制模块,用于将所述每一软体肌肉阵列结构的驱动信息输入对应的驱动模块,以使所述驱动模块按照所述驱动信息驱动所述软体肌肉阵列结构,控制所述软体机器人按照所述预设路径运行。11.一种软体机器人的控制设备,其特征在于,所述控制设备包括存储器以及与所述存储器耦接的处理器;其中,所述存储器用于存储程序数据,所述处理器用于执行所述程序数据以实现如权利要求1~9任一项所述的控制方法。12.一种计算机存储介质,其特征在于,所述计算机存储介质用于存储程序数据,所述程序数据在被计算机执行时,用以实现如权利要求1~9任一项所述的控制方法。
技术总结本申请公开了一种软体机器人的控制方法、设备以及计算机存储介质,每一阵列结构由单独的驱动模块驱动,实现冗余控制策略,若干阵列结构任意组合产生圆周向不同角度的运动,实现任意轨迹跟踪;控制方法,包括:基于预设路径,生成软体机器人的运行信息;按照软体机器人的运行信息,生成每一软体肌肉阵列结构的驱动信息;将每一软体肌肉阵列结构的驱动信息输入对应的驱动模块,以使驱动模块按照驱动信息驱动软体肌肉阵列结构,控制软体机器人按照预设路径运行。通过上述方式,本申请提供的软体机器人通过独立驱动每一软体肌肉阵列结构,使得软体机器人能够实现多方向、多点、多模态的控制方案,能够有效实现自动避障等功能。能够有效实现自动避障等功能。能够有效实现自动避障等功能。
技术研发人员:尚万峰 黄文强 李宇璐 刘凡
受保护的技术使用者:中国科学院深圳先进技术研究院
技术研发日:2022.07.12
技术公布日:2022/11/1