站点图标 AI技术聚合

机器人操作系统ROS浅析

机器人操作系统ROS浅析

一、ROS简介

ROS是Robot Operating System的缩写,原本是斯坦福大学的一个机器人项目,后来由Willow Garage公司发展,目前由OSRF(Open Source Robotics Foundation, Inc)公司维护的开源项目。ROS就像手机界的安卓,电脑中的微软;ROS虽然叫操作系统,但是真正底层的任务调度、编译、寻址等任务还是由Linux操作系统完成,也就是ROS充其量是一个运行在Linux上的次级操作系统。

可以看某公司对ROS机器人算法工程师的要求:
(1)有机器人导航算法工作经验
(2)熟练掌握Slam机器人导航,实现建图、定位等功能;
(3)熟练使用ROS框架操控;
(4)熟练Linux系统、python和C++;
(5)扎实的数学功底。

ROS是一个操作系统
根据wikipedia定义,OS is system software that manages computer hardware and software resources and provides common services for computer programs。

学习路径

ROS主要编程语言是C++和python。
(1)ROS官方文档:http://wiki.ros.org/ROS/Tutorials
(2)中文版ROS教程:http://wiki.ros.org/cn/ROS/Tutorials(初级学前20讲)
(3)大佬的ROS学习笔记
(4)中科院ROS入门课程
(5)补充中。

三、ROS的核心概念

3.1 ROS是一种跨平台模块化软件通讯机制

ROS用节点(Node)的概念表示一个应用程序,不同node之间通过事先定义好格式的消息(Topic),服务(Service),动作(Action)来实现连接。

(1)节点Node——执行单元

(2)节点管理器 (ROS Master)—— 控制中心

3.2 话题通信

3.2 服务通信

服务(Service)—— 同步通信机制

3.3 文件系统

Reference

[1] https://www.cnblogs.com/qqfly/p/5851382.html
[2] ROS入门:https://zhuanlan.zhihu.com/p/26007106

版权声明:本文为博主山顶夕景原创文章,版权归属原作者,如果侵权,请联系我们删除!

原文链接:https://blog.csdn.net/qq_35812205/article/details/123053556

退出移动版