コード例 #1
0
ファイル: L122M2X4.cs プロジェクト: jajanuj/GitTest
        /// <summary>
        /// M2X4 裝置啟停
        /// </summary>
        /// <param name="option">The option.</param>
        public void ServoOn(CmdStatus option)
        {
            I16 rc = -1;

            if (axisPara != null)
            {
                if (axisPara.IsActive)
                {
                    setMotion();

                    if (option == CmdStatus.OFF)
                    {
                        this.IsHome      = false;
                        axisPara.Enabled = false;
                        rc = CCMNet.CS_mnet_m204_set_svon(RingNoOfMNet, axisPara.SlaveIP, (U16)axisPara.AxisNo, 0);
                    }
                    if (option == CmdStatus.ON)
                    {
                        if (axisPara.IsActive)
                        {
                            axisPara.Enabled = true;
                            rc = CCMNet.CS_mnet_m204_disable_soft_limit(RingNoOfMNet, axisPara.SlaveIP, (U16)axisPara.AxisNo);
                            CCMNet.CS_mnet_m204_set_svon(RingNoOfMNet, axisPara.SlaveIP, (U16)axisPara.AxisNo, 1);
                        }
                    }
                }
            }
        }
コード例 #2
0
ファイル: L122M2X4.cs プロジェクト: jajanuj/GitTest
        public bool SetSoftLimit(I32 positiveLimit, I32 negativeLimit, CmdStatus sw, StopType stopType)
        {
            I16 rc = -1;

            if (axisPara.IsActive && axisPara.Enabled)
            {
                if (sw == CmdStatus.ON)
                {
                    /*
                     * 0 INT only
                     * 1 Immediately stop
                     * 2 Slow down then stop
                     * 3 Reserved
                     */
                    if (stopType == StopType.Emergency)
                    {
                        rc = CCMNet.CS_mnet_m204_enable_soft_limit(RingNoOfMNet, axisPara.SlaveIP, (U16)axisPara.AxisNo, 1);
                    }
                    else
                    {
                        rc = CCMNet.CS_mnet_m204_enable_soft_limit(RingNoOfMNet, axisPara.SlaveIP, (U16)axisPara.AxisNo, 2);
                    }
                    rc = CCMNet.CS_mnet_m204_set_soft_limit(RingNoOfMNet, axisPara.SlaveIP, (U16)axisPara.AxisNo, positiveLimit, negativeLimit);
                }
                else
                {
                    rc = CCMNet.CS_mnet_m204_disable_soft_limit(RingNoOfMNet, axisPara.SlaveIP, (U16)axisPara.AxisNo);
                }
            }
            return(rc == 0 ? true : false);
        }
コード例 #3
0
ファイル: L122M2X4.cs プロジェクト: jajanuj/GitTest
        public bool DisableSoftLimit()
        {
            I16 rc = -1;

            if (axisPara.IsActive && axisPara.Enabled)
            {
                rc = CCMNet.CS_mnet_m204_disable_soft_limit(RingNoOfMNet, axisPara.SlaveIP, (U16)axisPara.AxisNo);
            }
            return(rc == 0 ? true : false);
        }