InputEquip_Config.cs 5.0 KB
using log4net;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;

namespace OnlineStore.LoadCSVLibrary
{

    public class InputEquip_Config : DeviceConfig
    {
        public InputEquip_Config()
            : base()
        {
        }
        public InputEquip_Config(int id, string cid, string type, string filepath)
            : base(id, cid, LoadCSVLibrary.DeviceType.InputEquip, filepath)
        {
        }

        /// <summary>
        ///  PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,0,,,,,,,,,,,,
        /// </summary>
        [ConfigProAttribute("IsDebug")]
        public int IsDebug { get; set; }

        /// <summary>
        ///  PRO,0,是否使用夹爪(1=使用夹爪,0=用吸盘),UseClampJaw,1,,,,,,,,,,,,
        /// </summary>
        [ConfigProAttribute("UseClampJaw")]
        public int UseClampJaw { get; set; }
        /// <summary>
        ///  PRO,0,上料口扫码的相机名称(多个用#分隔),CameraNameList_Shelf,GigE:MV-CE200-10GC (00E78064929),,,,,,,,,,,,
        /// </summary>
        [ConfigProAttribute("CameraNameList_Shelf")]
        public string CameraNameList_Shelf { get; set; }
        /// <summary>
        ///  PRO,0,AGV小车站号名称_A侧,AgvName_A,T1_1,,,,,,,,,,,,
        /// </summary>
        [ConfigProAttribute("AgvName_A")]
        public string AgvName_A { get; set; }
        /// <summary>
        ///  PRO,0,AGV小车站号名称_B侧,AgvName_B,T1_2,,,,,,,,,,,,
        /// </summary>
        [ConfigProAttribute("AgvName_B")]
        public string AgvName_B { get; set; }

        /// <summary>
        ///  PRO,0,提升上料轴高度转换系数(1mm对应的脉冲),Height_ChangeValue,804,,,,,,,,,,,,
        /// </summary>
        [ConfigProAttribute("Height_ChangeValue")]
        public int Height_ChangeValue { get; set; }


        /// <summary>
        ///  AXIS,0,上料口提升轴,BatchAxis_A,10,HC,,30000,80000,80000,2000,10000,30000,10,100,0,0
        /// </summary>
        [ConfigProAttribute("BatchAxis")]
        public ConfigMoveAxis BatchAxis { get; set; }


        /// <summary>
        ///  PRO,0,提升轴待机点,BatchAxisP1,1000,,,,,,,,,,,,
        /// </summary>
        [ConfigProAttribute("BatchAxisP1")]
        public int BatchAxisP1 { get; set; }
        /// <summary>
        ///  PRO,0,提升轴上料目标点,BatchAxisP2,428000,,,,,,,,,,,,
        /// </summary>
        [ConfigProAttribute("BatchAxisP2")]
        public int BatchAxisP2 { get; set; }
        /// <summary>
        ///  PRO,0,提升轴上料目标点,BatchAxisP2,428000,,,,,,,,,,,,
        /// </summary>
        [ConfigProAttribute("BatchAxisP3")]
        public int BatchAxisP3 { get; set; }
        /// <summary>
        ///  PRO,0,提升轴上料目标点,BatchAxisP4,428000,,,,,,,,,,,,
        /// </summary>
        [ConfigProAttribute("BatchAxisP4")]
        public int BatchAxisP4 { get; set; }
        /// <summary>
        ///  PRO,0,提升上料轴P1速度,BatchAxis_P1Speed,70000,,,,,,,,,,,,
        /// </summary>
        [ConfigProAttribute("BatchAxis_P1Speed")]
        public int BatchAxis_P1Speed { get; set; }
        /// <summary>
        ///  PRO,0,提升上料轴P2速度,BatchAxis_P2Speed,5000,,,,,,,,,,,,
        /// </summary>
        [ConfigProAttribute("BatchAxis_P2Speed")]
        public int BatchAxis_P2Speed { get; set; }
        /// <summary>
        ///  PRO,0,提升上料轴P3速度/料盘拿走后提升轴下降速度,BatchAxis_P3Speed,5000,,,,,,,,,,,,
        /// </summary>
        [ConfigProAttribute("BatchAxis_P3Speed")]
        public int BatchAxis_P3Speed { get; set; }
        /// <summary>
        /// PRO,0,上料口提升轴P4速度/运动到扫码点速度,BatchAxis_P4Speed,5000,,,,,,,,,,,,
        /// </summary>
        [ConfigProAttribute("BatchAxis_P4Speed")]
        public int BatchAxis_P4Speed { get; set; }

        /// <summary>
        ///  PRO,0,A出料口的相机名称(多个用#分隔),CameraNameList_FeedA,GigE:MV-CE200-10GC (00E78064946),,,,,,,,,,,,
        /// </summary>
        [ConfigProAttribute("CameraNameList_FeedA")]
        public string CameraNameList_FeedA { get; set; }
        /// <summary>
        /// PRO,0,B出料口的相机名称(多个用#分隔),CameraNameList_FeedB,GigE:MV-CE200-10GC (00E78064946),,,,,,,,,,,,
        /// </summary>
        [ConfigProAttribute("CameraNameList_FeedB")]
        public string CameraNameList_FeedB { get; set; }

        private List<string> CameraList = null;

        public List<string> GetCameraList(string list)
        {
            if (CameraList == null)
            {
                CameraList = new List<string>();
                string[] arrayList = list.Split('#');
                foreach (string str in arrayList)
                {
                    string camera = str.Trim();
                    if (string.IsNullOrEmpty(camera).Equals(false))
                    {
                        CameraList.Add(camera);
                    }
                }
            }
            return CameraList;
        }

    }
}