Commit dd073a92 authored by leon.huang's avatar leon.huang

1.版本号更新为1.7.7.ε

2.增加注释
3.多个控件设定"是否滚动条"显示false
4.修改保存本地在mdibase里的引用,改为new三个(前中后)
5.修改ckvocupdata去除开启系统判断,实现全程基线绘制,增加时间超过600min重绘
6.更改第三方HW(实际是HL3000)传输频率与ZB相同(后面可能再修改成另外一种直接传输的逻辑)
7.注释开机等待10S再搜索HMI,这个是更早逻辑,后面有了认为设定"选项""最大搜索时长"后就无须这个逻辑
parent 081e9483
......@@ -42,7 +42,7 @@ namespace GcDevicePc
this.fid1ver.Text = this.FID1version;
this.fid2ver.Text = this.FID2version;
this.tcdver.Text = this.TCD1version;
this.PCver.Text = this.Hmiversion + "/1.7.7.γ";
this.PCver.Text = this.Hmiversion + "/1.7.7.ε";
}
}
}
......@@ -363,7 +363,7 @@ namespace GcDevicePc.Common
globaldata.m_signalbuffer.Channel1_Port.cdata = fidv[i];
globaldata.m_dpbuffer.ShowList.showDet.fDetValue = fidv[i] * 1000.0f;
//截止20211102检查,发现此方法不会被加载,所以暂时不用深究为什么只有Channel1_Port
globaldata.m_signalbuffer.Draw_Port.Add(globaldata.m_signalbuffer.Channel1_Port);
}
}
......
......@@ -40,6 +40,7 @@
this.datalist.HideSelection = false;
this.datalist.Name = "datalist";
this.datalist.OwnerDraw = true;
this.datalist.Scrollable = false;
this.datalist.UseCompatibleStateImageBehavior = false;
this.datalist.View = System.Windows.Forms.View.Details;
//
......
......@@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="&gt;&gt;datalist.Name" xml:space="preserve">
<value>datalist</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>WeifenLuo.WinFormsUI.Docking.DockContent, WeifenLuo.WinFormsUI.Docking, Version=2.9.0.0, Culture=neutral, PublicKeyToken=5cded1a1a0a7b481</value>
</data>
......@@ -124,6 +127,37 @@
<value>GcDevicePc.ListViewNF, GcDevicePc, Version=1.0.0.1, Culture=neutral, PublicKeyToken=null</value>
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="datalist.Size" type="System.Drawing.Size, System.Drawing">
<value>286, 330</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>284, 325</value>
</data>
<data name="&gt;&gt;datalist.Parent" xml:space="preserve">
<value>$this</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="datalist.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>0, 0, 0, 0</value>
</data>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>6, 12</value>
</data>
<data name="datalist.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>DataState</value>
</data>
<data name="datalist.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left, Right</value>
</data>
<data name="&gt;&gt;datalist.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>GC 显示系统</value>
</data>
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAMDAAAAEAIACoJQAAFgAAACgAAAAwAAAAYAAAAAEAIAAAAAAAACQAAAAAAAAAAAAAAAAAAAAA
......@@ -290,40 +324,6 @@
AAA=
</value>
</data>
<data name="datalist.Size" type="System.Drawing.Size, System.Drawing">
<value>286, 330</value>
</data>
<data name="&gt;&gt;datalist.Parent" xml:space="preserve">
<value>$this</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="datalist.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>0, 0, 0, 0</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>284, 325</value>
</data>
<data name="datalist.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>DataState</value>
</data>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>6, 12</value>
</data>
<data name="datalist.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left, Right</value>
</data>
<data name="&gt;&gt;datalist.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>GC 显示系统</value>
</data>
<data name="&gt;&gt;datalist.Name" xml:space="preserve">
<value>datalist</value>
</data>
<data name="$this.Font" type="System.Drawing.Font, System.Drawing">
<value>宋体, 9pt</value>
</data>
......
......@@ -40,6 +40,7 @@
this.dockPanel1.Name = "dockPanel1";
this.dockPanel1.Size = new System.Drawing.Size(667, 589);
this.dockPanel1.TabIndex = 2;
this.dockPanel1.Resize += new System.EventHandler(this.dockPanel1_Resize);
//
// Formdebug
//
......
......@@ -28,6 +28,7 @@ namespace GcDevicePc
private bool bEnglishLanguage = (Thread.CurrentThread.CurrentUICulture == CultureInfo.GetCultureInfo("en")) ? true:false;
public Formdebug()
{
InitializeComponent();
}
......@@ -149,5 +150,10 @@ namespace GcDevicePc
{
}
private void dockPanel1_Resize(object sender, EventArgs e)
{
}
}
}
......@@ -9,7 +9,7 @@
<ErrorReportUrlHistory />
<FallbackCulture>en-US</FallbackCulture>
<VerifyUploadedFiles>false</VerifyUploadedFiles>
<ProjectView>ShowAllFiles</ProjectView>
<ProjectView>ProjectFiles</ProjectView>
</PropertyGroup>
<PropertyGroup>
<EnableSecurityDebugging>false</EnableSecurityDebugging>
......
......@@ -81,6 +81,8 @@ namespace GcDevicePc
// ChannelDataSave2 mydatasave2 = new ChannelDataSave2();
// ChannelDataSave3 mydatasave3 = new ChannelDataSave3();
ChannelDataSaveSum mydatasaveSum = new ChannelDataSaveSum();
ChannelDataSaveSum mydatasaveSum2 = new ChannelDataSaveSum();
ChannelDataSaveSum mydatasaveSum3 = new ChannelDataSaveSum();
/// <summary>
/// 处理数据接口
......@@ -847,8 +849,8 @@ namespace GcDevicePc
/// 1.0.2.3 添加了周期完成后,重新绘图功能
private void timer1_Tick(object sender, EventArgs e)
{
this.Text = String.Format("{0}-1.7.7.γ{1}", globaldata.AppName,Formstr);
this.Text = String.Format("{0}-1.7.7.ε{1}", globaldata.AppName,Formstr);
HmiStatus.Text = bEnglishLanguage == false ? String.Format("状态:{0}", statestr) : String.Format("State:{0}", statestr);
timespan = System.DateTime.Now - startTime;
......@@ -1219,10 +1221,9 @@ namespace GcDevicePc
// mydatasave.ChannelDataStart();
// mydatasave2.ChannelDataStart();
// mydatasave3.ChannelDataStart();
mydatasaveSum.ChannelDataStart("Channel1","_前.hw","_A.hw", globaldata.m_signalbuffer.Save_Port);
mydatasaveSum.ChannelDataStart("Channel2","_中.hw","_B.hw", globaldata.m_signalbuffer.Save_Port2);
mydatasaveSum.ChannelDataStart("Channel3","_后.hw","_C.hw", globaldata.m_signalbuffer.Save_Port3);
mydatasaveSum2.ChannelDataStart("Channel2","_中.hw","_B.hw", globaldata.m_signalbuffer.Save_Port2);
mydatasaveSum3.ChannelDataStart("Channel3","_后.hw","_C.hw", globaldata.m_signalbuffer.Save_Port3);
}
if (!String.IsNullOrEmpty(globaldata.connection_ip))
{
......@@ -1575,7 +1576,9 @@ namespace GcDevicePc
}
}
/// <summary>
/// 改变软件上的开始按键为亮/暗
/// </summary>
void Menu_status()
{
if (globaldata.m_hmibuffer.gcinfo.hmistatus != 0)//已开启系统
......@@ -1596,7 +1599,7 @@ namespace GcDevicePc
globaldata.stopflag = true;
(this.title.Controls.Find("pictureMenu1", true)[0] as PictureMenu).PMOptbtnstatus = 4;//开始亮
}
else if(globaldata.m_hmibuffer.gcinfo.methodstatus == 4 || globaldata.m_hmibuffer.gcinfo.methodstatus == 4)
else if(globaldata.m_hmibuffer.gcinfo.methodstatus == 4 || globaldata.m_hmibuffer.gcinfo.methodstatus == 5)
{
globaldata.startflag = true;
globaldata.stopflag = false;
......
This diff is collapsed.
......@@ -40,9 +40,9 @@ namespace GcDevicePc.ProThread
drbool = false;
listPoint.Clear();
listRaw.Clear();
if ((globaldata.m_hmibuffer.gcinfo.methodstatus == 4 || globaldata.m_hmibuffer.gcinfo.methodstatus == 5) || globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.system_Statue) //判断HMI工作模式 0-空闲 1-2 准备 3准备就绪 4-5 运行(分保持和程升) 6-7结束后处理
// if(true)
{
// if ((globaldata.m_hmibuffer.gcinfo.methodstatus == 4 || globaldata.m_hmibuffer.gcinfo.methodstatus == 5) || globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.system_Statue) //判断HMI工作模式 0-空闲 1-2 准备 3准备就绪 4-5 运行(分保持和程升) 6-7结束后处理
// //改为全状态下绘制基线(之前是保存在临时,点击开启系统后一股脑丢出)
// {
#if(debug)
Stopwatch st = new Stopwatch(); //计时
st.Reset(); //清零
......@@ -68,7 +68,7 @@ namespace GcDevicePc.ProThread
else
{
if (globaldata.startimerIsSet2)
if (globaldata.startimerIsSet2||time>600)
{
CurveDisPlay2.curdisp2.cleardata();
starttimer = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[0]).ctimer;
......@@ -267,7 +267,7 @@ namespace GcDevicePc.ProThread
// Console.WriteLine(string.Format("【{0}】读取个数结束 {1}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), globaldata.m_signalbuffer.Draw_Port2.Count));
}
//}
if (globaldata.cancelflag2)
{
......
......@@ -41,9 +41,9 @@ namespace GcDevicePc.ProThread
drbool = false;
listPoint.Clear();
listRaw.Clear();
if ((globaldata.m_hmibuffer.gcinfo.methodstatus == 4 || globaldata.m_hmibuffer.gcinfo.methodstatus == 5) || globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.system_Statue) //判断HMI工作模式 0-空闲 1-2 准备 3准备就绪 4-5 运行(分保持和程升) 6-7结束后处理
// if(true)
{
// if ((globaldata.m_hmibuffer.gcinfo.methodstatus == 4 || globaldata.m_hmibuffer.gcinfo.methodstatus == 5) || globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.system_Statue) //判断HMI工作模式 0-空闲 1-2 准备 3准备就绪 4-5 运行(分保持和程升) 6-7结束后处理
// //改为全状态下绘制基线(之前是保存在临时,点击开启系统后一股脑丢出)
// {
#if(debug)
Stopwatch st = new Stopwatch(); //计时
st.Reset(); //清零
......@@ -67,7 +67,7 @@ namespace GcDevicePc.ProThread
else
{
if (globaldata.startimerIsSet3)
if (globaldata.startimerIsSet3||time>600)
{
CurveDisPlay3.curdisp3.cleardata();
starttimer = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[0]).ctimer;
......@@ -261,7 +261,7 @@ namespace GcDevicePc.ProThread
// Console.WriteLine(string.Format("【{0}】读取个数结束 {1}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), globaldata.m_signalbuffer.Draw_Port3.Count));
}
// }
if (globaldata.cancelflag3)
{
......
......@@ -47,10 +47,10 @@ namespace GcDevicePc.ProThread
/// <param name="Save_PortSumList">检测器传原始数据的端口(Save_Port前检测,Save_Port2中检测,Save_Port3后检测)</param>
private void Monitor_Data(string ChannelSumList, string cur_filenameSumList,string EN_cur_filenameSumList,ArrayList Save_PortSumList)
{
#region 已注释代码段
string savefilename="";
double value = 0;
float dvalue = 0.0f;
float dvalue = 0.0f;
UInt64 starttimer = 0x7FFFFFFF;
UInt64 endtimer = 0x7FFFFFFF;
Boolean saveflag = false;
......@@ -58,7 +58,6 @@ namespace GcDevicePc.ProThread
List<float> savePoint = new List<float>();
List<UInt64> timePoint = new List<UInt64>();//临时数据区
#endregion
try
{
while (!datamre.WaitOne(500))
......@@ -80,13 +79,17 @@ namespace GcDevicePc.ProThread
#endregion
//保证在lock{}执行代码期间,被锁数组不会被干掉
lock (Save_PortSumList)
{
// Console.WriteLine(cur_filenameSumList+"开始lock");
if (Save_PortSumList.Count > 1)
{
#region HMI运行中时,采集端口发送过来的检测器数据,并保存为临时数据,最后将saveflagList变为真
if (globaldata.m_hmibuffer.gcinfo.methodstatus == 4 || globaldata.m_hmibuffer.gcinfo.methodstatus == 5)
{
//Console.WriteLine(cur_filenameSumList+"运行中");
//存在软件启动时,HMI就处于运行中,预创建文件夹放在这里,通过saveflagList来判断
if (saveflag== false)
......@@ -130,6 +133,7 @@ namespace GcDevicePc.ProThread
#region HMI处于就绪、运行中以外的时候(其实就是每次方法运行结束),且saveflagList为真时,将临时数据写入并创建谱图文件,最后将saveflagList变为假
else if (globaldata.m_hmibuffer.gcinfo.methodstatus < 3 || globaldata.m_hmibuffer.gcinfo.methodstatus > 5)
{
// Console.WriteLine(cur_filenameSumList+"运行结束");
starttimer = ((SignalBuffer.Channel_XY)Save_PortSumList[0]).ctimer;
Save_PortSumList.Clear();
//if (globaldata.m_hmibuffer.gcinfo.methodstatus > 5 && saveflag)
......@@ -155,10 +159,13 @@ namespace GcDevicePc.ProThread
savePoint = listPoint.GetRange(index1, index2 - index1);
TWFile twfile = new TWFile(savefilename);
twfile.TW_Open();
for (int j = 0; j < savePoint.Count; j++)
for (int j = 0; j < savePoint.Count; j++)
{
twfile.bw.Write((int)(savePoint[j] * 1000));
}
twfile.TW_Close(savePoint.Count);
}
......@@ -179,9 +186,10 @@ namespace GcDevicePc.ProThread
#region HMI已就绪时,清空临时数据,如果没有点击开始,清空HMI传过来的检测器数据,同时预创建谱图文件全路径保存为savefilenameList字符
#region HMI已就绪时,清空临时数据,如果没有点击开始,清空HMI传过来的检测器数据
else
{
// Console.WriteLine(cur_filenameSumList+"已就绪");
listPoint.Clear();
timePoint.Clear();
//Console.WriteLine("等待开始按钮!");
......@@ -195,7 +203,10 @@ namespace GcDevicePc.ProThread
}
}
#endregion
}
#region 取消功能
......
......@@ -98,7 +98,7 @@ namespace GcDevicePc.ProThread
try
{
ReadChannelData();
}
}
catch (Exception ex)
{
......
......@@ -29,6 +29,7 @@ namespace GcDevicePc.ProThread
try
{
var socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
//socket = socket()需要在for循环里面,因为TCP的套接字描述符不能重用,需要在每个TCP的connect创建连接之前重新创建一个新的套接字描述符。后期验证
// int id = Thread.CurrentThread.ManagedThreadId;
// Console.WriteLine("当前线程{0:X}", id);
......
This diff is collapsed.
......@@ -78,13 +78,13 @@ using System.Collections.Generic;
//}
NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();
foreach (NetworkInterface adapter in nics)
{
if (adapter.OperationalStatus == OperationalStatus.Up) //&& (adapter.Name == Meshport || string.IsNullOrEmpty(Meshport)))
{
bool pd1 = (adapter.NetworkInterfaceType == NetworkInterfaceType.Ethernet || adapter.NetworkInterfaceType == NetworkInterfaceType.Wireless80211); //判断是否是以太网连接
bool pd1 = (adapter.NetworkInterfaceType == NetworkInterfaceType.Ethernet || adapter.NetworkInterfaceType == NetworkInterfaceType.Wireless80211); //判断是否是以太网连接或者WIFI
if (pd1)
{
IPInterfaceProperties ip = adapter.GetIPProperties(); //IP配置信息
......@@ -95,13 +95,13 @@ using System.Collections.Generic;
{
this._localip.Add(ipadd.Address.ToString());//获取ip
this._localmask.Add(ipadd.IPv4Mask.ToString());//获取子网掩码
this._adapter.Add(adapter.Name.ToString());
this._adapter.Add(adapter.Name.ToString());//网口名称
}
}
}
}
}
if (_adapter.Contains(Meshport) == true)
if (_adapter.Contains(Meshport) == true)//网口是否已存在_adapter集合
{
int sIndex = _adapter.IndexOf(Meshport);
string strLocalip = _localip[sIndex];
......
......@@ -405,6 +405,7 @@ namespace GcDevicePc.ProThread
while (!datamre.WaitOne(500))
{
if ((globaldata.m_hmibuffer.gcinfo.methodstatus == 4 || globaldata.m_hmibuffer.gcinfo.methodstatus == 5) && methodconfig != null && run_stop != true&&(methodconfig.signal.u16ChannelA == 1 || methodconfig.signal.u16ChannelB == 1))
//&&(methodconfig.signal.u16ChannelA == 1 || methodconfig.signal.u16ChannelB == 1)可以避免没有勾选AB通道下执行不必要代码
//if ((globaldata.m_hmibuffer.gcinfo.methodstatus == 4 || globaldata.m_hmibuffer.gcinfo.methodstatus == 5) && globaldata.m_hmibuffer.gcinfo.hmistatus == 4 && run_stop != true)
{
int saveB = 0;
......@@ -895,10 +896,6 @@ namespace GcDevicePc.ProThread
StartTimeB = DateTime.Now;
}
}
if (recordA==0||recordB==0)
{
Console.ReadKey();
}
}
catch
......
This diff is collapsed.
......@@ -236,7 +236,7 @@ namespace GcDevicePc
}));
break;
}
}
}//如果没有从集合找到可连接IP,进入下一步
if (bCanFindBindHMI == true)
{
break;
......@@ -332,7 +332,7 @@ namespace GcDevicePc
{
try
{
globaldata.connection_ip = ((globaldata.DeviceInfo)globaldata.DeviceList[HMIMACComboBox1.SelectedIndex]).IpAddr;
globaldata.connection_ip = ((globaldata.DeviceInfo)globaldata.DeviceList[HMIMACComboBox1.SelectedIndex]).IpAddr;//ip和mac绑定
bBindOK = true;
this.label3.Text = "";
HMIMACComboBox1.Visible = false;
......@@ -353,12 +353,12 @@ namespace GcDevicePc
private void vSearch_HMI_Poll()
{
Thread.Sleep(10000); //延时10S等待HMI开机
// Thread.Sleep(10000); //延时10S等待HMI开机,改为用户指定(选项)
HMISearch mysearch = new HMISearch(globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.hmimac);
mysearch.bSearch_Bind_HMI();
bStartSearchOK = true;
mysearch.ThStart();
mysearch.ThStart();
// mysearch.ThStart();
if (globaldata.DeviceList.Count < 1)
{
......
......@@ -24,7 +24,7 @@ AppName=
Name=admin
Password=0
[SendData]
Thirdparty=1
Thirdparty=0
Foreign=1
[SaveData]
ZBSaveData=1
......
No preview for this file type
This source diff could not be displayed because it is too large. You can view the blob instead.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment