mirror of
https://github.com/elephantrobotics/mycobot_ros.git
synced 2026-07-05 19:47:04 +00:00
update
This commit is contained in:
parent
49b4f19b5e
commit
dbdee86f60
6 changed files with 9 additions and 65 deletions
|
|
@ -52,15 +52,6 @@ class Object_detect(Movement):
|
|||
|
||||
# 判断连接设备:ttyUSB*为M5,ttyACM*为seeed
|
||||
self.raspi = False
|
||||
# import RPi.GPIO as GPIO
|
||||
# self.GPIO = GPIO
|
||||
# GPIO.setwarnings(False)
|
||||
# GPIO.setmode(GPIO.BCM)
|
||||
# GPIO.setup(20, GPIO.OUT)
|
||||
# GPIO.setup(21, GPIO.OUT)
|
||||
|
||||
# self.gpio_status(False)
|
||||
# self.Pin = [2, 5]
|
||||
self.robot_m5 = os.popen("ls /dev/ttyUSB*").readline()[:-1]
|
||||
self.robot_wio = os.popen("ls /dev/ttyACM*").readline()[:-1]
|
||||
self.robot_raspi = os.popen("ls /dev/ttyAMA*").readline()[:-1]
|
||||
|
|
@ -90,12 +81,6 @@ class Object_detect(Movement):
|
|||
self.x1 = self.x2 = self.y1 = self.y2 = 0
|
||||
# set cache of real coord
|
||||
self.cache_x = self.cache_y = 0
|
||||
# load model of img recognition
|
||||
# self.model_path = os.path.join(dir_path, "frozen_inference_graph.pb")
|
||||
# self.pbtxt_path = os.path.join(dir_path, "graph.pbtxt")
|
||||
# self.label_path = os.path.join(dir_path, "labels.json")
|
||||
# # load class labels
|
||||
# self.labels = json.load(open(self.label_path))
|
||||
|
||||
# use to calculate coord between cube and mycobot
|
||||
self.sum_x1 = self.sum_x2 = self.sum_y2 = self.sum_y1 = 0
|
||||
|
|
@ -109,13 +94,7 @@ class Object_detect(Movement):
|
|||
self.aruco_dict = cv2.aruco.Dictionary_get(cv2.aruco.DICT_6X6_250)
|
||||
# Get ArUco marker params.
|
||||
self.aruco_params = cv2.aruco.DetectorParameters_create()
|
||||
|
||||
# if IS_CV_4:
|
||||
# self.net = cv2.dnn.readNetFromTensorflow(self.model_path, self.pbtxt_path)
|
||||
# else:
|
||||
# print('Load tensorflow model need the version of opencv is 4.')
|
||||
# exit(0)
|
||||
|
||||
|
||||
# init a node and a publisher
|
||||
rospy.init_node("marker", anonymous=True)
|
||||
self.pub = rospy.Publisher('/cube', Marker, queue_size=1)
|
||||
|
|
@ -151,6 +130,7 @@ class Object_detect(Movement):
|
|||
self.marker.pose.position.z = z
|
||||
self.marker.color.g = self.color
|
||||
self.pub.publish(self.marker)
|
||||
|
||||
# pump_control pi
|
||||
def gpio_status(self, flag):
|
||||
if flag:
|
||||
|
|
@ -534,10 +514,6 @@ def run():
|
|||
parent_conn, child_conn = Pipe()
|
||||
child = Process(target = process_display_frame, args=(child_conn,))
|
||||
child.start()
|
||||
|
||||
# Object_detect().take_photo()
|
||||
# Object_detect().cut_photo()
|
||||
# goal = Object_detect().distinguist()
|
||||
|
||||
res_queue = [[], [], [], []]
|
||||
res_queue[0] = parse_folder('res/red')
|
||||
|
|
@ -545,11 +521,6 @@ def run():
|
|||
res_queue[2] = parse_folder('res/blue')
|
||||
res_queue[3] = parse_folder('res/gray')
|
||||
|
||||
# res_queue = []
|
||||
# res_queue.extend(parse_folder('res/red'))
|
||||
# res_queue.extend(parse_folder('res/green'))
|
||||
# res_queue.extend(parse_folder('res/gray'))
|
||||
# res_queue.extend(parse_folder('res/blue'))
|
||||
|
||||
sift = cv2.xfeatures2d.SIFT_create()
|
||||
kp_list, desc_list = compute_keypoints_and_descriptors(sift, res_queue)
|
||||
|
|
|
|||
|
|
@ -16,6 +16,8 @@ mc = MyCobot(os.popen("ls /dev/ttyUSB*").readline()[:-1], 115200)
|
|||
# mc.send_angles([0,0,0,0,90,0],20) # coords:[95.6, 0.5, 166.4, 179.12, -0.18, 179.46]
|
||||
# time.sleep(4)
|
||||
|
||||
mc.send_angle(3,-15,30)
|
||||
|
||||
# mc.send_angles([-3.25, 17.22, -32.51, 2.37, 92.54, -36.21],30)
|
||||
|
||||
# mc.send_coords([92.3, -104.9, 211.4, -179.6, 28.91, 131.29], 30, 0) # above the red bucket
|
||||
|
|
@ -30,7 +32,7 @@ mc = MyCobot(os.popen("ls /dev/ttyUSB*").readline()[:-1], 115200)
|
|||
# mc.send_coords([-5.4, 120.6, 204.6, 162.66, -6.96, 159.93],30,0) # above the gray bucket
|
||||
# time.sleep(3)
|
||||
|
||||
mc.send_coords([80, 0, 92, 179.12, -0.18, 179.46], 30, 0)
|
||||
# mc.send_coords([80, 0, 92, 179.12, -0.18, 179.46], 30, 0)
|
||||
|
||||
# mc.send_angle(3,0,25)
|
||||
# print(mc.get_angles())
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ class Object_detect(Movement):
|
|||
|
||||
# 移动坐标
|
||||
self.move_coords = [
|
||||
[141.2, -142.0, 210, -26.8], # above the red bucket
|
||||
[141.2, -142.0, 220, -26.8], # above the red bucket
|
||||
[234.3, -120, 210, -48.77], # above the green bucket
|
||||
[100.9, 159.3, 248.6, -124.27], # above the blue bucket
|
||||
[-17.6, 161.6, 238.4, -152.31], # above the gray bucket
|
||||
|
|
@ -174,7 +174,7 @@ class Object_detect(Movement):
|
|||
|
||||
self.mc.send_angle(2, 0, 20)
|
||||
time.sleep(0.3)
|
||||
self.mc.send_angle(3, -15, 20)
|
||||
self.mc.send_angle(3, -20, 20)
|
||||
time.sleep(2)
|
||||
|
||||
self.mc.send_coords(self.move_coords[color], 20, 1)
|
||||
|
|
|
|||
|
|
@ -53,15 +53,6 @@ class Object_detect(Movement):
|
|||
|
||||
# 判断连接设备:ttyUSB*为M5,ttyACM*为seeed
|
||||
self.raspi = False
|
||||
# import RPi.GPIO as GPIO
|
||||
# self.GPIO = GPIO
|
||||
# GPIO.setwarnings(False)
|
||||
# GPIO.setmode(GPIO.BCM)
|
||||
# GPIO.setup(20, GPIO.OUT)
|
||||
# GPIO.setup(21, GPIO.OUT)
|
||||
|
||||
# self.gpio_status(False)
|
||||
# self.Pin = [2, 5]
|
||||
self.robot_m5 = os.popen("ls /dev/ttyUSB*").readline()[:-1]
|
||||
self.robot_wio = os.popen("ls /dev/ttyACM*").readline()[:-1]
|
||||
self.robot_raspi = os.popen("ls /dev/ttyAMA*").readline()[:-1]
|
||||
|
|
@ -90,12 +81,6 @@ class Object_detect(Movement):
|
|||
self.x1 = self.x2 = self.y1 = self.y2 = 0
|
||||
# set cache of real coord
|
||||
self.cache_x = self.cache_y = 0
|
||||
# load model of img recognition
|
||||
# self.model_path = os.path.join(dir_path, "frozen_inference_graph.pb")
|
||||
# self.pbtxt_path = os.path.join(dir_path, "graph.pbtxt")
|
||||
# self.label_path = os.path.join(dir_path, "labels.json")
|
||||
# # load class labels
|
||||
# self.labels = json.load(open(self.label_path))
|
||||
|
||||
# use to calculate coord between cube and mycobot
|
||||
self.sum_x1 = self.sum_x2 = self.sum_y2 = self.sum_y1 = 0
|
||||
|
|
@ -110,11 +95,6 @@ class Object_detect(Movement):
|
|||
# Get ArUco marker params.
|
||||
self.aruco_params = cv2.aruco.DetectorParameters_create()
|
||||
|
||||
# if IS_CV_4:
|
||||
# self.net = cv2.dnn.readNetFromTensorflow(self.model_path, self.pbtxt_path)
|
||||
# else:
|
||||
# print('Load tensorflow model need the version of opencv is 4.')
|
||||
# exit(0)
|
||||
|
||||
# init a node and a publisher
|
||||
rospy.init_node("marker", anonymous=True)
|
||||
|
|
@ -151,6 +131,7 @@ class Object_detect(Movement):
|
|||
self.marker.pose.position.z = z
|
||||
self.marker.color.g = self.color
|
||||
self.pub.publish(self.marker)
|
||||
|
||||
# pump_control pi
|
||||
def gpio_status(self, flag):
|
||||
if flag:
|
||||
|
|
@ -195,7 +176,7 @@ class Object_detect(Movement):
|
|||
|
||||
self.mc.send_angle(2, 0, 20)
|
||||
time.sleep(0.3)
|
||||
self.mc.send_angle(3, -15, 20)
|
||||
self.mc.send_angle(3, -18, 20)
|
||||
time.sleep(2)
|
||||
|
||||
self.mc.send_coords(self.move_coords[color], 20, 1)
|
||||
|
|
@ -520,22 +501,12 @@ def run():
|
|||
child = Process(target = process_display_frame, args=(child_conn,))
|
||||
child.start()
|
||||
|
||||
# Object_detect().take_photo()
|
||||
# Object_detect().cut_photo()
|
||||
# goal = Object_detect().distinguist()
|
||||
|
||||
res_queue = [[], [], [], []]
|
||||
res_queue[0] = parse_folder('res/red')
|
||||
res_queue[1] = parse_folder('res/green')
|
||||
res_queue[2] = parse_folder('res/blue')
|
||||
res_queue[3] = parse_folder('res/gray')
|
||||
|
||||
# res_queue = []
|
||||
# res_queue.extend(parse_folder('res/red'))
|
||||
# res_queue.extend(parse_folder('res/green'))
|
||||
# res_queue.extend(parse_folder('res/gray'))
|
||||
# res_queue.extend(parse_folder('res/blue'))
|
||||
|
||||
sift = cv2.xfeatures2d.SIFT_create()
|
||||
kp_list, desc_list = compute_keypoints_and_descriptors(sift, res_queue)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue