KTK_LA_LINE_Config.cs 14.6 KB
using log4net;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;


namespace OnlineStore.LoadCSVLibrary
{
    /// <summary>
    /// 流水线配置
    /// </summary>
    public class KTK_LA_LINE_Config : StoreConfig
    {
        public KTK_LA_LINE_Config()
            : base()
        {
        }
        /// <summary>
        /// 流水线配置
        /// </summary>
        /// <param name="id">ID</param>
        /// <param name="cid">CID</param>
        /// <param name="type">类型</param>
        /// <param name="filepath">配置文件</param>
        public KTK_LA_LINE_Config(int id, string cid, string type, string filepath)
            : base(id, cid, type, filepath)
        {
        }
        /// <summary>
        /// 扫码枪IP
        /// </summary>
        [ConfigProAttribute("Scanner_Ip")]
        public string Scanner_Ip { get; set; }
        /// <summary>
        /// 扫码枪端口
        /// </summary>
        [ConfigProAttribute("Scanner_Port")]
        public int Scanner_Port { get; set; }
        /// <summary>
        /// 温湿度传感器地址
        /// </summary>
        [ConfigProAttribute("TemperateServer_Port")]
        public int TemperateServer_Port { get; set; }

        /// <summary>
        /// 预警温度
        /// </summary>
        [ConfigProAttribute("WarnTemperate")]
        public int WarnTemperate { get; set; }
        /// <summary>
        /// 预警湿度
        /// </summary>
        [ConfigProAttribute("WarnHumidity")]
        public int WarnHumidity { get; set; }
        /// <summary>
        /// 气压检测IO关闭需要持续的时间(=3表示需要关闭三秒以上才算关闭)
        /// </summary>
        [ConfigProAttribute("AirCheckSeconds")]
        public int AirCheckSeconds { get; set; }
        /// <summary>
        /// 阻挡气缸控制信号(1-4分别对应夹具检测1-4)
        /// </summary>
        [ConfigProAttribute("StopCylinderIOType")]
        public int StopCylinderIOType { get; set; }


        /// <summary>
        ///  PRO	(轴一)旋转轴原点目标速度	MiddleAxis_TargetSpeed	30000
        /// </summary>
        [ConfigProAttribute("MiddleAxis_TargetSpeed")]
        public int MiddleAxis_TargetSpeed { get; set; }
        /// <summary>
        ///  PRO	(轴一)旋转轴原点开始速度	MiddleAxis_StartSpeed	1000
        /// </summary>
        [ConfigProAttribute("MiddleAxis_StartSpeed")]
        public int MiddleAxis_StartSpeed { get; set; }
        /// <summary>
        ///  PRO	(轴一)旋转轴加速时间	MiddleAxis_AccelTime	500
        /// </summary>
        [ConfigProAttribute("MiddleAxis_AccelTime")]
        public short MiddleAxis_AccelTime { get; set; }
        /// <summary>
        ///  PRO	(轴一)旋转轴减速时间	MiddleAxis_DecelTime	500
        /// </summary>
        [ConfigProAttribute("MiddleAxis_DecelTime")]
        public short MiddleAxis_DecelTime { get; set; }
        /// <summary>
        ///  PRO	(轴二)升降轴轴原点目标速度	UpdownAxis_TargetSpeed	120000
        /// </summary>
        [ConfigProAttribute("UpdownAxis_TargetSpeed")]
        public int UpdownAxis_TargetSpeed { get; set; }
        /// <summary>
        ///  PRO	(轴二)升降轴轴原点开始速度	UpdownAxis_StartSpeed	15000
        /// </summary>
        [ConfigProAttribute("UpdownAxis_StartSpeed")]
        public int UpdownAxis_StartSpeed { get; set; }
        /// <summary>
        ///  PRO	(轴二)升降轴轴加速时间	UpdownAxis_AccelTime	200
        /// </summary>
        [ConfigProAttribute("UpdownAxis_AccelTime")]
        public short UpdownAxis_AccelTime { get; set; }
        /// <summary>
        ///  PRO	(轴二)升降轴轴减速时间	UpdownAxis_DecelTime	200
        /// </summary>
        [ConfigProAttribute("UpdownAxis_DecelTime")]
        public short UpdownAxis_DecelTime { get; set; }
        /// <summary>
        ///  PRO	(轴三)进出轴原点目标速度	InoutAxis_TargetSpeed	12000
        /// </summary>
        [ConfigProAttribute("InoutAxis_TargetSpeed")]
        public int InoutAxis_TargetSpeed { get; set; }
        /// <summary>
        ///  PRO	(轴三)进出轴原点开始速度	InoutAxis_StartSpeed	4000
        /// </summary>
        [ConfigProAttribute("InoutAxis_StartSpeed")]
        public int InoutAxis_StartSpeed { get; set; }
        /// <summary>
        ///  PRO	(轴三)进出轴加速时间	InoutAxis_AccelTime	200
        /// </summary>
        [ConfigProAttribute("InoutAxis_AccelTime")]
        public short InoutAxis_AccelTime { get; set; }
        /// <summary>
        ///  PRO	(轴三)进出轴减速时间	InoutAxis_DecelTime	200
        /// </summary>
        [ConfigProAttribute("InoutAxis_DecelTime")]
        public short InoutAxis_DecelTime { get; set; }
        /// <summary>
        ///  PRO	(轴四)压紧轴原点目标速度	CompressAxis_TargetSpeed	120000
        /// </summary>
        [ConfigProAttribute("CompressAxis_TargetSpeed")]
        public int CompressAxis_TargetSpeed { get; set; }
        /// <summary>
        ///  PRO	(轴四)压紧轴原点开始速度	CompressAxis_StartSpeed	70000
        /// </summary>
        [ConfigProAttribute("CompressAxis_StartSpeed")]
        public int CompressAxis_StartSpeed { get; set; }
        /// <summary>
        ///  PRO	(轴四)压紧轴加速时间	CompressAxis_AccelTime	200
        /// </summary>
        [ConfigProAttribute("CompressAxis_AccelTime")]
        public short CompressAxis_AccelTime { get; set; }
        /// <summary>
        ///  PRO	(轴四)压紧轴减速时间	CompressAxis_DecelTime	200
        /// </summary>
        [ConfigProAttribute("CompressAxis_DecelTime")]
        public short CompressAxis_DecelTime { get; set; }

