增加了初始弹窗,但是没有成功
更改了CAN和LIN协调 更改了配置程序的名称顺序
This commit is contained in:
147
CapMachine.Wpf/Models/Tag/QuickTag.cs
Normal file
147
CapMachine.Wpf/Models/Tag/QuickTag.cs
Normal file
@@ -0,0 +1,147 @@
|
||||
using HslCommunication;
|
||||
using HslCommunication.Core;
|
||||
using HslCommunication.Core.Device;
|
||||
using HslCommunication.Profinet.Siemens;
|
||||
using NPOI.SS.Formula.Functions;
|
||||
using Prism.Mvvm;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using static CapMachine.Wpf.Models.ComEnum;
|
||||
|
||||
namespace CapMachine.Wpf.Models.Tag
|
||||
{
|
||||
/// <summary>
|
||||
/// 快速和简单的标签
|
||||
/// </summary>
|
||||
public class QuickTag : BindableBase
|
||||
{
|
||||
public QuickTag(SiemensS7Net deviceTcpNet)
|
||||
{
|
||||
|
||||
SiemensS7Net = deviceTcpNet;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 驱动
|
||||
/// </summary>
|
||||
public SiemensS7Net SiemensS7Net { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 名称
|
||||
/// </summary>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 标签组
|
||||
/// </summary>
|
||||
public string? Group { get; set; }
|
||||
|
||||
///// <summary>
|
||||
///// 实时值
|
||||
///// </summary>
|
||||
//public abstract IRegisterValue<short> RtValue { get; set; }
|
||||
|
||||
private object? _Value;
|
||||
/// <summary>
|
||||
/// 实时值
|
||||
/// </summary>
|
||||
public object? Value
|
||||
{
|
||||
get { return _Value; }
|
||||
set
|
||||
{
|
||||
_Value = value;
|
||||
ValueStr = value?.ToString();
|
||||
}
|
||||
}
|
||||
|
||||
private OperateResult<byte[]>? _OperateResultSource;
|
||||
/// <summary>
|
||||
/// 原始值实时值
|
||||
/// </summary>
|
||||
public OperateResult<byte[]>? OperateResultSource
|
||||
{
|
||||
get { return _OperateResultSource; }
|
||||
set
|
||||
{
|
||||
switch (ValueType)
|
||||
{
|
||||
case DataType.Short:
|
||||
Value = SiemensS7Net.ByteTransform.TransInt16(value!.Content, 0);
|
||||
break;
|
||||
case DataType.Double:
|
||||
Value = SiemensS7Net.ByteTransform.TransDouble(value!.Content, 0);
|
||||
break;
|
||||
case DataType.String:
|
||||
Value = SiemensS7Net.ByteTransform.TransString(value!.Content, Encoding.ASCII);
|
||||
break;
|
||||
case DataType.Byte:
|
||||
Value = SiemensS7Net.ByteTransform.TransByte(value!.Content, 0);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
_OperateResultSource = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 数据类型信息
|
||||
/// </summary>
|
||||
public DataType ValueType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 值地址信息
|
||||
/// </summary>
|
||||
public string? ValueAddress { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 地址信息 Index
|
||||
/// </summary>
|
||||
public int Index { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 字节长度
|
||||
/// </summary>
|
||||
public ushort ByteLength { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最大值
|
||||
/// </summary>
|
||||
public double MaxValue { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最小值
|
||||
/// </summary>
|
||||
public double MinValue { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 精度 到PLC的转换精度/分辨率
|
||||
/// </summary>
|
||||
public short Precision { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 小数点 展示时用的小数点
|
||||
/// </summary>
|
||||
public short DecimalPoint { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 单位
|
||||
/// </summary>
|
||||
public string? Unit { get; set; }
|
||||
|
||||
private string? _ValueStr;
|
||||
/// <summary>
|
||||
/// 值的字符串
|
||||
/// </summary>
|
||||
public string? ValueStr
|
||||
{
|
||||
get { return _ValueStr; }
|
||||
set { _ValueStr = value; RaisePropertyChanged(); }
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user