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 := TrueLoop 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.
@Colin unfortunately not, the ActiveDrive is basically a program running in the background (activate it, you will see you start/pause/stop buttons grayed). And you cannot run a program inside another.
Then if the ActiveDrive toolbar is a program running in the background, it must be making use of the freedrive_mode() script code. How is it modifying that line to restrict motion in a singular axis?
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.
@Colin sorry we prefere not divulgate anything concerning our source code behind our products like the ActiveDrive.
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.