        /// <summary>
        /// PRO	升降轴(轴2)P1速度	UpDownAxis_P1_Speed
        /// </summary>
        [ConfigProAttribute("UpDownAxis_P1_Speed")]
        public int UpDownAxis_P1_Speed { get; set; }
        /// <summary>
        /// PRO	升降轴(轴2)P2速度	UpDownAxis_P2_Speed
        /// </summary>
        [ConfigProAttribute("UpDownAxis_P2_Speed")]
        public int UpDownAxis_P2_Speed { get; set; }
        /// <summary>
        /// PRO	升降轴(轴2)P3速度	UpDownAxis_P3_Speed
        /// </summary>
        [ConfigProAttribute("UpDownAxis_P3_Speed")]
        public int UpDownAxis_P3_Speed { get; set; }
        /// <summary>
        /// PRO	升降轴(轴2)P4速度	UpDownAxis_P4_Speed
        /// </summary>
        [ConfigProAttribute("UpDownAxis_P4_Speed")]
        public int UpDownAxis_P4_Speed { get; set; }
        /// <summary>
        /// PRO	升降轴(轴2)P5速度	UpDownAxis_P5_Speed
        /// </summary>
        [ConfigProAttribute("UpDownAxis_P5_Speed")]
        public int UpDownAxis_P5_Speed { get; set; }
        /// <summary>
        /// PRO	升降轴(轴2)P6速度	UpDownAxis_P6_Speed
        /// </summary>
        [ConfigProAttribute("UpDownAxis_P6_Speed")]
        public int UpDownAxis_P6_Speed { get; set; }


        /// <summary>
        /// PRO	升降轴(轴2)P7速度	UpDownAxis_P7_Speed
        /// </summary>
        [ConfigProAttribute("UpDownAxis_P7_Speed")]
        public int UpDownAxis_P7_Speed { get; set; }


        /// <summary>
        /// PRO	升降轴(轴2)P8速度	UpDownAxis_P8_Speed
        /// </summary>
        [ConfigProAttribute("UpDownAxis_P8_Speed")]
        public int UpDownAxis_P8_Speed { get; set; }

