From 57056db746cec1ad5c0cc5dad93b8f3474d2562d Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期六, 29 三月 2025 15:18:13 +0800
Subject: [PATCH] 1.添加载具搬送状态类(CEqCassetteTransferStateStep)

---
 SourceCode/Bond/Servo/CMaster.cpp |  287 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 287 insertions(+), 0 deletions(-)

diff --git a/SourceCode/Bond/Servo/CMaster.cpp b/SourceCode/Bond/Servo/CMaster.cpp
index 145531f..24dfac0 100644
--- a/SourceCode/Bond/Servo/CMaster.cpp
+++ b/SourceCode/Bond/Servo/CMaster.cpp
@@ -2,6 +2,18 @@
 #include "Common.h"
 #include "CMaster.h"
 
+
+#define ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(name,ws,index,psd) {				\
+	CEqCassetteTransferStateStep* pStep = new CEqCassetteTransferStateStep();	\
+	pStep->setName(name);														\
+	pStep->setListener(listener);												\
+	pStep->setWriteSignalDev(ws);												\
+	pStep->setPortStatusDev(psd);												\
+	if (pEquipment->addStep(index, pStep) != 0) {								\
+		delete pStep;															\
+	}																			\
+}
+
 namespace SERVO {
 	CMaster* g_pMaster = NULL;
 	void CALLBACK MasterTimerProc(HWND hWnd, UINT nMsg, UINT nTimerid, DWORD dwTime)
@@ -378,6 +390,281 @@
 			}
 		}
 
