# Output Feedback Tracking Control for Vessel with Collision-Avoidance and Performance Constraints
## 4 Collision-Avoidance Switch Control Strategy
### Collision-Avoidance Controller Design  
Inspired by the collision-avoidance controller proposed in [31], we introduce artificial potential functions into the process of the controller design. The artificial potential functions repel the vessel when \(C_{ri}>0\), and the artificial potential functions are given as follows:  
\[p_{c}=\left\{ \begin{array}{ll}\frac{1}{2}\alpha_{o}(\frac{1}{p_{c}}-\frac{1} {d_{2}})^{2},&\text{if }TC=1\\ 0,&\text{otherwise}\end{array} \right. \tag{56}\]  
where \(p_{v}=\|p-p_{t}\|\) is the distance between OV and TV, \(p=[x,y]^{\mathrm{T}}\) is the position of OV, \(p_{t}=[x_{t},y_{t}]^{\mathrm{T}}\) is the center of the obstacle, and \(\alpha_{o}\) is a positive constant. \(TC\) is a triggering event when \(C_{ri}>0\). A collision-avoidance controller is presented next. Step 1: An error function is defined as  
\[z_{1c}=\eta-\eta_{d}-\eta_{c}, \tag{57}\]  
where \(\eta_{c}=[p_{c}^{T},0]^{T}\). From (4), the time derivative of (57) is  
\[\dot{z}_{1c}=R(\psi)\
u-\dot{\eta}_{d}-\dot{\eta}_{c}. \tag{58}\]  
To stabilize the error \(z_{1c}\), a kinematic control law \(\alpha_{c}\) is proposed as  
\[\alpha_{c}=R^{\mathrm{T}}(\psi)(\dot{\eta}_{d}+\dot{\eta}_{c}-K_{1c}z_{1c}), \tag{59}\]  
where \(K_{1c}\in\mathbb{R}^{3\times 3}\) is a diagonal matrix, \(\dot{\eta}_{c}\) is the signal originating from the filter \(l_{o}\dot{\eta}_{c}+\ddot{\eta}_{c}=\eta_{c}\), and \(l_{o}\) denotes a positive constant. Step 2: Define a second error vector as  
\[z_{2c}=\dot{\
u}-\bar{\alpha}_{c}-\beta_{c}, \tag{60}\]where \(\beta_{c}\) is the signal designed to solve the input saturation. \(\bar{\alpha}_{c}\) is employed to replace \(\alpha_{c}\), and it originates from the first-order filter \(l\bar{\alpha}_{c}+\bar{\alpha}_{c}=\alpha_{c}\) with time constant \(l>0\). The update law of \(\beta_{c}\) is designed as  
\[\dot{\beta}_{c}=-K_{2c}\beta_{c}-M^{-1}\varpi \tag{61}\]  
where \(K_{2}\in\mathbb{R}^{3\times 3}\) denotes a diagonal matrix. The time derivative of \(z_{2c}\) is  
\[\dot{z}_{2}=-K_{\omega 2}R^{\mathrm{T}}(\psi)\bar{\eta}+\dot{\zeta}+M^{-1}( \tau_{c}-\varpi)-\bar{\alpha}_{c}-\dot{\beta}_{c}. \tag{62}\]  
To stabilize \(z_{2c}\), we design a control law as follows:  
\[\tau_{c}= M(-K_{3c}z_{2c}-\dot{\zeta}+\dot{\alpha}_{c}+K_{2c}\beta_{c}-R^{T}( \psi)z_{1c}), \tag{63}\]  
where \(K_{3c}\in\mathbb{R}^{3\times 3}\) represents a diagonal matrix. Lemma 3: _Consider the dynamically positioned vessel dynamics (1) and (2), the kinetic control law (63), the observer (6)-(8), the update law of \(\beta_{c}\) (61) with input saturation, environmental disturbances, and model uncertainty; if Assumptions 1 and 2 are satisfied, the proposed CASC guarantees that all signals in the closed-loop system are bounded._  
Proof: A Lyapunov function candidate is defined as  
\[V_{1}=\frac{1}{2}z_{1}^{\mathrm{T}}z_{1}, \tag{64}\]  
and the time derivative of \(V_{1}\) can be given as  
\[\dot{V}_{1}= z_{1c}^{\mathrm{T}}[R(\psi)\
u-\dot{\mu}_{d}-\dot{\eta}_{c}]. \tag{65}\]  
Along with \(l\dot{\alpha}_{c}+\bar{\alpha}_{c}=\alpha_{c}\) and \(\bar{\alpha}_{c}=\bar{\alpha}_{c}-\alpha_{c}\), the time derivative of \(V_{1}\) is  
\[\dot{V}_{1}= z_{1c}^{\mathrm{T}}[R(\psi)(z_{2c}+\alpha_{c}+\beta_{c}+\bar{ \alpha}_{c}-\bar{\
u})-\dot{\eta}_{d}-\dot{\eta}_{c}]. \tag{66}\]  
Substituting (59) into (66), the time derivative of \(V_{1}\) is  
\[\dot{z}_{1c}=R(\psi)\
u-\dot{\eta}_{d}-\dot{\eta}_{c}. \tag{58}\]0  
where \(\Delta_{\varpi}\) is a positive constant.