コード例 #1
0
        public override string SetSubType(string subtype)
        {
            base.SetSubType(subtype);

            string errStr = "";

            switch (subtype)
            {
            case "AI_VIRT":
                dSubType = DeviceSubType.AI_VIRT;
                break;

            case "AI":
            case "":
                dSubType = DeviceSubType.AI;

                parameters.Add("P_C0", null);
                parameters.Add("P_MIN_V", null);
                parameters.Add("P_MAX_V", null);

                AI.Add(new IOChannel("AI", -1, -1, -1, ""));
                break;

            default:
                errStr = string.Format("\"{0}\" - неверный тип" +
                                       " (AI, AI_VIRT).\n",
                                       Name);
                break;
            }

            return(errStr);
        }
コード例 #2
0
ファイル: F.cs プロジェクト: ivaniuk-alex/EasyEPLANner
        public override string SetSubType(string subtype)
        {
            base.SetSubType(subtype);

            string errStr = "";

            switch (subtype)
            {
            case "F":
            case "":
                dSubType = DeviceSubType.F;

                AI.Add(new IOChannel("AI", -1, -1, -1, ""));
                AO.Add(new IOChannel("AO", -1, -1, -1, ""));

                SetIOLinkSizes(ArticleName);
                break;

            default:
                errStr = string.Format("\"{0}\" - неверный тип" +
                                       " (пустая строка, F).\n",
                                       Name);
                break;
            }

            return(errStr);
        }
コード例 #3
0
        public override string SetSubType(string subtype)
        {
            base.SetSubType(subtype);

            string errStr = "";

            switch (subtype)
            {
            case "FQT":
                AI.Add(new IOChannel("AI", -1, -1, -1, "Объем"));
                break;

            case "FQT_F":
                AI.Add(new IOChannel("AI", -1, -1, -1, "Объем"));
                AI.Add(new IOChannel("AI", -1, -1, -1, "Поток"));

                parameters.Add("P_MIN_F", null);
                parameters.Add("P_MAX_F", null);
                parameters.Add("P_C0", null);
                parameters.Add("P_DT", null);

                properties.Add("MT", null);     //Связанные моторы.

                break;

            case "FQT_F_OK":
                AI.Add(new IOChannel("AI", -1, -1, -1, "Объем"));
                AI.Add(new IOChannel("AI", -1, -1, -1, "Поток"));
                DI.Add(new IOChannel("DI", -1, -1, -1, ""));

                parameters.Add("P_MIN_F", null);
                parameters.Add("P_MAX_F", null);
                parameters.Add("P_C0", null);
                parameters.Add("P_DT", null);

                properties.Add("MT", null);     //Связанные моторы.

                break;

            case "FQT_VIRT":
                break;

            case "":
                errStr = string.Format("\"{0}\" - не задан тип" +
                                       " (FQT, FQT_F, FQT_F_OK, FQT_VIRT).\n",
                                       Name);
                break;

            default:
                errStr = string.Format("\"{0}\" - неверный тип" +
                                       " (FQT, FQT_F, FQT_F_OK, FQT_VIRT).\n",
                                       Name);
                break;
            }

            return(errStr);
        }
コード例 #4
0
ファイル: PT.cs プロジェクト: radtek/EasyEPLANner
        public PT(string fullName, string description, int deviceNumber,
                  string objectName, int objectNumber, string articleName) : base(
                fullName, description, deviceNumber, objectName, objectNumber)
        {
            dSubType    = DeviceSubType.NONE;
            dType       = DeviceType.PT;
            ArticleName = articleName;

            AI.Add(new IOChannel("AI", -1, -1, -1, ""));
        }
コード例 #5
0
        public override string SetSubType(string subtype)
        {
            base.SetSubType(subtype);

            string errStr = "";

            switch (subtype)
            {
            case "LS_MIN":
                parameters.Add("P_DT", null);

                DI.Add(new IOChannel("DI", -1, -1, -1, ""));
                break;

            case "LS_MAX":
                parameters.Add("P_DT", null);

                DI.Add(new IOChannel("DI", -1, -1, -1, ""));
                break;

            case "LS_IOLINK_MIN":
                parameters.Add("P_DT", null);
                parameters.Add("P_ERR", null);

                AI.Add(new IOChannel("AI", -1, -1, -1, ""));
                SetIOLinkSizes(ArticleName);
                break;

            case "LS_IOLINK_MAX":
                parameters.Add("P_DT", null);
                parameters.Add("P_ERR", null);

                AI.Add(new IOChannel("AI", -1, -1, -1, ""));
                SetIOLinkSizes(ArticleName);
                break;

            case "LS_VIRT":
                dSubType = DeviceSubType.LS_VIRT;
                break;

            case "":
                errStr = string.Format("\"{0}\" - не задан тип (LS_MIN, " +
                                       "LS_MAX, LS_IOLINK_MIN, LS_IOLINK_MAX, LS_VIRT).\n",
                                       Name);
                break;

            default:
                errStr = string.Format("\"{0}\" - неверный тип (LS_MIN, " +
                                       "LS_MAX, LS_IOLINK_MIN, LS_IOLINK_MAX, LS_VIRT).\n",
                                       Name);
                break;
            }

            return(errStr);
        }
