Motion Control and Motor Drives

cancel
Showing results for 
Search instead for 
Did you mean: 

Servomotor control problem

Hi,
We have a MID7654/7652 servomotor power drive, a PCI 7344 motion control card and Flexmotion software. We have been trying to control the velocity and position of our servomotor but regardless of what values we put in the motor always moves at about 500 rpm and travels about -31000 cnts before stopping. Using MAX to test the motor doesn't help either. The motor itself it faultless and so is the encoder. We're using our own VI since we cannot find any VI's to control servomotor using Flexmotion software. Any help would greatly appreciated.

Thank you.
0 Kudos
Message 1 of 3
(3,666 Views)
Hello Fozzy. With NI-Flexmotion, you don't need special VIs for servos or steppers; that's one of the reasons it is so powerful. Most of the example code that ships with Flexmotion will work with both servos and steppers, as long as it's configured correctly in MAX.

Speaking of MAX, your motor troubleshooting should always start (and usually ends) in MAX. The first thing I would do is configure your motors in MAX to be default servos. Then disable your MID drive so that you can turn the motors by hand. As you turn them by hand you should see the position change in the 1D Interactive menu (positive for clockwise, negative for anticlockwise). If the position isn't changing, then there is probably something wrong with your encoders. If the ecoders aren't
connected properly, the 7344 will start to generate a following error when the motors are moving. The default maximum following error is set to 32,767, and when that number is reached, the motors will stop. This might explain your final position of -31,000. One way to test this is to set your following error limit in MAX to be something smaller than 32,767.

If you determine that the encoders are working correctly, go ahead an reenable the MID drive and Autotune your stepper motors in MAX. The motors should oscillate a bit before stopping. Once they are tuned, you can go into the 1D interactive and tell them to go to a position. If it races past your target position and ends at 31000 again, then your encders may be plugged in backwards. Once the motors are working correctly in MAX, then you should be in good shape from here on out.

Please give us a call if you still can't get it to work. www.ni.com/ask

Kyle V
Applications Engineer
National Instruments
0 Kudos
Message 2 of 3
(3,666 Views)
I am agree with Kyle V's opinion! Because I also had this troubles before, then I find out the motor will move the same distance every time. And I tried to display the signal of encoder by scope, at last I find
the phase A & phase B is inverted and my encoder pull-up resistance is not suitable, then I try some ones...
I'm lucky it works now!! You can try to do as I said.
0 Kudos
Message 3 of 3
(3,666 Views)