Safe Control of Second-Order Systems with Linear Constraints
Mohammed Alyaseen, Nikolay Atanasov, Jorge Cortes
TL;DR
The paper tackles safety-critical control for second-order systems by constructing a provably control-invariant subset $\mathcal{C}^s$ of a given linear-boundary safety set $\mathcal{C}$ and by designing a continuous safe controller. It introduces a high-order CBF-inspired construction using $B_i$ functions to ensure $\mathcal{C}^s \subseteq \mathcal{C}$ and $\operatorname{Proj}_n(\mathcal{C}^s)=\operatorname{Proj}_n(\mathcal{C})$, with a QP-based controller $u^*(x)$ guaranteeing forward invariance under a General Safety Condition. The framework shows that fully actuated systems satisfy the invariance conditions, and for Euler–Lagrange dynamics it enables incorporating velocity and input constraints by tuning design parameters $\gamma$ and $\epsilon$. A 2-DOF planar manipulator example demonstrates safe collision avoidance and highlights the trade-off between safety speed (via $\gamma$) and actuation. Overall, the approach provides a practical, verifiable method to enforce safety with linear-polytopic constraints in second-order systems, with extensions to time-varying safety and underactuated or uncertain settings as future work.
Abstract
Control barrier functions (CBFs) offer a powerful tool for enforcing safety specifications in control synthesis. This paper deals with the problem of constructing valid CBFs. Given a second-order system and any desired safety set with linear boundaries in the position space, we construct a provably control-invariant subset of this desired safety set. The constructed subset does not sacrifice any positions allowed by the desired safety set, which can be nonconvex. We show how our construction can also meet safety specification on the velocity. We then demonstrate that if the system satisfies standard Euler-Lagrange systems properties then our construction can also handle constraints on the allowable control inputs. We finally show the efficacy of the proposed method in a numerical example of keeping a 2D robot arm safe from collision.
