Back to top

Tuning - Built-in Frequency Analysis

Valid for S300, S700

Source: SPS/IPC/Drives 2007: Antriebsinterne Frequenzanalyse zur Parameteroptimierung von Servoreglern
English version is translated from the German original.


Highly dynamical servo drives continue to be a rapidly growing market segment. Here, brushless concepts have proven very advantageous - especially with respect to the motors' reliability and size - thus making possible more and more complex controlling algorithms with additional logic and perfected power electronics. Despite more and more complex drive systems, thanks to immense progress in semiconductor technology, their sizes and costs did not increase. Every new drive generation provides more dynamics, more flexibility, and a higher density of integration.

Besides expanding the possibilities offered by modern drive systems, at the same time the task to optimize the growing number of parameters for the respective task to obtain the highest possible dynamics. Some user software already nowadays offer comfortable oscilloscopic functions. However, especially in dynamically demanding applications it is not sufficient any more to optimize the controller exclusively in the time range only by considering the step response. To analyze and identify the system in the frequency sector, you need  both expensive additional equipment, and the ability to operate it. Alternatively, it is also possible to model the dynamic systems behavior, and to afterwards analyze this model's frequency.  On the one hand, this possibility is very time - consuming, and on the other hand also in this case you need special knowledge and abilities.

Here, we present a tool enabling its users to easily perform  frequency analysis for each of the three cascade levels (position, speed, and current controls) . The result is presented as a Bode Diagram with frequency responses for both the closed and the open control loops. Both the amplitude of the control loop, and the amplitude reserve and phase reserve can be read directly. As the frequency analysis takes place in the servo amplifier's firmware, and as for the measuring already installed measuring systems are used, you do not need any additional hardware. Restrictions while effecting the measurements are exclusively due to the connected mechanics that also is applied in normal operation. In this way, you can make visible and specifically suppress characteristics of the control loops, e. g. resonances. Improvements can be visualized immediately. The adjustment of observers and feed forwards is greatly accelerated and simplified due to the rapid visualization of its influence on the frequency responses. With the help of this new tool larger bandwidth can be reached with less expenditure in parameterizing. We will show that with a standard servo amplifier with optimized parameters, a bandwidth of 1kHz in the position control at a position update of  250μs, and a switching frequency of 8kHz  (62,5μs current-update) is possible.

Control Structure / Design

In general, servo amplifiers are designed in control cascades, where the innermost control circuit controls the torque, or the force, the superimposed circuit controls the speed, or , in the case of linear drives, the velocity, and the outer circuit controls the position. As the current is proportional to the torque, or to the force, the cascade mirrors the mechanical context (picture 1).

On every level of the cascaded control system, the different control values can be limited, and thus  can be adapted to the electrical and to the mechanical maximum values of both the drive and the system. In this contribution, the main stress lies on the position control circuit. Nevertheless, the underlying controllers shall not be disregarded.  


Picture 1: cascade control of a servo amplifier with speed observer

Step Response, and Bode Diagram

The most simple way to consider each system, which nowadays can be done at little additional expenses, is to picture the different quantities in relation to  time, as done e. g. by an oscilloscope.  There already  exist different software based oscilloscopes (1 - 3) to enable servo amplifiers to also show values which are only be calculated internally. In the time range, to evaluate the controllers' quality and stability, one refers to the so - called step response. In this case, the control circuit is set with a step control value, and with respect to this the course of the control quantity, the answer, is recorded. Quality criteria like the control start time, the overshot width, or the control stop time are sufficiently known (picture 2).  


Picture 2: step response of a  PT2-section (control start time tan, overshot width ü, control stop time T)

The Bode Diagram is a possibility to illustrate a system's frequency response. As for different reasons, it has proved suitable in practice it is used here. For example, the Bode Diagram does not only permit statements concerning the stability of  a system with the momentary adjustments, but it also makes it possible to easily make statements concerning how the changing of different parameters will influence the system's behaviour.

The Bode Diagram splits the course of the complex transfer function comparatively to the frequency into its value and its phase. Both the frequency and the amplitude response are outlined  logarithmically. Therefore, all transfer functions which normally are multiplied by each other are converted to an addition. It is very easy both to estimate and to predict the influence of every new transfer function.

Creation of the Bode Diagram

To create such a Bode Diagram the corresponding control loop is impinged with sinusoid set points for all frequencies in turn (1) while at the same time the system's response is evaluated (2). The system's response which is sinusoid as well can differ in both rate and phase (picture 3).  

