PXI

cancel
Showing results for 
Search instead for 
Did you mean: 

Is there a way of programmatically accessing fault/error/BIT information from the PXI-6723 during runtime?

In fact can you access fault information for all PXI cards?  How do i detect that there is a fault with a board from within the software so i can report this to a higher level application?

 

Thanks

Martin

0 Kudos
Message 1 of 12
(5,202 Views)

Hi Martin

 

It is possible to self test a module using the tools in LabVIEW. The DAQmx pallet has DAQmx self test device function that will perform a brief test of device resources. Any errors which are found can be passed through the program, as the errors are reported in the form of Boolean, string and a I32 error code outputs.

 

Through the DAQmx pallet it is also possible to programmatically perform self calibration.

 

 

Regards

Robert

National Instruments UK & Ireland
0 Kudos
Message 2 of 12
(5,179 Views)

Hi Roger,

 

Thanks for your reply.  I'm using Labwindows/CVI for the development and the system is going to be running headless on the ETS Pharlap RTOS.  I can't find a relevant self test function under Labwindows for the hardware.  What we want to do is report back to the customer via Ethernet the status of the hardware if possible - we have a number of modules that we need to perform BIT on during normal operation of the system.

 

Thanks

Martin

 

0 Kudos
Message 3 of 12
(5,176 Views)

Hi Martin

 What self tests functions are you looking for? Exactly what information are you looking to gather?

Regards

Robert

National Instruments UK & Ireland
0 Kudos
Message 4 of 12
(5,174 Views)

Hi Roger,

 

Just simple high level information like overall health status of the board would suffice so we know that the board is OK.  In the event of a board failure we need to shutdown the system/inform the customers software that there is a problem.  That way they can simply replace the broken board with one of the spares they have purchased.  The customer does not have access to NI MAX etc.

 

Thanks

Martin

0 Kudos
Message 5 of 12
(5,172 Views)

Hi Martin

 

It is still possible to call the labVIEW functions that are in DAQmx using C. So it is still possible to call the DAQmx device configuration self test function. This function will give you a high level overview you are looking for.

Regards

Robert

National Instruments UK & Ireland
0 Kudos
Message 6 of 12
(5,169 Views)

Hi Roger,

 

It would appear that later versions of NI-DAQ have a C function called DAQmxSelfTestDevice which will provide this functionality.  Thanks for your suggestions.

 

Martin

0 Kudos
Message 7 of 12
(5,138 Views)

Hi Roger,

 

Have you any idea exactly what a "self test" does (it must be device specific?) and which error codes it could potentially return (again device specific?) ?  The help reference for the function DAQmxSelfTestDevice just says "a positive value indicates a warning. A negative value indicates an error". There are almost 2000 warning and error codes listed in NIDAQmx.h - obviously not all of these can be returned by this function call.  Interestingly the help files for NIDAQ do not mention all of these error/warning codes either so how am I to know what they mean without first knowing they exist??

 

Thanks

Martin

0 Kudos
Message 8 of 12
(5,125 Views)

Hi Martin

 

Essentially the self test function tests to see if the pc can communicate with the device.

 

As far as the error codes that can be generated this is a broad spectrum for this reason it is a factor that must be taken into consideration of the architecture of your program.  It is possible to pass the error throughout an application and use another function to explain the error by using an error handler.

 

Regards

Robert

National Instruments UK & Ireland
0 Kudos
Message 9 of 12
(5,117 Views)

Hi Robert,

 

So in essence what you're saying is that if a component on the device fails there is no way to know this as long as the device is still communicating with the PC? It would appear that the Self Test function is a bit of a misnomer - it doesnt actually do what it says on the tin.

 

So which of the 2000 errors can actually be returned by this function call?  I appreciate that there are a broad range of errors but I would like to know which one(s) can in reality be returned by this function.  I need to somehow categorise the errors into whether or not the device is healthy so i can communicate this to our customers software (wo have no knowledge of internal NI error codes) so they can decide whether the board needs replacing.  Of the 2000 error codes which of these could potentially relate to a hardware failure of some sort as opposed to a software configuration error.

 

I have found this thread which details some error codes on a NI 446X device (is there something like this for all errors on all devices?):

http://digital.ni.com/public.nsf/allkb/95328C2FAF9DA99A862576E200785C11?OpenDocument

 

Lastly where in the NI DAQ help references are the list of error codes and meanings as listed in NIDAQmx.h.  For instance what does DAQmxErrorPALThreadControllerIsNotThreadCreator actually mean?  I don't want to wait for the error to occur in my system before I get information on what it means - it would be useful to know and understand before I write the software what errors may occur on each device.

 

Thanks

Martin

0 Kudos
Message 10 of 12
(5,113 Views)