RosMessage - PartnerRobotChallengeVirtual/human-navigation-ros GitHub Wiki
ROS Messages
Operate HSR
Operate a robot by subscribing and publishing several ROS topics.
For details please see the following wiki.
https://github.com/PartnerRobotChallengeVirtual/common-unity/wiki/RosTopics
Messages from/to the moderator
Sending and receiving of event messages between the moderator and the robot are performed using original ROS messages (human_navigation/HumanNaviMsg).
[human_navigation/HumanNaviMsg]
string message
string detail
No | Topic Name | Direction | Message Type | Description |
---|---|---|---|---|
1 | /human_navigation/message/to_robot | SIGVerse ⇒ | human_navigation/HumanNaviMsg | Event message from Robot to Avatar |
2 | /human_navigation/message/to_moderator | ROS ⇒ | human_navigation/HumanNaviMsg | Event message from Avatar to Robot |
Note: SIGVerse ⇒: SIGVerse to User's ROS Node, ROS ⇒: User's ROS Node to SIGVerse
For details of event messages please see the following table.
No | Event | Direction | message | detail |
---|---|---|---|---|
1 | Send Are_you_ready? | Moderator ⇒ | Are_you_ready? | (blank) |
2 | Send I_am_ready | Robot ⇒ | I_am_ready | (blank) |
3 | Request of guidance message | Moderator ⇒ | Guidance_request | (blank) |
4 | End of session | Robot ⇒ | Task_finished | (blank) |
5 | Go to next session | Moderator ⇒ | Go_to_next_session | (blank) |
6 | Send Give_up | Robot ⇒ | Give_up | (blank) |
7 | Give up | Moderator ⇒ | Task_failed | Give_up |
8 | Time is up | Moderator ⇒ | Task_failed | Time_is_up |
9 | Succeeded the task | Moderator ⇒ | Task_succeeded | (blank) |
10 | All tasks finished | Moderator ⇒ | Mission_complete | (blank) |
11 | Request of avatar status | Robot ⇒ | Get_avatar_status | (blank) |
12 | Request of object status | Robot ⇒ | Get_object_status | (blank) |
13 | Request of speech state | Robot ⇒ | Get_speech_state | (blank) |
14 | TTS is running | Moderator ⇒ | Speech_state | Is_speaking |
15 | TTS is not running | Moderator ⇒ | Speech_state | Is_not_speaking |
16 | TTS started an utterance | Moderator ⇒ | Speech_result | Started |
17 | TTS finished an utterance | Moderator ⇒ | Speech_result | Finished |
Note: Moderator ⇒: Moderator to Robot, Robot ⇒: Robot to Moderator
Task information
The task information is sent from the moderator. The environment, objects to manipulate, and the destination to place the target object are included in the task information.
No | Topic Name | Direction | Message Type | Description |
---|---|---|---|---|
1 | /human_navigation/message/task_info | SIGVerse ⇒ | human_navigation/HumanNaviTaskInfo | Information needed to perform the task |
Note: SIGVerse ⇒: SIGVerse to User's ROS Node, ROS ⇒: User's ROS Node to SIGVerse
[human_navigation/HumanNaviTaskInfo]
string environment_id
HumanNaviObjectInfo target_object
HumanNaviDestination destination
HumanNaviObjectInfo[] non_target_objects
HumanNaviObjectInfo[] furniture
No | Name | Description |
---|---|---|
1 | environment_id | Room layout ID |
2 | target_object | Label, position, and orientation of the target object |
3 | destination | Anchor position, orientation, and size of designated area to place the target object |
4 | non_target_objects | Label, position, and orientation of objects excepting the target object |
5 | furniture | Label, position, and orientation of furniture objects |
[human_navigation/HumanNaviObjectInfo]
string name
geometry_msgs/Point position
geometry_msgs/Quaternion orientation
No | Name | Description |
---|---|---|
1 | name | Label name of the object |
2 | position | Position of the object in the ROS coordinate system |
3 | orientation | orientation of the object in the ROS coordinate system |
[human_navigation/HumanNaviDestination]
geometry_msgs/Point position
geometry_msgs/Quaternion orientation
geometry_msgs/Point size
No | Name | Description |
---|---|---|
1 | position | Anchor position of the destination in the ROS coordinate system |
2 | orientation | Orientation of the destination in the ROS coordinate system |
3 | size | Area size of the destination |
Guidance message
The natural language instructions are provided audibly and visually to the test subject by sending the guidance message.
The number of characters used in the instruction should not exceed 400.
Although the size of characters in message board effect in Unity is automatically adjusted according to the number of characters, please be careful the size of a text area in the message board effect if you send long sentences with a lot of large characters (i.e., capital letters).
The robot can give instructions at any time.
No | Topic Name | Direction | Message Type | Description |
---|---|---|---|---|
1 | /human_navigation/message/guidance_message | Robot ⇒ | human_navigation/HumanNaviGuidanceMsg | Instruction statement and display target |
Note: SIGVerse ⇒: SIGVerse to User's ROS Node, ROS ⇒: User's ROS Node to SIGVerse
[human_navigation/HumanNaviGuidanceMsg]
string message
string display_type
string source_language
string target_language
No | Name | Description |
---|---|---|
1 | message | Instruction statement by natural language |
2 | display_type | Target message boards to show the instruction statement for the test subject "All" : instruction is shown above the robot and in the HMD of the test subject "RobotOnly" : instruction is shown only above the robot "AvatarOnly" : instruction is shown only in the HMD "None" : instructions are provided to the test subject only verbally |
3 | source_language | Blank. If you want to translate, set ISO-639-1 language code (e.g. "en"). |
4 | target_language | Blank. If you want to translate, set ISO-639-1 language code (e.g. "ja"). |
Avatar status
The robot can receive the current status of the avatar by sending "Get_avatar_status" message to the moderator.
[human_navigation/HumanNaviAvatarStatus]
geometry_msgs/Pose head
geometry_msgs/Pose body
geometry_msgs/Pose left_hand
geometry_msgs/Pose right_hand
string object_in_left_hand
string object_in_right_hand
bool is_target_object_in_left_hand
bool is_target_object_in_right_hand
No | Name | Description |
---|---|---|
1 | head | Position and orientation of Avatar's head |
2 | body | Position and orientation of Avatar's chest (EthanSpine2) |
2 | left_hand | Position and orientation of Avatar's left hand |
3 | right_hand | Position and orientation of Avatar's right hand |
3 | object_in_left_hand | Label of the object in the left hand |
3 | object_in_right_hand | Label of the obkect in the right hand |
3 | is_target_object_in_left_hand | Whether the object in left hand is the target object |
3 | is_target_object_in_right_hand | Whether the object in right hand is the target object |
Object status
The robot can receive the current status of the objects by sending "Get_object_status" message to the moderator.
HumanNaviObjectInfo target_object
HumanNaviObjectInfo[] non_target_objects
No | Name | Description |
---|---|---|
1 | target_object | Label, position, and orientation of the target object |
2 | non_target_objects | Label, position, and orientation of objects excepting the target object |