Position modes (CSP, PP, IP, P)
This mode is used to command the position of the actuator. It requires a proper configuration of the commutation sensor.
The commutation sensor configuration process is described in the Commutation section.
Position limit block is available to protect the system in front of mechanical limits or other factors or to allow endless positioning in case of, for example, rotary systems. Max position and min position determine these limits and are applied to position demand. The output of the PID is directly connected to the velocity loop input block of the Velocity modes (CSV, PV, V).
This mode can be sourced directly from the network or through the profiler mode. This last one allows multiple configurations:
- Cyclic synchronous position (CSP)
- Profile position (PP): trapezoidal and s-curves
- Interpolated position (IP): linear and 5th polynomial
The position feedback block delivers the actual position of the system based on the position feedback sensor.
The drive supports multiple feedback options. Take a look at the Feedbacks section.
The implemented PID module follows the next block diagram:
The output of the control loop at the kth sample is:
|
Where:
is the output before entering in the saturator, in mechanical revolutions per second [rev/s].
The output after saturator is limited to the values Umax and Umin, so if the I signal is outside these parameters, the output is clamped.- Command
is the Command signal (Output of the Reference + Filters + offset), in [counts].
- Feedback
is the Filtered Feedback signal (Output of the Feedback + Filters), in [counts].
- Kp, Ki and Kd are the PID gains. Kp in [(rev/s)/counts], Ki in [Hz] and Kd in [s2].
- Kffv, Kffa are the feed-forward velocity and acceleration gains, respectively. Kffv is non-dimensional, Kffa in [s].
- ademand is the acceleration demand, in [rev/s2].
- vdemand is the velocity demand, in [rev/s].
- xp is the proportional path:
- xi is the integral path:
where x1 is:
The integral accumulator value can be reset at any time externally. - xd is the derivative path:
Derivative incorporates also a derivative IIR filter, where c1 and c2 are the derivative filter coefficients: - T is the control loop period, in [s], and
, in [s], is the reciprocal of the desired filter bandwidth
, in [rad/s].
The output of the position controller is connected to the velocity command (before the filters and offset) of the velocity control.
All position modes work with a PID controller and the related registers are:
- Position loop Kp (Kp).
- Position loop Ki (Ki).
- Position loop Kd (Kd).
- Position loop Kd filter (ωc).
- Position loop Kffa (Kffa).
- Position loop Kffv (Kffv).
- Position loop max. output (Umax).
- Position loop min. output (Umin).
- Position loop integral value is the integral accumulator value (xi).
- Position loop integral reset allows to reset the integral part (integral reset).
- Position demand is the reference input of the PID. It's an output of the profiler.
- Velocity demand is an output of the profiler.
- Acceleration demand is an output of the profiler.
- Position loop control command is the command value after the filter and offset is applied (Command signal from the diagram).
- Position control loop error is the difference between the reference and feedback values in the control loop.
- Actual position is the feedback input after the filter is applied (Filtered Feedback signal from the diagram).
- Position set-point is the target commanded to the position modes.
On the other hand, the implemented controller supports additional features:
- Position feedback enabled allows opening the loop of the PID. It is configured with register control loop feedback options. The feedback path is removed from the real feedback signal and it forces a value of 0.
- Position & velocity loop rate contains the update rate of execution of the PID.
- Position loop status contains information about PID functionality;
- Loop enabled. This flag activates if the current loop is enabled and in use.
- Upper saturator active (momentary). This flag activates when the current loop is saturating on the upper limit. The flag deactivates when the upper saturation is not happening anymore.
- Lower saturator active. This flag activates when the current loop is saturating on the lower limit. The flag deactivates when the lower saturation is not happening anymore.
- Command limit. This flag activates when the position loop control command signal is outside the max. position and min. position limits. The flag deactivates when the position loop control command signal is inside the position limit thresholds.
- Set-point limit. This flag activates when the position set-point is outside the max. position and min. position limits. Under this situation, the position demand is limited to the nearest position limit. The flag deactivates when the position set-point is inside the position limit thresholds.
- Control loops option code. This parameter allows to enable or disable the continuity of the PID output. If enabled, it would prevent instantaneous undesired PID outputs. Also, changing the PID constants can cause discontinuities in the control output.
- If continuity is going to be used, it is recommended to have a non-zero integral constant.
- Do not use this feature while tuning the system since it could be misleading.
- Position window and position window time are used to determine when position demand has been reached by the actual position. Depending on the selected feedback, the system environment, and the drive configuration the velocity ripple amplitude changes. These configurable parameters are used to determine what is the maximum tolerable error between the two mentioned parameters.
- Position following error window and position following error timeout are used to determine when the actual position is not following the position demand as expected, it means the error between them is too big. The response of the system if the following error is detected is configurable by the position following error option code.
Filters and offset
Additionally to the PID controller, two biquad filters in cascade are available for both PID input sources: Reference and feedback. The purpose of these filters differs on every application, but basically they help to improve feedback readings or compensate undesired system dynamics. There are multiple configurations for every filter:
- Low pass filter
- High pass filter
- Band pass filter
- Peak filter
- Notch filter
- Low shelf filter
- High shelf filter
The next parameters configure every filter type:
Filter type | Frequency | Q-factor | Gain (dB) |
---|---|---|---|
Low pass | X | X | - |
High pass | X | X | - |
Band pass | X | X | - |
Peak | X | X | X |
Notch | X | X | - |
Low shelf | X | - | X |
High shelf | X | - | X |
The related parameters for filter configuration are:
- Position reference filter 1 type & position reference filter 2 type
- Position reference filter 1 frequency & position reference filter 2 frequency
- Position reference filter 1 Q-factor& position reference filter 2 Q-factor
- Position reference filter 1 gain & position reference filter 2 gain
- Position feedback filter 1 type & position feedback filter 2 type
- Position feedback filter 1 frequency & position feedback filter 2 frequency
- Position feedback filter 1 Q-factor& position feedback filter 2 Q-factor
- Position feedback filter 1 gain & position feedback filter 2 gain
Additional feedback sensor
The drive allows activating additional extra feedback for monitoring or other purposes. This feedback is activated selecting it through the auxiliary feedback sensor. The readings are available on auxiliary feedback value in raw format (cnt). Any mappable feedback used for position and velocity can be used as an auxiliary feedback sensor.
Endless position applications
Applications where position control is used but the system position range is infinite (rotary systems) can be described into the drive by using the max position range limit and min position range limit. On reaching or exceeding these limits, the position set-point and position actual wrap automatically to the other end of the range. Usually, when these registers are required they define a complete system revolution.
If software position limits and position range limits are enabled, the more restricted is applied. Software position limits are chosen in case of conflict:
Following figure shows examples of the different position option movement types. In this example, the min position range limit is 0° and the max position range limit is 360°.
![](../__attachments/54494603/EndlessPosition.png?inst-v=0ad17533-19ba-41bb-8f30-41aae97648ea)
Position mode (P)
Position (P) mode uses the above control scheme, connecting the position set-point input from the application directly to the position demand signal mentioned above.
Note
Set-points will begin being taken into account after transitioning to the "operation enabled" state on the drive.
Cyclic synchronous position mode (CSP)
Cyclic Synchronous Position mode (CSP) uses the above control scheme as well but connects the position demand to the linear profiler of the set-point manager.
Note
The profile will generate depending on the selected profiler latching mode. If latching is disabled, the linear profile starts immediately upon a change of position set-point. If latching is enabled, the linear profile starts after a change of position set-point and its confirmation through lathing bit from the control word.Warning
It is mandatory to configure the interpolation time mantissa and interpolation time exponent. The value of these parameters will determine how the linear profile will be performed. The product of these two parameters should match the time that will take to update the current quadrature set-point. More information about the linear profile can be found in the Set-point manager and interpolator buffer section.
Profile position (PP)
Profile position (PP) uses the same control scheme as CSP. The difference is the selected profile mode in the set-point manager. Instead of a linear profile used to interpolate position set-points, a more complex profile is generated taking into account user-configurable parameters. These parameters are:
- Profiler max. velocity
- Profiler max. acceleration
- Profiler max. deceleration
In this mode, a trapezoidal profiler is used. Further information about the trapezoidal profile can be found in the Set-point manager and interpolator buffer section.
This mode accepts new set-points by validating them through the control word register.
Example
The following picture shows a trapezoidal velocity trajectory in a profile position (PP) movement.
![](../__attachments/54494603/image2021-11-24_11-39-50.png?inst-v=0ad17533-19ba-41bb-8f30-41aae97648ea)
S-curve profile position (SPP)
The S-curve profile position mode (SPP) uses the same control scheme as PP. The main difference between SPP and PP is that in PP the velocity follows a trapezoidal trajectory (acceleration, constant velocity, deceleration), whereas, in SPP, the transition points of the trapezoidal trajectory are instead linked by 5th-degree polynomials. This creates a smoother and continuous velocity trajectory, and the jerk in the system is reduced. The position trajectory also becomes smoother than in PP mode. In this mode, the set-point manager parameters required are the same as in PP. These are.
- Profiler max. velocity
- Profiler max. acceleration
- Profiler max. deceleration
Further information about the S-curve profile can be found in the Set-point manager and interpolator buffer section.
This mode accepts new set-points by validating them through the control word register.
Example
The following picture shows an equivalent movement of the example above, but using a S-curve velocity trajectory in a S-curve profile position (SPP) movement.
![](../__attachments/54494603/image2021-11-24_11-38-26.png?inst-v=0ad17533-19ba-41bb-8f30-41aae97648ea)
Note
Currently, the s-curve trajectory is calculated based on an underlying trapezoidal trajectory. The velocity polynomial curve must cover the same area as the trapezoidal velocity curve in the same amount of time. Because of this, latching a new movement during the deceleration stage of the movement may lead to a temporary position overshoot.
Interpolated position (IP)
Interpolated Position mode (IP) behaves in a similar fashion to CSP, in the way that uses a linear interpolator in the profiler module to operate. The main difference, however, is that the set-points of the interpolator are provided by the interpolation buffer.
In this mode, the interpolation buffer allows the user to append a buffer of positions in the drive that will be fed to the set-point manager at a constant rate given by the interpolation time mantissa and interpolation time exponent. More information about the interpolation buffer can be found in the Set-point manager and interpolator buffer section.
Warning
It is mandatory to configure the interpolation time mantissa and interpolation time exponent for this mode to work. The value of these parameters will determine how the interpolation will be performed. The product of these two parameters should match the time that will take to update the position set-point.
Position velocity time (PVT)
Position velocity time (PVT) behaves in a similar fashion to IP. In this mode, the Set-point manager and interpolation buffer allow the user to provide the drive with sets of final position, velocity, and movement duration. Interpolation time mantissa and magnitude order will not be necessary for this mode because interpolation time will be extracted from the time introduced into the buffer of the set-point manager directly. These sets of points are then fed to the set-point manager, which will use the PVT profiler to generate 5th-degree polynomial trajectories that reach each position set-point at the specified velocity in the given time duration.
Warning
The generated PVT profile does not take into account the system limits to generate its trajectories. This means that the main device/instance should take care of ensuring that the requested trajectories can be physically performed within the average limitations of the motor.
Command sources
Summit series devices allow different command sources for the different references of each control loop. In the position operation mode, the command sources are the following.
Analog inputs command source availability depends on the product.
Command source 1
Command source 1 provides a reference to the position control loop. Three different command sources can be selected
- Network. When command source is selected to "Network", the demand value of the loop is used as reference
- Analog input 1. When command source is selected to "Analog input 1", the device uses the analog input 1 readings as reference. Profilers are not functional with this command source.
- Analog input 2. When command source is selected to "Analog input 2", the device uses the analog input 2 readings as reference. Profilers are not functional with this command source.
Note
The device's analog inputs must be configured before using the Analog input command source. The configuration allows setting a Gain and offset to match the analog input range to the units of the operation mode being used.