RosSDK使用说明书¶
概述¶
RosSDK是EwayOS 对Ros的接口,主要包含文档、example部分。
RosSDK结构介绍¶
RosSDK是EwayOS中的一个模块,连接EwayOS和RosNode。RosNode订阅RosSDK的topic获取机器人检测消息。RosSDK为RosNode提供Service,RosNode向RosSDK请求Service获得机器人运动控制。
Topic名称¶
RobotPosition¶
自定义消息,机器人位置信息,对应具体类型robot_position_msg。
HeadPosition¶
自定义消息,机器人头部信息,对应具体类型head_position_msg。
ArmPosition¶
自定义消息,机器人手臂信息,对应具体类型arm_position_msg。
CommandDone¶
自定义消息,机器人控制响应信息,对应具体类型command_done_msg。
VisionMarker¶
自定义消息,机器人识别到的Marker信息,对应具体类型vision_marker_msg。
VisionFace¶
自定义消息,机器人识别到的Face(人脸)信息,对应具体类型vision_face_msg。
VisionObject¶
自定义消息,机器人识别到的Object(物体)信息,对应具体类型vision_object_msg。
VoiceData¶
自定义消息,机器人识别到的Voice(语音)信息,对应具体类型voice_data_msg。
ObstacleData¶
自定义消息,机器人识别到的障碍(如声纳)信息,对应具体类型obstacle_msg。
RGBImage¶
对应具体类型cv_bridge。
DepthImage¶
对应具体类型cv_bridge。
Service名称¶
SpeakerText¶
发送SpeakerText Service到RosSDK,机器人将运行Text To Speech模块进行语音转换并播放,对应具体类型speake_text_cmd。
MoveHead¶
发送MoveHead Service到RosSDK,机器人将根据指令数据移动头部,对应具体类型head_move_cmd。
MoveHeadSync¶
发送MoveHeadSync Service到RosSDK,机器人将根据指令数据移动头部,对应具体类型head_move_sync_cmd。
HeadStop¶
发送HeadStop Service到RosSDK,机器人将根据指令立刻停止头部运动,对应具体类型stop_cmd。
HeadTrajectory¶
发送HeadTrajectory Service到RosSDK,机器人将根据轨迹文件进行运动,对应具体类型follow_trajectory_cmd。
WheelGoToPos¶
发送WheelGoToPos Service到RosSDK,机器人底盘将根据目标点进行运动,对应具体类型wheel_goto_position_cmd。
WheelBrake¶
发送WheelBrake Service到RosSDK,机器人底盘将根据目标点进行运动,对应具体类型wheel_brake_cmd。
WheelStraight¶
发送WheelStraight Service到RosSDK,机器人底盘将进行位置模式的直线运动,对应具体类型wheel_straight_cmd。
WheelStraightSpeed¶
发送WheelStraightSpeed Service到RosSDK,机器人将按指令进行直线速度运动,对应具体类型wheel_straight_speed_cmd。
WheelCycle¶
发送WheelCycle Service到RosSDK,机器人底盘进行位置模式的弧线运动,对应具体类型wheel_cycle_cmd。
WheelCycleSpeed¶
发送WheelCycleSpeed Service到RosSDK,机器人底盘会进行速度模式的弧线运动,对应具体类型wheel_cycle_speed_cmd。
WheelTrajectory¶
发送WheelTrajectory Service到RosSDK,机器人底盘将按照轨迹文件进行运动,对应具体类型follow_trajectory_cmd。
WheelMotorSpeed¶
发送WheelMotorSpeed Service到RosSDK,机器人按照每个电机指定的命令信息进行运动,对应具体类型motor_speed_cmd。
WheelSpeedTransBot¶
发送WheelSpeedTransBot Service到RosSDK,机机器人底盘将按照指定的线速度和角速度进行运动,对应具体类型wheel_transrot_speed_cmd。
ArmTrajectory¶
发送ArmTrajectory Service到RosSDK,机器人将根据轨迹文件进行手臂运动,对应具体类型follow_trajectory_cmd。
ArmGoToAngle¶
对应具体类型arm_goto_angle_cmd。
ArmGoToAngleSync¶
对应具体类型arm_goto_angle_sync_cmd。
ArmMoveGripper¶
对应具体类型arm_move_gripper_cmd。
ArmStop¶
对应具体类型stop_cmd。
MotorPID¶
对应具体类型motor_pid_cmd。
GetImageCmd¶
发送GetImageCmd Service到RosSDK,机器人将RealSense识别到的RGB和Depth Image Topic 发送到 RosNode,对应具体类型image_cmd。
CommandDone机制¶
CommandDone Topic为 RosNode向RosSDK发送运动指令,控制机器人运动所使用。当指令发送完毕,等待下位机执行结束后,RosSDK会发送CommandDone消息至RosNode,通知RosNode该指令执行完毕。RosNode使用CmdSN识别之前发送的运动指令,并判断是否执行成功。