FaultDetectionTools.jl

DocBuild Code on Github.

The FaultDetectionTools.jl package (or shortlyFDITools) is a collection of Julia functions for the analysis and solution of fault detection and isolation (FDI) problems and model detection problems. The functions of this collection rely on the DescriptorSystems package [2], whose underlying computational functions are based on the MatrixPencils.jl [3] and MatrixEquations.jl [4] packages.

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.

The targeted functionality parallels the functionality of the MATLAB collection of tools FDITOOLS, whose User's Guide of the version V1.0 is provided in the file fditoolsdoc.pdf. Supplementary information on the targeted functionality is also available on arXiv in the documentation of the companion MATLAB FDITOOLS collection.

The available functions in the current version of the FaultDetectionTools.jl package are:

Building FDI related objects

  • FDIModel Fault detection and isolation synthesis model.
  • FDFilter Fault detection filter object.
  • FDIFilter Fault detection and isolation filter object.
  • FDFilterIF Fault detection filter internal form object.
  • FDIFilterIF Fault detection and isolation filter internal form object.
  • fdimodset Setup of synthesis models for solving fault detection and isolation problems.
  • fdIFeval Evaluation of the internal forms of fault detection and isolation filters.

Analysis of FDI synthesis models

  • fdigenspec Generation of achievable FDI specifications.
  • fdichkspec Feasibility analysis of a set of FDI specifications.

Solving FDI problems

  • efdsyn Exact synthesis of fault detection filters.
  • efdisyn Exact synthesis of fault detection and isolation filters.
  • afdsyn Approximate synthesis of fault detection filters.
  • afdisyn Approximate synthesis of fault detection and isolation filters.
  • emmsyn Exact model-matching based synthesis of fault detection filters.
  • ammsyn Approximate model-matching based synthesis of fault detection filters.

Performance evaluation of FDI filters

  • fditspec Computation of the weak or strong structure matrix.
  • fdisspec Computation of the strong structure matrix.
  • fdiscond Computation of the fault detection sensitivity condition.
  • fdif2ngap Computation of the fault-to-noise gap.
  • fdimmperf Computation of the model-matching performace.

Building model detection related objects

  • MDModel Model detection component synthesis model.
  • MDMModel Model detection multiple synthesis model.
  • mdmodset Setup of multiple synthesis models for solving model detection problems.
  • MDFilter Model detection filter object.
  • MDFilterIF Model detection filter internal form object.
  • mdIFeval Evaluation of the internal forms of model detection filters.

Analysis of model detection synthesis models

  • mdgenspec Generation of achievable model detection specifications.
  • mddist Computation of distances between component models.
  • mddist2c Computation of pairwise distances between two sets of component models.

Solving model detection problems

  • emdsyn Exact synthesis of model detection filters.
  • amdsyn Approximate synthesis of model detection filters.

Performance evaluation of model detection filters

  • mdspec Computation of the weak structure matrix.
  • mdsspec Computation of the strong structure matrix.
  • mdperf Computation of the distance-matching performace.
  • mdmatch Computation of the distance-matching performace to a component model.
  • mdgap Computation of the noise gaps.

Computational utilities

  • fdhinfminus Evaluation of the H∞- index of the transfer function matrix of a descriptor system model.
  • fdhinfmax Evaluation of the maximum of column norm of the transfer function matrix of a descriptor system model.
  • fditspec_ Computation of the weak or strong structure matrix of a descriptor system model.
  • fdisspec_ Computation of the strong structure matrix of a descriptor system model.
  • fdiscond_ Computation of the column-gains sensitivity condition of the transfer function matrix of a descriptor system model.

Release Notes

Main developer

Andreas Varga

License: MIT (expat)

References

[1] A. Varga, Solving Fault Diagnosis Problems – Linear Synthesis Techniques, Vol. 84 of Studies in Systems, Decision and Control, Springer International Publishing, 2017.

[2] A. Varga, DescriptorSystems.jl: Manipulation of generalized state-space (descriptor) system representations. Zenodo: https://doi.org/10.5281/zenodo.5148319.

[3] A. Varga, MatrixPencils.jl: Matrix pencil manipulation using Julia. Zenodo: https://doi.org/10.5281/zenodo.3894503.

[4] A. Varga, MatrixEquations.jl: Solution of Lyapunov, Sylvester and Riccati matrix equations using Julia. Zenodo: https://doi.org/10.5281/zenodo.3556867.