欢迎来到天天文库
浏览记录
ID:28130891
大小:965.50 KB
页数:18页
时间:2018-12-08
《自制平衡机器人详细教程.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、自制平衡机器人详细教程 编者注:本项目编译自Makezine,来自3DRobotics设计主管JasonShort。Makezine将本项目的难度定位为:VeryDifficult(非常难),够自信你也来挑战一下吧! 想要提高自己的机器人制作水平吗?那你可来对地方了。今天我们的主角ArduRoller就是一台可以自动平衡的倒立摆机器人,此外它还拥有室内外自主导航的能力。这台非传统车辆可以快速自主通过一系列障碍、转角、崎岖路面,水桶和斜坡等对它来说都小菜一碟。此外,它也是我在一年一度的SparkFun无人驾驶车辆竞赛中的参赛作品。
2、 首先,我选择了来自3DRobotics的APM2.5多模式自动控制系统,因为它集成了几乎所有机器人所需的传感器。此外,它构造简单,开源,而且相关软件免费,ArduPilot系统也较为成熟。对于刚上手智能机器人的人来说,这绝对是个好平台。 这款自动平衡机器人采用惯性测量装置(IMU)作为核心,该装置包括三轴速率陀螺,加速度计和磁力计,共计九个传感器,总采样速率可以达到千次∕秒,此外它还采用了方向余弦矩阵算法(DCM),其搭载的数学滤波器则可更好地利用每个传感器的性能。该机器人还搭载了更高级别的代码,这样就可快速计算出机器人的实时状态
3、(角度和转速等),以更好的保持平衡。 怎样能使机器人保持平衡? 倒立摆平衡机器人的内在特点决定了它其实是不稳定的,不过高重心的优势却给它创造了一个很大的惯性矩,从而放缓了它倾斜的速度。在操作中我们就可以利用这一特性,不断移动轮子来抵消这部分倾斜所产生的力,以保持机器人的平衡。 机器人内置软件中的一个简单的PID回路负责控制它的平衡: 比例项会探测到机器人倾斜的角度误差,随后便会换算出来回传给电机,电机就可以控制轮子来抵消这部分力,从而保持平衡。 积分项和上面的原理类似,不过它搜集的是所有角度误差的总和,从而解决重心问题。
4、 相比前两项,微分项更加关键,少了它我们就无法控制机器人的加减速。 让它动起来 随后,这个简单的机器人就可以开始动起来了。不过平衡没能保持多久,它就因为不断加速而摔倒了。如果在过程中机器人试图调整姿态,那么它就无法继续前行了。 所以我们只好采用垂直滚动的方法来保持前进。首先,要让轮子的旋转保持一个合理的速度,这样才能产生足够抵消机器人倾斜的力。然后,在机器人角度快速变化时再提供一个补偿力,以保持它的稳定。这一算法来自于对人类的观察研究,因为人在受外力推挤时会努力保持平衡。举例来说,足球运动员在碰撞时就会收腿并倾斜身体来保持平衡。
5、 以上两点是机器人平衡算法的关键,只有这样机器人才能走的更顺,走的更远。 自主导航 想要实现自主导航,我们要精确计算出机器人所在方位和其目的地。GPS很有用,但其精度只有几米,而机器人需要的是精确到厘米的定位准确度。 轮式编码器则可将精度提高到毫米级,同时也对GPS起到了很好的辅助。来自Pololu公司的电机则搭载了可选的霍尔效应传感器,让它可以这样工作:小型磁铁旋转着掠过传感器,这样就可以计算出车轮的速度。机器人搭载的ArduinoProMini也很强大,它可以读取来自编码器的每秒数千次的脉冲,然后将这些数据通过I2C接口传
6、送给自动驾驶系统。只要知道了轮子的半径,机器人就可计算出行走的速度和里程。此外,机器人知道自己的前进方向,这样它就可以在二维空间里精确的给自己定位。GPS在整个过程中反而扮演了辅助的角色,它只要保证机器人能精确的执行这一系列动作就行。 如果在行驶中被卡住,机器人也能感觉到,它会倒转轮子行驶并稍微右转再次进行尝试。 机器人的其它控制软件,包括路径导航系统,基本都是ArduCopter上的改进版,这样我们就站在了前人的肩膀上,省下了大量的精力和时间。 别墨迹了,快自己装一个吧,3-5个小时就能搞定,总花费大约在400到500美元。下面
7、我会列出详细的装配步骤。 第一步:准备好所有零件 Pololu有刷直流电机已经装上了编码器,此外,一个34:1的齿轮减速装置有助于提高电机的扭矩。 加装了编码器的轮胎可以完美适配4毫米的电机轴,粗犷的轮胎还可以提升机器人的越野能力,并在行进中吸收多余震动。 第二步:用3d打印机制造机身 你可以在这里找到用于3D打印的技术文档,在打印过程中我使用了MakerBotReplicator2X3D打印机。 第三步:安装电机 将电机装进刚刚打印出的机身中,虽然它机身挺贴合,但我还是加了点热熔胶。 第四步:连接各电子元器
8、件 将APM控制系统与电机端罩、逻辑电平转换器和ArduinoMini按电路图(原大图)依次连接起来。 将GPS模块和无线电遥测设备连接起来,以便机器人进行自主操作。 手动操控机器人与你的R/
此文档下载收益归作者所有