Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

PXI 6259 Analog output value after PC power down and other situations?

My system is doing something funny, and it may be because the two analog output channels of my 6259 go to extreme values when I power PC (but not the PXI chassis) down, or when I close the LabVIEW session, or other conditions.

 

I realized I don't know what the analog output voltages are supposed to do when I am not setting them. Looking through the manual I don't see any mention of this. How is the analog output supposed to behave?

 

If I write a single value to an analog output from LabVIEW it should go to that value. So far, so good. If I clear the DAQmx task I want the analog output to stay constant, and it looks like it does. What is it supposed to do if I close the LabVIEW session? How about if I power the PC down (the 6259 is the PXI version and it is in a PXI chassis that does not power down when the PC does)?

 

I suspect it is going to the negative end of its range under some circumstances. I wish there was a way to cause it to go to zero volts output, which is in the middle of its range, if it must enter some uncontrolled state.

 

So, what's it supposed to do?

Thanks!

0 Kudos
Message 1 of 10
(3,969 Views)

Hi Cebailey,

            I'm curious, first, what "extreme" values are, how hi or low are you seeing your analog outputs, and what are you measuring these outputs with?  My suspicion is that you will need to modify the power up (and down) states of the device.  This document describes how you would go about doing this with pull down resistors, but fortunately, since you are using an M-series device with programmable power up states, this can simply be done in MAX (you'll want to set them to logic low).  Please refer to this Knowledge Base article on doing this. 

 

When you power down your PC, but your chassis is still on, the chassis will be receiving power, but no signals are being sent to the cards.  You should see that if your chassis is on but your PC is powered down, that your AO a somewhat constant 0V.  Are you seeing otherwise?  It could be that the device is reading the voltage of the power-down state.  Do you have other cards in your chassis that you are seeing this behavior with?

 

Please let me know if this is not a solution to your problem, have a good one!

aNItaB

Applications Engineer

National Instruments

0 Kudos
Message 2 of 10
(3,947 Views)

Thank you for the reply.

 

I use analog output voltages to control two moving mechanical parts in my system, and while I am debugging things I am sometimes seeing the parts move suddenly when LV or the PC are not operating. It is inconvenient to measure the voltages now, but I think I will have to add something outside of LV to measure them so I know what the voltages are doing during these events.

 

By "extreme values" I meant at one or the other end of their range. In this application, the safe and conservative voltage would be 0 V, which is in the center of the analog output range. I don't happen to remember working with ANY analog output product from ANY vendor that lets you specify a voltage in the center of the output range as the powered-down value. I would guess it is liklier that the outputs try to go to the negative end of the range, -10 V, than anything else. This is why I suspect the problem I do.

 

The links you post all seem to discuss digital IO lines exclusively. For instance, I can't set an analog output to be tri-state, can I? I can't use pull-down resistors on an analog output, can I? If the resistor overpowers whatever the last stage buffer amplifier is, it will dictate the output voltage whether LV is running or not, won't it?

 

In any case, even if the observed odd movement behavior is not caused by the analog output voltages, I should know what they are supposed to do, anyway. It is bad practice to use these as control signals without knowing what effective control instruction they are passing on to the hardware system in common situations like power off. It is worthwhile to understand this issue whether or not the suspiscion is correct.

0 Kudos
Message 3 of 10
(3,941 Views)

Hi Cebailey,

          That's embarrassing, you definitely got me on that one- you most certainly CANNOT use pull down resistors on AO, silly me.  Essentially, you did a delightful job summing up this KB that talks about why that is the case, it's titled Can I Use Pull-up or Pull-down Resistors to Dictate the Power-On State of an Analog Output Channel? You'll notice in this KB it talks about the specified power up state unique for each device.  For your 6259, this is listed as ±5mV, with a power up spike of 1.5V for 1.5s. There aren't many devices where the power-on state can be user defined, although if this was of utmost importance you could use a card like the 6704, if it was suitable for your application.

 

