// run to selected component private void bt_selcomp_Click(object sender, RoutedEventArgs e) { DataHelpers dh = new DataHelpers(); Nozzle1Xoffset = dh.Nozzle1Xoffset; Nozzle1Yoffset = dh.Nozzle1Yoffset; Nozzle2Xoffset = dh.Nozzle2Xoffset; Nozzle2Yoffset = dh.Nozzle2Yoffset; Int32 ComponentCode = Int32.Parse(dd_ComponentSelect.SelectedValue.ToString()); string ComponentName = comp.GetComponentValue(dd_ComponentSelect.SelectedValue.ToString()); kfl.PlacementNozzle = ComponentCode; kfl.PickSpeed = 50; kfl.PlaceSpeed = comp.GetPlaceSpeed(ComponentCode.ToString(), 50); kfl.FeederX = CalcXLocation(comp.GetFeederX(ComponentCode.ToString()), kfl.PlacementNozzle); kfl.FeederY = CalcYLocation(comp.GetFeederY(ComponentCode.ToString()), kfl.PlacementNozzle); kfl.FeederHeight = comp.GetFeederHeight(ComponentCode.ToString()); kfl.PlaceHeight = comp.GetPlacementHeight(ComponentCode.ToString()); kfl.TapeFeeder = comp.GetComponentTapeFeeder(ComponentCode.ToString()); kfl.PlaceX = 0; kfl.PlaceY = 0; kfl.PlaceRotation = 0; kfl.VerifyCamera = false; SetFeederOutputs(comp.GetFeederID(ComponentCode.ToString())); // send feeder to position _kflop.MoveSingleFeed(kfl.PickSpeed, kfl.FeederX, kfl.FeederY, ClearHeight, ClearHeight, 0, 0); if (comp.GetComponentTapeFeeder(ComponentCode.ToString())) { while (!usbController.GetFeederReadyStatus()) { Thread.Sleep(10); } Thread.Sleep(50); if (kfl.PlacementNozzle == 1) { // use picker 1 _kflop.MoveSingleFeed(kfl.PickSpeed, kfl.FeederX, kfl.FeederY, kfl.FeederHeight, ClearHeight, 0, 0); // Thread.Sleep(200); // go down and turn on suction // usbController.SetVAC1(true); // Thread.Sleep(150); // _kflop.MoveSingleFeed(kfl.PickSpeed, kfl.FeederX, kfl.FeederY, ClearHeight, ClearHeight, 0, 0); } else { // nozzle 2 on tape feeder _kflop.MoveSingleFeed(kfl.PickSpeed, kfl.FeederX, kfl.FeederY, ClearHeight, kfl.FeederHeight, 0, 0); Thread.Sleep(200); // go down and turn on suction //usbController.SetVAC2(true); //Thread.Sleep(150); //_kflop.MoveSingleFeed(kfl.PickSpeed, kfl.FeederX, kfl.FeederY, ClearHeight, ClearHeight, 0, 0); } } else { // use picker 2 while (usbController.CheckChipMotorRunning()) { Thread.Sleep(10); } _kflop.MoveSingleFeed(kfl.PickSpeed, kfl.FeederX, kfl.FeederY, ClearHeight, kfl.FeederHeight, 0, 0); // Thread.Sleep(200); // usbController.SetVAC2(true); // Thread.Sleep(300); // kf.MoveSingleFeed(kfl.PickSpeed, kfl.FeederX, kfl.FeederY, ClearHeight, ClearHeight, 0, 0); } }