From 114ca221accf0c8dd0f11b39a6119d2ac685a77a Mon Sep 17 00:00:00 2001 From: "Ziwei.He" Date: Thu, 29 May 2025 23:06:51 +0800 Subject: [PATCH] stash --- Massage/MassageControl/hardware/dobot_api.py | 16 +++++++ .../MassageControl/hardware/dobot_nova5.py | 43 ++++++++++++++++++- 2 files changed, 57 insertions(+), 2 deletions(-) diff --git a/Massage/MassageControl/hardware/dobot_api.py b/Massage/MassageControl/hardware/dobot_api.py index 8d598c9..bf9c3b2 100644 --- a/Massage/MassageControl/hardware/dobot_api.py +++ b/Massage/MassageControl/hardware/dobot_api.py @@ -215,6 +215,14 @@ class DobotApiDashboard(DobotApi): def __init__(self, ip, port, *args): super().__init__(ip, port, *args) + def is_connected(self): + try: + self.socket_dobot.send(b'') # 尝试发送空数据 + return True + except: + return False + + def EnableRobot(self, load=0.0, centerX=0.0, centerY=0.0, centerZ=0.0, isCheck=-1,): """ 可选参数 @@ -3036,6 +3044,14 @@ class DobotApiFeedBack(DobotApi): super().__init__(ip, port, *args) self.__MyType = [] self.last_recv_time = time.perf_counter() + + def is_connected(self): + try: + self.socket_dobot.send(b'') # 尝试发送空数据 + return True + except: + return False + def feedBackData(self): diff --git a/Massage/MassageControl/hardware/dobot_nova5.py b/Massage/MassageControl/hardware/dobot_nova5.py index 118c7d9..d3d2b84 100644 --- a/Massage/MassageControl/hardware/dobot_nova5.py +++ b/Massage/MassageControl/hardware/dobot_nova5.py @@ -77,8 +77,47 @@ class dobot_nova5: ''' self.feedbackData = feedbackItem() # 自定义反馈数据结构体 self.logger = CustomLogger('Dobot_nova5') - self.dashboard = DobotApiDashboard(self.ip,self.dashboardPort) - self.feedFour = DobotApiFeedBack(self.ip,self.feedFourPort) + + # try: + # self.dashboard = DobotApiDashboard(self.ip, self.dashboardPort) + # if not self.dashboard.connect(): + # print(f"[ERROR] 无法连接 Dashboard {self.ip}:{self.dashboardPort}") + # self.dashboard = None + # else: + # print("[INFO] Dashboard 连接成功") + + # except Exception as e: + # print(f"[ERROR] Dashboard 初始化失败: {e}") + # self.dashboard = None + + # 尝试连接 Dashboard 控制接口(默认 29999 端口) + try: + self.dashboard = DobotApiDashboard(self.ip, self.dashboardPort) + if self.dashboard.is_connected(): + print("[INFO] Dashboard 连接成功") + else: + print("[ERROR] Dashboard 未连接成功") + self.dashboard = None + except Exception as e: + print(f"[ERROR] Dashboard 连接失败: {e}") + self.dashboard = None + + # 尝试连接 Feedback 接口(默认 30003 端口) + try: + self.feedFour = DobotApiFeedBack(self.ip, self.feedFourPort) + if self.feedFour.is_connected(): + print("[INFO] Feedback 连接成功") + else: + print("[ERROR] Feedback 未连接成功") + self.feedFour = None + except Exception as e: + print(f"[ERROR] Feedback 连接失败: {e}") + self.feedFour = None + + + + # self.dashboard = DobotApiDashboard(self.ip,self.dashboardPort) + # self.feedFour = DobotApiFeedBack(self.ip,self.feedFourPort) self.stop_feedback = threading.Event() self.stop_feedback.clear()