当前位置:   article > 正文

宇树科技A1机器狗开源QP-MPC-Controller仿真环境搭建及运行_宇树开源代码

宇树开源代码

参考文章:硕哥大佬知乎文章又一个开源的四足机器人控制器 - 知乎 (zhihu.com)

热心网友开源环境配置解析A1-QP-MPC-Controller (matheecs.tech)

代码可以从知乎文章中跳转至github下载

本文主要用于说明如何搭建宇树科技开源代码运行环境,环境配置比较复杂,需要提前准备好一个游戏手柄,键盘无法控制机器狗运动

原始仓库采用 Docker 安装依赖环境,其实不用 Docker 也能跑,只需要按照 A1-QP-MPC-Controller/docker/Dockerfile 文件里的指令一步步执行。假设你已经安装好了 ROS,那么还需要完成以下步骤:

1.安装基本库

  1. sudo apt-get update && apt-get install -y \
  2. vim \
  3. libatlas-base-dev \
  4. libeigen3-dev \
  5. libgoogle-glog-dev \
  6. libsuitesparse-dev \
  7. python-catkin-tools \
  8. python3-matplotlib \
  9. gfortran \
  10. autoconf \
  11. coinor-libipopt-dev \
  12. libgfortran3 \
  13. curl \
  14. libopenmpi-dev \
  15. apt-utils \
  16. software-properties-common \
  17. build-essential \
  18. libssl-dev \
  19. ros-${ROS_DISTRO}-ros-control \
  20. ros-${ROS_DISTRO}-gazebo-ros \
  21. ros-${ROS_DISTRO}-joy \
  22. ros-${ROS_DISTRO}-ros-controllers \
  23. ros-${ROS_DISTRO}-robot-state-publisher

2.安装osqp及osqp-eigen等库(这里要注意大概率后续要修改库版本,因为这两个库版本要对应起来才能运行,可以先看我后面的链接)

安装 OSQP

  1. cd ~
  2. git clone --recursive https://github.com/oxfordcontrol/osqp
  3. cd osqp
  4. mkdir build
  5. cd build
  6. cmake ..
  7. make -j
  8. sudo make install

安装 osqp-eigen

  1. cd ~
  2. git clone https://github.com/robotology/osqp-eigen.git
  3. cd osqp-eigen
  4. mkdir build
  5. cd build
  6. cmake ..
  7. make -j
  8. sudo make install

安装 LCM

  1. cd ~
  2. git clone https://github.com/lcm-proj/lcm.git
  3. cd lcm
  4. mkdir build
  5. cd build
  6. cmake ..
  7. make -j
  8. sudo make install

编译(无需安装) unitree_legged_sdk & aliengo_sdk

  1. cd ~
  2. git clone https://github.com/unitreerobotics/unitree_legged_sdk.git
  3. cd unitree_legged_sdk
  4. git checkout v3.2
  5. mkdir build
  6. cd build
  7. cmake ..
  8. make -j
  1. cd ~
  2. git clone https://github.com/unitreerobotics/aliengo_sdk.git
  3. cd aliengo_sdk
  4. mkdir build
  5. cd build
  6. cmake ..
  7. make -j

3.配置环境变量

修改 ~/.bashrc 文件,末尾添加

  1. source /opt/ros/${ROS_DISTRO}/setup.bash
  2. source ~/catkin_ws/devel/setup.bash
  3. export UNITREE_LEGGED_SDK_PATH=~/unitree_legged_sdk
  4. export ALIENGO_SDK_PATH=~/aliengo_sdk
  5. #amd64, arm32, arm64
  6. export UNITREE_PLATFORM="amd64"

最后安装 unitree_ros (假设 ROS 工作空间路径为 ~/catkin_ws) 和 A1-QP-MPC-Controller

  1. cd catkin_ws/src
  2. git clone https://github.com/ShuoYangRobotics/unitree_ros.git
  3. git clone https://github.com/ShuoYangRobotics/A1-QP-MPC-Controller.git
  4. cd ~/catkin_ws
  5. catkin_make

顺利执行完以上指令后,就可以启动程序啦。以

4.启动 Gazebo 仿真

  1. # 启动 Gazebo 仿真环境
  2. $ roslaunch unitree_gazebo normal.launch rname:=a1 wname:=stairs_single
  3. # 初始化机器人位姿
  4. $ rosrun unitree_controller unitree_servo # let the robot stretch legs
  5. $ rosrun unitree_controller unitree_move_kinetic # place the robot back to origin
  6. # 启动手柄
    声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/556532
    推荐阅读
    相关标签