update 初次融合+调试
This commit is contained in:
@ -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):
|
||||
|
||||
Reference in New Issue
Block a user