For Optima-series motion controllers and older, it is well documentated that the deceleration value (DC) of an axis cannot be changed while the axis is actively profiling. Many machine designs require a low DC value for smoothest possible motion. At the ends of the allowable travel, the mechanical layout may mean that the limit switches are physically close to the hard stop. Therefore, if the axis drives up against the limit, the controller may not have enough physical space to decelerate to a stop before coming into contact with the hard stop.
To account for this, the Galil motion controllers allow the user to change the DC value within the LIMSWI routine. Here, you can set the DC value very high, in order to stop well before coming into contact with the hard stop. The following figure shows a profile with the DC value left low. The time to stop is quite long, and the distance traveled is too far into the hard stop.
The following screen shot show the result of changing the DC value when running the #LIMSWI routine. The time to stop has been dramatically reduced.
Here is a sample DMC program that performs this change.
#LIMSPD
NOTE EXAMPLE OF CHANGING DECEL IF A LIMIT OCCURS
ACX=1024
DCX=1024
SPX=4096
PRX=100000
BGX
#LOOP
JP#LOOP
#LIMSWI
DCX=1024000
STX
AMX
MG"LIMIT"
EN