项目研究意义:
在户外勘探领域(以下以三维扫描重建为例),设备的架设往往需要大量的人力物力。如平整地面、建设三脚架、调平三脚架。工作虽然简单,但是在三维扫描等需要大量点位、多次架设的场景中,这些工作可就是不是那么简单就能完成的了。
在这些重复性较多、体力劳动大的场景中,应用自动控制的方式,简化工作、代替人们的劳动,将是一件既有意义又有价值的事情。
于是,我们针对野外勘测过程中,架设勘测设备的场景,针对性的开发了本机器人。它能够通过传感器的测量下,不断修正姿态、各足压力,使得测量平台能够达到自稳的效果。
总体思路:
在自动控制原理中,反馈是贯穿始终最重要的事,引用好反馈能够让我们的设计在外部的扰动下依然能够有着较为理想的输出效果。于是我们的设计方案:
1)选用MPU6050六轴陀螺仪传感器为反馈的引入器件,采用RVSC-V架构的织女星作为主控,并使用20KG舵机作为输出,这样,我们就构成了最初的输入输出反馈调节系统。
2)接下来我们又着手设计了机器人的本体部分。利用平面四杆机构的特性,我们设计了最为主要的调平机构——伸缩足。
3)
再利用舵机的尺寸、标准件,设计出各个运动部件的结构。
4)考虑到行进过程中的测量测绘。我们还必须让平台可移动,于是我们加装四轮,采用差速转弯的方式。
5)在三维软件中设计出机器人的原型,运动仿真看是否通过。
工作过程:
其工作过程是织女星开发板读取MPU6050数据后处理得到平台的四元数(俯仰角、横滚角、方向角、加速度值)根据计算处理得到的数据,控制舵机(伸缩足的原动机)转动,使得伸缩足能够上下移动。上下移动产生的反作用力,将促使机器人平台往相应的方向偏转角度。如需特定角度,则需要各足紧密配合,才能达到。为使得四轮贴合地面,并各足压力均衡,又需要引入压力传感器作为力反馈,再用织女星开发板读取压力传感器数值,平衡计算后再控制舵机转动,达到压力平衡的目的。
软件算法的设计:
首先,确定机器人本体的平面的姿态是所需引入、控制的物理量,姿态的获取是通过MPU6050的DMP数字融合处理器获取,这样的好处是利用MPU6050本身自带的高速数字处理器计算传感器的姿态,节约了MCU的运算资源,提高了系统的实时性。得到传感器的输入数据后,进一步的滤波、处理,获得所需要的俯仰角、横滚角、航向角、与加速度值,此时,即可进行经典的PID算法的运算,将获取的数据首先与预期目标姿态做差,即可得到俯仰角的差值a,横滚角的差值b,航向角的差值c;先取a,b作为平衡算法的最重要的数值存储,分别乘以比例系数Kp,得到比例环,积分环是a,b的求和乘以Ki(PID经过离散处理),微分环是本次差值与上次差值的差乘以Kd,于是可以在两个自由度的方向建立PID闭环调节。但是,执行部件并不像云台的结构那样,每一个电机分管一个自由度,所以,四个足需配合协调算法,才能够调整单自由度、双自由度。
在实现上述算法后,其机器人的基本功能就已经可以实现,但是在该系统中,如何保证系统相应快速、却不发生震荡,需要合适的参数保证。在上述系统中,即可实现机器人在复杂路面的平衡,但是,只有上述的算法,还是不够,因为四轮的受力大小分布不均,导致可能存在某一轮悬空,造成机器人的不稳定情况。鉴于这种情况,我们又引入了压力传感器作为输入,还是舵机作为输出,这样,再一次通过PID算法(细节同上,不再赘述),形成闭环调节。在实现了平衡的基础上,进一步调节舵机的角度,使得四轮压力均衡。
最后,辅以无线通讯,与遥控装置相连接,进行数据传送。实物机器人在路面不平的情况下,做到自主调整伸缩足的伸缩量,以达到平台的平衡。
如需视频、图片等了解,请回复。目前本项目在STM32上完全运行通过,正打算移植到织女星开发板上。敬请期待。。