public bool GoHome() { bool res = false; myMgr.WriteIOOut((ushort)OutputIOlist.RotaryEnabled, false); Thread.Sleep(300); myMgr.WriteIOOut((ushort)OutputIOlist.RotaryEnabled, true); Thread.Sleep(300); //bool val = myMgr.ReadIOOut((ushort)OutputIOlist.RotaryEnabled); //Not Enabled //if (!val) // return res; if ((myMgr.GetPos((ushort)Axislist.Mod1YAxis) > 2) || (myMgr.GetPos((ushort)Axislist.Mod2YAxis) > 2)) { return(res); } bool val = myMgr.ReadIOIn((ushort)InputIOlist.RotaryError); //Not Enabled if (!val) { return(res); } if ((!myMgr.ReadIOIn((ushort)InputIOlist.SafetySensor)) && (!myMgr.ReadIOIn((ushort)InputIOlist.BtnStop))) { if (Para.DisableSafeDoor) { myMgr.WriteIOOut((ushort)OutputIOlist.RotaryHome, true); Thread.Sleep(100); myMgr.WriteIOOut((ushort)OutputIOlist.RotaryHome, false); Thread.Sleep(1000); } else { if (myMgr.ReadIOIn((ushort)InputIOlist.DoorSensor)) { myMgr.WriteIOOut((ushort)OutputIOlist.RotaryHome, true); Thread.Sleep(100); myMgr.WriteIOOut((ushort)OutputIOlist.RotaryHome, false); Thread.Sleep(1000); } else { return(false); } } } else { //MessageBox.Show("SafeSenser Is Touched"); return(false); } DateTime st_time = DateTime.Now; TimeSpan time_span; while (!myMgr.ReadIOIn((ushort)InputIOlist.RotaryOrigin)) { Thread.Sleep(10); Application.DoEvents(); if (!Para.DisableSafeDoor) { if (!myMgr.ReadIOIn((ushort)InputIOlist.DoorSensor)) { myMgr.WriteIOOut((ushort)OutputIOlist.RotaryStop, true); //myMgr.WriteIOOut((ushort)OutputIOlist.RotaryEnabled, false); Thread.Sleep(200); myMgr.WriteIOOut((ushort)OutputIOlist.RotaryStop, false); Thread.Sleep(100); myMgr.WriteIOOut((ushort)OutputIOlist.RotaryEnabled, false); return(false); } } if ((myMgr.ReadIOIn((ushort)InputIOlist.SafetySensor)) || (myMgr.ReadIOIn((ushort)InputIOlist.BtnStop))) { //if (Para.DisableSafeDoor) //{ myMgr.WriteIOOut((ushort)OutputIOlist.RotaryStop, true); //myMgr.WriteIOOut((ushort)OutputIOlist.RotaryEnabled, false); Thread.Sleep(200); myMgr.WriteIOOut((ushort)OutputIOlist.RotaryStop, false); Thread.Sleep(100); myMgr.WriteIOOut((ushort)OutputIOlist.RotaryEnabled, false); return(false); //} //else //{ // if (!myMgr.ReadIOIn((ushort)InputIOlist.DoorSensor)) // { // myMgr.WriteIOOut((ushort)OutputIOlist.RotaryStop, true); // //myMgr.WriteIOOut((ushort)OutputIOlist.RotaryEnabled, false); // Thread.Sleep(200); // myMgr.WriteIOOut((ushort)OutputIOlist.RotaryStop, false); // Thread.Sleep(100); // myMgr.WriteIOOut((ushort)OutputIOlist.RotaryEnabled, false); // return false; // } //} } time_span = DateTime.Now - st_time; if (time_span.TotalMilliseconds > 10000) { return(false); } } res = true; Para.CurrentRotaryIndex = 0; Para.isRotaryAt45 = false; return(res); }
private void GreenLampBtn_Click(object sender, EventArgs e) { bool val = myMgr.ReadIOOut((ushort)OutputIOlist.LampGreen); myMgr.WriteIOOut((ushort)OutputIOlist.LampGreen, !val); }