Difference between revisions of "IONI & IONICUBE user guide/Drive parameterization"

From Granite Devices Knowledge Wiki
Jump to: navigation, search
[checked revision][checked revision]
m (Text replacement - "\[\[([A-Z]{2,3})\]\]" to "{{param|$1}}")
Line 8: Line 8:
 
==Walk-through of initial parametrization==
 
==Walk-through of initial parametrization==
 
In this chapter we walk-trough all Granity tabs and modify the parameter needed. This guide assumes that the drive is in factory defaults state (not configured before). Restore drive to factory state can be done by [[Granity user guide/Uploading a firmware|uploading a firmware]] file to the drive.
 
In this chapter we walk-trough all Granity tabs and modify the parameter needed. This guide assumes that the drive is in factory defaults state (not configured before). Restore drive to factory state can be done by [[Granity user guide/Uploading a firmware|uploading a firmware]] file to the drive.
{{tip|'''Experimenting with drive parameters is (mostly) safe.''' If motor is attached to machine or bench for testing and nothing is attached to shaft (so motor can't jump but it can spin freely), then playing with all drive parameters can be regarded safe. The most important parameters are proper motor current limit values [[MMC]] and [[MCC]] to avoid overheating of motor. If unsure of proper current limits, start with low values and increase gradually if motor stays cool.}}
+
{{tip|'''Experimenting with drive parameters is (mostly) safe.''' If motor is attached to machine or bench for testing and nothing is attached to shaft (so motor can't jump but it can spin freely), then playing with all drive parameters can be regarded safe. The most important parameters are proper motor current limit values {{param|MMC}} and {{param|MCC}} to avoid overheating of motor. If unsure of proper current limits, start with low values and increase gradually if motor stays cool.}}
 
===Connect tab===
 
===Connect tab===
 
No other actions than connect to drive needed on this tab. Once connection successful, proceed to the next tab.
 
No other actions than connect to drive needed on this tab. Once connection successful, proceed to the next tab.
Line 16: Line 16:
 
In this tab we configure the motor and its feedback device.
 
In this tab we configure the motor and its feedback device.
 
====Axis mechanics====
 
====Axis mechanics====
Axis type, units and scale parameters [[AXT]] and [[AXS]] affect only on the [[Granity unit conversion|unit conversion of Granity]] parameters (such as acceleration/velocity limit unit conversions) and has no effect on drive operation.
+
Axis type, units and scale parameters {{param|AXT}} and {{param|AXS}} affect only on the [[Granity unit conversion|unit conversion of Granity]] parameters (such as acceleration/velocity limit unit conversions) and has no effect on drive operation.
  
 
Choose your axis type and scale, or leave them as defaults.  
 
Choose your axis type and scale, or leave them as defaults.  
 
====Motor====
 
====Motor====
 
Find motor parameters from the motor data sheet/manufacturer specifications.
 
Find motor parameters from the motor data sheet/manufacturer specifications.
#Choose motor type from the drowndown list [[MT]]. If motor is linear type, see [[configuring linear servo motor]]. If setting up a '''stepping motor''' instead of servo motor, see [[Using stepping motor with IONI]].
+
#Choose motor type from the drowndown list {{param|MT}}. If motor is linear type, see [[configuring linear servo motor]]. If setting up a '''stepping motor''' instead of servo motor, see [[Using stepping motor with IONI]].
#Set motor pole count [[MPC]] (non-brush DC motors only). If unsure, see [[Determining motor pole count]].
+
#Set motor pole count {{param|MPC}} (non-brush DC motors only). If unsure, see [[Determining motor pole count]].
#Set maximum rated speed [[MMS]] of the motor, or alternatively the maximum allowed motor speed in the target application
+
#Set maximum rated speed {{param|MMS}} of the motor, or alternatively the maximum allowed motor speed in the target application
#Set motor continuous [[MMC]] and peak [[MMC]] current values. If non-brush DC motor type has been selected, then these are measured as the [[peak value of sine]]. See [[Motor peak and continuous current limits]] for description.
+
#Set motor continuous {{param|MMC}} and peak {{param|MMC}} current values. If non-brush DC motor type has been selected, then these are measured as the [[peak value of sine]]. See [[Motor peak and continuous current limits]] for description.
#Set thermal time constant [[MTC]]. Motor thermal time constant value in seconds, used for thermal modeling of motor to avoid motor overheating with peak current [[MMC]]. If not available, use formula 200*motor_weight (kg) as approximate, so a 2 kg motor would get a 400 second time constant. There is no guarantee of accuracy of this method.
+
#Set thermal time constant {{param|MTC}}. Motor thermal time constant value in seconds, used for thermal modeling of motor to avoid motor overheating with peak current {{param|MMC}}. If not available, use formula 200*motor_weight (kg) as approximate, so a 2 kg motor would get a 400 second time constant. There is no guarantee of accuracy of this method.
#Setting coil resistance [[MR]] and inductance [[ML]] values are required for proper drive operation. Do this by using the [[Measure motor resistance and inductance in Granity|Granity's measurement function]] after drive is enabled and operating the first time. If this method fails, perform [[Tuning torque controller]] manually after initial parameters are set or find motor inductance & resistance values from your motor data sheet.
+
#Setting coil resistance {{param|MR}} and inductance {{param|ML}} values are required for proper drive operation. Do this by using the [[Measure motor resistance and inductance in Granity|Granity's measurement function]] after drive is enabled and operating the first time. If this method fails, perform [[Tuning torque controller]] manually after initial parameters are set or find motor inductance & resistance values from your motor data sheet.
 
{{tip|As torque is directly proportional to motor current, it is advisable to set current limits lower at the beginning of testing. I.e. 50% of motor's rated current will produce 50% of motor's rated torque.}}
 
{{tip|As torque is directly proportional to motor current, it is advisable to set current limits lower at the beginning of testing. I.e. 50% of motor's rated current will produce 50% of motor's rated torque.}}
  
Line 32: Line 32:
  
 
====Feedback device====
 
====Feedback device====
#Choose feedback device type from the dropdown [[FBD]]
+
#Choose feedback device type from the dropdown {{param|FBD}}
#Set feedback device resolution. If [[FBD]] is [[quadrature]] encoder, then manufacturers typically give resolution as pulses per revolution (PPR) or lines per revolution (LPR) which are the same thing and shall be entered directly into [[FBR]] field. Some manufactures also call PPR as CPR.
+
#Set feedback device resolution. If {{param|FBD}} is [[quadrature]] encoder, then manufacturers typically give resolution as pulses per revolution (PPR) or lines per revolution (LPR) which are the same thing and shall be entered directly into {{param|FBR}} field. Some manufactures also call PPR as CPR.
#Configure the polarity of feedback device counting direction by [[FBI]] parameter. Motor and feedback device must have same electrical positive rotation direction to make a stable servo system. If your system shows no stability (instant following error after a motor "jump"), try changing this setting.
+
#Configure the polarity of feedback device counting direction by {{param|FBI}} parameter. Motor and feedback device must have same electrical positive rotation direction to make a stable servo system. If your system shows no stability (instant following error after a motor "jump"), try changing this setting.
#Leave the Hall sensors Off [[FBH]] during initial setup. Enable later if necessary ([[Hall sensors|see when]]).
+
#Leave the Hall sensors Off {{param|FBH}} during initial setup. Enable later if necessary ([[Hall sensors|see when]]).
 
===Tuning===
 
===Tuning===
 
Tuning tab contains feedback gain values for velocity and position control modes as well as torque bandwidth limit setting. Configuring these parameters are documented in [[Servo motor tuning guide]]. However, before proceeding into tuning, go through all other settings listed in this article.
 
Tuning tab contains feedback gain values for velocity and position control modes as well as torque bandwidth limit setting. Configuring these parameters are documented in [[Servo motor tuning guide]]. However, before proceeding into tuning, go through all other settings listed in this article.
Line 42: Line 42:
 
====Drive fault limits====
 
====Drive fault limits====
 
These settings specify drive electrical condition such as supply voltage and over current tolerance.  
 
These settings specify drive electrical condition such as supply voltage and over current tolerance.  
#Leave [[FOC]] value as default if no overcurrent faults occur. See [[Tuning torque controller]] if overcurrent faults occur.
+
#Leave {{param|FOC}} value as default if no overcurrent faults occur. See [[Tuning torque controller]] if overcurrent faults occur.
#Set [[FOV]] following way depending on your [[HV DC bus]] supply voltage. Set FOV value at least 10% higher than nominal HV DC bus voltage. Examples:
+
#Set {{param|FOV}} following way depending on your [[HV DC bus]] supply voltage. Set FOV value at least 10% higher than nominal HV DC bus voltage. Examples:
 
##24 VDC regulated power supply, try value of 32 VDC
 
##24 VDC regulated power supply, try value of 32 VDC
 
##48 VDC regulated power supply, try value of 54 VDC
 
##48 VDC regulated power supply, try value of 54 VDC
#Set [[FUV]] so that drive will not trigger undervoltage fault during varying load of HV DC bus. Example:
+
#Set {{param|FUV}} so that drive will not trigger undervoltage fault during varying load of HV DC bus. Example:
 
##24 VDC regulated power supply, try value of 19 VDC
 
##24 VDC regulated power supply, try value of 19 VDC
 
##48 VDC regulated power supply, try value of 35 VDC
 
##48 VDC regulated power supply, try value of 35 VDC
  
#It is important to goal deviation faults (i.e. [[FFT]], [[FPT]], [[FVT]], [[FEV]]) as low as possible. Set them so that faults don't occur during normal operation but any anomaly or unexpected behavior will trigger them.
+
#It is important to goal deviation faults (i.e. {{param|FFT}}, {{param|FPT}}, {{param|FVT}}, {{param|FEV}}) as low as possible. Set them so that faults don't occur during normal operation but any anomaly or unexpected behavior will trigger them.
 
{{warning|If goal deviation faults are unnecessary high, drive may pose a danger in case of unexpected behavior. For example if motor starts running away full speed without command, then proper velocity fault threshold values may save from damage.}}
 
{{warning|If goal deviation faults are unnecessary high, drive may pose a danger in case of unexpected behavior. For example if motor starts running away full speed without command, then proper velocity fault threshold values may save from damage.}}
 
{{info|Overvoltage limit parameter FOV also determines the voltage level when drive starts driving current to the [[regenerative resistor]]. If you experience constant heating of the resistor, increase FUV value.}}
 
{{info|Overvoltage limit parameter FOV also determines the voltage level when drive starts driving current to the [[regenerative resistor]]. If you experience constant heating of the resistor, increase FUV value.}}
 
====Goal deviation faults====
 
====Goal deviation faults====
 
These faults adjust motor monitoring during operation. Drive will enter into fault state if motor condition deviates more than allowed from the desired condition. See [[Granity unit conversion]] before adjusting.
 
These faults adjust motor monitoring during operation. Drive will enter into fault state if motor condition deviates more than allowed from the desired condition. See [[Granity unit conversion]] before adjusting.
#Goal fault filter time [[FFT]] sets the time how fast [[FPT]], [[FVT]], [[FEV]] and [[FMO]] faults react. Setting higher time value allows drive to continue operation over short deviations thus avoid false triggering. Set this from 0.0 to 0.2 seconds in the beginning.
+
#Goal fault filter time {{param|FFT}} sets the time how fast {{param|FPT}}, {{param|FVT}}, {{param|FEV}} and {{param|FMO}} faults react. Setting higher time value allows drive to continue operation over short deviations thus avoid false triggering. Set this from 0.0 to 0.2 seconds in the beginning.
#Set Position tracking error threshold [[FPT]] according how much mechanical axis is allowed to deviate from the setpoint position in position control mode.  
+
#Set Position tracking error threshold {{param|FPT}} according how much mechanical axis is allowed to deviate from the setpoint position in position control mode.  
#Set Velocity tracking error threshold [[FVT]] according how much motor or axis speed may may deviate from the velocity setpoint. This affects also in position mode as velocity controller is the intermediate step between torque and position controllers.
+
#Set Velocity tracking error threshold {{param|FVT}} according how much motor or axis speed may may deviate from the velocity setpoint. This affects also in position mode as velocity controller is the intermediate step between torque and position controllers.
#Set Over speed fault [[FEV]] according to the maximum speed allowed for the motor or axis. Helps to stop motor if system goes totally out of control and speeds up spuriously.
+
#Set Over speed fault {{param|FEV}} according to the maximum speed allowed for the motor or axis. Helps to stop motor if system goes totally out of control and speeds up spuriously.
#Leave Motion fault threshold [[FMO]] as 0 (0 = disabled) for the beginning. Using nonzero value enables motion fault.
+
#Leave Motion fault threshold {{param|FMO}} as 0 (0 = disabled) for the beginning. Using nonzero value enables motion fault.
#Choose Limit switch function [[LFS]] according to your preference. If other than ''Do nothing'' option requires that limit switches are installed and connected to J5 port. Note: at the moment ''Servo stop'' option is active in the drive [[firmware]] and will do nothing until FW upgrade enables it.
+
#Choose Limit switch function {{param|LFS}} according to your preference. If other than ''Do nothing'' option requires that limit switches are installed and connected to J5 port. Note: at the moment ''Servo stop'' option is active in the drive [[firmware]] and will do nothing until FW upgrade enables it.
 
===Testing tab===
 
===Testing tab===
 
These settings does not affect drive operation, so nothing to be changed here at this point. These controls will be used for servo tuning purposes and fault analysis.
 
These settings does not affect drive operation, so nothing to be changed here at this point. These controls will be used for servo tuning purposes and fault analysis.
Line 69: Line 69:
 
#Enable signal is powered.  
 
#Enable signal is powered.  
 
##If no physical enable signal is wired, you may click Force enable drive from Connect tab to temporarily enable without physical signal. Note that Force enable will release (inactivate) if any of following physical inputs change state: Enable, Limit switches or Home switch.
 
##If no physical enable signal is wired, you may click Force enable drive from Connect tab to temporarily enable without physical signal. Note that Force enable will release (inactivate) if any of following physical inputs change state: Enable, Limit switches or Home switch.
#[[STO]]2 input is powered
+
#{{param|STO}}2 input is powered
#Motor type [[MT]] is configured
+
#Motor type {{param|MT}} is configured
#If Requires software enable [[CEN]] is enabled, then also click Soft enable drive from Connect tab
+
#If Requires software enable {{param|CEN}} is enabled, then also click Soft enable drive from Connect tab
  
 
==Servo motor tuning==
 
==Servo motor tuning==
Line 78: Line 78:
 
The last step of parameterization is to adapt settings to match the motion [[controller]]. Steps:
 
The last step of parameterization is to adapt settings to match the motion [[controller]]. Steps:
  
# Choose [[setpoint]] input [[CRI]] to match your motion [[controller]].
+
# Choose [[setpoint]] input {{param|CRI}} to match your motion [[controller]].
# If external motion [[controller]] with acceleration limit (such as CNC controller) is being used, then it is advised to set [[CAL]] value to maximum of 32767 (unlimited acceleration) after [[Servo motor tuning guide|motor tuning]] to enable motion tracking without delay. Use a limited acceleration value if drive is being used with [[Pulse burst positioning|pulse burst positioning]] or [[SimpleMotion V2]] controller.
+
# If external motion [[controller]] with acceleration limit (such as CNC controller) is being used, then it is advised to set {{param|CAL}} value to maximum of 32767 (unlimited acceleration) after [[Servo motor tuning guide|motor tuning]] to enable motion tracking without delay. Use a limited acceleration value if drive is being used with [[Pulse burst positioning|pulse burst positioning]] or [[SimpleMotion V2]] controller.
# If [[setpoint]] is too sensitive or not sensitive enough (such as limiting speed), then adjust setpoint scaling factory by adjusting [[MUL]] and [[DIV]].
+
# If [[setpoint]] is too sensitive or not sensitive enough (such as limiting speed), then adjust setpoint scaling factory by adjusting {{param|MUL}} and {{param|DIV}}.
#If [[setpoint]] signal is noisy or jittering, try enabling [[CIS]] to smoothen it inside drive. However, leave [[CIS]] disabled if setpoint tracking without any delay is desired.
+
#If [[setpoint]] signal is noisy or jittering, try enabling {{param|CIS}} to smoothen it inside drive. However, leave {{param|CIS}} disabled if setpoint tracking without any delay is desired.
 
#Set-up [[homing]] if required by application
 
#Set-up [[homing]] if required by application
 
{{next|[[Granity user guide]]}}
 
{{next|[[Granity user guide]]}}

Revision as of 19:54, 28 August 2015

This article will describe how to set-up IONI parameters with Granity to make motor operational and ready for servo tuning.

Preparations and connection

As the goal is to parameterize and make motor operational, we should have:

  1. The drive and motor fully wired. However it's not required to have controller or braking resistor connected at this point.
  2. Be familiar with the operation and parameters of Granity. Make sure you have read Granity user guide.
  3. Granity connection working. See IONI & IONICUBE user guide/Making the first Granity connection

Walk-through of initial parametrization

In this chapter we walk-trough all Granity tabs and modify the parameter needed. This guide assumes that the drive is in factory defaults state (not configured before). Restore drive to factory state can be done by uploading a firmware file to the drive.

Connect tab

No other actions than connect to drive needed on this tab. Once connection successful, proceed to the next tab.

Goals tab

The factory defaults (torque control as control mode and serial only as setpoint) as well as the other defaults are the correct ones for beginning.

Machine tab

In this tab we configure the motor and its feedback device.

Axis mechanics

Axis type, units and scale parameters Axis type & unitsAXT and Axis scaleAXS affect only on the unit conversion of Granity parameters (such as acceleration/velocity limit unit conversions) and has no effect on drive operation.

Choose your axis type and scale, or leave them as defaults.

Motor

Find motor parameters from the motor data sheet/manufacturer specifications.

  1. Choose motor type from the drowndown list Motor typeMT. If motor is linear type, see configuring linear servo motor. If setting up a stepping motor instead of servo motor, see Using stepping motor with IONI.
  2. Set motor pole count Pole countMPC (non-brush DC motors only). If unsure, see Determining motor pole count.
  3. Set maximum rated speed Maximum speedMMS of the motor, or alternatively the maximum allowed motor speed in the target application
  4. Set motor continuous Peak current limitMMC and peak Peak current limitMMC current values. If non-brush DC motor type has been selected, then these are measured as the peak value of sine. See Motor peak and continuous current limits for description.
  5. Set thermal time constant Thermal time constantMTC. Motor thermal time constant value in seconds, used for thermal modeling of motor to avoid motor overheating with peak current Peak current limitMMC. If not available, use formula 200*motor_weight (kg) as approximate, so a 2 kg motor would get a 400 second time constant. There is no guarantee of accuracy of this method.
  6. Setting coil resistance Coil resistanceMR and inductance Coil inductanceML values are required for proper drive operation. Do this by using the Granity's measurement function after drive is enabled and operating the first time. If this method fails, perform Tuning torque controller manually after initial parameters are set or find motor inductance & resistance values from your motor data sheet.

Feedback device

  1. Choose feedback device type from the dropdown Feedback deviceFBD
  2. Set feedback device resolution. If Feedback deviceFBD is quadrature encoder, then manufacturers typically give resolution as pulses per revolution (PPR) or lines per revolution (LPR) which are the same thing and shall be entered directly into Feedback device resolutionFBR field. Some manufactures also call PPR as CPR.
  3. Configure the polarity of feedback device counting direction by Invert feedback directionFBI parameter. Motor and feedback device must have same electrical positive rotation direction to make a stable servo system. If your system shows no stability (instant following error after a motor "jump"), try changing this setting.
  4. Leave the Hall sensors Off Hall sensorsFBH during initial setup. Enable later if necessary (see when).

Tuning

Tuning tab contains feedback gain values for velocity and position control modes as well as torque bandwidth limit setting. Configuring these parameters are documented in Servo motor tuning guide. However, before proceeding into tuning, go through all other settings listed in this article.

Fault limits

Fault limits define the conditions in which drive is willing to operate. If condition is out of the set values, drive will enter into a fault state and stop motor control until errors are cleared.

Drive fault limits

These settings specify drive electrical condition such as supply voltage and over current tolerance.

  1. Leave Over current toleranceFOC value as default if no overcurrent faults occur. See Tuning torque controller if overcurrent faults occur.
  2. Set Over voltage fault thresholdFOV following way depending on your HV DC bus supply voltage. Set FOV value at least 10% higher than nominal HV DC bus voltage. Examples:
    1. 24 VDC regulated power supply, try value of 32 VDC
    2. 48 VDC regulated power supply, try value of 54 VDC
  3. Set Under voltage fault thresholdFUV so that drive will not trigger undervoltage fault during varying load of HV DC bus. Example:
    1. 24 VDC regulated power supply, try value of 19 VDC
    2. 48 VDC regulated power supply, try value of 35 VDC
  1. It is important to goal deviation faults (i.e. Goal faults filter timeFFT, Position tracking error thresholdFPT, Velocity tracking error thresholdFVT, Over speed faultFEV) as low as possible. Set them so that faults don't occur during normal operation but any anomaly or unexpected behavior will trigger them.

Goal deviation faults

These faults adjust motor monitoring during operation. Drive will enter into fault state if motor condition deviates more than allowed from the desired condition. See Granity unit conversion before adjusting.

  1. Goal fault filter time Goal faults filter timeFFT sets the time how fast Position tracking error thresholdFPT, Velocity tracking error thresholdFVT, Over speed faultFEV and Motion fault thresholdFMO faults react. Setting higher time value allows drive to continue operation over short deviations thus avoid false triggering. Set this from 0.0 to 0.2 seconds in the beginning.
  2. Set Position tracking error threshold Position tracking error thresholdFPT according how much mechanical axis is allowed to deviate from the setpoint position in position control mode.
  3. Set Velocity tracking error threshold Velocity tracking error thresholdFVT according how much motor or axis speed may may deviate from the velocity setpoint. This affects also in position mode as velocity controller is the intermediate step between torque and position controllers.
  4. Set Over speed fault Over speed faultFEV according to the maximum speed allowed for the motor or axis. Helps to stop motor if system goes totally out of control and speeds up spuriously.
  5. Leave Motion fault threshold Motion fault thresholdFMO as 0 (0 = disabled) for the beginning. Using nonzero value enables motion fault.
  6. Choose Limit switch function Limit switch functionLFS according to your preference. If other than Do nothing option requires that limit switches are installed and connected to J5 port. Note: at the moment Servo stop option is active in the drive firmware and will do nothing until FW upgrade enables it.

Testing tab

These settings does not affect drive operation, so nothing to be changed here at this point. These controls will be used for servo tuning purposes and fault analysis.

Enabling drive

In order to test any configuration you make, you need to set drive in enabled state. This involves that:

  1. Drive is powered on (logic & HV DC bus)
  2. Enable signal is powered.
    1. If no physical enable signal is wired, you may click Force enable drive from Connect tab to temporarily enable without physical signal. Note that Force enable will release (inactivate) if any of following physical inputs change state: Enable, Limit switches or Home switch.
  3. STO2 input is powered
  4. Motor type Motor typeMT is configured
  5. If Requires software enable Require software enableCEN is enabled, then also click Soft enable drive from Connect tab

Servo motor tuning

Tuning a servo motor is a compulsory task to make motor behave as desired and perform well during operation. Follow the Servo motor tuning guide.

Finishing touches

The last step of parameterization is to adapt settings to match the motion controller. Steps:

  1. Choose setpoint input Setpoint inputCRI to match your motion controller.
  2. If external motion controller with acceleration limit (such as CNC controller) is being used, then it is advised to set Acceleration limitCAL value to maximum of 32767 (unlimited acceleration) after motor tuning to enable motion tracking without delay. Use a limited acceleration value if drive is being used with pulse burst positioning or SimpleMotion V2 controller.
  3. If setpoint is too sensitive or not sensitive enough (such as limiting speed), then adjust setpoint scaling factory by adjusting Setpoint multiplierMUL and Setpoint dividerDIV.
  4. If setpoint signal is noisy or jittering, try enabling Setpoint smoothingCIS to smoothen it inside drive. However, leave Setpoint smoothingCIS disabled if setpoint tracking without any delay is desired.
  5. Set-up homing if required by application