No version for distro humble. Known supported distros are highlighted in the buttons above.
No version for distro jazzy. Known supported distros are highlighted in the buttons above.
No version for distro rolling. Known supported distros are highlighted in the buttons above.
Repository Summary
Description | |
Checkout URI | https://github.com/shineminxing/ros2go2estimator.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-04-25 |
Dev Status | UNKNOWN |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
dds_rostopic | 0.0.0 |
fusion_estimator | 0.0.0 |
message_handle | 0.0.0 |
sport_control | 0.0.0 |
README
Ros2Go2Estimator 🦾
- 一种高精度里程计解决方案,
- 基于纯运动学的双足/四足机器人位置估计算法,目前仅使用IMU、足压力传感器、关节角度和角速度,不依赖相机或Lidar,但可将信号融合进去,进一步提高估计精度;
- sport_control包读取joystick输入和其他指令,使用unitree_sdk2提供的接口控制机器狗;
- fusion_estimator包发布对应“base_link”的话题SMX/Odom和对应“base_link_2D”的话题SMX/Odom_2D;
- dds_rostopic包将dds的lidar、230.1.1.1:1720的相机数据发布为ros2话题;
- message_handle包完成SMX/Odom和SMX/Odom_2D的tf,此外,将frame“utlidar_lidar”的pointcloud2转换为“base_link_2D”话题/SMX/Scan;
- 使用SLAM Toolbox建图时放开sport_control/launch/sport_control_launch.py的启动项ros2 run slam_toolbox async_slam_toolbox_node ……;
- 使用Nav2导航时放开sport_control/launch/sport_control_launch.py的启动项ros2 launch nav2_bringup bringup_launch.py ……;
📚 补充说明
- 切换两足、四足无需在估计器内做模式切换
- 目前没有调整参数做补偿,工程使用时可进一步提升精度
- SLAM Toolbox目前是纯里程计建图,请擅长SLAM的同志自行把地图匹配加进去
- Nav2同样请自行调整,加载的地图记得改成自己的
- 可安装voice_chat进行deepseek的语音交流https://github.com/ShineMinxing/Ros2Chat
- 也适用于foxy系统,把apt install的软件改为-foxy-即可
🎥 视频演示
最新进展(点击图片进入视频)
实验记录
⚙️ 安装指南
- Use Ubuntu 22.04, ROS2 Humble
sudo apt install ros-humble-joy ros-humble-nav2-msgs ros-humble-slam-toolbox ros-humble-nav2-bringup python3-pip libopencv-dev ros-humble-cv-bridge
mkdir -p ~/ros2_ws/LeggedRobot/src && cd ~/ros2_ws/LeggedRobot/src
git clone --recursive https://github.com/ShineMinxing/Ros2Go2Estimator.git
cd ..
colcon build
ros2 launch sport_control sport_control_launch.py
- 记得在src/joystick_control/launch/joystick_control_launch.py中,修改机器狗的网口名,我个人的是“br0”。
- 同时按下手柄的LT、RT,解锁/锁定手柄;按住RT+左摇杆进行移动;按住RT+右摇杆进行旋转;更多操作请看joystick_control_node.cpp。
📄 相关文档
- 核心算法原理: 技术文档
- 历史项目参考: Aliengo ROS1项目
📧 联系我们
博士团队: 401435318@qq.com
研究所: 中国科学院光电技术研究所
📌 注意:当前为开发预览版,完整文档正在编写中 ``
CONTRIBUTING
No CONTRIBUTING.md found.
No version for distro noetic. Known supported distros are highlighted in the buttons above.
No version for distro ardent. Known supported distros are highlighted in the buttons above.
No version for distro bouncy. Known supported distros are highlighted in the buttons above.
No version for distro crystal. Known supported distros are highlighted in the buttons above.
No version for distro eloquent. Known supported distros are highlighted in the buttons above.
No version for distro dashing. Known supported distros are highlighted in the buttons above.
No version for distro galactic. Known supported distros are highlighted in the buttons above.
No version for distro foxy. Known supported distros are highlighted in the buttons above.
No version for distro iron. Known supported distros are highlighted in the buttons above.
No version for distro lunar. Known supported distros are highlighted in the buttons above.
No version for distro jade. Known supported distros are highlighted in the buttons above.
No version for distro indigo. Known supported distros are highlighted in the buttons above.
No version for distro hydro. Known supported distros are highlighted in the buttons above.
No version for distro kinetic. Known supported distros are highlighted in the buttons above.
No version for distro melodic. Known supported distros are highlighted in the buttons above.