实现行为树执行器、任务协调和技能接口
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
{
|
||||
"client_request_id": "multi-001",
|
||||
"robot_id": "robot_01",
|
||||
"instruction": "从货架A取两瓶water,再取一个doll,逐件放入tote_A",
|
||||
"known_info": {
|
||||
"items": [
|
||||
{
|
||||
"target_name": "water",
|
||||
"quantity": 2,
|
||||
"source_location": "shelf_A"
|
||||
},
|
||||
{
|
||||
"target_name": "doll",
|
||||
"quantity": 1,
|
||||
"source_location": "shelf_A"
|
||||
}
|
||||
],
|
||||
"destination": "tote_A"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
{
|
||||
"schema_version": 1,
|
||||
"plan_version": 1,
|
||||
"task_type": "pick_transport_place",
|
||||
"goal": "Move water from shelf_A to tote_A",
|
||||
"slots": {
|
||||
"target_name": "water",
|
||||
"quantity": 1,
|
||||
"source_location": "shelf_A",
|
||||
"destination": "tote_A"
|
||||
},
|
||||
"missing_information": [],
|
||||
"subtasks": [
|
||||
{
|
||||
"id": "S1",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"destination": "shelf_A"
|
||||
},
|
||||
"depends_on": []
|
||||
},
|
||||
{
|
||||
"id": "S2",
|
||||
"skill": "GROUND_TARGET",
|
||||
"arguments": {
|
||||
"target": "water"
|
||||
},
|
||||
"depends_on": [
|
||||
"S1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S3",
|
||||
"skill": "PICK",
|
||||
"arguments": {
|
||||
"target": "water"
|
||||
},
|
||||
"depends_on": [
|
||||
"S2"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S4",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"destination": "tote_A"
|
||||
},
|
||||
"depends_on": [
|
||||
"S3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S5",
|
||||
"skill": "CHECK_FREE_SPACE",
|
||||
"arguments": {
|
||||
"destination": "tote_A"
|
||||
},
|
||||
"depends_on": [
|
||||
"S4"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S6",
|
||||
"skill": "PLACE",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"destination": "tote_A"
|
||||
},
|
||||
"depends_on": [
|
||||
"S5"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,158 @@
|
||||
{
|
||||
"schema_version": 2,
|
||||
"plan_version": 1,
|
||||
"task_type": "multi_item_pick_transport_place",
|
||||
"goal": "从货架A取两瓶water,再取一个doll,逐件放入tote_A",
|
||||
"route": "OBJECT_TABLE",
|
||||
"slots": {
|
||||
"items": [
|
||||
{
|
||||
"target_name": "water",
|
||||
"quantity": 2,
|
||||
"source_location": "shelf_A"
|
||||
},
|
||||
{
|
||||
"target_name": "doll",
|
||||
"quantity": 1,
|
||||
"source_location": "shelf_A"
|
||||
}
|
||||
],
|
||||
"destination": "tote_A"
|
||||
},
|
||||
"missing_information": [],
|
||||
"subtasks": [
|
||||
{
|
||||
"id": "S1",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": []
|
||||
},
|
||||
{
|
||||
"id": "S2",
|
||||
"skill": "PICK",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": [
|
||||
"S1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S3",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"destination": "tote_A",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": [
|
||||
"S2"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S4",
|
||||
"skill": "PLACE",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"destination": "tote_A",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": [
|
||||
"S3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S5",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S4"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S6",
|
||||
"skill": "PICK",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S5"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S7",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"destination": "tote_A",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S6"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S8",
|
||||
"skill": "PLACE",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"destination": "tote_A",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S7"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S9",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"target": "doll",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S8"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S10",
|
||||
"skill": "PICK",
|
||||
"arguments": {
|
||||
"target": "doll",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S9"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S11",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"destination": "tote_A",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S10"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S12",
|
||||
"skill": "PLACE",
|
||||
"arguments": {
|
||||
"target": "doll",
|
||||
"destination": "tote_A",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S11"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,230 @@
|
||||
{
|
||||
"schema_version": 2,
|
||||
"plan_version": 1,
|
||||
"task_type": "multi_item_pick_transport_place",
|
||||
"goal": "从货架A取两瓶water,再取一个doll,逐件放入tote_A",
|
||||
"route": "SHELF_CELL",
|
||||
"slots": {
|
||||
"items": [
|
||||
{
|
||||
"target_name": "water",
|
||||
"quantity": 2,
|
||||
"source_location": "shelf_A"
|
||||
},
|
||||
{
|
||||
"target_name": "doll",
|
||||
"quantity": 1,
|
||||
"source_location": "shelf_A"
|
||||
}
|
||||
],
|
||||
"destination": "tote_A"
|
||||
},
|
||||
"missing_information": [],
|
||||
"subtasks": [
|
||||
{
|
||||
"id": "S1",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"source_location": "shelf_A",
|
||||
"mode": "observation",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": []
|
||||
},
|
||||
{
|
||||
"id": "S2",
|
||||
"skill": "ROBOBRAIN_SHELF_LOCALIZE",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": [
|
||||
"S1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S3",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"source_location": "shelf_A",
|
||||
"mode": "shelf_cell",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": [
|
||||
"S2"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S4",
|
||||
"skill": "PICK",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": [
|
||||
"S3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S5",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"destination": "tote_A",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": [
|
||||
"S4"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S6",
|
||||
"skill": "PLACE",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"destination": "tote_A",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": [
|
||||
"S5"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S7",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"source_location": "shelf_A",
|
||||
"mode": "observation",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S6"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S8",
|
||||
"skill": "ROBOBRAIN_SHELF_LOCALIZE",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S7"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S9",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"source_location": "shelf_A",
|
||||
"mode": "shelf_cell",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S8"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S10",
|
||||
"skill": "PICK",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S9"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S11",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"destination": "tote_A",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S10"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S12",
|
||||
"skill": "PLACE",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"destination": "tote_A",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S11"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S13",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"source_location": "shelf_A",
|
||||
"mode": "observation",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S12"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S14",
|
||||
"skill": "ROBOBRAIN_SHELF_LOCALIZE",
|
||||
"arguments": {
|
||||
"target": "doll",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S13"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S15",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"source_location": "shelf_A",
|
||||
"mode": "shelf_cell",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S14"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S16",
|
||||
"skill": "PICK",
|
||||
"arguments": {
|
||||
"target": "doll",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S15"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S17",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"destination": "tote_A",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S16"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S18",
|
||||
"skill": "PLACE",
|
||||
"arguments": {
|
||||
"target": "doll",
|
||||
"destination": "tote_A",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S17"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"client_request_id": "demo-001",
|
||||
"robot_id": "robot_01",
|
||||
"instruction": "把货架A的一瓶矿泉水放进周转箱A",
|
||||
"known_info": {
|
||||
"target_name": "water",
|
||||
"quantity": 1,
|
||||
"source_location": "shelf_A",
|
||||
"destination": "tote_A"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
# Endpoint selection for integration with the real BT executor.
|
||||
# This is not a complete success scenario: verification defaults to UNKNOWN.
|
||||
# Fill scenarios_json explicitly for the selected route/site and evidence policy.
|
||||
/sim/robot_01/bt_mock_skills:
|
||||
ros__parameters:
|
||||
enabled_actions: [navigate, navigate_semantic, execute_manipulation, plan_task, locate_shelf_column, localize_target_3d, check_free_space, assess_grasp, execute_posture, verify_state, evaluate_progress]
|
||||
enabled_topics: [robot_state, safety_state, visual_observation, dense_progress]
|
||||
initial_holding_state: UNKNOWN
|
||||
scenarios_json: '{}'
|
||||
@@ -0,0 +1,179 @@
|
||||
{
|
||||
"plan": {
|
||||
"schema_version": 2,
|
||||
"plan_version": 1,
|
||||
"task_type": "multi_item_pick_transport_place",
|
||||
"goal": "从货架A取两瓶water,再取一个doll,逐件放入tote_A",
|
||||
"route": "OBJECT_TABLE",
|
||||
"slots": {
|
||||
"items": [
|
||||
{
|
||||
"target_name": "water",
|
||||
"quantity": 2,
|
||||
"source_location": "shelf_A"
|
||||
},
|
||||
{
|
||||
"target_name": "doll",
|
||||
"quantity": 1,
|
||||
"source_location": "shelf_A"
|
||||
}
|
||||
],
|
||||
"destination": "tote_A"
|
||||
},
|
||||
"missing_information": [],
|
||||
"subtasks": [
|
||||
{
|
||||
"id": "S1",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": []
|
||||
},
|
||||
{
|
||||
"id": "S2",
|
||||
"skill": "PICK",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": [
|
||||
"S1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S3",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"destination": "tote_A",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": [
|
||||
"S2"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S4",
|
||||
"skill": "PLACE",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"destination": "tote_A",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": [
|
||||
"S3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S5",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S4"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S6",
|
||||
"skill": "PICK",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S5"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S7",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"destination": "tote_A",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S6"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S8",
|
||||
"skill": "PLACE",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"destination": "tote_A",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S7"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S9",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"target": "doll",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S8"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S10",
|
||||
"skill": "PICK",
|
||||
"arguments": {
|
||||
"target": "doll",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S9"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S11",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"destination": "tote_A",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S10"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S12",
|
||||
"skill": "PLACE",
|
||||
"arguments": {
|
||||
"target": "doll",
|
||||
"destination": "tote_A",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S11"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"shelf": {
|
||||
"status": "SUCCEEDED",
|
||||
"shelf_id": "shelf_A",
|
||||
"side_id": "FRONT",
|
||||
"column_id": "1",
|
||||
"tier_id": "2",
|
||||
"confidence": 0.99
|
||||
},
|
||||
"localize3d": {
|
||||
"point": [
|
||||
0.5,
|
||||
0.2,
|
||||
0.8
|
||||
]
|
||||
},
|
||||
"dense_feedback": {
|
||||
"progress": 0.8,
|
||||
"hop": 1
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,251 @@
|
||||
{
|
||||
"plan": {
|
||||
"schema_version": 2,
|
||||
"plan_version": 1,
|
||||
"task_type": "multi_item_pick_transport_place",
|
||||
"goal": "从货架A取两瓶water,再取一个doll,逐件放入tote_A",
|
||||
"route": "SHELF_CELL",
|
||||
"slots": {
|
||||
"items": [
|
||||
{
|
||||
"target_name": "water",
|
||||
"quantity": 2,
|
||||
"source_location": "shelf_A"
|
||||
},
|
||||
{
|
||||
"target_name": "doll",
|
||||
"quantity": 1,
|
||||
"source_location": "shelf_A"
|
||||
}
|
||||
],
|
||||
"destination": "tote_A"
|
||||
},
|
||||
"missing_information": [],
|
||||
"subtasks": [
|
||||
{
|
||||
"id": "S1",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"source_location": "shelf_A",
|
||||
"mode": "observation",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": []
|
||||
},
|
||||
{
|
||||
"id": "S2",
|
||||
"skill": "ROBOBRAIN_SHELF_LOCALIZE",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": [
|
||||
"S1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S3",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"source_location": "shelf_A",
|
||||
"mode": "shelf_cell",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": [
|
||||
"S2"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S4",
|
||||
"skill": "PICK",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": [
|
||||
"S3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S5",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"destination": "tote_A",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": [
|
||||
"S4"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S6",
|
||||
"skill": "PLACE",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"destination": "tote_A",
|
||||
"item_index": 0
|
||||
},
|
||||
"depends_on": [
|
||||
"S5"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S7",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"source_location": "shelf_A",
|
||||
"mode": "observation",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S6"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S8",
|
||||
"skill": "ROBOBRAIN_SHELF_LOCALIZE",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S7"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S9",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"source_location": "shelf_A",
|
||||
"mode": "shelf_cell",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S8"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S10",
|
||||
"skill": "PICK",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S9"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S11",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"destination": "tote_A",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S10"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S12",
|
||||
"skill": "PLACE",
|
||||
"arguments": {
|
||||
"target": "water",
|
||||
"destination": "tote_A",
|
||||
"item_index": 1
|
||||
},
|
||||
"depends_on": [
|
||||
"S11"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S13",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"source_location": "shelf_A",
|
||||
"mode": "observation",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S12"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S14",
|
||||
"skill": "ROBOBRAIN_SHELF_LOCALIZE",
|
||||
"arguments": {
|
||||
"target": "doll",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S13"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S15",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"source_location": "shelf_A",
|
||||
"mode": "shelf_cell",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S14"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S16",
|
||||
"skill": "PICK",
|
||||
"arguments": {
|
||||
"target": "doll",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S15"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S17",
|
||||
"skill": "NAVIGATE",
|
||||
"arguments": {
|
||||
"destination": "tote_A",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S16"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "S18",
|
||||
"skill": "PLACE",
|
||||
"arguments": {
|
||||
"target": "doll",
|
||||
"destination": "tote_A",
|
||||
"item_index": 2
|
||||
},
|
||||
"depends_on": [
|
||||
"S17"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"shelf": {
|
||||
"status": "SUCCEEDED",
|
||||
"shelf_id": "shelf_A",
|
||||
"side_id": "FRONT",
|
||||
"column_id": "1",
|
||||
"tier_id": "2",
|
||||
"confidence": 0.99
|
||||
},
|
||||
"localize3d": {
|
||||
"point": [
|
||||
0.5,
|
||||
0.2,
|
||||
0.8
|
||||
]
|
||||
},
|
||||
"dense_feedback": {
|
||||
"progress": 0.8,
|
||||
"hop": 1
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"loader": "deployment_models:create_robobrain",
|
||||
"model": {"checkpoint": "/absolute/path/to/pinned/local/checkpoint"},
|
||||
"task_mapping": {"plan": "general", "shelf": "general", "localize3d": "general"}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
# Supply existing absolute directories and a pinned worker command at launch.
|
||||
# No checkpoint, network endpoint or GPU allocation is invented by this config.
|
||||
/**:
|
||||
ros__parameters:
|
||||
simulation: false
|
||||
record_directory: ""
|
||||
media_root: ""
|
||||
model_version: ""
|
||||
worker_argv_json: "[]"
|
||||
model_load_timeout_seconds: 300.0
|
||||
@@ -0,0 +1,57 @@
|
||||
{
|
||||
"schema_version": 1,
|
||||
"registry_version": 1,
|
||||
"simulation": true,
|
||||
"locations": {
|
||||
"observe_A": {
|
||||
"frame_id": "map",
|
||||
"x": 0.0,
|
||||
"y": 0.0,
|
||||
"z": 0.0,
|
||||
"qx": 0.0,
|
||||
"qy": 0.0,
|
||||
"qz": 0.0,
|
||||
"qw": 1.0
|
||||
},
|
||||
"shelf_A_stop": {
|
||||
"frame_id": "map",
|
||||
"x": 1.0,
|
||||
"y": 0.0,
|
||||
"z": 0.0,
|
||||
"qx": 0.0,
|
||||
"qy": 0.0,
|
||||
"qz": 0.0,
|
||||
"qw": 1.0
|
||||
},
|
||||
"tote_A_stop": {
|
||||
"frame_id": "map",
|
||||
"x": 2.0,
|
||||
"y": 0.0,
|
||||
"z": 0.0,
|
||||
"qx": 0.0,
|
||||
"qy": 0.0,
|
||||
"qz": 0.0,
|
||||
"qw": 1.0
|
||||
}
|
||||
},
|
||||
"sources": {
|
||||
"shelf_A": {
|
||||
"observe_location": "observe_A",
|
||||
"shelf_id": "shelf_A"
|
||||
}
|
||||
},
|
||||
"destinations": {
|
||||
"tote_A": {
|
||||
"location": "tote_A_stop",
|
||||
"region_ref": "tote_A"
|
||||
}
|
||||
},
|
||||
"parking_locations": {
|
||||
"shelf_A/FRONT/1": "shelf_A_stop"
|
||||
},
|
||||
"allowed_postures": [
|
||||
"pregrasp",
|
||||
"transport"
|
||||
],
|
||||
"transport_posture": "transport"
|
||||
}
|
||||
@@ -0,0 +1,91 @@
|
||||
{
|
||||
"schema_version": 1,
|
||||
"registry_version": 1,
|
||||
"simulation": true,
|
||||
"locations": {
|
||||
"observe_A": {
|
||||
"frame_id": "map",
|
||||
"x": 0.0,
|
||||
"y": 0.0,
|
||||
"z": 0.0,
|
||||
"qx": 0.0,
|
||||
"qy": 0.0,
|
||||
"qz": 0.0,
|
||||
"qw": 1.0
|
||||
},
|
||||
"shelf_A_stop": {
|
||||
"frame_id": "map",
|
||||
"x": 1.0,
|
||||
"y": 0.0,
|
||||
"z": 0.0,
|
||||
"qx": 0.0,
|
||||
"qy": 0.0,
|
||||
"qz": 0.0,
|
||||
"qw": 1.0
|
||||
},
|
||||
"tote_A_stop": {
|
||||
"frame_id": "map",
|
||||
"x": 2.0,
|
||||
"y": 0.0,
|
||||
"z": 0.0,
|
||||
"qx": 0.0,
|
||||
"qy": 0.0,
|
||||
"qz": 0.0,
|
||||
"qw": 1.0
|
||||
}
|
||||
},
|
||||
"sources": {
|
||||
"shelf_A": {
|
||||
"observe_location": "observe_A",
|
||||
"shelf_id": "shelf_A"
|
||||
}
|
||||
},
|
||||
"destinations": {
|
||||
"tote_A": {
|
||||
"location": "tote_A_stop",
|
||||
"region_ref": "tote_A"
|
||||
}
|
||||
},
|
||||
"parking_locations": {
|
||||
"shelf_A/FRONT/1": "shelf_A_stop"
|
||||
},
|
||||
"allowed_postures": [
|
||||
"pregrasp",
|
||||
"transport"
|
||||
],
|
||||
"transport_posture": "transport",
|
||||
"object_locations": {
|
||||
"water": "shelf_A_stop",
|
||||
"doll": "shelf_A_stop"
|
||||
},
|
||||
"object_postures": {
|
||||
"water": "pregrasp",
|
||||
"doll": "pregrasp"
|
||||
},
|
||||
"cell_locations": {
|
||||
"shelf_A/FRONT/1/2": "shelf_A_stop"
|
||||
},
|
||||
"cell_postures": {
|
||||
"shelf_A/FRONT/1/2": "pregrasp"
|
||||
},
|
||||
"execution_route": "OBJECT_TABLE",
|
||||
"object_aliases": {
|
||||
"water": [
|
||||
"矿泉水",
|
||||
"水"
|
||||
],
|
||||
"doll": [
|
||||
"玩偶"
|
||||
]
|
||||
},
|
||||
"source_aliases": {
|
||||
"shelf_A": [
|
||||
"货架A"
|
||||
]
|
||||
},
|
||||
"destination_aliases": {
|
||||
"tote_A": [
|
||||
"周转箱A"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,91 @@
|
||||
{
|
||||
"schema_version": 1,
|
||||
"registry_version": 1,
|
||||
"simulation": true,
|
||||
"locations": {
|
||||
"observe_A": {
|
||||
"frame_id": "map",
|
||||
"x": 0.0,
|
||||
"y": 0.0,
|
||||
"z": 0.0,
|
||||
"qx": 0.0,
|
||||
"qy": 0.0,
|
||||
"qz": 0.0,
|
||||
"qw": 1.0
|
||||
},
|
||||
"shelf_A_stop": {
|
||||
"frame_id": "map",
|
||||
"x": 1.0,
|
||||
"y": 0.0,
|
||||
"z": 0.0,
|
||||
"qx": 0.0,
|
||||
"qy": 0.0,
|
||||
"qz": 0.0,
|
||||
"qw": 1.0
|
||||
},
|
||||
"tote_A_stop": {
|
||||
"frame_id": "map",
|
||||
"x": 2.0,
|
||||
"y": 0.0,
|
||||
"z": 0.0,
|
||||
"qx": 0.0,
|
||||
"qy": 0.0,
|
||||
"qz": 0.0,
|
||||
"qw": 1.0
|
||||
}
|
||||
},
|
||||
"sources": {
|
||||
"shelf_A": {
|
||||
"observe_location": "observe_A",
|
||||
"shelf_id": "shelf_A"
|
||||
}
|
||||
},
|
||||
"destinations": {
|
||||
"tote_A": {
|
||||
"location": "tote_A_stop",
|
||||
"region_ref": "tote_A"
|
||||
}
|
||||
},
|
||||
"parking_locations": {
|
||||
"shelf_A/FRONT/1": "shelf_A_stop"
|
||||
},
|
||||
"allowed_postures": [
|
||||
"pregrasp",
|
||||
"transport"
|
||||
],
|
||||
"transport_posture": "transport",
|
||||
"object_locations": {
|
||||
"water": "shelf_A_stop",
|
||||
"doll": "shelf_A_stop"
|
||||
},
|
||||
"object_postures": {
|
||||
"water": "pregrasp",
|
||||
"doll": "pregrasp"
|
||||
},
|
||||
"cell_locations": {
|
||||
"shelf_A/FRONT/1/2": "shelf_A_stop"
|
||||
},
|
||||
"cell_postures": {
|
||||
"shelf_A/FRONT/1/2": "pregrasp"
|
||||
},
|
||||
"execution_route": "SHELF_CELL",
|
||||
"object_aliases": {
|
||||
"water": [
|
||||
"矿泉水",
|
||||
"水"
|
||||
],
|
||||
"doll": [
|
||||
"玩偶"
|
||||
]
|
||||
},
|
||||
"source_aliases": {
|
||||
"shelf_A": [
|
||||
"货架A"
|
||||
]
|
||||
},
|
||||
"destination_aliases": {
|
||||
"tote_A": [
|
||||
"周转箱A"
|
||||
]
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user