




Diagnosis
This plugin concerns the failure diagnosis for discrete event systems, where failures are either modelled as unobservable failure events that correspond to an undesired system behaviour or by a language specification that characterizes the correct system behavior. Part of the diagnosis plugin was developed in the scope of Tobias Barthel's diploma thesis. The thesis discusses known methods for eventdiagnosis and languagadiagnosis from the literature [D1,D2,D3,D4,D5,D6] as well as extentions for modular diagnosis. The user reference is organized as follows:
ExampleWe illustrate the overall design of a monolithic diagnoser by the "very simple machine" example from the Synthesis reference. However, we extend the nominal behaviour by considering a possible failure when the machine is busy. The failure shows in an erroneous beta event that may occur even if the machine did not finish to process the workpiece. We model this failure by an unobservable event f followed by the erroneous sensor reading beta event.
The interpretation of the event f as a failure event is encoded the following FailureTypeMap. It defines the failuretype F to be associated with the occurence of event f: <FailureTypes> "F" <FailureEvents>"f"</FailureEvents> </FailureTypes> With the above input data, the function EventDiagnoser is used to synthesise a Diagnoser:
Each diagnoser state has an attribute attached that summarizes diagnosic information for the original system G. The initial state 1N indicates that G is in state 1 and that no failure occured so far. After the first occurrence of beta, the diagnoser takes the transition to the ambiguous state 1N 2F. Now, G could be in state 1 with no failure occurred (1N) or it could be in state 2 after the occurrence of the failure type F, indicated 2F. Only when beta occured twice in a row, the failure can be unambiguously detected. Since in the presence of the failure the second beta must indeed occur, the system is diagnosable. Literature[D1] M. Sampath, R. Sengupta, S. Lafortune, K. Sinnamohideen, and D. Teneketzis : Diagnosability of discreteevent systems , IEEE Transactions on Automatic Control, 40(9):15551575 , Sep. 1995 . [D2] S. Jiang, Z. Huang, V. Chandra, and R. Kumar : A polynomial algorithm for testing diagnosability of discreteevent systems , IEEE Transactions on Automatic Control, 46(8):13181321, Aug. 2001 . [D3] W. Qui and and R. Kumar : Decentralized failure diagnosis of discrete event systems , IEEE Transactions on Systems, men and cybernetics. Part A: Systems and Humans, 36(2):384395 , Mar. 2006 . [D4] C. Zhou, R. Kumar, R. Sreenivas : Decentralized modular diagnosis of concurrent discrete event systems , International Workshop on Discrete Event Systems pp. 388393 , May 2008 . [D5] T.S. Yoo, H. E. Garcia : Diagnosis of behaviors of interest in partially observed discreteevent systems , System & Control Letters, 57(12):10231029 , Dec. 2008 . [D6] O. Contant, S. Lafortune and D. Teneketzis : Diagnosability of Discrete Event Systems with Modular Structure , Discrete Event Dynamic Systems, 16(1):937 , Jan. 2006 . libFAUDES 2.31f  2023.02.02  with "synthesisobserverobservabilitydiagnosishiosysiosystemmultitaskingcoordinationcontroltimedsimulatoriodeviceluabindingspybindings" 