您的位置:首页 > 编程语言 > Go语言

ROS机器人Diego 1#制作总结

2017-03-17 11:52 656 查看
由于树莓派本身的运算能力限制,Diego 1#的制作到上一篇博文应该算是一个里程碑了,后续将基于新的硬件进行开发制作Diego 1# plus,重点会在图像处理上,笔者曾经尝试使用树莓派来做,但经过多次反复试验,即使跑一个人脸识别的代码,树莓派的CPU使用率都在80%上以上,无奈想玩更高级的东西,就的升级硬件了。本文做为一个阶段性的总结,就把Diego 1#制作过程中走过的坑说明下:

1.底盘

Diego1#所使用的底盘,总的来说满足一般机器小车的要求,但也有些不足之处:

a. 动力不足:最大速度只能在0.2m/s,这个是PID输出已经是最大值255了。

b. 稳定性不足:因为需要使用PID对两个电机进行调速,但即使这次调好了,可以走直线,关掉电源,重新打开,可能就又走不了直线了。

c. 通过性不足:原来选用这款底盘,本来是看重通过性的,但实际使用过程中发现通过小台阶的时候非常容易打滑,不管是熟料履带,和金属履带都存在同样的问题。

笔者倒是不准备更换底盘,只是有想法更换驱动马达,大家有什么用的比较好的也可要推荐。

2.树莓派3b

树莓派3b可以说是一个非常适合初学者使用的主板,可以在上面安装Ubuntu 16.04,并且按照Ros kinetic完整版本,对应一般的运动控制器计算能力已经足够,完成基于激光雷达的SLAM,语音识别,都不在话下,但是一旦使用到图像视频处理,就基本上非常卡了,更不用说基于深度相机的SLAM,图像识别,根本就跑不起来了,所以大家要想做图像处理,就不要去踩这个坑了。

3.Arduino UNO

Arduino UNO作为执行层面的控制器,性能已经足够,在Diego1#中都还没有发挥它性能。

4.电源

电源部分一定要把控制和动力电源分开,树莓派使用一般的18650+3A输出的降压模块就可以了,但是机械臂的控制是对电流要求比较高,现在Diego1#中使用7个舵机,虽然舵机标的是每个0.5A的电流,但一旦有堵转电流就直线上升,笔者使用了6A 12V输出的18650电池+10A输出的降压模块,才能保证其在抓取比较轻的物体情况下正常使用,如果电流不足则会出现机械臂乱动不受控制的现象。

5.机械臂

机械臂只是一个模型而已,控制精度就不要要求了,只要能按照控制逻辑动起来就可以了。

总的来说,要想学习ROS机器人,就是要多动手,自己做,会学的很快。

另外后续的文章将重点在个人网站www.diegorobot.com上更新。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