From 6708de638614ace717045551552b745e015c0864 Mon Sep 17 00:00:00 2001
From: mrDarker <mr.darker@163.com>
Date: 星期四, 17 七月 2025 14:01:50 +0800
Subject: [PATCH] 1. 补全真空烘烤的腔体 2. 补全冷却的读取信号

---
 SourceCode/Bond/Servo/CVacuumBake.cpp      |   17 ++++++--
 SourceCode/Bond/Servo/CRobotCmdTestDlg.cpp |   38 +++++++++---------
 SourceCode/Bond/Servo/CEquipment.cpp       |   10 +++++
 SourceCode/Bond/Servo/CEFEM.cpp            |    2 
 4 files changed, 43 insertions(+), 24 deletions(-)

diff --git a/SourceCode/Bond/Servo/CEFEM.cpp b/SourceCode/Bond/Servo/CEFEM.cpp
index 941b834..cf42141 100644
--- a/SourceCode/Bond/Servo/CEFEM.cpp
+++ b/SourceCode/Bond/Servo/CEFEM.cpp
@@ -137,7 +137,7 @@
 				}
 
 				return 0;
-				});
+			});
 		}
 
 		return 0;
diff --git a/SourceCode/Bond/Servo/CEquipment.cpp b/SourceCode/Bond/Servo/CEquipment.cpp
index 26b20d3..fce26d2 100644
--- a/SourceCode/Bond/Servo/CEquipment.cpp
+++ b/SourceCode/Bond/Servo/CEquipment.cpp
@@ -525,8 +525,12 @@
 		// EQ Job Event
 		CHECK_READ_STEP_SIGNAL(STEP_ID_RECIVE_JOB_UPS1, pszData, size);
 		CHECK_READ_STEP_SIGNAL(STEP_ID_RECIVE_JOB_UPS2, pszData, size);
+		CHECK_READ_STEP_SIGNAL(STEP_ID_RECIVE_JOB_UPS3, pszData, size);
+		CHECK_READ_STEP_SIGNAL(STEP_ID_RECIVE_JOB_UPS4, pszData, size);
 		CHECK_READ_STEP_SIGNAL(STEP_ID_SENT_OUT_JOB_DOWNS1, pszData, size);
 		CHECK_READ_STEP_SIGNAL(STEP_ID_SENT_OUT_JOB_DOWNS2, pszData, size);
+		CHECK_READ_STEP_SIGNAL(STEP_ID_SENT_OUT_JOB_DOWNS3, pszData, size);
+		CHECK_READ_STEP_SIGNAL(STEP_ID_SENT_OUT_JOB_DOWNS4, pszData, size);
 
 		// Store Job Report #1~15
 		CHECK_READ_STEP_SIGNAL(STEP_ID_STORE_JOB_REPORT1, pszData, size);
@@ -1270,6 +1274,12 @@
 					if (m_slot[i].isLock()) continue;
 					if (!m_slot[i].isEmpty()) continue;
 
+					int lsPath = m_slot[i].getLinkSignalPath();
+					if (!m_bLinkSignalToDownstream[lsPath][SIGNAL_UPSTREAM_INLINE]
+						|| m_bLinkSignalToDownstream[lsPath][SIGNAL_UPSTREAM_TROUBLE]
+						|| !m_bLinkSignalToDownstream[lsPath][SIGNAL_INTERLOCK]
+						|| !m_bLinkSignalToDownstream[lsPath][SIGNAL_RECEIVE_ABLE]) continue;
+
 					MaterialsType slotType = m_slot[i].getType();
 					if (type == MaterialsType::G1 && slotType == MaterialsType::G2) continue;
 					if (type == MaterialsType::G2 && slotType == MaterialsType::G1) continue;
diff --git a/SourceCode/Bond/Servo/CRobotCmdTestDlg.cpp b/SourceCode/Bond/Servo/CRobotCmdTestDlg.cpp
index f8da27b..e07c782 100644
--- a/SourceCode/Bond/Servo/CRobotCmdTestDlg.cpp
+++ b/SourceCode/Bond/Servo/CRobotCmdTestDlg.cpp
@@ -112,25 +112,25 @@
 
 	// 绀轰緥璁惧鍚嶇О鍒楄〃
 	CStringList eqNameList;
