User Tools

Site Tools


mycnc:mycnc_pulse_width_setup

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
mycnc:mycnc_pulse_width_setup [2019/04/17 13:31]
ivan
mycnc:mycnc_pulse_width_setup [2019/04/24 13:58] (current)
ivan
Line 9: Line 9:
  
 ====Selecting the Appropriate Pulse Width for your motor==== ====Selecting the Appropriate Pulse Width for your motor====
-A common procedure required for proper motor operation is selecting the appropriate pulse width for the signal going from the controller to the step/servo motor on the CNC machine. The pulse impulses sent from the controller to the motor have a certain width (as seen below), that cannot be too large due to the signal overlap that would occur otherwise because of each individual signal interfering with the next one. However, as seen in the following instructions from Panasonic'​s MINAS A5-series AC Servo Motor & Driver, the pulses also have to have a minimum width for the machine to register the signal, for example, 0.25 μs for t1 of the 4 Mpps input and 2.5 μs for t1 of the 500 kpps input: 
  
-{{:mycnc:pulse-width:​panasonic3-2.png}} +A common procedure required for proper motor operation is selecting the appropriate ​pulse width for the signal going from the controller to the step/servo motor on the CNC machineA minimum ​pulse width is usually noted by the motor manufacturer so as to ensure that the motor can register the signals going to it from the controller (if the pulse width is lower, then the motor cannot "​see"​ the impulse being sent from the controller to the machine).
-{{:mycnc:pulse-width:​panasonic3-36.png}}+
  
-As another example, ​the Yaskawa'​s ​E-7-Series ​AC Servo Drive also imposes a similar constraint on the minimum ​widths:+As seen in the following instructions from Panasonic'​s ​MINAS A5-series ​AC Servo Motor & Driver, ​the pulses have to have a minimum ​width for the machine to register the signal, ranging from 0.25 to 0.5 μs for the pulse width of the 4 Mpps input and from 5 to 10 μs for the 500 kpps input (obtained as being double of t1 in the charts):
  
-{{:​mycnc:​pulse-width:​yaskawa1.png}}+{{:​mycnc:​pulse-width:​panasonic-2-1-v2.png|}}
  
-As such, the pulses have to have both a minimum width, ​such that the motor (or the particular setting ​of that motor, as with the Panasonic MINAS A5-series) is able to register pulses that are sent to itand a maximum width, such that the pulses do not overlap.+As another example, the Yaskawa'​s E-7-Series AC Servo Drive also imposes ​similar constraint on the minimum ​widths. The τ in the graph corresponds to the width of the impulse itselfwhile the T corresponds to the entire period ​of the signal. The manual advises a minimum τ-T of 0.125 μs to 0.5 μsdepending on the pulse train setup:
  
-**In order to select such an appropriate ​pulse width:**+{{:mycnc:pulse-width:yaksawa-2-2.png}}
  
-  *Choose the speed at which your machine will move in **[meters / minute]**+A step motor also requires a minimum pulse width, ​which is considerably higher than that of a servo motor (around ten to twenty times higher higher when comparing the specs for the Leadshine step motor below to the Yaskawa servo drive): 
 +{{:​mycnc:​pulse-width:​step-2-1.png}}
  
-  *Convert ​the **[meters / minute]** speed with which the machine moves to the number of **[revolutions / second]** of the screw/​belt/​etc based on the **[meters / revolution]** value of the screw/belt on your machine +As such, the pulse impulses sent from the controller ​to the motor have to have a certain minimum width for the motor to be able to register those signals. However, that signal width also cannot be too large due to the signal overlap that would otherwise occur due to each individual signal interfering with the next one. This is done by ensuring ​the controller sends impulse signals at a rate that is lower than the period of the impulse at its maximum frequencyresulting in impulse signals that do not interfere with one another while the width of the signal ​is wide enough for the motor to register the impulse.
-     *For example, if the desired **[meters / minute]** speed is equal to 5 meters/​minuteand the **[meters / revolution]** value of the screw/​belt ​is 5 millimeters/​revolution, ​the **[revolutions / second]** value will be 16 revolutions/​second+
  
-  *Locate ​the minimum ​**[seconds / step]** value of your step/​servo ​motor (the minimum time it takes the motor to process each individual impulse)+These constraints on the minimum ​and the maximum pulse width create a permissible range of pulse widths for each motor depending on its hardware specifications and the particular speeds ​it is required to be operated at. Such an optimal pulse width for the controller based on these particular specifications can be calculated.
  
 +====Pulse Width Calculations====
 +
 +  *Choose the speed at which your machine will be moving in **[meters / minute]**
 +
 +  *Convert the **[meters / minute]** speed with which the machine will move to the number of **[revolutions / second]** of the screw/​belt/​etc based on the **[meters / revolution]** value of the screw/belt on your machine (this screw/belt value is specific to each hardware setup)
 +     ​*//​For example, if the desired **[meters / minute]** speed of the machine is equal to 5 meters/​minute,​ and the **[meters / revolution]** value of the screw/belt is 5 millimeters/​revolution,​ the **[revolutions / second]** value will be calculated as follows:// ​
 +<​code>​
 +5 meters/​minute ÷ 60 seconds/​minute · 1000 millimeters/​meter ≈ 80 millimeters/​second ​
 +80 millimeters/​second ÷ 5 millimeters/​revolution = 16 revolutions/​second
 +The value for the [revolutions / second] will be equal to 16 revolutions/​second
 +</​code>​
 +
 +  *Locate the minimum **[seconds / step]** value of your step/servo motor (the minimum time it takes the motor to process each individual impulse). This minimum time should be provided in the motor manual. ​
 +     ​*//​For example, this time T can be equal to 8 · 10^-6 seconds or 8 μs//
  
   *Using the **[revolutions / second]** value and the minimum allowed **[seconds / step]** value of the motor, calculate how many **[steps / revolution]** the stepper driver will have to make.    *Using the **[revolutions / second]** value and the minimum allowed **[seconds / step]** value of the motor, calculate how many **[steps / revolution]** the stepper driver will have to make. 