        /// <summary>
        /// PRO	旋转轴(轴1)P1速度	MiddleAxis_P1_Speed
        /// </summary>
        [ConfigProAttribute("MiddleAxis_P1_Speed")]
        public int MiddleAxis_P1_Speed { get; set; }

        /// <summary>
        /// PRO	旋转轴(轴1)P2速度	MiddleAxis_P2_Speed
        /// </summary>
        [ConfigProAttribute("MiddleAxis_P2_Speed")]
        public int MiddleAxis_P2_Speed { get; set; }

        /// <summary>
        /// PRO	进出轴(轴3)P1速度	InOutAxis_P1_Speed
        /// </summary>
        [ConfigProAttribute("InOutAxis_P1_Speed")]
        public int InOutAxis_P1_Speed { get; set; }
         
        /// <summary>
        /// PRO	进出轴(轴3)P2速度	InOutAxis_P2_Speed
        /// </summary>
        [ConfigProAttribute("InOutAxis_P2_Speed")]
        public int InOutAxis_P2_Speed { get; set; }
        /// <summary>
        /// PRO	进出轴(轴3)P3速度	InOutAxis_P3_Speed	
        /// </summary>
        [ConfigProAttribute("InOutAxis_P3_Speed")]
        public int InOutAxis_P3_Speed { get; set; }
        /// <summary>
        /// PRO	压紧轴(轴4)P1速度	CompressAxis_P1_Speed
        /// </summary>
        [ConfigProAttribute("CompressAxis_P1_Speed")]
        public int CompressAxis_P1_Speed { get; set; }
        /// <summary>
        /// PRO	压紧轴(轴4)P2速度	CompressAxis_P2_Speed
        /// </summary>
        [ConfigProAttribute("CompressAxis_P2_Speed")]
        public int CompressAxis_P2_Speed { get; set; }
        /// <summary>
        /// PRO	压紧轴(轴4)P3速度	CompressAxis_P3_Speed
        /// </summary>
        [ConfigProAttribute("CompressAxis_P3_Speed")]
        public int CompressAxis_P3_Speed { get; set; }
        /// <summary>
        ///  PRO	(轴一)旋转轴停止时可误差的脉冲数的最小值	MiddleAxis_ErrorCountMin	200
        /// </summary>
        [ConfigProAttribute("MiddleAxis_ErrorCountMin")]
        public int MiddleAxis_ErrorCountMin { get; set; }
        /// <summary>
        ///  PRO	(轴二)升降轴轴停止时可误差的脉冲数的最小值	UpdownAxis_ErrorCountMin	200
        /// </summary>
        [ConfigProAttribute("UpdownAxis_ErrorCountMin")]
        public int UpdownAxis_ErrorCountMin { get; set; }
        /// <summary>
        ///  PRO	(轴三)进出轴停止时可误差的脉冲数的最小值	InoutAxis_ErrorCountMin	200
        /// </summary>
        [ConfigProAttribute("InoutAxis_ErrorCountMin")]
        public int InoutAxis_ErrorCountMin { get; set; }
        /// <summary>
        ///  PRO	(轴四)压紧轴停止时可误差的脉冲数的最小值	CompressAxis_ErrorCountMin	200
        /// </summary>
        [ConfigProAttribute("CompressAxis_ErrorCountMin")]
        public int CompressAxis_ErrorCountMin { get; set; }

        /// <summary>
        ///  PRO	(轴一)旋转轴停止时可误差的脉冲数的最大值	MiddleAxis_ErrorCountMax	500
        /// </summary>
        [ConfigProAttribute("MiddleAxis_ErrorCountMax")]
        public int MiddleAxis_ErrorCountMax { get; set; }
        /// <summary>
        ///  PRO	(轴二)升降轴轴停止时可误差的脉冲数的最大值	UpdownAxis_ErrorCountMax	500
        /// </summary>
        [ConfigProAttribute("UpdownAxis_ErrorCountMax")]
        public int UpdownAxis_ErrorCountMax { get; set; }
        /// <summary>
        ///  PRO	(轴三)进出轴停止时可误差的脉冲数的最大值	InoutAxis_ErrorCountMax	500
        /// </summary>
        [ConfigProAttribute("InoutAxis_ErrorCountMax")]
        public int InoutAxis_ErrorCountMax { get; set; }
        /// <summary>
        ///  PRO	(轴四)压紧轴停止时可误差的脉冲数的最大值	CompressAxis_ErrorCountMax	500
        /// </summary>
        [ConfigProAttribute("CompressAxis_ErrorCountMax")]
        public int CompressAxis_ErrorCountMax { get; set; }
        /// <summary>
        ///  PRO,BOX出入库次数多少次时,会自动重置旋转轴,Box_ResetMCount,10,,,,,
        /// </summary>
        [ConfigProAttribute("Box_ResetMCount")]
        public int Box_ResetMCount { get; set; }
        /// <summary>
        ///  PRO,BOX出入库次数多少次时,会自动重置操作(会重置所有轴),Box_ResetACount,100,,,,,
        /// </summary>
        [ConfigProAttribute("Box_ResetACount")]
        public int Box_ResetACount { get; set; }
        /// <summary>
        /// PRO,当多久没有出入库操作时,流水线进行休眠(休眠毫秒数),Sleep_MSeconds,120,,,,,
        /// </summary>
        [ConfigProAttribute("Sleep_MSeconds")]
        public int Sleep_MSeconds { get; set; }

