双足行走机器人步态与稳定性研究
2022-05-24叶天迟时岩松
李 卓,叶天迟,时岩松
(吉林工程技术师范学院,吉林 长春 130052)
在如今这个人工智能的时代,随着电子、传感器、通信、以及控制等方面技术的发展,越来越多种类的机器人进入到人类的生产生活中。固定式机器人与移动式机器人的区别在于二者的结构以及功能不同。本文涉及到的双足行走机器人属于移动式机器人。其相较于其他移动方式的机器人来说,他可以实现在坑洼路面行走,并且功耗消耗较小。
本次课题的目标是实现双足行走机器人步态稳定控制。设计了双足行走机器人步态稳定控制系统,研究了双足行走机器人的姿态算法和稳定性判据。即使机器人能够稳定进行快速动态步行,又使机器人在受到干扰时可以进行自身姿态调节。
一、步态稳定控制系统
双足行走机器人是机器人技术的一个制高点,其作为模仿人类行走方式的一种机器人,它的灵活性和运动能力都很突出,它可以在地面条件恶劣的环境下进行移动,适应性强。机器人步态稳定控制系统决定着双足行走机器人性能的好坏,因此,机器人的步态稳定控制系统要满足以下几个要求:
一是集成度较高的控制系统;二是数据处理的能力要非常高效;三是要采用更加便于扩展和修复的模块;四是当系统某一模块发生故障时不影响其他模块工作,即系统的鲁棒性要高;五是要有便于连接的接口,方便进行系统的升级和维护。
(一)总体方案设计
机器人步态稳定控制系统分为以下几个部分:主控板、舵机模块、平衡调节模块、通信模块、上位机、电源模块。整个控制系统如图1所示。
图1 系统总体框图
(二)硬件电路设计
系统硬件电路主要包括主控电路、舵机控制电路、传感器电路、电源电路等。选择的控制器是STM32F103RBT6,舵机选用的是LDX-218数字舵机和LDX-227数字舵机。当舵机控制板接收到主控板发送的各个舵机角度、转动时间等信息后,将其转化为PWM脉冲信号,然后将PWM脉冲信号传输给舵机,舵机旋转至相应角度。传感器电路选用六轴传感器MPU6050获取机器人在空间中的位置姿态信息,然后通过IIC总线将数据传输给主控器。这样设计能够对双足行走机器人进行实时的姿态检测,并且使双足行走机器人具有重力感应功能,能够在扰动下实现自身平衡,实时监测机器人在空间中的位置姿态信息以及加速度。
(三)软件系统设计
1.软件系统总体设计。系统初始化完成后,位置姿态转检测程序启动,对机器人在运动过程中的位置自姿态信息进行检测,检测到的信息通过IIC总线传送给主控板。主控板利用姿态解算算法进行姿态解算,根据稳定性判据查询其是否处于稳定状态。如果处于稳定状态,主控制板将发送动作指令给舵机控制板,舵机控制板与主控板通过串口进行通信。如果舵机控制板与主控板成功通信,则舵机控制板执行动作指令,控制舵机进行转动,从而将动作指令执行完毕。动作指令执行完毕一次后将周期性重复进行。如果不处于稳定状态,将自动对其步态的参数进行调整,调整完毕后会出现调整标志,如果调整标志有效,则表示机器人已经重新恢复稳定状态。主控制板将调整后的步态参数传送给舵机控制板。然后舵机控制板执行动作指令控制舵机转动完成动作。动作完成一次后进行周期性重复。
2.RCG姿态解算算法。在RCG姿态解算算法中,角度数据φ是通过将陀螺仪采集到的角速度进行积分变换得到的。将角速度发送到卡尔曼滤波器进行求解是为了更好地清除计算中的总偏差,然后获得更准确的角度数据。根据加速度计采集的加速度通过去重力分量和方向余弦矩阵处理得到的加速度来表示机器人本身的加速度。最后,将角速度,角度和加速度用作机器人的步态参数信息输入到机器人的主控板中。将角速度送入卡尔曼滤波器进行处理是为了消除计算中的累计的误差,从而得到更加精确的角度数据。机器人自身的加速度是通过将加速度计采集到的加速度经过去重力分量和方向余弦矩阵处理得到的。最后,角速度、角度、加速度共同作为机器人空间位置姿态信息输入机器人主控制器。
3.ZMP稳定性判据。ZMP稳定性判据的主要内容是:机器人行走时,零力矩点始终在支撑多边形内,水平翻弯扭矩为零,则机器人处于稳定状态。为了更好地避免ZMP位于支撑多边形边界上的情况,通常将距支撑多边形边界一定距离用作稳定裕度。在整个行走过程中,机器人的ZMP点会随着时间不断变化位置。稳定性裕度定义为从ZMP点到支撑表面边缘的最短路径。如果ZMP点落在支撑的平行表面上,则稳定裕度为正,机器人状态稳定,否则稳定裕度为负,行走不稳定。
二、虚拟样机仿真实验与结果分析
(一)虚拟样机的建立
根据simulink中的整体步态规划来构建控制系统实体模型。ADAMS提供了机器人的3D模型、运动学、动力学模型和动画仿真;Matlab提供控制算法并输出每个舵机的旋转角度。根据ADAMS/Controls提供的接口,Matlab将舵机的控制命令传递给ADAMS。ADAMS会将反映虚拟样机的虚拟传感器的信息内容实时反馈到Matlab,并生成闭环控制系统。并在ADMAS中,通过数据、绘图和动画显示和保存结果。
(二)机器人上楼梯仿真实验
在此处的系统软件中,机器人高约35厘米,每步高约1厘米,步行周期为90秒。首先,右腿是支撑腿,左腿是摇摆腿,然后重心移到左脚。在此,整个过程都使用机器人手臂的摇晃使重心发生移动并调整了整体平衡,然后第一步成功,图2显示了虚拟样机左、右腿上楼梯的动作序列。
图2 机器人迈右腿、迈左腿动作序列
使用ADAMS的内置ADAMS / PostProcessor控制模块,模拟机器人的虚拟样机质心和踝关节上的支撑点在3D空间中的运动轨迹。为了更好地观察和分析每个方向机器人的运动状态,将ADAMS数据信息导出到Matlab,从而生成x、y和z方向的步行轨迹。左脚踝的轨迹如图3所示。
图3 左脚踝运动轨迹
机器人主体的轨迹沿x轴规则变化。y轴和z轴方向之间的偏差稳定且有所改善,并且有轻微的振动。一方面,机器人本身必须稳定,并且根据调整后的姿势可以提高整个步行过程的整体可靠性。另一方面,机器人脚底和地板的材料都设置为刚体,即虚拟样机的脚底与路面碰撞后,外观和尺寸保持不变。并且肯定了刚体在现实生活中实际上并不可用,它们只是一个理想化的概念模型。由于所有物体在受到力作用后都会或多或少地变形,因此在物理原型中,机器人脚底的轻微变形可以起到调节作用,从而提高行走的稳定性。
三、机器人步态稳定系统测试与分析
为了检测机器人在正常行走时突然受到外力干扰打破原来稳定状态后能否很迅速地进行姿态调整,设计进行了直立行走状态下的外力干扰实验。
机器人从站立状态进入向前行走状态,然后受到外力干扰失去稳定状态。当步态稳定控制系统检测到姿势变化时,进行姿势调整。调整完成后,恢复稳定状态,最后恢复站立状态。根据图4中数据,可以看出,使用RCG姿态解算算法进行步态稳定控制,能够及时检测到机器人的姿态变化并且迅速进行调节,恢复稳定状态。
图4 角度数据变化图
机器人上楼梯实验的测试成功的验证了本次步态稳定控制系统的有效性,紧接着又进行了平坦路面直立行走实验、研究加速度参量作用实验、直立行走状态下的外力干扰实验三个实验,测试了RCG姿态解算算法修正机器人步态偏差的能力。实验结果有力地证实了RCG姿态解算算法能够及时修正姿态偏差,具有较高的可靠性和可行性,也充分的体现了本次设计的步态稳定控制系统的性能是良好的。
四、总结
在机器人步态稳定控制系统为了更好地提高解决不平衡情况的机器人的时效性,明确提出了一种消除重力分量的机器人姿态控制优化算法—RCG姿态算法,数据处理方法在整个过程中都使用加速度传感器和卡尔曼滤波修正角度偏差。并使用定向余弦矩阵将机器人传感器的平面坐标下的数据信息转换至世界坐标系下。
使用ADAMS进行即时动态模型仿真,构建MATLAB和ADAMS协同仿真服务平台,在两个仿真软件之间建立桥梁,完成所有测试阶段的闭环控制结构,并在协作仿真模拟服务平台下进行机器人在总体步态计划模式下的运动,转换成相关曲线,从而比较总体步态实际效果。最终进行测试,证明系统采用的方法可以提高机器人对不平衡情况的响应速度和准确性。