ros第二天

342 阅读1分钟

一,新建一个package

catkin_create_pkg test2 roscpp rospy std_msgs nav_msgs
roscpp:c++相关依赖
rospy :python相关依赖
std_msgs: 通讯相关依赖
nav_msgs: 导航相关依赖

二,git clone

cd catkin_ws/src
git clone https://github.com/DroidAITech/ROS-Academy-for-Beginners.git

三,Metapackage

Metapackage是一个虚包,像sudo apt-get install ros-kinectic-desktop-full 就是一个虚包,里面没有什么实际性的内容。但是它依赖里很多其他的软件包 

stack

软件包集,是旧版的。现在用metapackage代替。
例如:https://github.com/ros-planning/navigation

通讯架构(计算图级)

master节点管理器

1,每个node启动时都要向master注册
2,管理node之间的通讯,node之间可以点对点进行通讯

$ roscore  启动ros master 节点管理器
            rosout  日志输出
            parameter server 参数服务器

node(动态)

ros的进程,pkg里可执行文件(静态)运行的实例

$ rosrun [pkg_name] [node_name] 启动一个node
$ rosnode list 列出当前运行的node信息
$ rosnode info [node_name]显示某个node的详细信息
$ rosnode kill [node_name]结束某个node
roslauch
$roslaunch [pkg_name] [filename.launch] 启动launch和多个node