Controllers
Background
Quadratic Programming Safety Filters
ControlBarrierFunctions.ExplicitSafetyFilter
— TypeExplicitSafetyFilter <: SafetyFilter
Controller that uses the closed-form solution to a control barrier function quadratic program.
Fields
k::Function
: function that computes safe control actions
ControlBarrierFunctions.ExplicitSafetyFilter
— MethodExplicitSafetyFilter(cbf::ControlBarrierFunction, Σ::ControlAffineSystem, kd::Function)
Construct an ExplicitSafetyFilter from a cbf and a desired controller.
ControlBarrierFunctions.ExplicitSafetyFilter
— MethodExplicitSafetyFilter(cbf::ControlBarrierFunction, Σ::ControlAffineSystem)
If no desired controller passed in then default it to zero.
ControlBarrierFunctions.QPSafetyFilter
— TypeQPSafetyFilter <: 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
ControlBarrierFunctions.QPSafetyFilter
— MethodQPSafetyFilter(cbf::ControlBarrierFunction, Σ::ControlAffineSystem, kd::Function)
QPSafetyFilter(cbf::ControlBarrierFunction, Σ::ControlAffineSystem, kd::Function, umin, umax)
Add ability to pass in single CBF.
ControlBarrierFunctions.QPSafetyFilter
— MethodQPSafetyFilter(cbfs::Vector{ControlBarrierFunction}, Σ::ControlAffineSystem, kd::Function)
Construct an QPSafetyFilter from a cbf and a desired controller.
ControlBarrierFunctions.TunableQPSafetyFilter
— TypeTunableQPSafetyFilter <: 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
Smooth Safety Filters
ControlBarrierFunctions.SmoothSafetyFilter
— TypeSmoothSafetyFilter <: SafetyFilter
Smooth controller that approximates CBF-QP arbitrarily closely.
Fields
formula::String
: string indicating formula used in smooth safety filterσ::Float64
: smoothing parameterk::Function
: function that computes safe control actions
ControlBarrierFunctions.ISSfSmoothSafetyFilter
— TypeISSfSmoothSafetyFilter <: 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 parameterk::Function
: function that computes safe control actionsε::Float64
: Issf robustness parameter for matched uncertainties