# Fault Diagnosis for a Class of Robotic Systems with Application to 2-DOF Helicopter
## 1 Introduction  
Most dynamic systems, such as industrial processes, need to operate in a continuous and safe manner; therefore, effective fault diagnosis is key to ensuring that happens. Some of the objectives of fault diagnosis are to detect, identify and localize faults as soon as possible in order to have time to take possible corrective actions. Fault diagnosis has been an area of great interest regarding dynamic systems research. However, despite the maturity of some of the available results reported in the literature, see for example in ref. [1], fault diagnosis remains a challenging research area. The main achievements of fault diagnosis available in the literature are regarding linear systems, for which a complete analysis of fault isolability is available. Simultaneous fault occurrence has also been considered. For nonlinear systems there are also some tools, like the structural analysis, within a fault isolability structural analysis is possible. Some of these challenges are the search of a general approach for nonlinear systems, isolation of faults occurring simultaneously, as well as the fault isolation of different types of faults (sensor, component and actuator faults). There are many results reported for linear systems, see for example in refs. [1; 2; 3; 4]. As well as some results reported for a class of non-linear systems, as can be seen in refs. [2; 5; 6; 7]. Model-basedfault diagnosis of nonlinear systems has been revised in refs. [2; 5; 6]. One of the first approaches working with fault diagnosis of nonlinear systems has been considered in ref. [8], where an algebraic decoupling approach was proposed. In ref. [7] a geometric approach is proposed and existence conditions for fault decoupling were given; however, the problem of residual generation was actually not completely solved. A soft computing-based approach has been revised in ref. [9]. Soft computing algorithms offer numerically reliable solutions for the fault diagnosis problem of nonlinear systems. However, these approaches does not take advantage of the system structure when the model is known. Fault estimation in non-linear systems has been proposed in refs. [10; 11; 12] using a sliding mode approach; nevertheless, it is required that a matching condition is satisfied. Another work is in ref. [13], where a way to fault estimation in a class of nonlinear systems by using a sliding observer approach was proposed. Other papers, such as [14], use different techniques to detect faults in insulators of high voltage transmission lines through the use of drones to take aerial images, which are analyzed using image processing. Detection, classification, and location of faults in electrical power transmission systems are presented in [15]. To do this, the authors use methods based on artificial intelligence. Application of fault detection techniques to hydraulic systems and manipulator robots are presented in [16; 17], respectively. In [18] provides a fault detection method and a fault tolerance control mechanism for a quadrotor to achieve a safe flight even when a single rotor is damaged. This method is also based on observers; however, they do not present experimental results, unlike our work. Other results that only consider the control problem for robotic systems such as those presented in this paper, without considering fault detection, are presented in [19; 20]. In general, any control algorithm that guarantees the stabilization of the closed-loop system can be used. In this particular paper, a PD controller is used. A more classical approach for sensor fault diagnosis using Kalman filtering has been considered in ref. [21]. In ref. [22], actuator fault diagnosis was considered by using a nonlinear adaptive observer. It is worth to note that even when the two methods used in fault diagnosis of sensors and actuators rendered good results, they are purpose-specific. A recent result that takes advantage of knowing the system's structure has been proposed in refs.