The disclosed embodiments generally relate to computer-based methods for fault identification in a system, and more particularly relate to methods, systems and apparatus for ranking tests used to identify or isolate faults in a system.
When a system experiences a fault or failure, diagnostic tests can be performed to identify or isolate the fault (e.g., the source of the fault and/or other details regarding the fault). In many systems more than one test can be done to identify or isolate the fault. The tests that are performed to identify or isolate a particular fault condition, and the order in which they are performed, is either random or at the discretion of testing personnel. One drawback of this approach is that it can be an inefficient and time-consuming endeavor particularly as the number of different tests that can be used to attempt to identify or isolate the fault increases. The capabilities of the different tests to identify or isolate the fault can vary. Not all tests are equal in their capability to identify or isolate a particular fault condition.
There is a need for methods, systems and appartus that can be used to determine which tests are most effective in identifying or isolating a particular fault condition.
It would be desirable to provide improved methods, systems and apparatus for ranking tests used to identify or isolate faults in a system. Furthermore, other desirable features and characteristics of the present invention will become apparent from the subsequent detailed description of the invention and the appended claims, taken in conjunction with the accompanying drawings and this background of the invention.
Methods, systems and apparatus are provided for ranking tests used to identify or isolate faults or fault conditions in a system.
In accordance with one embodiment, a method is provided for ranking tests of interest. A set of failure modes of interest and a set of tests of interest are determined. A differentiation factor is then computed for each of the tests of interest, and each of the tests of interest can then be ranked based on their respective differentiation factors.
The present invention will hereinafter be described in conjunction with the following drawing figures, wherein like numerals denote like elements, and
The following detailed description is merely exemplary in nature and is not intended to limit the invention or the application and uses of the invention. As used herein, the word “exemplary” means “serving as an example, instance, or illustration.” Any embodiment described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments. Furthermore, there is no intention to be bound by any theory presented in the preceding background or the following detailed description.
Throughout this disclosure some terms are referenced that will now be defined as follows.
As used herein, the term “module” can refer to a sub-system or component of a complex system. A module can be a hardware module, a software module or a combination thereof. As used herein the term “hardware module” can refer to a device, a circuit, an electrical component, or other hardware-based component for performing a task, whereas a “software module” can refer to a software-based component for performing a task.
As used herein, the term “fault condition (FC)” refers to a software entity or structure that provides a “variable” representation of an underlying failure mode that is occurring in a complex system. A fault condition may be constructed without knowing which of several failure modes is actually occurring. A fault condition is designed to hold the binary and/or complex evidence, an ambiguity set/group, etc.
As used herein, the term “failure mode (fm)” refers to a physical phenomena caused by adverse events (e.g., a physical defect) that degrade functionality of a complex system such that the system no longer meets one or more specified requirements. A failure mode can be represented internally in an analysis system. This internal representation is also referred to as a “failure mode.”
As used herein, the term “test” refers to a procedure which when executed will provide additional diagnostic evidence. The diagnostic evidence provided by the test can then be used to help isolate a fault condition. As will be explained in greater detail below, a test is either mutually exclusive or non-mutually exclusive, but it can not be both. A test (T) has one or more results or a set of results (RT) for that test. As used herein, the term “result” refers to a result of a test. Each result can be associated with one or more failure modes; however, not all results are required to be associated with a failure mode. Therefore, by the relationship of results (RT) in test and the failure modes that are associated with those results (RT), the test is associated with a set of failure modes (FMT). The set of failure modes (FMT) associated with the test is a subset of the set of all failure modes. The set of results (RT) associated with the test is a subset of the set all results (R).
At 110, suspected faults from a failed system are determined, and at 120, based on the suspected faults, the tests that are associated with the suspected faults and that are of interest and failure modes of interest are identified. At 130, a differentiation factor and/or coverage factor can be determined for each of the tests that were identified at 120. The differentiation factor and coverage factor that is determined for each test allow the tests to be ranked so that each test should provide additional differentiation to the significant failure modes in the fault condition's failure mode ambiguity group. At 140, based on differentiation factors and/or coverage factors, the tests that are most likely to identify or isolate faults are ranked from highest to lowest. The tests are ranked so that each test should provide additional differentiation to the significant failure modes in the fault condition's failure mode ambiguity group. The tests can be ranked based on the suspected faults and their likelihood of occurrence so that the tests can be ranked in an order from highest to lowest and so that the ranking will result in a test ordering that can provide the most efficient evidence to isolate the faults.
FM
FC}
FMFC
FI}
FI
FI
fi
(fm
FMFC)}
TI
T}
FMT
R
T}
RT
FIT
T)
FI}
RT
FI
FI)
FI|)
T)|fi}
RT
fi
fi)
RT
FI
RT\
FI
FI)
FI)
indicates data missing or illegible when filed
Method 200 starts at 210, where tests of interest are determined. As used herein, the term “test of interest” refers to any test with a test result which is associated with any failure mode (fin) in the fault condition's failure mode ambiguity group. The set of tests of interest (TI) includes any test (either mutually exclusive or non-mutually exclusive) which has at least one result that is associated with at least one failure mode in the fault condition's failure mode ambiguity group. The set of all tests of interest (TI) are the tests which are ranked for the fault condition. While the tests of interest (TI) include tests which are not associated with a failure mode of interest, these tests will be ranked last; however, both a differentiation factor and a coverage factor of such a test will be 0.
At 220, failure modes of interest are determined. As used herein, the term “failure mode of interest (fi)” refers to any failure mode (fm) in the fault condition's failure mode ambiguity group that is significant based on the isolation constant. The group of failures modes of interest is a subset of the suspected failure modes that are in the failure mode ambiguity group. The group of failure modes of interest includes the failure mode with the greatest likelihood as well has any other failure mode which has a likelihood great enough to prevent isolation of the top ranked failure mode. The isolation constant determines how much greater the top ranked failure mode likelihood needs to be in comparison to the second top ranked failure mode likelihood in order to isolate the fault condition. As used herein, the term “failure mode ambiguity group (FMFC)” refers to a set of failure modes (usually more than one) that cannot be resolved, where a particular failure mode in the ambiguity group that is causing the fault condition is unknown. The terms ambiguity set and ambiguity group are used interchangeably herein and will oftentimes be described as an ambiguity set/group. Any failure mode in the set/group that makes up the ambiguity set/group can be the cause of the fault condition. Each of the failure modes in the ambiguity set/group has a unique probability of being the actual failure mode that is occurring in the complex system. These probabilities can be different from each other and may be unknown to the analysis system. For example, in the ambiguity set/group {bent-shaft, chipped-bearing}, the probabilities associated with these failure modes could be 0.1 and 0.8 respectively, making the second (chipped-bearing) the more likely underlying failure mode.
The set of failure modes of interest (FI) includes the failure mode in the fault condition's failure mode ambiguity group with the greatest individual likelihood (fmmax), and all other failure modes in the fault condition's failure mode ambiguity group which have an individual likelihood which can prevent the fault condition from isolating to the top failure mode. The set of failure modes of interest (FI) is a subset of the failure modes in the fault condition's failure mode ambiguity group (FMFC). The group of failure modes of interest is found from the fault condition's failure mode ambiguity group by using an isolation constant (c). As used herein, the term “isolation constant (c)” refers to a configurable value used when deciding if a fault condition can be isolated to a failure mode (fm) or group of corrective actions. As used herein, the term “corrective action” refers to a procedure used to fix or correct the fault.
Given the failure mode in the fault condition's failure mode ambiguity group with the greatest individual likelihood (fmmax), the failure modes of interest will include any failure mode (fmj) if Expression (3-1) of
At 230, a differentiation factor is computed for each of the tests of interest. The differentiation factor has a value that is between zero and one. As used herein, the term “differentiation factor” refers to a composite index that is made up of an ambiguity factor (or alternatively an uncertainty factor), a separation factor, and a ranking constant (cr).
As used herein, the term “ambiguity factor” refers to the probability that the test will provide some information to differentiate between the failure modes of interest, but not separate out a single failure mode of interest. The ambiguity factor has a value that is between zero and one. The ambiguity factor is the sum of:
Each outcome which is not counted towards the uncertainty factor or the separation factor can be counted towards the ambiguity factor. Thus the ambiguity factor is the number of outcomes not counted towards either the uncertainty factor or the ambiguity factor divided by the number of outcomes. The ambiguity factor should be ranked high to low so that given the same separation factor it is better to run a test with a higher ambiguity factor.
As used herein, the term “uncertainty factor” refers to the probability that a test will provide no information to differentiate between the likelihoods of the failure modes of interest. The uncertainty factor has a value that is between zero and one. The uncertainty factor is the sum of:
The uncertainty factor can be calculated by adding up the number of outcomes of the test which will not affect the likelihood of a failure mode of interest plus the number of outcomes of the test which will increase all failure modes of interest, and the number of outcomes that will decrease the likelihood of all failure modes of interest and then dividing by the number of outcomes. The uncertainty factor should be ranked low to high so that given the same separation factor it is better to run a test with a lower uncertainty factor.
As used herein, the term “separation factor” refers to the probability that the test will separate out one and only one of the failure modes of interest from the rest of the failure modes of interest. The separation factor has a value that is between zero and one. The separation factor is the sum of:
The separation factor can be calculated by adding up the number of outcomes which will increase the likelihood of only one failure mode of interest plus the number of outcomes which will decrease the likelihood of all but one failure mode of interest but not increase the likelihood of one failure mode of interest divided by the number of outcomes. The separation factor should be ranked high to low so that it is better to run a test with a higher separation factor.
As shown in Equation (1) below, the sum of the uncertainty factor, separation factor, and ambiguity factor is one.
Uncertainty Factor+Separation Factor+Ambiguity Factor=1, Equation (1).
The uncertainty factor, separation factor, and ambiguity factor are all based upon the number of possible outcomes of the test. Each possible outcome would cause an increase in the likelihood of specific failure modes and/or a decrease in the likelihood of specific failure modes. Following the description of method 200, characteristics of the uncertainty factor, separation factor, and ambiguity factor will each be described in greater detail below.
As shown in Equation (2), the ambiguity factor and the separation factor can be combined into one differentiation factor as follows:
Differentiation Factor=Separation Factor+(Ambiguity Factor)·cr Equation (2),
where cr is the ranking constant. As used herein, the term “ranking constant (cr)” refers to a configurable value that can be used in computing the differentiation factor. In one implementation, the ranking constant (cr) is a configurable, constant value that can be chosen and configured before the method 200 executes (e.g., is not determined at run time). The ranking constant (cr) allows for tunable control over the degree to which the uncertainty factor and the separation factor play into the differentiation factor. In one implementation, the ranking constant (cr) is a configurable value that must be greater than or equal to 0 and less than or equal to 1. A default value for the ranking constant (cr) can be 0.5 in some implementations. Although the ranking constant (cr) must be greater than or equal to 0 and less than or equal to 1, in some implementations, it is recommended that ranking constant not be equal to 0 or to 1, but configuring the ranking constant very close to 0 or to 1 is a valid choice.
By using the ranking constant (cr), the degree to which the ambiguity factor contributes to the ranking can be diminished. As shown in Equation (2), this is done by giving the ambiguity factor only a factional weight towards the differentiation factor. The sum of the separation factor plus the ambiguity factor is the probability that a test will give results that distinguish between the failure modes of interest. Unlike the outcomes counted towards the uncertainty factor, both of the outcomes counted toward the separation factor and the outcomes counted towards the ambiguity factor are desirable outcomes of a test. However, it is more desirable that the outcome of the test allows a single failure mode of interest to be separated out (as given by the outcomes counted towards the separation factor) as opposed to separating out a group of failure modes and thereby continuing to leave the fault condition ambiguous (as given by the outcomes counted towards ambiguity factor).
As will be explained in greater detail below, Equation (2) can also be written in terms of the separation factor and the uncertainty factor in Equation (3) as follows:
Differentiation Factor=((1−Uncertainty Factor)·cr)+(Separation Factor)·(1−cr) Equation (3).
When the ranking constant (cr) in Equation (3) is equal to 1, then the differentiation factor is equal to 1 minus the uncertainty factor. In other words, the differentiation factor is composed only of the uncertainty factor, meaning that tests are only ranked by using the uncertainty factor, and the separation factor is ignored. As the ranking constant (cr) approaches 1, but remains less than 1, the differentiation factor will cause tests to be ranked primarily by the uncertainty factor, and only in the case of equal uncertainty factors will the separation factor be used to distinguish between them.
Likewise when the ranking constant (cr) is equal to 0, then the differentiation factor is equal to the separation factor, and the uncertainty factor will be ignored, meaning tests are ranked only based upon the separation factor. If the ranking constant (cr) is equal to 0.5, this gives equal weight to the uncertainty factor and the separation factor.
Because the differentiation factor combines both the uncertainty factor and the separation factor into one term, the differentiation factor is the only term that is used in the ranking unless there is a need to break ties between equal differentiation factors, in which case a coverage factor can be used to further differentiate between the equal differentiation factors. Because of this, in some embodiments, as shown in Equations (3-6) and (3-7) of
The tests of interest are ranked by the differentiation factor from high to low. At 240, for each of the tests of interest, a determination is made as to whether or not any of the differentiation factors computed at 230 are equal.
When none of the differentiation factors computed at 230 are equal, the method 200 proceeds to 250, where each of the tests of interest is ranked based on their respective differentiation factors that were computed at 230, where the corresponding differentiation factors are ranked from high values to low values.
When two or more of the differentiation factors computed at 230 are equal (e.g., if two or more of the tests of interest have equal differentiation factors), the method 200 proceeds to 260, where a coverage factor is computed for each of the tests that have equal differentiation factors so that the ranking of these tests with equal differentiation factors can be distinguished by a coverage factor. As used herein, the term “coverage factor” refers to the average number of test results associated with a failure mode of interest. The coverage factor has a value that is between zero and infinity. For tests which have the same differentiation factor (in other words the same uncertainty factor and same separation factor), the coverage factor is used to distinguish between these tests.
In one embodiment, the coverage factor of a test is the number of the test's results which are associated with a failure mode of interest (|RT→FI|) divided by the number of failure modes of interest (|FI|).
Following 260, method 200 proceeds to 270, where each of the tests of interest is ranked based on their respective differentiation factors that were computed at 230, and then, each of the tests that have equal differentiation factors are ranked based on their respective coverage factors from high to low.
To facilitate understanding of the uncertainty factor and separation factor, an explanation of the characteristics of these factors will now be provided with reference to
As used herein, the term “mutually exclusive test” refers to a test where only one result associated with the test will be indicting and all other results associated with the test will be exonerating. As used herein, the term “indicting result” refers to a result that indicates it is more likely that associated failure modes are being caused by the fault. As used herein, the term “exonerating result” refers to a result that indicates it is less likely that the associated failure modes are being caused by the fault. A test (T) is considered to be mutually exclusive when the test will return one and only one indicting result and all other results associated with the mutually exclusive test will be exonerating. In a mutually exclusive test, a single result is selected from the list of possible results. The selected result translates into an indicting result, and all other results are translated into exonerating results. The number of possible outcomes for a mutually exclusive test is equal to a number of results (|RT|) in the test. Because more than one result in a mutually exclusive test cannot be indicting, a specific failure mode cannot be associated with more than one result in a mutually exclusive test. Otherwise, indicting the failure mode by selecting one of the results associated with the failure mode, would also exonerate the failure mode because the other result associated with the failure mode would have to be exonerating. Due to the fact that a failure mode cannot be associated with more than one result in a mutually exclusive test, the coverage factor of a mutually exclusive test must be less than or equal to 1.
As used herein, the term “non-mutually exclusive test” refers to a test where any number of results associated with the test can be indicting and the rest can be exonerating. A test is considered to be non-mutually exclusive when the outcome of the test is that any number of the results in the test can be indicting and any number of the results in the test can be exonerating. For example, a non-mutually exclusive test can be a “check all that apply” test, where checked results translate into indicting results and unchecked results translate into exonerating results. Another example of a non-mutually exclusive test is a list of one or more questions, each of which translates into either an indicting or exonerating result. The probability of unknown results (or the probability of unanswered questions) can be ignored by a test ranking method. It is assumed that if a non-mutually exclusive test is executed, all of the results in a test will return either an indicting or exonerating result.
In a non-mutually exclusive test, any number of results can be selected; thus unlike results of a mutually exclusive test, results of a non-mutually exclusive test are independent of each other in that each result independently returns as either indicting or exonerating. Therefore, in a non-mutually exclusive test there are 2|RT| possible outcomes, two possible outcomes for each result, meaning either the result is indicting or exonerating. Because the results are independent of each other, any result in a non-mutually exclusive test which is not associated with a failure mode of interest cannot affect the likelihood of a failure mode of interest. Therefore, these results have no effect on the probability that the outcome of a non-mutually exclusive test will have an effect on likelihood of a failure mode of interest and can therefore effectively be ignored. Given that a test ranking algorithm can ignore any result which is not associated with a failure mode of interest, there are 2″RT→FI| possible outcomes that can have a different effect on the failure modes of interest. Unlike a mutually exclusive test, a specific failure mode can be associated with more than one result in a non-mutually exclusive test.
When there are no failure modes of interest associated with a test (|FIT|=0), it is 100% certain that the test (T) will not affect the likelihood of any of the failure modes of interest. Therefore, the uncertainty factor of a test (T) which is not associated with any failure modes of interest is 1.
When the test (T) is associated with at least one failure mode of interest, it is 100% certain that the test (T) will affect the likelihood of a failure mode of interest; meaning there is a 0% probability that the test (T) will not affect the likelihood of a failure mode of interest.
When not all failure modes of interest are covered by the test (T), it is 100% certain that the test (T) will not increase the probability of all failure modes of interest, and 100% certain that the test (T) will not decrease the probability of all failure modes of interest; meaning there is a 0% probability that the test (T) will increase the likelihood of all failure modes of interest and a 0% likelihood that the test (T) will decrease the likelihood of all failure modes of interest. Therefore, as illustrated in Equation (4-1) of
When the test (T) is associated with all failure modes of interest, but all failure modes of interest are associated with the same test (T) result then either the test (T) result that is associated with all the failure modes of interest is selected, in which case the outcome of the test (T) is that it increases the likelihood of all failure modes of interest, or the test (T) result associated with all the failure modes of interest is not selected, in which case the outcome of the test (T) is that it decreases the likelihood of all failure modes of interest. Therefore, as illustrated in Equation (4-2) of
When the test (T) is associated with all failure modes of interest but not all failure modes of interest are associated with the same test (T) result, then the uncertainty factor will depend upon whether the test (T) is mutually exclusive or non-mutually exclusive test (T).
When dealing with a mutually exclusive test that is associated with all failure modes of interest, there is a 0% probability that the outcome of the test (T) will not affect the likelihood of all failure modes of interest; thereby there is also a 0% probability that the test (T) will not affect the likelihood of a failure mode of interest, provided that the same result is not associated with all failure modes of interest, since only the failure modes associated with one result of a mutually exclusive test (T) will be increased there is a 0% probability that the likelihood of all failure modes of interest will increase.
The |RT| possible outcomes of a mutually exclusive test which is associated with all failure modes of interest, provided not all failure modes of interest are associated with the same result, can be divided into two categories. The first category is those for which the outcome is selecting a result which is associated with a failure mode of interest. The second category is those for which the outcome is selecting a result that is not associated with a failure mode of interest. For the first category, the outcome of selecting a result which is associated with a failure mode of interest is that there will be an increase in the likelihood of at least one failure mode of interest and a decrease in others. For the second category, the outcome will be a decrease in the likelihood of all failure modes of interest. Thus, as illustrated in Equation (4-3) and equivalent Equation (4-4) of
As a whole the formula for calculating the uncertainty factor of a mutually exclusive test (T) is given in Equation (4-5) of
One of the 2|RT→FI| possible outcomes of a non-mutually exclusive test (T), that is associated with all failure modes of interest, is that all results associated with a failure mode of interest return indicting, in this case the likelihood of all failure modes of interest increases. Another possible outcome of the 2|RT→FI| possible outcomes is that all the results associated with a failure mode of interest return exonerating, in which case the likelihood of all failure modes of interest decreases. The other possible outcomes are that some of the results associated with a failure mode of interest return indicting and others return exonerating, meaning the probability of some failure modes of interest increase and the probability of some failure modes of interest decrease. Thus it can be said that for a non-mutually exclusive test (7) that is associated with all failure modes of interest, provided not all failure modes of interest are associated with the same result, the probability of increasing the likelihood of all failure modes of interest or decreasing the likelihood of all failure modes of interest is 2 divided by 2|RT→FI| as shown in Equation (4-6) of
As a whole, the equations for calculating the uncertainty factor of a non-mutually exclusive test (T) are shown in Equation (4-7) of
The separation factor depends heavily on whether the test (T) is mutually exclusive (TME) or non-mutually exclusive (TNME). In cases where the uncertainty factor is 1, the separation factor is 0.
As shown in Equation (5-1) of
When there are at least two failure modes of interest that are not associated with the test (T), then there is a 0% probability that the test (T) decreases all but one failure mode of interest.
When the test (T) is associated with all failure modes of interest and all failure modes of interest are associated with the same test (T) result, then either the test (T) increases the likelihood of all failure modes of interest or it decreases the likelihood of all failure modes of interest. Therefore, as shown in Equation (5-2) of
For a mutually exclusive test (TME), when a test (T) result is associated with only one failure mode of interest, selecting that result will increase the likelihood of that one failure mode of interest.
When a mutually exclusive test (TME) result is associated with more than one failure mode of interest, selecting that result will increase the likelihood of more than one failure mode of interest.
When a mutually exclusive test (TME) result is not associated with a failure mode of interest, selecting that result will not increase the likelihood of any failure modes of interest.
When there are at least two failure modes of interest that are not associated with a test (T), there is a 0% probability that the likelihood of all but one failure mode of interest will be decreased. Thus, as shown in Equation (5-3) of
For the mutually exclusive test (TME) which is associated with all but one failure modes of interest, selecting any result which is not associated with a failure mode of interest will decrease the likelihood of all but one failure mode of interest. Thus, as shown in Equation (5-4) of
For the mutually exclusive test (TME) which is associated with all failure modes of interest, selecting a result which is associated with only one failure mode of interest will increase the likelihood of that failure mode of interest and decrease the likelihood of all other failure modes of interest. When there is only one failure mode of interest, selecting the result associated with the failure mode of interest will increase the probability of all failure modes of interest.
For a mutually exclusive test (TME) which is associated with all failure modes of interest, selecting a result which is associated with more than one failure mode of interest will increase the likelihood of those failure modes of interest and decrease the likelihood of all other failure modes of interest.
For a mutually exclusive test (TME) which is associated with all failure modes of interest, selecting a result which is not associated with a failure mode of interest will decrease the likelihood of all failure modes of interest.
Thus, as shown in Equation (5-5) of
As a whole, the formula for calculating the separation factor of a mutually exclusive test (TME) is given in Equation (5-6) of
For a non-mutually exclusive test (TNME), when a test (T) result is associated with only one failure mode of interest, selecting that result and only that result (or that result and other results which are not associated with a failure mode of interest) will increase the likelihood of just that one failure mode of interest.
For a non-mutually exclusive test (TNME), when a test (T) result is associated with more than one failure mode of interest, selecting that result will increase the likelihood of more than one failure mode of interest.
For a non-mutually exclusive test (TNMEs), when more than one result which is associated with a failure mode of interest is selected, the likelihood of more than one failure mode of interest will increase.
Thus, as shown in Equation (5-7) of
For the non-mutually exclusive test (TNME) in which all but one failure mode of interest is associated with the test (T), selecting no results which are associated with a failure mode of interest will decrease the likelihood of all but one failure mode of interest. Thus, as shown in Equation (5-8) of
As shown in Equation (5-9) of
As a whole, the formula for calculating the separation factor of a non-mutually exclusive test (TNME) is shown in Equation (5-10) of
One exemplary non-limiting implementation of a system 600 in which the methods of
The system 600 includes a system under test 605, a computer 620, and one or more test modules 630 that are illustrated as being coupled between the system under test 605 and the computer 620, but which may also be implemented within the system under test 605 and/or the computer 620.
The system under test 605 includes a plurality of subsystems 610-1 . . . 610-N, each having one or more sensors 615. In one exemplary implementation, the system under test 605 can be a vehicle or a portion of a vehicle. For instance, in one embodiment, where the system under test 605 is an aircraft, the subsystems 610-1 . . . 610-N can include, for example, propulsion subsystems, fuel control subsystem, lubrication subsystems, environment control subsystems, landing subsystems, ground proximity monitoring subsystems, aircraft actuator subsystems, airframe, subsystems, avionics subsystems, flight control subsystems, software subsystems, etc.
The one or more sensors 615 are preferably coupled to one or more components of the system 605 or the various sub-systems 610 thereof. The sensors 615 can facilitate generation of data pertaining to operation of one or more sub-systems of the system under test 605 to assist in performing diagnostic monitoring of one or more systems and/or sub-systems. The sensors 615 can be coupled to test modules 630, and/or can also be coupled to the computer 620. Output data from the sensors 615 is provided to one or more of the test modules 630, and the test modules 630 can use data from the sensors 615 to generate test results. The test modules can identify adverse events caused by faults arising in one or more of the subsystems 610.
The computer 620 includes a computer bus 640, a processor 650, a computer interface 660, a storage device 670, a hard disk 680 and a memory 690.
The processor 650 performs the computation and control functions, and may comprise any type of processor 650 or multiple processors 650, single integrated circuits such as a microprocessor, or any suitable number of integrated circuit devices and/or circuit boards working in cooperation to accomplish the functions of a processing unit.
The memory 690 stores a failure mode likelihood computation module 691, a fault condition isolation module 693, a test ranking module (TRM) 695 and an optional corrective action ranking module 697. Each of the modules 691, 693, 695, 697 can include computer executable programs comprising executable code. For example, the test ranking module 695 can include computer executable programs to facilitate test ranking methods, such as those described above with reference to
The memory 690 can be any type of suitable memory. This can include the various types of dynamic random access memory (DRAM) such as SDRAM, the various types of static RAM (SRAM), and the various types of non-volatile memory (PROM, EPROM, and flash). It should be understood that the memory 690 may be a single type of memory component, or it may be composed of many different types of memory components. In addition, the memory 690 and the processor 650 may be distributed across several different computers that collectively comprise the computer system. For example, a portion of the memory 690 may reside on a computer within a particular apparatus or process, and another portion may reside on a remote computer.
The computer bus 640 serves to transmit programs, data, status and other information or signals between the various components of the computer 620. The computer bus 640 can be any suitable physical or logical means of connecting components of the computer 620. This includes, but is not limited to, direct hard-wired connections, fiber optics, and infrared and wireless bus technologies.
The computer interface 660 allows communication to the computer 620, for example from a system operator and/or another computer system, and can be implemented using any suitable method and apparatus. It can include one or more network interfaces to communicate to other systems or components, one or more terminal interfaces to communicate with technicians, and one or more storage interfaces to connect to storage apparatuses such as the storage device 670.
The storage device 670 can be any suitable type of storage apparatus, including direct access storage devices 670 such as hard disk drives, flash systems, floppy disk drives and optical disk drives. In one exemplary embodiment, the storage device 670 is a program product from which memory 690 can receive a test ranking program. The storage device 670 can comprise a disk drive device that uses disks 680 to store data.
It will be appreciated that while this exemplary embodiment is described in the context of a fully functioning computer 620, those skilled in the art will recognize that the mechanisms of the present invention are capable of being distributed as a program product in a variety of forms, and that the present invention applies equally regardless of the particular type of computer-readable signal bearing media used to carry out the distribution. Examples of signal bearing media include: recordable media such as floppy disks, hard drives, memory cards and optical disks, and transmission media such as digital and analog communication links.
At 710, evidence that may be indicative of one or more fault condition(s) is received from the system. This evidence can be direct evidence (e.g., evidence received directly from the sensors), built-in test (BIT) results from built-in tests, condition indicators (e.g., synthetic evidence received from algorithms that process direct evidence from either the sensors or BIT results), user input evidence, or corrective actions.
At 720, evidence from 710 can be allocated to one or more fault condition(s). In other words, the evidence received at 710 is evidence of the failure mode(s) in one or more fault condition(s). The particular allocation(s) of evidence to the fault condition(s) can be stored in memory, such as a fault condition database.
At 730, the failure mode likelihood computation module 691, calculates or computes an individual likelihood of each failure mode. Although not illustrated, the individual likelihood of each failure mode can be recorded to memory, such as a database.
At 740, the fault condition isolation module 693 isolates fault conditions. Here the term “isolates” refers to determining the failure mode which is causing symptoms (evidence) or the corrective actions which will fix the fault.
Although not illustrated in
At 760, the corrective action ranking module 697, which is optional and used in some embodiments, can rank corrective actions that correspond to the failure modes.
At 770, which is optional and performed in some embodiments, the ranked corrective actions and/or ranked tests can be presented to the user, for example, on a user interface 660, such as a display.
Based on the results from the test ranking module 695, at 780, one of the tests can be run to generate new results or evidence, and the method 700 loops back to 720, where step 720 repeats. In some implementations, the test that is selected to be run at 780 this highest ranked test that was determined at 750. In other implementations, the test that is selected to be run at 780 is selected based on the test ranking results that were determined at 750.
Those of skill in the art would further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. Some of the embodiments and implementations are described above in terms of functional and/or logical block components (or modules) and various processing steps. However, it should be appreciated that such block components (or modules) may be realized by any number of hardware, software, and/or firmware components configured to perform the specified functions. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention. For example, an embodiment of a system or a component may employ various integrated circuit components, e.g., memory elements, digital signal processing elements, logic elements, look-up tables, or the like, which may carry out a variety of functions under the control of one or more microprocessors or other control devices. In addition, those skilled in the art will appreciate that embodiments described herein are merely exemplary implementations.
The various illustrative logical blocks, modules, and circuits described in connection with the embodiments disclosed herein may be implemented or performed with a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general-purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in a user terminal. In the alternative, the processor and the storage medium may reside as discrete components in a user terminal.
In this document, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Numerical ordinals such as “first,” “second,” “third,” etc. simply denote different singles of a plurality and do not imply any order or sequence unless specifically defined by the claim language. The sequence of the text in any of the claims does not imply that process steps must be performed in a temporal or logical order according to such sequence unless it is specifically defined by the language of the claim. The process steps may be interchanged in any order without departing from the scope of the invention as long as such an interchange does not contradict the claim language and is not logically nonsensical.
Furthermore, depending on the context, words such as “connect” or “coupled to” used in describing a relationship between different elements do not imply that a direct physical connection must be made between these elements. For example, two elements may be connected to each other physically, electronically, logically, or in any other manner, through one or more additional elements.
While at least one exemplary embodiment has been presented in the foregoing detailed description of the invention, it should be appreciated that a vast number of variations exist. It should also be appreciated that the exemplary embodiment or exemplary embodiments are only examples, and are not intended to limit the scope, applicability, or configuration of the invention in any way. Rather, the foregoing detailed description will provide those skilled in the art with a convenient road map for implementing an exemplary embodiment of the invention. It being understood that various changes may be made in the function and arrangement of elements described in an exemplary embodiment without departing from the scope of the invention as set forth in the appended claims.