Difference between revisions of "Using stepping motor with IONI"

From Granite Devices Knowledge Wiki
Jump to: navigation, search
[checked revision][checked revision]
(Undo revision 4413 by Tero K (talk))
m (Text replacement - "\[\[([A-Z]{2,3})\]\]" to "{{param|$1}}")
Line 12: Line 12:
 
==Setting up open loop mode 1==
 
==Setting up open loop mode 1==
 
In this mode, drive emulates encoder internally and some tuning parameters need to be set to allow operation:
 
In this mode, drive emulates encoder internally and some tuning parameters need to be set to allow operation:
;[[MT]] Motor type
+
;{{param|MT}} Motor type
 
:Stepping motor
 
:Stepping motor
;[[FBD]] Feedback device
+
;{{param|FBD}} Feedback device
 
:None
 
:None
;[[FBI]] Invert feedback direction
+
;{{param|FBI}} Invert feedback direction
 
:Unticked
 
:Unticked
;[[FBR]] Feedback device resolution
+
;{{param|FBR}} Feedback device resolution
 
:6400 (this is the emulated encoder resolution, 6400 PPR = 25600 steps/rev)
 
:6400 (this is the emulated encoder resolution, 6400 PPR = 25600 steps/rev)
;[[MCC]] Motor continuous current
+
;{{param|MCC}} Motor continuous current
 
:This is the resting current when motor stands still. Drive will switch to this after 0.5 seconds of standing still.
 
:This is the resting current when motor stands still. Drive will switch to this after 0.5 seconds of standing still.
;[[MMC]] Motor peak current limit
+
;{{param|MMC}} Motor peak current limit
 
:This is the motor rated current that is used when motor is rotating.
 
:This is the motor rated current that is used when motor is rotating.
;[[MR]] Motor coil resistance
+
;{{param|MR}} Motor coil resistance
 
:See motor datasheet or if not known, start with low values such as 1 ohm
 
:See motor datasheet or if not known, start with low values such as 1 ohm
;[[ML]] Motor coil inductance
+
;{{param|ML}} Motor coil inductance
 
:See motor datasheet or if not known, start with low values such as 1 mH
 
:See motor datasheet or if not known, start with low values such as 1 mH
;[[CM]] Control mode
+
;{{param|CM}} Control mode
 
:Set to Position control (typical) or Velocity control mode
 
:Set to Position control (typical) or Velocity control mode
;[[KVP]] Velocity P gain
+
;{{param|KVP}} Velocity P gain
 
:0
 
:0
;[[KVI]] Velocity I gain
+
;{{param|KVI}} Velocity I gain
 
:900
 
:900
;[[AFF]] and [[VFF]]
+
;{{param|AFF}} and {{param|VFF}}
 
:0
 
:0
;[[KPP]] Position P gain
+
;{{param|KPP}} Position P gain
 
:150
 
:150
;[[PFF]] Position feed-forward gain
+
;{{param|PFF}} Position feed-forward gain
 
:100%
 
:100%
;[[FEV]] Over speed fault
+
;{{param|FEV}} Over speed fault
 
:1000
 
:1000
;[[FPT]] and [[FVT]] fault limits
+
;{{param|FPT}} and {{param|FVT}} fault limits
 
:1000
 
:1000
  
Other settings are not critical and can be configured as desired (such as acceleration and velocity limits). If setpoint scaling is 1:1 ([[MUL]]=[[DIV]]), then this mode yields resolution of 25600 steps/revolution. If reduction of resolution is required, then adjust scaling accordingly (if scaling is set above 4:1, then try also Setpoint smoothing [[CIS]]).
+
Other settings are not critical and can be configured as desired (such as acceleration and velocity limits). If setpoint scaling is 1:1 ({{param|MUL}}={{param|DIV}}), then this mode yields resolution of 25600 steps/revolution. If reduction of resolution is required, then adjust scaling accordingly (if scaling is set above 4:1, then try also Setpoint smoothing {{param|CIS}}).
 
