Motion Control and Motor Drives

cancel
Showing results for 
Search instead for 
Did you mean: 

Motion Control of a Voice Coil Actuator Using PCI-7342 and MID-7652 Servo Power Motor Drive

Hi Brendon,

Thanks for that info it was quite useful. I tried tunning the system manually and got a much better outcome. My PID values were Kp=3 Kd=6 Ki=2. Very small values but anything larger than that I was getting extremely large oscillations.

However, what I also found was that changing the Velocity and acceleration or load on the motor means that the PID values must correspondingly change as well. So I would have to go back and edit the values. So far this is the best I could get.... (Is there any other way of saving it other than from screen shots.)

The key to a proper functioning of my device is to get a fast pulse movement. If I increase this velocity am I in danger of applying a greater voltage pulse to the motor.? Can I keep increasing it until a specified limit and then re tune it.

Also I can't characterise the step response for steps of greater than 1000 I assuming that the the limitatoin on it.

Cheers,

Darren

 

0 Kudos
Message 11 of 17
(3,601 Views)
Hello Daren,

You should start by ensuring that the motor specs meet the speed requirements for your move.  As long as your dip switch settings for the drive output current match the motor specs, you should be fine.


Regards,
Brandon M.
Applications Engineer
National Instruments
0 Kudos
Message 12 of 17
(3,595 Views)
Hi Brendon,
 
I've had a look at my motor specifications and it can take upto 7 amps of current. It can also produce peak forces upto 25N. I have ensured that the current limits are at 5A continous and 10A Peak.
 
Using my Code I can't seem to obtain velcity that is fast enough. The device is held against some soft tissue that will provide some resistance. When I try to use it against the tissue the motor oscillates quite a bit and doesnt apply a consistant force.
 
I thought this might have been due to my tunning. It is underestable that for different loads on the mechanical system a different set of tunning parameters would be required. However, when tunning with a load from a spring the motor doesn't move at all. I tried this using MAX to increase the Kp parameter and then apply the step response but it doesn't respond. The moment I remove the load it responds.
 
 
So basically it works the way I want it but without a load. Adding a load causes instabilities that I can't seem to tune in max because the system doesnt responds. Also increasing the velocity in my code doesnt effect the velocity of the movement.
 
 
 
 
0 Kudos
Message 13 of 17
(3,588 Views)
Hi Daren,

If the motor is oscillating, you should increase the Kd to dampen the movement.

If the motor performs properly without a load, but does not perform when it is loaded, then you should try increasing the Kp.  If increasing the Kp does not help, then your motor probably does not have enough torque for your task.

I also came across an interesting link that may be relevant to your task, but if the motor does not have sufficient torque, then this document will not solve the problem.
Regards,
Brandon M.
Applications Engineer
National Instruments
0 Kudos
Message 14 of 17
(3,567 Views)

Hi all,

 

I have the same problems as Dazal.

 

I'm trying to create fully controlled oscillating movements by using voice coil actuators (Sinus, Square, Triangle, custom waveforms, etc.. in frequency (0->30 Hz, amplitude (5mm) & offset)

 

The voice coils motors are  LA16-27 from BEI Kimco (270W peak power, 30VDC peak voltage, 9A peak intensity) wired on the servo DC power amplifier outputs

For the position feedback, I use a linear potentiometer wired on the AIN input

 

We have a PXI  -1033 chassis, a PXI-7356 motion controller and a MID-7654 DC Servo Power amplifier, the NI Motion Assistant Software, Labview V8.6, Motion Drivers.

 

 I managed to create a position control loop, using a waveform position as input. It works well for position control, but it doesn't seem to be fast enough for a frequency control (Voice coil motors have exactly the same physics than loudspeakers).

 

First Question : Is there any way to have a DIRECT (open-loop) voltage control trough the PXI 7356 to the MID-7654 ? (in order to energize the voice coils as with a waveform generator, for example)

 

Second Question : My problem (same as Dazal) : the maximum voltage applied on power outputs does not appear on the different hardware documentations (PXI-7356 + MID-7654), neither in the MAX software. The MID-7654 have hardware intensity limit switches, but despite this, it can energize up to +/-48 VDC.

My Voice coil motors don't support more than 30VDC. I want to be SURE that the MID-7654 does not apply MORE than 30VDC.

 

It doesn't appears that a voltage limit exists, neither in the different harware documentation, neither in the MAX Software. There is only  a software speed & acceleration limitation in MAX (in count/s and count/s-2), but there is no more information about it. Could you help me ?

 

Thanks

 

Remi

 

0 Kudos
Message 15 of 17
(3,058 Views)

Hi Remi,

 

To answer your questions...

 

First Question : Is there any way to have a DIRECT (open-loop) voltage control trough the PXI 7356 to the MID-7654 ?

 

This is not possible for a servo motor, as the motion control software would have no way of knowing the position of the motor.  It is possible to run a stepper motor in open loop mode, because the software uses the step output to track position.  If you do not want to closed-loop control, a motion control set-up may not be the most convenient choice.

 

Second Question: The maximum voltage applied on power outputs does not appear on the different hardware documentations (PXI-7356 + MID-7654), neither in the MAX software.

 

Motors are more sensative to current, and this is the controlled variable in the motion control system.  That is why the drive has current-limiting options, but not voltage limiting options.  If you would like more information on this, you can check out the article Can I Use a Stepper or Servo Motor if its Voltage Rating is Much Lower than the Motor Drive Voltage ...

 

What are the design reqirements of your system?  If you would like the open loop analog output of waveforms at lower voltages, then perhaps a signal generator or a industrial DAQ device would work better. 

Chris Bolin
LabVIEW Partner Program, CLA
Message 16 of 17
(3,039 Views)

Hi CXB,

 

I've found what was wrong with my voice coils actuators (they use to overheat, and I wondered if it was due to +/-48V PWM voltage MID-7654) :

 

There was a mistake on voice coil datasheet concerning inductance (330µH instead of 900µH), so I placed the MID 7654 inductance switch on the "low inductance" position. There is no more overheat no.

 

Concerning waveform moves, I'm looking for a contoured move using a sinus-like repeated pattern for smoother moves

0 Kudos
Message 17 of 17
(2,905 Views)