コード例 #6
0
ファイル: TE.cs プロジェクト: radtek/EasyEPLANner
        public TE(string fullName, string description, int deviceNumber,
                  string objectName, int objectNumber, string articleName) : base(
                fullName, description, deviceNumber, objectName, objectNumber)
        {
            dSubType    = DeviceSubType.NONE;
            dType       = DeviceType.TE;
            ArticleName = articleName;

            parameters.Add("P_C0", null);
            parameters.Add("P_ERR", null);

            AI.Add(new IOChannel("AI", -1, -1, -1, ""));
        }
コード例 #7
0
ファイル: WT.cs プロジェクト: ivaniuk-alex/EasyEPLANner
        public WT(string fullName, string description, int deviceNumber,
                  string objectName, int objectNumber, string articleName) : base(
                fullName, description, deviceNumber, objectName, objectNumber)
        {
            dSubType    = DeviceSubType.NONE;
            dType       = DeviceType.WT;
            ArticleName = articleName;

            AI.Add(new IOChannel("AI", -1, -1, -1, "Напряжение моста(+Ud)"));
            AI.Add(new IOChannel("AI", -1, -1, -1, "Референсное напряжение(+Uref)"));

            parameters.Add("P_NOMINAL_W", null);
            parameters.Add("P_RKP", null);
            parameters.Add("P_C0", null);
            parameters.Add("P_DT", null);
        }
コード例 #8
0
        public override string SetSubType(string subtype)
        {
            base.SetSubType(subtype);

            string errStr = "";

            switch (subtype)
            {
            case "LT":
                AI.Add(new IOChannel("AI", -1, -1, -1, ""));

                parameters.Add("P_C0", null);
                parameters.Add("P_ERR", null);
                break;

            case "LT_CYL":
                AI.Add(new IOChannel("AI", -1, -1, -1, ""));

                parameters.Add("P_C0", null);
                parameters.Add("P_ERR", null);
                parameters.Add("P_MAX_P", null);
                parameters.Add("P_R", null);
                break;

            case "LT_CONE":
                AI.Add(new IOChannel("AI", -1, -1, -1, ""));

                parameters.Add("P_C0", null);
                parameters.Add("P_ERR", null);
                parameters.Add("P_MAX_P", null);
                parameters.Add("P_R", null);
                parameters.Add("P_H_CONE", null);
                break;

            case "LT_TRUNC":
                AI.Add(new IOChannel("AI", -1, -1, -1, ""));

                parameters.Add("P_C0", null);
                parameters.Add("P_ERR", null);
                parameters.Add("P_MAX_P", null);
                parameters.Add("P_R", null);
                parameters.Add("P_H_TRUNC", null);
                break;

            case "LT_IOLINK":
                AI.Add(new IOChannel("AI", -1, -1, -1, ""));

                parameters.Add("P_C0", null);
                parameters.Add("P_ERR", null);
                parameters.Add("P_MAX_P", null);
                parameters.Add("P_R", null);
                parameters.Add("P_H_CONE", 0);

                properties.Add("PT", "\'\'");

                SetIOLinkSizes(ArticleName);
                break;

            case "LT_VIRT":
                dSubType = DeviceSubType.LT_VIRT;
                break;

            case "":
                errStr = string.Format("\"{0}\" - не задан тип (LT, " +
                                       "LT_CYL, LT_CONE, LT_TRUNC, LT_IOLINK, LT_VIRT).\n",
                                       Name);
                break;

            default:
                errStr = string.Format("\"{0}\" - неверный тип (LT, " +
                                       "LT_CYL, LT_CONE, LT_TRUNC, LT_IOLINK, LT_VIRT).\n",
                                       Name);
                break;
            }

            return(errStr);
        }
