using System.ComponentModel;

namespace FLY.Winder.Common
{
    public class WinderAccessory : INotifyPropertyChanged
    {
        public WinderAccessory()
        {

        }

        #region 辅助代码生成
        /// <summary>
        /// 设定速度(m/min)
        /// </summary>
        public float VelocitySet { get; set; }

        /// <summary>
        /// 速度确定(┷)
        /// </summary>
        public bool IsVelocityChanged { get; set; }

        /// <summary>
        /// 速度显示(m/min)
        /// </summary>
        public float Velocity { get; set; }

        /// <summary>
        /// 上牵引电机电流(A)
        /// </summary>
        public float Traction1Current { get; set; }

        /// <summary>
        /// 上牵引开启显示
        /// </summary>
        public bool IsTraction1On { get; set; }

        /// <summary>
        /// 上牵引开启设置
        /// </summary>
        public bool IsTraction1OnSet { get; set; }

        /// <summary>
        /// 二牵引设定张力(kg)
        /// </summary>
        public float Traction2TensionKgSet { get; set; }

        /// <summary>
        /// 二牵引实际张力(kg)
        /// </summary>
        public float Traction2TensionKg { get; set; }

        /// <summary>
        /// 二牵引电机电流(A)
        /// </summary>
        public float Traction2Current { get; set; }

        /// <summary>
        /// 二牵引手动
        /// </summary>
        public bool IsTraction2Manual { get; set; }

        /// <summary>
        /// 二牵引开启显示
        /// </summary>
        public bool IsTraction2On { get; set; }

        /// <summary>
        /// 二牵引开启设置
        /// </summary>
        public bool IsTraction2OnSet { get; set; }

        /// <summary>
        /// 旋转塔正转
        /// </summary>
        public bool IsRotaryForw { get; set; }

        /// <summary>
        /// 旋转塔反转
        /// </summary>
        public bool IsRotaryBackw { get; set; }

        /// <summary>
        /// 旋转塔正向机械限位
        /// </summary>
        public bool IsRotaryForwLimit { get; set; }

        /// <summary>
        /// 旋转塔正转换向限位
        /// </summary>
        public bool IsRotaryForwTurn { get; set; }

        /// <summary>
        /// 旋转塔复位原点限位
        /// </summary>
        public bool IsRotaryOrgSign { get; set; }

        /// <summary>
        /// 旋转塔反向机械限位
        /// </summary>
        public bool IsRotaryBackwLimit { get; set; }

        /// <summary>
        /// 旋转塔反转换向限位
        /// </summary>
        public bool IsRotaryBackwTurn { get; set; }

        /// <summary>
        /// 旋转塔电机频率设定(Hz)
        /// </summary>
        public float RotaryFreqSet { get; set; }

        /// <summary>
        /// 旋转塔电机频率确定
        /// </summary>
        public bool IsRotaryFreqChanged { get; set; }

        /// <summary>
        /// 旋转塔电机频率显示(Hz)
        /// </summary>
        public float RotaryFreq { get; set; }

        /// <summary>
        /// 旋转塔电机电流(A)
        /// </summary>
        public float RotaryCurrent { get; set; }

        /// <summary>
        /// 旋转塔复位指示
        /// </summary>
        public bool IsRotaryOrg { get; set; }

        /// <summary>
        /// 旋转塔复位(┷)
        /// </summary>
        public bool RotaryOrg { get; set; }

        /// <summary>
        /// 旋转塔开启指示
        /// </summary>
        public bool IsRotaryOn { get; set; }

        /// <summary>
        /// 旋转塔开启(┷)
        /// </summary>
        public bool RotaryOn { get; set; }

        /// <summary>
        /// 一牵引调试On
        /// </summary>
        public bool IsTraction1Debug { get; set; }

        /// <summary>
        /// 一牵引辊筒直径
        /// </summary>
        public float Traction1RollerD { get; set; }

        /// <summary>
        /// 一牵引传动速比
        /// </summary>
        public float Traction1GearRatio { get; set; }

        /// <summary>
        /// 一牵引同步速度
        /// </summary>
        public float Traction1SyncV { get; set; }

        /// <summary>
        /// 一牵引实际速度
        /// </summary>
        public float Traction1Velocity { get; set; }

        /// <summary>
        /// 二牵引张力反馈
        /// </summary>
        public float Traction2Tension { get; set; }

