Our system is KRC4 8.5.7 HF1 and KR 90 R3100 extra HA.
If axis 2 is in a certain axis range, and axis 1 is moved towards a certain axis range, the servomotors that are mounted on axis2-3 could colliede with an obstacle.
When an operator jogs the robot and is not carefull for the obstacle he could make a collision. If axis 1 comes in a specific axis range I should want to inhibit the jogging of axis 1 in that direction. The direction away from the obstacle should still be possible. The inhibit also should only be necesecary if axis 2 is in a specific axis range. Is there a way to accomplish this on the robot?
Disable only one jog direction
- Plc_User
- Thread is Unresolved
-
-
use workspaces
-
I did the configuration with the axis workspaces (setup ranges for axis 1 and 2) and this stops the robot just before the obstacle.
The operator has then to overrule the workspace monitoring to jog the robot away from the obstacle.
However if the operator mistakes he can jog the robot towards the obstacle and hit it.
If it is not possible to block the direction towards the obstacle when jogging, an alternative would be to reduce the jog velocity (from the program) if the robot is in the prohibited axis workspace. But I did not find a variable to reduce the jog velocity.
I do have safeopertion (v3.4.6), maybe activating reduced velocity monitoring from the safety plc is my last chance? -
$OV_JOG and $OV_PRO are mentioned in manuals. I recommend getting latest system variables manual (currently "KSS_81_82_83_84_System_Variables_en.pdf")
-
btw it is possible to check if and which jog keys are pressed and act accordingly.
-
The only variable I found was $keymove.T1.
But this variable becomes high both for positive and negative jogging of axis 1, I should want to know f.i. if the operator jogs axis 1 in negative direction. -
you could use that and check direction of position change
another way is to use function
IS_KEY_PRESSED(key_number)
where jog keys are numbers 20-31