{{tip|Use Granity's ''Measure resistance & inductance'' button to automatically set MR and ML}}
 
{{tip|Use Granity's ''Measure resistance & inductance'' button to automatically set MR and ML}}
  
Line 55: Line 55:
 
==Seting up closed loop mode 2==
 
==Seting up closed loop mode 2==
 
In this mode, follow parameterization of closed loop mode except:
 
In this mode, follow parameterization of closed loop mode except:
;[[FBD]] Feedback device
+
;{{param|FBD}} Feedback device
 
:Choose your feedback device (other than None)
 
:Choose your feedback device (other than None)
;[[FBI]] Invert feedback direction
+
;{{param|FBI}} Invert feedback direction
 
:Try both settings and choose the one with stability
 
:Try both settings and choose the one with stability
;[[FBR]] Feedback device resolution
+
;{{param|FBR}} Feedback device resolution
 
:Set your feedback device resolution
 
:Set your feedback device resolution
;[[KVI]] and [[KPP]]
+
;{{param|KVI}} and {{param|KPP}}
 
:Tune KVI and KPP values (and possibly other gains if non-zero) to have nice response
 
:Tune KVI and KPP values (and possibly other gains if non-zero) to have nice response
;[[FMO]] Motion fault limit
+
;{{param|FMO}} Motion fault limit
 
:Set non-zero value (perhaps 100-1000) to cause a fault state when motor stalls
 
:Set non-zero value (perhaps 100-1000) to cause a fault state when motor stalls
  
 
==Setting up servo mode 3==
 
==Setting up servo mode 3==
 
To set-up stepper as servo motor, just follow the [[IONI & IONICUBE user guide]] and consider the stepper motor as servo motor. For a typical 1.8 degree/step two-phase stepping motor the correct motor type parameters are:
 
To set-up stepper as servo motor, just follow the [[IONI & IONICUBE user guide]] and consider the stepper motor as servo motor. For a typical 1.8 degree/step two-phase stepping motor the correct motor type parameters are:
;[[MT]] Motor type
+
;{{param|MT}} Motor type
 
:2 Phase AC or BLDC
 
:2 Phase AC or BLDC
;[[MPC]] Pole count
+
;{{param|MPC}} Pole count
 
:100
 
:100
  
 
[[Category:IONI_user_guide]]
 
[[Category:IONI_user_guide]]
 
[[Category:Setup_guides]]
 
[[Category:Setup_guides]]

Revision as of 11:57, 28 August 2015

Using stepping motor with IONI drive is possible in three ways:

Mode1 - Open loop (no encoder)
This is the traditional stepping motor drive method. Will achieve highest speed and is easily configurable but there is no feedback, so if motor stalls/loses synchronism, the absolute position will be unknown before referencing/homing.
Mode 2 - Closed loop (with encoder feedback)
This is open loop mode combined with encoder feedback. The advantages are that drive can detect loss of synchronism and restore to commanded position with clear faults command. May be used also with linear encoder to enhance system accuracy.
Mode 3 - Servo (with encoder feedback)
In this mode, a stepping motor is used as high pole count brushless servo motor. In this mode, motor efficiency is high (no current if no load) and motor do not lose synchronism. However, motor speed is limited by back EMF of motor and typically can achieve lower top speed than the other modes. In this mode stepper can be also safely driven over it's rated current to get higher peak torque than it's rated torque (like a servo motor).

In the modes 1 and 2 stepper is driven with constant current drive and the motion produced by adjusting phase angle (traditional stepper drive method). In the mode 1 phase angle is controlled directly by setpoint trajectory and in mode 2 it is controlled by encoder based feedback loop. In the mode 3 motor current is controlled by torque controller (from zero to peak current limit) while phase angle is synchronized to rotor angle by the help of encoder. Mode 3 is similar to servo motor control (more details).

Setting up open loop mode 1

In this mode, drive emulates encoder internally and some tuning parameters need to be set to allow operation:

Motor typeMT Motor type
Stepping motor
Feedback deviceFBD Feedback device
None
Invert feedback directionFBI Invert feedback direction
Unticked
Feedback device resolutionFBR Feedback device resolution
6400 (this is the emulated encoder resolution, 6400 PPR = 25600 steps/rev)
Continuous current limitMCC Motor continuous current
This is the resting current when motor stands still. Drive will switch to this after 0.5 seconds of standing still.
Peak current limitMMC Motor peak current limit
This is the motor rated current that is used when motor is rotating.
Coil resistanceMR Motor coil resistance
See motor datasheet or if not known, start with low values such as 1 ohm
Coil inductanceML Motor coil inductance
See motor datasheet or if not known, start with low values such as 1 mH
Control modeCM Control mode
Set to Position control (typical) or Velocity control mode
Velocity P gainKVP Velocity P gain
0
Velocity I gainKVI Velocity I gain
900
Acceleration feed-forward gainAFF and Velocity feed-forward gainVFF
0
Position P gainKPP Position P gain
150
Position feed-forward gainPFF Position feed-forward gain
100%
Over speed faultFEV Over speed fault
1000
Position tracking error thresholdFPT and Velocity tracking error thresholdFVT fault limits
1000

Other settings are not critical and can be configured as desired (such as acceleration and velocity limits). If setpoint scaling is 1:1 (Setpoint multiplierMUL=Setpoint dividerDIV), then this mode yields resolution of 25600 steps/revolution. If reduction of resolution is required, then adjust scaling accordingly (if scaling is set above 4:1, then try also Setpoint smoothing Setpoint smoothingCIS).


NOTE: these values and settings apply from firmware version 1.2.1 (1064). For older firmware version, check out earlier version of this page here.

Seting up closed loop mode 2

In this mode, follow parameterization of closed loop mode except:

Feedback deviceFBD Feedback device
Choose your feedback device (other than None)
Invert feedback directionFBI Invert feedback direction
Try both settings and choose the one with stability
Feedback device resolutionFBR Feedback device resolution
Set your feedback device resolution
Velocity I gainKVI and Position P gainKPP
Tune KVI and KPP values (and possibly other gains if non-zero) to have nice response
Motion fault thresholdFMO Motion fault limit
Set non-zero value (perhaps 100-1000) to cause a fault state when motor stalls

Setting up servo mode 3

To set-up stepper as servo motor, just follow the IONI & IONICUBE user guide and consider the stepper motor as servo motor. For a typical 1.8 degree/step two-phase stepping motor the correct motor type parameters are:

Motor typeMT Motor type
2 Phase AC or BLDC
Pole countMPC Pole count
100