image       (1)

image (2)


picture 3: excitation of the system (blue) and measuring of the response (red)

The scanned signals of the controlled quantity are weighted and added with both  the sine and the cosine of the excitation signal. This corresponds to a discrete Fourier - transformation (DFT) with the set frequency. To obtain a complete Bode Diagram, this procedure must be effected for all desired frequency values.

As a result of such measuring, picture  4 shows the Bode Diagram of the speed control loop of a S300 (3)  


Picture 4: Bode Diagram (open loop and closed loop) of the speed control loop of a S300 (3)

Trajectory: Example

On the basis of a simple example trajectory setting the course of the position set point, we want to illustrate the behaviour of a positioning. The drive gets the task to reach a given target position within  a certain time. For this reason, it is accelerated in the first phase, moves at a constant speed, to finally be braked again. Naturally, such a process is observed within the time range.

If the parameters are optimized within the time range using the step response, an improvement of the behavior (e. g. with respect to contouring errors) can be obtained only in a limited way (see picture 5a).

Although the chronological course of the other quantities has not changed considerably, the behavior of the drive in relation to the contouring errors has been considerably improved in picture 5b. In picture 5c, the contouring error disappears nearly completely. Here, the drive's parameterizing was optimized in all three servo loops towards the highest dynamics by means of the Bode Diagrams.

During the phase with constant speed, the speed's feed forward provides that the required position is kept to. And during the acceleration phases (speed ramps and torque / current), the current's feed forward helps to optimally fulfill these demands.

Especially at times when the torque, and correspondingly also the current, has to undergo significant changes, highest demands are set to the drive control in connection with dynamics. These demands hardly can be satisfied only by parameterizing in the time range.



Picture  5: course of the trajectory (position, speed, current, and contouring error, from above) without feed forward (a), with speed feed forward (b), and with feed forwards for both the current and the speed (c).

With the Bode Diagram it is very easy to parameterize each of the three servo loops. In contrast, a picture provided by an  oscilloscope shows if the control loop is already instable, or if it is still stable while the Bode Diagram also shows the users how "close " they have already come to the stability limit.

Two values inform you about this: the phase reserve and the amplitude reserve in the cut - open control loop. Furthermore, you can immediately identify frequencies with a peaking control loop . These stability tests are performed in the small signal sector without using feed forwards.  

In practice, it is hard to balance a possible flexible coupling between load and drive, or between motor and feedback system, a so - called two - mass oscillator within the time sector. In contrast, with a Bode Diagram it is very easy to compensate the occurring resonances within the frequency sector, and to compensate them with the corresponding tools used in control technics (e. g. observers) (4, 5). This is also true for other resonances that, due to construction, can possibly occur on the load.

Of greater interest for the dynamics of the control loop are elements that influence the course of the phase. Within the time sector, these effects cannot be recognized. The delay times within the system influence  the phase position to the greatest extent. Although they can never be totally eliminated,  their effects  can be limited by some special algorithms, or by feed forwards. Both, the delay times as well as the feed forwards are treated in detail in the following section.

A possibility to not evade the delay times but to effectively compensate them in the sense of control technics is offered with the Smith Predictor (6) which is especially suitable for current servo loops where naturally the highest dynamics is demanded. Also this effect can only be illustrated exactly by observing the frequency range.

Delay Times and Feed Forward


Picture 6: cascade with delay times Tx and feed forwards FFV and FFT

No system works completely without delays. For different reasons, in systems with control engineering the signals are always transmitted later than it is desirable. The most simple reason is the processing time that is always needed by digital components. But also feedback systems can contribute to this delay. Especially the delay times in electric circuits have considerable influence limiting the dynamics of this control loop. Picture 6 shows the estimated delay time by the scanning with Ta/2. In Bode Plots, the influence of these delays is visualized by the phase displacement.

Furthermore, picture 6 shows two feed forwards. For the Feed Forward Velocity (FFV), the programmed position is numerically differentiated once, and is added directly to the speed control point. For the torque's feed forward, this value is differentiated a second time before it is added to the current control point. The speed signifies the derivation of the position according to the time, and the torque signifies the derivation of the speed according to the time. The feed forwards make use of this knowledge about the mechanical relations by predicting the  speed and the torque necessary to optimally reach a required position. In this way, the feed forwards significantly accelerate the whole servo loop.

