ROS安装及基础教程
趁着考完试有几天空闲时间,学习一下ROS(机器人操作系统),主要参考教程为官网的Tutorials和ROS_by_example_indigo 这本书。这本书写的很好,从ROS安装以及如何应用ROS到自己的机器人上实现路径规划,避障,SLAM等算法有深入浅出的讲解。这一系列blog主要围绕这本书的学习流程来写,一是总结纪录,二是与同学者共享。
- 为什么要用ROS
- ROS的版本及安装
- 下一步
1.为什么要用ROS
就拿一个简单的跟随机器人来说,我之前的做法是从下位机的电机驱动,传感器驱动,到上位机Kinect驱动,图像处理等都是整体设计,除了扩展性很差,而且不易调试。但是ROS的思想是模块化,电机驱动,传感器驱动,控制算法,图像处理等都是ROS的一个Node(节点),通过Node publish(发布)和subscribe(订阅)消息相互通信,Camera Node负责采集处理图像;Follow Node负责处理图像(用OpenCV或PCL等)找到最近的人,并决定下一步机器人的速度及方向,MoveBase Node负责监听控制命令,收到速度和方向消息后发布相应的指令控制电机。再通过一个launch文件将这些节点组织起来,启动机器人。在很多不同的机器人里面,有些Node都是可以共用的,提高了扩展性。
而且ROS提供了很强大的仿真工具RViz, 可以把