Beispiel #1
0
 protected override void Reset(ClassErrorHandle err)
 {
     AxisThicknessMeasY.ServoOn = true;
     Cylinder[EnumCellIndex.左电芯].SetCylinderState(CYLIND_UP, 0, false);
     Cylinder[EnumCellIndex.中电芯].SetCylinderState(CYLIND_UP, 0, false);
     Cylinder[EnumCellIndex.右电芯].SetCylinderState(CYLIND_UP, 0, false);
     if (!Cylinder[EnumCellIndex.左电芯].WaitCylinderState(CYLIND_UP, ClassErrorHandle.TIMEOUT))
     {
         err.CollectErrInfo("左气缸无法上移");
     }
     if (!Cylinder[EnumCellIndex.中电芯].WaitCylinderState(CYLIND_UP, ClassErrorHandle.TIMEOUT))
     {
         err.CollectErrInfo("中气缸无法上移");
     }
     if (!Cylinder[EnumCellIndex.右电芯].WaitCylinderState(CYLIND_UP, ClassErrorHandle.TIMEOUT))
     {
         err.CollectErrInfo("右气缸无法上移");
     }
     if (err.NoError)
     {
         err.CollectErrInfo(MotorReset(AxisThicknessMeasY, EnumPointX.Idle));
     }
     SetZero();
     for (int i = 0; i < CELLCOUNT; i++)
     {
         ThicknessDataStations[i].CellData = null;
         ReadDone[i] = false;
     }
 }
Beispiel #2
0
 protected override void Reset(ClassErrorHandle err)
 {
     AxisTransPNPX.ServoOn = true;
     AxisTransPNPX.SetZero();
     if (!PNPCylinder.SetCylinderState(CYLIND_UP, ClassErrorHandle.TIMEOUT))
     {
         err.CollectErrInfo("气缸无法上移");
     }
     if (err.NoError)
     {
         AxisTransPNPX.HomeFinish        = true;
         AxisTransPNPX.NeedToCheckSafety = false;
         double speed = AxisTransPNPX.DefaultSpeed;
         AxisTransPNPX.DefaultSpeed = Math.Abs(AxisTransPNPX.JogSpeed);
         AxisTransPNPX.StepMove(-80);
         AxisTransPNPX.DefaultSpeed      = speed;
         AxisTransPNPX.NeedToCheckSafety = true;
         err.CollectErrInfo(AxisTransPNPX.Home(EnumPointPNPX.Unload.ToString()));
     }
     for (int i = 0; i < CELLCOUNT; i++)
     {
         TransLoadDataStations[i].CellData   = null;
         TransUnloadDataStations[i].CellData = null;
     }
 }
Beispiel #3
0
 protected override void Reset(ClassErrorHandle err)
 {
     AxisTopAlignBottom.ServoOn = true;
     AxisTopAlignSide.ServoOn   = true;
     AxisTopAlignTop.ServoOn    = true;
     AxisTopAlignXSide.ServoOn  = true;
     AxisTopAlignZClamp.ServoOn = true;
     Cylinder[EnumCellIndex.左电芯].SetCylinderState(CYLIND_UP, 0, false);
     Cylinder[EnumCellIndex.中电芯].SetCylinderState(CYLIND_UP, 0, false);
     Cylinder[EnumCellIndex.右电芯].SetCylinderState(CYLIND_UP, 0, false);
     if (!Cylinder[EnumCellIndex.左电芯].WaitCylinderState(CYLIND_UP, ClassErrorHandle.TIMEOUT))
     {
         err.CollectErrInfo("左气缸无法上移");
     }
     if (!Cylinder[EnumCellIndex.中电芯].WaitCylinderState(CYLIND_UP, ClassErrorHandle.TIMEOUT))
     {
         err.CollectErrInfo("中气缸无法上移");
     }
     if (!Cylinder[EnumCellIndex.右电芯].WaitCylinderState(CYLIND_UP, ClassErrorHandle.TIMEOUT))
     {
         err.CollectErrInfo("右气缸无法上移");
     }
     if (err.NoError)
     {
         err.CollectErrInfo(AxisTopAlignZClamp.Home());
     }
     if (err.NoError)
     {
         AxisTopAlignTop.HomeFinish = true;
         AxisTopAlignTop.MoveTo(-10000);
     }
     if (err.NoError)
     {
         err.CollectErrInfo(AxisTopAlignTop.Home());
     }
     if (err.NoError)
     {
         err.CollectErrInfo(AxisTopAlignXSide.Home(EnumPointX.Idle.ToString()));
     }
     if (err.NoError)
     {
         err.CollectErrInfo(AxisTopAlignBottom.Home());
     }
     if (err.NoError)
     {
         err.CollectErrInfo(AxisTopAlignSide.Home());
     }
     for (int i = 0; i < CELLCOUNT; i++)
     {
         TopAlignDataStations[i].CellData = null;
     }
 }
 protected override void Reset(ClassErrorHandle err)
 {
     AxisOutlineMeasX.ServoOn = true;
     err.CollectErrInfo(MotorReset(AxisOutlineMeasX, EnumPointX.GetPart));
     for (int i = 0; i < CELLCOUNT; i++)
     {
         BufferDatas[i] = null;
         CCDMeasDataStations[i].CellData = null;
         MeasDone[i] = true;
     }
 }