Of course, these two feed forward signals can be delayed for a certain time whereby you can also specifically influence this time. If the position control point is known in advance, and the feed forward values can also be calculated in advance, and are available before the real control value is set, it can even be negative, causing thus a kind of non - causal system. Then, the cascade control loops can dispose of the feed forward values earlier than if the latter first had to be calculated from the temporary course of the positional value.

These feed forwards serve to both compensate the phase shifts caused by delays, and to more rapidly transmit predictable changes in the set point in the speed and the current controls to the cascade control loops. The feed forward branches can be adjusted by four parameters, the weighting of the respective feed forward value (FFV and FFT), and the two delay times. Like the influence of the delay times in the main branches, the influence of the two delay times can hardly be evaluated.



Picture  7: simulation results for the closed position control loop: (a) without feed forward (b) with speed feed forward, (c) with current and speed feed forwards

To test the effects of the feed forwards, the complete control cascade was simulated in  Matlab/ Simulink  (cf. picture 6). There, the motor's winding was modeled with time element of the first category, and each of the mechanical relations was imitated by an integrator.

In picture 7 the expected phase gain for the position control loop is clearly recognizable. Without feed forwards, the band width of the position control is 500Hz (-90° phase shift). With the speed feed forward, you obtain a band width of 950Hz , and with a current feed forward,  in simulations it can be increased up to 1.8 kHz.

Simulation with non - optimum parameters

The advantage of the Bode Diagram is especially visible if the parameters are not optimized.  Picture 8 shows the behavior of a position control loop whose feed forward parameters are adjusted in the best possible way compared with the effects of faulty parameters. Picture  8I shows the wrongly adjusted reinforcements FFV and FFT ( +3dB each) . Picture 8II considers faulty delay times (250μs for TFFV and 125μs for TFFT) .  


Picture 8: results of the simulation for the position control loop with non - optimum parameters
I a) FFV too large by  3dB  b) FFT too large by 3dB 
II a) TFFV delayed b) TFFT delayed.
The influence of  both the feed forward, and of the frequency sectors in which the different parameters work, is clearly visible.

If such faulty parameters exist, this can be easily recognized and corrected by means of the Bode Diagram.


Picture  9 shows Bode Diagrams of the closed position servo loop of a servo control with a rotatory drive without weight. The position control without feed forwards reached a band width of 400Hz (a). The speed feed forward already increases the  dynamics to approximately 700Hz (b). Only together with the current feed forward at optimum parameterized control loops, you obtain a position controller's band - width of 1kHz (c).  


Picture 9: Bode  Diagrams (measuring results, closed loop) of the position control:
a) without feed forward (blue)
b) with speed feed forward (red), and
c) with speed and current feed forwards (black)


We showed that the new drive - internal Bode Diagram can be effectively used to adjust all parameters of the control cascade rapidly and effectively. This is especially true for parameters influencing the phase position. With the appropriate feed forwards you can reach band - widths of 1kHz even in the position control loop of a servo drive  (at 250μs position-update, a switching frequency of 8kHz, and a current - update of 62,5μs ).

In the next step we use the new tools on the basis of the frequency analysis to further support the user in parameterizing the control elements up to auto - tuning.


Heiko Schmirgel
Kollmorgen Europe GmbH

Prof. Dr.-Ing. Jens Onno Krah
Fachhochschule Köln
Fakultät IME – NT


Software oscilloscopes from  different manufacturers:
1. Global Drive Oszilloskop: Lenze
2. Automation Toolkit EPAS-4: Elau
3. DriveGUI: Kollmorgen Europe GmbH
4. Krah, Lemke: „Geschwindigkeitsbeobachter höherer Ordnung zur Unterdrückung von höherfrequenten Resonanzen bei Direktantrieben“ SPS/IPC/Drives, Seite 431-439, Nürnberg, 2006.
5. Ellis, Krah: “Observer-Based Resolver Conversion in Industrial Servo Systems” PCIM, Seite 311-316, Nürnberg, 2001
6. Schmirgel, Krah, Berger: “Delay Time Compensation in the Current Control Loop of Servodrives – Higher Bandwidth at no Trade-off” PCIM Europe, Seite 541-546, Nürnberg, 2006  


edmondc's picture
hello, would you help me understand:
why in open loop bode plot curve can be affected by the velocity loop Kp ?
i thought that open loop cannot use PID gain?? 
thank you
PinCheng's picture
 hello  edmondc
in the bode plot curve ,open loop Is equal to the Plant response multiplied by the Controller just not include feedback 
 the open loop plot does not mean open loop control