using OrpaonEMS.Core;
using Prism.Mvvm;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OrpaonEMS.App.Services
{
///
/// BMS IO状态
///
public class BmsIO : BindableBase
{
public BmsIO()
{
}
private ushort _DOValue = 1;
///
/// DO的值
///
public ushort DOValue
{
get { return _DOValue; }
set
{
if (_DOValue != value)
{
DO1 = ComHelper.GetBitValue(value, 0);
DO2 = ComHelper.GetBitValue(value, 1);
DO3 = ComHelper.GetBitValue(value, 2);
DO4 = ComHelper.GetBitValue(value, 3);
DO5 = ComHelper.GetBitValue(value, 4);
DO6 = ComHelper.GetBitValue(value, 5);
DO7 = ComHelper.GetBitValue(value, 6);
DO8 = ComHelper.GetBitValue(value, 7);
_DOValue = value;
}
}
}
private ushort _DIValue=1;
///
/// DI的值
///
public ushort DIValue
{
get { return _DIValue; }
set
{
if (_DIValue != value)
{
DI1 = ComHelper.GetBitValue(value, 0);
DI2 = ComHelper.GetBitValue(value, 1);
DI3 = ComHelper.GetBitValue(value, 2);
DI4 = ComHelper.GetBitValue(value, 3);
DI5 = ComHelper.GetBitValue(value, 4);
DI6 = ComHelper.GetBitValue(value, 5);
DI7 = ComHelper.GetBitValue(value, 6);
DI8 = ComHelper.GetBitValue(value, 7);
_DIValue = value;
}
}
}
private bool _DO1;
///
/// 直流主正继电器
///
public bool DO1
{
get { return _DO1; }
set { _DO1 = value; RaisePropertyChanged(); }
}
private bool _DO2;
///
/// 直流预充继电器
///
public bool DO2
{
get { return _DO2; }
set { _DO2 = value; RaisePropertyChanged(); }
}
private bool _DO3;
///
/// 直流主负继电器
///
public bool DO3
{
get { return _DO3; }
set { _DO3 = value; RaisePropertyChanged(); }
}
private bool _DO4;
///
/// 直流主断分励线圈
///
public bool DO4
{
get { return _DO4; }
set { _DO4 = value; RaisePropertyChanged(); }
}
private bool _DO5;
///
/// 蜂鸣器
///
public bool DO5
{
get { return _DO5; }
set { _DO5 = value; RaisePropertyChanged(); }
}
private bool _DO6;
///
/// 报警指示灯
///
public bool DO6
{
get { return _DO6; }
set { _DO6 = value; RaisePropertyChanged(); }
}
private bool _DO7;
///
/// 直流主断闭合线圈
///
public bool DO7
{
get { return _DO7; }
set { _DO7 = value; RaisePropertyChanged(); }
}
private bool _DO8;
///
/// 直流开关复位
///
public bool DO8
{
get { return _DO8; }
set { _DO8 = value; RaisePropertyChanged(); }
}
private bool _DI1;
///
/// 直流主正继电器反馈
///
public bool DI1
{
get { return _DI1; }
set { _DI1 = value; RaisePropertyChanged(); }
}
private bool _DI2;
///
/// XXXX
///
public bool DI2
{
get { return _DI2; }
set { _DI2 = value; RaisePropertyChanged(); }
}
private bool _DI3;
///
/// 直流主负继电器反馈
///
public bool DI3
{
get { return _DI3; }
set { _DI3 = value; RaisePropertyChanged(); }
}
private bool _DI4;
///
/// 急停
///
public bool DI4
{
get { return _DI4; }
set { _DI4 = value; RaisePropertyChanged(); }
}
private bool _DI5;
///
/// XXXX
///
public bool DI5
{
get { return _DI5; }
set { _DI5 = value; RaisePropertyChanged(); }
}
private bool _DI6;
///
/// 直流主断闭合反馈
///
public bool DI6
{
get { return _DI6; }
set { _DI6 = value; RaisePropertyChanged(); }
}
private bool _DI7;
///
/// 水浸
///
public bool DI7
{
get { return _DI7; }
set { _DI7 = value; RaisePropertyChanged(); }
}
private bool _DI8;
///
/// PCS输出
///
public bool DI8
{
get { return _DI8; }
set { _DI8 = value; RaisePropertyChanged(); }
}
private bool _PcsAcCircuitBreaker;
///
/// PCS 交流主断
/// 通过PCS交流侧的电压判断交流主断是否闭合
///
public bool PcsAcCircuitBreaker
{
get { return _PcsAcCircuitBreaker; }
set { _PcsAcCircuitBreaker = value; RaisePropertyChanged(); }
}
}
}