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识别之前发送的运动指令,并判断是否执行成功。