From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

always setting outputs to zero

Hi,

 

   I would generally use a cDAQ, but the problem can be defined generally.

 

   An analog output is only updated when a labview app is writting to it. If the USB connection of cDAQ is lost, then the outputs become zero for protection. This is so far desired.

 

   Now, suppose the labview application crashes, or the whole pc is suddenly turned off, or the labview app's process is ended, for protection again, it is desired that the analog outputs turn zero. They don't.

 

   There can be an extra piece of hardware doing extra control over the subject, but still not preferred.

 

   Does anybody have a software solution or a solution within cDAQ for this?

 

Thanks

0 Kudos
Message 1 of 6
(2,506 Views)

you can implement a watchdog architecture,  when the host application is running the watchdor is piriodically reset, when the connection is lost the watchdog can expire and the voltage is set to zero (safe state)  I could not fully understand your question but ZI would use a watchdog to make sure the pc is connected.

Paul Falkenstein
Coleman Technologies Inc.
CLA, CPI, AIA-Vision
Labview 4.0- 2013, RT, Vision, FPGA
0 Kudos
Message 2 of 6
(2,487 Views)

sorry, I thought you said cRio not cDaq.

 

Paul Falkenstein
Coleman Technologies Inc.
CLA, CPI, AIA-Vision
Labview 4.0- 2013, RT, Vision, FPGA
0 Kudos
Message 3 of 6
(2,486 Views)

yes, watchdog is one solution. As far as I know, cDAQ doesn't have a watchdog, as I guess you were confirming. Again, if the sfotware crashes, there would be no control over it unless by hardware.

 

Another point is, the watchdog is already used in the whole system, and this is some sort of over protection on cDAQ outputs.

 

Can there be some innovative solutions?

 

0 Kudos
Message 4 of 6
(2,479 Views)

If you're programmatically existing (aborting) LabVIEW application instance, then it can be handled. But as you said, if LabVIEW crashes, I dont know if there's any possible way to handle that.


I am not allergic to Kudos, in fact I love Kudos.

 Make your LabVIEW experience more CONVENIENT.


Download All
0 Kudos
Message 5 of 6
(2,464 Views)

I was trying to implement the following solution, but I couldn't understand exactly how the onboard buffering stuff works, or if it is possible to do so.

 

So, the plan is to do this:

 

assume we have a waveform (or array) with values: VO, VO, Vsafe

where VO is the desired output, and Vsafe is the safe output.

 

if software is running regularly,

I would like to rewrite that waveform, or restart the generation somehow, so we never reach the Vsafe...

 

if software is not running regularly,

the waveform will be generated till the end, which is Vsafe.

 

I have a cDAQ9172, with the following modules

9263

9264

9203

9205

9421

9476

9472

9725

 

0 Kudos
Message 6 of 6
(2,445 Views)