User Tools

Site Tools


mycnc:rotary_encoder_connection_and_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:rotary_encoder_connection_and_setup [2019/08/01 15:17]
ivan
mycnc:rotary_encoder_connection_and_setup [2019/11/07 11:41] (current)
ivan
Line 1: Line 1:
-===== Rotary encoder connection and setup =====+====== Rotary encoder connection and setup ======
  
 There are 2 types of rotary encoders widely used in pendants and operator panels: ​ There are 2 types of rotary encoders widely used in pendants and operator panels: ​
Line 120: Line 120:
 {{youtube>​V9wLOCGS6YM?​800x480}} {{youtube>​V9wLOCGS6YM?​800x480}}
  
 +\\
 +=====Closed-loop setup=====
 +
 +//Read more about the topic in the [[mycnc:​closed_loop_configuration|MyCNC closed loop configuration manual]].//
 +
 +The following window is available upon navigating to Settings > Config > Hardware > Encoders:
 +
 +{{:​mycnc:​encoders-001-hardware-config.png}}
 +
 +The following settings are available: ​
 +  * Encoder resolution for each particular encoder number. ​
 +  * The current encoder value is displayed on this screen. This is the fastest way to check if the encoder is connected/​working - for example, turning an MPG wheel handle should immediately change the current encoder value in this field for the selected encoder. ​
 +  * Z-position
 +  * Mul coefficients (multiplication value), and
 +  * /(2^Div). These Mul and Div coefficients are used due to the fact that the controller cannot handle floating number data in calculations,​ therefore it is necessary to first multiply and then divide a number by certain coefficients. They are used to bring the value of the encoder in line with the pulses/unit value specified in the Axes/Motors tab. Larger numbers allow to reduce the error. For example, if the ratio between the Axes/Motors value and the encoder pulse/unit value is 3.5, then the multiplication value (Mul) can be set to 7, while Div can be set to 1 (//2^1 =2, 7/2 = 3.5//​).  ​
 +  * Encoder position
 +  * Position
 +  * Linear encoder dimension. This should be set to the proper encoder dimension to convert the impulses from a linear encoder to mm (the most common values for this setting are 1 and 5 micrometers,​ as shown in the screenshot).
 +
 +The following global variables deal with encoder values:
 +
 +| 9000  | (+16) Registers represent Encoder values. Writing to this registers does not affect anything. Selected channel Current Encoder value will be returned when reading these registers. \\ Reading these registers from the controller Hardware PLC will return actual Encoder value. \\ Encoder values in the software are updated about every 128ms. This delay should be counted when using Encoder values from the Software PLC. \\ 9000 - Encoder #0 value \\ 9001 - Encoder #1 value \\ 9002 - Encoder #2 value \\ 9003 - Encoder #3 value \\ 9004 - Encoder #4 value \\ 9005 - Encoder #5 value \\ 9006 - Encoder #6 value \\ 9007 - Encoder #7 value |
 +| 9200 | +16. Reserved to display the encoder position on an infinite scale (no value turnover on every full encoder turn, instead the value will keep climbing indefinitely into the positives/​negatives depending on where the encoder handle is spun) |
 +| 9216 | +16. Reserved to display the encoder position on an infinite scale WITH the current encoder dimension (to indicate the current encoder position) |
 +
 +These global variables allow to display encoder values on the main screen of myCNC profiles that are geared towards encoder setups (such as 1366M4E and 1366PE):
 +
 +{{:​mycnc:​encoders-003-m4e.png}}
  
mycnc/rotary_encoder_connection_and_setup.1564687053.txt.gz ยท Last modified: 2019/08/01 15:17 by ivan