public void TestMethod1()//OK { try { using (var halContext = new MacHalContext("UserData/Manifest/Manifest.xml.real")) { halContext.MvaCfBootup(); halContext.MvaCfLoad(); var unv = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; var lpa = halContext.HalDevices[EnumMacDeviceId.loadportA_assembly.ToString()] as MacHalLoadPort; var lpb = halContext.HalDevices[EnumMacDeviceId.loadportB_assembly.ToString()] as MacHalLoadPort; unv.HalConnect();//需要先將MacHalUniversal建立連線,各Assembly的Hal建立連線時,才能讓PLC的連線成功 lpb.HalConnect(); lpa.HalConnect(); //1.POD內有光罩, 且放置於Load Port A stage上 //2~5 Load Poat A Dock lpa.Dock(); //6. POD內有光罩, 且放置於Load Port B stage上 //7~10 Load Poat B Dock lpb.Dock(); } } catch (Exception ex) { throw ex; } }
public void TestReadParameter() { try { using (var halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real")) { halContext.MvaCfLoad(); var mt = halContext.HalDevices[EnumMacDeviceId.masktransfer_assembly.ToString()] as MacHalMaskTransfer; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; uni.HalConnect(); mt.HalConnect(); mt.ReadClampTactileLimit(); mt.ReadLevelLimit(); mt.ReadSixAxisSensorUpperLimit(); mt.ReadSixAxisSensorLowerLimit(); mt.ReadSpeedVar(); mt.ReadStaticElecLimit(); } } catch (Exception ex) { throw ex; } }
public void LoadPortBasicTest() { try { using (var halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real")) { halContext.MvaCfLoad(); var loportAssembly = halContext.HalDevices[EnumMacDeviceId.loadportA_assembly.ToString()] as MacHalLoadPort; var testLoadPort = loportAssembly.Hals[EnumMacDeviceId.loadport_1.ToString()] as MacHalLoadPortGudeng; var connected = testLoadPort.HalConnect(); if (connected == 0) { // vs 2013 //throw new Exception($"無法連接到 {testLoadPort.DeviceIndex} "); throw new Exception("無法連接到 " + testLoadPort.DeviceId); } // BindLoadPortEvent(loadport1); BindLoadPortEvent(testLoadPort); Repeat(); } } catch (Exception ex) { Debug.WriteLine(ex.Message); } }
public void LoadPortUnDock() { MacHalContext halContext = null; MacHalLoadPort loportAssembly = null; MacHalLoadPortGudeng TestLoadport = null; try { halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real"); halContext.MvaCfLoad(); loportAssembly = halContext.HalDevices[EnumMacDeviceId.loadportA_assembly.ToString()] as MacHalLoadPort; TestLoadport = loportAssembly.Hals[EnumMacDeviceId.loadport_1.ToString()] as MacHalLoadPortGudeng; TestLoadport.HalConnect(); BindLoadPortEvent(TestLoadport); TestLoadport.CommandUndockRequest(); Repeat(); } catch (Exception ex) { MvaLog.WarnNs(this, ex); } finally { if (halContext != null) { halContext.Dispose(); } } }
public void TestReadComponentValue() { try { using (var halContext = new MacHalContext("UserData/Manifest/Manifest.xml.real")) { halContext.MvaCfBootup(); halContext.MvaCfLoad(); var unv = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; var os = halContext.HalDevices[EnumMacDeviceId.openstage_assembly.ToString()] as MacHalOpenStage; unv.HalConnect(); os.HalConnect(); os.SetRobotIntrude(true, false); os.SetRobotIntrude(false, true); os.SetRobotIntrude(false, false); os.ReadClampStatus(); os.ReadSortClampPosition(); os.ReadSliderPosition(); os.ReadCoverPos(); os.ReadCoverSensor(); os.ReadBoxDeform(); os.ReadWeightOnStage(); os.ReadBoxExist(); os.ReadOSStatus(); os.ReadRobotIntruded(); os.ReadParticleCount(); } } catch (Exception ex) { throw ex; } }
public void TestMethod1() { using (var halContext = new MacHalContext("UserData/Manifest/Manifest.xml.real")) { halContext.MvaCfBootup(); halContext.MvaCfLoad(); var ic = halContext.HalDevices[EnumMacDeviceId.inspectionch_assembly.ToString()] as MacHalInspectionCh; var cc = halContext.HalDevices[EnumMacDeviceId.clean_assembly.ToString()] as MacHalCleanCh; var lpa = halContext.HalDevices[EnumMacDeviceId.loadportA_assembly.ToString()] as MacHalLoadPort; var lpb = halContext.HalDevices[EnumMacDeviceId.loadportB_assembly.ToString()] as MacHalLoadPort; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; var os = halContext.HalDevices[EnumMacDeviceId.openstage_assembly.ToString()] as MacHalOpenStage; var bt = halContext.HalDevices[EnumMacDeviceId.boxtransfer_assembly.ToString()] as MacHalBoxTransfer; uni.HalConnect(); ic.HalConnect(); lpa.HalConnect(); lpb.HalConnect(); cc.HalConnect(); os.HalConnect(); bt.HalConnect(); lpa.LightForLoadPortASetValue(200); //bar 0~255 lpb.LightForLoadPortBSetValue(200); //bar 0~255 lpa.LightForBarcodeReaderSetValue(200); //bar 0~255 cc.LightForInspSetValue(200); //bar 0~999 os.LightForFrontBarDfsSetValue(200); //bar 0~255 os.LightForSideBarDfsSetValue(200); //bar 0~255 os.LightForTopBarDfsSetValue(200); //bar 0~255 bt.LightForGripperSetValue(200); //bar 0~255 ic.LightForBackLineSetValue(200); //bar 0~255(小線光-後) ic.LightForLeftLineSetValue(200); //bar 0~255(小線光-左) ic.LightForTopCrlDfsSetValue(200); //crl 0~255(小環光) ic.LightForTopCrlInspSetValue(200); //crl 0~255(大環光) ic.LightForLeftBarSetValue(200); //spot 0~999(大線光-左) ic.LightForRightBarSetValue(200); //spot 0~999(大線光-右) lpa.LightForLoadPortASetValue(0); lpb.LightForLoadPortBSetValue(0); lpa.LightForBarcodeReaderSetValue(0); cc.LightForInspSetValue(0); os.LightForFrontBarDfsSetValue(0); os.LightForSideBarDfsSetValue(0); os.LightForTopBarDfsSetValue(0); bt.LightForGripperSetValue(0); ic.LightForBackLineSetValue(0); ic.LightForLeftLineSetValue(0); ic.LightForTopCrlDfsSetValue(0); ic.LightForTopCrlInspSetValue(0); ic.LightForLeftBarSetValue(0); ic.LightForRightBarSetValue(0); } }
public void TestReadParameter() { using (var halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real")) { halContext.MvaCfLoad(); var unv = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; } }
public void TestReadComponentValue() { try { using (var halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real")) { halContext.MvaCfLoad(); var unv = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; if (unv.HalConnect() != 0) { System.Diagnostics.Debug.WriteLine("Connect Fail"); } unv.ReadCoverFanSpeed(); unv.ReadPowerON(); unv.ReadBCP_Maintenance(); unv.ReadCB_Maintenance(); unv.ReadBCP_EMO(); unv.ReadCB_EMO(); unv.ReadLP1_EMO(); unv.ReadLP2_EMO(); unv.ReadBCP_Door(); unv.ReadLP1_Door(); unv.ReadLP2_Door(); unv.ReadBCP_Smoke(); unv.ReadAlarm_General(); unv.ReadAlarm_Cabinet(); unv.ReadAlarm_CleanCh(); unv.ReadAlarm_BTRobot(); unv.ReadAlarm_MTRobot(); unv.ReadAlarm_OpenStage(); unv.ReadAlarm_InspCh(); unv.ReadAlarm_LoadPort(); unv.ReadAlarm_CoverFan(); unv.ReadAlarm_MTClampInsp(); unv.ReadWarning_General(); unv.ReadWarning_Cabinet(); unv.ReadWarning_CleanCh(); unv.ReadWarning_BTRobot(); unv.ReadWarning_MTRobot(); unv.ReadWarning_OpenStage(); unv.ReadWarning_InspCh(); unv.ReadWarning_LoadPort(); unv.ReadWarning_CoverFan(); unv.ReadWarning_MTClampInsp(); } } catch (Exception ex) { throw ex; } }
public void TestAssemblyWork() { using (var halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real")) { halContext.MvaCfLoad(); var cbn = halContext.HalDevices[EnumMacDeviceId.cabinet_assembly.ToString()] as MacHalCabinet; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; uni.HalConnect(); cbn.HalConnect(); } }
public void TestAssemblyWork() { using (var halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real")) { halContext.MvaCfLoad(); var lp = halContext.HalDevices[EnumMacDeviceId.loadportA_assembly.ToString()] as MacHalLoadPort; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; uni.HalConnect(); lp.HalConnect(); } }
public void TestAssemblyWorkLight() { using (var halContext = new MacHalContext(ManifestPath)) { halContext.MvaCfLoad(); var cc = halContext.HalDevices[EnumMacDeviceId.clean_assembly.ToString()] as MacHalCleanCh; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; uni.HalConnect(); cc.HalConnect(); cc.LightSideInsp.TurnOn(255); } }
public void TestMethod1()//OK { try { using (var halContext = new MacHalContext("UserData/Manifest/Manifest.xml.real")) { halContext.MvaCfBootup(); halContext.MvaCfLoad(); var unv = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; var ic = halContext.HalDevices[EnumMacDeviceId.inspectionch_assembly.ToString()] as MacHalInspectionCh; unv.HalConnect();//需要先將MacHalUniversal建立連線,各Assembly的Hal建立連線時,才能讓PLC的連線成功 ic.HalConnect(); ic.Initial(); //1. 將光罩放置於Inspection Chamber Stage上 //2. 將光罩分以4 x 4, 16宮格方式, 移動Stage X &Y方向, 讓編號4 - CCD可以拍攝到每個宮格的影像 //3. 每個宮格內, 執行以下程序: 開啟線光源->拍照(FOV正確, 可看到particle)->關閉線光源 ic.LightForLeftBarSetValue(999); //bar 0~999 ic.LightForRightBarSetValue(999); //bar 0~999 for (int i = 158; i <= 296; i += 23) { for (int j = 123; j <= 261; j += 23) { ic.XYPosition(i, j); ic.Camera_TopInsp_CapToSave("D:/Image/IC/TopInsp", "jpg"); Thread.Sleep(500); } } ic.LightForLeftBarSetValue(0); ic.LightForRightBarSetValue(0); //4. 每個宮格內, 執行以下程序: 開啟環形光源->拍照(FOV正確, 可看到光罩pattern)->關閉環形光源 ic.LightForTopCrlInspSetValue(255); for (int i = 158; i <= 296; i += 23) { for (int j = 123; j <= 261; j += 23) { ic.XYPosition(i, j); ic.Camera_TopInsp_CapToSave("D:/Image/IC/TopInsp", "jpg"); Thread.Sleep(500); } } ic.LightForTopCrlInspSetValue(0); } } catch (Exception ex) { throw ex; } }
public void TestCamera() { using (var halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real")) { halContext.MvaCfLoad(); var bt = halContext.HalDevices[EnumMacDeviceId.boxtransfer_assembly.ToString()] as MacHalBoxTransfer; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; uni.HalConnect(); bt.HalConnect(); bt.Camera_CapToSave("D:/Image/BT/Gripper", "jpg"); } }
public void TestAssemblyWork() { using (var halContext = new MacHalContext(ManifestPath)) { halContext.MvaCfLoad(); var cc = halContext.HalDevices[EnumMacDeviceId.clean_assembly.ToString()] as MacHalCleanCh; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; uni.HalConnect(); cc.HalConnect(); cc.SetGasValveTime(50); } }
public void TestReadParameter() { using (var halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real")) { halContext.MvaCfLoad(); var lp = halContext.HalDevices[EnumMacDeviceId.loadportA_assembly.ToString()] as MacHalLoadPort; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; uni.HalConnect(); lp.HalConnect(); lp.ReadChamberPressureDiffLimit(); } }
public void TestCamera() { using (var halContext = new MacHalContext(ManifestPath)) { halContext.MvaCfLoad(); var cc = halContext.HalDevices[EnumMacDeviceId.clean_assembly.ToString()] as MacHalCleanCh; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; uni.HalConnect(); cc.HalConnect(); cc.Camera_Insp_CapToSave("D:/Image/CC/Insp", "jpg"); } }
public void TestReadParameter() { using (var halContext = new MacHalContext("UserData/Manifest/Manifest.xml.real")) { halContext.MvaCfBootup(); halContext.MvaCfLoad(); var os = halContext.HalDevices[EnumMacDeviceId.openstage_assembly.ToString()] as MacHalOpenStage; os.ReadBoxTypeVar(); os.ReadSpeedVar(); os.ReadParticleCntLimit(); } }
public void TestMethod1() { using (var halContext = new MacHalContext("UserData/Manifest/Manifest.xml.real")) { halContext.MvaCfBootup(); halContext.MvaCfLoad(); var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; var ic = halContext.HalDevices[EnumMacDeviceId.inspectionch_assembly.ToString()] as MacHalInspectionCh; var cc = halContext.HalDevices[EnumMacDeviceId.clean_assembly.ToString()] as MacHalCleanCh; var lpa = halContext.HalDevices[EnumMacDeviceId.loadportA_assembly.ToString()] as MacHalLoadPort; var lpb = halContext.HalDevices[EnumMacDeviceId.loadportB_assembly.ToString()] as MacHalLoadPort; var os = halContext.HalDevices[EnumMacDeviceId.openstage_assembly.ToString()] as MacHalOpenStage; var bt = halContext.HalDevices[EnumMacDeviceId.boxtransfer_assembly.ToString()] as MacHalBoxTransfer; uni.HalConnect(); ic.HalConnect(); cc.HalConnect(); lpa.HalConnect(); lpb.HalConnect(); os.HalConnect(); bt.HalConnect(); try { for (int i = 0; i < 2000; i++) { //ic.Camera_SideDfs_CapToSave("D:/Image/IC/SigeDfs", "jpg"); //ic.Camera_TopDfs_CapToSave("D:/Image/IC/TopDfs", "jpg"); //ic.Camera_SideInsp_CapToSave("D:/Image/IC/SideInsp", "jpg"); ic.Camera_TopInsp_CapToSave("D:/Image/IC/TopInsp", "jpg");//需要有介面卡的主機才能執行此動作 //cc.Camera_Insp_CapToSave("D:/Image/CC/Insp", "jpg"); //lpa.Camera_LoadPortA_CapToSave("D:/Image/LP/LPA/Insp", "jpg"); //lpa.Camera_Barcode_CapToSave("D:/Image/LP/LPA/Barcode", "jpg"); //lpb.Camera_LoadPortB_CapToSave("D:/Image/LP/LPB/Insp", "jpg"); //os.Camera_Top_CapToSave("D:/Image/OS/Top", "jpg"); //os.Camera_Side_CapToSave("D:/Image/OS/Side", "jpg"); //os.Camera_Left_CapToSave("D:/Image/OS/Left", "jpg"); //os.Camera_Right_CapToSave("D:/Image/OS/Right", "jpg"); //bt.Camera_CapToSave("D:/Image/BT/Gripper", "jpg"); Thread.Sleep(100); } } catch (Exception ex) { throw ex; } } }
public void TestCamera() { using (var halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real")) { halContext.MvaCfLoad(); var os = halContext.HalDevices[EnumMacDeviceId.openstage_assembly.ToString()] as MacHalOpenStage; os.HalConnect(); os.Camera_Top_CapToSave("D:/Image/OS/Top", "jpg"); os.Camera_Side_CapToSave("D:/Image/OS/Side", "jpg"); os.Camera_Left_CapToSave("D:/Image/OS/NearLP", "jpg"); os.Camera_Right_CapToSave("D:/Image/OS/NearCC", "jpg"); } }
public void TestAssemblyWork() { using (var halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real")) { halContext.MvaCfLoad(); var unv = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; unv.ResetAllAlarm(); unv.SetSignalTower(true, false, false); unv.SetBuzzer(1); unv.CoverFanCtrl(1, 150); unv.EMSAlarm(true, false, false, false); } }
public void TestReadParameter() { using (var halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real")) { halContext.MvaCfLoad(); var cbn = halContext.HalDevices[EnumMacDeviceId.cabinet_assembly.ToString()] as MacHalCabinet; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; uni.HalConnect(); cbn.HalConnect(); cbn.ReadChamberPressureDiffLimit(); cbn.ReadExhaustFlowVar(); } }
public void TestReadComponentValue() { using (var halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real")) { halContext.MvaCfLoad(); var lp = halContext.HalDevices[EnumMacDeviceId.loadportA_assembly.ToString()] as MacHalLoadPort; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; uni.HalConnect(); lp.HalConnect(); lp.ReadPressureDiff(); lp.ReadLP_Light_Curtain(); } }
public void TestReadComponentValue() { using (var halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real")) { halContext.MvaCfLoad(); var cbn = halContext.HalDevices[EnumMacDeviceId.cabinet_assembly.ToString()] as MacHalCabinet; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; uni.HalConnect(); cbn.HalConnect(); cbn.ReadChamberPressureDiff(); cbn.ReadLightCurtain(); } }
public void TestWork_Inspection() { using (var halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real")) { halContext.MvaCfLoad(); var ic = halContext.HalDevices[EnumMacDeviceId.inspectionch_assembly.ToString()] as MacHalInspectionCh; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; uni.HalConnect(); ic.HalConnect(); ic.HalConnect(); //ic.Initial(); ic.InspectionSide(); } }
public void TestAssemblyWork() { using (var halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real")) { halContext.MvaCfLoad(); var ic = halContext.HalDevices[EnumMacDeviceId.inspectionch_assembly.ToString()] as MacHalInspectionCh; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; uni.HalConnect(); ic.HalConnect(); ic.SetRobotIntrude(false); ic.Initial(); ic.XYPosition(200, 100); ic.ZPosition(-30); ic.WPosition(51); } }
public void TestReadParameter() { using (var halContext = new MacHalContext(ManifestPath)) { halContext.MvaCfLoad(); var cc = halContext.HalDevices[EnumMacDeviceId.clean_assembly.ToString()] as MacHalCleanCh; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; uni.HalConnect(); cc.HalConnect(); cc.ReadParticleCntLimit(); cc.ReadRobotPosLeftRightLimit(); cc.ReadRobotPosUpDownLimit(); cc.ReadManometerPressureLimit(); cc.ReadGasValvePressureVar(); } }
public void TestSetParameter() { using (var halContext = new MacHalContext(ManifestPath)) { halContext.MvaCfLoad(); var cc = halContext.HalDevices[EnumMacDeviceId.clean_assembly.ToString()] as MacHalCleanCh; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; uni.HalConnect(); cc.HalConnect(); cc.SetParticleCntLimit(20, 30, 40); cc.SetRobotLeftRightLimit(10, 50); cc.SetRobotUpDownLimit(50, 10); cc.SetManometerPressureLimit(40); cc.SetGasValvePressurVar(90); } }
public void TestReadParameter() { using (var halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real")) { halContext.MvaCfLoad(); var bt = halContext.HalDevices[EnumMacDeviceId.boxtransfer_assembly.ToString()] as MacHalBoxTransfer; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; uni.HalConnect(); bt.HalConnect(); bt.ReadClampSpeedVar(); bt.ReadClampSpacingLimit(); bt.ReadClampAndCabinetSpacingLimit(); bt.ReadLevelSensorLimit(); bt.ReadSixAxisSensorUpperLimit(); bt.ReadSixAxisSensorLowerLimit(); } }
public void TestAssemblyWork() { using (var halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real")) { halContext.MvaCfLoad(); var bt = halContext.HalDevices[EnumMacDeviceId.boxtransfer_assembly.ToString()] as MacHalBoxTransfer; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; uni.HalConnect(); bt.HalConnect(); bt.Clamp(1); bt.Unclamp(); bt.LevelReset(); bt.ReadBTStatus(); bt.RobotMoving(false); bt.Initial(); } }
public void TestSetParameter() { using (var halContext = new MacHalContext("GenCfg/Manifest/Manifest.xml.real")) { halContext.MvaCfLoad(); var bt = halContext.HalDevices[EnumMacDeviceId.boxtransfer_assembly.ToString()] as MacHalBoxTransfer; var uni = halContext.HalDevices[EnumMacDeviceId.eqp_assembly.ToString()] as MacHalEqp; uni.HalConnect(); bt.HalConnect(); bt.SetClampSpeedVar(20); bt.SetClampSpacingLimit(10, 20); bt.SetClampAndCabinetSpacingLimit(50); bt.SetLevelSensorLimit(5, 6); bt.SetSixAxisSensorUpperLimit(10.1, 20.2, 30.3, 40.4, 50.5, 60.6); bt.SetSixAxisSensorLowerLimit(1.1, 2.2, 3.3, 4.4, 5.5, 6.6); } }