//////////////////////////A6S3更新部分///////////////////////// V0.1Bb 1.九龍更新 2.修正CCD Patter 刪除功能 V0.1Ba 1.把編譯檔案移到外面硬碟 V0.1B 1.把ErrorCode 補齊 V0.1A~ 1.抽換RemoteControl 開Port 通訊層 2.新增Parser3111 為命令處理層 3.Include 的東西包到自己的資料夾中 ////////////////////Ken 更新部分//////////////////////////////// V1.0 1: Origneal Version V1.0Aa 1: 修正 Access Level登入權限,如果按下Cancel會錯誤登入Super User的權限 2: 修正 Interface 在Send Start Delay如果輸入0導致無法儲存的問題, 並且增加提示視窗 3: 修正 Run Page Tips, 提示 Catoregy 錯誤字串 4: 增加 Test Site Vacc 功能, 讓使用者可以關閉或啟動測試期間關閉 Vacuum V1.0Ab 1: Offset增加說明文件功能,說明文字檔案在\System\3111.OfNote 2: Setup Page, TrayMap Setting 變更文字為 Tray Map Setting 3: Setup Page, IO Montior 修正為 IO Monitor 4: Setup Pagem Tray Map Setting表單, 內頁標題由Input / Output Tray修改為 Tray Map Setting 5: Manaul Contact, TS Offset 表單標題增加單位 (mm) 6: Manual Contact,在Enable Manual Contact增加Test Site Direct Contact 選項,Enable後,在Manual Contact會出現 Contact模式選擇,可以選由Shuttle Input入料,或是直接放到Soaket 7: Manual Contact,在Enable Manual Contact增加Test Site Vacc功能 選項,Enable後, 在Manual Contact會出現Ts Vacc模式可以選擇, 如果關閉,那麼如果由Shuttle入料,則會關閉Vacc,避免Vacc太大聲的噪音 8: Shuttle 增加入料檢查, 當Shuttle 移動到入料區(TestSite)下方,再檢查一次Jam sensor, 避免移動的過程中IC Jam, 導致 Wrokpress 壓壞IC, TestSite Skip 會重新入料, 此ErrorCode 為 605 Shuttle Input Jam 9: Tray File 表單標題移除 List, 修改為 Tray File 10:Tray File 修改 Base File 的長度 11:在Run Page 如果在Device Setup選好TrayFile,但是還沒建立新的工單,那麼可以直接由系統模式的文字方塊 點選切換Mode 12:Test Site Remain IC可以由Debug Function用來設定該客戶是否需要啟動該功能 13:Shuttle Jam Log, 如果在Shuttle 移動到 Test Site 下方那麼就會Log, _ShuttleJam.txt V1.0Ac 1: Device Setup, TrayFile修改為Drop List, 避免內容被改到 2: 增加 Repeat Tray 功能 3: 在沒有建立工單的情況, 可以由 Run Page 的檔案資訊欄叫出Device Seup 修改 Tray File 4: 在沒有建立工單的情況, 可以由 Run Page 的檔案資訊欄叫出Repeat Tray 修改設定 5: Run Page 增加 Visual Panel 方便使用 6: Run Page 增加 Tray Stat 功能, 用來檢視, 目前 Repeat Tray 取/放的資訊 7: Run Page 增加 Tray Color 功能, 用來調整 Repeat Tray 顯示資訊, 當下Tray File的模式 V1.0Ad 1: 可透過 m.Setting.m_bCancelDoubleChkChange, 如果有改變參數, 決定離開表單要不要向使用者確認,1表示要確認 2: 增加即時讀取 Test Site Drive, Torque status(%) 功能, 接上馬達連接線, 並且在Com Port欄位設定相對應連接口 然後到 \System\3111.System 把 Enable Torque Status=1 設定為1, 那麼重開軟體, Initial 結束後, 就會開始讀取Torque 3: 修正讀取 CDriverMotorTorqueControl 產生的問題 4: Repeat Tray, Max Value, 在 Basic Setting 改為可以設定, 而非 Disable 5: 修正 Alarm Mail 解構造成關程式的 Delay 6: 修正 West 解構造成關程式偶發 Memory leak V1.0Ae 1: 修正 CWest 關執行緒的不穩定的問題 2: 修正 Repeat Tray Output Z down V1.0Af 1: 增加 Lamp Setup 功能, 可自由設定 三色指示燈的行為模式 2: 修改 Ts Counter 改為可以讓 Engineer 修改 3: 修改 Ts Counter 可以由 Run Page 打開, 並根據不同的權限, 決定可不可以清除 4: 增加 DMSG 用來紀錄開機的過程是否正確 5: 修正 Lot Done Prograss, 改為要 Handle Thread 是否被關閉 6: 修改 UpdataMainMsg, 讓 Door Disable 改變為閃爍 7: 修正 OpenCamera(int nCamID, bool bDisplayProperties, int nWidth, int nHeight), 當 Camera 全部移除時, 程式啟動造成的當機 8: 修改, 移除 CMotor 內全部的 MC8141PSetRange(pAxis->BoardID, 0, 8000000); 9: 修正, CMotor, MotorRunAway 裡面的速度, 由載入檔案速度修改為固定 10%速度, 以避免Initial ArmXY 原點不穩定 10: 修正 CThIOReadWriteRemoteIO::SetTorque(), 無法設定到 10 Volt的問題 11: 修正 Jam Rate Report 計算總數量的錯誤 12: 修正 CCameraDS::CloseCamera(), 沒有先 Detach(); , 造成解構時 return code 異常 13: 修正 InitOutputColor, 沒有載入顏色的問題 14: 新增 Arm Log Image 功能, 運轉中每次放 IC 前要取像, 每次建立一筆新的工單都會根據工單產生一份資料夾, 用來儲存檔案 ( 檔名格式 : 002_Tray1_001.jpg ( ICLocation_TrayFrom_RepeatTimes.jpg ), 資料夾格式 : yyyy_mm_dd_hhss_LotNo 15: 增加 Tray File Mode, Remote 項目 16: 增加 GDIPlus, // GDIPlus 類別, 用來轉檔 17: 修正 LoadCounter, SaveCounter 寫錯陣列的問題 18: 修改 預設不再變更 AutoSkip 的選項, 跟隨檔案紀錄 19: 修正 ThIOReadWritaRemoteIO 移除 ND_ReadBackDO 以避免開啟 HeaterOn 異常 20: 修改 Lot Information 可以選擇 TrayFile 21: 修改 Lot Done Progress 自動消失 V1.0Ag 1: 修改 _InitialInPosRange 由 1 修改為 2, 避免Initial 容易 Timeout 2: 修改 MotorRunAway, 修改下命令前的等待時間, 避免 pulse 移動前造成誤判 3: 修改 MotorRunAway, 修改 確認到位沒有誤判 V1.0Ah 1: 修改 Manual Contact, Torque 修改為 Contact Force 2: 修改 Summary Report 表單, 標題由 Summary Report List 修改為 Summary Report 3: 修改 Offset 表單, Input(Place), Ouput(Pick) 修改為 Place, Pick, 避免客戶混淆 4: 修改 IO Monitor 表單, Rotator 內 Missing LED 修改為 Present 5: 新增 Manual Contact, 增加操作說明 6: 新增 Offset, OffsetTs 增加單位說明 7: 修改 Extend Function, 如果 Rotator 功能關閉, 則不顯示選項, 如果啟動, 則顯示選項, 以避免客戶混淆 8: 修改 各頁面表單, 如果該頁面是根據 TrayFile, 則頁面會標示為 Tray, 如果該頁面是跟隨 Machine 則頁面會標示 Machine, ex: TrayFile -> [Tray File Information], Machine -> [Machine File Information] Handler: TrayColorDef, AutoRetry, RepeatTray, TowerSetting, Motor Monitor, Alignment, TS Counter, Alarm Mail Tray: Site Setting, Yield Control, Offset, Speed, Timer, Catoregy, Offset TS 9: 移除 Simulation Setting 相關參數 10: 移除 Loop Test 相關參數 11: 增加 ErrorCode: enCodeTestSiteMoveICMissing (606 Test Site move to place, IC missing), 當 Test Site 下降去 Socket 放IC時, 則如果連續檢查到35次IO關閉,則表示IC掉落, 則會將 Test Site拉起, 然後發出Alarm, 請使用者按下 Test Site Skip 移除 掉落IC後, 繼續運轉 12: 修改 Arm Log Image, 只有啟動該功能, 才新增資料夾 13: 修改 Initial 的時候, 如果 Shuttle 已經停在 Pick/Place的位置, 則最後才回到 Home 以避免如果Initial時, 最後停的位置是 TestSite到Shuttle Pick IC, 會造成 TestSite 升到一半, 突然被拉回 Home,導致Workpress損壞 14: 修改 如果關程式, 最後停的位置是 TestSite到Shuttle Pick IC, 會造成關程式後 Shuttle 會拉住 Test Site 造成 Wrokpress 損傷 因此 發現最後停的位置是 Pick/Place位置, 則強迫設定到 Pick/Place的位置 15: 修正 Tester Setting, Interface Setting IP 顯示錯誤的問題, 新增 GetHandlerIPAddress() 取得正確IP V 1.0Ai 1: 修正 Error Code, 509 如果在 Shuttle Pick IC 的時候, 如果 Retry 會造成返回放IC ArmLog 取值錯誤, 導致 放到 -1 的錯誤位置, 已修正 V 1.0Aj 1: 增加 MoveOffnNLimit, 確保 Initial 一定會正確離開負極限 2: 修改 Arm Z Initial, 將 MotorMovetonLimt 變更為 MotorMovetonNLimt, 以確保訊號正確, 不會因為短暫極限訊號閃一下, 造成系統 Initial 異常 3: 增加 Pass/Fail 模式在Repeat Tray, 因此修改 GetRepeatTrayModeMoation(), 增加 ResetInputStatus() 增加 ErrorCode: enCodeArmOutputTray1Full (516 Tray1 Fail Full), enCodeArmOutputTray2Full (517 Tray2 Fail Full) 4: 增加 SLT Protocol 功能, 5: 增加 RemoteErrorMessage, 用來傳送 Event 事件 6: 修正 enToOutputHomeEnd, 寫入 BinLog 錯誤, 導致無法正確產生報表 7: 修正 Initial 減少單機模擬時的時間 8: 新增 InitialMissionOnTheGo(), SetRemoteCoordRequest(), GetRemoteCoordRequest(), 通知 ThArm 開始執行 Coordnation 任務 V 1.0Ak 1: 修正 SLT Protocol 永遠無法開啟成功的錯誤 2: 增加 tagRemoteCtrlFun, 用來開啟與設定相關功能 V 1.0Al 1: 修改 SLT Protocol 行為模式, 增加 SetStateErrorCtrlDone 2: 修改 SLT Protocol 的目前 baund rate 115200 -> 9600 3: 修正 SetSiteTemp 沒有限制溫度的問題, 並且把限制開為 145.00 4: 新增 UpdateYieldSetting, 避免 RunPage 的良率表格閃爍 V 1.0Am 1: 新增 SLT Protocol 命令, SetTestSiteVacc, 當測試時, 用來關閉, Test Site Vacc 2: 在 SetErrorMessage 內, Demo 模式增加 3: 增加 RepeatTrayReport 功能,在Repeat Tray模式下, 如果設定為 Both/Disable, Disable/Both, Both/Both 將會產生報表, 但是 Bin(H/W) 因為沒有根據H/W 分Bin, 因此預設值為 None V 1.0An 1: 新增 CDlgTrayMapRepeat 表單, 用來表示Repeat Tray模式下, 目前Tray Map的格式 # 增加 RepeatTray, TrayMap相關TrayMap功能,SaveTrayMapRepeat, LoadTrayMapRepeat, AddTrayMapRepeat # 增加 LotDoneClearTrayMapRepeat, 在 LotDone 時, 清除 Repeat Tray 的相關資料 # 新增 _Output_Stack_Number, m.TrayMapRepeat, 用來處理Repeat Tray相關的TrayMap資料 # 修改 CViewTrayMap 配合 RepeatTray 模式下的繪圖 # RepeatTray TrayMap 2: 在 Demo 模式下, 會啟動 RS232/TCP/IP V 1.0Ao 1: 修改 在 Demo 模式下, 會關閉 RS232/TCP/IP 2: SLT Protocol 修改 # 增加 CDriverTestInterfaceTCP (m_TesterInterfaceTcp), TCP/IP 層 # 修改 Cordnation 初始值Col,Row,Tray 的預設值由-1,轉為0 # 增加 GetBaudRate 取得 當前 BaudRate 數值 3: 修改 Initial (Page Initial) 畫面, 把把即時顯示的表單拉長, 以避免資料蓋過 4: 修改 Interface Setting, TCP/IP 的切換, 以避免顯示斷行 5: 新增 User Page 的 SLT Protocol Dialog, 包括Basic Setting用來顯示設定, Monitor用來即時顯示訊息, Help 用來顯示目前的指令集 V 1.0Ap 1: SLT Protocol 修改 # 增加 InitTestInterfaceExcute, 將 ProcessCommand, 獨立出來處理 V1.0Aq 1: SLT Protocol 修改 # 修改 SETCOORDNATESRETURN, <<SETCOORDNATIONRETURN: DONE>> 修改為 <<SETCOORDINATESRETURN: DONE>> V1.0Ar 1: SLT Protocol 修正 # 修正 ReadTCP, 因為未分離 TCP, Serial 資料層造成解碼錯誤 V1.0As 1: 增加 Repeat Tray Yield Rate V1.0At 1: 在 Setup Page, TrayMapSetting, 如果在啟動Repeat Tray的情況下 啟動 TrayMapSetting, 會轉為 Repeat Tray 2: