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/ReviewSystemSetting/DlgSignal.cpp | 13 +++++++++++++ 1 files changed, 13 insertions(+), 0 deletions(-) diff --git a/ReviewSystem/ReviewSystemSetting/DlgSignal.cpp b/ReviewSystem/ReviewSystemSetting/DlgSignal.cpp index d70aaba..4ad556a 100644 --- a/ReviewSystem/ReviewSystemSetting/DlgSignal.cpp +++ b/ReviewSystem/ReviewSystemSetting/DlgSignal.cpp @@ -25,6 +25,8 @@ , m_nSignalReviewStartDelay(0) , m_nSignalReviewEndDelay(0) , m_nSignalUnloadingDelay(0) + , m_nSignalDefocusValueMin(0) + , m_nSignalDefocusValueMax(0) { m_pDlgSignalReadData = NULL; m_pDlgSignalWriteData = NULL; @@ -95,6 +97,8 @@ DDX_Text(pDX, IDC_EDIT_SYS_SIGNAL_REVIEWSTART_DELAY, m_nSignalReviewStartDelay); DDX_Text(pDX, IDC_EDIT_SYS_SIGNAL_REVIEWEND_DELAY, m_nSignalReviewEndDelay); DDX_Text(pDX, IDC_EDIT_SYS_SIGNAL_UNLOADING_DELAY, m_nSignalUnloadingDelay); + DDX_Text(pDX, IDC_EDIT_DEFOCUSVALUE_MIN, m_nSignalDefocusValueMin); + DDX_Text(pDX, IDC_EDIT_DEFOCUSVALUE_MAX, m_nSignalDefocusValueMax); } @@ -114,6 +118,7 @@ // TODO: 여기에 추가 초기화 작업을 추가합니다. int nSignalConnectionType = -1, nSignalPort = -1, nSignalPeriodTime = -1, nTimerTime = 0, nTotalTime = 0; int nLoadingDelay = 0, nAlignStartDelay = 0, nAlignEndDelay = 0, nReviewStartDelay = 0, nReviewEndDelay = 0, nUnloadingDelay = 0; + int nDefocusValueMin = 0, nDefocusValueMax = 0; CString strTemp = _T(""), strSignalReceiveAddress = _T(""), strSignalSendAddress = _T(""); CReviewSystemSettingDlg* pDlg = (CReviewSystemSettingDlg*)AfxGetMainWnd(); @@ -127,6 +132,8 @@ // strSignalReceiveAddress = pSignalInfo->GetReadSignalAddress(0); // strSignalSendAddress = pSignalInfo->GetSendSignalAddress(0); nSignalPeriodTime = pSignalInfo->GetMSPeriod(); + nDefocusValueMin = pSignalInfo->GetDefocusValueMin(); + nDefocusValueMax = pSignalInfo->GetDefocusValueMax(); nLoadingDelay = pSignalInfo->GetMSLoadingSignalDelay(); nAlignStartDelay = pSignalInfo->GetMSAlignStartSignalDelay(); nAlignEndDelay = pSignalInfo->GetMSAlignEndSignalDelay(); @@ -180,6 +187,8 @@ m_strSendAddress = strSignalSendAddress; m_nSignalPeriod = nSignalPeriodTime; + m_nSignalDefocusValueMin = nDefocusValueMin; + m_nSignalDefocusValueMax = nDefocusValueMax; m_nSignalLodingDelay = nLoadingDelay; m_nSignalAlignStartDelay = nAlignStartDelay; m_nSignalAlignEndDelay = nAlignEndDelay; @@ -275,6 +284,8 @@ m_nSignalReviewStartDelay = 0; m_nSignalReviewEndDelay = 0; m_nSignalUnloadingDelay = 0; + m_nSignalDefocusValueMin = 0; + m_nSignalDefocusValueMax = 0; m_nTimerTime = 0; m_nTotalTime = 0; @@ -298,6 +309,8 @@ pSignalInfo->SetReadSignalAddress(m_strReceiveAddress); pSignalInfo->SetSendSignalAddress(m_strSendAddress); pSignalInfo->SetMSPeriod(m_nSignalPeriod); + pSignalInfo->SetDefocusValueMin(m_nSignalDefocusValueMin); + pSignalInfo->SetDefocusValueMax(m_nSignalDefocusValueMax); pSignalInfo->SetMSLodingSignalDelay(m_nSignalLodingDelay); pSignalInfo->SetMSAlignStartSignalDelay(m_nSignalAlignStartDelay); pSignalInfo->SetMSAlignEndSignalDelay(m_nSignalAlignEndDelay); -- Gitblit v1.9.3