示例#1
0
        public static void Load(string _sJobName)
        {
            string sExeFolder  = System.AppDomain.CurrentDomain.BaseDirectory;
            string sDevicePath = sExeFolder + "JobFile\\" + _sJobName + "\\MotrPstn.ini";
            string sCommonPath = sExeFolder + "Util\\CommonPstn.ini";
            string sMinMaxPath = sExeFolder + "Util\\LimitPstn.ini";

            CIniFile IniDevice = new CIniFile(sDevicePath);
            CIniFile IniCommon = new CIniFile(sCommonPath);
            CIniFile IniMinMax = new CIniFile(sMinMaxPath);

            string sSection;

            //Save Device.
            for (int m = 0; m < m_iMaxMotr; m++)
            {
                //Set Dir.
                sSection = "Motor" + m.ToString();
                for (int i = 0; i < MotrPstn[m].PstnValue.Length; i++)
                {
                    if (MotrPstn[m].PstnValue[i].bCommon)
                    {
                        IniCommon.Load(sSection, MotrPstn[m].PstnValue[i].sName, ref MotrPstn[m].PstnValue[i].dValue);
                    }
                    else
                    {
                        IniDevice.Load(sSection, MotrPstn[m].PstnValue[i].sName, ref MotrPstn[m].PstnValue[i].dValue);
                    }
                    IniMinMax.Load(sSection, MotrPstn[m].PstnValue[i].sName.Trim() + "_MIN", ref MotrPstn[m].PstnValue[i].dMin);
                    IniMinMax.Load(sSection, MotrPstn[m].PstnValue[i].sName.Trim() + "_MAX", ref MotrPstn[m].PstnValue[i].dMax);
                    IniMinMax.Load(sSection, MotrPstn[m].PstnValue[i].sName.Trim() + "_SPD", ref MotrPstn[m].PstnValue[i].iSpdPer);

                    if (MotrPstn[m].PstnValue[i].dMax <= 0)
                    {
                        MotrPstn[m].PstnValue[i].dMax = ML.MT_GetMaxPosition(m);
                    }
                    if (MotrPstn[m].PstnValue[i].iSpdPer <= 0)
                    {
                        MotrPstn[m].PstnValue[i].iSpdPer = 100;
                    }
                    if (MotrPstn[m].PstnValue[i].iSpdPer > 100)
                    {
                        MotrPstn[m].PstnValue[i].iSpdPer = 100;
                    }

                    //if (MotrPstn[m].PstnValue[i].dMax    <= 0 )
                    //ML.MT_GetInPosSgnl
                }
            }
        }