07-11-2005 02:14 PM
07-13-2005 10:05 AM
07-13-2005 12:07 PM
Hi,
I didn’t developed any script in Motion Assistant. I'm not using Motion
Assistant application, just C code using the C Motion Assistant API. This
error occur when the C code is run and its occur exactly when NIMAGetPositionProfile is called with certain values for position
and velocity profile are used.
The C source code that I attached reproduces this error. There,
you will find the position values and velocity profile. This code is based in
the one that comes with Motion Assistant (National Instruments\Motion
Assistant\API\Examples\C\ContourMove.c).
The exact text of the message when the program is compiled
and run with Visual Studio .Net2003 in debug mode is:
- (in a dialog box) Unhandled exception at 0x7c901230 in
TstMA.exe: User breakpoint. Break Continue Ignore.
If you click "Continue" you will get:
- First-chance exception at 0x7c96df51 in TstMA.exe:
0xC0000005: Access violation reading location 0xccccccc4.
So, it isn't an error code returned by NIMAGetPositionProfile.
This error normaly occurs when some code try to access an
invalid memory position. In this case this code is NIMAGetPositionProfile with
that combination of values. It will be nice if NIMAGetPositionProfile returned
an error code (which it does for a others invalid conditions) when some values
for position and move constraints couldn’t be achieved instead of crashing the
hole application.
07-14-2005 05:14 PM
07-15-2005 06:41 AM
Hello,
One set of parameters are those in example code. This same code will run
without causing an error in a call to NIMAGetPositionProfile if you change
velSpec.vini from 30.986665725708008 to 0.0, or you can maintain velSpec.vini
with 30.986665725708008 and change the data points.
For example:
f64 xPoints[] = {8.2000000000000171, 8.2000000000000171*10};
f64 yPoints[] = {12.424999999999997, 13.474999999999994*10};
For most of the time NIMAGetPositionProfile works. I think the error is related
to high (initial or cruise) velocities on short distances.
07-21-2005 04:08 PM
07-21-2005 04:36 PM
Hello,
f64 xPoints[] = {8.2000000000000171, 8.2000000000000171*10};
f64 yPoints[] = {12.424999999999997, 13.474999999999994*10};
It will work if values gather then 0, but I don’t know the highest value that could be used.
Whit
f64 xPoints[] = {8.2000000000000171, 8.2000000000000171};
f64 yPoints[] = {12.424999999999997, 13.474999999999994};
vini could be between 0 up to 28. With 29 you will begin getting the error.
Regards.