From bd13fa3f9396f1f681759f4623c55d5f91d74a9c Mon Sep 17 00:00:00 2001 From: LYW <leeyeanwoo@diteam.co.kr> Date: 목, 29 7월 2021 11:42:19 +0900 Subject: [PATCH] Ongoing90 #3524 CF AOI Review 디포커스 알람 추가 및 FDC 보고 방식 개선 --- ReviewSystem/ReviewSystem/ReviewProcessor_CPJT.cpp | 75 +++++++++++++++++++++++++++++++++++++ 1 files changed, 74 insertions(+), 1 deletions(-) diff --git a/ReviewSystem/ReviewSystem/ReviewProcessor_CPJT.cpp b/ReviewSystem/ReviewSystem/ReviewProcessor_CPJT.cpp index 74cbfd8..3c4fe43 100644 --- a/ReviewSystem/ReviewSystem/ReviewProcessor_CPJT.cpp +++ b/ReviewSystem/ReviewSystem/ReviewProcessor_CPJT.cpp @@ -5,6 +5,7 @@ #include "CameraControlReview.h" #include "CHImageControls/CHImageProcess.h" #include "CHMotorControls/MotorControl.h" +#include "CHSignalControls/SignalControl.h" #include "CHEdgeTriangle/EdgeTriangle.h" #include "CHEdgeTriangle/RecipeManager.h" @@ -359,7 +360,6 @@ } LeaveCriticalSection(&m_csUserCriticalSection); -. m_pRP2P->IRP2P_UpdateReviewResult(nModuleIndex, pGlassResult); return; @@ -1224,15 +1224,33 @@ if (pReviewResult->nModuleIdx == 0 && m_pRP2P->IRP2P_GetFirstReviewLeft()) { + const CSignalControlInfo* pSignalInfo = m_pRP2P->IRP2P_GetReviewSignalinfo(); + int nDefocusValueMin = pSignalInfo->GetDefocusValueMin(); + int nDefocusValueMax = pSignalInfo->GetDefocusValueMax(); + m_pRP2P->IRP2P_GetCurrentGlassResult()->nReview00ImageContrast = dFocusValue; m_pRP2P->IRP2P_SetFirstReviewLeft(FALSE); m_pRP2P->IRP2P_DisplayMessage(_T("FirstReviewLeft FDC FocusValue = %.2f "), dFocusValue); + + if (dFocusValue < nDefocusValueMin && dFocusValue > nDefocusValueMax) + { + m_pRP2P->IRP2P_GetSequenceProcessor()->SendSignalToSignalControl(0, 3, 1000); + } } else if(pReviewResult->nModuleIdx == 1 && m_pRP2P->IRP2P_GetFirstReviewRight()) { + const CSignalControlInfo* pSignalInfo = m_pRP2P->IRP2P_GetReviewSignalinfo(); + int nDefocusValueMin = pSignalInfo->GetDefocusValueMin(); + int nDefocusValueMax = pSignalInfo->GetDefocusValueMax(); + m_pRP2P->IRP2P_GetCurrentGlassResult()->nReview01ImageContrast = dFocusValue; m_pRP2P->IRP2P_SetFirstReviewRight(FALSE); m_pRP2P->IRP2P_DisplayMessage(_T("FirstReviewRight FDC FocusValue = %.2f "), dFocusValue); + + if (dFocusValue < nDefocusValueMin && dFocusValue > nDefocusValueMax) + { + m_pRP2P->IRP2P_GetSequenceProcessor()->SendSignalToSignalControl(0, 3, 1000); + } } } } @@ -1256,15 +1274,34 @@ if (pReviewResult->nModuleIdx == 0 && m_pRP2P->IRP2P_GetFirstReviewLeft()) { + const CSignalControlInfo* pSignalInfo = m_pRP2P->IRP2P_GetReviewSignalinfo(); + int nDefocusValueMin = pSignalInfo->GetDefocusValueMin(); + int nDefocusValueMax = pSignalInfo->GetDefocusValueMax(); + m_pRP2P->IRP2P_GetCurrentGlassResult()->nReview00ImageContrast = dFocusValue; m_pRP2P->IRP2P_SetFirstReviewLeft(FALSE); m_pRP2P->IRP2P_DisplayMessage(_T("FirstReviewLeft FDC FocusValue = %.2f "), dFocusValue); + + if (dFocusValue < nDefocusValueMin && dFocusValue > nDefocusValueMax) + { + m_pRP2P->IRP2P_GetSequenceProcessor()->SendSignalToSignalControl(0, 3, 1000); + } + } else if (pReviewResult->nModuleIdx == 1 && m_pRP2P->IRP2P_GetFirstReviewRight()) { + const CSignalControlInfo* pSignalInfo = m_pRP2P->IRP2P_GetReviewSignalinfo(); + int nDefocusValueMin = pSignalInfo->GetDefocusValueMin(); + int nDefocusValueMax = pSignalInfo->GetDefocusValueMax(); + m_pRP2P->IRP2P_GetCurrentGlassResult()->nReview01ImageContrast = dFocusValue; m_pRP2P->IRP2P_SetFirstReviewRight(FALSE); m_pRP2P->IRP2P_DisplayMessage(_T("FirstReviewRight FDC FocusValue = %.2f "), dFocusValue); + + if (dFocusValue < nDefocusValueMin && dFocusValue > nDefocusValueMax) + { + m_pRP2P->IRP2P_GetSequenceProcessor()->SendSignalToSignalControl(0, 3, 1000); + } } } @@ -1371,15 +1408,33 @@ if (pReviewResult->nModuleIdx == 0 && m_pRP2P->IRP2P_GetFirstReviewLeft()) { + const CSignalControlInfo* pSignalInfo = m_pRP2P->IRP2P_GetReviewSignalinfo(); + int nDefocusValueMin = pSignalInfo->GetDefocusValueMin(); + int nDefocusValueMax = pSignalInfo->GetDefocusValueMax(); + m_pRP2P->IRP2P_GetCurrentGlassResult()->nReview00ImageContrast = dFocusValue; m_pRP2P->IRP2P_SetFirstReviewLeft(FALSE); m_pRP2P->IRP2P_DisplayMessage(_T("FirstReviewLeft FDC FocusValue = %.2f "), dFocusValue); + + if (dFocusValue < nDefocusValueMin && dFocusValue > nDefocusValueMax) + { + m_pRP2P->IRP2P_GetSequenceProcessor()->SendSignalToSignalControl(0, 3, 1000); + } } else if (pReviewResult->nModuleIdx == 1 && m_pRP2P->IRP2P_GetFirstReviewRight()) { + const CSignalControlInfo* pSignalInfo = m_pRP2P->IRP2P_GetReviewSignalinfo(); + int nDefocusValueMin = pSignalInfo->GetDefocusValueMin(); + int nDefocusValueMax = pSignalInfo->GetDefocusValueMax(); + m_pRP2P->IRP2P_GetCurrentGlassResult()->nReview01ImageContrast = dFocusValue; m_pRP2P->IRP2P_SetFirstReviewRight(FALSE); m_pRP2P->IRP2P_DisplayMessage(_T("FirstReviewRight FDC FocusValue = %.2f "), dFocusValue); + + if (dFocusValue < nDefocusValueMin && dFocusValue > nDefocusValueMax) + { + m_pRP2P->IRP2P_GetSequenceProcessor()->SendSignalToSignalControl(0, 3, 1000); + } } @@ -1424,16 +1479,34 @@ if (pReviewResult->nModuleIdx == 0 && m_pRP2P->IRP2P_GetFirstReviewLeft()) { + const CSignalControlInfo* pSignalInfo = m_pRP2P->IRP2P_GetReviewSignalinfo(); + int nDefocusValueMin = pSignalInfo->GetDefocusValueMin(); + int nDefocusValueMax = pSignalInfo->GetDefocusValueMax(); + m_pRP2P->IRP2P_GetCurrentGlassResult()->nReview00ImageContrast = dFocusValue; m_pRP2P->IRP2P_SetFirstReviewLeft(FALSE); m_pRP2P->IRP2P_DisplayMessage(_T("FirstReviewLeft FDC FocusValue = %.2f "), dFocusValue); + + if (dFocusValue < nDefocusValueMin && dFocusValue > nDefocusValueMax) + { + m_pRP2P->IRP2P_GetSequenceProcessor()->SendSignalToSignalControl(0, 3, 1000); + } } else if (pReviewResult->nModuleIdx == 1 && m_pRP2P->IRP2P_GetFirstReviewRight()) { + const CSignalControlInfo* pSignalInfo = m_pRP2P->IRP2P_GetReviewSignalinfo(); + int nDefocusValueMin = pSignalInfo->GetDefocusValueMin(); + int nDefocusValueMax = pSignalInfo->GetDefocusValueMax(); + m_pRP2P->IRP2P_GetCurrentGlassResult()->nReview01ImageContrast = dFocusValue; m_pRP2P->IRP2P_SetFirstReviewRight(FALSE); m_pRP2P->IRP2P_DisplayMessage(_T("FirstReviewRight FDC FocusValue = %.2f "), dFocusValue); + if (dFocusValue < nDefocusValueMin && dFocusValue > nDefocusValueMax) + { + m_pRP2P->IRP2P_GetSequenceProcessor()->SendSignalToSignalControl(0, 3, 1000); + } + } } //#3524_210723_LYW_CF AOI Review 디포커스 알람 추가 및 FDC 보고 방식 개선 ADD End -- Gitblit v1.9.3