启动前准备
确认机器人版本和总质量(下位机)
机器人版本
机器人版本通过环境变量
$ROBOT_VERSION
设置,版本号涉及不同机器人模型、硬件设置等, 需要和自己的机器人匹配。在终端执行
echo $ROBOT_VERSION
查看当前设置的版本号,如果没有设置,通过以下设置版本号(其中的42代表4pro版本,根据实际情况修改):在当前终端执行(临时设置):
export ROBOT_VERSION=42
将其添加到你的
~/.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