11-27-2011 07:16 PM
While measuring a constant voltage of 5V with the DAQ-6008 I get voltage drops (from 5V to near 0) randomly and for very short periods of time. I've found the same issue even when using different voltage sources. I am attempting to use the voltage on this particular channel as an analog trigger. So, as you can infer, the random voltage drops cause unnecessary triggering. Any Ideas?
Regards
11-27-2011 07:26 PM
First, Are you sure the voltage is not actually dropping? Bad connection? Source malfunction?
Second, without more information it is almost impossible to guess what might be happening. Please describe the source, the details of your connections to the USB-6008, the software you are using, the settings for the input range and configuration, the sampling rate, and other things which might be relevant.
If you are using LV, save your VI with some typical data as default, then post it.
Lynn
11-28-2011 12:24 PM
Switching power supply? Is it possible the DAQ is actually 'seeing' the power supply duty cycle as power drops?
11-28-2011 12:33 PM
Thank you for your response.
I am including all of the requested information:
1. The LabView vi
2. .txt data output file (open in notepad)
3. A picture of an example setup I am using to test the triggering system (note, this is one of several setups that all have the same triggering issue)
I'm certain the connections are not the problem considering the simplicity of the test circuit as shown in the attached image.
I have my DAQ-6008's ai3 port hooked up to the voltage input (the battery pack as shown in the picture, E.G.). Normally, the ai3 port would be connected to a binary sensor that ouputs either a 5v output or a 0v output depending on the presence of an object. As you can see in the vi, I am attempting to compare each of the incoming ai3 voltages to a value (4.5); if the incoming voltage rises from 0V to above 4.5V, a true signal is outputted and the trigger should activate once by incrementing the wheel count once. The problem presents itself here by incrementing the wheel count randomly even if a constant voltage source remains above the 4.5 threshold value. You can see in the data file that all of the values are 5.208543. Again, this constant voltage is exemplified by the battery pack in the picture. There is no random incrementing if the voltage source remains at 0V.
11-28-2011 02:16 PM
OK. I agree that your battery is not likely causing any voltage changes and the data you posted confirms that.
I do not understand your logic. You read an array of waveforms and change it to a single scalar value. You compare that to the 4.5 V threshold, creating a boolean. That is ORed with a boolean created by testing to see if elapsed time is greater than 10 (call this A). The output of the OR gate (B(i)) is connected to the feedback node. The previous value B(i-1) is connected to Last Value when A is False. If A is True, Wheel Count -> 0. If A is False and B(i-1) > B(i-2), then wheel count increments, otherwise it is unchanged. What is the meaning of B(i-1) > B(i-2) when B is boolean? I know how LV interprets booleans in this situation, but logically it does not make sense. Do you want equality, inequality, OR, NOR, AND, NAND, XOR or some other logical function?
It is better to follow the dataflow paradigm when wiring LV diagrams. Use wires and shift registers or feedback nodes rather than Value property nodes. Consider whether the feedback nodes/shift regsiters should be initialized. At the inner loop or the outer loop?
Do you really want to create and clear the DAQ tasks on every iteration of the outer loop? This could be a cause of your voltage transients.
When do you see the voltage drops since they do not appear in the saved data?
Lynn
11-28-2011 10:09 PM
Please forgive my naivete and understand my being new to LabView...
The intention with the logic you question is to only increment the wheel counter when the voltage rises above the threshold. The feedback node was automatically placed there by LV when I created the connection as you see it. Does this answer your question?
Using shift registers and feedback nodes is foreign to me 😕
The method of creating and clearing the DAQ task is the only way I was taught to do it in the crash course I received. How do you recommend doing it?
The voltage drops haven't appeared in the data for the last few times I've ran it (even though nothing was changed), but the wheel count still increments randomly. I was seeing the 0V randomly within the constant 5.### data values.
I greatly appreciate your help and look forward to hearing your suggestions.
11-28-2011 11:25 PM
I noticed while the highlight execution function was turned on that a random 0V will find its way to the 4.5 threshold boolean and consequently induce a false value.
11-29-2011 05:46 PM
Move the create task VIs outside the loop so they run first. Read inside loop. Clear task after loop.
Lynn
11-29-2011 06:30 PM
Hi ERIKJD,
Here's a good tutorial on shift registers. I would try to use shift registers instead of feedback nodes here. Are you saying that you want the wheel counter to increment each time that the voltage rises above 4.5 V, or just the first time?
Best,
Dan N
Applications Engineer
National Instruments
11-29-2011 10:02 PM
I need the wheel counter to increment only once for each time the voltage rises above the 4.5V threshold. The counter should ignore the falling of voltage from above to below 4.5V. At this point the counter counts sporadically even if the voltage remains above 4.5V, but behaves as it should (i.e. does not increment the count) if the voltage remains at 0V .
Regards