0% found this document useful (0 votes)
254 views22 pages

ServoBoost Input Shaping

Uploaded by

chintaec
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
254 views22 pages

ServoBoost Input Shaping

Uploaded by

chintaec
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 22

Advanced Topics

Input Shaping

15

© 2015 ACS Motion Control Ltd.


Advanced Topics

Input Shaping

© 2015 ACS Motion Control Ltd.


- for better servo
performance

is a real time algorithm that:


Identifies disturbances in real time
Analyzes disturbance root cause
Compensates it and attenuates its impact
provides:
Improved machine performance: Faster settling, better stability,
lower jitter, better constant velocity
Automatic adaptation to large changes in load and system
parameters
Automatic compensation of disturbances, resonances, axes
interaction, cogging and more
Applicable to all ACS high performance (HP) products
3 © 2015 ACS Motion Control Ltd.
Adaptation to Increasing Load by 3X

Initial system > With standard PID algorithm


> The system is still stable
With extra load > The bandwidth is 3 times smaller
(20Hz instead of 60Hz)
Standard PID
> Poor performance
With extra load
Using > With
> maintains the 60Hz bandwidth
> Same performance
> It also compensates the resonance
created by the elevated center of
gravity

4 © 2015 ACS Motion Control Ltd.


Adaptation to Load Changes

• System performance may deteriorate


or even become unstable due to
significant load changes.
• With , the
performance remains consistent and
stable despite of load changes and
disturbances.
Position error with PID control

Position error with ServoBoostTM

Total moving mass is increased x 3 No load

5 © 2015 ACS Motion Control Ltd.


Resonance
Compensation
> Blue– low frequency resonances > Blue –PID control . Vibrations
> Red– resonances are compensated are caused by the resonance
by > Red – compensates

6 © 2015 ACS Motion Control Ltd.


Crossover Error Elimination - several
axes, one machine frame

Due to reaction forces of accelerating axes the frame vibrates and


deteriorates overall performance. Appears in almost all multi axes
machines. Position Error 5[nm/div]
Without ServoBoostTM
eliminates
this interaction, enhancing
placement accuracy

With ServoBoostTM

7 © 2015 ACS Motion Control Ltd.


: How to use

> A custom DSP program must be used


> Following commands controls the parameters
FW <= 2.29.04 FW >=2.30
Parameters
Bandwidth setsp(0,getspa(0,"SLSBBW"),200) SLSBBW($)=200
Frequency setsp(0,getspa(0,"SLSBF"),1000) SLSBF($)=1000
Order setsp(0,getspa(0,"SLSBORD"),1) SLSBORD($)=1
Enable algorithm setconf(251,axis,100) SLSBORD($)=1,2 or 3
Disable algorithm setsp(0,getspa(0,"SLSBORD"),0) SLSBORD($)=0
setconf(251,axis,100)

where $ is axis number

8 © 2015 ACS Motion Control Ltd.


SLBBW
Units –[Hz].
Stands for the algorithm maximal bandwidth.
Acts as a gain (higher = better performance but less stability).
Typical range is [10 – 200]
SLSBF
Units – [Hz]
Acts asa low pass filter.
0 stands for no filtration.
With many systems the filter is necessary to reduce audible noise or
higher frequency resonances.
9
Typical range is 250-1500.
© 2015 ACS Motion Control Ltd.
SLSBORD can have the following values:
0 - ServoBoost is off
1 - Recommended for high resolution, stiff systems. This potentially
provides the best performance. Should be initial choice.
2 or 3 - Recommended for systems with low resolution (1[µm] or
worse) or compliant systems with low servo loop bandwidth.

10 © 2015 ACS Motion Control Ltd.


ServoBoost Optimization

1. Start by optimizing standard tuning


Ensure SLPKP, SLVKP, SLVKI, SLAFF and loop shaping filters are
properly set.
When using ServoBoost adequate stability margins must be ensured:
Gain margin of minimum 6dB (recommended 10)
Phase margin of minimum 30 degrees
2. Set SLAFF by using
Manual approach fine-tune while performing back and forth motion
Using FRF Analyzer
Measure FRF when ServoBoost is disabled
Fine-tune manually while performing back and forth motion
For gantry COG axis the calculated value from FRF should be
11 © 2015 ACS Motion Control Ltd.
divided by 2.
ServoBoost Optimization cont.

3. Start with SLSBBW at a low value (10-25), SLSBF=200,


SLSBORD=1.
4. Increase/optimize SLSBBW like a gain
5. Repeat 3 with increasing values of SLSBF (500, 750, 1000, 2000.
Or completely disable the filter by setting SLSBF=0).
I. The goal is to use the highest possible SLSBBW, SLSBF values (or
completely disable the ServoBoost filter) that allows doubling
SLSBBW while keeping the system stable.
6. If unable to get acceptable / stable results in 3, repeat starting at
B with SLSBORD =2, or SLSBORD =3. First try with SLSBF =0, and
then try with increasing values of SLSBF.