        /// <summary>
        /// 二牵引张力设定
        /// </summary>
        public float Traction2TensionSet { get; set; }

        /// <summary>
        /// 二牵引增益设定
        /// </summary>
        public float Traction2Gain { get; set; }

        /// <summary>
        /// 二牵引积分时间
        /// </summary>
        public float Traction2ITime { get; set; }

        /// <summary>
        /// 二牵引调节系数
        /// </summary>
        public float Traction2Factor { get; set; }

        /// <summary>
        /// 二牵引辊筒直径
        /// </summary>
        public float Traction2RollerD { get; set; }

        /// <summary>
        /// 二牵引传动速比
        /// </summary>
        public float Traction2GearRatio { get; set; }

        /// <summary>
        /// 二牵引PID结果
        /// </summary>
        public float Traction2PIDResult { get; set; }

        /// <summary>
        /// 二牵引PID调节
        /// </summary>
        public float Traction2PIDAdjust { get; set; }

        /// <summary>
        /// 二牵引同步速度
        /// </summary>
        public float Traction2SyncV { get; set; }

        /// <summary>
        /// 二牵引实际速度
        /// </summary>
        public float Traction2Velocity { get; set; }

        /// <summary>
        /// 速度系数
        /// </summary>
        public float VelocityFactor { get; set; }

        /// <summary>
        /// 加减时间
        /// </summary>
        public float AccDecTime { get; set; }

        /// <summary>
        /// 二牵引升降增益
        /// </summary>
        public float Traction2LiftGain { get; set; }

        /// <summary>
        /// 张力检测设定
        /// </summary>
        public float TensionDetection { get; set; }

        /// <summary>
        /// 收卷计米辊周长(mm)
        /// </summary>
        public float WinderMeasurePerimeter { get; set; }

        /// <summary>
        /// 张力检测量程(kg)
        /// </summary>
        public float TensionDetectionRange { get; set; }

        /// <summary>
        /// 主牵引风机过载报警!!!请检查(OFF)
        /// </summary>
        public bool IsError_Traction1Fan { get; set; }

        /// <summary>
        /// 主牵引变频故障报警!!!请检查(OFF)
        /// </summary>
        public bool IsError_Traction1VFD { get; set; }

        /// <summary>
        /// 二牵引变频故障报警!!!请检查(OFF)
        /// </summary>
        public bool IsError_Traction2VFD { get; set; }

        /// <summary>
        /// 二牵引风机过载报警!!!请检查(OFF)
        /// </summary>
        public bool IsError_Traction2Fan { get; set; }

        /// <summary>
        /// 旋转塔变频故障报警!!!请检查(OFF)
        /// </summary>
        public bool IsError_RotaryVFD { get; set; }

        /// <summary>
        /// 旋转塔风机过载报警!!!请检查(OFF)
        /// </summary>
        public bool IsError_RotaryFan { get; set; }

        /// <summary>
        /// 二牵引拉线急停开启!!!请复位(OFF)
        /// </summary>
        public bool IsError_Traction2Scram { get; set; }

        /// <summary>
        /// 电柜急停开启!!!请复位(OFF)
        /// </summary>
        public bool IsError_Scram { get; set; }

        /// <summary>
        /// 主牵引拉线急停开启!!!请复位(OFF)
        /// </summary>
        public bool IsError_Traction1Scram { get; set; }

        /// <summary>
        /// 客户急停开启!!!请复位(OFF)
        /// </summary>
        public bool IsError_CustomerScram { get; set; }

        /// <summary>
        /// 旋转塔正转已到极限位!!!请检查(OFF)
        /// </summary>
        public bool IsError_RotaryForwLimit { get; set; }

        /// <summary>
        /// 旋转塔反转已到极限位!!!请检查(OFF)
        /// </summary>
        public bool IsError_RotaryBackwLimit { get; set; }

        /// <summary>
        /// 转塔正向极限锁定!!!请解除(ON)
        /// </summary>
        public bool IsError_RotaryForwLock { get; set; }

        /// <summary>
        /// 转塔反向极限锁定!!!请解除(ON)
        /// </summary>
        public bool IsError_RotaryBackwLock { get; set; }

        #endregion

        public event PropertyChangedEventHandler PropertyChanged;
    }
}