## 3 MBSE-Driven Development for an AUV Controller  
### CIM for an AUV Controller  
On the basis of the dynamics and control frame of AUVs described in Section 2, the main use case model of AUV controllers is shown in Figure 2. Figure 3a,b describes a case study of path-tracking scenarios, where the state machine of the \"Track a desired trajectory\" use case is shown using the sequence and state diagrams of real-time UML/SysML conventions.  
The system/human actors and use cases of the AUV controller are defined as follows:  
* MDS is the measurement display system actor, which includes the guidance subsystem and navigation subsystem.
* MES is the marine environment system actor, which represents the marine environmental noises.
* Maintainer is a human actor who has authority to check the physical AUV components and configure system parameters AUV for running AUV tasks.
* \"Track a desired trajectory\" is a use case study for tracking the target of a predefined path.
* \"Ensure safety\" is a use case for ensuring system safety.
* \"Configure control parameters of the AUV\" is a use case for configuring and updating system parameters.  
Figure 1: Autonomy architecture block definition diagram for an autonomous underwater vehicle (AUV).  
* \"Maintain the physical components\" is a use case for servicing the whole physical system.  
In this work, an implemented functional block diagram (Figure 4) is proposed for the kinematic and dynamic models of an AUV, described in Equations (1) and (2), to obtain the internal continuous evolutions for the controller, where \(\Omega_{di}\), \(i=\overline{1,n}\) are desired rotational speeds, which are applied to the \(n\) actuators of the AUV, and \(\Sigma\)T and \(\tau_{\phi,\theta,\psi}\) are the overall output forces and moments acting on the actuators of the AUV.  
Figure 3: (**a**) Desired trajectory-tracking scenario, and (**b**) local state machine for performing the _“track a desired trajectory”_ use case.  
Figure 2: Use case model of the developed AUV.  
As previously assessed, the IB expansion combined with the control Lyapunov function (CLF) can be used in many AUV control applications. This was also applied to the functional blocks of deep control, position control, and attitude control (Figure 4), which participate in the continuous evolutions. PID regulators were also used for the functional block of motor control. This study did not focus on the decomposition of these control techniques for an AUV because they were developed in many AUV applications [23; 24; 25; 26; 34; 35; 88; 89; 90].  
In addition, the discrete state-space models in Equation (3), in combination with the EKF or UKF [78; 79; 80; 81; 82] implementations, allowed the estimation of the states of the developed AUV, as introduced in Section 4.  
Furthermore, hybrid automata (HA), presented by [PERSON], [PERSON], [PERSON], and [PERSON] [12], provide a mathematical model for digital computer systems that interact with an analog environment in real time. In the CIM, HA are established as shown in Equation (4).  
\[H_{\text{AUV}}=(\mathbf{Q},\mathbf{X},\mathbf{\varSigma},\mathbf{A},\mathbf{Inv},\mathbf{F},\mathbf{q}_{ \mathbf{o}},\mathbf{x}_{\mathbf{co}}), \tag{4}\]  
where \(\mathbf{Q}\) is a set of running cases of the AUV, \(\mathbf{q}_{\mathbf{o}}\in\mathbf{Q}\) is the starting situation, \(\mathbf{X}\) is the continuous state-space of continuous elements, \(\mathbf{x}_{\mathbf{co}}\in\mathbf{X}\) is the initial value, \(\mathbf{\varSigma}\) is a set of external events, \(\mathbf{A}\) is a set of transitions between running cases corresponding to events \(\mathbf{\sigma}\in\mathbf{\varSigma}\), \(\mathbf{Inv}\) is an application tool, which is used to check \(\mathbf{x}_{\mathbf{c}}\in\mathbf{inv}(\mathbf{q})\), and \(\mathbf{F}\) is the continuous global model issued from the kinematic and dynamic models in Equations (1) and (2).