| docs: sync architecture and rename legacy control modes
Update READMEs and architectural documentation to reflect the removal of
'rosetta' and 'robot_interface' packages. Sync 'teleop_act' to
'model_inference' across all configuration and documentation files.
- Remove all 'rosetta' and 'robot_interface' mentions in READMEs.
- Update 'docs/architecture.md' and 'docs/roadmap.md' to current status.
- Rename 'teleop_act' mode to 'model_inference' in robot_config YAMLs.
- Update launch builders to search in 'robot_config/config/contracts'.
- Clean up 'tensormsg' docstrings and comments.
Signed-off-by: XiaoqiangWu <wuxiaoqiang.rtos@huawei.com>
| 2 个月前 |
| robot_config: integrate lekiwi mobile base
Add a LeKiwi robot profile with control, teleop, recording, and
navigation support so the mobile base can launch through the
unified robot_config entrypoint.
Wire Gazebo sensor bridges for the LeKiwi simulation path and
extend robot_config builders to support the new mobile base.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: XiaoqiangWu <wuxiaoqiang.rtos@huawei.com>
| 1 个月前 |
| feat(navi): replace FunASR with local sherpa-onnx + add tests
Voice control refactoring:
- Add voice_control node bridging voice_asr_service (sherpa-onnx) to
nav2_goal_client via keyword matching, replacing external FunASR
WebSocket client that required a separate server deployment
- Add hotword registration: voice_control auto-pushes keywords to
voice_asr_node at startup via SetHotwords service (ibrobot_msgs)
- Remove funasr_client_node, FunASR install/start scripts, and
python3-websockets dependency
- Clean up lekiwi_navi.yaml: replace stale funasr config with voice_asr
section; update model path to relative path
- Update voice_nav.py launch builder for voice_control node
- Update README with new architecture and ROS interface docs
lekiwi_hardware refactoring:
- Extract lekiwi_conversions.hpp (header-only) with 6 pure conversion
functions (ticks_to_radians, radians_to_ticks, steps_to_rad_s,
rad_s_to_steps, decode_motor_register, encode_homing_offset)
- Refactor lekiwi_system_hardware.cpp to use extracted functions,
removing inline conversion logic
- Add 55 gtest cases covering all conversion functions and round-trip
consistency (test_lekiwi_conversions.cpp)
Test coverage:
- Add pytest tests for voice_control (40 cases: keyword matching,
destination resolution, stop handling, hotword extraction, e2e)
- Add pytest tests for cmd_vel_bridge (IK/FK, velocity scaling,
quaternion, joint feedback, odometry integration)
- Add pytest tests for nav2_goal_client (goal dispatch, cancellation,
task description caching, timeout handling)
Also fix asr_inference_module to correctly load encoder/decoder ONNX
files for streaming paraformer model.
Signed-off-by: yanhan <yanhan31@huawei.com>
| 18 天前 |
| chore: initial monorepo migration for IB_Robot
Signed-off-by: XiaoqiangWu <wuxiaoqiang.rtos@huawei.com>
| 3 个月前 |
| feat: implement and optimize Xbox teleoperation support
* Add XboxTeleopDevice with full-state reporting
* Fix dead-travel and jumps via State-Following and Direction-Snap
* Increase lead clamping to 0.5 rad for better responsiveness
* Add tiered and mode-specific usage instructions
* Delay teleop startup until controllers are ready in launch
* Enable gripper control in Cartesian mode
* Add Xbox mapping and MoveIt Servo configurations
| 2 个月前 |