From 2a803976ed12e59f3e082e7c08941ef5004e6ea1 Mon Sep 17 00:00:00 2001
From: mrDarker <mr.darker@163.com>
Date: 星期二, 20 五月 2025 11:40:10 +0800
Subject: [PATCH] 1. 添加机器臂命令配置界面

---
 SourceCode/Bond/Servo/CEquipment.h |   35 ++++++++++++++++++++++++++++++++++-
 1 files changed, 34 insertions(+), 1 deletions(-)

diff --git a/SourceCode/Bond/Servo/CEquipment.h b/SourceCode/Bond/Servo/CEquipment.h
index 831a3df..4e8f6db 100644
--- a/SourceCode/Bond/Servo/CEquipment.h
+++ b/SourceCode/Bond/Servo/CEquipment.h
@@ -68,6 +68,37 @@
 		BOOL alive;
 	} ALIVE;
 
+	enum DISPATCHING_MODE {
+		EAS = 1,
+		Local = 2
+	};
+
+	enum RCMD {
+		Robot_home = 1,
+		Transfer, 
+		Move,
+		Get,
+		Put,
+		One_Action_Exchange,
+		Two_Action_Exchange,
+		Command_Clear,
+		Batch_get,
+		Batch_put
+	};
+
+	// Robot cmd param
+#define ROBOT_CMD_PARAM_SIZE		16			/* 防止以后修改ROBOT_CMD_PARAM为不是4的整数倍 */
+	typedef struct _ROBOT_CMD_PARAM {
+		short sequenceNo;
+		short rcmd;
+		short armNo;
+		short getPosition;
+		short putPosition;
+		short getSlotNo;
+		short putSlotNo;
+		short subCmd;
+	} ROBOT_CMD_PARAM;
+
 	class CEquipment
 	{
 	public:
@@ -128,6 +159,7 @@
 		virtual int onStoredJob(int port, CJobDataB* pJobDataB);
 		virtual int onProcessData(CProcessData* pProcessData);
 		void getGlassList(std::list<CGlass*>& list);
+		CGlass* getGlassFromList(const char* pszId);
 		CGlass* getFrontGlass();
 		BOOL removeClass(CGlass* pGlass);
 		bool isAlarmStep(SERVO::CStep* pStep);
@@ -145,7 +177,8 @@
 		int setCimMessage(const char* pszMessage, short id, short nTouchPanelNo);
 		int clearCimMessage(short id, short nTouchPanelNo);
 		int setDateTime(short year, short month, short day, short hour, short minute, short second);
-		
+		int setDispatchingMode(DISPATCHING_MODE mode, ONWRITED onWritedBlock = nullptr);
+
 		// 请求主配方列表
 		// unitNo: 0:local; Others:unit No
 		int masterRecipeListRequest(short unitNo);

--
Gitblit v1.9.3