From 3ce48f6dbeb537e252edb0d62c88a28796e36674 Mon Sep 17 00:00:00 2001 From: SWK <sungwk82@diteam.co.kr> Date: 월, 26 12월 2022 15:04:42 +0900 Subject: [PATCH] ongoing60 #4403 CF AOI Review TACT 지연 개선 1. 신호 출력 방식 재개선 - 유지 시간이 없는 신호는 바로 출력 진행하도록 변경 2. 불필요 Delay 제거 및 시퀀스 변경 - 얼라인 측정 종료 처리 간 제어 신호 먼저 출력 후 카메라 Stop으로 변경 - 물류 정보 읽기 처리 후 1000ms Delay 삭제 - 얼라인 측정 시작(카메라 Live Start) 후 Delay 300ms -> 100ms(이미지 들어오는 시간 확보 필요) - ReadRawFile 처리 시작 전 500ms Delay 삭제 - Path Scheduling 완료 후 Review Ready 신호 출력 전 1000ms Delay 삭제 3. 버그 수정 - 이미지 저장 경로 생성 간 예외 처리 부분 버그 수정 4. 로그 시간 출력 불합리 개선 - 로그 시간이 파일 출력 시점으로 작성되어 로그 스래드 지연 시 시간이 맞지 않는 불합리 있음 - 로그 시간은 로그 발생 시점에 시간 저장, 해당 시간 이용하여 파일에 기록하도록 변경 --- ReviewSystem/CHReviewRecipe/Rcp_RsReviewManager.cpp | 44 +++++++++++++++++++++++++++++--------------- 1 files changed, 29 insertions(+), 15 deletions(-) diff --git a/ReviewSystem/CHReviewRecipe/Rcp_RsReviewManager.cpp b/ReviewSystem/CHReviewRecipe/Rcp_RsReviewManager.cpp index 0319682..8159f88 100644 --- a/ReviewSystem/CHReviewRecipe/Rcp_RsReviewManager.cpp +++ b/ReviewSystem/CHReviewRecipe/Rcp_RsReviewManager.cpp @@ -9,7 +9,7 @@ { } -void CRcp_RsReviewManager::SetFlanFile(CMacroFile& macroFile)//0117 공유메모리 플랜 +void CRcp_RsReviewManager::SetFlanFile(CMacroFile& macroFile)//0117 占쏙옙占쏙옙占쌨몌옙 占시뤄옙 { int nPlanIdx, nSlotIdx, nLightIdx, nAFMRecipeIdx, nUserDefectIdx, nReflowParameterIdx, nLightIdxWsi, nAFMRecipeIdxWsi; int nPlanCount, nLightCount, nAFMRecipeCount, nUserDefectCount, nLightCountWsi, nAFMRecipeCountWsi; @@ -120,8 +120,11 @@ const CRcpPriorityInfo *pRcpPriorityInfo = m_rsRcpReviewInfo.GetRcpPriorityInfo(nPriorityIdx); if (pRcpPriorityInfo==NULL) continue; - strItem.Format(_T("RCP_REVIEW_PRIORITY_OPTIC_DATA_%02d"), nPriorityIdx); - macroFile.SetItem(strItem, pRcpPriorityInfo->GetPriorityOpticData()); + /* strItem.Format(_T("RCP_REVIEW_PRIORITY_OPTIC_DATA_%02d"), nPriorityIdx); + macroFile.SetItem(strItem, pRcpPriorityInfo->GetPriorityOpticData());*/ + strItem.Format(_T("RCP_REVIEW_PRIORITY_DEFECTCODE_DATA_%02d"), nPriorityIdx); + macroFile.SetItem(strItem, pRcpPriorityInfo->GetPriorityDefectCode()); + strItem.Format(_T("RCP_REVIEW_PRIORITY_USE_SIZEOPTION_%02d"), nPriorityIdx); macroFile.SetItem(strItem, pRcpPriorityInfo->GetPriorityDefectSizeOption()); @@ -187,7 +190,7 @@ strItem.Format(_T("RCP_REVIEW_DEFOCUS_VALUE")); macroFile.SetItem(strItem, m_rsRcpReviewInfo.GetDefocusValue()); - // wsi 우선순위 + // wsi 占쎌선占쏙옙占쏙옙 // Priority int nWsiPriorityCount = m_rsRcpReviewInfo.GetRcpWsiPriorityInfoCount(); strItem.Format(_T("RCP_WSI_PRIORITY_COUNT")); @@ -198,8 +201,11 @@ const CRcpPriorityInfo *pRcpPriorityInfo = m_rsRcpReviewInfo.GetRcpWsiPriorityInfo(nPriorityIdx); if (pRcpPriorityInfo==NULL) continue; - strItem.Format(_T("RCP_WSI_PRIORITY_DEFECT_TYPE_%02d"), nPriorityIdx); - macroFile.SetItem(strItem, pRcpPriorityInfo->GetPriorityOpticData()); + //strItem.Format(_T("RCP_WSI_PRIORITY_DEFECT_TYPE_%02d"), nPriorityIdx); + //macroFile.SetItem(strItem, pRcpPriorityInfo->GetPriorityOpticData()); + + strItem.Format(_T("RCP_WSI_PRIORITY_DEFECTCODE_DATA_%02d"), nPriorityIdx);//20210608 + macroFile.SetItem(strItem, pRcpPriorityInfo->GetPriorityDefectCode()); strItem.Format(_T("RCP_WSI_PRIORITY_USE_SIZEOPTION_%02d"), nPriorityIdx); macroFile.SetItem(strItem, pRcpPriorityInfo->GetPriorityDefectSizeOption()); @@ -763,11 +769,14 @@ { CRcpPriorityInfo* pRcpPriorityInfo = m_rsRcpReviewInfo.GetRcpPriorityInfo(nPriorityIdx); if(pRcpPriorityInfo == NULL) continue; - + CString strData = _T(""); int nData = 0; - strItem.Format(_T("RCP_REVIEW_PRIORITY_OPTIC_DATA_%02d"), nPriorityIdx); + /*strItem.Format(_T("RCP_REVIEW_PRIORITY_OPTIC_DATA_%02d"), nPriorityIdx); //210608 macroFile.GetItem(strItem, nData); - pRcpPriorityInfo->SetPriorityOpticData(nData); + pRcpPriorityInfo->SetPriorityOpticData(nData);*/ + strItem.Format(_T("RCP_REVIEW_PRIORITY_DEFECTCODE_DATA_%02d"), nPriorityIdx); //210608 + macroFile.GetItem(strItem, strData); + pRcpPriorityInfo->SetPriorityDefectCode(strData); strItem.Format(_T("RCP_REVIEW_PRIORITY_USE_SIZEOPTION_%02d"), nPriorityIdx); macroFile.GetItem(strItem, nData); @@ -858,11 +867,14 @@ { CRcpPriorityInfo* pRcpPriorityInfo = m_rsRcpReviewInfo.GetRcpWsiPriorityInfo(nPriorityIdx); if(pRcpPriorityInfo == NULL) continue; - + CString strData = _T(""); int nData = 0; - strItem.Format(_T("RCP_WSI_PRIORITY_DEFECT_TYPE_%02d"), nPriorityIdx); + /*strItem.Format(_T("RCP_WSI_PRIORITY_DEFECT_TYPE_%02d"), nPriorityIdx); macroFile.GetItem(strItem, nData); - pRcpPriorityInfo->SetPriorityOpticData(nData); + pRcpPriorityInfo->SetPriorityOpticData(nData);*/ + strItem.Format(_T("RCP_WSI_PRIORITY_DEFECTCODE_DATA_%02d"), nPriorityIdx); //210608 + macroFile.GetItem(strItem, strData); + pRcpPriorityInfo->SetPriorityDefectCode(strData); strItem.Format(_T("RCP_WSI_PRIORITY_USE_SIZEOPTION_%02d"), nPriorityIdx); macroFile.GetItem(strItem, nData); @@ -1108,9 +1120,11 @@ macroFile.GetItem(strItem, nData); pScheduleInfo->SetMaxPointCount(nData); - strItem.Format(_T("RCP_REVIEW_SINGLE_GANRTY_PATH")); - macroFile.GetItem(strItem, nData); - pScheduleInfo->SetSingleGantryPath(nData); + /*< LYW 20220610 - #4185 Delete Start >*/ +// strItem.Format(_T("RCP_REVIEW_SINGLE_GANRTY_PATH")); +// macroFile.GetItem(strItem, nData); +// pScheduleInfo->SetSingleGantryPath(nData); + /*< LYW 20220610 - #4185 Delete End >*/ strItem.Format(_T("RCP_REVIEW_MAX_WSI_POINT_COUNT")); -- Gitblit v1.9.3