Control modes General The control mode of systems without feedback is called open-loop, the mode with feedback is called closed-loop. In the closed-loop control mode, it is initially irrelevant whether the fed back signals come from the motor itself or from the influenced process. For controllers with feedback, the measured control variable (actual value) is constantly compared with a set point (set value). In the event of deviations between these values, the controller readjusts according to the specified control parameters. Pure controllers, on the other hand, have no feedback for the value that is to be regulated. The set point (set value) is only specified. In addition to the physical feedback systems (e.g., via encoders or Hall sensors), model-based feedback systems, collectively referred to as sensorless systems, are also used. Both feedback systems can also be used in combination to further improve the control quality. Summarized in the following are all possible combinations of control modes and feedback systems with respect to the motor technology. Support of the respective control mode and feedback is controller-specific and is described in chapters Pin assignment and Operating modes. Control mode Stepper motor BLDC motor Open-Loop yes no Closed-Loop yes yes Feedback Stepper motor BLDC motor Hall no yes Encoder yes yes Sensorless yes yes Nanotec developed the Slow Speed control mode, which is a combination of open-loop and closed-loop, especially for applications in the low speed range. This control mode can be used if an encoder is present as feedback. Various operating modes can be used depending on the control mode. The following list contains all the types of operation that are possible in the various control modes. Operating mode Control mode Open-Loop Closed-Loop Slow Speed Profile Position yes yes yes Velocity yes yes yes Profile Velocity yes yes yes Profile Torque no1) yes no Homing yes2) yes yes Interpolated Position Mode yes3) yes yes Cyclic Synchronous Position yes3) yes yes Cyclic Synchronous Velocity yes3) yes yes Cyclic Synchronous Torque no1) yes no Clock-direction yes yes yes 1) The Profile Torque and Cyclic Synchronous Torque torque operating modes are not possible in the open-loop control mode due to a lack of feedback. 2) Exception: Homing on block is not possible due to a lack of feedback. 3) Because ramps and speeds in operating modes Cyclic Synchronous Position and Cyclic Synchronous Velocity follow from the specified points of the master, it is not normally possible to preselect these parameters and to ascertain whether a step loss can be excluded. It is therefore not advisable to use these operating modes in combination with open-loop control mode. Open-Loop Introduction Open-loop mode is only used with stepper motors and is, by definition, a control mode without feedback. The field rotation in the stator is specified by the controller. The rotor directly follows the magnetic field rotation without step losses as long as no limit parameters, such as the maximum possible torque, are exceeded. Compared to closed-loop, no complex internal control processes are needed in the controller. As a result, the requirements on the controller hardware and the controller logic are very low. Open-loop mode is used primarily with price-sensitive applications and simple movement tasks. Because, unlike closed-loop, there is no feedback for the current rotor position, no conclusion can be drawn on the counter torque being applied to the output side of the motor shaft. To compensate for any torque fluctuations that arise on the output shaft of the motor, in open-loop mode, the controller always supplies the maximum possible (e.g., specified by parameters) set current to the stator windings over the entire speed range. The high magnetic field strength thereby produced forces the rotor to assume the new steady state in a very short time. This torque is, however, opposite that of the inertia of the rotor and overall system. Under certain operating conditions, this combination is prone to resonances, comparable to a spring-mass system. Commissioning To use open-loop mode, the following settings are necessary: In object 2030h (Pole Pair Count), enter the number of pole pairs (see motor data sheet: for a stepper motor with 2 phases, a step angle of 1.8° corresponds to 50 pole pairs and 0.9° corresponds to 100 pole pairs). In object 2031h:00h, enter the maximum permissible motor current (motor protection) in mA (see motor data sheet) In object 6075h:00h, enter the rated current of the motor in mA (see motor data sheet). In object 6073h:00h, enter the maximum current (for a stepper motor, generally corresponds to the rated current, bipolar) in tenths of a percent of the set rated current (see motor data sheet). Factory settings: "1000", which corresponds to 100% of the value in 6073h. A value greater than "1000" is limited internally to "1000". In object 3202h (Motor Drive Submode Select), set bit 0 (CL/OL) to the value "0". Nanotec recommends to activate the current reduction on motor standstill in order to reduce the power loss and heat build-up. To activate current reduction, the following settings are necessary: In object 3202h (Motor Drive Submode Select), set bit 3 (CurRed) to "1". In object 2036h (open-loop current reduction idle time), the time in milliseconds is specified that the motor must be at a standstill (set value is checked) before current reduction is activated. In object 2037h (open-loop current reduction value/factor), the root mean square is specified to which the rated current is to be reduced if current reduction is activated in open loop and the motor is at a standstill. Optimizations Depending on the system, resonances may occur in open-loop mode; susceptibility to resonances is particularly high at low loads. Practical experience has shown that, depending on the application, various measures are effective for largely reducing resonances: Reduce or increase current, see objects 6073h and 6075h, respectively. An excessive torque reserve promotes resonances. Reduce or increase the operating voltage, taking into account the product-specific ranges (with sufficient torque reserve). The permissible operating voltage range can be found in the product data sheet. Optimize the control parameters of the current controller via objects 3210h:09h (I_P) and 3210h:0Ah (I_I) (generally not necessary). Adjustments to the acceleration, deceleration and/or target speed depending on the selected control mode: Profile Position operating mode Objects 6083h (Profile Acceleration), 6084h (Profile Deceleration) and 6081h (Profile Velocity). Velocity operating mode Objects 6048h (Velocity Acceleration), 6049h (Velocity Deceleration) and 6042h (Target Velocity). Profile Velocity operating mode Objects 6083h (Profile Acceleration), 6084h (Profile Deceleration) and 6081h (Profile Velocity). Homing operating mode Objects 609Ah (Homing Acceleration), 6099h:01h (Speed During Search For Switch) and 6099h:02h (Speed During Search For Zero). Interpolated Position Mode operating mode The acceleration and deceleration ramps can be influenced with the higher-level controller. Cyclic Synchronous Position operating mode The acceleration and deceleration ramps can be influenced via the external "position specification / time unit" targets. Cyclic Synchronous Velocity operating mode The acceleration and deceleration ramps can be influenced via the external "position specification / time unit" targets. Clock-direction operating mode Change of the step resolution via objects 2057h (Clock Direction Multiplier) and 2058h (Clock Direction Divider). Optimize acceleration / deceleration ramps by adjusting the pulse frequency to pass through the resonance range as quickly as possible. Closed-Loop Introduction The closed-loop theory is based on the idea of a control loop. A disturbance acting on a system should be compensated for quickly and without lasting deviation to adjust the control variable back to the set point. Closed loop using a speed control as an example: PII = Proportional-integral current control loop PIV = Proportional-integral velocity control loop Iactual = Actual current Vactual = Actual speed The closed-loop method is also referred to as "sine commutation via an encoder with field-oriented control". At the heart of closed-loop technology is the performance-adjusted current control as well as the feedback of the actual values of the process. Using sensor signals, the rotor orientation is recorded and sinusoidal phase currents generated in the motor windings. Vector control of the magnetic field ensures that the magnetic field of the stator is always perpendicular to that of the rotor and that the field strength corresponds precisely to the desired torque. The current thereby controlled in the windings provides a uniform motor force and results in an especially smooth-running motor that can be precisely regulated. The feedback of the control variables necessary for closed-loop mode can be realized with various technologies. In addition to the physical feedback with encoders or Hall sensors, it is also possible to virtually record the motor parameters through a software-based model calculation. Physical variables, such as speed or back-EMF, can be reconstructed with the help of a so-called "observer" from the data of the current controller. With this sensorless technology, one has a "virtual rotary encoder", which – above a certain minimum speed – supplies the position and speed information with the same precision as a real optical or magnetic encoder. All controllers from Nanotec that support closed-loop mode implement a field oriented control with sine commutated current control. Thus, the stepper motors and BLDC motor are controlled in the same way as a servo motor. With closed-loop mode, step angle errors can be compensated for during travel and load angle errors corrected within one full step. Controller structure The controller consists of three cascaded PI controllers (proportional-integral): the current controller (commutation), the velocity controller and the position controller. The current controller is active in all operating modes. The velocity controller is as well with the sole exception of the "Real Torque" modes (torque mode without speed limiting if bit 5 in 3202h is set to "1"). The position controller is active in the following operating modes: Profile Position Homing Interpolated Position Mode Cyclic Synchronous Position Clock-direction mode Velocity/Profile Velocity/Cyclic Synchronous Velocity if bit 1 in 3202h is set to "1" Note: For firmware versions from FIR-v22xx upwards, the new schema for the Controller structure applies. The old control parameters (object 3210h) are activated in the factory settings for compatibility reasons. Object 320Eh, used in firmware versions FIR-v19xx to FIR-v21xx, has been eliminated; any stored values are automatically transferred to the new objects. For new applications, Nanotec recommends using the new control parameters. To use the new parameters, set 3212h:04h to "1" . The old values are converted and entered in the new objects 321Ah to 321Eh. You must save all objects (see Saving objects). Each controller consists of a proportional component with the gain factor Kp and an integral component with the integrator time Ti. The control variable (the output signal of the controller, which is the set point for the next controller) is limited by the maximum speed (position controller), the maximum current (velocity controller) or the maximum PWM signal (current controller), respectively. Object Name Unit Description 321Ah:01h Current controllerProportional Gain Kp for Iq [mV/A] Proportional component of torque-forming component 321Ah:02h Current controllerIntegrator Time Ti for Iq [μs] Integrator time of torque-forming component 321Ah:03h Current controllerProportional Gain Kp for Id [mV/A] Proportional component of field-forming component 321Ah:04h Current controllerIntegrator Time Ti for Id [μs] Integrator time of field-forming component 321Bh:01h Velocity controllerProportional Gain Kp [mA/Hz] Proportional component 321Bh:02h Velocity controllerIntegrator Time Ti [μs] Integrator time 321Ch:01h Position controllerProportional Gain Kp [Hz] (Controller deviation in mech. revolutions per second) Proportional component 321Ch:02h Position controllerIntegrator Time Ti [μs] Integrator time The gain factor Kp has a direct influence on the current control variable: at the same deviation, the control variable is proportional to the gain factor. Each controller also has an integral component that is determined by the integrator time (Ti). The smaller the integrator time, the faster the control variable increases. If the integrator time is 0, the integral component is internally set to "0" and the controller only has the proportional component. Feed forward It is also possible to set a velocity feed forward, an acceleration feed forward (that corresponds to a torque/current value) and a voltage feed forward. You can use the feed forward to add an already known or anticipated control variable to the set point ("predictive"). You can, e. g., compensate for the inertia of the load by adding an acceleration feed forward value to the output of the velocity controller. The feed forward values are additionally fed to the speed/current control loop or added to the voltage value and are immediately available. A more dynamic control can thereby be achieved. The following figure shows the current (produced by the acceleration) during the acceleration phase as a function of the acceleration feed forward. At a feed forward value of "50%", the current is at "50%" already at the start of the acceleration phase; the current controller is thereby "relieved". The factor for the velocity feed forward is set in object 321Dh:03h in tenths of a percent of the output of the ramp generator (606Bh) and added to the output of the position controller before the velocity controller. The velocity feed forward is active in all modes with position control loop: Profile Position Homing Interpolated Position Mode Cyclic Synchronous Position Clock-direction mode Velocity/Profile Velocity if bit 1 in 3202h is set to "1" The factor for the acceleration feed forward is set in object 321Dh:02h in tenths of a percent of the factor of 320Dh and multiplied by the output of the ramp generator (6074h). The value is added to the output of the velocity controller before the current controller. The acceleration feed forward is active in all modes, with the exception of the torque modes. The following figure shows the cases in which the feed forward is active and the position of the feed forward within the controller cascade. The factor for the voltage feed forward is specified in object 321Dh:01h in tenths of a percent of the voltage that is needed to produce the rated current. If the factor is 1000‰ (factory setting), the voltage is immediately available and the actual current quickly reaches the rated current. As a result, there is practically no control deviation during acceleration and the current controller is relieved. The voltage feed forward is active in all modes. To switch it off, set 321Dh:01h to "0". Commissioning An auto setup should be performed before using closed-loop mode. The auto setup operating mode automatically determines the necessary parameters (e.g., motor data, feedback systems) that are necessary for optimum operation of the field oriented control. All information necessary for performing the auto setup can be found in chapter Auto setup. With the Plug & Drive motors, it is not necessary to perform the auto setup, as this was already performed at the factory. Bit 0 in 3202h must be set . The bit is set automatically after a successfully completed auto setup. Optimizations In closed-loop, the measured control variable (actual value) is constantly compared with a set point (set value). In the event of deviations between these values, the controller readjusts according to the specified control parameters. The objective of control parameter optimization (the so-called tuning of the controller) is the smoothest possible running of the motor, high accuracy and high dynamics in the reaction of the controller to faults. All control deviations should be eliminated as quickly as possible. Due to the cascaded Controller structure, it is useful to start the optimization of the inner-most controller (current controller) before the velocity and – if applicable – the position controller are optimized. Each of the three controllers consists of a proportional and an integral component, which should normally be adjusted in this order. The following figures show the reaction of the controller to a change in set value. If the proportional component is too small, the actual value remains below the set value. A proportional component that is too large, on the other hand, results in "overshooting". If the integrator time is too small, the system tends toward oscillations. If the integrator time is too large, the deviations are compensated for too slowly. CAUTION: Risk of injury through uncontrolled motor movements! Incorrect control parameters may result in an unstable control behavior. Unforeseen reactions can result. ► Increase the control parameters slowly and incrementally. Do not increase these further if you notice strong vibrations/oscillations. ► Do not reach for moving parts during operation. After switching off, wait until all movements have ended. Slow Speed Introduction The slow speed mode combines the advantages of open-loop and closed-loop technologies in a low speed range and can be used if an encoder is present as feedback. Slow speed offers following error monitoring but is more smooth-running than in pure closed-loop mode at low speeds. The rotor orientation is detected via the signals of the encoder. To calculate the speed, the change of position is divided by the (fixed) cycle time. At low speeds, the controller counts fewer (or even no) encoder increments in one cycle, which leads to a speed curve with a relatively high number of peaks (in spite of the used low-pass filter). Due to the cascaded control loop, this results in current peaks in closed-loop mode, which can lead to uneven running, as the following figure shows. In the slow speed mode, the motor instead operates with constant phase current, as in open-loop. The following error is, however, monitored by means of the encoder and the vector control of the magnetic field is activated if necessary, as in closed-loop. Activation To activate the slow speed mode, you must: activate closed-loop, in object 3202h (Motor Drive Submode Select), set bit 7 to "1". The changeover between slow speed and closed-loop occurs automatically at a speed that is dependent on the physical encoder resolution, with a hysteresis of 10%. This fixed changeover speed is calculated in revolutions per minute as follows: The following figure shows the changeover as a function of speed in both directions. While at a standstill, the motor is in closed-loop mode. Optimizations The entire phase current remains constant as in open-loop. Depending on the system, resonances may occur that you can avoid by adjusting the motor current and/or the acceleration ramp. See also chapter Open-Loop. During operation at various speed ranges, if changing between closed-loop and slow speed, it may be necessary to: reduce the motor current (objects 6075h, 6073h) if changing from closed-loop to slow speed, ascertain various control parameters (see Controller structure) for each speed range.