Esempio n. 1
0
 private bool GetMcsuState(int AxisNo, out AxisArgs axisargs)
 {
     lock (ComportLock)
     {
         axisargs = null;
         try
         {
             if (AxisNo > 12 || AxisNo < 1)
             {
                 return(false);
             }
             //Command
             CommandGetMcsuSta.FrameLength = 0x05;
             CommandGetMcsuSta.AxisNo      = (byte)AxisNo;
             byte[] cmd = CommandGetMcsuSta.ToBytes();
             this.ExcuteCmd(cmd);
             CommandGetMcsuSta.WaitFinish(1000);
             axisargs = AxisStateList[AxisNo - 1];
             return(axisargs != null);
         }
         catch (Exception ex)
         {
             return(false);
         }
     }
 }
 public Motion_IrixiEE0017()
 {
     AxisArgsList = new AxisArgs[12];
     for (int i = 0; i < 12; i++)
     {
         AxisArgsList[i] = new AxisArgs();
     }
 }
        public bool GetAxisState(int AxisNo, out AxisArgs state)
        {
            var s = _controller.GetUnitState((UnitID)(AxisNo + (int)UnitID.U1));

            OnIrixiAxisStateChanged(this, s);
            state = AxisArgsList[AxisNo];
            return(true);
        }
 public bool GetAxisState(int AxisNo, out AxisArgs state)
 {
     state = null;
     if (AxisNo > MAX_AXIS - MIN_AXIS || AxisNo < 0)
     {
         return(false);
     }
     state = AxisArgsList[AxisNo];
     return(true);
 }
Esempio n. 5
0
        public bool GetAxisState(int AxisNo, out AxisArgs axisArgs)
        {
            axisArgs = null;
            var MotionCard = FindMotionCardByAxisIndex(AxisNo);

            if (MotionCard != null)
            {
                int AxisIndex = AxisNo - MotionCard.MIN_AXIS;
                return(MotionCard.GetAxisState(AxisIndex, out axisArgs));
            }
            return(false);
        }
        private void Value_OnAxisStateChanged(IMotion sender, int AxisNo, AxisArgs args)
        {
            int AxisNoTotal = AxisNo + sender.MIN_AXIS;

            for (int j = 0; j < ConfigMgr.Instance.HardwareCfgMgr.AxisSettings.Count(); j++)
            {
                if (ConfigMgr.Instance.HardwareCfgMgr.AxisSettings[j].AxisNo == AxisNoTotal)
                {
                    AxisStateCollection[j].CurAbsPos = args.CurAbsPos * AxisStateCollection[j].Unit.Factor;
                    AxisStateCollection[j].IsHomed   = args.IsHomed;
                    AxisStateCollection[j].IsBusy    = args.IsBusy;
                    AxisStateCollection[j].ErrorCode = args.ErrorCode;
                    break;
                }
            }
        }
Esempio n. 7
0
        private bool GetMcsuState(int AxisNo, out AxisArgs axisargs)
        {
            lock (ComportLock)
            {
                axisargs = null;
                try
                {
                    if (AxisNo > 12 || AxisNo < 1)
                    {
                        return(false);
                    }
                    //Command
                    CommandGetMcsuSta.AxisNo = (byte)AxisNo;
                    byte[] cmd = CommandGetMcsuSta.ToBytes();
                    this.ExcuteCmd(cmd);
                    if (CommandGetMcsuSta.WaitFinish(1000))
                    {
                        var state     = CommandGetMcsuSta.ReturnObject as MCSUS_STATE;
                        int axisIndex = state.AxisIndex;
                        lock (AxisStateList[axisIndex - 1].AxisLock)
                        {
                            AxisStateList[axisIndex - 1].IsHomed   = state.IsHomed;
                            AxisStateList[axisIndex - 1].IsBusy    = state.IsBusy;
                            AxisStateList[axisIndex - 1].ErrorCode = state.Error;
                            AxisStateList[axisIndex - 1].CurAbsPos = (double)state.AbsPosition / (double)AxisStateList[axisIndex - 1].GainFactor;
                        }
                        axisargs = AxisStateList[axisIndex - 1];
                    }

                    else
                    {
                        return(false);
                    }
                    return(axisargs != null);
                }
                catch (Exception ex)
                {
                    return(false);
                }
            }
        }
Esempio n. 8
0
 private void MotionCard_OnAxisStateChanged(int AxisNo, AxisArgs axisState)
 {
     throw new NotImplementedException();
 }