tkkim-robot/safe_control

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

해결하는 문제

safe_control는 로봇의 안전한 비행을 보장하기 위해 설계된 Python 라이브러리입니다. 기존의 장애물뿐 아니라 동적 장애물까지 포함하여, 웨이포인트 추종 또는 궤적 추적을 가능하게 하면서도 충돌을 방지하는 통합 코드베이스를 제공합니다.

작동 방식

이 라이브러리는 다양한 Control Barrier Function (CBF) 기반의 컨트롤러와 세이프티 필터를 구현합니다. 수학적 제약을 사용하여 로봇이 "안전한 상태 집합" 내에 머무르도록 보장합니다. 주요 구현 사항은 다음과 같습니다:

  • 위치 제어기: 충돌 회피를 위한 CBF-QP, MPC-CBF, 최적 감쇠 CBF.
  • 세이프티 실드: gatekeeper 알고리즘은 일반 제어기와 백업 제어기 사이에 필터 역할을 하여 무한 시간 동안 안전성을 보장합니다.
  • 역학적 지원: 단순한 적분기, 유니사이클에서부터 복잡한 큐드로터, VTOL, 동적 자전거 모델(드리프팅 차량 포함)까지 다양한 로봇 모델을 지원합니다.
  • 센서 시뮬레이션: 제한된 시야각을 가진 RGB-D 카메라 센서를 시뮬레이션하여 미지의 장애물에 대한 실시간 탐지가 가능합니다.

대상 사용자

이 라이브러리는 자율 차량, 드론, 다중 에이전트 로봇 시스템용 안전한 제어 시스템을 개발하는 로봇 연구자 및 엔지니어를 위한 것입니다.

주요 특징

  • 다양한 로봇 지원: 운동학적/역학적 자전거 모델과 3D 큐드로터 등 다양한 역학 모델과 호환됩니다.
  • 동적 장애물 회피: 이동하는 장애물에 대응하기 위한 고급 CBF인 C3BF 및 DPCBF를 구현합니다.
  • 다중 에이전트 기능: 동일 및 비동일한 로봇 팀의 네비게이션을 지원합니다.
  • 슈퍼타원 장애물: 미분 가능한 슈퍼타원을 사용하여 직사각형 장애물을 근사할 수 있습니다.
  • 인터랙티브 시각화: 시뮬레이션용 실시간 플롯팅 및 애니메이션 도구를 포함합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트