petercorke/robotics-toolbox-matlab

Robotics Toolbox for MATLAB

Robotics Toolbox for MATLAB – 概述

它是什么 – 一个成熟、开源的 MATLAB 工具箱,为 MATLAB 环境添加经典机器人学算法。它提供串联链机械臂、移动机器人运动学、动力学、路径规划、定位、SLAM 的 MATLAB 类表示,以及一些 Simulink 模型(例如四旋翼)。代码可追溯至 1993 年,早于 MathWorks 自家的 Robotics System Toolbox。

主要功能

  • 机械臂建模 – 为任何串联机器人(例如 Puma 560、Kinova、UR)创建 SerialLink 对象。提供正运动学、逆运动学、动力学(RNE)、Jacobian 等函数。
  • 移动机器人模型 – 单轮、双轮、汽车型车辆;规划器如 Bug、D*、PRM、Reeds‑Shepp、格状和 RRT;通过 EKF 或粒子滤波器定位;地图构建和 EKF‑SLAM。
  • 模拟与可视化 – 2‑D/3‑D 动画(plot3d、plot_vehicle)、GIF/视频导出,以及非完整约束车辆和四旋翼的 Simulink 块。
  • 扩展性 – 源代码完全可用;用户可以重写函数以提升速度、编译为 MEX,或添加新算法。

典型工作流程(来自 README)

  1. 加载机器人模型,例如 mdl_puma560。
  2. 使用该对象(p560)计算正运动学(p560.fkine(q))或逆运动学(p560.ikine6s(T))。
  3. 生成关节空间轨迹(jtraj)并动画化(p560.plot3d)。
  4. 对于移动机器人,定义起点/终点位姿,调用规划器(ReedsShepp),然后用 plot_vehicle 可视化。
  5. 执行定位演示,例如输出动画的粒子滤波器(ParticleFilter)。

安装

  • MATLAB‑Drive 方法 – 分享预打包的文件夹,运行 startup_rvc.m。
  • GitHub 方法 – 克隆此仓库以及必要的 spatial-math 和 toolbox-common-matlab 仓库,运行 make -C robot 构建 MEX/Java 文件,然后添加路径并调用 startup_rvc。

适用对象

  • 需要清晰、可读的经典机器人学算法参考实现的研究人员和学生。
  • 在以 MATLAB 为中心的课程中教授机器人运动学、动力学、规划、SLAM 或控制的教育者。
  • 想要在不购买商业工具箱的情况下进行机器人仿真原型的爱好者。

许可证 – GNU LGPL v3,允许在学术和商业项目中使用(受 LGPL 条款约束)。

何处获取帮助 – Google 群组论坛、FAQ 页面,以及作者的电子邮件(rvc@petercorke.com)。

相关

  • 项目
  • 项目
  • 项目
  • 项目