コード例 #9
0
ファイル: V.cs プロジェクト: ivaniuk-alex/EasyEPLANner
        public override string SetSubType(string subtype)
        {
            base.SetSubType(subtype);

            string errStr = "";

            switch (subtype)
            {
            case "V_DO1":
                DO.Add(new IOChannel("DO", -1, -1, -1, ""));
                break;

            case "V_DO2":
                DO.Add(new IOChannel("DO", -1, -1, -1, "Закрыть"));
                DO.Add(new IOChannel("DO", -1, -1, -1, "Открыть"));
                break;

            case "V_DO1_DI1_FB_OFF":
                DO.Add(new IOChannel("DO", -1, -1, -1, ""));
                DI.Add(new IOChannel("DI", -1, -1, -1, ""));

                parameters.Add("P_ON_TIME", null);
                parameters.Add("P_FB", 1);
                break;

            case "V_DO1_DI1_FB_ON":
                DO.Add(new IOChannel("DO", -1, -1, -1, ""));
                DI.Add(new IOChannel("DI", -1, -1, -1, ""));

                parameters.Add("P_ON_TIME", null);
                parameters.Add("P_FB", 1);
                break;

            case "V_DO1_DI2":
                DO.Add(new IOChannel("DO", -1, -1, -1, ""));
                DI.Add(new IOChannel("DI", -1, -1, -1, "Закрыт"));
                DI.Add(new IOChannel("DI", -1, -1, -1, "Открыт"));

                parameters.Add("P_ON_TIME", null);
                parameters.Add("P_FB", 1);
                break;

            case "V_DO2_DI2":
            case "V_DO2_DI2_BISTABLE":
                DO.Add(new IOChannel("DO", -1, -1, -1, "Закрыть"));
                DO.Add(new IOChannel("DO", -1, -1, -1, "Открыть"));
                DI.Add(new IOChannel("DI", -1, -1, -1, "Закрыт"));
                DI.Add(new IOChannel("DI", -1, -1, -1, "Открыт"));

                parameters.Add("P_ON_TIME", null);
                parameters.Add("P_FB", 1);
                break;

            case "V_MIXPROOF":
                DO.Add(new IOChannel("DO", -1, -1, -1, "Открыть"));
                DO.Add(new IOChannel("DO", -1, -1, -1, "Открыть НС"));
                DO.Add(new IOChannel("DO", -1, -1, -1, "Открыть ВС"));
                DI.Add(new IOChannel("DI", -1, -1, -1, "Закрыт"));
                DI.Add(new IOChannel("DI", -1, -1, -1, "Открыт"));

                parameters.Add("P_ON_TIME", null);
                parameters.Add("P_FB", 1);
                break;

            case "V_IOLINK_MIXPROOF":
                parameters.Add("P_ON_TIME", null);
                parameters.Add("P_FB", 1);

                AO.Add(new IOChannel("AO", -1, -1, -1, ""));
                AI.Add(new IOChannel("AI", -1, -1, -1, ""));

                SetIOLinkSizes(ArticleName);
                break;

            case "V_AS_MIXPROOF":
                AO.Add(new IOChannel("AO", -1, -1, -1, ""));
                AI.Add(new IOChannel("AI", -1, -1, -1, ""));

                parameters.Add("P_ON_TIME", null);
                parameters.Add("P_FB", 1);

                rtParameters.Add("R_AS_NUMBER", null);
                break;

            case "V_BOTTOM_MIXPROOF":
                DO.Add(new IOChannel("DO", -1, -1, -1, "Открыть"));
                DO.Add(new IOChannel("DO", -1, -1, -1, "Открыть мини"));
                DO.Add(new IOChannel("DO", -1, -1, -1, "Открыть НС"));
                DI.Add(new IOChannel("DI", -1, -1, -1, "Закрыт"));
                DI.Add(new IOChannel("DI", -1, -1, -1, "Открыт"));

                parameters.Add("P_ON_TIME", null);
                parameters.Add("P_FB", 1);
                break;

            case "V_AS_DO1_DI2":
                AO.Add(new IOChannel("AO", -1, -1, -1, ""));
                AI.Add(new IOChannel("AI", -1, -1, -1, ""));

                parameters.Add("P_ON_TIME", null);
                parameters.Add("P_FB", 1);

                rtParameters.Add("R_AS_NUMBER", null);
                break;

            case "V_IOLINK_DO1_DI2":
                AO.Add(new IOChannel("AO", -1, -1, -1, ""));
                AI.Add(new IOChannel("AI", -1, -1, -1, ""));

                parameters.Add("P_ON_TIME", null);
                parameters.Add("P_FB", 1);

                SetIOLinkSizes(ArticleName);
                break;

            case "V_IOLINK_VTUG_DO1":
                rtParameters.Add("R_VTUG_NUMBER", null);
                rtParameters.Add("R_VTUG_SIZE", 1);

                AO.Add(new IOChannel("AO", -1, -1, -1, ""));
                break;

            case "V_IOLINK_VTUG_DO1_FB_OFF":
                rtParameters.Add("R_VTUG_NUMBER", null);
                rtParameters.Add("R_VTUG_SIZE", 1);

                AO.Add(new IOChannel("AO", -1, -1, -1, ""));
                DI.Add(new IOChannel("DI", -1, -1, -1, ""));

                parameters.Add("P_ON_TIME", null);
                parameters.Add("P_FB", 1);
                break;

            case "V_IOLINK_VTUG_DO1_FB_ON":
                rtParameters.Add("R_VTUG_NUMBER", null);
                rtParameters.Add("R_VTUG_SIZE", 1);

                AO.Add(new IOChannel("AO", -1, -1, -1, ""));
                DI.Add(new IOChannel("DI", -1, -1, -1, ""));

                parameters.Add("P_ON_TIME", null);
                parameters.Add("P_FB", 1);
                break;

            case "":
                errStr = string.Format(
                    "\"{0}\" - не задан тип (V_DO1, V_DO2, ...).\n", name);
                break;

            default:
                errStr = string.Format(
                    "\"{0}\" - неверный тип (V_DO1, V_DO2, ...).\n", name);
                break;
            }

            return(errStr);
        }