12-22-2008 08:07 AM
I am having problems with my Advantech VI's. In a first stage I have 4 analog inputs running in Labview 8.5.1. I have four "ADV AI sample channel VI" where four signals go, two from two force sensors and two from two LVDT's. Each signal goes to a waveform chart and all 4 signals go to a "write to measurement file VI" to save the data. Running that program is OK. I am working with channels 2, 3, 6 and 7 and everything works perfect. I have a time loop as well to set up the amount of data I want.
In a second stage I added a motor to my rig and I want to drive it from labview, so I got a servo-control as a position to drive the motor and use the two analog outputs to do it from my Advantech USB 4716. I tried using two "ADV AO update Channel VI" (channels 0 and 1) to do it. One analog output as a motor position feed back signal from one of the LVDT signal (Analog Input VI) and the other analog output as a motor position reference signal from a knob with different position I need to use, but when a run the program with the analog output VI the program crashes showing me different errors every time and relation with analog inputs VI's. It shows me the following errors:
So I opened a new program as a test with just one "ADV AO update Channel
VI" and a knob and I found from 0 to 5 works ok but after 5 crash the
program, so I configured the analog output from 0V to 10V to work with the same
range of the sensor and it worked and I ran the original program with the
changes and did not work, again the program crashed.
So in my test program (which it was working) I added a second "ADV AO update Channel VI" with another knob and again it worked.
After that in my original program I took out the two "ADV AO update Channel VI" from the time loop and it worked, but did not drive the motor.
I came back to my test program and I put the two”ADV AO update Channel VI" into a time loop and it worked, also I added an "ADV AI sample channel VI" to simulate the part of the original program which it crashes and it worked.
So I went to my original program and I tried to put just one of the "ADV AO update Channel VI" inside the time loop and did not worked and I tries with the other "ADV AO update Channel VI" and did not worked.
So there is anyone who can tell me what is happening in my program, why I
can not run it and it is crashing? Why it works in a side program?
I attached a photo of my program.
12-23-2008 10:36 AM
Hi,
I suggest the errors were related to the drivers provided by Advantech. More specifically, the driver did not like the way you programmed for the USB 4716 to do simultaneous analog input and output.
Because I cannot access the VIs in a lower level to find out how they implemented these AI and AO VIs (I guess they are calling DLLs), I cannot give you a recommendation of how to program your application for simultaneous AI & AO tasks. I would suggest you talking to the people who can support these VIs in Advantech and ask them the correct way to do simultaneous input and output, if the USB 4716 supports it.