From fac102938562e13dd4e4e4914d0fde9b1cd05d8b Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期一, 09 六月 2025 09:47:37 +0800
Subject: [PATCH] 1.CMaster调度线程中添加任务运行发送到EFEM;
---
SourceCode/Bond/Servo/CPageGraph2.cpp | 66 +++++++++++++++++++++++++++------
1 files changed, 54 insertions(+), 12 deletions(-)
diff --git a/SourceCode/Bond/Servo/CPageGraph2.cpp b/SourceCode/Bond/Servo/CPageGraph2.cpp
index 1b4c9ae..d095b21 100644
--- a/SourceCode/Bond/Servo/CPageGraph2.cpp
+++ b/SourceCode/Bond/Servo/CPageGraph2.cpp
@@ -128,6 +128,11 @@
CHMPropertyDlg dlg(pEquipment->getName().c_str(), 658, 788);
+ CEquipmentPage1* pPage1 = new CEquipmentPage1();
+ pPage1->setEquipment(pEquipment);
+ pPage1->Create(IDD_PAGE_EQUIPMENT1);
+ dlg.addPage(pPage1, "Link Signal");
+
if (_strcmpi(pEquipment->getClassName(), "CLoadPort") == 0) {
CPagePortProperty* pPageA = new CPagePortProperty();
pPageA->setLoadPort((SERVO::CLoadPort*)pEquipment);
@@ -143,7 +148,7 @@
CEquipmentPage2* pPage2 = new CEquipmentPage2();
pPage2->setEquipment(pEquipment);
pPage2->Create(IDD_PAGE_EQUIPMENT2);
- dlg.addPage(pPage2, "Glass");
+ dlg.addPage(pPage2, "Slots");
if (pEquipment->getID() == EQ_ID_EFEM) {
CEquipmentPage3* pPage3 = new CEquipmentPage3();
@@ -204,26 +209,31 @@
// 娴嬭瘯
else if (nCmd == ID_EQSGRAPHITEM_TEST1) {
+ BOOL bTestGenerate = FALSE;
SERVO::CEquipment* pEquipment = (SERVO::CEquipment*)pItem->pData;
- if (pEquipment->getID() == EQ_ID_LOADPORT1) {
+ if (pEquipment->getID() == EQ_ID_LOADPORT1 && !pEquipment->hasGlass()) {
((SERVO::CLoadPort*)pEquipment)->testGenerateGlassList(SERVO::MaterialsType::G1,
"P20250320G1X", 1);
+ bTestGenerate = TRUE;
}
- else if (pEquipment->getID() == EQ_ID_LOADPORT2) {
+ else if (pEquipment->getID() == EQ_ID_LOADPORT2 && !pEquipment->hasGlass()) {
((SERVO::CLoadPort*)pEquipment)->testGenerateGlassList(SERVO::MaterialsType::G2,
"P20250320G2X", 1);
+ bTestGenerate = TRUE;
}
- /*
- SERVO::CGlass* pGlass = pEquipment->getAnyGlass();
- if (pGlass != nullptr) {
- SERVO::CJobDataB* pJobDataB = pGlass->getJobDataB();
- SERVO::CJobDataS* pJobDataS = pGlass->getJobDataS();
- if (pJobDataB != nullptr && pJobDataS != nullptr) {
- pEquipment->fetchedOutJob(pJobDataB);
- pEquipment->onSentOutJob(0, pJobDataS);
+
+ if (!bTestGenerate) {
+ SERVO::CRobotTask* pTask = theApp.m_model.getMaster().getActiveRobotTask();
+ if (pTask != nullptr) {
+ SERVO::CGlass* pGlass = (SERVO::CGlass*)pTask->getContext();
+ SERVO::CJobDataB* pJobDataB = pGlass->getJobDataB();
+ SERVO::CJobDataS* pJobDataS = pGlass->getJobDataS();
+ if (pJobDataB != nullptr && pJobDataS != nullptr) {
+ pEquipment->onFetchedOutJob(0, pJobDataB);
+ pEquipment->onSentOutJob(0, pJobDataS);
+ }
}
}
- */
}
else if (nCmd == ID_EQSGRAPHITEM_TEST2) {
SERVO::CEquipment* pEquipment = (SERVO::CEquipment*)pItem->pData;
@@ -254,6 +264,38 @@
}
else if (nCmd == ID_EQSGRAPHITEM_TEST4) {
SERVO::CEquipment* pEquipment = (SERVO::CEquipment*)pItem->pData;
+ if (pEquipment != nullptr) {
+ pEquipment->setLinkSignal(0, SIGNAL_UPSTREAM_INLINE, TRUE);
+ pEquipment->setLinkSignal(0, SIGNAL_UPSTREAM_TROUBLE, FALSE);
+ pEquipment->setLinkSignal(0, SIGNAL_INTERLOCK, TRUE);
+ pEquipment->setLinkSignal(0, SIGNAL_SEND_ABLE, TRUE);
+ pEquipment->setLinkSignal(1, SIGNAL_UPSTREAM_INLINE, TRUE);
+ pEquipment->setLinkSignal(1, SIGNAL_UPSTREAM_TROUBLE, FALSE);
+ pEquipment->setLinkSignal(1, SIGNAL_INTERLOCK, TRUE);
+ pEquipment->setLinkSignal(1, SIGNAL_SEND_ABLE, TRUE);
+ }
+
+ if (pEquipment != nullptr && (pEquipment->getID() == EQ_ID_Bonder1
+ || pEquipment->getID() == EQ_ID_Bonder2)) {
+ SERVO::CGlass* pGlass = pEquipment->getAnyGlass();
+ if (pGlass != nullptr) {
+ SERVO::CProcessData pd;
+ pd.setGlassId(pGlass->getID().c_str());
+ pEquipment->onProcessData(&pd);
+ }
+ }
+ }
+ else if (nCmd == ID_EQSGRAPHITEM_TEST5) {
+ SERVO::CEquipment* pEquipment = (SERVO::CEquipment*)pItem->pData;
+ if (pEquipment != nullptr) {
+ pEquipment->setLinkSignal(0, SIGNAL_UPSTREAM_INLINE, TRUE);
+ pEquipment->setLinkSignal(0, SIGNAL_UPSTREAM_TROUBLE, TRUE);
+ pEquipment->setLinkSignal(0, SIGNAL_INTERLOCK, TRUE);
+ pEquipment->setLinkSignal(0, SIGNAL_SEND_ABLE, FALSE);
+ }
+ }
+ else if (nCmd == ID_EQSGRAPHITEM_TEST6) {
+ SERVO::CEquipment* pEquipment = (SERVO::CEquipment*)pItem->pData;
// 娴嬭瘯涓嬪彂Cim Message
--
Gitblit v1.9.3