-     *For example, if the minimum allowable ​pulse width on the motor is 8 μs/step, and the machine will produce 16 revolutions/​second,​ then the maximum value for the **[steps / revolution]** will be around 7800.+     *//For example, if the minimum allowable ​value for the motor is 8 μs/​step ​(8 · 10^-6 seconds/​step), and the machine will produce 16 revolutions/​second,​ then the maximum value for the **[steps / revolution]** will be calculated as follows://​ 
 +<​code>​ 
 +1 ÷ (16 revolutions/​second · 8 · 10^-6 seconds/​step) = 7812.5 steps/​revolution 
 +The value for the number of [steps / revolution] will be equal to 7812.5 steps/​revolution 
 +</​code>​
  
   *As discussed earlier, the value selected on the stepper motor must be equal or smaller than the number of **[steps / revolution]** obtained from the previous step for the motor to register the signal and function properly.   *As discussed earlier, the value selected on the stepper motor must be equal or smaller than the number of **[steps / revolution]** obtained from the previous step for the motor to register the signal and function properly.
-      *For example, if the **[steps / revolution]** value has been calculated to be 7800 steps/​revolution,​ then if the stepper driver allows for 3200, 6400, and 12800 steps/​revolution,​ 6400 steps/​revolution will be selected.+      *//For example, if the **[steps / revolution]** value has been calculated to be 7812.5 ​steps/​revolution,​ then if the stepper driver allows for 3200, 6400, and 12800 steps/​revolution,​ 6400 steps/​revolution will be selected ​as it is the closest value that's equal to or lower than 7812.5 steps/​revolution//​
  
   *Using the **[revolutions / second]** value and the updated stepper driver **[steps / revolution]** value, calculate the actual **[seconds / step]** value of the motor. This actual **[seconds / step]** value will always be equal or higher than the minimum allowable **[seconds / step]** value of the motor due to selecting a lower **[steps / revolution]** value in the previous steps.   *Using the **[revolutions / second]** value and the updated stepper driver **[steps / revolution]** value, calculate the actual **[seconds / step]** value of the motor. This actual **[seconds / step]** value will always be equal or higher than the minimum allowable **[seconds / step]** value of the motor due to selecting a lower **[steps / revolution]** value in the previous steps.
-      ​*For example, if the **[revolutions / second]** value was equal to 16 revolutions/​second and the stepper driver **[steps / revolution]** value was equal to 6400 steps/​revolution,​ the actual **[seconds / step]** value of the motor will be equal to 9.μs/step.+     *//For example, if the **[revolutions / second]** value was equal to 16 revolutions/​second and the stepper driver **[steps / revolution]** value was equal to 6400 steps/​revolution,​ the actual **[seconds / step]** value of the motor will be calculated as follows://​ 
 +<​code>​ 
 +1 ÷ (16 revolutions/​second · 6400 steps/​revolution) = 9.76 · 10^-6 seconds/​step = 9.76 μs/step 
 +The value for the [seconds / step] will be equal to 9.76 μs/​step. ​ 
 +</​code>​
  
-   *The value for the **Pulse Width** in myCNC software must be equal or higher than the actual **[seconds / step]** value of the motor. +   *The value for the **Pulse Width** in myCNC software must be set to be equal or to the next closest value that is higher than the actual **[seconds / step]** value of the motor. 
-      *For example, if the **[seconds / step]** value was equal to 9.μs/step, and an ET6 or an ET7 board was used, 12 μs would be selected from the chart in the **Common Hardware Settings** tab as it is the closest value that's higher than 9.μs.+      *//For example, if the **[seconds / step]** value was equal to 9.76 μs/step, and an ET6 or an ET7 board was used, 12 μs would be selected from the chart in the **Common Hardware Settings** tab as it is the closest value that's higher than 9.76 μs//
 {{:​mycnc:​pulse-width:​pulse-width-chart2.png}} {{:​mycnc:​pulse-width:​pulse-width-chart2.png}}
-      *The 12 μs corresponds to Setting 7 in the chart, thus the **Pulse width** value should be set to 7.  +      *The 12 μs corresponds to Setting 7 in the chart, thus the **Pulse width** value should be set to 7 in myCNC software.  
-         ​*NOTE:​ The first value in the **Pulse Width** line refers to the first four axes of the controller (for example, the horizontal X and Y axes), while the second value refers to the other two axes of the controller (for example, the vertical Z axis). These values are set to be different if the controller used on the vertical axis is separate from that used on the horizontal, and are left the same if only one controller is used.+         *//NOTE: The first value in the **Pulse Width** line refers to the first four axes of the controller (for example, the horizontal X and Y axes), while the second value refers to the other two axes of the controller (for example, the vertical Z axis). These values are set to be different if the controller used on the vertical axis is separate from that used on the horizontal, and are left the same if a single ​controller is used. If two controllers are desired, the calculations for these values need to be performed separately based on the desired speed for each axis//
 {{:​mycnc:​pulse-width:​pulse-width-chart3.png}} {{:​mycnc:​pulse-width:​pulse-width-chart3.png}}
  
-    *The pulse width setup is now complete. ​+    *The pulse width setup is now complete.
mycnc/mycnc_pulse_width_setup.1555522287.txt.gz · Last modified: 2019/04/17 13:31 by ivan