合并35kg

This commit is contained in:
2025-09-30 14:44:12 +08:00
parent e764586cc7
commit bda47e10e9
15 changed files with 1173 additions and 17665 deletions

View File

@ -75,7 +75,7 @@ class FeedPosition:
self.position = position
class FeedLine:
def __init__(self, id, name, feed_positions:list,remain_count:int):
def __init__(self, id, name, feed_positions:list,remain_count:int,drop_manage:DropPositionManager):
self.feed_positions = copy.deepcopy(feed_positions)
self.feeding2end_pos_index = 0
@ -83,7 +83,7 @@ class FeedLine:
self.start2take_pos_index = 0
self.name = name
self.id = id
self.drop_manager = DropPositionManager()
self.drop_manager = drop_manage
# 初始化各个阶段的位置列表
self.feeding_to_end = []
@ -479,34 +479,37 @@ class Feeding(QObject):
self.next_position()
return
#初始点无论如何先打开夹爪
self.relay_controller.close(clamp=True)
#重新抓去信号料带
self.take_sensor_signal=False
self.relay_controller.sensor2_ready=True
#去除list.ini读取抓取点20250915
#self.feedConfig.feedLine.set_take_position(self.detect.detect_position, 0)
#self.feedConfig.feedLine.set_take_position(real_position, 0)#必须设置
# 一直等待传感器2信号永不超时
# TODO:逻辑需改变不能用while循环
if Constant.DebugPosition:
self.take_sensor_signal=True
while True:
# sensors = self.relay_controller.get_all_device_status('sensors')
# sensor2_value = sensors.get(self.relay_controller.SENSOR2, False)
if self.take_sensor_signal:
self.log_signal.emit(logging.INFO, "传感器2检测到料包到位开始执行抓取")
break # ✅ 条件满足,跳出循环,继续执行下面的代码
else:
if self.feedStatus == FeedStatus.FNone:
return
time.sleep(1) # 每秒检查一次
#第二次执行FeedStatus.FPhoto时改变码垛点
# self.camera_img.save_frame_path()
self.feedConfig.feedLine.set_feeding_to_end()
# self.take_photo_sigal.emit()
self.next_position()
self.log_signal.emit(logging.INFO, Constant.str_sys_runing2)
if self.relay_controller.close(clamp=True):
#重新抓去信号料带
self.take_sensor_signal=False
self.relay_controller.sensor2_ready=True
#去除list.ini读取抓取点20250915
#self.feedConfig.feedLine.set_take_position(self.detect.detect_position, 0)
#self.feedConfig.feedLine.set_take_position(real_position, 0)#必须设置
# 一直等待传感器2信号永不超时
# TODO:逻辑需改变不能用while循环
if Constant.DebugPosition:
self.take_sensor_signal=True
while True:
# sensors = self.relay_controller.get_all_device_status('sensors')
# sensor2_value = sensors.get(self.relay_controller.SENSOR2, False)
if self.take_sensor_signal:
self.log_signal.emit(logging.INFO, "传感器2检测到料包到位开始执行抓取")
break # ✅ 条件满足,跳出循环,继续执行下面的代码
else:
if self.feedStatus == FeedStatus.FNone:
return
time.sleep(1) # 每秒检查一次
#第二次执行FeedStatus.FPhoto时改变码垛点
# self.camera_img.save_frame_path()
self.feedConfig.feedLine.set_feeding_to_end()
# self.take_photo_sigal.emit()
self.next_position()
self.log_signal.emit(logging.INFO, Constant.str_sys_runing2)
else:
self.log_signal.emit(logging.ERROR, Constant.str_clamp_open_error)
time.sleep(2)
# self.feedStatus = FeedStatus.FTake
elif self.feedStatus == FeedStatus.FTake:
@ -534,8 +537,11 @@ class Feeding(QObject):
# 移动到下一个抓取点
# 更新丢包点: 如果需要根据放置情况调整下次抓取
self.relay_controller.open(clamp=True)
self.next_position(self.is_reverse)
if self.relay_controller.open(clamp=True):
self.next_position(self.is_reverse)
else:
self.log_signal.emit(logging.ERROR, Constant.str_clamp_close_error)
time.sleep(2)
#self.feedConfig.feedLine.set_drop_position(real_position)#我想在这里读取我的一个ini文件值里面有很多个drop点每一次索引递增的点