diff --git a/Correlator/DataService/SerialPortServiceImpl.cs b/Correlator/DataService/SerialPortServiceImpl.cs
index fe1476b..33e98a5 100644
--- a/Correlator/DataService/SerialPortServiceImpl.cs
+++ b/Correlator/DataService/SerialPortServiceImpl.cs
@@ -222,12 +222,20 @@
//接收到数据之后时间重新赋值
_dataModel.LeftReceiveDataTime = DateTime.Now;
_dataModel.LeftDeviceDataArray = realData;
+
+ var noiseValue = 0.0;
+ Array.ForEach(realData, i => noiseValue += i);
+ _dataModel.LeftNoiseSumValue = Math.Abs(noiseValue);
}
else
{
//接收到数据之后时间重新赋值
_dataModel.RightReceiveDataTime = DateTime.Now;
_dataModel.RightDeviceDataArray = realData;
+
+ var noiseValue = 0.0;
+ Array.ForEach(realData, i => noiseValue += i);
+ _dataModel.RightNoiseSumValue = Math.Abs(noiseValue);
}
//发送消息计算数据
@@ -316,11 +324,21 @@
_dataModel.DevCode = devCode;
if (devCode.Equals(RuntimeCache.Dev1))
{
- _dataModel.LeftDeviceDataArray = doubleArrays.ToOneDimensionalArray();
+ var realData = doubleArrays.ToOneDimensionalArray();
+ _dataModel.LeftDeviceDataArray = realData;
+
+ var noiseValue = 0.0;
+ Array.ForEach(realData, i => noiseValue += i);
+ _dataModel.RightNoiseSumValue = Math.Abs(noiseValue);
}
else
{
- _dataModel.RightDeviceDataArray = doubleArrays.ToOneDimensionalArray();
+ var realData = doubleArrays.ToOneDimensionalArray();
+ _dataModel.RightDeviceDataArray = realData;
+
+ var noiseValue = 0.0;
+ Array.ForEach(realData, i => noiseValue += i);
+ _dataModel.RightNoiseSumValue = Math.Abs(noiseValue);
}
RuntimeCache.CorrelatorData = _dataModel;
diff --git a/Correlator/DataService/SerialPortServiceImpl.cs b/Correlator/DataService/SerialPortServiceImpl.cs
index fe1476b..33e98a5 100644
--- a/Correlator/DataService/SerialPortServiceImpl.cs
+++ b/Correlator/DataService/SerialPortServiceImpl.cs
@@ -222,12 +222,20 @@
//接收到数据之后时间重新赋值
_dataModel.LeftReceiveDataTime = DateTime.Now;
_dataModel.LeftDeviceDataArray = realData;
+
+ var noiseValue = 0.0;
+ Array.ForEach(realData, i => noiseValue += i);
+ _dataModel.LeftNoiseSumValue = Math.Abs(noiseValue);
}
else
{
//接收到数据之后时间重新赋值
_dataModel.RightReceiveDataTime = DateTime.Now;
_dataModel.RightDeviceDataArray = realData;
+
+ var noiseValue = 0.0;
+ Array.ForEach(realData, i => noiseValue += i);
+ _dataModel.RightNoiseSumValue = Math.Abs(noiseValue);
}
//发送消息计算数据
@@ -316,11 +324,21 @@
_dataModel.DevCode = devCode;
if (devCode.Equals(RuntimeCache.Dev1))
{
- _dataModel.LeftDeviceDataArray = doubleArrays.ToOneDimensionalArray();
+ var realData = doubleArrays.ToOneDimensionalArray();
+ _dataModel.LeftDeviceDataArray = realData;
+
+ var noiseValue = 0.0;
+ Array.ForEach(realData, i => noiseValue += i);
+ _dataModel.RightNoiseSumValue = Math.Abs(noiseValue);
}
else
{
- _dataModel.RightDeviceDataArray = doubleArrays.ToOneDimensionalArray();
+ var realData = doubleArrays.ToOneDimensionalArray();
+ _dataModel.RightDeviceDataArray = realData;
+
+ var noiseValue = 0.0;
+ Array.ForEach(realData, i => noiseValue += i);
+ _dataModel.RightNoiseSumValue = Math.Abs(noiseValue);
}
RuntimeCache.CorrelatorData = _dataModel;
diff --git a/Correlator/Model/CorrelatorDataModel.cs b/Correlator/Model/CorrelatorDataModel.cs
index 5b9d7c0..2db47e3 100644
--- a/Correlator/Model/CorrelatorDataModel.cs
+++ b/Correlator/Model/CorrelatorDataModel.cs
@@ -7,7 +7,18 @@
public string DevCode { get; set; }
public double[] LeftDeviceDataArray { get; set; }
public DateTime LeftReceiveDataTime { get; set; }
+
+ ///
+ /// 噪音总和值绝对值
+ ///
+ public double LeftNoiseSumValue { get; set; }
+
public double[] RightDeviceDataArray { get; set; }
public DateTime RightReceiveDataTime { get; set; }
+
+ ///
+ /// 噪音总和值绝对值
+ ///
+ public double RightNoiseSumValue { get; set; }
}
}
\ No newline at end of file
diff --git a/Correlator/DataService/SerialPortServiceImpl.cs b/Correlator/DataService/SerialPortServiceImpl.cs
index fe1476b..33e98a5 100644
--- a/Correlator/DataService/SerialPortServiceImpl.cs
+++ b/Correlator/DataService/SerialPortServiceImpl.cs
@@ -222,12 +222,20 @@
//接收到数据之后时间重新赋值
_dataModel.LeftReceiveDataTime = DateTime.Now;
_dataModel.LeftDeviceDataArray = realData;
+
+ var noiseValue = 0.0;
+ Array.ForEach(realData, i => noiseValue += i);
+ _dataModel.LeftNoiseSumValue = Math.Abs(noiseValue);
}
else
{
//接收到数据之后时间重新赋值
_dataModel.RightReceiveDataTime = DateTime.Now;
_dataModel.RightDeviceDataArray = realData;
+
+ var noiseValue = 0.0;
+ Array.ForEach(realData, i => noiseValue += i);
+ _dataModel.RightNoiseSumValue = Math.Abs(noiseValue);
}
//发送消息计算数据
@@ -316,11 +324,21 @@
_dataModel.DevCode = devCode;
if (devCode.Equals(RuntimeCache.Dev1))
{
- _dataModel.LeftDeviceDataArray = doubleArrays.ToOneDimensionalArray();
+ var realData = doubleArrays.ToOneDimensionalArray();
+ _dataModel.LeftDeviceDataArray = realData;
+
+ var noiseValue = 0.0;
+ Array.ForEach(realData, i => noiseValue += i);
+ _dataModel.RightNoiseSumValue = Math.Abs(noiseValue);
}
else
{
- _dataModel.RightDeviceDataArray = doubleArrays.ToOneDimensionalArray();
+ var realData = doubleArrays.ToOneDimensionalArray();
+ _dataModel.RightDeviceDataArray = realData;
+
+ var noiseValue = 0.0;
+ Array.ForEach(realData, i => noiseValue += i);
+ _dataModel.RightNoiseSumValue = Math.Abs(noiseValue);
}
RuntimeCache.CorrelatorData = _dataModel;
diff --git a/Correlator/Model/CorrelatorDataModel.cs b/Correlator/Model/CorrelatorDataModel.cs
index 5b9d7c0..2db47e3 100644
--- a/Correlator/Model/CorrelatorDataModel.cs
+++ b/Correlator/Model/CorrelatorDataModel.cs
@@ -7,7 +7,18 @@
public string DevCode { get; set; }
public double[] LeftDeviceDataArray { get; set; }
public DateTime LeftReceiveDataTime { get; set; }
+
+ ///
+ /// 噪音总和值绝对值
+ ///
+ public double LeftNoiseSumValue { get; set; }
+
public double[] RightDeviceDataArray { get; set; }
public DateTime RightReceiveDataTime { get; set; }
+
+ ///
+ /// 噪音总和值绝对值
+ ///
+ public double RightNoiseSumValue { get; set; }
}
}
\ No newline at end of file
diff --git a/Correlator/ViewModels/MainWindowViewModel.cs b/Correlator/ViewModels/MainWindowViewModel.cs
index 4c9ef4b..7d4847f 100644
--- a/Correlator/ViewModels/MainWindowViewModel.cs
+++ b/Correlator/ViewModels/MainWindowViewModel.cs
@@ -326,7 +326,7 @@
public ObservableCollection PipeMaterialsArray
{
get => _pipeMaterialsArray;
- private set
+ set
{
_pipeMaterialsArray = value;
RaisePropertyChanged();
@@ -430,6 +430,18 @@
}
}
+ private CorrelatorDataModel _correlatorData = new CorrelatorDataModel();
+
+ public CorrelatorDataModel CorrelatorData
+ {
+ get => _correlatorData;
+ set
+ {
+ _correlatorData = value;
+ RaisePropertyChanged();
+ }
+ }
+
#endregion
#region PC电量状态
@@ -645,6 +657,9 @@
FilterValue = maxFreLowOut + " ~ " + maxFreHighOut + "Hz";
+ //设置噪声值
+ CorrelatorData = dataModel;
+
_eventAggregator.GetEvent().Publish(array);
var time = DateTime.Now.ToString("HHmmss");
@@ -724,17 +739,7 @@
_checkSerialPortTimer.Start();
//实时显示时间
- _timer.Tick += delegate
- {
- var dateTime = DateTime.Now;
- var strDateTime = dateTime.ToString("yyyy年MM月dd日") +
- dateTime.ToString("\0 \0 \0 dddd \0 \0 \0", new CultureInfo("zh-cn")) +
- dateTime.ToString("HH:mm:ss");
- CurrentTime = strDateTime;
-
- //同时监听串口状态
- ConnectColorBrush = _serialPortService.Sp.IsOpen ? "LimeGreen" : "LightGray";
- };
+ _timer.Tick += RealTime;
_timer.Start();
//获取电池电量
@@ -965,8 +970,7 @@
{
if (RuntimeCache.CorrelatorData != null)
{
- var filePath =
- $"{DirectoryManager.GetAudioDir()}\\音频_{DateTime.Now.ToString("yyyyMMdd_HHmmss")}.wav";
+ var filePath = $"{DirectoryManager.GetAudioDir()}\\音频_{DateTime.Now:yyyyMMdd_HHmmss}.wav";
filePath.SaveWavFile(
RuntimeCache.CorrelatorData.LeftDeviceDataArray,
RuntimeCache.CorrelatorData.RightDeviceDataArray
@@ -999,7 +1003,7 @@
//截屏
SnapShotCommand = new DelegateCommand(delegate
{
- var filePath = $"{DirectoryManager.GetPictureDir()}\\快照_{DateTime.Now.ToString("yyyyMMddHHmmss")}.png";
+ var filePath = $"{DirectoryManager.GetPictureDir()}\\快照_{DateTime.Now:yyyyMMddHHmmss}.png";
filePath.SnapShot();
});
@@ -1191,5 +1195,40 @@
SoundSpeed = soundVelocity.ToString();
return true;
}
+
+ ///
+ /// 实时显示时间,并监听串口状态
+ ///
+ ///
+ ///
+ private void RealTime(object sender, EventArgs args)
+ {
+ var dateTime = DateTime.Now;
+ var strDateTime = dateTime.ToString("yyyy年MM月dd日") +
+ dateTime.ToString("\0 \0 \0 dddd \0 \0 \0", new CultureInfo("zh-cn")) +
+ dateTime.ToString("HH:mm:ss");
+ Application.Current.Dispatcher.Invoke(delegate
+ {
+ CurrentTime = strDateTime;
+
+ //同时监听串口状态
+ if (_serialPortService.Sp.IsOpen)
+ {
+ ConnectColorBrush = "LimeGreen";
+ }
+ else
+ {
+ ConnectColorBrush = "LightGray";
+
+ RedTransmitterBattery = 0;
+ RedTransmitterSignalIntensity = 0;
+ RedTransmitterState = false;
+
+ BlueTransmitterBattery = 0;
+ BlueTransmitterSignalIntensity = 0;
+ BlueTransmitterState = false;
+ }
+ });
+ }
}
}
\ No newline at end of file
diff --git a/Correlator/DataService/SerialPortServiceImpl.cs b/Correlator/DataService/SerialPortServiceImpl.cs
index fe1476b..33e98a5 100644
--- a/Correlator/DataService/SerialPortServiceImpl.cs
+++ b/Correlator/DataService/SerialPortServiceImpl.cs
@@ -222,12 +222,20 @@
//接收到数据之后时间重新赋值
_dataModel.LeftReceiveDataTime = DateTime.Now;
_dataModel.LeftDeviceDataArray = realData;
+
+ var noiseValue = 0.0;
+ Array.ForEach(realData, i => noiseValue += i);
+ _dataModel.LeftNoiseSumValue = Math.Abs(noiseValue);
}
else
{
//接收到数据之后时间重新赋值
_dataModel.RightReceiveDataTime = DateTime.Now;
_dataModel.RightDeviceDataArray = realData;
+
+ var noiseValue = 0.0;
+ Array.ForEach(realData, i => noiseValue += i);
+ _dataModel.RightNoiseSumValue = Math.Abs(noiseValue);
}
//发送消息计算数据
@@ -316,11 +324,21 @@
_dataModel.DevCode = devCode;
if (devCode.Equals(RuntimeCache.Dev1))
{
- _dataModel.LeftDeviceDataArray = doubleArrays.ToOneDimensionalArray();
+ var realData = doubleArrays.ToOneDimensionalArray();
+ _dataModel.LeftDeviceDataArray = realData;
+
+ var noiseValue = 0.0;
+ Array.ForEach(realData, i => noiseValue += i);
+ _dataModel.RightNoiseSumValue = Math.Abs(noiseValue);
}
else
{
- _dataModel.RightDeviceDataArray = doubleArrays.ToOneDimensionalArray();
+ var realData = doubleArrays.ToOneDimensionalArray();
+ _dataModel.RightDeviceDataArray = realData;
+
+ var noiseValue = 0.0;
+ Array.ForEach(realData, i => noiseValue += i);
+ _dataModel.RightNoiseSumValue = Math.Abs(noiseValue);
}
RuntimeCache.CorrelatorData = _dataModel;
diff --git a/Correlator/Model/CorrelatorDataModel.cs b/Correlator/Model/CorrelatorDataModel.cs
index 5b9d7c0..2db47e3 100644
--- a/Correlator/Model/CorrelatorDataModel.cs
+++ b/Correlator/Model/CorrelatorDataModel.cs
@@ -7,7 +7,18 @@
public string DevCode { get; set; }
public double[] LeftDeviceDataArray { get; set; }
public DateTime LeftReceiveDataTime { get; set; }
+
+ ///
+ /// 噪音总和值绝对值
+ ///
+ public double LeftNoiseSumValue { get; set; }
+
public double[] RightDeviceDataArray { get; set; }
public DateTime RightReceiveDataTime { get; set; }
+
+ ///
+ /// 噪音总和值绝对值
+ ///
+ public double RightNoiseSumValue { get; set; }
}
}
\ No newline at end of file
diff --git a/Correlator/ViewModels/MainWindowViewModel.cs b/Correlator/ViewModels/MainWindowViewModel.cs
index 4c9ef4b..7d4847f 100644
--- a/Correlator/ViewModels/MainWindowViewModel.cs
+++ b/Correlator/ViewModels/MainWindowViewModel.cs
@@ -326,7 +326,7 @@
public ObservableCollection PipeMaterialsArray
{
get => _pipeMaterialsArray;
- private set
+ set
{
_pipeMaterialsArray = value;
RaisePropertyChanged();
@@ -430,6 +430,18 @@
}
}
+ private CorrelatorDataModel _correlatorData = new CorrelatorDataModel();
+
+ public CorrelatorDataModel CorrelatorData
+ {
+ get => _correlatorData;
+ set
+ {
+ _correlatorData = value;
+ RaisePropertyChanged();
+ }
+ }
+
#endregion
#region PC电量状态
@@ -645,6 +657,9 @@
FilterValue = maxFreLowOut + " ~ " + maxFreHighOut + "Hz";
+ //设置噪声值
+ CorrelatorData = dataModel;
+
_eventAggregator.GetEvent().Publish(array);
var time = DateTime.Now.ToString("HHmmss");
@@ -724,17 +739,7 @@
_checkSerialPortTimer.Start();
//实时显示时间
- _timer.Tick += delegate
- {
- var dateTime = DateTime.Now;
- var strDateTime = dateTime.ToString("yyyy年MM月dd日") +
- dateTime.ToString("\0 \0 \0 dddd \0 \0 \0", new CultureInfo("zh-cn")) +
- dateTime.ToString("HH:mm:ss");
- CurrentTime = strDateTime;
-
- //同时监听串口状态
- ConnectColorBrush = _serialPortService.Sp.IsOpen ? "LimeGreen" : "LightGray";
- };
+ _timer.Tick += RealTime;
_timer.Start();
//获取电池电量
@@ -965,8 +970,7 @@
{
if (RuntimeCache.CorrelatorData != null)
{
- var filePath =
- $"{DirectoryManager.GetAudioDir()}\\音频_{DateTime.Now.ToString("yyyyMMdd_HHmmss")}.wav";
+ var filePath = $"{DirectoryManager.GetAudioDir()}\\音频_{DateTime.Now:yyyyMMdd_HHmmss}.wav";
filePath.SaveWavFile(
RuntimeCache.CorrelatorData.LeftDeviceDataArray,
RuntimeCache.CorrelatorData.RightDeviceDataArray
@@ -999,7 +1003,7 @@
//截屏
SnapShotCommand = new DelegateCommand(delegate
{
- var filePath = $"{DirectoryManager.GetPictureDir()}\\快照_{DateTime.Now.ToString("yyyyMMddHHmmss")}.png";
+ var filePath = $"{DirectoryManager.GetPictureDir()}\\快照_{DateTime.Now:yyyyMMddHHmmss}.png";
filePath.SnapShot();
});
@@ -1191,5 +1195,40 @@
SoundSpeed = soundVelocity.ToString();
return true;
}
+
+ ///
+ /// 实时显示时间,并监听串口状态
+ ///
+ ///
+ ///
+ private void RealTime(object sender, EventArgs args)
+ {
+ var dateTime = DateTime.Now;
+ var strDateTime = dateTime.ToString("yyyy年MM月dd日") +
+ dateTime.ToString("\0 \0 \0 dddd \0 \0 \0", new CultureInfo("zh-cn")) +
+ dateTime.ToString("HH:mm:ss");
+ Application.Current.Dispatcher.Invoke(delegate
+ {
+ CurrentTime = strDateTime;
+
+ //同时监听串口状态
+ if (_serialPortService.Sp.IsOpen)
+ {
+ ConnectColorBrush = "LimeGreen";
+ }
+ else
+ {
+ ConnectColorBrush = "LightGray";
+
+ RedTransmitterBattery = 0;
+ RedTransmitterSignalIntensity = 0;
+ RedTransmitterState = false;
+
+ BlueTransmitterBattery = 0;
+ BlueTransmitterSignalIntensity = 0;
+ BlueTransmitterState = false;
+ }
+ });
+ }
}
}
\ No newline at end of file
diff --git a/Correlator/Views/MainWindow.xaml b/Correlator/Views/MainWindow.xaml
index bb6a481..64f80bf 100644
--- a/Correlator/Views/MainWindow.xaml
+++ b/Correlator/Views/MainWindow.xaml
@@ -621,9 +621,9 @@
-
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
@@ -750,7 +799,7 @@