From 048314c011c688bb4f0f45079f978d3564f8276f Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期四, 07 八月 2025 14:36:17 +0800
Subject: [PATCH] 1.从配置读出的enable,初始化时写给efem
---
SourceCode/Bond/Servo/CMaster.cpp | 54 ++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 42 insertions(+), 12 deletions(-)
diff --git a/SourceCode/Bond/Servo/CMaster.cpp b/SourceCode/Bond/Servo/CMaster.cpp
index 6714999..9635e7a 100644
--- a/SourceCode/Bond/Servo/CMaster.cpp
+++ b/SourceCode/Bond/Servo/CMaster.cpp
@@ -748,10 +748,17 @@
CHECK_RUN_ACTIVE_ROBOT_TASK(m_pActiveRobotTask);
}
- // Bonder2 -> BakeCooling
+ // VacuumBake(G1) -> BakeCooling
+ if (!rmd.armState[0]) {
+ m_pActiveRobotTask = createTransferTask_continuous_transfer(pVacuumBake,
+ 0, pBakeCooling, 0);
+ CHECK_RUN_ACTIVE_ROBOT_TASK(m_pActiveRobotTask);
+ }
+
+ // Bonder2 -> VacuumBake(G1)
if (!rmd.armState[0]) {
m_pActiveRobotTask = createTransferTask_continuous_transfer(pBonder2,
- 0, pBakeCooling, 0);
+ 0, pVacuumBake, 0);
CHECK_RUN_ACTIVE_ROBOT_TASK(m_pActiveRobotTask);
}
@@ -762,17 +769,10 @@
CHECK_RUN_ACTIVE_ROBOT_TASK(m_pActiveRobotTask);
}
- // VacuumBake(G1) -> Bonder1
+ // Fliper(G2) -> Bonder1
if (!rmd.armState[0] && !pBonder1->hasBondClass()) {
- m_pActiveRobotTask = createTransferTask_continuous_transfer(pVacuumBake,
- 0, pBonder1, 0);
- CHECK_RUN_ACTIVE_ROBOT_TASK(m_pActiveRobotTask);
- }
-
- // Fliper(G2) -> VacuumBake(G1)
- if (!rmd.armState[0]) {
m_pActiveRobotTask = createTransferTask_continuous_transfer(pFliper,
- 0, pVacuumBake, 0);
+ 0, pBonder1, 1);
CHECK_RUN_ACTIVE_ROBOT_TASK(m_pActiveRobotTask);
}
@@ -822,6 +822,16 @@
unsigned CMaster::ReadBitsProc()
{
+ // 标志位清0复位
+ {
+ StationIdentifier station;
+ station.nNetNo = 0;
+ station.nStNo = 255;
+ char szBuffer[528] = { 0 }; // 0x0, 0x1087
+ m_cclink.WriteData(station, (long)DeviceType::B, 0, 528, (short*)szBuffer);
+ }
+
+
while (1) {
// 待退出信号或时间到
int nRet = ::WaitForSingleObject(m_hEventReadBitsThreadExit[0], 1000);
@@ -1034,7 +1044,7 @@
((CEquipment*)pEquipment)->getName().c_str(), scanMap, downMap);
};
listener.onPortStatusChanged = [&](void* pEquipment, short status, __int64 data) {
- LOGE("<Master-%s>Port InUse。status=%d, data=%lld", ((CEquipment*)pEquipment)->getName().c_str(), status);
+ LOGE("<Master-%s>onPortStatusChanged。status=%d, data=%lld", ((CEquipment*)pEquipment)->getName().c_str(), status);
if (m_listener.onLoadPortStatusChanged != nullptr) {
m_listener.onLoadPortStatusChanged(this, (CEquipment*)pEquipment, status, data);
}
@@ -1703,4 +1713,24 @@
{
return m_bEnableAlarmReport;
}
+
+ int CMaster::proceedWithCarrier(unsigned int port)
+ {
+ if (port >= 4) return -1;
+
+ static int pid[] = { EQ_ID_LOADPORT1, EQ_ID_LOADPORT2, EQ_ID_LOADPORT3, EQ_ID_LOADPORT4};
+ CLoadPort* pPort = (CLoadPort*)getEquipment(pid[port]);
+ pPort->sendCassetteCtrlCmd(CCC_PROCESS_START, nullptr, 0, 0, 0, nullptr, nullptr);
+ return 0;
+ }
+
+ int CMaster::carrierRelease(unsigned int port)
+ {
+ if (port >= 4) return -1;
+
+ static int pid[] = { EQ_ID_LOADPORT1, EQ_ID_LOADPORT2, EQ_ID_LOADPORT3, EQ_ID_LOADPORT4 };
+ CLoadPort* pPort = (CLoadPort*)getEquipment(pid[port]);
+ pPort->sendCassetteCtrlCmd(CCC_PROCESS_CANCEL, nullptr, 0, 0, 0, nullptr, nullptr);
+ return 0;
+ }
}
--
Gitblit v1.9.3