Diagnostician for LabVIEW Implementation

 

The Diagnostician for LabVIEW is implemented as a series of LabVIEW virtual instruments, or VIs, which perform specific diagnostic functions. These Diagnostician functions follow the analogy of going to your doctor with an ailment, and the conversation you might have with your doctor in order for him to make a diagnosis.

The Diagnostician VIs can be integrated into your LabVIEW application in virtually any style conceivable by the LabVIEW programmer. These Diagnostician VIs include the following:

OPEN_DOC Load a Knowledge Base (Select a doctor who has an understanding of your anatomy.)

TELL_DOC Send test results (Tell the Doctor what's to the Diagnostician. bothering you.)

TELL_DOC_FILE Test Results are Logged to a (Laboratory Test Results File and Read by the Diagnostician are reported to the Doctor.)

ASK_DOC_WHAT Request a Diagnosis (Ask your doctor what's wrong with you.)

ASK_DOC_NEXT Ask the Doctor what additional tests (Ask your doctor what other should be performed to resolve any tests should be taken) ambiguities.

ASK_DOC Request a Diagnosis and Ask what (Ask him What's Wrong and additional tests should be performed. What's Next at the same time

CLOSE_DOC Cease Diagnostician Operations (You go home, hopefully feeling better.)

In the LabVIEW environment, LabVIEW performs tests, and reports test results to the Diagnostician. The Diagnostician, like a doctor, interprets test results to zero in on the cause of the fault. The conversational flow between LabVIEW and the Diagnostician is much like described above. The Diagnostician functions can be invoked by the LabVIEW programmer in any control sequence he/she desires. This makes the Diagnostician a powerful capability that can be integrated into your test application easily, and with a great deal of flexibility, depending on the needs of your specific application. The Diagnostician provides diagnostic services to the client LabVIEW program.

A Diagnostician application consists of the following elements:

1. adrdll.dll - the Diagnostician DLL library, containing the inference engine which reasons about the cause of failures based upon interpreting test results.

2. modelname.dkb - a diagnostic knowledge base (DKB) which contains all of the diagnostic logic of a unit under test (UUT). The DKB is generated from UUT netlist data and is prepared using the Diagnostic Profiler.

3. modelname.cfg- a run-time configuration file which specifies data log files and sets user- configurable operating modes.

The Diagnostician contains a series of core functions. These functions are implemented in a Dynamic Link Library, and are made available to the LabVIEW application in many ways. As the diagram below shows, there are four different "levels" at which you can integrate Diagnostician functions into your LabVIEW application. The lowest level is through the DLL calls themselves. We have developed an equivalent DLL function call for each function as a SubVI in the library ADRVI.LLB. These low level functions have also been integrated into higher level functions in the library DOC.LLB. Finally, "operating modes" are provided as program implementation templates in the library USES.LLB.

ADRVI.LLB - Basic DLL Calls to Diagnostician Function Library (See Diagnostician DLL Application Programming Interface Guide)

adradddata.vi                                adradddatafile.vi                          adrenddata.vi

adrexcluderepair.vi                        adrgenstatusfiles.vi                        adrgensusoectfile.vi

adrgetchildmodelcnt.vi                   adrgetchildmodellist.vi                   adrgetchildmodelname.vi

adrgetccodeversion.vi                    adrgetconfig.vi                              adrgetcurrentmodel.vi

adrgetfaultcnt.vi                             adrgetfaultlist.vi                             adrgetfaultname.vi

adrgetnextstep.vi                           adrgetparentmodel.vi                     adrgetpartcnt.vi

adrgetpartlist.vi                             adrgetpartname.vi                          adrgetselectname.vi

adrgetsuspect.vi                            adrgetsuspectcnt.vi                        adrgetsuspectlist.vi

adrgetsystemtestname.vi                adrgettestcnt.vi                              adrgettestenvironment.vi

adrgettestlist.vi                              adrgettestname.vi                           adrgettestpnt.vi

adrgettestpntcnt.vi                         adrgettestpntlist.vi                          adrloaddkb.vi

adroperatingmode.vi                     adrsetconfig.vi                                adrstart.vi

adrunload.vi                                  tpfailed.vi                                       tpnofailed.vi

tpnopassed.vi                               tppassed.vi

The SubVIs listed above serve as the basis for implementation of higher-level Diagnostician functions. These SubVIs have been built-up into LabVIEW functions and "packaged" as LabVIEW virtual instruments. These virtual instruments can be easily integrated into your LabVIEW application as you see fit. The SubVIs include:

DOC.LLB - Diagnostician SubVIs that can be integrated into LabVIEW Applications as pre-defined functions

open_doc.vi
tell_doc.vi        tell_doc_file.vi
ask_doc.vi         ask_doc_next.vi       ask_doc_what.vi
close_doc.vi

Integration of the Diagnostician VIs is similar to the use of any LabVIEW virtual instrument: simply call the VI (e.g., OPEN_DOC.VI) and provide the required inputs and define how the outputs are used in your application.

Examples of specific implementations, or templates, of the Diagnostician VIs have been provided in the installation. These specific implementations represent a variety of ways that you can use the Diagnostician to provide automated diagnostics. These templates include:

USES.LLB - Template VIs for knowledge base exercising and applications control modes

contrllr.vi                                         handson.vi                                   identFaults.vi

onestep.vi                                       selcttps.vi                                     simTest.vi

 

Show Me Next Section

Show me Theory of Operation

Show me Tool Set for Generation of Knowledge Bases

CETS Advantages / Users / Questions and Answers

Go Back to Applications Menu

 

Send mail to webmaster@giordano.com with questions or comments about this web site.
Last modified: December 27, 2001