ROS系列(二)-常用命令和工具
一、新建工作空间
1、 创建工作空间,注意安装时创建catkin_ws是安装官方功能包用的,其他可以自己命名,不要与自己包搞混,catkin是ROS编译工具,node是可执行进程,在其上面设置
创建工作空间
//分开建可能有错
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace
编译工作空间
cd ~/catkin_ws/
catkin_make
//产生install
catkin_make install
设置环境变量:设置之后才能让系统找到工作空间和环境变量
//激活自己的工作空间
source devel/setup.bash
检查环境变量,确保已生效
//可省略
echo $ROS_PACKAGE_PATH
2、 创建功能包,
创建功能包,可以将功能包创建于src文件夹的空目录下
cd ~/catkin_ws/src
catkin_create_pkg pkg_name roscpp rospy std_msgs geometry_msgs message_generation message_runtime sensor_msgs nav_msgs cv_bridge
编译功能包
cd ~/catkin_ws
catkin_make
source devel/setup.bash
二、常用命令和工具
1、多机通信:主从机上设置如下
#主机
export ROS_MASTER_URI=http://[主机ip]:11311
export ROS_HOSTNAME=[主机ip]
export ROS_IP=[主机的ip]
# 从机
export ROS_MASTER_URI=http://[主机ip]:11311
export ROS_HOSTNAME=[本机ip]
# 从机将topic传到主机时需要
export ROS_IP=[主机的ip]
2、rqt
# 显示tf_tree
rosrun rqt_tf_tree rqt_tf_tree
rosrun tf tf_echo [父坐标系] [子坐标系]
3、rosbag
# 记录所有topic
rosbag record -a
# 指定路径和topic,可指定多个topic
rosbag record -O [绝对路径或相对路径文件名].bag /[topic name]
rosbag play -r [倍速] -s [从多少秒开始] --topic [topic name]
4、导航
# 配置参数
rosrun rqt_reconfigure rqt_reconfigure
# map_server
# 保存/map topic
rosrun map_server map_saver -f [filename,不带后缀]
# 回放保存的地图,yaml文件会指定pgm的路径,自动保存相对路径
rosrun map_sever map_sever [filename.yaml]
5、tf
# 发布静态坐标变换
rosrun tf static_transform_publisher name="child_frame_to_parent_frame" args="0 0 0 0 0 0 1 /parent_frame /child_frame 10"
# 显示/tf中坐标之间相对位姿
rosrun tf tf_echo /parent_frame /child_frame
三、ROS使用中遇到问题
1、rviz在使用直尺measure时,若放得太大可能用不了