电子说
作者是UCLA RoMeLa实验室在读博士生—沈骏杰,目前研究方向涉及机器人规划和控制。本文将分享他们在ICRA'20上的最新的工作:一种全新的自平衡全向独轮车(OmBURo),它采用一种全新的主动式全向轮机构AOW。这种全向轮的设计能够使得单一轮式机构同时具有纵向和横向的主动式移动能力,因此OmBURo能够做到在平面仅靠独轮保持平衡,进而在任意时刻能够向任意方向移动。
一、引 言
我们认为应用在空间狭小、人群密集环境中的机器人移动装置,需要做到以下几点:首先它的空间占有量需要小;其次它需要能做到全方向移动;最后它需要移动灵活,能够快速避障。
基于此,我们研发了OmBURo (Omnidirectional Balancing Unicycle Robot) ,一种全新的自平衡全向独轮车。目前已知的类似于OmBURo的机器人移动装置包括Segway两轮自平衡车,但它无法做到直接的横向移动(若需右行先得自转);老式的独轮车(使用类似反作用轮机构保持横向平衡)也无法做到全方向移动;Ballbot(以球代轮)和本田公司研发的U3-X可以做到以上三点,但我们认为摩擦传动会限制它们的使用环境和寿命。
二、OmBURo样机简介
OmBURo样机主要部件有实验室研发的主动式全向轮AOW (Active Omnidirectional Wheel),两个Dynamixel MX-64伺服电机(配有编码器),惯性测量单元(IMU),Arduino控制器以及锂电池。
区别于普通全向轮完全不受控制的从动轮,AOW使用斜齿轮组机构驱动其中部分,剩余由软轴 (flexible shaft) 连动,如上图所示。这样做的目的是为了减少齿轮损耗的同时减轻自身重量和转动惯量,以便取得更好的机动性。
三、建 模
省略掉枯燥繁琐的系统性数学建模,值得一提的是动力学模型在平衡点(OmBURo身体竖直,角度和角速度都为零)的附近基本上是线性的,如下图所示。这也解释了为何使用简单的线性控制器(基于线性化后的模型)对于类似自平衡移动机器人,就能有很好的平衡性能。
四、控制器
刚才提到线性控制器,对于类似自平衡系统可能已经足够,但此结论是基于传感器可以提供准确读数的情况下,或者说,可以提供与模型状态变量一致的测量数据,而这一假设在现实中,基本无法实现,这也是为什么我们需要状态估计 (state estimation) 的原因。
举个例子,我们的状态变量包括身体的角度,模型的角度θa是对于质心的(因为当θa为零时OmBURo才能平衡),而实际读取到的角度θm,由于IMU装配误差和自身偏差,可能没有任何物理意义(你也不知道它测量的到底是啥),当然这两个角度实际上不会差很多,但对于自平衡移动机器人,一点点误差也是致命的。
幸运的是,对于这类自平衡移动机器人,相比复杂的状态估计,我们有一个更加便捷的方法处理这一问题。我们首先可以以θm读数为基准设计控制器,如果目标是OmBURo速度为零原地平衡,但结果是它持续往某一方向(比如向右)移动的话,那我们则可知需要向反方向(比如向左)调整θm读数,调整的大小可基于OmBURo的移动距离以及速度,反之亦然。综上,我们设计的控制器如下图所示,包含一个基于模型的LQR控制器(用于追踪参考速度)以及一个用于调整角度读数的PI控制器。
五、实验结果
基于以上OmBURo样机以及控制器设计,我们成功完成了一系列实验测试,包括原地自平衡、自抗扰、速度跟踪、路径跟随、甚至斜坡平衡。
责任编辑:xj
全部0条评论
快来发表一下你的评论吧 !