LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

A problem with my synchronized AI AO GUI

I've developed the basic Analog-Input Analog-Output GUI attached, but somehow it is not running, and i can't quite figure out how to tackle the error it is giving.
 
I'm using a PCI Card 6036E
 
The error is ERR (-200010)
 
Can somebody help?
0 Kudos
Message 1 of 11
(4,147 Views)
I got a machine with 6036E; however, I could not save back to LV7.1 to run at that machine.  Which VI create the error, did you trace it?
------- LabVIEW 2009, So Easy, Even a Therapist Can Do It -------
0 Kudos
Message 2 of 11
(4,136 Views)

Hi,

From the error code.  You can go to Help->Explain error and this will give you the following information.  (also highlight execution is veryt useful)

___________________________

Error -200010 occurred at an unidentified location

Possible reason(s):

Onboard device memory overflow. Because of system and/or bus-bandwidth limitations, the driver could not read data from the device fast enough to keep up with the device throughput.

Reduce your sample rate, alter the data transfer method (from interrupts to DMA), use a product with more onboard memory, or reduce the number of programs your computer is executing concurrently.

___________________________

As for actually tracing the problem I believe it is because the card is unable to keep up the transfer rate over the PCI bus.

If you set the aquisition to continuous instead of Hardware single point, you may overcome the problem.

(just one more question, what do you mean when you mentioned that you could not save back to LabVIEW 7.1?

Get back to me if you require some more information

Thanx

 

AdamB

Message Edited by AdamB on 12-01-2006 04:14 AM

Applications Engineering Team Leader | National Instruments | UK & Ireland
0 Kudos
Message 3 of 11
(4,129 Views)
Have a look at the shipping example Multi-Function-Synh AI-AO.vi found in the example finder by going to Help>>Find Examples and then navigating to Hardware Input and Output>>NI-DAQmx>>Synchronization>>Multi-Function.

Use this as the basis of your architecture to ensure synchronisation instead of what you currently have. I have also noticed the Mathscript node that you are using is pretty simple and I would strongly recommend using standard LabVIEW functions instead for faster performance.

if A==0
contgain=0;
else
if A<=0.0002;
contgain=0.5;
else
if A<=0.0003;
contgain=0.5;
else
if A<=0.0004;
contgain=0.6;
else
contgain=0.5;
end
end
end
end

This can easily be achieved using comparison tools and case structures etc.

What version of LV are you using?
0 Kudos
Message 4 of 11
(4,123 Views)
Hi,
 
Just as a side note.  I noticed that if I take out the "wait for next sample clock" I get higher speeds without errors.  give that a go if cintinuous doesn't work.
 
Thanx
 
AdamB
Applications Engineering Team Leader | National Instruments | UK & Ireland
0 Kudos
Message 5 of 11
(4,123 Views)
Your LabVIEW version is 8.0, I can open it with one machine with 8.2; however, the machine I have the card has only LV7.1.  Hope the last person answered your question.   
------- LabVIEW 2009, So Easy, Even a Therapist Can Do It -------
0 Kudos
Message 6 of 11
(4,104 Views)
Helo Adam,
 
Sorry for my rather late response... we've been out field testing for the past four days... and have only returned to sheffield.
 
I've just modified my GUI based on the guidance you offered, as i have attached, and it seems to be running okay... at least with the basic system, i'm able to provide some linear feedback control.
 
The only problem i'm facing now, is i can't seem to stop my GUI while it is running using my While Loop Stop control, and similarly, the only way my GUI runs is if i press the 'Run Continuously' button instead of a single 'Run' button... that has implications on saving my analysis data... what do you think might be the problem with my GUI...
 
Thanks for all the assistance... everyone who have responded... 
0 Kudos
Message 7 of 11
(4,089 Views)

Hi,

Your loop condition is set as "continue if true" and you will only get a true if you hold down the stop button or you hav an error.

To solve this problem hover over the stop condition and when the select tool changes to a hand then click once.  This small box (originally with a rounded arrow in it) will turn to a mostly red box (to signify that it has changed to stop when true.)

That should do it

(and if that doesn't work or you cant seem to change it.. then just place a "NOT" gate infront of that while loop condition box.)

 

AdamB

Message Edited by AdamB on 12-05-2006 08:47 AM

Applications Engineering Team Leader | National Instruments | UK & Ireland
0 Kudos
Message 8 of 11
(4,083 Views)

Hey,

Did that work?

AdamB

Applications Engineering Team Leader | National Instruments | UK & Ireland
0 Kudos
Message 9 of 11
(4,066 Views)
I wanted to add to this conversation to shed some lite on some issues which were raised.  People who want to have deterministic, real time control loops use the Hardware Timed Single Pt option.  The Wait for Next Sample Clock is used in these applications to ensure that your application is keeping up with the rate you specified, because if it isn't your control algorithm quite possibly will be messed up.  You can get SLIGHTLY faster rates if you remove it, but then you don't know if the application is keeping up and your control algorithm could suffer.  In general I would recommend using this mode in Windows if your control rate is slow (1-10K MAX).  If you need deterministic rates faster than that you need LabVIEW RT.  If you don't really care about single point I/O then I would suggest using continuous as someone in this forum mentioned.  By buffering data you will get faster rates.  Hope this helps clear up any confusion there might be
 
StuartG
0 Kudos
Message 10 of 11
(4,055 Views)