Beispiel #5
0
 protected override void Reset(ClassErrorHandle err)
 {
     AxisUnloadPNPY.ServoOn = true;
     AxisUnloadPNPY.SetZero();
     if (!PNPCylinder.SetCylinderState(CYLIND_UP, ClassErrorHandle.TIMEOUT))
     {
         err.CollectErrInfo("气缸无法上移");
     }
     if (err.NoError)
     {
         AxisUnloadPNPY.HomeFinish        = true;
         AxisUnloadPNPY.NeedToCheckSafety = false;
         double temp = AxisUnloadPNPY.DefaultSpeed;
         AxisUnloadPNPY.DefaultSpeed = Math.Abs(AxisUnloadPNPY.JogSpeed);
         AxisUnloadPNPY.StepMove(-30);
         AxisUnloadPNPY.DefaultSpeed      = temp;
         AxisUnloadPNPY.NeedToCheckSafety = true;
         err.CollectErrInfo(MotorReset(AxisUnloadPNPY, EnumPoint.Place));
     }
 }
 protected override void Reset(ClassErrorHandle err)
 {
     AxisLoadInConveyor.ServoOn    = true;
     AxisLoadInConveyor.HomeFinish = true;
     AxisLoadInConveyor.StopMove();
     if (ThisInport(EnumInportName.LoadInConvInPosRight).status || ThisInport(EnumInportName.LoadInConvInPosMid).status || ThisInport(EnumInportName.LoadInConvInPosLeft).status)
     {
         err.CollectErrInfo("传送带取料位置有物料需要移除。");
     }
     for (int i = 0; i < 6; i++)
     {
         LoadInDataStations[i].CellData = null;
     }
 }
Beispiel #7
0
 protected override void Reset(ClassErrorHandle err)
 {
     AxisUnloadOutConveyor.ServoOn    = true;
     AxisUnloadOutConveyor.HomeFinish = true;
     if (ThisInport(EnumInportName.UnloadOutHavePartLeft).status ||
         ThisInport(EnumInportName.UnloadOutHavePartMid).status ||
         ThisInport(EnumInportName.UnloadOutHavePartRight).status ||
         ThisInport(EnumInportName.UnloadOutUnloadRight).status)
     {
         err.CollectErrInfo("传送带上有物料需要移除。");
     }
     for (int i = 0; i < 6; i++)
     {
         UnloadOutDataStations[i].CellData = null;
     }
 }