12 © 2015 ACS Motion Control Ltd.


After Optimizing ServoBoost and confirming stability via FRF, it
may be possible to further improve performance by either one of
the following
Using zero integrator (SLVKI=0) and increasing SLPKP significantly
Significantly reduce the integrator limit SLVLI

13 © 2015 ACS Motion Control Ltd.


Input Shaping

Input shaping is a algorithm which allows to suppress vibrations at


a specific frequency

It creates several impulses such that produced vibrations cancel


each other

14 © 2015 ACS Motion Control Ltd.


Response of a Linear System to
Impulse Inputs

First
Impulse Second
Impulse

Position
Time

First
Impulse Second
Impulse

Position

Time

Superposition of Impulse Responses Yields No Vibration

15 © 2015 ACS Motion Control Ltd.


Shaping a Trapezoidal Velocity Command

Amplitude

Velocity
*
Time Time
Unshaped Command Shaping Sequence

Velocity

→ Time
Shaped Command

16 © 2015 ACS Motion Control Ltd.


How to implement

Go to http://inputshaping.convolve.com/ ( Account is required)


Fill in all required information: Frequency, sampling rate, etc.
After all the required fields are filled you may calculate the result As an
output you get two arrays of the same size: “Time” and “Amplitude”.
Create three arrays at the ACSPL+
ConvT – Time array
ConvA – Amplitude array
ConvB – Buffer array for the algorithm
Note:
ConvA and ConvT has the same array size defined in the file generated by the convolve cite.
ConvB has the size of “Steps”/CTIME + 1, where “steps” is taken from the convolve cite output.
ConvT is “time” column from the convolve cite output multiplied by the CTIME value.

17 © 2015 ACS Motion Control Ltd.


Example 1

#Hardware ID =
Frequency to be eliminated is #Piezo ID =

5[Hz], Damping assumption #Location =


#Code = 17
0.1, Robust design is required. #Modes = 1

CTIME = 1 #Frequency = 5
#Zeta= 0.1

Convolve site output #Constraint= 1


#DeltaT = 0.001
#Impulses = 5
#Steps = 201
#Ampsum = 100000
#Time Amp
0 32966
57 217
82 6206
103 43019
201 17592
#Notes =

18 © 2015 ACS Motion Control Ltd.


Example 1: ACSPL+ code sample

! Convolution example Initial (yellow) and shaped (red) velocity profiles


global real ConvA(5), ConvT(5), ConvB(202)
GLOBAL INT IMPULSES
IMPULSES = 5
INT AXIS
AXIS = 0

! Assign amplitude values


ConvA(0) = 32966/100000
ConvA(1) = 217/100000
ConvA(2) = 6206/100000
ConvA(3) = 43019/100000
ConvA(4) = 17592/100000

! Assign time values


ConvT(0) = 0
ConvT(1) = 57
ConvT(2) = 82
ConvT(3) = 103
ConvT(4) = 201

!Reset default connection flag


MFLAGS(AXIS).#DEFCON=0
! Define connect formula
CONNECT RPOS(0)=INSHAPE(APOS(0), IMPULSES, ConvT, ConvA, ConvB)
DEPENDS AXIS,AXIS

19 © 2015 ACS Motion Control Ltd.


Example 2

#Hardware ID =
Frequency to be eliminated is #Piezo ID =

5[Hz], Damping assumption #Location =


#Code = 17
0.1, Robust design is required. #Modes = 1

CTIME = 0.5 #Frequency = 5


#Zeta= 0.1

Convolve cite ouput #Constraint= 1


#DeltaT = 0.0005
#Impulses = 5
#Steps = 401
#Ampsum = 100000
#Time Amp
0 32885
4 334
162 3341
203 45751
401 17689
#Notes =

20 © 2015 ACS Motion Control Ltd.


Example 2: ACSPL+ code sample

! Convolution example Initial (yellow) and shaped (red) velocity profiles


global real ConvA(5), ConvT(5), ConvB(803)
GLOBAL INT IMPULSES
IMPULSES = 5
INT AXIS
AXIS = 0

! Assign amplitude values


ConvA(0) = 32885/100000
ConvA(1) = 334/100000
ConvA(2) = 3341/100000
ConvA(3) = 45751/100000
ConvA(4) = 17689/100000

! Assign time values


ConvT(0) = 0*CTIME
ConvT(1) = 4*CTIME
ConvT(2) = 162*CTIME
ConvT(3) = 203*CTIME
ConvT(4) = 401*CTIME

!Reset default connection flag


MFLAGS(AXIS).#DEFCON=0
! Define connect formula
CONNECT RPOS(0)=INSHAPE(APOS(0), IMPULSES, ConvT, ConvA, ConvB)
DEPENDS AXIS,AXIS

21 © 2015 ACS Motion Control Ltd.


Thank You

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy