Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

greedy buffer or what?

Solved!
Go to solution

Hello, world, i have a problem, trying to generate a block scheme to send a certain value of voltage to a servovalve via labview, got everything connected, and output voltage is ok judging by the NI MAX, but when i run the vi it says i have a too small buffer size - error 200609. the problem could be solved but unfortunately i have already solved it once, and i have no idea why it still is small. i attach the .vi i have, to make things clear - i set the voltage with the knob and send it to the servovalve

p.s. i even set the buffer size to 5 million and it still doesnt work, help me please 🙂

______________________________________
i've got a rebel heart
0 Kudos
Message 1 of 6
(3,581 Views)

If you wish to control output from a knob, you'd better use an example from Help>>Find Examples>>Hardware Input and Output>>DAQmx>>Analog Output>>Voltage - On Demand Output.vi for an output part, and you'll not bother with this problem again.

0 Kudos
Message 2 of 6
(3,568 Views)

unfortunately no such example in my 2011 version. perhaps something close enough? thank you, KateB youre very helpful 🙂

______________________________________
i've got a rebel heart
0 Kudos
Message 3 of 6
(3,560 Views)
Solution
Accepted by topic author pomplamoose

If you just want to update the value of the output based on the value from your knob, I don't know that using hardware timing and buffering is the right way to go.  I would recommend just starting your task, and writing a single sample each time your loop iterates.  I've modified your VI as such.

 

Hope that helps,
Dan

Message 4 of 6
(3,550 Views)

Also, one question for you.  How were you attempting to set your buffer size?  There are several ways to do this for an analog output task:

1) Use the DAQmx Configure Output Buffer.vi

2) Use the DAQmx Buffer Property node (select 'Output'->'Buffer Size')

3) Allow DAQmx Write implicitly size your buffer.  In this mode of operation, DAQmx takes the size of the data written prior to start, and uses this to size the buffer.

 

If you did not explicitly use method 1 or 2, then DAQmx would use your call to DAQmx Write to calculate the buffer size.  Since you write only one sample, DAQmx would attempt to set the buffer to a size of 1.  This would almost certainly lead to the error you were seeing.

 

Hope that explains things,

Dan

 

Message 5 of 6
(3,547 Views)

Hey, thanks a lot, gonna check the vi you sent as soon as i get to my university 🙂 yeah i learned about buffer right after i started getting the error on that, and sadly my daq does not support such features you listed as 1 and 2, for i was constantly getting an error which said it was not supported (dont remember the exact number of the error). appreciate your help, thanks man, im quite new to using labview with some external hardware, so any hint or advice is very helpful, thanks again 🙂

______________________________________
i've got a rebel heart
0 Kudos
Message 6 of 6
(3,531 Views)