update 初次融合+调试

This commit is contained in:
FrankCV2048
2024-09-03 23:28:16 +08:00
parent 051de571a8
commit 0af995b9cd
10 changed files with 108 additions and 69 deletions

View File

@ -1,7 +1,8 @@
from Model.Position import Real_Position
from Model.Position import Real_Position, Detection_Position
from enum import Enum
from COM.COM_Robot import RobotClient
from Model.RobotModel import CMDInstructRequest
from Vision.camera_coordinate_dete import Detection
class FeedStatus(Enum):
@ -33,7 +34,7 @@ class FeedingConfig:
class Feeding():
def __init__(self,robotClient:RobotClient):
def __init__(self,robotClient:RobotClient,detection: Detection):
self.feedConfig = None
self.feedStatus = FeedStatus.FNone
self.robotClient = robotClient
@ -75,8 +76,24 @@ class Feeding():
elif self.feedStatus == FeedStatus.FPhoto:
if self.feedConfig.photo_position.compare(real_position):
self.feedStatus = FeedStatus.FTake
pass # 发送拍照获取坐标 并 开始移动
_, _, xyz, uvw = self.detection.get_position() #检测结果
if xyz!=None:
self.feedStatus = FeedStatus.FTake
#dp = Detection_Position().init_position(*xyz, *uvw)
from Trace.handeye_calibration import R_matrix,getPosition
rotation = R_matrix(self.robotClient.status_model.world_0,
self.robotClient.status_model.world_1,
self.robotClient.status_model.world_2,
self.robotClient.status_model.world_3,
self.robotClient.status_model.world_4,
self.robotClient.status_model.world_5)
# 黄老师给我的xyz和法向量
target_position, noraml_base = getPosition(*xyz, *uvw,rotation)
self.feedConfig.take_position = Real_Position().init_position(*target_position,*noraml_base)
else:
print("打印日志,保存失败图像")
pass # 发送拍照获取坐标 并 开始移动
elif self.feedStatus == FeedStatus.FTake:
if self.feedConfig.take_position != None and self.feedConfig.take_position.compare(real_position):