中文 | English
视频中测试程序为
tools/dynamics_test/real/inverse_dynamics_test.py脚本运行后选择:1-重力补偿模式
根据实际情况配置
tools/dynamics_test/dynamics_test.yaml中串口等信息
CAN设备使用维特USB-CAN模块,串口波特率921600,CAN总线波特率1M
使用JellyCAD参数化建模,模型参数在/jellycad_src目录下,软件下载地址:JellyCAD v0.3.10
结构件可3D打印,已上传到MakerWorld
单个电机运动调试和关节零点标定的界面
python tools/motor_gui/motor_gui.pypython tools/dynamics_test/realtime_torque_compensation.py运行前请阅读下面
⚠️ 注意事项
建议运行环境:
- Ubuntu 24.04
- ROS2 Jazzy + MoveIt!
- 创建工作空间
mkdir -p ~/mockway_ws/src
cd ~/mockway_ws/src- 克隆mockway_robotics仓库
git clone https://github.com/Jelatine/mockway_robotics.git- 编译工作空间
cd ~/mockway_ws
rosdep install --from-paths src/mockway_robotics/moveit_mockway_config/ --ignore-src -r -y
colcon build --symlink-install --packages-select moveit_mockway_config- 配置环境变量
source ~/mockway_ws/install/setup.bash- 启动程序
ros2 launch moveit_mockway_config demo.launch.py- 安装
lua
sudo apt install liblua5.4-dev- 构建
mockway_bringup
cd ~/mockway_ws
rosdep install --from-paths src/mockway_robotics/ --ignore-src -r -y
colcon build --symlink-install --packages-select mockway_bringup- 启动程序
# 启动 move_group + servo ,仿真:use_mock_hardware:=true
ros2 launch mockway_bringup bringup.launch.py use_mock_hardware:=true
# 浏览器打开前端:http://localhost:8080/- 将skill文件放到openclaw的workspace目录下
- 对话时让大模型学习skill文件中的指令,以及机械臂控制器的IP地址(或主机名)
- 用自然语言控制机械臂,如:直线向上移动10厘米
详细的物料清单请查看:BOM.md
复刻成本约4.2k(电机≈4k,打印件≈20,USB2CAN≈73,电源≈100,螺丝及工具<40)
重要提示:力矩模式如果前期准备没做好容易发生飞车(失控)现象,请务必按照以下步骤操作。
确保机械结构与URDF模型一致。GitHub仓库最新版本已包含所有必需的结构件。
使用电机调试界面标定各关节零点位置,零点姿态需参考URDF定义。
python tools/motor_gui/motor_gui.py在代码中注释掉controller.enable_motors(),先运行程序观察计算的力矩值是否正常。有条件的话,建议先运行一次位置模式,对比实际力矩与算法计算力矩的差异是否较小。
初次测试时:
- 使用模式1(重力补偿模式)进行测试
- 增加电机阻尼参数:设置
mit_params.kd = 1
3D打印结构件时注意:
- 提高填充百分比(建议≥40%)
- 使用螺旋体(Gyroid)填充图案,以提高强度和减轻重量