Beispiel #8
0
 protected override void Reset(ClassErrorHandle err)
 {
     AxisSortingPNPY.ServoOn = true;
     AxisSortingPNPZ.ServoOn = true;
     PNPCylinder[EnumCellIndex.左电芯].SetCylinderState(CYLIND_UP, 0, false);
     PNPCylinder[EnumCellIndex.中电芯].SetCylinderState(CYLIND_UP, 0, false);
     PNPCylinder[EnumCellIndex.右电芯].SetCylinderState(CYLIND_UP, 0, false);
     if (!PNPCylinder[EnumCellIndex.左电芯].WaitCylinderState(CYLIND_UP, ClassErrorHandle.TIMEOUT))
     {
         err.CollectErrInfo("左气缸无法上移");
     }
     if (!PNPCylinder[EnumCellIndex.中电芯].WaitCylinderState(CYLIND_UP, ClassErrorHandle.TIMEOUT))
     {
         err.CollectErrInfo("中气缸无法上移");
     }
     if (!PNPCylinder[EnumCellIndex.右电芯].WaitCylinderState(CYLIND_UP, ClassErrorHandle.TIMEOUT))
     {
         err.CollectErrInfo("右气缸无法上移");
     }
     if (err.NoError)
     {
         err.CollectErrInfo(MotorReset(AxisSortingPNPZ, EnumPointPNPZ.Up));
     }
     if (err.NoError)
     {
         err.CollectErrInfo(MotorReset(AxisSortingPNPY, EnumPointPNPY.Pick));
     }
     if (ThisInport(EnumInportName.SortingPNPNGBoxBack).status || ThisInport(EnumInportName.SortingPNPNGBoxFull1).status || ThisInport(EnumInportName.SortingPNPNGBoxFull2).status ||
         ThisInport(EnumInportName.SortingPNPNGBoxFront).status || ThisInport(EnumInportName.SortingPNPNGBoxFull3).status || ThisInport(EnumInportName.SortingPNPNGBoxFull4).status)
     {
         err.CollectErrInfo("前后NG盒没有关上或全满。");
     }
     IsUseBackNGBox  = true;
     CurrentNGBoxRow = (int)EnumPointPNPY.NGBox1;
     for (int i = 0; i < 4; i++)
     {
         for (int k = 0; k < CELLCOUNT; k++)
         {
             NGBoxCellCount[i, k]      = 0;
             NGBoxDataInfoString[i, k] = "";
         }
     }
     for (int i = 0; i < CELLCOUNT; i++)
     {
         SortNGDataStations[i].CellData = null;
     }
 }
Beispiel #9
0
 protected override void Reset(ClassErrorHandle err)
 {
     AxisLoadPNPY.ServoOn = true;
     AxisLoadPNPZ.ServoOn = true;
     PNPCylinder[EnumCellIndex.左电芯].SetCylinderState(CYLIND_UP, 0, false);
     PNPCylinder[EnumCellIndex.中电芯].SetCylinderState(CYLIND_UP, 0, false);
     PNPCylinder[EnumCellIndex.右电芯].SetCylinderState(CYLIND_UP, 0, false);
     if (!PNPCylinder[EnumCellIndex.左电芯].WaitCylinderState(CYLIND_UP, ClassErrorHandle.TIMEOUT))
     {
         err.CollectErrInfo("左气缸无法上移");
     }
     if (!PNPCylinder[EnumCellIndex.中电芯].WaitCylinderState(CYLIND_UP, ClassErrorHandle.TIMEOUT))
     {
         err.CollectErrInfo("中气缸无法上移");
     }
     if (!PNPCylinder[EnumCellIndex.右电芯].WaitCylinderState(CYLIND_UP, ClassErrorHandle.TIMEOUT))
     {
         err.CollectErrInfo("右气缸无法上移");
     }
     if (err.NoError)
     {
         err.CollectErrInfo(MotorReset(AxisLoadPNPZ, EnumPointZ.Idle));
     }
     if (err.NoError)
     {
         err.CollectErrInfo(MotorReset(AxisLoadPNPY, EnumPointY.Pick));
     }
     if (ThisInport(EnumInportName.LoadPNPNGBox).status)
     {
         err.CollectErrInfo("NG盒没有关上。");
     }
     for (int i = 0; i < CELLCOUNT; i++)
     {
         NGBoxCellCount[i] = 0;
         LoadPNPDataStations[i].CellData = null;
     }
     isPicking = false;
 }