+		// Port1
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d1f);
+			pStep->setName(STEP_EQ_PORT1_TYPE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x80);
+			if (pEquipment->addStep(0x3e0, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d20);
+			pStep->setName(STEP_EQ_PORT1_MODE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x88);
+			if (pEquipment->addStep(0x3e8, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT32, 0x4d21);
+			pStep->setName(STEP_EQ_PORT1_CASSETTE_TYPE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x90);
+			if (pEquipment->addStep(0x3f0, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d23);
+			pStep->setName(STEP_EQ_PORT1_TRANSFER_MODE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x98);
+			if (pEquipment->addStep(0x3f8, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d24);
+			pStep->setName(STEP_EQ_PORT1_ENABLE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0xa0);
+			if (pEquipment->addStep(0x400, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d25);
+			pStep->setName(STEP_EQ_PORT1_TYPE_ATUO);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0xa8);
+			if (pEquipment->addStep(0x408, pStep) != 0) {
+				delete pStep;
+			}
+		}
+
+		// Port2
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d2f);
+			pStep->setName(STEP_EQ_PORT2_TYPE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x81);
+			if (pEquipment->addStep(0x3e1, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d30);
+			pStep->setName(STEP_EQ_PORT2_MODE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x89);
+			if (pEquipment->addStep(0x3e9, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT32, 0x4d31);
+			pStep->setName(STEP_EQ_PORT2_CASSETTE_TYPE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x91);
+			if (pEquipment->addStep(0x3f1, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d33);
+			pStep->setName(STEP_EQ_PORT2_TRANSFER_MODE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x99);
+			if (pEquipment->addStep(0x3f9, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d34);
+			pStep->setName(STEP_EQ_PORT2_ENABLE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0xa1);
+			if (pEquipment->addStep(0x401, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d35);
+			pStep->setName(STEP_EQ_PORT2_TYPE_ATUO);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0xa9);
+			if (pEquipment->addStep(0x409, pStep) != 0) {
+				delete pStep;
+			}
+		}
+
+		// Port3
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d3f);
+			pStep->setName(STEP_EQ_PORT3_TYPE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x82);
+			if (pEquipment->addStep(0x3e2, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d40);
+			pStep->setName(STEP_EQ_PORT3_MODE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x8a);
+			if (pEquipment->addStep(0x3ea, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT32, 0x4d41);
+			pStep->setName(STEP_EQ_PORT3_CASSETTE_TYPE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x92);
+			if (pEquipment->addStep(0x3f2, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d43);
+			pStep->setName(STEP_EQ_PORT3_TRANSFER_MODE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x9a);
+			if (pEquipment->addStep(0x3fa, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d44);
+			pStep->setName(STEP_EQ_PORT3_ENABLE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0xa2);
+			if (pEquipment->addStep(0x402, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d45);
+			pStep->setName(STEP_EQ_PORT3_TYPE_ATUO);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0xaa);
+			if (pEquipment->addStep(0x40a, pStep) != 0) {
+				delete pStep;
+			}
+		}
+
+		// Port4
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d4f);
+			pStep->setName(STEP_EQ_PORT4_TYPE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x83);
+			if (pEquipment->addStep(0x3e3, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d50);
+			pStep->setName(STEP_EQ_PORT4_MODE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x8b);
+			if (pEquipment->addStep(0x3eb, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT32, 0x4d51);
+			pStep->setName(STEP_EQ_PORT4_CASSETTE_TYPE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x93);
+			if (pEquipment->addStep(0x3f3, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d53);
+			pStep->setName(STEP_EQ_PORT4_TRANSFER_MODE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x9b);
+			if (pEquipment->addStep(0x3fb, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d54);
+			pStep->setName(STEP_EQ_PORT4_ENABLE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0xa3);
+			if (pEquipment->addStep(0x403, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d55);
+			pStep->setName(STEP_EQ_PORT4_TYPE_ATUO);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0xab);
+			if (pEquipment->addStep(0x40b, pStep) != 0) {
+				delete pStep;
+			}
+		}
+
+
+		// CEqCassetteTranserStateStep
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P1_CASSETTE_EMPTY, 0xb8, 
+			STEP_ID_PORT1_CASSETTIE_EMPTY, 0x4d5f);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P1_CASSETTE_LOAD_EADY, 0xc0,
+			STEP_ID_PORT1_CASSETTIE_LOAD_READY, 0x4d5f);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P1_CASSETTE_LOADED, 0xc8, 
+			STEP_ID_PORT1_CASSETTIE_LOADED, 0x4d5f);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P1_CASSETTE_INUSE, 0xd0,
+			STEP_ID_PORT1_CASSETTIE_INUSE, 0x4d5f);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P1_CASSETTE_UNLOAD_EADY, 0xd8,
+			STEP_ID_PORT1_CASSETTIE_UNLOAD_READY, 0x4d5f);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P1_CASSETTE_BLOCKED, 0xe0,
+			STEP_ID_PORT1_CASSETTIE_BLOCKED, 0x4d5f);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P2_CASSETTE_EMPTY, 
+			STEP_ID_PORT2_CASSETTIE_EMPTY, 0x418, 0x4d7f);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P2_CASSETTE_LOAD_EADY,
+			STEP_ID_PORT2_CASSETTIE_LOAD_READY, 0x420, 0x4d7f);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P2_CASSETTE_LOADED,
+			STEP_ID_PORT2_CASSETTIE_LOADED, 0x428, 0x4d7f);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P2_CASSETTE_INUSE, 
+			STEP_ID_PORT2_CASSETTIE_INUSE, 0x430, 0x4d7f);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P2_CASSETTE_UNLOAD_EADY,
+			STEP_ID_PORT2_CASSETTIE_UNLOAD_READY, 0x438, 0x4d7f);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P2_CASSETTE_BLOCKED, 
+			STEP_ID_PORT2_CASSETTIE_BLOCKED, 0x440, 0x4d7f);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P3_CASSETTE_EMPTY,
+			STEP_ID_PORT3_CASSETTIE_EMPTY, 0x418, 0x4d9f);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P3_CASSETTE_LOAD_EADY,
+			STEP_ID_PORT3_CASSETTIE_LOAD_READY, 0x420, 0x4d9f);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P3_CASSETTE_LOADED, 
+			STEP_ID_PORT3_CASSETTIE_INUSE, 0x428, 0x4d9f);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P3_CASSETTE_INUSE, 
+			STEP_ID_PORT3_CASSETTIE_INUSE, 0x430, 0x4d9f);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P3_CASSETTE_UNLOAD_EADY, 
+			STEP_ID_PORT3_CASSETTIE_UNLOAD_READY, 0x438, 0x4d9f);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P3_CASSETTE_BLOCKED,
+			STEP_ID_PORT3_CASSETTIE_BLOCKED, 0x440, 0x4d9f);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P4_CASSETTE_EMPTY, 
+			STEP_ID_PORT4_CASSETTIE_EMPTY, 0x418, 0x4dbf);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P4_CASSETTE_LOAD_EADY, 
+			STEP_ID_PORT4_CASSETTIE_LOAD_READY, 0x420, 0x4dbf);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P4_CASSETTE_LOADED, 
+			STEP_ID_PORT4_CASSETTIE_LOADED, 0x428, 0x4dbf);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P4_CASSETTE_INUSE,
+			STEP_ID_PORT4_CASSETTIE_INUSE, 0x430, 0x4dbf);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P4_CASSETTE_UNLOAD_EADY, 
+			STEP_ID_PORT4_CASSETTIE_UNLOAD_READY, 0x438, 0x4dbf);
+		ADD_EQ_CASSETTE_TRANSFER_STATE_STEP(STEP_EQ_P4_CASSETTE_BLOCKED, 
+			STEP_ID_PORT4_CASSETTIE_BLOCKED, 0x440, 0x4dbf);
+
 		pEquipment->init();
 		LOGE("已添加“EFEM(ROBOT)”.");
 		return 0;

--
Gitblit v1.9.3