using System.Linq; using HslCommunication; namespace DataBlockHelper.Entity.DB2103Entity { public class FOR_MOTOR_VFDEntity { public FOR_MOTOR_VFDEntity(ushort startSet,byte [] bytes) { byte[] content = new byte[14]; for (int i = 0; i < 14; i++) { content[i] = bytes[startSet + i]; } byte byt = content[0]; AutoMode = byt.GetBit(0); ManMode = byt.GetBit(1); Start_A = byt.GetBit(2); Stop_A = byt.GetBit(3); Start_M = byt.GetBit(4); Stop_M = byt.GetBit(5); AlarmReset = byt.GetBit(6); EXT_Estop = byt.GetBit(7); byt = content[1]; Running = byt.GetBit(0); Alarm = byt.GetBit(1); Error = byt.GetBit(2); Enable = byt.GetBit(3); Polarity = byt.GetBit(4); // bt.Skip(2).Take(4).ToArray(); var con = content.Skip(2).Take(12).ToArray(); SetSpeed_A = PlcConnect.Instance.ByteTransform.TransSingle(con, 0); SetSpeed_M = PlcConnect.Instance.ByteTransform.TransSingle(con, 4); ACT_Speed = PlcConnect.Instance.ByteTransform.TransSingle(con, 8); } public bool AutoMode { get; private set; } public bool ManMode { get; private set; } public bool Start_A { get; private set; } public bool Stop_A { get; private set; } public bool Start_M { get; private set; } public bool Stop_M { get; private set; } public bool AlarmReset { get; private set; } public bool EXT_Estop { get; private set; } public bool Running { get; private set; } public bool Alarm { get; private set; } public bool Error { get; private set; } public bool Enable { get; private set; } public bool Polarity { get; private set; } public float SetSpeed_A { get; private set; } public float SetSpeed_M { get; private set; } public float ACT_Speed { get; private set; } } }