新增功能:

1 编写地震仪解析代码;
This commit is contained in:
春风过客 2024-04-28 17:51:35 +08:00
parent 1cb4a8b813
commit 2238ae31e7
7 changed files with 103 additions and 22 deletions

View File

@ -6,14 +6,18 @@
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|f:\\code\\jseq\\20240301_jseq_upperpc\\jiangsuearthquake\\jiangsuearthquake\\models\\seismographmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|f:\\code\\jseq\\20240301_jseq_upperpc\\jiangsuearthquake\\jiangsuearthquake\\models\\seismographmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\models\\seismographmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" "RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\models\\seismographmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}, },
{
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\jiangsuearthquake\\models\\volcurcollectormodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\models\\volcurcollectormodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{ {
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\jiangsuearthquake\\common\\tools.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\jiangsuearthquake\\common\\tools.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\common\\tools.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" "RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\common\\tools.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}, },
{
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\jiangsuearthquake\\viewmodels\\mainviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\viewmodels\\mainviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\jiangsuearthquake\\models\\volcurcollectormodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\models\\volcurcollectormodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{ {
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\jiangsuearthquake\\models\\clientmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\jiangsuearthquake\\models\\clientmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\models\\clientmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" "RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\models\\clientmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
@ -22,10 +26,6 @@
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\jiangsuearthquake\\app.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}", "AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\jiangsuearthquake\\app.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\app.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}" "RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\app.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}"
}, },
{
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\jiangsuearthquake\\viewmodels\\mainviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\viewmodels\\mainviewmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{ {
"AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\jiangsuearthquake\\views\\systemcontrolview.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}", "AbsoluteMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\jiangsuearthquake\\views\\systemcontrolview.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
"RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\views\\systemcontrolview.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}" "RelativeMoniker": "D:0:0:{51CD2C1B-B7CD-4AC0-8087-846E14D316AD}|JiangsuEarthquake\\JiangsuEarthquake.csproj|solutionrelative:jiangsuearthquake\\views\\systemcontrolview.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
@ -50,7 +50,7 @@
"Children": [ "Children": [
{ {
"$type": "Document", "$type": "Document",
"DocumentIndex": 4, "DocumentIndex": 5,
"Title": "App.config", "Title": "App.config",
"DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\App.config", "DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\App.config",
"RelativeDocumentMoniker": "JiangsuEarthquake\\App.config", "RelativeDocumentMoniker": "JiangsuEarthquake\\App.config",
@ -63,7 +63,7 @@
}, },
{ {
"$type": "Document", "$type": "Document",
"DocumentIndex": 1, "DocumentIndex": 3,
"Title": "VolCurCollectorModel.cs", "Title": "VolCurCollectorModel.cs",
"DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Models\\VolCurCollectorModel.cs", "DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Models\\VolCurCollectorModel.cs",
"RelativeDocumentMoniker": "JiangsuEarthquake\\Models\\VolCurCollectorModel.cs", "RelativeDocumentMoniker": "JiangsuEarthquake\\Models\\VolCurCollectorModel.cs",
@ -71,8 +71,7 @@
"RelativeToolTip": "JiangsuEarthquake\\Models\\VolCurCollectorModel.cs", "RelativeToolTip": "JiangsuEarthquake\\Models\\VolCurCollectorModel.cs",
"ViewState": "AQIAAC4AAAAAAAAAAAAkwEAAAAAtAAAA", "ViewState": "AQIAAC4AAAAAAAAAAAAkwEAAAAAtAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-04-25T08:11:58.297Z", "WhenOpened": "2024-04-25T08:11:58.297Z"
"EditorCaption": ""
}, },
{ {
"$type": "Document", "$type": "Document",
@ -82,27 +81,27 @@
"RelativeDocumentMoniker": "JiangsuEarthquake\\Models\\SeismographModel.cs", "RelativeDocumentMoniker": "JiangsuEarthquake\\Models\\SeismographModel.cs",
"ToolTip": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Models\\SeismographModel.cs", "ToolTip": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Models\\SeismographModel.cs",
"RelativeToolTip": "JiangsuEarthquake\\Models\\SeismographModel.cs", "RelativeToolTip": "JiangsuEarthquake\\Models\\SeismographModel.cs",
"ViewState": "AQIAAGsAAAAAAAAAAAAuwIQAAAAcAAAA", "ViewState": "AQIAAL8AAAAAAAAAAAAqwNMAAAAAAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-04-25T08:11:19.51Z", "WhenOpened": "2024-04-25T08:11:19.51Z",
"EditorCaption": "" "EditorCaption": ""
}, },
{ {
"$type": "Document", "$type": "Document",
"DocumentIndex": 2, "DocumentIndex": 1,
"Title": "Tools.cs", "Title": "Tools.cs",
"DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Common\\Tools.cs", "DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Common\\Tools.cs",
"RelativeDocumentMoniker": "JiangsuEarthquake\\Common\\Tools.cs", "RelativeDocumentMoniker": "JiangsuEarthquake\\Common\\Tools.cs",
"ToolTip": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Common\\Tools.cs", "ToolTip": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Common\\Tools.cs",
"RelativeToolTip": "JiangsuEarthquake\\Common\\Tools.cs", "RelativeToolTip": "JiangsuEarthquake\\Common\\Tools.cs",
"ViewState": "AQIAAOQAAAAAAAAAAAAuwBIBAAAxAAAA", "ViewState": "AQIAALcAAAAAAAAAAAAuwEABAAAAAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-04-24T07:18:22.772Z", "WhenOpened": "2024-04-24T07:18:22.772Z",
"EditorCaption": "" "EditorCaption": ""
}, },
{ {
"$type": "Document", "$type": "Document",
"DocumentIndex": 3, "DocumentIndex": 4,
"Title": "ClientModel.cs", "Title": "ClientModel.cs",
"DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Models\\ClientModel.cs", "DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\Models\\ClientModel.cs",
"RelativeDocumentMoniker": "JiangsuEarthquake\\Models\\ClientModel.cs", "RelativeDocumentMoniker": "JiangsuEarthquake\\Models\\ClientModel.cs",
@ -137,13 +136,13 @@
}, },
{ {
"$type": "Document", "$type": "Document",
"DocumentIndex": 5, "DocumentIndex": 2,
"Title": "MainViewModel.cs", "Title": "MainViewModel.cs",
"DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\ViewModels\\MainViewModel.cs", "DocumentMoniker": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\ViewModels\\MainViewModel.cs",
"RelativeDocumentMoniker": "JiangsuEarthquake\\ViewModels\\MainViewModel.cs", "RelativeDocumentMoniker": "JiangsuEarthquake\\ViewModels\\MainViewModel.cs",
"ToolTip": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\ViewModels\\MainViewModel.cs", "ToolTip": "F:\\Code\\JSEQ\\20240301_JSEQ_upperpc\\JiangsuEarthquake\\JiangsuEarthquake\\ViewModels\\MainViewModel.cs",
"RelativeToolTip": "JiangsuEarthquake\\ViewModels\\MainViewModel.cs", "RelativeToolTip": "JiangsuEarthquake\\ViewModels\\MainViewModel.cs",
"ViewState": "AQIAAB4FAAAAAAAAAAAkwCcBAAAAAAAA", "ViewState": "AQIAAEMCAAAAAAAAAAAUwJUEAAAIAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-03-12T06:03:03.53Z" "WhenOpened": "2024-03-12T06:03:03.53Z"
}, },

View File

@ -1,4 +1,5 @@
using JiangsuEarthquake.Common; using HandyControl.Controls;
using JiangsuEarthquake.Common;
using JiangsuEarthquake.DataAccess; using JiangsuEarthquake.DataAccess;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
@ -131,7 +132,7 @@ namespace JiangsuEarthquake.Models
else if (response == 405) else if (response == 405)
{ {
//没有空闲连接 //没有空闲连接
//继续尝试连接 //重新尝试连接
} }
else if (response == 200) else if (response == 200)
@ -144,8 +145,89 @@ namespace JiangsuEarthquake.Models
{ {
//认证失败 //认证失败
//重新尝试连接 //重新尝试连接
}
} }
}
else
{
if (Tools.CompareByte(cmdRecv, new byte[] { 0xC0, 0x00 })) //台站参数
{
if (dataRecv.Count != 128)
return;
//台号
int stationNum = BitConverter.ToInt32(new byte[] { dataRecv[3], dataRecv[2], dataRecv[1], dataRecv[0] }, 0);
//台站名称
List<byte> stationNameData = new List<byte>();
for (int i = 4; i < 36; i++)
stationNameData.Add(dataRecv[i]);
string stationName = Encoding.UTF8.GetString(stationNameData.ToArray());
//台名缩写
List<byte> stationNameAbbData = new List<byte>();
for (int i = 36; i < 44; i++)
stationNameAbbData.Add(dataRecv[i]);
string stationNameAbb = Encoding.UTF8.GetString(stationNameAbbData.ToArray());
//地震计总数
int seisNum = BitConverter.ToInt16(new byte[] { dataRecv[45], dataRecv[44] }, 0);
//总通道数
int passNum = BitConverter.ToInt16(new byte[] { dataRecv[47], dataRecv[46] }, 0);
//纬度
int latitude = BitConverter.ToInt16(new byte[] { dataRecv[51], dataRecv[50], dataRecv[49], dataRecv[48] }, 0);
//经度
int longitude = BitConverter.ToInt16(new byte[] { dataRecv[55], dataRecv[54], dataRecv[53], dataRecv[52] }, 0);
//经度
int elevation = BitConverter.ToInt16(new byte[] { dataRecv[59], dataRecv[58], dataRecv[57], dataRecv[56] }, 0);
//起用日期
List<byte> enablingDateList = new List<byte>();
for (int i = 60; i < 92; i++)
enablingDateList.Add(dataRecv[i]);
string enablingDate = Encoding.UTF8.GetString(enablingDateList.ToArray());
//台网标志
string tetworkLogo = Encoding.UTF8.GetString(new byte[] { dataRecv[95], dataRecv[94], dataRecv[93], dataRecv[92] });
//软件编本
List<byte> softVersionList = new List<byte>();
for (int i = 96; i < 128; i++)
softVersionList.Add(dataRecv[i]);
string softVersion = Encoding.UTF8.GetString(softVersionList.ToArray());
}
else if (Tools.CompareByte(cmdRecv, new byte[] { 0xC0, 0x50 })) //启动地震计调零
{
if (dataRecv.Count != 2)
return;
int seisNum = BitConverter.ToInt16(new byte[] { dataRecv[1], dataRecv[0] }, 0);
}
else if (Tools.CompareByte(cmdRecv, new byte[] { 0xC0, 0x51 })) //停止地震计调零
{
}
else if (Tools.CompareByte(cmdRecv, new byte[] { 0xC0, 0x66 })) //运行状态信息
{
if (dataRecv.Count != 56)
return;
int supplyVoltage = BitConverter.ToInt16(new byte[] { dataRecv[1], dataRecv[0] }, 0);
}
else if (Tools.CompareByte(cmdRecv, new byte[] { 0xC0, 0x90 })) //启动地震计调平
{
}
else if (Tools.CompareByte(cmdRecv, new byte[] { 0xC0, 0x91 })) //停止地震计调平
{
}
}
} }
} }
} }

View File

@ -14,7 +14,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("JiangsuEarthquake")] [assembly: System.Reflection.AssemblyCompanyAttribute("JiangsuEarthquake")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+14e7fe49e9e6d49082ec0ec1a0839f6ce7695faa")] [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+1cb4a8b813af00448dbedc4d1384ab56def77f30")]
[assembly: System.Reflection.AssemblyProductAttribute("JiangsuEarthquake")] [assembly: System.Reflection.AssemblyProductAttribute("JiangsuEarthquake")]
[assembly: System.Reflection.AssemblyTitleAttribute("JiangsuEarthquake")] [assembly: System.Reflection.AssemblyTitleAttribute("JiangsuEarthquake")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@ -1 +1 @@
d85f7398275725d03be5e8ee96488b3727df451ccd9d9c93184d66ccb7d2bf32 a7e873d2a45b97372ea2d5fe393bd311f755d5bbdbfa31e4885b5be072fb4238