Ongoing90 #4185 CF AOI Review OneGantryMode 개선
1. OneGantry모드를 리뷰 레시피셋팅이 아닌 제어에서 설정 할 수 있도록 수정
2. 레시피에디터 겐트리 모드 셋팅 삭제
| | |
| | | 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")); |
| | |
| | | |
| | | } |
| | | |
| | | BOOL CSignalControl::ReadData(const CString strAddr, int BitPosition, int nSize, int& nData) |
| | | { |
| | | return TRUE; |
| | | } |
| | | |
| | | void CSignalControl::IST2P_RunThreadProcess(const CSignalData& signalData) |
| | | { |
| | | switch(signalData.nSignalType) |
| | |
| | | return TRUE; |
| | | } |
| | | |
| | | /*< LYW 20220610 - #4185 ADD Start >*/ |
| | | BOOL CSignalControl_DitSharedMemorySync::ReadData(const CString strAddr, int BitPosition, int nSize, int& nData) |
| | | { |
| | | if (m_pMemStartAddr == NULL) return FALSE; |
| | | |
| | | int nAddress = _ttoi(strAddr); |
| | | |
| | | // read value |
| | | int TempData = 0; |
| | | memcpy(&TempData, m_pMemStartAddr + nAddress, sizeof(int)*nSize); |
| | | |
| | | TempData = TempData >> BitPosition; |
| | | |
| | | nData = TempData & 1; |
| | | return TRUE; |
| | | } |
| | | /*< LYW 20220610 - #4185 ADD End >*/ |
| | | |
| | | BOOL CSignalControl_DitSharedMemorySync::WriteData(const CString strAddr, int nSize, CString strData) |
| | | { |
| | | if(m_pMemStartAddr == NULL) return FALSE; |
| | |
| | | PUSHBUTTON "ChangeRCP",IDC_BUTTON4,322,41,50,14 |
| | | EDITTEXT IDC_EDIT_RCP_REFLOW_PIXEL_SCALE,221,145,32,12,ES_CENTER | ES_AUTOHSCROLL |
| | | LTEXT "Pixel Scale",IDC_STATIC,184,147,34,8 |
| | | GROUPBOX "GantryMode",IDC_STATIC,264,291,54,46 |
| | | CONTROL "All Gantry",IDC_RADIO_GANTRY_MODE_1,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,266,301,52,9 |
| | | CONTROL "Left Gantry",IDC_RADIO_GANTRY_MODE_2,"Button",BS_AUTORADIOBUTTON,266,312,52,9 |
| | | CONTROL "Right Gantry",IDC_RADIO_GANTRY_MODE_3,"Button",BS_AUTORADIOBUTTON,266,323,52,9 |
| | | GROUPBOX "GantryMode",IDC_STATIC,264,291,54,46,NOT WS_VISIBLE |
| | | CONTROL "All Gantry",IDC_RADIO_GANTRY_MODE_1,"Button",BS_AUTORADIOBUTTON | NOT WS_VISIBLE | WS_GROUP | WS_TABSTOP,266,301,52,9 |
| | | CONTROL "Left Gantry",IDC_RADIO_GANTRY_MODE_2,"Button",BS_AUTORADIOBUTTON | NOT WS_VISIBLE,266,312,52,9 |
| | | CONTROL "Right Gantry",IDC_RADIO_GANTRY_MODE_3,"Button",BS_AUTORADIOBUTTON | NOT WS_VISIBLE,266,323,52,9 |
| | | END |
| | | |
| | | IDD_DIALOG_REVIEW_RCP_EDITOR_MEASURE DIALOGEX 0, 0, 379, 526 |
| | |
| | | } |
| | | |
| | | m_pSP2P->ISP2P_DisplayMessage(_T("[Glass Loading] Current Apply Recipe Name : %s"), strRecipefile); |
| | | |
| | | /*< LYW 20220610 - #4185 ADD Start >*/ |
| | | CheckGantryMode(); |
| | | /*< LYW 20220610 - #4185 ADD End >*/ |
| | | |
| | | // recipe data apply |
| | | if(ApplyRecipeDataToGlassResult(pGlassResult)==FALSE) |
| | |
| | | { |
| | | int XAddr = pMotorControl->GetGantryCollisionXAddr(pModuleStatus->GetGantryIndex()); |
| | | g_pLog->DisplayMessage(_T("[Collision Position Set Fail] %d Module, Addr: %d, PosX: %.3lfmm"), nModuleIdx, XAddr, dCollisionPosX); |
| | | return 0; |
| | | /*< LYW 20220610 - #4185 Delete Start >*/ |
| | | //return 0; |
| | | /*< LYW 20220610 - #4185 Delete End >*/ |
| | | } |
| | | |
| | | } |
| | |
| | | { |
| | | int XAddr = pMotorControl->GetGantryCollisionXAddr(pModuleStatus->GetGantryIndex()); |
| | | g_pLog->DisplayMessage(_T("[Collision Position Set Fail] %d Module, Addr: %d, PosX: %.3lfmm"), nModuleIdx, XAddr, dCollisionPosX); |
| | | return 0; |
| | | /*< LYW 20220610 - #4185 Delete Start >*/ |
| | | //return 0; |
| | | /*< LYW 20220610 - #4185 Delete End >*/ |
| | | } |
| | | |
| | | } |
| | |
| | | { |
| | | int XAddr = pMotorControl->GetGantryCollisionXAddr(pModuleStatus->GetGantryIndex()); |
| | | g_pLog->DisplayMessage(_T("[Collision Position Set Fail] %d Module, Addr: %d, PosX: %.3lfmm"), nModuleIdx, XAddr, dCollisionPosX); |
| | | return 0; |
| | | /*< LYW 20220610 - #4185 Delete Start >*/ |
| | | //return 0; |
| | | /*< LYW 20220610 - #4185 Delete End >*/ |
| | | } |
| | | } |
| | | |
| | |
| | | { |
| | | int XAddr = pMotorControl->GetGantryCollisionXAddr(pModuleStatus->GetGantryIndex()); |
| | | g_pLog->DisplayMessage(_T("[Collision Position Set Fail] %d Module, Addr: %d, PosX: %.3lfmm"), nModuleIdx, XAddr, dCollisionPosX); |
| | | return 0; |
| | | /*< LYW 20220610 - #4185 Delete Start >*/ |
| | | //return 0; |
| | | /*< LYW 20220610 - #4185 Delete End >*/ |
| | | } |
| | | |
| | | } |
| | |
| | | int XAddr = pMotorControl->GetGantryCollisionXAddr(pModuleStatus->GetGantryIndex()); |
| | | g_pLog->DisplayMessage(_T("[Review_CollisionPos] %d Module, Addr: %d, PosX: %.3lf mm"), nModuleIdx, XAddr, dCollisionPosX); |
| | | |
| | | ///pGlassResult->SetCollisionXPos(nModuleIdx, dCollisionPosX); |
| | | //pGlassResult->SetCollisionXPos(nModuleIdx, dCollisionPosX); |
| | | } |
| | | else |
| | | { |
| | | int XAddr = pMotorControl->GetGantryCollisionXAddr(pModuleStatus->GetGantryIndex()); |
| | | g_pLog->DisplayMessage(_T("[Collision Position Set Fail] %d Module, Addr: %d, PosX: %.3lfmm"), nModuleIdx, XAddr, dCollisionPosX); |
| | | return 0; |
| | | /*< LYW 20220610 - #4185 Delete Start >*/ |
| | | //return 0; |
| | | /*< LYW 20220610 - #4185 Delete End >*/ |
| | | } |
| | | // get result index |
| | | int nStartIdx = pWsiMultiShotResult->GetStartSReviewResultIndex(); |
| | |
| | | } |
| | | } |
| | | |
| | | /*< LYW 20220610 - #4185 ADD Start >*/ |
| | | void CSequenceProcessor_CPJT::CheckGantryMode() |
| | | { |
| | | CSignalControl* pSignalControl = m_pSP2P->ISP2P_GetSignalControl(); |
| | | if (pSignalControl == NULL) m_pSP2P->ISP2P_DisplayMessage(_T("[CheckGantryMode] SignalControl is NULL")); |
| | | if (pSignalControl->IsConnected() == FALSE) m_pSP2P->ISP2P_DisplayMessage(_T("[CheckGantryMode] SignalControl is Not Connect")); |
| | | |
| | | int LeftGantryUse = 0; |
| | | int RightGantryUse = 0; |
| | | |
| | | pSignalControl->ReadData(_T("10003"), 1, 1, LeftGantryUse); |
| | | pSignalControl->ReadData(_T("10003"), 2, 1, RightGantryUse); |
| | | |
| | | if (LeftGantryUse == 1 && RightGantryUse == 0) |
| | | m_pSP2P->ISP2P_Recipe_GetRsRcpReviewInfo()->GetRcpSchedulingInfo()->SetSingleGantryPath(1); |
| | | else if (LeftGantryUse == 0 && RightGantryUse == 1) |
| | | m_pSP2P->ISP2P_Recipe_GetRsRcpReviewInfo()->GetRcpSchedulingInfo()->SetSingleGantryPath(2); |
| | | else |
| | | m_pSP2P->ISP2P_Recipe_GetRsRcpReviewInfo()->GetRcpSchedulingInfo()->SetSingleGantryPath(0); |
| | | |
| | | m_pSP2P->ISP2P_DisplayMessage(_T("[CheckGantryMode] GantryMode LeftBit = %d, RightBit = %d"), LeftGantryUse, RightGantryUse); |
| | | } |
| | | /*< LYW 20220610 - #4185 ADD End >*/ |
| | | |
| | | BOOL CSequenceProcessor_CPJT::UpdateMemoryUserReflowPlanInfo(CDitGlassRawClient* pDitSharedGlassRaw) |
| | | { |
| | | CRsRcpReviewInfo* pRecipeinfo = m_pSP2P->ISP2P_Recipe_GetRsRcpReviewInfo(); |
| | |
| | | |
| | | // 190130 SJB, Motor AutoGo Count Remove |
| | | void RemoveMotorCount(); |
| | | void CheckGantryMode(); |
| | | |
| | | // 190130 SJB, User,Reflow Plan Memory Update |
| | | BOOL UpdateMemoryUserReflowPlanInfo(CDitGlassRawClient* pDitSharedGlassRaw); |
| | |
| | | virtual BOOL Read_SendSignal(int nAddrIndex, WORD& dwValue) = 0; |
| | | virtual BOOL ReadData(const CString strAddr, int nSize, CString& strData) = 0; |
| | | virtual BOOL ReadData(const CString strAddr, int nSize, char* pData) = 0; |
| | | /*< LYW 20220610 - #4185 ADD Start >*/ |
| | | virtual BOOL ReadData(const CString strAddr, int BitPosition, int nSize, int& nData); |
| | | /*< LYW 20220610 - #4185 ADD End >*/ |
| | | virtual BOOL WriteWordData(const CString strAddr, int nSize, int nData) = 0; |
| | | virtual BOOL WriteData(const CString strAddr, int nSize, CString strData) = 0; |
| | | |
| | |
| | | virtual BOOL Read_SendSignal(int nAddrIndex, WORD& dwValue); |
| | | virtual BOOL ReadData(const CString strAddr, int nSize, CString& strData); |
| | | virtual BOOL ReadData(const CString strAddr, int nSize, char* pData); |
| | | /*< LYW 20220610 - #4185 ADD Start >*/ |
| | | virtual BOOL ReadData(const CString strAddr, int BitPosition, int nSize, int& nData); |
| | | /*< LYW 20220610 - #4185 ADD End >*/ |
| | | virtual BOOL WriteWordData(const CString strAddr, int nSize, int nData); |
| | | virtual BOOL WriteData(const CString strAddr, int nSize, CString strData); |
| | | |