        /// <summary>
        ///  PRO	(轴一)旋转轴速度倍率	MiddleAxis_ResolveSpeed	10
        /// </summary>
        [ConfigProAttribute("MiddleAxis_ResolveSpeed")]
        public int MiddleAxis_ResolveSpeed { get; set; }
        /// <summary>
        ///  PRO	(轴二)升降轴速度倍率	UpdownAxis_ResolveSpeed	20
        /// </summary>
        [ConfigProAttribute("UpdownAxis_ResolveSpeed")]
        public int UpdownAxis_ResolveSpeed { get; set; }
        /// <summary>
        ///  PRO	(轴三)进出轴速度倍率	InoutAxis_ResolveSpeed	10
        /// </summary>
        [ConfigProAttribute("InoutAxis_ResolveSpeed")]
        public int InoutAxis_ResolveSpeed { get; set; }
        /// <summary>
        ///  PRO	(轴四)压紧轴速度倍率	CompressAxis_ResolveSpeed	10
        /// </summary>
        [ConfigProAttribute("CompressAxis_ResolveSpeed")]
        public int CompressAxis_ResolveSpeed { get; set; }
        /// <summary>
        ///  PRO	是否使用料盘检测信号	IsUse_Tray_Check	10
        /// </summary>
        [ConfigProAttribute("IsUse_Tray_Check")]
        public int IsUse_Tray_Check { get; set; }
        /// <summary>
        ///  PRO	IO信号超时时间(毫秒)	IOSingle_TimerOut	5000
        /// </summary>
        [ConfigProAttribute("IOSingle_TimerOut",false)]
        public int IOSingle_TimerOut { get; set; }
        protected override void initMustHavePro()
        {
            MustHaveDIList = new List<string>();
            MustHaveDOList = new List<string>();

            MustHaveDIList.Add(Store_IO_Type.SuddenStop_BTN);
            MustHaveDIList.Add(Store_IO_Type.Reset_BTN);
            MustHaveDIList.Add(Store_IO_Type.Airpressure_Check);
            MustHaveDIList.Add(Store_IO_Type.Tray_Check);
            MustHaveDIList.Add(Store_IO_Type.Fixture_Check_1);
            MustHaveDIList.Add(Store_IO_Type.Fixture_Check_2);
            MustHaveDIList.Add(Store_IO_Type.Fixture_Check_3);
            MustHaveDIList.Add(Store_IO_Type.Fixture_Check_4);

            MustHaveDIList.Add(Store_IO_Type.OutStore_FixtureCheck);
            MustHaveDIList.Add(Store_IO_Type.OutStore_TrayCheck);
            MustHaveDIList.Add(Store_IO_Type.Out_NextFeeder);
             
            MustHaveDOList.Add(Store_IO_Type.AutoRun_HddLed);
            MustHaveDOList.Add(Store_IO_Type.RunSign_HddLed);
            MustHaveDOList.Add(Store_IO_Type.Alarm_HddLed);
            MustHaveDOList.Add(Store_IO_Type.DriveMotor1_Forward);
            MustHaveDOList.Add(Store_IO_Type.DriveMotor1_Back);
            MustHaveDOList.Add(Store_IO_Type.DriveMotor2_Forward);
            MustHaveDOList.Add(Store_IO_Type.DriveMotor2_Back);
        }
    }
}