增加了初始弹窗,但是没有成功

更改了CAN和LIN协调
更改了配置程序的名称顺序
This commit is contained in:
2025-01-11 12:04:34 +08:00
parent 620c5e8178
commit e49a48fb25
53 changed files with 5118 additions and 131 deletions

View 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(); }
}
}
}