| fix(moveit): refactor moveit_gateway for shared 5-DOF IK strategy
Extract _move_with_strategies helper to deduplicate the IK planning
logic used by both MoveToPose and MoveRelativeEE service handlers.
Applies a consistent 3-attempt cascade (relaxed → strict → fallback)
for 5-DOF arm planning across all motion entry points.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: liuweihong <liuweihong8@huawei.com>
| 22 天前 |
| fix(moveit): refactor moveit_gateway for shared 5-DOF IK strategy
Extract _move_with_strategies helper to deduplicate the IK planning
logic used by both MoveToPose and MoveRelativeEE service handlers.
Applies a consistent 3-attempt cascade (relaxed → strict → fallback)
for 5-DOF arm planning across all motion entry points.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: liuweihong <liuweihong8@huawei.com>
| 22 天前 |
| feat(msgs): add ibrobot_msgs ROS 2 interfaces
Add ROS 2 message, service and action definitions for the embodied AI pipeline:
- Actions: PrimitiveCommand, SkillCommand
- Messages: SceneAnalysisRequest, SceneAnalysisResult, TaskCommand, TaskStatus
- Services: ValidatePrimitive, ValidateSkill
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: liuweihong <liuweihong8@huawei.com>
| 22 天前 |
| feat(msgs): add ibrobot_msgs ROS 2 interfaces
Add ROS 2 message, service and action definitions for the embodied AI pipeline:
- Actions: PrimitiveCommand, SkillCommand
- Messages: SceneAnalysisRequest, SceneAnalysisResult, TaskCommand, TaskStatus
- Services: ValidatePrimitive, ValidateSkill
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: liuweihong <liuweihong8@huawei.com>
| 22 天前 |
| interfaces: consolidate definitions into ibrobot_msgs
Refactor the message and action definitions by moving them from the
'rosetta_interfaces' package to the new 'ibrobot_msgs' package.
- Update 'action_dispatch', 'inference_service', 'rosetta', and 'tensormsg'
to use the new 'ibrobot_msgs' dependencies.
- Remove deprecated 'episode_recorder.py' and 'bag_to_lerobot.py' from
the 'rosetta' package.
- Clean up and migrate 'rosetta_interfaces' contents.
Signed-off-by: XiaoqiangWu <wuxiaoqiang.rtos@huawei.com>
| 2 个月前 |
| feat: add task_dispatch framework for unified task-level execution
Add a unified task execution framework (task_dispatch) that bridges
task-level planners (visual_grasp, VoxPoser, etc.) and the existing
MoveIt motion execution layer (moveit_gateway + ros2_control).
Architecture overview:
Planners → ExecuteTaskPlan action → TaskExecutorNode
TaskExecutorNode dispatches:
MOVE_TO_POSE → /moveit_gateway/move_to_pose service
GRIPPER → gripper trajectory controller
WAIT → timed delay
New packages:
- task_dispatch: TaskExecutorNode with ExecuteTaskPlan action server
New message types (ibrobot_msgs):
- msg/TaskStep.msg: single step in a task plan (pose/gripper/wait)
- action/ExecuteTaskPlan.action: execute a sequence of TaskSteps
- srv/MoveToPose.srv: synchronous move-to-pose via MoveIt gateway
Modified packages:
- robot_moveit: moveit_gateway gains MoveToPose service + motion_status
- robot_config: launch_builders/task_execution.py auto-launches
task_executor for moveit-based control modes
- robot.launch.py: section 11.5 integrates task executor launch
This framework is the counterpart to action_dispatch:
action_dispatch = joint-level streaming (ACT/VLA, 100Hz)
task_dispatch = task-level sequencing (MoveIt planners, event-driven)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: XiaoqiangWu <wuxiaoqiang.rtos@huawei.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
| 1 个月前 |