下载与安装参考
详细介绍如何在ubuntu20.04中安装ROS系统,超快完成安装(最新版教程)_慕羽★的博客-CSDN博客_ros安装
ROS安装--保姆级别教程(干货)_糖水参半的博客-CSDN博客_安装 ros
常用命令与快捷键
打开终端:Ctrl + alt + T
关闭终端:Ctrl + d
自动补全:Tab
切换目录-cd
cd //切换到根目录
cd .. //切换到上级目录
cd ../.. //切换到上两级目录
cd ~ //切换到用户根目录
cd / //切换到根目录
cd dir1/dir2 //切换到指定目录
查看隐藏文件夹:Ctrl + H
结束终端的某个操作:Ctrl + C
启动运行ROS系统前必须的一个指令:roscore
运行某个功能包或某个节点的指令:rosrun + [功能包名] + [代码文件名]
运行某个功能包或某个节点的指令:roslaunch + [功能包名] + [代码文件名]
创建文件
mkdir+[文件名]
打开某个文件: gedit [文件名]
gedit ~/.bashrc 打开配置文件
echo "source ~catkin_ws/devel/setup.bash" >> ~/.bashrc 将环境变量的配置脚本添加到终端的配置文件中
source ~/.bashrc 使修改的配置文件生效
alias oc='cd ~/opencv_ws && catkin_make' //在./bashrc中设置快捷键
安装功能包
sudo apt-get install [功能包名]
创建功能包
catkin_create_pkg [功能包名] [依赖1] [依赖2] [依赖3]...
查看节点与节点之间的信息(基于Qt的可视化工具)
rqt_graph
rosrun rqt_console rqt_console #查看日志信息
rosrun rqt_plot rqt_plot #输入斜杠就会出现相关的话题,从而查看对应的曲线
rosrun rqt_graph rqt_graph #查看节点,话题图
rosrun rqt_tf_tree rqt_tf_tree #查看坐标树
rqt_image_view #显示摄像头图像
rqt #集合了rqt的所有工具
查看话题与消息
rosmg show [信息的名称] #查看话题里面的成员变量
rostopic info /../../
rosrun tf view_frames #将坐标树保存在当前目录下
rosmsg show geometry_msgs/Twist #终端中执行以下指令查看Twist消息的具体内容,它的Topic是/cmd_vel, base controler 订阅Twist消息来控制电机
rostopic echo /cmd_vel #监听速度
echo $ROS_PACKAGE_PATH #查看环境变量
rospack
rospack depends1 beginner_tutorials #查看依赖
rospack depends1 rospy #查看间接依赖(依赖自身的依赖)
rospack depends [package_name] #递归查看功能包所有的嵌套依赖
rospack find [package_name] #查找功能包路径
rosnode
rosnode list #节点列表查看
rosnode ping [node_name] #测试节点连接情况
rosnode info /node_name #查看节点具体信息
rosnode cleanup #清除节点
rosrun
rosrun [package_name] [node_name] #rosrun命令格式
rosrun turtlesim turtlesim_node __name:=my_turtle #重命名节点名称
rosrun rqt_graph rqt_graph #运行rqt节点,图形化显示节点关系
rosrun rqt_plot rqt_plot #qt图形曲线绘制
查看话题
rostopic -h #查看ROStopic子命令帮助
rostopic bw [rostopic_name] #显示话题带宽
rostopic echo [rostopic_name] #查看话题有没有发布出来及详细信息
rostopic hz [rostopic_name] #查看话题发布的频率
rostopic list #查看话题列表
rostopic pub [topic] [msg_type] [args] #发布话题/-1代表发布一次/-r 1 代表以1HZ频率连续发布
rostopic pub -1 /turtle1/cmd_vel geometry_msgs/Twist -- '[1.8, 0.0, 0.0]' '[0.0, 0.0, 1.8]' #让海龟逆时针画个圆
rostopic pub /turtle1/cmd_vel geometry_msgs/Twist -r 1 -- '[2.0, 0.0, 0.0]' '[0.0, 0.0, -1.8]' #让海龟顺时针画个圆
rostopic type [rostopic_name] #显示话题类型
rosmsg show geometry_msgs/Twist #显示话题类型详细信息,geometry_msgs/Twist为话题类型
在同一个标签内的操作
Alt+Up //移动到上面的终端
Alt+Down //移动到下面的终端
Alt+Left //移动到左边的终端
Alt+Right //移动到右边的终端
Ctrl+Shift+O //水平分割终端
Ctrl+Shift+E //垂直分割终端
Ctrl+Shift+Right //在垂直分割的终端中将分割条向右移动
Ctrl+Shift+Left //在垂直分割的终端中将分割条向左移动
Ctrl+Shift+Up //在水平分割的终端中将分割条向上移动
Ctrl+Shift+Down //在水平分割的终端中将分割条向下移动
Ctrl+Shift+S //隐藏/显示滚动条
Ctrl+Shift+F //搜索
Ctrl+Shift+C //复制选中的内容到剪贴板
Ctrl+Shift+V //粘贴剪贴板的内容到此处
Ctrl+Shift+W //关闭当前终端
Ctrl+Shift+Q //退出当前窗口,当前窗口的所有终端都将被关闭
Ctrl+Shift+X //最大化显示当前终端
Ctrl+Shift+Z //最大化显示当前终端并使字体放大
Ctrl+Shift+N or Ctrl+Tab //移动到下一个终端
Ctrl+Shift+P or Ctrl+Shift+Tab //Crtl+Shift+Tab 移动到之前的一个终端
各个标签之间的操作
F11 //全屏开关
Ctrl+Shift+T //打开一个新的标签
Ctrl+PageDown //移动到下一个标签
Ctrl+PageUp //移动到上一个标签
Ctrl+Shift+PageDown //将当前标签与其后一个标签交换位置
Ctrl+Shift+PageUp //将当前标签与其前一个标签交换位置
Ctrl+Plus (+) //增大字体
Ctrl+Minus (-) //减小字体
Ctrl+Zero (0) //恢复字体到原始大小
Ctrl+Shift+R //重置终端状态
Ctrl+Shift+G //重置终端状态并clear屏幕
Super+g //绑定所有的终端,以便向一个输入能够输入到所有的终端
Super+Shift+G //解除绑定
Super+t //绑定当前标签的所有终端,向一个终端输入的内容会自动输入到其他终端
Super+Shift+T //解除绑定
Ctrl+Shift+I //打开一个窗口,新窗口与原来的窗口使用同一个进程
Super+i //打开一个新窗口,新窗口与原来的窗口使用不同的进程
启动rviz
roscore #首先要启动roscore
rosrun rviz rviz
rostopic info +相应的话题 #来获取关于话题的信息,包含订阅者、发布者、消息类型等
rosmsg show +类型 #可以获知消息的结构类型
查看树形结构图
tree
话题记录
rosbag record-a-O cmd_record
记录系统里面所有话题的数据,并保存下来
-a是-all的意思,即记录所有数据
-O是把记录的数据保存为压缩包
cmd_record是文件名
然后,进行操作(如对小海龟进行键盘控制)
最后,结束时在终端操作ctrl+C
一般文件会保存在主目录内
话题复现
rosbag play cmd_record.bag
rosrun rqt_reconfigure rqt_reconfigure #动态参数配置
rosrun rqt_console rqt_console #对日志进行可视化、过滤和分析
rosrun rqt_logger_level rqt_logger_level #设置日志记录器的严重级别
查看设备端口号
ll /dev/ttyUSB* #查看usb端口
ll /dev #查看所有的设备