[ANN] FaultDetectionTools.jl - Fault Detection and Isolation Tools

I am pleased to announce the release v1.0 of the package FaultDetectionTools for the solution of synthesis problems of fault detection and model detection filters using model-based approaches. These filters are the main components of fault diganosis systems, their role being to generate reliable information which serves for the monitoring and safe operation of complex industrial plants.

The implemented functions are based on the computational procedures described in Chapters 5, 6 and 7 of the book:

Andreas Varga, Solving Fault Diagnosis Problems, Linear Synthesis Techniques, vol. 84 of Studies in Systems, Decision and Control, Springer International Publishing, 2017.

This book describes the mathematical background of solving synthesis problems of fault detection and model detection filters and gives detailed descriptions of the underlying synthesis procedures. All computational results presented in this book can be reproduced using the provided script files for examples and case studies. A short account of the computational aspects of fault detection and diagnosis can be found in the Encyclopedia of Systems and Control (2019) article (see here for an extended and updated version).

The functions of FaultDetectionTools primarily rely on those of the DescriptorSystems package, which provides the basic computational tools required in the synthesis procedures. The linear time-invariant descriptor system state-space models represent the basis for the definition of various fault and model detection related objects. The implemented functionality parallels that of the MATLAB collection of tools FDITOOLS.

A roadmap for further developments includes various potential extensions and enhancements:

  • adding customized simulation and plotting facilities;

  • adding support for building fault detection and model detection systems architectures using
    suitable modeling tools (e.g., Modia or ModelingToolkit ) ;

  • optimal tuning of free design parameters using suitable optimization techniques (e.g., with JuMP);

  • using robust synthesis methods based on multiple models in conjunction with nonsmooth optimization methods;

  • using gain-scheduling based robust synthesis of fault detection filters.