Controllers

Background

Quadratic Programming Safety Filters

ControlBarrierFunctions.ExplicitSafetyFilterType
ExplicitSafetyFilter <: SafetyFilter

Controller that uses the closed-form solution to a control barrier function quadratic program.

Fields

  • k::Function : function that computes safe control actions
source
ControlBarrierFunctions.QPSafetyFilterType
QPSafetyFilter <: SafetyFilter

Controller that solves a control barrier function-based quadratic program (CBF-QP).

Uses OSQP to solve the corresponding QP.

Fields

  • k::Function : function that computes safe control actions
source
ControlBarrierFunctions.QPSafetyFilterMethod
QPSafetyFilter(cbf::ControlBarrierFunction, Σ::ControlAffineSystem, kd::Function)
QPSafetyFilter(cbf::ControlBarrierFunction, Σ::ControlAffineSystem, kd::Function, umin, umax)

Add ability to pass in single CBF.

source
ControlBarrierFunctions.TunableQPSafetyFilterType
TunableQPSafetyFilter <: SafetyFilter

Controller that solves a control barrier function-based quadratic program (CBF-QP) with tunable class K functions.

Uses OSQP to solve the corresponding QP.

Fields

  • k::Function : function that computes safe control actions
source

Smooth Safety Filters

ControlBarrierFunctions.SmoothSafetyFilterType
SmoothSafetyFilter <: SafetyFilter

Smooth controller that approximates CBF-QP arbitrarily closely.

Fields

  • formula::String : string indicating formula used in smooth safety filter
  • σ::Float64 : smoothing parameter
  • k::Function : function that computes safe control actions
source
ControlBarrierFunctions.ISSfSmoothSafetyFilterType
ISSfSmoothSafetyFilter <: SafetyFilter

Smooth controller that approximates an input-to-state safe (ISSf) CBF-QP arbitrarily closely.

Fields

  • formula::String : string indicating formula used in smooth safety filter
  • σ::Float64 : smoothing parameter
  • k::Function : function that computes safe control actions
  • ε::Float64 : Issf robustness parameter for matched uncertainties
source