-	eqNameList.AddTail(_T("Port1"));
-	eqNameList.AddTail(_T("Port2"));
-	eqNameList.AddTail(_T("Port3"));
-	eqNameList.AddTail(_T("Port4"));
-	eqNameList.AddTail(_T("RB1"));	
-	eqNameList.AddTail(_T("RB2"));
-	eqNameList.AddTail(_T("AL"));
-	eqNameList.AddTail(_T("FLIP"));
-	eqNameList.AddTail(_T("Bonder1-涓婁骇鍝�"));
-	eqNameList.AddTail(_T("Bonder1-涓嬩骇鍝�"));
-	eqNameList.AddTail(_T("Bonder2-涓婁骇鍝�"));
-	eqNameList.AddTail(_T("Bonder2-涓嬩骇鍝�"));
-	eqNameList.AddTail(_T("VacBakeA鑵�"));
-	eqNameList.AddTail(_T("VacBakeB鑵�"));
-	eqNameList.AddTail(_T("BakecCoolingA鐑樼儰"));
-	eqNameList.AddTail(_T("BakecCoolingA鍐峰嵈"));
-	eqNameList.AddTail(_T("BakecCoolingB鐑樼儰"));
-	eqNameList.AddTail(_T("BakecCoolingB鍐峰嵈"));
-	eqNameList.AddTail(_T("Measurement"));	
+	eqNameList.AddTail(_T("Port1")); // 1
+	eqNameList.AddTail(_T("Port2")); // 2
+	eqNameList.AddTail(_T("Port3")); // 3
+	eqNameList.AddTail(_T("Port4")); // 4
+	eqNameList.AddTail(_T("RB1"));	 // 5
+	eqNameList.AddTail(_T("RB2"));	 // 6
+	eqNameList.AddTail(_T("AL"));	 // 7
+	eqNameList.AddTail(_T("FLIP"));	 // 8
+	eqNameList.AddTail(_T("Bonder1-涓婁骇鍝�")); // 9
+	eqNameList.AddTail(_T("Bonder1-涓嬩骇鍝�")); // 10
+	eqNameList.AddTail(_T("Bonder2-涓婁骇鍝�")); // 11
+	eqNameList.AddTail(_T("Bonder2-涓嬩骇鍝�")); // 12
+	eqNameList.AddTail(_T("VacBakeA鑵�"));	  // 13
+	eqNameList.AddTail(_T("VacBakeB鑵�"));	  // 14
+	eqNameList.AddTail(_T("BakecCoolingA鐑樼儰")); // 15
+	eqNameList.AddTail(_T("BakecCoolingA鍐峰嵈")); // 16
+	eqNameList.AddTail(_T("BakecCoolingB鐑樼儰")); // 17
+	eqNameList.AddTail(_T("BakecCoolingB鍐峰嵈")); // 18
+	eqNameList.AddTail(_T("Measurement"));		 // 19
 
 	for (POSITION pos = eqNameList.GetHeadPosition(); pos != NULL;) {
 		CString item = eqNameList.GetNext(pos);
diff --git a/SourceCode/Bond/Servo/CVacuumBake.cpp b/SourceCode/Bond/Servo/CVacuumBake.cpp
index 9b91723..1f93e74 100644
--- a/SourceCode/Bond/Servo/CVacuumBake.cpp
+++ b/SourceCode/Bond/Servo/CVacuumBake.cpp
@@ -239,7 +239,7 @@
 		{
 			// Received Job Report Upstream #1~9
 			char szBuffer[256];
-			for (int i = 0; i < 1; i++) {
+			for (int i = 0; i < 2; i++) {
 				CEqReadStep* pStep = new CEqReadStep(0x14c90 + 320 * i, 320 * 2,
 					[&](void* pFrom, int code, const char* pszData, size_t size) -> int {
 						if (code == ROK && pszData != nullptr && size > 0) {
@@ -263,7 +263,7 @@
 		{
 			// Sent Out Job Report Downstream #1~9
 			char szBuffer[256];
-			for (int i = 0; i < 1; i++) {
+			for (int i = 0; i < 2; i++) {
 				CEqReadStep* pStep = new CEqReadStep(0x14000 + 320 * i, 320 * 2,
 					[&](void* pFrom, int code, const char* pszData, size_t size) -> int {
 						if (code == ROK && pszData != nullptr && size > 0) {
@@ -287,7 +287,7 @@
 		{
 			// Fetched Out Job Report #1~15
 			char szBuffer[256];
-			for (int i = 0; i < 1; i++) {
+			for (int i = 0; i < 2; i++) {
 				CEqReadStep* pStep = new CEqReadStep(0x15c31 + 18 * i, 18 * 2,
 					[&](void* pFrom, int code, const char* pszData, size_t size) -> int {
 						if (code == ROK && pszData != nullptr && size > 0) {
@@ -311,7 +311,7 @@
 		{
 			// Stored Job Report #1~15
 			char szBuffer[256];
-			for (int i = 0; i < 1; i++) {
+			for (int i = 0; i < 2; i++) {
 				CEqReadStep* pStep = new CEqReadStep(0x15b23 + 18 * i, 18 * 2,
 					[&](void* pFrom, int code, const char* pszData, size_t size) -> int {
 						if (code == ROK && pszData != nullptr && size > 0) {
@@ -348,6 +348,7 @@
 				delete pStep;
 			}
 		}
+
 		{
 			CEqReadStep* pStep = new CEqReadStep(0x15D4C, 13 * 2,
 				[&](void* pFrom, int code, const char* pszData, size_t size) -> int {
@@ -363,6 +364,7 @@
 				delete pStep;
 			}
 		}
+
 	}
 
 	// 必须要实现的虚函数,在此初始化Slot信息
@@ -373,6 +375,13 @@
 		m_slot[0].setNo(1);
 		m_slot[0].setName("Slot 1(G1)");
 		m_slot[0].setType(MaterialsType::G1);
+		m_slot[0].setLinkSignalPath(0);
+		m_slot[1].enable();
+		m_slot[1].setPosition(m_nID);
+		m_slot[1].setNo(2);
+		m_slot[1].setName("Slot 2(G1)");
+		m_slot[1].setType(MaterialsType::G1);
+		m_slot[1].setLinkSignalPath(1);
 	}
 
 	void CVacuumBake::onTimer(UINT nTimerid)

--
Gitblit v1.9.3