An automated method of diagnosing potential and existing faults on a plurality of machine each of which have a plurality of components, using an expert system having a knowledge engineering tool, a machine information database (MID) containing information on characteristics of various components of said plurality of machines, a sensory input database (SID) containing sensory data taken at predetermined locations on each of said plurality of machines, and a knowledge base containing a plurality of general rules that are applicable to all components of interest in the plurality of machines without reference to any specific machine, said knowledge base including a fact base, and a rule base containing a plurality of rules each of which have as a premise, test conditions which when satisfied will conclude on a component fault or will conclude on another test condition which then becomes the premise for one or more other rules, comprising the step of:
- (1) selecting one of the machines for diagnosis,
- (2) storing, in the fact base, the machine data from the MID and associated sensor data from the SID for the selected machine,
- (3) applying certain rule in the rule base to the stored MID and SID data to compile a list a hypothesized faults,
- (4) based on hypothesized faults, and the stored MID and SID data, selecting a list of rules from the plurality of rules which are applicable to the current machine configuration,
- (5) backward chaining through said applicable rules to confirm which if any of the hypothesized fault are the cause of the machine problem.