English

简体中文

Robots/Roch可以获得更多关于安装、教程等信息,roch_base是基于ros_control,也同样参考husky_base

概述

roch_base包有一些示例程序来测试传感器数据是否正常,如:超声波传感器,位置敏感检测器,悬崖感应器等。也有一些launch文件的示例程序,你可以自行查看。roch_node是roch_base包的核心代码。所有硬件接口都由roch_control配置。

roch_node

ROS与Roch控制芯片驱动和通信节点。 ros_control整合了diff_drive_controllerimu_sensor_controllerjoint_state_controller

Subscribed Topics

roch_velocity_controller/cmd_vel (geometry_msgs/Twist)
  • Roch角速度命令,在roch_control中混合。外部节点应该发布到cmd_vel话题.

Published Topics

roch_velocity_controller/odom (nav_msgs/Odometry)
  • 来自Roch控制芯片的里程计信息。
status (roch_msgs/RochStatus)
  • 来自Roch控制芯片和roch_node的状态信息。 具有standard diagnostics接口.
debug/raw_data_stream (sensor_msgs/Imu)
  • 测试用IMU传感器的原始数据,仅测试用。
sensor/imu_data (sensor_msgs/Imu)
  • 处理后的IMU数据,供roch_node使用。
debug/raw_data_command (std_msgs/String)
  • 与Roch MCU的原始通信命令,供调试用。
events/cliff (roch_msgs/CliffEvent) events/psd (roch_msgs/PSDEvent) events/ult (roch_msgs/UltEvent) core_sensors (roch_msgs/SensorState)
  • Roch所有传感器状态,供roch_node和roch_sensorpc使用。

Parameters

~control_frequency (double, default: 10.0)
  • Roch的控制芯片控制速度和查询里程信息的频率。
~diagnostic_frequency (double, default: 10.0)
  • Roch查询诊断信息和状态信息的频率。
~wheel_diameter (double, default: 0.095)
  • Roch轮子的直径,单位:米。
~max_accel (double, default: 5.0)
  • Roch的最大加速度。
~max_speed (double, default: 0.45)
  • Roch的最大速度。
~polling_timeout_ (double, default: 20)
  • Roch与控制器的命令超时,单位:Hz。
~cliff_height (double, default: 0.1)
  • Roch的悬崖传感器发布的安全高度,单位:米。
~psd_length (double, default: 0.1)
  • Roch的位置感应器发布的安全距离,单位:米。
~port (string, default: /dev/roch)
  • PC上与Roch的通信端口。
~imu_link_frame (string, default: imu_link)
  • Roch的description中用于发布陀螺仪数据的frame link。

示例

有5个示例程序可供测试:

  • test_encoder
  • test_imu
  • test_platformInfo
  • test_rangefinder
  • test_speed

它们有类似的操作步骤:

首先,确认你已经完成如下操作:

  • 1.Roch已经上电;
  • 2.USB线连接Roch和电脑;
  • 3.确认你已经运行了roscore

  rosrun roch_base test_<name_you_want>

提交错误

使用github地址report bugsrequest features.

Wiki: cn/roch_base (last edited 2017-03-09 00:39:22 by SawYer)