Motion Control and Motor Drives

cancel
Showing results for 
Search instead for 
Did you mean: 

MAX versus LabVIEW Axis Configurations - getting differences in Read Velocity in RPM

I made a mistake earlier when I said the issue was fixed - I didn't remember I had intiialized in MAX before the run that I thought showed fixed.

 

The Read Velocity.flx is still reading 4x too high.

 

When I calculate the velocity myself by using Read Position.flx and getting a timestamp at each reading (100 ms loop time) the velocity shows correctly.

 

I am loading a requested velocity of 5556 steps/sec with Load Veloity.flx

 

Rad Velocity.flx shows about 22000 steps/sec and calculating it myself shows ~5556 steps/sec.

 

Something is not right.

Ryan Vallieu CLA, CLED
Senior Systems Analyst II
NASA Ames Research Center
0 Kudos
Message 11 of 16
(3,322 Views)

RVAllieu, did you figure out where the problem was? i'm having the same problem... sort of.

The thing is that in MAX the read velocity in RPM is half of what it should be.

 

our hardware is very similar (PCI 7344) on a stepper motor.

thanks in advance 😉

 

0 Kudos
Message 12 of 16
(3,305 Views)

Oh, missed data:

i read half the velocity, but the axis is moving correctly. (verified counting revolutions per minute)

0 Kudos
Message 13 of 16
(3,303 Views)

Ok, I can share my code, so PLEASE! help!

 

this problem is similar to RVallieu's.

When initializing the PCI7344 from MAX (file STEPPER.XML attached) and setting the axis 3 to move at a constant velicity of 98RPM, the axis moves at the correct velocity, but the feedback velocity reading is 49RPM (half of the original set point).

 

When initialized from LabVIEW, the read velocity is correct!!. However, if i run MAX first, and then I try to run this vi, the readings are back to bad (half of the set velocity is read 49rpm)

 

what am I doing wrong?!

 

General system description:

PCI 7344 on stepper motors with 1009lines per revolution (x4 = 4036 encoder resolution) same stepper resolution. -->these are actuali DC motors with a Gecko G340 motor drive but for the computer it's just a stepper with a non standard resolution.

LabVIEW 2010 - Win7

 

 

0 Kudos
Message 14 of 16
(3,296 Views)

Hi Nihil,

 

It turned out that the problem RVallieu was seeing is due to a problem with the NI-Motion driver: the reported velocity for a closed-loop stepper is always calculated based on the encoder counts/revolution for Axis 1, regardless of which axis it is reporting the velocity for. This does not influence the actual velocity of the axis, just the reported velocity. This was reported to R&D (#339243) for further investigation.

There are three workarounds for this (when trying to get the velocity of Axis 3): 

1) Configure Axis 1 and Axis 3 so that their feedback encoders have the same counts/revolution

2) Multiply the reported Axis 3 velocity by (Axis 1 counts/rev)/(Axis 3 counts/rev)

3) Use the Read Position VI, and calculate the velocity manually based on changes in the axis position

 

Regards,


Daniel H.

 

Daniel Hays | Test Software Business Manager
Message 15 of 16
(3,292 Views)

THANK YOU!!! 

so much...

problem solved 😉

Message 16 of 16
(3,285 Views)