ROS 操作 ¶
约 650 个字 169 行代码 预计阅读时间 5 分钟
系统烧录 ¶
wget http://fishros.com/install -O fishros && . fishros
no directory
切换到bash
使用 可以把 . fishros
替换成 bash fishros
如何在树莓派 4 上安装 Ubuntu 桌面系统 | Linux 中国 - 知乎 (zhihu.com)
注意安装 desktop 版本而不是 sever 版本
测试代码
roscore
rosrun turtlesim turtlesim_node
rosrun turtlesmi turtle_teleop_key
软件安装 ¶
PlotJuggler 画图工具 ¶
sudo apt-get install ros-noetic-plotjuggler
roscore
rosrun plotjuggler plotjuggler
然后通过 File–>Load Data
导入CSV
或rosbags
数据,然后把对应的 topic 数据拖到右侧就可以了。
如果加载 .bag
文件的时候不支持加载 .bag
文件,那么需要安装包ros-noetic-plotjuggler-ros
sudo apt-get install ros-kinetic-plotjuggler-ros
htop 系统监控工具 ¶
sudo apt-get install htop
ROS
操作 ¶
创建 ¶
启动
roscore
创建工作空间
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace
编译
cd ~/catkin_ws
catkin_make
如果出现时间问题
- 删除devel
与build
文件夹
- 先进入系统设置调整时区
-
执行 ¶
命令 | 重要度 | 详细说明 |
---|---|---|
rosrun |
★★★ | 运行节点 |
roslaunch |
★★★ | 运行多个节点及设置运行选项 |
rosclean |
★★☆ | 检查或删除 ROS 日志文件 |
topic¶
命令 | 详细说明 |
---|---|
rostopic bw |
测量消息发布所占用的带宽 |
rostopic delay |
显示话题中消息的延迟 |
rostopic echo |
查看某个话题上发布的消息 |
rostopic find |
按类型查找话题 |
rostopic hz |
测量消息发布的频率 |
rostopic info |
获取更多关于话题的信息 |
rostopic list |
获取当前活跃的话题 |
rostopic pub |
发布数据到话题 |
rostopic type |
打印话题类型 |
查看活动话题
rostopic list
查看话题信息
rostopic info /topic_name
查看话题消息
rostopic echo /topic_name
查看特定话题的消息字段和数据类型
将rostopic type <topic_name> | rosmsg show
查看信息 ¶
rosmsg¶
rosmsg show
service¶
查看 service 列表
rosservice list
调用 service
rosservice call [service] [args]
查看 service 格式并显示数据
rosservice type [service] | rossrv show
设置 service parameter
rosparam set [parame_name] [args] + rosservice call clear
获得 parameter
rosparam get [parame_name]
加载 parameter
rosparam load [file_name] [namespace]
删除 parameter
rosparam delete
bag¶
会在当前目录下生成一个bag.active
文件,说明正在记录数据;按Ctrl+C
停止记录,生成bag
文件。
记录所有 topic
rosbag record -a
记录某些 topic
rosbag record -O subset <topic1> <topic2>
查看信息
rosbag info <bagfile_name>
回放
rosbag play (-r 2) <bagfile_name>
功能包 ¶
rosinstall
安装 ROS 附加功能
可视化 ¶
rviz¶
- rviz 操作: 平移,2d,视角转换,家
rqt¶
输入
rosrun rqt_graph rqt_graph
rosrun rqt_plot rqt_plot
外设 ¶
风扇 ¶
风扇安装与控制
sudo sh -c 'echo 255 > /sys/devices/pwm-fan/target_pwm'
sudo vi /etc/rc.local
sudo chmod 755 /etc/rc.local
#!/bin/bash
sleep 10
sudo /usr/bin/jetson_clocks
sudo sh -c 'echo 255 > /sys/devices/pwm-fan/target_pwm'
摄像头 ¶
#查看摄像头
rqt_image_view
蓝牙 ¶
jetson nano 之 (6): 配置蓝牙音响 – 走着的博客 (openpilot.cc) 英伟达 Jetson Nano 新手必备:连接蓝牙音频_jetson nano 链接音响_许野平的博客-CSDN博客
激光雷达 ¶
#gmapping slam
roslaunch clbrobot bringup.launch
roslaunch clbrobot lidar_slam.launch
#hector slam
roslaunch clbrobot bringup.launch
roslaunch clbrobot hector_slam.launch
rviz
open "slam.rviz"
rosrun teleop_twist_keyboard teleop_twist_keyboard.py
roscd clbrobot/maps/
./map.sh
#Karto SLAM
roslaunch clbrobot bringup.launch
roslaunch clbrobot karto_slam.launch
rviz
open "slam.rviz"
rosrun teleop_twist_keyboard teleop_twist_keyboard.py
#Cartographer SLAM算法构建地图
roslaunch clbrobot bringup.launch
roslaunch clbrobot rplidar.launch
rosrun teleop_twist_keyboard teleop_twist_keyboard.py
roslaunch clbrobot cartographer_slam.launch
rviz
open config "cartographer.rviz"
jetson Nano 小车
#查看ip地址
ifconfig
#底盘
roslaunch clbrobot bringup.launch
#键盘操控
rosrun teleop_twist_keyboard teleop_twist_keyboard.py
小写 & 大写字母
#imu校正
roslaunch clbrobot bringup.launch
rosrun imu_calib do_calib
按照提示调整小车,并按照指示按下enter
#线速度修正
roslaunch clbrobot bringup.launch
rosrun clbrobot_nav calibrate_linear.py
rosrun rqt_reconfigure rqt_reconfigure
设定1m,最后一栏记录实际值,多次实验平均
roscd clbrobot/launch
gedit bringup.launch
#角速度修正
roslaunch clbrobot bringup.launch
rosrun clbrobot_nav calibrate_angular.py
rosrun rqt_reconfigure rqt_reconfigure
#雷达启动
#相机启动
roslaunch clbrobot camera.launch
roslaunch clbrobot clbrobot_web.launch
IP:8080
#相机建图
roslaunch clbrobot bringup.launch
roslaunch clbrobot astra_xtion_gmapping.launch
rviz
打开 home/catkin_ws/src/clbrobot_project/clbrobot/rviz/slam.rviz
rosrun teleop_twist_keyboard teleop_twist_keyboard.py
roscd clbrobot/maps
./map.sh
#相机导航
roslaunch clbrobot bringup.launch
roslaunch clbrobot astra_navigate.launch
rviz
nav goal
#避障
roslaunch clbrobot bringup.launch
roslaunch clbrobot_follower follower.launch
#手机
roslaunch clbrobot bringup.launch
roslaunch clbrobot camera.launch
roslaunch clbrobot lidar_slam.launch
roscd clbrobot/maps
./map.sh
#巡线
roslaunch clbrobot bringup.launch
roslaunch clbrobot camera.launch
roslaunch clbrobot_line_follower clbrobot_line.launch
#二维码识别
roslaunch clbrobot bringup.launch
roslaunch clbrobot camera.launch
roslaunch clbrobot_ar_track clbrobot_ar_camera.launch
roslaunch clbrobot_ar_track clbrobot_ar_large_markers.launch
roslaunch clbrobot_ar_track clbrobot_ar_tags_cog.launch
roslaunch clbrobot_ar_track clbrobot_ar_follower.launch
#多点导航
roslaunch clbrobot bringup.launch
roslaunch clbrobot navigate.launch
rviz
open "navigate.rviz"
use "2D Pose Estimate"
use "Publish Point" to choose dots to be passed
roslaunch clbrobot_hand_pose clbrobot_hand_pose.launch
roslaunch clbrobot_object_detect clbrobot_face_object.launch
三方库 ¶
darknet¶
catkin_make -DCATKIN_WHITELIST_PACKAGES="darknet_ros"
roslaunch clbrobot bringup.launch
roslaunch clbrobot camera.launch
roslaunch darknet_ros darknet_ros.launch
roscd darknet_ros/script
python ObjectLocation.py
roslaunch clbrobot astra_navigate.launch
darknet-yolov3 训练自己的数据集,并测试训练结果 _dota 数据集在 yolov3 训练结果 _pd 很不专业的博客 -CSDN 博客
Jetson Nano 之 ROS 入门 – YOLO 目标检测与定位 _ros 目标检测 _szu_ljm 的博客 -CSDN 博客