tkkim-robot/safe_control

Safety-critical controllers for single/multi robotic navigation: CBF-QP, MPC-CBF, and etc.

解决的问题

safe_control 是一个专为确保机器人安全导航而设计的 Python 库。它提供了一个统一的代码库,可在允许机器人跟踪航点或轨迹的同时,防止与已知和未知障碍物(包括动态障碍物)发生碰撞。

工作原理

该库实现了多种基于控制屏障函数(CBF)的控制器和安全过滤器。通过数学约束确保机器人始终处于“安全状态集”内。主要实现包括:

  • 位置控制器:CBF-QP、MPC-CBF 和最优衰减 CBF,用于避障。
  • 安全防护gatekeeper 算法作为名义控制器与备用控制器之间的过滤器,可保证无限时间内的安全性。
  • 动力学支持:支持从简单积分器、单轮车到复杂四旋翼、VTOL 以及动态自行车模型(包括漂移汽车)等多种机器人模型。
  • 传感模拟:模拟具有有限视场的 RGB-D 相机传感器,以处理未知障碍物的在线检测。

适用人群

本库适用于开发自动驾驶车辆、无人机及多智能体机器人系统安全控制系统的机器人研究人员和工程师。

主要亮点

  • 多样化的机器人支持:兼容多种动力学模型,包括运动学/动力学自行车模型和 3D 四旋翼。
  • 动态障碍物避让:实现 C3BF 和 DPCBF 等先进 CBF,用于应对移动障碍物。
  • 多智能体能力:支持同质与异质机器人团队的导航。
  • 超椭球障碍物:使用可微分的超椭球近似矩形障碍物。
  • 交互式可视化:包含用于仿真的实时绘图和动画工具。

相关

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