22
Control position for servo motor Ac withTI Dsp f28335. (Id and Iq model) (http://processors.wiki.ti.com/index.php/TMS320C2000_Motor_Control_Primer) It is the original speed control with a fourth pid for position control. And a second qep2 module to have the real position count. http://tbirobotics.com/download/---> HVPM_Sensored-SIVA.c

Control position for servo motor

Embed Size (px)

Citation preview

Page 1: Control position for servo motor

Control position for servo motor Ac withTI Dsp f28335. (Id and Iq model) (http://processors.wiki.ti.com/index.php/TMS320C2000_Motor_Control_Primer)

It is the original speed control with a fourth pid for position control. And a second qep2 module to have the real position count. http://tbirobotics.com/download/---> HVPM_Sensored-SIVA.c

Page 2: Control position for servo motor

The problem is that motor spins abruptly. Motor damages. Ever have overshoot at end profile. I add a little low pass filter to init more smoothly ( not a fast 0 to 1). Now motor does not damage. (see clear blue line)

Page 3: Control position for servo motor

The same before in matlab figure. All are real time measures. The PID works bad. Impossible to get better adjusting parameters.

Page 4: Control position for servo motor

People use S-curve instead of 0-1 transitions for comanded position control motor. This is an example that uses Adept robots.

Page 5: Control position for servo motor

EXAMPLE 1: Maxon motor. EPOS_Application_Note_Position_Regulation_with_Feed_Forward_En.pdf

Page 6: Control position for servo motor

EXAMPLE 2: ParkerServoFundamentals.pdf

Page 7: Control position for servo motor

EXAMPLE 3a: Delta Tau. PMACTUNINGPRO.pdf This model use discrete formulation, how uses dsp.

Page 8: Control position for servo motor

EXAMPLE 3b: Delta Tau.Turbo PMAC User Manual.pdf Observe the two parameters Kvff and Kaff. Gains of speed and acc profiles.I will use these parameters.

Page 9: Control position for servo motor

EXAMPLE 4: KollmorgenKollmorgen AKD_User_Guide_(Parameter_Command-Fieldbus)_en-us Rev G.pdf

Page 10: Control position for servo motor

Alternative 1a: Jacques Richalet propose use PFC.The trajectory of reference is

Page 11: Control position for servo motor

Alternative 1b: Jacques Richalet propose for motor control a cascade of three PFC.

Page 12: Control position for servo motor

Now for motor position control I generate 3 profiles on Pc at real time. I send by usb. I inject them on the three pid loops.

Page 13: Control position for servo motor

If I only use the position profile (newpi_iq.Kff = 0 ; newpi_spd.Kff= 0), I have a delay between comanded position and real position ( blue lines)

Page 14: Control position for servo motor

If I use the three profiles (newpi_iq.Kff = 1.8 ; newpi_spd.Kff= 0.58), the delay between commanded and real position is minimal.

Page 15: Control position for servo motor

The problem is than with short cicles, the robot-slide have a real limit of 60 pieces for minute, to work with precision and smoothly.

Page 16: Control position for servo motor

If the s-curve is shorter, then the control is not good. At the end of movement, the slide have oscilations ever different. The movement is not smoothly neither precise.

Page 17: Control position for servo motor

Now the pi that I use is from Ti motor library. Pag 5 of DMC MATH.pdf

Page 18: Control position for servo motor

Pag 2 of DMC MATH.pdf modified to incorporate Kff

Page 19: Control position for servo motor

Pag 2 of DMC MATH.pdf modified to incorporate Kff

Page 20: Control position for servo motor

Pag 1 of file NEWPI.HThe macro is not complicated for pi

Page 21: Control position for servo motor

The use of pi macro is very simple.file HVPM_Sensored-SIVA.c

Page 22: Control position for servo motor

To Jacques:The macro for PFC which would it be?Will be complicated?The profiles will be derived from exponentials?