In some movement profiles, e.g. during a cam automat movement or during another type of movement it could be, that the ACOPOS error 5003 or 5004: “Positive/Negative SW limit reached” gets reported in connection with a movement stop and first this error might is not explainable in some cases.
But this error in general just tells, that the available braking distance under consideration of the maximum deceleration (AXLIM_A2_POS / AXLIM_A2_NEG) and the current velocity is too less in order to stop within the software position end limits (AXLIM_POS_SW_END / AXLIM_NEG_SW_END).
The check of software end positions is active during all cam automat movements, independent of within a cam or compensation gear. The braking distance to a software end position is a parabola depending of velocity and deceleration.
Approximately, s = v²/(2*a)
In a given support case there was the following situation:
- v ~ -37499,23 units/s (see trace)
- a= 50000 units/s²
- negative software end limit (AXLIM_NEG_SW_END) = -9527 units
Considering the formula of the braking parabola this results in a braking distance of delta_s-brake ~ 14062 units.
This means that the axis must start its deceleration phase latest 14062 units before the configured software limit of -9527 units. This results in an axis position of approximately 4535 units when considering a negative movement.
Checking the attached ParID trace from that case shows, that this can be confirmed. A slightly different position value is seen at the beginning of the deceleration ramp but this can be explained due to rounding effects in the calcuation, etc…
The green curve shows the position value, while the purple curve shows the velocity. The cursor is placed at the starting point of the braking parabola which gets triggered during the movement in order to not violate the negative software end limit.
