using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Reflection;
using System.Runtime.Serialization;
using System.Text;
using System.Windows.Input;
using Aitex.Core.UI.MVVM;
using MECF.Framework.Common.CommonData;
namespace Aitex.Core.Common.DeviceData
{
[DataContract]
public enum ServoState
{
[EnumMember]
Unknown,
[EnumMember]
NotInitial,
[EnumMember]
Idle,
[EnumMember]
Moving,
[EnumMember]
Error,
}
[DataContract]
[Serializable]
public class AITServoMotorData : NotifiableItem, IDeviceData
{
[DataMember]
public string Module { get; set; }
[DataMember]
public string DeviceName { get; set; }
///
/// 显示在界面上的名称
///
[DataMember]
public string DisplayName { get; set; }
///
/// IO 表中定义的物理编号,物理追溯使用 比如: V122
///
[DataMember]
public string DeviceSchematicId { get; set; }
[DataMember]
public bool IsServoOn { get; set; }
[DataMember]
public bool IsStopped { get; set; }
[DataMember]
public bool IsError { get; set; }
[DataMember]
public bool IsRunning { get; set; }
[DataMember]
public bool IsEmo { get; set; }
[DataMember]
public bool IsAuto { get; set; }
[DataMember]
public bool IsManual { get; set; }
[DataMember]
public bool IsServoNormal { get; set; }
[DataMember]
public bool IsServoNoWarning { get; set; }
[DataMember]
public bool IsServoNoAlarm { get; set; }
[DataMember]
public bool IsNop { get; set; }
[DataMember]
public bool IsPositionComplete { get; set; }
[DataMember]
public bool IsNLimit { get; set; }
[DataMember]
public bool IsPLimit { get; set; }
[DataMember]
public int ErrorCode { get; set; }
[DataMember]
public float CurrentPosition { get; set; }
[DataMember]
public float CurrentSpeed { get; set; }
[DataMember]
public string CurrentStatus { get; set; }
[DataMember]
public double JogSpeedSetPoint { get; set; }
[DataMember]
public double AutoSpeedSetPoint { get; set; }
[DataMember]
public double AccSpeedSetPoint { get; set; }
[DataMember]
public ServoState State { get; set; }
public AITServoMotorData()
{
DisplayName = "Undefined Servo Motor";
}
public void Update(IDeviceData data)
{
}
}
public class AITServoMotorOperation
{
public const string Home = "Home";
public const string SetServoOn = "SetServoOn";
public const string SetServoOff = "SetServoOff";
public const string MoveTo = "MoveTo";
public const string MoveBy = "MoveBy";
public const string Reset = "Reset";
public const string Stop = "Stop";
}
public class AITServoMotorProperty
{
public const string IsServoOn = "IsServoOn";
public const string IsStopped = "IsStopped";
public const string IsError = "IsError";
public const string CurrentPosition = "CurrentPosition";
public const string CurrentStatus = "CurrentStatus";
}
}