diff --git a/CapMachine.Wpf/CanDrive/ToomossCan.cs b/CapMachine.Wpf/CanDrive/ToomossCan.cs
index 258c6fe..40c2c16 100644
--- a/CapMachine.Wpf/CanDrive/ToomossCan.cs
+++ b/CapMachine.Wpf/CanDrive/ToomossCan.cs
@@ -25,6 +25,7 @@ namespace CapMachine.Wpf.CanDrive
public class ToomossCan : BindableBase
{
private readonly IContainerProvider ContainerProvider;
+ private readonly object _dbcParserLock = new object();
///
/// 实例化函数
@@ -332,58 +333,61 @@ namespace CapMachine.Wpf.CanDrive
///
public void DBC_Parser(string Path)
{
- //解析DBC文件
- DBCHandle = CAN_DBCParser.DBC_ParserFile(DevHandle, new StringBuilder(Path));
- if (DBCHandle == 0)
+ lock (_dbcParserLock)
{
- Console.WriteLine("Parser DBC File error!");
- DbcParserState = false;
- return;
- }
- else
- {
- Console.WriteLine("Parser DBC File success!");
- }
-
- ListCanDbcModel.Clear();
-
- //打印DBC里面报文和信号相关信息
- int DBCMsgNum = CAN_DBCParser.DBC_GetMsgQuantity(DBCHandle);
- for (int i = 0; i < DBCMsgNum; i++)
- {
- StringBuilder MsgName = new StringBuilder(32);
- CAN_DBCParser.DBC_GetMsgName(DBCHandle, i, MsgName);
- //Console.WriteLine("Msg.Name = {0}", MsgName);
- int DBCSigNum = CAN_DBCParser.DBC_GetMsgSignalQuantity(DBCHandle, MsgName);
- StringBuilder Publisher = new StringBuilder(32);
- CAN_DBCParser.DBC_GetMsgPublisher(DBCHandle, MsgName, Publisher);
- long MsgId;
- MsgId = CAN_DBCParser.DBC_GetMsgIDByName(DBCHandle, MsgName);
-
- //Console.Write("Signals:");
- for (int j = 0; j < DBCSigNum; j++)
+ //解析DBC文件
+ DBCHandle = CAN_DBCParser.DBC_ParserFile(DevHandle, new StringBuilder(Path));
+ if (DBCHandle == 0)
{
- StringBuilder SigName = new StringBuilder(32);
- CAN_DBCParser.DBC_GetMsgSignalName(DBCHandle, MsgName, j, SigName);
- //Console.Write("{0} ", SigName);
-
- //增加信息数据
- ListCanDbcModel.Add(new CanDbcModel()
- {
- MsgName = MsgName.ToString(),
- MsgId = "0x" + MsgId.ToString("X8"),
- SignalName = SigName.ToString(),
- SignalDesc = "",
- SignalUnit = "",
- SignalRtValue = "",
- Publisher = Publisher.ToString()
- });
+ Console.WriteLine("Parser DBC File error!");
+ DbcParserState = false;
+ return;
+ }
+ else
+ {
+ Console.WriteLine("Parser DBC File success!");
}
- //Console.WriteLine("");
- }
- //Dbc解析成功
- DbcParserState = true;
+ ListCanDbcModel.Clear();
+
+ //打印DBC里面报文和信号相关信息
+ int DBCMsgNum = CAN_DBCParser.DBC_GetMsgQuantity(DBCHandle);
+ for (int i = 0; i < DBCMsgNum; i++)
+ {
+ StringBuilder MsgName = new StringBuilder(32);
+ CAN_DBCParser.DBC_GetMsgName(DBCHandle, i, MsgName);
+ //Console.WriteLine("Msg.Name = {0}", MsgName);
+ int DBCSigNum = CAN_DBCParser.DBC_GetMsgSignalQuantity(DBCHandle, MsgName);
+ StringBuilder Publisher = new StringBuilder(32);
+ CAN_DBCParser.DBC_GetMsgPublisher(DBCHandle, MsgName, Publisher);
+ long MsgId;
+ MsgId = CAN_DBCParser.DBC_GetMsgIDByName(DBCHandle, MsgName);
+
+ //Console.Write("Signals:");
+ for (int j = 0; j < DBCSigNum; j++)
+ {
+ StringBuilder SigName = new StringBuilder(32);
+ CAN_DBCParser.DBC_GetMsgSignalName(DBCHandle, MsgName, j, SigName);
+ //Console.Write("{0} ", SigName);
+
+ //增加信息数据
+ ListCanDbcModel.Add(new CanDbcModel()
+ {
+ MsgName = MsgName.ToString(),
+ MsgId = "0x" + MsgId.ToString("X8"),
+ SignalName = SigName.ToString(),
+ SignalDesc = "",
+ SignalUnit = "",
+ SignalRtValue = "",
+ Publisher = Publisher.ToString()
+ });
+ }
+ //Console.WriteLine("");
+ }
+
+ //Dbc解析成功
+ DbcParserState = true;
+ }
}
///
@@ -397,33 +401,36 @@ namespace CapMachine.Wpf.CanDrive
for (int i = 0; i < GroupMsg.Count(); i++)
{
CanMsg[i] = new USB2CAN.CAN_MSG();
- CanMsg[i].Data = new Byte[64];
+ CanMsg[i].Data = new Byte[8];
}
- IntPtr msgPt = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(USB2CAN.CAN_MSG)));
- int Index = 0;
- //循环给MSG赋值数据
- foreach (var itemMsg in GroupMsg)
+ IntPtr msgPt = IntPtr.Zero;
+ try
{
- foreach (var itemSignal in itemMsg)
+ msgPt = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(USB2CAN.CAN_MSG)));
+ int Index = 0;
+ lock (_dbcParserLock)
{
- CAN_DBCParser.DBC_SetSignalValue(DBCHandle, new StringBuilder(itemMsg.Key), new StringBuilder(itemSignal.SignalName), itemSignal.SignalCmdValue);
+ //循环给MSG赋值数据
+ foreach (var itemMsg in GroupMsg)
+ {
+ foreach (var itemSignal in itemMsg)
+ {
+ CAN_DBCParser.DBC_SetSignalValue(DBCHandle, new StringBuilder(itemMsg.Key), new StringBuilder(itemSignal.SignalName), itemSignal.SignalCmdValue);
+ }
+ CAN_DBCParser.DBC_SyncValueToCANMsg(DBCHandle, new StringBuilder(itemMsg.Key), msgPt);
+ CanMsg[Index] = (USB2CAN.CAN_MSG)Marshal.PtrToStructure(msgPt, typeof(USB2CAN.CAN_MSG));
+ Index++;
+ }
+ }
+ }
+ finally
+ {
+ if (msgPt != IntPtr.Zero)
+ {
+ Marshal.FreeHGlobal(msgPt);
}
- CAN_DBCParser.DBC_SyncValueToCANMsg(DBCHandle, new StringBuilder(itemMsg.Key), msgPt);
- CanMsg[Index] = (USB2CAN.CAN_MSG)Marshal.PtrToStructure(msgPt, typeof(USB2CAN.CAN_MSG));
- Index++;
}
-
- //设置信号值
- //DBCParser.DBC_SetSignalValue(DBCHandle, new StringBuilder("msg_moto_speed"), new StringBuilder("moto_speed"), 2412);
- //DBCParser.DBC_SetSignalValue(DBCHandle, new StringBuilder("msg_oil_pressure"), new StringBuilder("oil_pressure"), 980);
- //DBCParser.DBC_SetSignalValue(DBCHandle, new StringBuilder("msg_speed_can"), new StringBuilder("speed_can"), 120);
-
- //通过DBC写入数据后生成CanMsg
- //将信号值填入CAN消息里面
-
- //释放申请的临时缓冲区
- Marshal.FreeHGlobal(msgPt);
Console.WriteLine("");
//发送CAN数据
int SendedNum = USB2CAN.CAN_SendMsg(DevHandle, WriteCANIndex, CanMsg, (uint)CanMsg.Length);
@@ -492,6 +499,11 @@ namespace CapMachine.Wpf.CanDrive
///
public void StartCycleSendMsg()
{
+ if (CycleSendTask != null && !CycleSendTask.IsCompleted)
+ {
+ return;
+ }
+
CycleSendTask = Task.Run(async () =>
{
while (IsCycleSend)
@@ -504,27 +516,36 @@ namespace CapMachine.Wpf.CanDrive
for (int i = 0; i < GroupMsg.Count(); i++)
{
CanMsg[i] = new USB2CAN.CAN_MSG();
- CanMsg[i].Data = new Byte[64];
+ CanMsg[i].Data = new Byte[8];
}
- IntPtr msgPtSend = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(USB2CAN.CAN_MSG)));
- int Index = 0;
- //循环给MSG赋值数据
- foreach (var itemMsg in GroupMsg)
+ IntPtr msgPtSend = IntPtr.Zero;
+ try
{
- foreach (var itemSignal in itemMsg)
+ msgPtSend = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(USB2CAN.CAN_MSG)));
+ int Index = 0;
+ lock (_dbcParserLock)
{
- CAN_DBCParser.DBC_SetSignalValue(DBCHandle, new StringBuilder(itemMsg.Key), new StringBuilder(itemSignal.SignalName), itemSignal.SignalCmdValue);
+ //循环给MSG赋值数据
+ foreach (var itemMsg in GroupMsg)
+ {
+ foreach (var itemSignal in itemMsg)
+ {
+ CAN_DBCParser.DBC_SetSignalValue(DBCHandle, new StringBuilder(itemMsg.Key), new StringBuilder(itemSignal.SignalName), itemSignal.SignalCmdValue);
+ }
+ CAN_DBCParser.DBC_SyncValueToCANMsg(DBCHandle, new StringBuilder(itemMsg.Key), msgPtSend);
+ CanMsg[Index] = (USB2CAN.CAN_MSG)Marshal.PtrToStructure(msgPtSend, typeof(USB2CAN.CAN_MSG));
+ Index++;
+ }
+ }
+ }
+ finally
+ {
+ if (msgPtSend != IntPtr.Zero)
+ {
+ Marshal.FreeHGlobal(msgPtSend);
}
- CAN_DBCParser.DBC_SyncValueToCANMsg(DBCHandle, new StringBuilder(itemMsg.Key), msgPtSend);
- CanMsg[Index] = (USB2CAN.CAN_MSG)Marshal.PtrToStructure(msgPtSend, typeof(USB2CAN.CAN_MSG));
- Index++;
}
- //通过DBC写入数据后生成CanMsg
- //将信号值填入CAN消息里面
-
- //释放申请的临时缓冲区
- Marshal.FreeHGlobal(msgPtSend);
Console.WriteLine("");
//发送CAN数据
int SendedNum = USB2CAN.CAN_SendMsg(DevHandle, WriteCANIndex, CanMsg, (uint)CanMsg.Length);
@@ -551,6 +572,11 @@ namespace CapMachine.Wpf.CanDrive
///
public void StartCycleReviceCanMsg()
{
+ if (CycleReviceTask != null && !CycleReviceTask.IsCompleted)
+ {
+ return;
+ }
+
CycleReviceTask = Task.Run(async () =>
{
while (IsCycleRevice)
@@ -558,65 +584,81 @@ namespace CapMachine.Wpf.CanDrive
await Task.Delay(ReviceCycle);
try
{
- //另外一个CAN通道读取数据
- USB2CAN.CAN_MSG[] CanMsgBuffer = new USB2CAN.CAN_MSG[128];
- //申请数据缓冲区
- IntPtr msgPtRead = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(USB2CAN.CAN_MSG)) * CanMsgBuffer.Length);
- int CanNum = USB2CAN.CAN_GetMsgWithSize(DevHandle, ReadCANIndex, msgPtRead, CanMsgBuffer.Length);
- if (CanNum > 0)
+ IntPtr msgPtRead = IntPtr.Zero;
+ try
{
- Console.WriteLine("Read CanMsgNum = {0}", CanNum);
- for (int i = 0; i < CanNum; i++)
+ //另外一个CAN通道读取数据
+ USB2CAN.CAN_MSG[] CanMsgBuffer = new USB2CAN.CAN_MSG[128];
+ //申请数据缓冲区
+ msgPtRead = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(USB2CAN.CAN_MSG)) * CanMsgBuffer.Length);
+ int CanNum = USB2CAN.CAN_GetMsgWithSize(DevHandle, ReadCANIndex, msgPtRead, CanMsgBuffer.Length);
+ if (CanNum > 0)
{
- //CanMsgBuffer[i] = (USB2CAN.CAN_MSG)Marshal.PtrToStructure((IntPtr)((UInt32)msgPtRead + i * Marshal.SizeOf(typeof(USB2CAN.CAN_MSG))), typeof(USB2CAN.CAN_MSG)); //有溢出报错
- CanMsgBuffer[i] = (USB2CAN.CAN_MSG)Marshal.PtrToStructure((IntPtr)(msgPtRead + i * Marshal.SizeOf(typeof(USB2CAN.CAN_MSG))), typeof(USB2CAN.CAN_MSG));
-
- //Console.WriteLine("CanMsg[{0}].ID = 0x{1}", i, CanMsgBuffer[i].ID.ToString("X8"));
- //Console.WriteLine("CanMsg[{0}].TimeStamp = {1}", i, CanMsgBuffer[i].TimeStamp);
- //Console.Write("CanMsg[{0}].Data = ", i);
- for (int j = 0; j < CanMsgBuffer[i].DataLen; j++)
+ Console.WriteLine("Read CanMsgNum = {0}", CanNum);
+ for (int i = 0; i < CanNum; i++)
{
- Console.Write("{0} ", CanMsgBuffer[i].Data[j].ToString("X2"));
+ //CanMsgBuffer[i] = (USB2CAN.CAN_MSG)Marshal.PtrToStructure((IntPtr)((UInt32)msgPtRead + i * Marshal.SizeOf(typeof(USB2CAN.CAN_MSG))), typeof(USB2CAN.CAN_MSG)); //有溢出报错
+ CanMsgBuffer[i] = (USB2CAN.CAN_MSG)Marshal.PtrToStructure((IntPtr)(msgPtRead + i * Marshal.SizeOf(typeof(USB2CAN.CAN_MSG))), typeof(USB2CAN.CAN_MSG));
+
+ //Console.WriteLine("CanMsg[{0}].ID = 0x{1}", i, CanMsgBuffer[i].ID.ToString("X8"));
+ //Console.WriteLine("CanMsg[{0}].TimeStamp = {1}", i, CanMsgBuffer[i].TimeStamp);
+ //Console.Write("CanMsg[{0}].Data = ", i);
+ for (int j = 0; j < CanMsgBuffer[i].DataLen; j++)
+ {
+ Console.Write("{0} ", CanMsgBuffer[i].Data[j].ToString("X2"));
+ }
+ //Console.WriteLine("");
+
+ //报文给高速记录的服务
+ HighSpeedDataService.AppendOrUpdateMsg(new Models.HighSpeed.CommMsg()
+ {
+ Category = "CAN",
+ MsgInfo = "0x" + CanMsgBuffer[i].ID.ToString("X8"),
+ MsgData = BitConverter.ToString(CanMsgBuffer[i].Data),
+ Time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff")
+ });
}
- //Console.WriteLine("");
+ }
+ else if (CanNum == 0)
+ {
+ //Console.WriteLine("No CAN data!");
+ }
+ else
+ {
+ //Console.WriteLine("Get CAN data error!");
+ }
+ Console.WriteLine("");
- //报文给高速记录的服务
- HighSpeedDataService.AppendOrUpdateMsg(new Models.HighSpeed.CommMsg()
+ if (CanNum > 0)
+ {
+ lock (_dbcParserLock)
{
- Category = "CAN",
- MsgInfo = "0x" + CanMsgBuffer[i].ID.ToString("X8"),
- MsgData = BitConverter.ToString(CanMsgBuffer[i].Data),
- Time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff")
- });
+ //将CAN消息数据填充到信号里面,用DBC解析数据
+ CAN_DBCParser.DBC_SyncCANMsgToValue(DBCHandle, msgPtRead, CanNum);
+
+ //循环获取消息的数据
+ foreach (var item in ListCanDbcModel)
+ {
+ //有配置的名称的,认为是有用的,则需要读取数据
+ //if (!string.IsNullOrEmpty(item.Name))
+ //{
+ var valueSb = new StringBuilder(64);
+ CAN_DBCParser.DBC_GetSignalValueStr(DBCHandle, new StringBuilder(item.MsgName), new StringBuilder(item.SignalName), valueSb);
+ item.SignalRtValueSb = valueSb;
+ Console.Write(valueSb.ToString());
+ //}
+ }
+ }
}
}
- else if (CanNum == 0)
+ finally
{
- //Console.WriteLine("No CAN data!");
+ if (msgPtRead != IntPtr.Zero)
+ {
+ //释放数据缓冲区,必须释放,否则程序运行一段时间后会报内存不足
+ Marshal.FreeHGlobal(msgPtRead);
+ }
}
- else
- {
- //Console.WriteLine("Get CAN data error!");
- }
- Console.WriteLine("");
-
- //将CAN消息数据填充到信号里面,用DBC解析数据
- CAN_DBCParser.DBC_SyncCANMsgToValue(DBCHandle, msgPtRead, CanNum);
-
- //循环获取消息的数据
- foreach (var item in ListCanDbcModel)
- {
- //有配置的名称的,认为是有用的,则需要读取数据
- //if (!string.IsNullOrEmpty(item.Name))
- //{
- CAN_DBCParser.DBC_GetSignalValueStr(DBCHandle, new StringBuilder(item.MsgName), new StringBuilder(item.SignalName), ValueSb);
- item.SignalRtValueSb = ValueSb;
- Console.Write(ValueSb.ToString());
- //}
- }
-
- //释放数据缓冲区,必须释放,否则程序运行一段时间后会报内存不足
- Marshal.FreeHGlobal(msgPtRead);
Thread.Sleep(10);
////获取信号值并打印出来
@@ -662,6 +704,11 @@ namespace CapMachine.Wpf.CanDrive
///
public void StartPrecisionCycleSendMsg()
{
+ if (CycleSendTask != null && !CycleSendTask.IsCompleted)
+ {
+ return;
+ }
+
// 创建取消标记源 用于控制任务的取消 允许在需要时通过取消令牌来优雅停止任务
var cancellationTokenSource = new CancellationTokenSource();
var token = cancellationTokenSource.Token;
@@ -742,28 +789,36 @@ namespace CapMachine.Wpf.CanDrive
for (int i = 0; i < GroupMsg.Count(); i++)
{
CanMsg[i] = new USB2CAN.CAN_MSG();
- CanMsg[i].Data = new Byte[64];
+ CanMsg[i].Data = new Byte[8];
}
- IntPtr msgPtSend = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(USB2CAN.CAN_MSG)));
- int Index = 0;
- //循环给MSG赋值数据
- foreach (var itemMsg in GroupMsg)
+ IntPtr msgPtSend = IntPtr.Zero;
+ try
{
- foreach (var itemSignal in itemMsg)
+ msgPtSend = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(USB2CAN.CAN_MSG)));
+ int Index = 0;
+ lock (_dbcParserLock)
{
- CAN_DBCParser.DBC_SetSignalValue(DBCHandle, new StringBuilder(itemMsg.Key), new StringBuilder(itemSignal.SignalName), itemSignal.SignalCmdValue);
+ //循环给MSG赋值数据
+ foreach (var itemMsg in GroupMsg)
+ {
+ foreach (var itemSignal in itemMsg)
+ {
+ CAN_DBCParser.DBC_SetSignalValue(DBCHandle, new StringBuilder(itemMsg.Key), new StringBuilder(itemSignal.SignalName), itemSignal.SignalCmdValue);
+ }
+ CAN_DBCParser.DBC_SyncValueToCANMsg(DBCHandle, new StringBuilder(itemMsg.Key), msgPtSend);
+ CanMsg[Index] = (USB2CAN.CAN_MSG)Marshal.PtrToStructure(msgPtSend, typeof(USB2CAN.CAN_MSG));
+ Index++;
+ }
+ }
+ }
+ finally
+ {
+ if (msgPtSend != IntPtr.Zero)
+ {
+ Marshal.FreeHGlobal(msgPtSend);
}
- CAN_DBCParser.DBC_SyncValueToCANMsg(DBCHandle, new StringBuilder(itemMsg.Key), msgPtSend);
- CanMsg[Index] = (USB2CAN.CAN_MSG)Marshal.PtrToStructure(msgPtSend, typeof(USB2CAN.CAN_MSG));
- Index++;
}
-
- //通过DBC写入数据后生成CanMsg
- //将信号值填入CAN消息里面
-
- //释放申请的临时缓冲区
- Marshal.FreeHGlobal(msgPtSend);
//发送CAN数据
int SendedNum = USB2CAN.CAN_SendMsg(DevHandle, WriteCANIndex, CanMsg, (uint)CanMsg.Length);
@@ -878,12 +933,32 @@ namespace CapMachine.Wpf.CanDrive
///
public void CloseDevice()
{
+ IsCycleRevice = false;
+ IsCycleSend = false;
+ try
+ {
+ StopCycleSendMsg();
+ }
+ catch
+ {
+ }
+
+ try
+ {
+ var task = CycleReviceTask;
+ if (task != null && !task.IsCompleted)
+ {
+ task.Wait(TimeSpan.FromMilliseconds(ReviceCycle + 500));
+ }
+ }
+ catch
+ {
+ }
+
//关闭设备
USB_DEVICE.USB_CloseDevice(DevHandle);
OpenState = false;
DbcParserState = false;
- IsCycleRevice = false;
- IsCycleSend = false;
}
}
diff --git a/CapMachine.Wpf/Services/CanDriveService.cs b/CapMachine.Wpf/Services/CanDriveService.cs
index a2c6820..42fd28c 100644
--- a/CapMachine.Wpf/Services/CanDriveService.cs
+++ b/CapMachine.Wpf/Services/CanDriveService.cs
@@ -230,7 +230,7 @@ namespace CapMachine.Wpf.Services
if (ListCanDbcModel.Count > 0)
{
ToomossCanDrive.IsCycleRevice = true;
- ToomossCanDrive.StartPrecisionCycleSendMsg();
+ ToomossCanDrive.StartCycleReviceCanMsg();
}
else
{
diff --git a/CapMachine.Wpf/Services/MachineRtDataService.cs b/CapMachine.Wpf/Services/MachineRtDataService.cs
index 36d3044..4ce86f6 100644
--- a/CapMachine.Wpf/Services/MachineRtDataService.cs
+++ b/CapMachine.Wpf/Services/MachineRtDataService.cs
@@ -1119,18 +1119,16 @@ namespace CapMachine.Wpf.Services
while (ThreadEnable)
{
cycleCount++;
- if (cycleCount % 20 == 0) // 每10秒记录一次
+ if (cycleCount % 100 == 0)
{
LogService.Info($"RtScanDeviceStart 循环计数: {cycleCount}");
}
- //await Task.Delay(5);
- await Task.CompletedTask;
+ await Task.Delay(50);
DiagnosticsTime.Reset();
DiagnosticsTime.Start();
try
{
- LogService.Debug($"RtScanDeviceStart 开始扫描周期 {cycleCount}");
//TagInfo.RtValue.Value++;
//var data = TagManger.DicTags["转速"].ValueType.Name;
@@ -1186,7 +1184,6 @@ namespace CapMachine.Wpf.Services
try
{
var speedValue = CanDriveService.GetDbcSpeedValueBySpeedName("通讯转速");
- LogService.Debug($"RtScanDeviceStart 读取CAN通讯转速: {speedValue}");
SiemensDrive.Write(itemTag.Value.PVAddress, (short)speedValue);
}
catch (Exception ex)
@@ -1213,7 +1210,6 @@ namespace CapMachine.Wpf.Services
try
{
var voltageValue = CanDriveService.GetDbcValueByName("通讯母线电压");
- LogService.Debug($"RtScanDeviceStart 读取CAN通讯母线电压: {voltageValue}");
SiemensDrive.Write(itemTag.Value.PVAddress, (short)(voltageValue * itemTag.Value.Precision));
}
catch (Exception ex)
@@ -1240,7 +1236,6 @@ namespace CapMachine.Wpf.Services
try
{
var currentValue = CanDriveService.GetDbcValueByName("通讯母线电流");
- LogService.Debug($"RtScanDeviceStart 读取CAN通讯母线电流: {currentValue}");
SiemensDrive.Write(itemTag.Value.PVAddress, (short)(currentValue * itemTag.Value.Precision));
}
catch (Exception ex)
@@ -1267,7 +1262,6 @@ namespace CapMachine.Wpf.Services
try
{
var phaseCurrentValue = CanDriveService.GetDbcValueByName("通讯相电流");
- LogService.Debug($"RtScanDeviceStart 读取CAN通讯相电流: {phaseCurrentValue}");
SiemensDrive.Write(itemTag.Value.PVAddress, (short)(phaseCurrentValue * itemTag.Value.Precision));
}
catch (Exception ex)
@@ -1294,7 +1288,6 @@ namespace CapMachine.Wpf.Services
try
{
var powerValue = CanDriveService.GetDbcValueByName("通讯功率");
- LogService.Debug($"RtScanDeviceStart 读取CAN通讯功率: {powerValue}");
SiemensDrive.Write(itemTag.Value.PVAddress, (short)(powerValue * itemTag.Value.Precision));
}
catch (Exception ex)
@@ -1321,7 +1314,6 @@ namespace CapMachine.Wpf.Services
try
{
var tempValue = CanDriveService.GetDbcValueByName("通讯芯片温度");
- LogService.Debug($"RtScanDeviceStart 读取CAN通讯芯片温度: {tempValue}");
SiemensDrive.Write(itemTag.Value.PVAddress, (short)(tempValue * itemTag.Value.Precision));
}
catch (Exception ex)
@@ -1365,7 +1357,6 @@ namespace CapMachine.Wpf.Services
{
var dbcValue = CanDriveService.GetDbcValueByName(itemTag.Value.NameNoUnit);
itemTag.Value.EngPvValue = dbcValue;
- LogService.Debug($"RtScanDeviceStart 回读CAN数据 {itemTag.Value.NameNoUnit}: {dbcValue}");
}
catch (Exception ex)
{