You'll notice that even in the 6704, with programmable power up states, the specification is good after 1 second- before that the voltage can be floating at any value.  Though I know that the following links don't relate to your device specifically, I think they'll help give you a better idea of what's going on.  

Here is an explanation of why you see this behavior and gives a possible work around (AO user manual). 

Here is the explanation of the 1 second delay (from 6704 manual). 

 

 I'll definitely look into this further on what is happening when your PC is powered down (although I think the cards are just getting floating voltages I will double check this), in the meantime- is it an appropriate work around to unplug your devices or to power off your chassis when you aren't using the PC? This would seem to be the most sure way of making sure your mechanical parts on coming to life unexpectedly. 

Thanks!

aNItaB

Applications Engineer

National Instruments

0 Kudos
Message 4 of 10
(3,925 Views)

aNita B,

 

Thanks for your reply. You point out the 5 mV spec in the manual - I did not notice this though it looks obvious now! This means that the nominal power on state after 1.5 s is 0 V, in the middle of the range, to an accuracy of 5 mV, right?

 

One piece still missing is, what is the 6259 supposed to do if you have written an analog output value (which it correctly outputs), and then you send it no more instructions? What if you clear the task? What if you exit LabVIEW? What if you turn the PC off (remember the 6259 is in a PXI chassis whose power is still on)? These situations aren't exactly power-up or power-down. Maybe I need to experiment, but the system should still be designed around what the output supposed to do. Like the manual should say, "Try our way first". And a satisfactory experimental result may be misleading, depending on other unknown dependencies.

 

0 V +/- 0.005 V is probably OK, and the 1.5 for 1.5 is probably OK too. If the surprising behaviors turn out to be caused by the outputs going to either end of their range, that will require fixing. Unplugging or unpowering devices isn't a practical option, but running the voltages through relays and driving the relay coils with digital lines would be.

0 Kudos
Message 5 of 10
(3,921 Views)

Hi Cebailey,

            The answer to your first question is yes, the power-on state will be within 5mV of 0V after 1.5s. After checking into this some more, the expected behavior is that you should continue to see whatever you last wrote to your card.  So, if you write 3V AO and then turn off your PC, you should continue to see 3V. I would recommend sending 0V to the card before shutting down your PC.   Have you tried this, and does it work for you?  If that's not an acceptible solution, please let me know.  Thanks!

aNItaB

Applications Engineer
0 Kudos
Message 6 of 10
(3,896 Views)

Thanks. This is the behavior I would like to see. I do write 0 V to the card before controlled shutdown. During an unexpected failure I may have other values there. I also think I may have a problem somewhere else in my hardware, in the subsystem the analog output is driving.

 

I appreciate your posting. It is much better to know what the expected behavior is.

0 Kudos
Message 7 of 10
(3,893 Views)
I'm curious what you mean when you say that the analog output in your subsystem is driving, could you explain that?
0 Kudos
Message 8 of 10
(3,865 Views)

The analog outputs are driving two motor controls for two small servomotors. The motor controls are configured to drive the motors with a torque proportional to the analog input signal. These motor drives are usually used by programming them in their own language and sending programs and commands in ASCII over an RS232 link, but they are the only motor drives from this particular manufacturer I have. Since the only thing I am doing with them is this proportional torque, I made it easier by just making the analog connection. Other motors I use, from another manufacturer using another programming language, get the full treatment.

 

I found a missing wire that was letting one of my motors let go under some conditions. This makes my entire system spin in one direction if conditions are right. I now think the mysterious behavior I have been seeing is entirely caused by this missing wire, and since I fixed it I haven't seen the problem. Nevertheless, it matters what the system should be doing when LV is not specifically instructing it, so I am glad to have your info on expected behavior. Thanks!

0 Kudos
Message 9 of 10
(3,854 Views)

It sounds like you're on the right track, good luck with your application!

aNItaB

Applications Engineer

National Instruments

0 Kudos
Message 10 of 10
(3,838 Views)