菜单

二次开发-常用节点及话题说明

下载

/viobot节点

该节点开机自启。节点自启后,相机和 IMU 硬件数据读取会自动完成,并以 ROS 话题的形式输出

发布话题名 类型 含义 频率
/viobot/algo_status system_ctrl:: algo_status 输出算法状态 1Hz
/viobot/sys_status system_ctrl:: viobot_ctrl 输出设备状态 1Hz
/viobot/imu sensor_msgs::Imu IMU 加速度和角速度 200Hz
/viobot/image_left sensor_msgs::Image 左目图像(黑白) 25Hz
/viobot/image_right sensor_msgs::Image 右目图像(黑白) 25Hz
/viobot /camera_left_info sensor_msgs:: CameraInfo 左目相机参数 2Hz
/viobot /camear_right_info sensor_msgs:: CameraInfo 右目相机参数 2Hz
/viobot/imu_temp sensor_msgs:: Temperature IMU 温度 1Hz
/viobot /reset_vocabulary std_msgs::Bool 词袋清空 \
/viobot /pr_loop/PCD_Save std_msgs::Char 保存点云 \
/viobot/pr_loop /global_consistency std_msgs::Char \
/viobot/pr_loop /keyframe_action/cancel actionlib_msgs:: GoalID 添加关键帧和保存关键帧相关的操作 \
/viobot/pr_loop /keyframe_action/goal loop_action::KeyFrameHandleActionGoal 添加关键帧和保存关键帧相关的操作 \
/viobot/stereo2/restart std_msgs::Bool 算法重启 \
订阅话题名 类型 含义 频率
/viobot/stereo2_ctrl system_ctrl:: algo_ctrl 对对应的算法进行操作 \

system_ctrl:: algo_status(设备自定义话题)

C# 复制代码
Header header
string algo_status

上电连接后,变量 algo_status 的取值默认为 ready,当算法启动后会进入初始化状态(如:stereo2_initializing),初始化完成后会进入运行状态(如:stereo2_running)

C# 复制代码
typedef enum{
    ready = 0,
    stereo1_initializing,
    stereo1_running,
    stereo2_initializing,
    stereo2_running,
    mono_initializing,
    mono_running,
}system_status;

system_ctrl:: viobot_ctrl(设备自定义话题)

C# 复制代码
Header header
## 0:无图像通过流数据输出;1:左目;2:右目;3:双目图像通过流数据输出
int32 image_select
## IMU原始数据是否输出,raw_data输出设置是设置到http流输出的,默认是关的,如果使用ROS开发也不需要开,一直都是false就行
bool imu_raw
## 是否开启tof
bool tof_enable
## tof深度图是否发布?
bool tof_depth
## tof幅度图是否发布?
bool tof_amp
## 是否开启补光灯
bool light

system_ctrl:: algo_ctrl(设备自定义话题)

C# 复制代码
Header header
## 算法启动/停止
bool algo_enable
## 算法重启
bool algo_reboot
## 算法重置
bool algo_reset

/stereo2节点

发布话题名 类型 含义 频率
/viobot/pr_loop /odometry_rect nav_msgs::Odometry 算法输出的位姿和速度 25Hz
/viobot/pr_loop /base_path nav_msgs::Path 词袋地图路径,用于 rviz 显示 \
/viobot/pr_loop /camera_pose_visual visualization_msgs:: MarkerArray 相机框可视化,用于 rviz 显示 25Hz
/viobot/pr_loop /keyframe_action /feedback loop_action::KeyFrameHandleActionFeedback 添加关键帧和保存关键帧相关的操作 \
/viobot/pr_loop /keyframe_action /result loop_action::KeyFrameHandleActionResult 添加关键帧和保存关键帧相关的操作 \
/viobot/pr_loop /keyframe_action /status actionlib_msgs:: GoalStatusArray 添加关键帧和保存关键帧相关的操作 5Hz
/viobot/pr_loop /match_image sensor_msgs::Image 回环匹配的图片 \
/viobot/pr_loop /odometry_adjusted nav_msgs::Odometry 回环触发后计算得到的全局一致里程计信息,一次性全部发布 \
/viobot/pr_loop /odometry_loop nav_msgs::Odometry 回环触发后计算得到在词袋地图中的位姿 \
/viobot/pr_loop /points_adjust sensor_msgs:: PointCloud2 回环触发后计算得到的全局一致点云信息,一次性全部发布 \
/viobot/pr_loop /pose_graph visualization_msgs:: MarkerArray 关键帧的位置,用于 rviz 显示 \
/viobot/pr_loop /pose_graph_path nav_msgs::Path 关键帧的轨迹,用于 rviz 显示 \
/viobot/pr_loop /points sensor_msgs:: PointCloud2 原生点云 (点云生成是在关键帧产生时) \
/viobot/pr_loop /rdf_points sensor_msgs:: PointCloud2 RDF 点云 对原生点云进行滤波和补点(增加稠密度)得到,其杂点更少且更稠密(非增量式点云,坐标定义同 odom) \
/viobot/stereo2 /feature_image sensor_msgs::Image 算法输出的带梯度点图片(双目数据经过处理后的合成图) 25Hz
/viobot/stereo2 /imu_propagate nav_msgs::Odometry IMU 预积分 200Hz
/viobot/stereo2 /camera_pose geometry_msgs:: PoseStamped 相机的位姿,不触发回环的位置 25Hz
/viobot/stereo2 /odometry_path nav_msgs::Path 25Hz
/viobot/stereo2 /odometry nav_msgs::Odometry 25Hz
上一个
基本使用-VIOBOT回环使用
下一个
二次开发-ROS主从配置
最近修改: 2025-01-16