Home› Programming
Discussion
Back to discussions page
Colin
Partner Posts: 17 Apprentice
Can you utilize ActiveDrive while the UR program is running? |
91 views
|
Answered | |
/ Most recent by Etienne_Samson
in Programming
|
4 comments |

in Programming
Is there a piece of script that we can utilize to lock the UR into a specific plane during a program?
I understand that you can use the manual ActiiveDrive toolbar for teaching, but I would like to utilize that functionality during the program's actual run. For example, I can use the line of script "freedrive_mode()" to turn on freedrive mode during a program; however, that does not allow me to lock the UR into a specific plane. I want to be able to use the Planar setting of ActiveDrive instead (allowing for X and Y motion, but no Z, RX, RY, or RZ).
So my application code would look something like this
__________________________________________________________________________________________________________________________
allow_activedrive_mode := True
Loop while allow_activedrive_mode = True
activedrive_mode(X,Y)
***I would move the robot with my hands to the position I want, and I have 10 seconds to do this as you can see in the event below***
pose := get_actual_tcp_pose()
***This would write my position after the 10 seconds to the pose***
Event allow_activedrive_mode = True
Wait 10 sec
allow_activedrive_mode := False
__________________________________________________________________________________________________________________________
I can currently do this right now by replacing the above "activedrive_mode()" with "freedrive_mode()", but as I said, this does not prohibit motion in the proper planes.
Please send me your ideas, and I will certainly share whatever we find as well.
I understand that you can use the manual ActiiveDrive toolbar for teaching, but I would like to utilize that functionality during the program's actual run. For example, I can use the line of script "freedrive_mode()" to turn on freedrive mode during a program; however, that does not allow me to lock the UR into a specific plane. I want to be able to use the Planar setting of ActiveDrive instead (allowing for X and Y motion, but no Z, RX, RY, or RZ).
So my application code would look something like this
__________________________________________________________________________________________________________________________
allow_activedrive_mode := True
Loop while allow_activedrive_mode = True
activedrive_mode(X,Y)
***I would move the robot with my hands to the position I want, and I have 10 seconds to do this as you can see in the event below***
pose := get_actual_tcp_pose()
***This would write my position after the 10 seconds to the pose***
Event allow_activedrive_mode = True
Wait 10 sec
allow_activedrive_mode := False
__________________________________________________________________________________________________________________________
I can currently do this right now by replacing the above "activedrive_mode()" with "freedrive_mode()", but as I said, this does not prohibit motion in the proper planes.
Please send me your ideas, and I will certainly share whatever we find as well.
Best Answer
-
matthewd92 Founding Pro, Tactile Sensor Beta Testers Posts: 1,267 Handy
My understanding is that it's not using free drive. The program is actively driving the robot which is why you have to grab below the FT sensor to use it. Based on the forces the FT sensor is seeing they are moving the robot in the direction/orientation the operator is trying to move in.
You could implement similar functionality by list by writing a script which could be called and then utilizing the FT sensor only move the robot in the plane of interest to counteract the forces the operator is placing on the robot.
[email protected]
[email protected]