Difference between revisions of "Limit Switch feature"

From SoftMC-Wiki
Jump to: navigation, search
(edit)
 
(2 intermediate revisions by one other user not shown)
Line 1: Line 1:
==Introduction==
 
When using the MC with drives that has limit switches, the following behavior is expected:
 
When the limit switch is pressed: <br>
 
# While the axis is moving, the axis will stop and an error will appear: <br>  '''''Error:''' 3336, "At axis A1. Trying to move towards the limit switch. This movement is not allowed", Task: ,tEthernInp, Line: none, Module: Motion'' <br>
 
# While the axis is stationary an error will appear: <br>  '''''Error:''' 3335, "At axis A1. Limit Switch is Enabled.", Task: ,tEthernInp, Line: none, Module: Motion''
 
  
 +
== Introduction ==
  
'''In The Background: ''' <br>
+
When using the MC with drives that has limit switches, the following behavior is expected: When the limit switch is pressed:
The axis enters [[MC-Basic:axis.FOLLOWINGMODE|following mode]] if bit3 jumped from 1 to 0 and the PE is larger than the value of '''BIG_THRESHOLD'''. The reason for this threshold is to avoid rapid enters and exits of following mode. <br>
 
The axis exits following mode in the case that the drive is enabled and the PE is smaller than the value of [[MC-Basic:axis.LIMITSWITCHTHRESHOLD|LimitSwitchThreshold]].
 
  
 +
#While the axis is moving, the axis will stop and an error will appear:<br/> '''''Error:''' 3336, "At axis A1. Trying to move towards the limit switch. This movement is not allowed", Task: ,tEthernInp, Line: none, Module: Motion''
 +
#While the axis is stationary an error will appear:<br/> '''''Error:''' 3335, "At axis A1. Limit Switch is Enabled.", Task: ,tEthernInp, Line: none, Module: Motion''
  
In case that the axis was '''stationary''' during limit switch scenario: <br>  
+
'''In The Background: '''<br/> The axis enters [[MC-Basic:axis.FOLLOWINGMODE|following mode]] if bit3 jumped from 1 to 0.<br/> The axis exits following mode in the case that the drive is enabled and the PE (in counts units) is smaller than the value of [[MC-Basic:axis.LIMITSWITCHTHRESHOLD|LimitSwitchThreshold]].
# Trying to issue a move in the direction of the pressed limit switch will throw no error since the MC has no information about the direction of the limit switch. Yet, the movement still will not be executed.
 
  
 +
In case that the axis was '''stationary''' during limit switch scenario:
  
 +
#Trying to issue a move in the direction of the pressed limit switch will throw no error since the MC has no information about the direction of the limit switch. Yet, the movement still will not be executed.
  
'''After that, for both cases:''' <br>
+
&nbsp;
# Trying to issue a move in the direction of the pressed limit switch will throw the error: <br> '''''Error:''' 3336, "At axis A1. Trying to move towards the limit switch. This movement is not allowed", Task: ,tEthernInp, Line: none, Module: Motion''
 
# Issuing a movement in the opposite direction of the pressed limit switch will be executed (at any stage).
 
  
 +
'''After that, for both cases:'''
  
 +
#Trying to issue a move in the direction of the pressed limit switch will throw the error:<br/> '''''Error:''' 3336, "At axis A1. Trying to move towards the limit switch. This movement is not allowed", Task: ,tEthernInp, Line: none, Module: Motion''
 +
#Issuing a movement in the opposite direction of the pressed limit switch will be executed (at any stage).
 +
 +
&nbsp;
  
 
{{Note| This feature is disabled during homing cycle}}
 
{{Note| This feature is disabled during homing cycle}}
  
{{Note| The LimitSwitchThreshold property default value is set to 0.05 - [[MC-Basic:axis.LIMITSWITCHTHRESHOLD|More Information]]. The BIG_THRESHOLD is set to '''20*LimitSwitchThreshold'''}}
+
{{Note| The LimitSwitchThreshold property default value is set to 100 - [[MC-Basic:axis.LIMITSWITCHTHRESHOLD|More Information]]. }}
  
 +
== Configuration ==
  
==Configuration==
 
 
The Limit Switches digital inputs for each axis should be defined in '''ServoStudio'''. There are 2 options for defining the limit switches:
 
The Limit Switches digital inputs for each axis should be defined in '''ServoStudio'''. There are 2 options for defining the limit switches:
  
 +
&nbsp;
  
# '''Drive Configuration <big><big>→</big></big> Limits <big><big>→</big></big> Hardware Position Limits''' <br> Choose the corresponding digital input to each limit switch: <br> [[Image: LSF_1.png |400px]] <br> <br>
+
#'''Drive Configuration <big><big>→</big></big> Limits <big><big>→</big></big> Hardware Position Limits'''<br/> Choose the corresponding digital input to each limit switch:<br/> [[File:LSF 1.png|400px|LSF 1.png]]<br/> &nbsp;
# '''Drive Configuration <big><big>→</big></big> Digital I/Os <big><big>→</big></big> Digital Inputs''' <br> Choose the negative and positive limit switch (6 and 5) from the list to the corresponding digital inputs: <br> [[Image: LSF_2.png |450px]]
+
#'''Drive Configuration <big><big>→</big></big> Digital I/Os <big><big>→</big></big> Digital Inputs'''<br/> Choose the negative and positive limit switch (6 and 5) from the list to the corresponding digital inputs:<br/> [[File:LSF 2.png|450px|LSF 2.png]]

Latest revision as of 14:04, 21 July 2019

Introduction

When using the MC with drives that has limit switches, the following behavior is expected: When the limit switch is pressed:

  1. While the axis is moving, the axis will stop and an error will appear:
    Error: 3336, "At axis A1. Trying to move towards the limit switch. This movement is not allowed", Task: ,tEthernInp, Line: none, Module: Motion
  2. While the axis is stationary an error will appear:
    Error: 3335, "At axis A1. Limit Switch is Enabled.", Task: ,tEthernInp, Line: none, Module: Motion

In The Background:
The axis enters following mode if bit3 jumped from 1 to 0.
The axis exits following mode in the case that the drive is enabled and the PE (in counts units) is smaller than the value of LimitSwitchThreshold.

In case that the axis was stationary during limit switch scenario:

  1. Trying to issue a move in the direction of the pressed limit switch will throw no error since the MC has no information about the direction of the limit switch. Yet, the movement still will not be executed.

 

After that, for both cases:

  1. Trying to issue a move in the direction of the pressed limit switch will throw the error:
    Error: 3336, "At axis A1. Trying to move towards the limit switch. This movement is not allowed", Task: ,tEthernInp, Line: none, Module: Motion
  2. Issuing a movement in the opposite direction of the pressed limit switch will be executed (at any stage).

 

NOTE-Info.svgNOTE
This feature is disabled during homing cycle
NOTE-Info.svgNOTE
The LimitSwitchThreshold property default value is set to 100 - More Information.

Configuration

The Limit Switches digital inputs for each axis should be defined in ServoStudio. There are 2 options for defining the limit switches:

 

  1. Drive Configuration Limits Hardware Position Limits
    Choose the corresponding digital input to each limit switch:
    LSF 1.png
     
  2. Drive Configuration Digital I/Os Digital Inputs
    Choose the negative and positive limit switch (6 and 5) from the list to the corresponding digital inputs:
    LSF 2.png