Add open and close gripper functions
This commit is contained in:
parent
145f51d08c
commit
939474378a
@ -10,7 +10,7 @@ import yaml
|
|||||||
from urx.robotiq_two_finger_gripper import Robotiq_Two_Finger_Gripper
|
from urx.robotiq_two_finger_gripper import Robotiq_Two_Finger_Gripper
|
||||||
import sys
|
import sys
|
||||||
from util import fprint
|
from util import fprint
|
||||||
|
from pyModbusTCP.client import ModbusClient
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -436,27 +436,49 @@ def pick_up_routine(robot, holder_index, verbose=False):
|
|||||||
print('Pickup routine for index', holder_index)
|
print('Pickup routine for index', holder_index)
|
||||||
|
|
||||||
goto_holder_index(robot, holder_index, 0.2, use_closest_path=False)
|
goto_holder_index(robot, holder_index, 0.2, use_closest_path=False)
|
||||||
|
open_gripper()
|
||||||
|
|
||||||
curr_pos = rob.getl()
|
curr_pos = rob.getl()
|
||||||
new_pos = curr_pos
|
new_pos = curr_pos
|
||||||
new_pos[2] = 0.005
|
new_pos[2] = 0.005
|
||||||
rob.movel(new_pos, vel=0.1, acc=1)
|
rob.movel(new_pos, vel=0.1, acc=1)
|
||||||
# goto_holder_index(robot, holder_index, 0.0)
|
# goto_holder_index(robot, holder_index, 0.0)
|
||||||
|
close_gripper()
|
||||||
|
|
||||||
|
|
||||||
# Close Gripper code
|
|
||||||
time.sleep(0.5)
|
|
||||||
|
|
||||||
new_pos[2] = 0.2
|
new_pos[2] = 0.2
|
||||||
rob.movel(new_pos, vel=0.1, acc=1)
|
rob.movel(new_pos, vel=0.1, acc=1)
|
||||||
was_flipped = is_flipped(robot)
|
was_flipped = is_flipped(robot)
|
||||||
|
|
||||||
# # Tray position 1
|
# # Tray position 1
|
||||||
# rob.movej(offset_gripper_angle(robot, -0.15, -0.15, 0.3, flip=is_flipped(robot), use_closest_path=False), vel=2, acc=2)
|
rob.movej(offset_gripper_angle(robot, -0.15, -0.15, 0.3, flip=is_flipped(robot), use_closest_path=False), vel=2, acc=2)
|
||||||
# rob.movej(get_joints_from_xyz_abs(robot, -0.35, -0.15, 0.0, math.pi/2, 0.1), vel=2, acc=2)
|
rob.movej(get_joints_from_xyz_abs(robot, -0.35, -0.15, 0.0, math.pi/2, 0.1), vel=2, acc=2)
|
||||||
# time.sleep(0.5)
|
time.sleep(0.5)
|
||||||
|
open_gripper()
|
||||||
|
|
||||||
# Back to safe position
|
# Back to safe position
|
||||||
# rob.movej(offset_gripper_angle(robot, -0.205, -0.108, 0.3, flip=True), vel=2, acc=2)
|
rob.movej(offset_gripper_angle(robot, -0.205, -0.108, 0.3, flip=True), vel=2, acc=2)
|
||||||
|
|
||||||
|
def open_gripper():
|
||||||
|
print("opening")
|
||||||
|
c = ModbusClient(host="192.168.1.20", port=502, auto_open=True, auto_close=False)
|
||||||
|
|
||||||
|
c.write_single_register(0, 0b0)
|
||||||
|
c.write_single_register(435, 0b1)
|
||||||
|
time.sleep(0.5)
|
||||||
|
c.close()
|
||||||
|
|
||||||
|
#c.close()
|
||||||
|
|
||||||
|
def close_gripper():
|
||||||
|
print("closing")
|
||||||
|
c = ModbusClient(host="192.168.1.20", port=502, auto_open=True, auto_close=False)
|
||||||
|
c.write_single_register(435, 0b0)
|
||||||
|
c.write_single_register(0, 0b1)
|
||||||
|
time.sleep(0.5)
|
||||||
|
c.close()
|
||||||
|
#
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
|
||||||
@ -466,6 +488,15 @@ if __name__ == "__main__":
|
|||||||
with open('config.yml', 'r') as fileread:
|
with open('config.yml', 'r') as fileread:
|
||||||
#global config
|
#global config
|
||||||
config = yaml.safe_load(fileread)
|
config = yaml.safe_load(fileread)
|
||||||
|
|
||||||
|
open_gripper()
|
||||||
|
#time.sleep(5)
|
||||||
|
#close_gripper()
|
||||||
|
|
||||||
|
#time.sleep(100)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
robot = Rob(config) # robot of type Rob is the custom class above
|
robot = Rob(config) # robot of type Rob is the custom class above
|
||||||
robot.init_arm()
|
robot.init_arm()
|
||||||
rob = robot.robot # rob is robot.robot is the urx robot class, what we've been using previously
|
rob = robot.robot # rob is robot.robot is the urx robot class, what we've been using previously
|
||||||
@ -514,7 +545,7 @@ if __name__ == "__main__":
|
|||||||
# rob.movej(get_joints_from_xyz_abs(robot, 0.2, 0, 0.05), vel=0.5, acc=2)
|
# rob.movej(get_joints_from_xyz_abs(robot, 0.2, 0, 0.05), vel=0.5, acc=2)
|
||||||
# goto_holder_index(robot, 27, 0.05)
|
# goto_holder_index(robot, 27, 0.05)
|
||||||
|
|
||||||
for i in [1,50]:
|
for i in [6,7,8]:
|
||||||
pick_up_routine(robot, i, verbose=True)
|
pick_up_routine(robot, i, verbose=True)
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user