S4_Finish.cs 2.1 KB
using OnlineStore.LoadCSVLibrary;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;

namespace OnlineStore.DeviceLibrary.bean
{
    public class S4_Finish : IStep
    {

        public S4_Finish(RunStepInfo runStepInfo):base(runStepInfo)
        {

        }
        public override void Execute()
        {
            IOManager.IOMove(IO_Type.L1_Traverse_Up_SOL, IO_VALUE.LOW);
            Thread.Sleep(500);
            IOManager.CIOMove(IO_Type.L1_Traverse_Down_SOL, IO_VALUE.HIGH);
            Thread.Sleep(500);
            IOManager.CIOMove(IO_Type.L1_Traverse_Run, IO_VALUE.LOW);
            IOManager.CIOMove(IO_Type.L1_Traverse_BackRun, IO_VALUE.LOW);

            if (preStep.Equals(runStepInfo.S3_Empty))
            {
                IOManager.IOMove(IO_Type.L3_Traverse_Up_SOL, IO_VALUE.LOW);
                Thread.Sleep(500);
                IOManager.CIOMove(IO_Type.L3_Traverse_Down_SOL, IO_VALUE.HIGH);
                Thread.Sleep(500);
            }
            else if(preStep.Equals(runStepInfo.S3_Out))
            {
                IOManager.IOMove(IO_Type.L2_Traverse_Up_SOL, IO_VALUE.LOW);
                Thread.Sleep(500);
                IOManager.CIOMove(IO_Type.L2_Traverse_Down_SOL, IO_VALUE.HIGH);
                Thread.Sleep(500);
            }
        }

        public override bool IsFinished()
        {
            if (preStep.Equals(runStepInfo.S3_Empty))
            {
                if(IOManager.IOValue(IO_Type.L3_Traverse_Down_SOL).Equals(IO_VALUE.HIGH))
                {
                    msg = "料串转移完成:入料线体->空料串线体";
                    EndStep();
                    return true;
                }
            }
            else if (preStep.Equals(runStepInfo.S3_Out))
            {
                if (IOManager.IOValue(IO_Type.L2_Traverse_Down_SOL).Equals(IO_VALUE.HIGH))
                {
                    msg = "料串转移完成:入料线体->出料线体";
                    EndStep();
                    return true;
                }
            }
            return false;
        }
    }
}