跳到主要内容

启动前准备

确认机器人版本和总质量(下位机)

机器人版本

  • 机器人版本通过环境变量$ROBOT_VERSION设置,版本号涉及不同机器人模型、硬件设置等, 需要和自己的机器人匹配。

  • 在终端执行echo $ROBOT_VERSION查看当前设置的版本号,如果没有设置,通过以下设置版本号(其中的42代表4pro版本,根据实际情况修改):

    1. 在当前终端执行(临时设置):

      export ROBOT_VERSION=42

    2. 将其添加到你的 ~/.bashrc 或者 ~/.zshrc 终端配置文件中: 如执行:

      `echo 'export ROBOT_VERSION=42' >> ~/.bashrc `

      添加到 ~/.bashrc 文件(bash终端)末尾,重启终端后生效

机器人质量

  • 由于每台机器人的选配不同,质量也不同,需要确认机器人的总质量,确保模型准确。(出厂时的质量会修改正确一次)
  • 机器人总质量存储于~/.config/lejuconfig/TotalMassV${ROBOT_VERSION}文件中(${ROBOT_VERSION}为上述设置的版本号),编译时会自动读取该文件,校准仓库中的模型质量。
  • 机器人称重之后,将总质量写入~/.config/lejuconfig/TotalMassV${ROBOT_VERSION}文件中即可。
  • ocs2中使用了cppad自动微分库,cppad的缓存与模型相关
    • 因此每次修改总质量文件时,会自动删除缓存目录/var/ocs2/biped_v${ROBOT_VERSION}, 下一次运行时会自动重新编译cppad模型(大概4分钟)
    • 如果手动修改了仓库中的模型,同样需要删除缓存目录,重新编译cppad模型

编译

下位机

docker环境

在没有机器人运行环境的情况下,可以使用docker环境进行编译和仿真使用。

实机环境

  • kuavo实机镜像如果较旧,需要手动安装一些依赖项:
# 提供了一个脚本用于快速在旧的kuavo实机镜像进行安装依赖
./docker/install_env_in_kuavoimg.sh
  • 实物编译
cd <kuavo-ros-opensource> #仓库目录
catkin config -DCMAKE_ASM_COMPILER=/usr/bin/as -DCMAKE_BUILD_TYPE=Release # Important!
source installed/setup.bash # 加载一些已经安装的ROS包依赖环境,包括硬件包等
catkin build humanoid_controllers

上位机

  • 编译
cd <kuavo_ros_application> #仓库目录
sros1
catkin build apriltag_ros # 优先编译apriltag_ros
catkin build