Commit 521df5d2 authored by liu's avatar liu

添加三通道三检测相关,实验室在线合一。

parent 06c79fd5
......@@ -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.4.9";
this.PCver.Text = this.Hmiversion + "/1.5.1";
}
}
}
......@@ -773,6 +773,18 @@ namespace GcDevicePc
}
globaldata.m_pcbuffer.gcpcinfo.pcfileinfo.cur_StatusName = tmpfile;
tmpfile = null;
string file = Path.Combine(Path.GetDirectoryName(System.Windows.Forms.Application.StartupPath), "GC_Config\\GC_Set\\启动参数\\startup.ini");
IniFile ini = new IniFile(file);
string Version = ini.ReadString("Version", "VersionType");
if (string.IsNullOrEmpty(Version))
{
Version = "0";
}
globaldata.CurrentVersion = Version;
}
public void LocalNetworkCheck()
......
......@@ -23,6 +23,8 @@ namespace GcDevicePc
InitializeComponent();
curdisp.Location = new Point(5, 5);
curdisp.Fidname = "A";
Size size = curdisp.Size;
size.Width = size.Width - 20;
size.Height = size.Height - 25;
......
......@@ -18,6 +18,8 @@ namespace GcDevicePc.CK_UI
InitializeComponent();
curdisp2.Location = new Point(5, 5);
curdisp2.Fidname = "B";
Size size = curdisp2.Size;
size.Width = size.Width - 20;
size.Height = size.Height - 25;
......
......@@ -18,6 +18,8 @@ namespace GcDevicePc.CK_UI
InitializeComponent();
curdisp3.Location = new Point(5, 5);
curdisp3.Fidname = "C";
Size size = curdisp3.Size;
size.Width = size.Width - 20;
size.Height = size.Height - 25;
......
using System;
using GcDevicePc.GCBuffer;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
......@@ -13,10 +14,12 @@ namespace GcDevicePc
public partial class HistChartForm : Form
{
CKVocAnalyzer.CtrlWaveHistory adjust;
public HistChartForm()
public HistChartForm(string file)
{
InitializeComponent();
adjust = new CKVocAnalyzer.CtrlWaveHistory();
adjust.ZbRecord = file;
adjust.Location = new Point(1, 1);
Size size = this.Size;
size.Width = size.Width - 15;
......
......@@ -13,19 +13,21 @@ namespace GcDevicePc.CK_UI
{
private string user = "admin";
public static bool Island = false;
private string dt;
CKVocAnalyzer.NumForm form;
public LandIn(string userstr)
public LandIn(string userstr,string pwd)
{
InitializeComponent();
this.ControlBox = false;
this.user = userstr;
this.dt = pwd;
}
private void button1_Click(object sender, EventArgs e) //登录系统
{
string strpw = DateTime.Now.ToString("HHmm");
string strpw = this.dt;
if (textBox1.Text == user && textBox2.Text == strpw)
{
Island = true;
......
......@@ -60,7 +60,7 @@ namespace GcDevicePc.Common
public void TW_Close(int datanum)
{
int i;
for (i = 0; i < enddata.Length; i++ )
for (i = 0; i < enddata.Length; i++)
{
bw.Write(enddata[i]);
}
......
......@@ -10,6 +10,7 @@ using System.Threading;
using System.Windows.Forms;
using GcDevicePc.ConfigMethod.injectionport;
using GcDevicePc.GCBuffer;
using GcDevicePc.ProThread;
namespace GcDevicePc.ConfigMethod
{
......@@ -201,9 +202,8 @@ namespace GcDevicePc.ConfigMethod
m_ReadColTab.reflashContent();
m_DetTab.reflashContent();
m_SignalTab.reflashContent();
//m_AuxTab.reflashContent();
auxTabs.reflashContent();
//m_AuxTab.reflashContent();
////////////////////////////////////////////////////////////////////////////
//fID.reflashContent(0);
//m_ePCFID.reflashContent(0);
......@@ -301,9 +301,6 @@ namespace GcDevicePc.ConfigMethod
// this.gcmethodconfig.SetValInjPortAllPara();
//}
m_chromTabs.recordCurData();
this.gcmethodconfig.SetChromAllPara();
......@@ -321,7 +318,6 @@ namespace GcDevicePc.ConfigMethod
{
this.gcmethodconfig.SetFidByID(0);
}
}
if (this.gchwconfig.hwconfiginfo.u16DetInter == 1)
......@@ -438,6 +434,8 @@ namespace GcDevicePc.ConfigMethod
globaldata.m_configDlg.m_SignalDlg.reflashContent();
}
SignalDataToHw.methodconfig = this.gcmethodconfig;
//string message = "提交成功!";
//MessageBox.Show(message, "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
......@@ -446,6 +444,8 @@ namespace GcDevicePc.ConfigMethod
{
}
}
}
else
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -133,7 +133,6 @@ namespace GcDevicePc.ConfigMethod
private void InjPortBox_SelectedIndexChanged(object sender, EventArgs e)
{
recordCurData();
int index;
......
......@@ -7,6 +7,7 @@ using System.Linq;
using System.Text;
using System.Windows.Forms;
using GcDevicePc.GCBuffer;
using GcDevicePc.IniParam;
namespace GcDevicePc.ConfigMethod
{
......@@ -89,7 +90,6 @@ namespace GcDevicePc.ConfigMethod
tmptextbox = (TextBox)(this.Controls.Find("signalAT" + channel.ToString(), true)[0]);
tmpcombox.SelectedIndex = (int)this.methodconfig.signal.uDetA[i];
if (this.methodconfig.signal.u16DetTimeLengthA[i] > 0)
{
tmptextbox.Text = ((float)this.methodconfig.signal.u16DetTimeLengthA[i] / 60).ToString("#0.0");
......@@ -103,7 +103,6 @@ namespace GcDevicePc.ConfigMethod
tmptextbox = (TextBox)(this.Controls.Find("signalBT" + channel.ToString(), true)[0]);
tmpcombox.SelectedIndex = (int)this.methodconfig.signal.uDetB[i];
if (this.methodconfig.signal.u16DetTimeLengthB[i] > 0)
{
tmptextbox.Text = ((float)this.methodconfig.signal.u16DetTimeLengthB[i] / 60).ToString("#0.0");
......@@ -239,6 +238,10 @@ namespace GcDevicePc.ConfigMethod
this.methodconfig.signal.u16ChannelA = (signalA_sw.CheckState == CheckState.Checked) ? (ushort)1 : (ushort)0;
this.methodconfig.signal.u16ChannelB = (signalB_sw.CheckState == CheckState.Checked) ? (ushort)1 : (ushort)0;
CProfileDevice.m_DevParam.signal.u16ChannelA = (signalA_sw.CheckState == CheckState.Checked) ? (ushort)1 : (ushort)0;
CProfileDevice.m_DevParam.signal.u16ChannelB = (signalB_sw.CheckState == CheckState.Checked) ? (ushort)1 : (ushort)0;
for (i = 0; i < MAX_NUM; i++)
{
channel = i + 1;
......@@ -261,6 +264,24 @@ namespace GcDevicePc.ConfigMethod
this.methodconfig.signal.u16DetTimeLengthA[i] = newtime;
}
if (tmpcombox.SelectedIndex < 0)
CProfileDevice.m_DevParam.signal.uDetA[i] = 0;
else
CProfileDevice.m_DevParam.signal.uDetA[i] = (ushort)tmpcombox.SelectedIndex;
if (string.IsNullOrEmpty(tmptextbox.Text))
{
CProfileDevice.m_DevParam.signal.u16DetTimeLengthA[i] = 0;
}
else
{
time = (float)Convert.ToDecimal(tmptextbox.Text);
newtime = (ushort)Convert.ToDecimal((time * 60).ToString());
CProfileDevice.m_DevParam.signal.u16DetTimeLengthA[i] = newtime;
}
}
for (i = 0; i < MAX_NUM; i++)
......@@ -284,7 +305,24 @@ namespace GcDevicePc.ConfigMethod
newtime = (ushort)Convert.ToDecimal((time * 60).ToString());
this.methodconfig.signal.u16DetTimeLengthB[i] = newtime;
}
if (tmpcombox.SelectedIndex < 0)
CProfileDevice.m_DevParam.signal.uDetB[i] = 0;
else
CProfileDevice.m_DevParam.signal.uDetB[i] = (ushort)tmpcombox.SelectedIndex;
if (string.IsNullOrEmpty(tmptextbox.Text))
{
CProfileDevice.m_DevParam.signal.u16DetTimeLengthB[i] = 0;
}
else
{
time = (float)Convert.ToDecimal(tmptextbox.Text);
newtime = (ushort)Convert.ToDecimal((time * 60).ToString());
CProfileDevice.m_DevParam.signal.u16DetTimeLengthB[i] = newtime;
}
}
}
......
......@@ -1048,9 +1048,21 @@ namespace GcDevicePc
tempshow = new ListViewItem();
tempshow.Text = "运行时间/总时间";
if (globaldata.MethodRun_Statue == 4 || globaldata.MethodRun_Statue == 5)
{
if (globaldata.m_dpbuffer.ShowList.showtime.runtimenow <= globaldata.m_dpbuffer.ShowList.showtime.alltime)
{
tempshow.SubItems.Add((globaldata.m_dpbuffer.ShowList.showtime.runtimenow / 60.0f).ToString("0.00") + "/" + (globaldata.m_dpbuffer.ShowList.showtime.alltime / 60.0f).ToString("0.0"));
}
else
{
tempshow.SubItems.Add((globaldata.m_dpbuffer.ShowList.showtime.alltime / 60.0f).ToString("0.00") + "/" + (globaldata.m_dpbuffer.ShowList.showtime.alltime / 60.0f).ToString("0.0"));
}
}
else
{
tempshow.SubItems.Add("0.00 /" + (globaldata.m_dpbuffer.ShowList.showtime.alltime / 60.0f).ToString("0.0"));
}
this.datalist.Items.Add(tempshow);
......
......@@ -63,9 +63,7 @@ namespace GcDevicePc
//自动校准
private void buttonauto_Click(object sender, EventArgs e)
{
DialogResult dr = new CK_UI.LandIn("calibration").ShowDialog();
DialogResult dr = new CK_UI.LandIn("calibration", DateTime.Now.ToString("HHmm")).ShowDialog();
if (dr == DialogResult.OK)
{
......
......@@ -17,8 +17,8 @@ namespace GcDevicePc
{
//CurveDisPlay cuidisp = new CurveDisPlay();//显示波形
CurveDisPlay curdisplay = new CurveDisPlay();
//CurveDisPlay2 curdisplay2 = new CurveDisPlay2();
//CurveDisPlay3 curdisplay3 = new CurveDisPlay3();
CurveDisPlay2 curdisplay2 = new CurveDisPlay2();
CurveDisPlay3 curdisplay3 = new CurveDisPlay3();
DataState dataleft = new DataState();//状态显示
......@@ -33,11 +33,11 @@ namespace GcDevicePc
}
private void loadPanel() //加载界面
{
this.dockPanel1.Contains(curdisplay);
curdisplay.Show(this.dockPanel1);
curdisplay.CloseButtonVisible = false;
//this.dockPanel1.Contains(curdisplay);
//curdisplay.Show(this.dockPanel1);
//curdisplay.CloseButtonVisible = false;
//Load_Win();
Load_Win();
dataleft.Show(this.dockPanel1,DockState.DockRight);
dataleft.CloseButtonVisible = false;
......@@ -45,88 +45,88 @@ namespace GcDevicePc
//dataleft.Close();
}
//private void Load_Win()
//{
// if (!String.IsNullOrEmpty(globaldata.connection_ip))
// {
// if (CProfileDevice.m_DevParam.syspara.u16DetFront == 1)
// {
// curdisplay.Text = "前检测器";
// }
// if (CProfileDevice.m_DevParam.syspara.u16DetInter == 1)
// {
// curdisplay2.Text = "中检测器";
// }
// if (CProfileDevice.m_DevParam.syspara.u16DetBehind == 1)
// {
// curdisplay3.Text = "后检测器";
// }
// }
// else
// {
// if (CProfileDevice.m_DevParam.syspara.u16DetFront == 1)
// {
// curdisplay.Text = "前检测器";
// }
// if (CProfileDevice.m_DevParam.syspara.u16DetInter == 1)
// {
// curdisplay2.Text = "中检测器";
// }
// if (CProfileDevice.m_DevParam.syspara.u16DetBehind == 1)
// {
// curdisplay3.Text = "后检测器";
// }
// }
// if (CProfileDevice.m_DevParam.syspara.u16DetFront == 1)
// {
// this.dockPanel1.Contains(curdisplay);
// curdisplay.Show(this.dockPanel1);
// curdisplay.CloseButtonVisible = false;
// }
// else
// {
// curdisplay.Dispose();
// }
// if (CProfileDevice.m_DevParam.syspara.u16DetInter == 1)
// {
// this.dockPanel1.Contains(curdisplay2);
// curdisplay2.Show(this.dockPanel1);
// curdisplay2.CloseButtonVisible = false;
// }
// else
// {
// curdisplay2.Dispose();
// }
// if (CProfileDevice.m_DevParam.syspara.u16DetBehind == 1)
// {
// this.dockPanel1.Contains(curdisplay3);
// curdisplay3.Show(this.dockPanel1);
// curdisplay3.CloseButtonVisible = false;
// }
// else
// {
// curdisplay3.Dispose();
// }
// //Start_Thread();
// //dockPanelSideLeft.Show(this.dockPanel1, WeifenLuo.WinFormsUI.Docking.DockState.DockRight);
// //dockPanelSideLeft.CloseButtonVisible = false;
//}
private void Load_Win()
{
if (!String.IsNullOrEmpty(globaldata.connection_ip))
{
if (CProfileDevice.m_DevParam.syspara.u16DetFront == 1)
{
curdisplay.Text = "前检测器";
}
if (CProfileDevice.m_DevParam.syspara.u16DetInter == 1)
{
curdisplay2.Text = "中检测器";
}
if (CProfileDevice.m_DevParam.syspara.u16DetBehind == 1)
{
curdisplay3.Text = "后检测器";
}
}
else
{
if (CProfileDevice.m_DevParam.syspara.u16DetFront == 1)
{
curdisplay.Text = "前检测器";
}
if (CProfileDevice.m_DevParam.syspara.u16DetInter == 1)
{
curdisplay2.Text = "中检测器";
}
if (CProfileDevice.m_DevParam.syspara.u16DetBehind == 1)
{
curdisplay3.Text = "后检测器";
}
}
if (CProfileDevice.m_DevParam.syspara.u16DetFront == 1)
{
this.dockPanel1.Contains(curdisplay);
curdisplay.Show(this.dockPanel1);
curdisplay.CloseButtonVisible = false;
}
else
{
curdisplay.Dispose();
}
if (CProfileDevice.m_DevParam.syspara.u16DetInter == 1)
{
this.dockPanel1.Contains(curdisplay2);
curdisplay2.Show(this.dockPanel1);
curdisplay2.CloseButtonVisible = false;
}
else
{
curdisplay2.Dispose();
}
if (CProfileDevice.m_DevParam.syspara.u16DetBehind == 1)
{
this.dockPanel1.Contains(curdisplay3);
curdisplay3.Show(this.dockPanel1);
curdisplay3.CloseButtonVisible = false;
}
else
{
curdisplay3.Dispose();
}
//Start_Thread();
//dockPanelSideLeft.Show(this.dockPanel1, WeifenLuo.WinFormsUI.Docking.DockState.DockRight);
//dockPanelSideLeft.CloseButtonVisible = false;
}
public void CloseThread()
{
......
......@@ -2148,10 +2148,6 @@ namespace GcDevicePc.GCBuffer
sw.WriteLine("[方法名称]");
sw.Close();
}
}
}
......
......@@ -11,10 +11,10 @@ namespace GcDevicePc
{
public partial class GCMain : Form
{
CurveDisPlay curdisplay = new CurveDisPlay();
DataState dockPanelSideLeft = new DataState();
//CurveDisPlay curdisplay = new CurveDisPlay();
//DataState dockPanelSideLeft = new DataState();
GCTitle title = new GCTitle();
//GCTitle title = new GCTitle();
public GCMain()
......@@ -24,16 +24,16 @@ namespace GcDevicePc
private void GCMain_Load(object sender, EventArgs e)
{
this.showdockPanel.Contains(curdisplay);
curdisplay.Show(this.showdockPanel);
curdisplay.CloseButtonVisible = false;
// this.showdockPanel.Contains(curdisplay);
// curdisplay.Show(this.showdockPanel);
// curdisplay.CloseButtonVisible = false;
dockPanelSideLeft.Show(this.showdockPanel, WeifenLuo.WinFormsUI.Docking.DockState.DockRight);
dockPanelSideLeft.CloseButtonVisible = false;
// dockPanelSideLeft.Show(this.showdockPanel, WeifenLuo.WinFormsUI.Docking.DockState.DockRight);
// dockPanelSideLeft.CloseButtonVisible = false;
// title.Height = 62;
title.Show(this.showdockPanel, WeifenLuo.WinFormsUI.Docking.DockState.DockTop);
title.CloseButtonVisible = false;
//// title.Height = 62;
// title.Show(this.showdockPanel, WeifenLuo.WinFormsUI.Docking.DockState.DockTop);
// title.CloseButtonVisible = false;
}
}
}
......@@ -61,6 +61,7 @@
this.SingleCancel = new System.Windows.Forms.ToolStripMenuItem();
this.HelpMainMenu = new System.Windows.Forms.ToolStripMenuItem();
this.AboutMenu = new System.Windows.Forms.ToolStripMenuItem();
this.changeVsi = new System.Windows.Forms.ToolStripMenuItem();
this.toolTip = new System.Windows.Forms.ToolTip(this.components);
this.timer1 = new System.Windows.Forms.Timer(this.components);
this.backgroundWorker1 = new System.ComponentModel.BackgroundWorker();
......@@ -105,14 +106,14 @@
// UserLoginMenu
//
this.UserLoginMenu.Name = "UserLoginMenu";
this.UserLoginMenu.Size = new System.Drawing.Size(144, 26);
this.UserLoginMenu.Size = new System.Drawing.Size(180, 26);
this.UserLoginMenu.Text = "用户登录";
this.UserLoginMenu.Click += new System.EventHandler(this.UserLoginMenu_Click);
//
// UserLogoutMenu
//
this.UserLogoutMenu.Name = "UserLogoutMenu";
this.UserLogoutMenu.Size = new System.Drawing.Size(144, 26);
this.UserLogoutMenu.Size = new System.Drawing.Size(180, 26);
this.UserLogoutMenu.Text = "用户注销";
this.UserLogoutMenu.Click += new System.EventHandler(this.UserLogoutMenu_Click);
//
......@@ -317,7 +318,8 @@
// HelpMainMenu
//
this.HelpMainMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.AboutMenu});
this.AboutMenu,
this.changeVsi});
this.HelpMainMenu.Font = new System.Drawing.Font("Microsoft YaHei UI", 12F);
this.HelpMainMenu.Name = "HelpMainMenu";
this.HelpMainMenu.Size = new System.Drawing.Size(54, 25);
......@@ -326,10 +328,17 @@
// AboutMenu
//
this.AboutMenu.Name = "AboutMenu";
this.AboutMenu.Size = new System.Drawing.Size(112, 26);
this.AboutMenu.Size = new System.Drawing.Size(144, 26);
this.AboutMenu.Text = "关于";
this.AboutMenu.Click += new System.EventHandler(this.AboutMenu_Click);
//
// changeVsi
//
this.changeVsi.Name = "changeVsi";
this.changeVsi.Size = new System.Drawing.Size(144, 26);
this.changeVsi.Text = "切换版本";
this.changeVsi.Click += new System.EventHandler(this.changeVsi_Click);
//
// timer1
//
this.timer1.Enabled = true;
......@@ -481,6 +490,7 @@
private System.Windows.Forms.StatusStrip statusStrip;
private System.Windows.Forms.ToolStripProgressBar workProgress;
private System.Windows.Forms.Timer timer2;
private System.Windows.Forms.ToolStripMenuItem changeVsi;
}
}
......
......@@ -53,10 +53,9 @@ namespace GcDevicePc
GcDataTh mymodbus;
/// <summary>
/// Modbus Slave 变量
/// NModbus Slave 变量
/// </summary>
//GCModbusSlave Slavetest;
NModbusSlave nmodbusSlave;
/// <summary>
......@@ -322,7 +321,11 @@ namespace GcDevicePc
// debugForm.Hide();
_userForm.MdiParent = this;
_userForm.Dock = DockStyle.Fill;
if (globaldata.CurrentVersion == "1")
{
_userForm.Show();
}
_EPCTipsForm = new EPCTips();
_EPCTipsForm.MdiParent = this;
......@@ -499,9 +502,14 @@ namespace GcDevicePc
(this.title.Controls.Find("pictureMenu1", true)[0] as PictureMenu).PMSysbtnstatus = 1;
globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.system_Statue = true;
globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.work_Statue = 0;
globaldata.starttimer = 0;
globaldata.startimerIsSet = true;
globaldata.startimerIsSet = true;
globaldata.startimerIsSet1 = true;
globaldata.startimerIsSet2 = true;
globaldata.startimerIsSet3 = true;
}
else
{
......@@ -695,6 +703,8 @@ namespace GcDevicePc
private void SetMenu(bool isbool)
{
try
{
if (globaldata.CurrentVersion == "1")
{
if (isbool)
{
......@@ -711,7 +721,8 @@ namespace GcDevicePc
// HmiStatus.Visible = true;
SettingSeparator.Visible = true;
}else
}
else
{
NetWorkMenu.Visible = false;
MethodBrowseMenuItem.Visible = false;
......@@ -726,6 +737,11 @@ namespace GcDevicePc
// HmiStatus.Visible = false;
SettingSeparator.Visible = false;
}
}
else
{
UserMainMenu.Visible = false;
}
}
catch(Exception ex)
......@@ -742,7 +758,7 @@ namespace GcDevicePc
/// 1.0.2.3 添加了周期完成后,重新绘图功能
private void timer1_Tick(object sender, EventArgs e)
{
this.Text = String.Format("VOCs在线监测-1.4.9 {0}",Formstr);
this.Text = String.Format("VOCs在线监测-1.5.1 {0}",Formstr);
//if (LandIn.Island)
//{
// HmiStatus.Text = String.Format("状态:{0}", statestr);
......@@ -1054,50 +1070,50 @@ namespace GcDevicePc
#region 线程接口
//private void Start_Thread()
//{
// mydatasave.ChannelDataStart();
// mydatasave2.ChannelDataStart();
// mydatasave3.ChannelDataStart();
private void Start_Thread()
{
mydatasave.ChannelDataStart();
mydatasave2.ChannelDataStart();
mydatasave3.ChannelDataStart();
// if (!String.IsNullOrEmpty(globaldata.connection_ip))
// {
// mymodbus.HmiStatueStart();
// mymodbus.ChannelDataStart();
// }
if (!String.IsNullOrEmpty(globaldata.connection_ip))
{
mymodbus.HmiStatueStart();
mymodbus.ChannelDataStart();
}
// dataVOC.CKvocUpdataStart();
// dataVoc2.CKvocUpdataStart();
// dataVoc3.CKvocUpdataStart();
// mytcptest.DataRcvStart();
dataVOC.CKvocUpdataStart();
dataVoc2.CKvocUpdataStart();
dataVoc3.CKvocUpdataStart();
//mytcptest.DataRcvStart();
// if (!String.IsNullOrEmpty(globaldata.m_pcbuffer.gcpcinfo.moduleinfo.ip))
//if (!String.IsNullOrEmpty(globaldata.m_pcbuffer.gcpcinfo.moduleinfo.ip))
// wtd624xOutput.DataOutStart();
//}
}
//public void Stop_Thread()
//{
// mydatasave.ChannelDataStop();
// mydatasave2.ChannelDataStop();
// mydatasave3.ChannelDataStop();
// if (!String.IsNullOrEmpty(globaldata.connection_ip))
// {
// mymodbus.HmiStatueStop();
// mymodbus.ChannelDataStop();
// ThreadMonitor.GetInstance().MonitorThStop();
// ThreadMonitor.GetInstance().StopALLCommunication();
// }
public void Stop_Thread()
{
mydatasave.ChannelDataStop();
mydatasave2.ChannelDataStop();
mydatasave3.ChannelDataStop();
if (!String.IsNullOrEmpty(globaldata.connection_ip))
{
mymodbus.HmiStatueStop();
mymodbus.ChannelDataStop();
//ThreadMonitor.GetInstance().MonitorThStop();
//ThreadMonitor.GetInstance().StopALLCommunication();
}
// dataVOC.CKvocUpdataStop();
// dataVoc2.CKvocUpdataStop();
// dataVoc3.CKvocUpdataStop();
// mytcptest.DataRcvStop();
dataVOC.CKvocUpdataStop();
dataVoc2.CKvocUpdataStop();
dataVoc3.CKvocUpdataStop();
//mytcptest.DataRcvStop();
// if (!String.IsNullOrEmpty(globaldata.m_pcbuffer.gcpcinfo.moduleinfo.ip))
//if (!String.IsNullOrEmpty(globaldata.m_pcbuffer.gcpcinfo.moduleinfo.ip))
// wtd624xOutput.DataOutStop();
//}
}
#endregion
private void InitConfig()
......@@ -1158,9 +1174,17 @@ namespace GcDevicePc
Start_Thread();
if (globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.sendtohw)
{
signalDataTohw.DataToHwStart();
}
try
{
if (globaldata.CurrentVersion == "1")
{
nmodbusSlave = new NModbusSlave();
}
//Slavetest = new GCModbusSlave();
//Slavetest.CModbusSlaveInit(1, 2, 3, 5);
......@@ -1190,43 +1214,43 @@ namespace GcDevicePc
}
Thread gethmistaues;
private void Start_Thread()
{
// mydatasave.ChannelDataStart();
if (!String.IsNullOrEmpty(globaldata.connection_ip))
{
mymodbus.HmiStatueStart();
mymodbus.ChannelDataStart();
//private void Start_Thread()
//{
// // mydatasave.ChannelDataStart();
// if (!String.IsNullOrEmpty(globaldata.connection_ip))
// {
// mymodbus.HmiStatueStart();
// mymodbus.ChannelDataStart();
//ThreadMonitor.GetInstance().StartALLCommunication();
// //ThreadMonitor.GetInstance().StartALLCommunication();
}
// }
dataVOC.CKvocUpdataStart();
mytcptest.DataRcvStart();
// dataVOC.CKvocUpdataStart();
// mytcptest.DataRcvStart();
if (!String.IsNullOrEmpty(globaldata.m_pcbuffer.gcpcinfo.moduleinfo.ip))
wtd624xOutput.DataOutStart();
}
// if (!String.IsNullOrEmpty(globaldata.m_pcbuffer.gcpcinfo.moduleinfo.ip))
// wtd624xOutput.DataOutStart();
//}
private void Stop_Thread()
{
// mydatasave.ChannelDataStop();
//private void Stop_Thread()
//{
// // mydatasave.ChannelDataStop();
dataVOC.CKvocUpdataStop();
mytcptest.DataRcvStop();
// dataVOC.CKvocUpdataStop();
// mytcptest.DataRcvStop();
if (!String.IsNullOrEmpty(globaldata.connection_ip))
{
// mymodbus.HmiStatueStop();
mymodbus.ChannelDataStop();
ThreadMonitor.GetInstance().MonitorThStop();
ThreadMonitor.GetInstance().StopALLCommunication();
}
// if (!String.IsNullOrEmpty(globaldata.connection_ip))
// {
// // mymodbus.HmiStatueStop();
// mymodbus.ChannelDataStop();
// ThreadMonitor.GetInstance().MonitorThStop();
// ThreadMonitor.GetInstance().StopALLCommunication();
// }
if (!String.IsNullOrEmpty(globaldata.m_pcbuffer.gcpcinfo.moduleinfo.ip))
wtd624xOutput.DataOutStop();
}
// if (!String.IsNullOrEmpty(globaldata.m_pcbuffer.gcpcinfo.moduleinfo.ip))
// wtd624xOutput.DataOutStop();
//}
/// <summary>
/// 状态改变信号量
......@@ -1561,7 +1585,7 @@ namespace GcDevicePc
break;
case 9:
status_text = "设备断开";
this.HmiStatus.BackColor = Color.OrangeRed;
this.HmiStatus.BackColor = Color.LightYellow;
color_flag = false;
break;
case 10:
......@@ -1579,14 +1603,12 @@ namespace GcDevicePc
default:
status_text = "设备连接";
this.HmiStatus.BackColor = Color.LightGreen;
break;
}
statestr = status_text;
IsStateColor = color_flag;
Console.WriteLine(""+ globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.work_Statue);
//Console.WriteLine(""+ globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.work_Statue);
//if (globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.RunType == 0)
//{
......@@ -1741,17 +1763,9 @@ namespace GcDevicePc
count = 0;
//ret = Slavetest.CModbusSlaveClose();
if (globaldata.CurrentVersion == "1")
{
nmodbusSlave.NModbusSlaveClose();
//while (ret != 0)
//{
// count++;
// ret = Slavetest.CModbusSlaveClose();
// Thread.Sleep(100);
// if (count > 3)
// {
// break;
// }
//}
if (globaldata.m_pcbuffer.gcpcinfo.outputinfo.port != 0)
{
......@@ -1768,6 +1782,19 @@ namespace GcDevicePc
}
}
}
}
//while (ret != 0)
//{
// count++;
// ret = Slavetest.CModbusSlaveClose();
// Thread.Sleep(100);
// if (count > 3)
// {
// break;
// }
//}
}
......@@ -1794,7 +1821,6 @@ namespace GcDevicePc
count = 0;
//ret = Slavetest.CModbusSlaveClose();
nmodbusSlave.NModbusSlaveClose();
//while (ret != 0)
//{
// count++;
......@@ -1805,6 +1831,9 @@ namespace GcDevicePc
// break;
// }
//}
if (globaldata.CurrentVersion == "1")
{
nmodbusSlave.NModbusSlaveClose();
if (globaldata.m_pcbuffer.gcpcinfo.outputinfo.port != 0)
{
......@@ -1822,6 +1851,7 @@ namespace GcDevicePc
}
}
}
}
try
......@@ -1885,9 +1915,15 @@ namespace GcDevicePc
globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.system_Statue = true;
globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.work_Statue = 0;
//globaldata.starttimer = 0;
//globaldata.startimerIsSet = true;
globaldata.starttimer = 0;
globaldata.startimerIsSet = true;
globaldata.startimerIsSet = true;
globaldata.startimerIsSet1 = true;
globaldata.startimerIsSet2 = true;
globaldata.startimerIsSet3 = true;
}
else
{
......@@ -2061,9 +2097,11 @@ namespace GcDevicePc
private void UserLoginMenu_Click(object sender, EventArgs e)
{
string lgpwd = DateTime.Now.ToString("HHmm");
while (true)
{
DialogResult dr = new LandIn("admin").ShowDialog();
DialogResult dr = new LandIn("admin", lgpwd).ShowDialog();
if (dr == DialogResult.OK)
{
if (LandIn.Island)
......@@ -2310,15 +2348,12 @@ namespace GcDevicePc
if (myform == null)
{
myform = new MethodMain();
myform.SetGCConfig(globaldata.m_hwconfig, methodconfig);
myform.Show();
}
else if (myform.IsDisposed)
{
myform = new MethodMain();
myform.SetGCConfig(globaldata.m_hwconfig, methodconfig);
myform.Show();
}
......@@ -2392,6 +2427,7 @@ namespace GcDevicePc
}
MethodMain myformbb;
private void MethodBrowseMenuItem_Click(object sender, EventArgs e)
{
......@@ -2409,7 +2445,7 @@ namespace GcDevicePc
//MethodMain myform = new MethodMain(true, false);
//myform.SetGCConfig(globaldata.m_hwconfig, methodconfig);
//myform.Show();
Console.WriteLine("前 " + globaldata.m_hmibuffer.gcinfo.methodstatus);
if (myformbb == null)
{
myformbb = new MethodMain(true, false);
......@@ -2420,6 +2456,7 @@ namespace GcDevicePc
{
myformbb = null;
myformbb = new MethodMain(true, false);
myformbb.SetGCConfig(globaldata.m_hwconfig, methodconfig);
myformbb.Show();
}
......@@ -2465,6 +2502,8 @@ namespace GcDevicePc
}
}
Console.WriteLine(" 后 "+ globaldata.m_hmibuffer.gcinfo.methodstatus);
}
WaveTotalForm total;
......@@ -2495,6 +2534,7 @@ namespace GcDevicePc
Log.Error(ex.Message);
}
}
AdjustFrom just;
private void CalibrationMenu_Click(object sender, EventArgs e)
{
......@@ -2523,6 +2563,7 @@ namespace GcDevicePc
Log.Error(ex.Message);
}
}
HistChartForm hist;
private void HistoryPicMenu_Click(object sender, EventArgs e)
{
......@@ -2530,13 +2571,13 @@ namespace GcDevicePc
{
if (hist == null)
{
hist = new HistChartForm();
hist = new HistChartForm(globaldata.m_pcbuffer.gcpcinfo.pcfolderinfo.DataFolder);
hist.Show();
}
else if (hist.IsDisposed)
{
hist = null;
hist = new HistChartForm();
hist = new HistChartForm(globaldata.m_pcbuffer.gcpcinfo.pcfolderinfo.DataFolder);
hist.Show();
}
else
......@@ -2608,6 +2649,7 @@ namespace GcDevicePc
}
ShowConfig showConfig;
private void ConfigShowSubMenuItem_Click(object sender, EventArgs e)
{
......@@ -2671,8 +2713,16 @@ namespace GcDevicePc
globaldata.stopflag = false;
globaldata.cancelflag = false;
globaldata.startclear = true;
//globaldata.starttimer = 0;
//globaldata.startimerIsSet = true;
globaldata.starttimer = 0;
globaldata.startimerIsSet = true;
globaldata.startimerIsSet1 = true;
globaldata.startimerIsSet2 = true;
globaldata.startimerIsSet3 = true;
globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.work_Statue = 1;
}
......@@ -2814,7 +2864,6 @@ namespace GcDevicePc
#endregion
AboutForm f_showcfg;
private void AboutMenu_Click(object sender, EventArgs e)
{
int ret = 0;
......@@ -2937,8 +2986,6 @@ namespace GcDevicePc
{
SharedSpace.MControl.IsEnd = false;
if (RunTableOpt(SharedSpace.MControl.defaultPath, SharedSpace.MControl.defaultName) == 1&&SharedSpace.MControl.MethodType == 1)
{
SharedSpace.MControl.SetOut = false;
......@@ -2988,6 +3035,29 @@ namespace GcDevicePc
}
private void changeVsi_Click(object sender, EventArgs e)
{
DialogResult dl = MessageBox.Show("是否切换", "版本切换", MessageBoxButtons.OKCancel);
if (dl == DialogResult.OK)
{
string file = Path.Combine(Path.GetDirectoryName(System.Windows.Forms.Application.StartupPath), "GC_Config\\GC_Set\\启动参数\\startup.ini");
IniFile iniFile = new IniFile(file);
//iniFile.ReadSection("").
if (iniFile.ReadString("Version", "VersionType") == "0")
{
iniFile.WriteInteger("Version", "VersionType", 1);//实验室
}
else
{
iniFile.WriteInteger("Version", "VersionType", 0);//在线
}
Application.ExitThread();
Application.Exit();
Application.Restart();
Process.GetCurrentProcess().Kill();
}
}
//private void debugSubMenu_Click(object sender, EventArgs e)
//{
// try
......
......@@ -39,7 +39,7 @@
this.ClientSize = new System.Drawing.Size(1008, 730);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "MainForm";
this.Text = "VOCs在线监测-1.4.9 用户窗口";
this.Text = "VOCs在线监测-1.5.1 用户窗口";
this.ResumeLayout(false);
this.PerformLayout();
......
//#define debug
using System;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using GcDevicePc.GCBuffer;
using System.Diagnostics;
using GcDevicePc.IniParam;
namespace GcDevicePc.ProThread
{
......@@ -15,7 +15,6 @@ namespace GcDevicePc.ProThread
Thread t_DataSave;
int isstart = 0;
//批量更新
//用于更新记录数据
private void Monitor_DataList()
......@@ -27,11 +26,11 @@ namespace GcDevicePc.ProThread
//float dtime = 0.0f;
//float dvalue = 0.0f;
List<double[]> listPoint = new List<double[]>();//临时数据区
List<double[]> listRaw = new List<double[]>();//原始数据
List<double[]> listRawTem = new List<double[]>();//原始数据缓存
List<double[]> listPoint = new List<double[]>(); //临时数据区
List<double[]> listRaw = new List<double[]>(); //原始数据
List<double[]> listRawTem = new List<double[]>(); //原始数据缓存
bool drbool = false;
uint NowTimeOld=0;//上一周期开始
uint NowTimeOld = 0; //上一周期开始
while (!datamre.WaitOne(500))
{
......@@ -39,7 +38,10 @@ 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 ((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(debug)
......@@ -53,32 +55,35 @@ namespace GcDevicePc.ProThread
if (globaldata.m_signalbuffer.Draw_Port.Count > 1)
{
if (globaldata.startclear)
if (globaldata.startclear1)
{
CurveDisPlay.curdisp.cleardata();
globaldata.starttimer = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[0]).ctimer;
globaldata.starttimer =
((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[0]).ctimer;
time = 0;
globaldata.startclear = false;
globaldata.startclear1 = false;
}
else
{
if (globaldata.startimerIsSet)
if (globaldata.startimerIsSet1)
{
CurveDisPlay.curdisp.cleardata();
globaldata.starttimer = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[0]).ctimer;
globaldata.starttimer =
((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[0]).ctimer;
time = 0;
globaldata.startimerIsSet = false;
globaldata.startimerIsSet1 = false;
}
ushort timeend = globaldata.m_dpbuffer.ShowList.showtime.alltime;
timeend -= 5;
if (globaldata.starttimer == 0)
globaldata.starttimer = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[0]).ctimer;
globaldata.starttimer =
((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[0]).ctimer;
#if(debug)
st.Start(); //计时开始
#endif
......@@ -88,7 +93,10 @@ namespace GcDevicePc.ProThread
// if (true)
{
if ((globaldata.m_hmibuffer.gcinfo.NowStartTime <= ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[0]).ctimer) && isstart == 0 && (NowTimeOld != globaldata.m_hmibuffer.gcinfo.NowStartTime))
if ((globaldata.m_hmibuffer.gcinfo.NowStartTime <=
((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[0])
.ctimer) && isstart == 0 &&
(NowTimeOld != globaldata.m_hmibuffer.gcinfo.NowStartTime))
{
if (CKVocAnalyzer.GlobalCKV.debugwork == 5)
......@@ -101,132 +109,163 @@ namespace GcDevicePc.ProThread
NowTimeOld = globaldata.m_hmibuffer.gcinfo.NowStartTime;
CurveDisPlay.curdisp.cleardata();
}
else
{
isstart = 2;
CurveDisPlay.curdisp.SetAxisX((double)globaldata.m_dpbuffer.ShowList.showtime.alltime / 60.0);
CurveDisPlay.curdisp.SetAxisX(
(double)globaldata.m_dpbuffer.ShowList.showtime
.alltime / 60.0);
time = 0;
drbool = false;
globaldata.starttimer = globaldata.m_hmibuffer.gcinfo.NowStartTime;
NowTimeOld = globaldata.m_hmibuffer.gcinfo.NowStartTime;
CurveDisPlay.curdisp.cleardata();
// Trace.WriteLine("周期开始"+globaldata.m_hmibuffer.gcinfo.NowStartTime.ToString(), "sys");
Trace.WriteLine(
globaldata.m_hmibuffer.gcinfo.NowStartTime.ToString(), "sys");
}
CKVocAnalyzer.GlobalCKV.dataFtime.FTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
CKVocAnalyzer.GlobalCKV.dataFtime.FTime =
DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
listPoint.Clear(); //清除记录
listRaw.Clear();
}
}
//Console.WriteLine(time.ToString());
//数据回填
if (isstart == 0) //方法结束,缓存原始数据
{
if (listRawTem.Count < 3000)
{
listRawTem.Add(new double[] { ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i]).ctimer, Math.Round((((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i]).cdata * 1000.0f), 6) });
listRawTem.Add(new double[]
{
((SignalBuffer.Channel_XY) globaldata.m_signalbuffer.Draw_Port[i])
.ctimer,
Math.Round(
(((SignalBuffer.Channel_XY) globaldata.m_signalbuffer.Draw_Port[
i]).cdata * 1000.0f), 6)
});
}
else
{
listRawTem.Clear();//缓存3000点,大于3000,重新开始
listRawTem.Clear(); //缓存3000点,大于3000,重新开始
}
//TCP数据回传
//Console.WriteLine(time.ToString());
lock (globaldata.m_signalbuffer.TCP_Port)
{
if(globaldata.m_signalbuffer.TCP_Port.Count>0)
if (globaldata.m_signalbuffer.TCP_Port.Count > 0)
{
// Trace.WriteLine("TCP数据回传","sys");
Trace.WriteLine("TCP数据回传", "sys");
List<double[]> tcpraw = new List<double[]>();
for (int tcpi = 0; tcpi < globaldata.m_signalbuffer.TCP_Port.Count;tcpi++ )
for (int tcpi = 0;
tcpi < globaldata.m_signalbuffer.TCP_Port.Count;
tcpi++)
{
tcpraw.Add(new double[] { ((SignalBuffer.TCP_Channel)globaldata.m_signalbuffer.TCP_Port[tcpi]).dettimer, Math.Round(((SignalBuffer.TCP_Channel)globaldata.m_signalbuffer.TCP_Port[tcpi]).detdata1*1000.0f,6) });
tcpraw.Add(new double[]
{
((SignalBuffer.TCP_Channel) globaldata.m_signalbuffer
.TCP_Port[tcpi]).dettimer,
Math.Round(
((SignalBuffer.TCP_Channel) globaldata.m_signalbuffer
.TCP_Port[tcpi]).detdata1 * 1000.0f, 6)
});
}
if (tcpraw.Count > 0)
{
CurveDisPlay.curdisp.WriteTcp(tcpraw);
}
}
globaldata.m_signalbuffer.TCP_Port.Clear();
}
}
//Console.WriteLine(time.ToString());
if (isstart == 2 && listRawTem.Count > 0) //回填数据
{
int rami = listRawTem.FindIndex(s => s[0] == globaldata.starttimer);
if(rami>-1) //有需要回填数据
{
for (; rami < listRawTem.Count;rami++ )
int rami = listRawTem.FindIndex(s => s[0] >= globaldata.starttimer);
if (rami > -1) //有需要回填数据
{
if ((((UInt32)listRawTem[rami][0] < globaldata.starttimer)))
{
//Console.WriteLine("listRawTem " + listRawTem[rami][0].ToString() + "starttimer " + globaldata.starttimer.ToString());
}
else
for (; rami < listRawTem.Count; rami++)
{
time += (((UInt32)listRawTem[rami][0] - globaldata.starttimer) / 1000.0f / 60.0f);
}
time += (((UInt32)listRawTem[rami][0] - globaldata.starttimer) /
1000.0f / 60.0f);
globaldata.starttimer = (UInt32)listRawTem[rami][0];
value = listRawTem[rami][1];
listPoint.Add(new double[] { Math.Round(time, 4), Math.Round(value, 6) });
listRaw.Add(new double[] { listRawTem[rami][0], Math.Round(value, 6) });
listPoint.Add(new double[]
{Math.Round(time, 4), Math.Round(value, 6)});
listRaw.Add(
new double[] { listRawTem[rami][0], Math.Round(value, 6) });
}
}
listRawTem.Clear();
}
//Console.WriteLine(time.ToString());
if (globaldata.starttimer <= ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i]).ctimer && (((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i]).ctimer > globaldata.starttimer))
{
if(((((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i]).ctimer - globaldata.starttimer) / 1000.0f / 60.0f) > 70000)
{
//time += 0.00083;
//Console.WriteLine("ctimer " + ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i]).ctimer.ToString() + "starttimer " + globaldata.starttimer.ToString());
}
else
if (globaldata.starttimer <=
((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i]).ctimer &&
(((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i]).ctimer -
globaldata.starttimer) > 0)
{
//Console.WriteLine("两差 "+ ((((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i]).ctimer - globaldata.starttimer) / 1000.0f / 60.0f));
time += ((((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i]).ctimer - globaldata.starttimer) / 1000.0f / 60.0f);
}
time += ((((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i])
.ctimer - globaldata.starttimer) / 1000.0f / 60.0f);
//time += 0.00083;
//time>70000?
globaldata.starttimer = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i]).ctimer;
value = (((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i]).cdata * 1000.0f);
globaldata.starttimer =
((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i])
.ctimer;
value = (((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i])
.cdata * 1000.0f);
if (time < 600)
{
listPoint.Add(new double[] { Math.Round(time, 4), Math.Round(value, 6) });
listRaw.Add(new double[] {((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i]).ctimer, Math.Round(value, 6) });
//Console.WriteLine("mathtime "+ Math.Round(time, 4) + " time " + time);
//Console.WriteLine("time1 "+ ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i]).ctimer + " i " + i);
listRaw.Add(new double[]
{
((SignalBuffer.Channel_XY) globaldata.m_signalbuffer.Draw_Port[i])
.ctimer,
Math.Round(value, 6)
});
}
drbool = false;
//时间判断终点
// if ((globaldata.MethodRun_Statue == 4 || globaldata.MethodRun_Statue == 5))
if (globaldata.m_hmibuffer.gcinfo.methodstatus <4 || globaldata.m_hmibuffer.gcinfo.methodstatus > 5)
if (globaldata.m_hmibuffer.gcinfo.methodstatus < 4 ||
globaldata.m_hmibuffer.gcinfo.methodstatus > 5)
{
if ((globaldata.m_hmibuffer.gcinfo.NowStartTime<=globaldata.m_hmibuffer.gcinfo.NowEndTime)&&(globaldata.m_hmibuffer.gcinfo.NowEndTime <= ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i]).ctimer)&&isstart==2)
if ((globaldata.m_hmibuffer.gcinfo.NowStartTime <
globaldata.m_hmibuffer.gcinfo.NowEndTime) &&
(globaldata.m_hmibuffer.gcinfo.NowEndTime <=
((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i])
.ctimer) && isstart == 2)
{
drbool = true;
isstart = 0;
Trace.WriteLine("周期结束" + globaldata.m_hmibuffer.gcinfo.NowEndTime.ToString(), "sys");
break;
}
......@@ -235,7 +274,9 @@ namespace GcDevicePc.ProThread
}
else
globaldata.starttimer = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i]).ctimer;
globaldata.starttimer =
((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port[i])
.ctimer;
}
......@@ -250,24 +291,37 @@ namespace GcDevicePc.ProThread
st.Stop(); //计时终止
Trace.WriteLine("后处理更新时间:" + st.Elapsed.ToString(), "sys");
#endif
//if (CProfileDevice.m_DevParam.syspara.u16DetFront == 1)
//{
// for (int i = 0; i < listRaw.Count / CProfileDevice.m_DevParam.syspara.u16DetNum; i++)
// {
// lr.Add(listRaw[i]);
// }
// for (int i = 0; i < listPoint.Count / CProfileDevice.m_DevParam.syspara.u16DetNum; i++)
// {
// lp.Add(listPoint[i]);
// }
//}
CurveDisPlay.curdisp.addDataRaw(listRaw); //记录原始数据
CurveDisPlay.curdisp.addPoint(listPoint, drbool); //更新绘画区域
//绘制完,重新画图
if (drbool || CurveDisPlay.forcePurge)
//lp.Clear();
//lr.Clear();
if (drbool)
{
time = 0;
CurveDisPlay.curdisp.cleardata();
CurveDisPlay.forcePurge = false;
}
// Console.WriteLine(string.Format("【{0}】读取个数结束 {1}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), globaldata.m_signalbuffer.Draw_Port.Count));
}
if (globaldata.cancelflag)
if (globaldata.cancelflag1)
{
globaldata.cancelflag = false;
globaldata.cancelflag1 = false;
}
// Thread.Sleep(500);
......@@ -279,7 +333,14 @@ namespace GcDevicePc.ProThread
{
Trace.Write(ex);
}
finally
{
}
}
//List<double[]> lr = new List<double[]>();
//List<double[]> lp = new List<double[]>();
public void CKvocUpdataStart()
{
......
......@@ -6,6 +6,7 @@ using System.Threading;
using GcDevicePc.GCBuffer;
using System.Diagnostics;
using GcDevicePc.CK_UI;
using GcDevicePc.IniParam;
namespace GcDevicePc.ProThread
{
......@@ -23,18 +24,23 @@ namespace GcDevicePc.ProThread
{
double time = 0;
double value = 0;
UInt32 starttime = 0x7FFFFFFF;
//float dtime = 0.0f;
//float dvalue = 0.0f;
List<double[]> listPoint = new List<double[]>();//临时数据区
List<double[]> listRaw = new List<double[]>();//原始数据
List<double[]> listRawTem = new List<double[]>();//原始数据缓存
bool drbool = false;
uint NowTimeOld = 0;//上一周期开始
UInt32 starttimer = 0x7FFFFFFF;
while (!datamre.WaitOne(500))
{
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(debug)
Stopwatch st = new Stopwatch(); //计时
......@@ -43,109 +49,176 @@ namespace GcDevicePc.ProThread
lock (globaldata.m_signalbuffer.Draw_Port2)
{
if (globaldata.m_signalbuffer.Draw_Port2.Count > 1)
{
if (globaldata.startclear)
if (globaldata.startclear2)
{
CurveDisPlay2.curdisp2.cleardata();
starttime = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[0]).ctimer;
starttimer = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[0]).ctimer;
time = 0;
// globaldata.startclear = false;
globaldata.startclear2 = false;
}
else
{
if (globaldata.startimerIsSet)
if (globaldata.startimerIsSet2)
{
CurveDisPlay2.curdisp2.cleardata();
starttime = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[0]).ctimer;
starttimer = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[0]).ctimer;
time = 0;
// globaldata.startimerIsSet = false;
globaldata.startimerIsSet2 = false;
}
ushort timeend = globaldata.m_dpbuffer.ShowList.showtime.alltime;
timeend -= 5;
if (starttime == 0)
starttime = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[0]).ctimer;
if (starttimer == 0)
starttimer = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[0]).ctimer;
#if(debug)
st.Start(); //计时开始
#endif
for (int i = 0; i < globaldata.m_signalbuffer.Draw_Port2.Count; i++)
{
if (globaldata.MethodRun_Statue == 4 || globaldata.MethodRun_Statue == 5)
// if (true)
{
//方法启停判断方法:使用获取HMI时间判断,判断时间会延迟0.03分钟左右
if (globaldata.m_dpbuffer.ShowList.showtime.runtimenow > 0 && isstart == 0 && globaldata.m_dpbuffer.ShowList.showtime.runtimenow < 3)
if ((globaldata.m_hmibuffer.gcinfo.NowStartTime <= ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[0]).ctimer) && isstart == 0 && (NowTimeOld != globaldata.m_hmibuffer.gcinfo.NowStartTime))
{
Console.WriteLine("方法开始");
if (CKVocAnalyzer.GlobalCKV.debugwork == 5)
{
CKVocAnalyzer.GlobalCKV.debugwork = 4;
isstart = 2;
time = 0;
starttime = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[0]).ctimer;
drbool = false;
starttimer = globaldata.m_hmibuffer.gcinfo.NowStartTime;
NowTimeOld = globaldata.m_hmibuffer.gcinfo.NowStartTime;
CurveDisPlay2.curdisp2.cleardata();
}
else
{
isstart = 2;
CurveDisPlay2.curdisp2.cleardata();
CurveDisPlay2.curdisp2.SetAxisX((double)globaldata.m_dpbuffer.ShowList.showtime.alltime / 60.0);
time = 0;
starttime = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[0]).ctimer;
drbool = false;
starttimer = globaldata.m_hmibuffer.gcinfo.NowStartTime;
NowTimeOld = globaldata.m_hmibuffer.gcinfo.NowStartTime;
CurveDisPlay2.curdisp2.cleardata();
Trace.WriteLine(globaldata.m_hmibuffer.gcinfo.NowStartTime.ToString(), "sys");
}
// CKVocAnalyzer.GlobalCKV.dataFtime.FTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
CKVocAnalyzer.GlobalCKV.dataFtime.FTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
listPoint.Clear(); //清除记录
listRaw.Clear();
}
}
if (starttime <= ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[i]).ctimer && (((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[i]).ctimer - starttime) < 3000)
//数据回填
if (isstart == 0) //方法结束,缓存原始数据
{
time += ((((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[i]).ctimer - starttime) / 1000.0f / 60.0f);
if (listRawTem.Count < 3000)
{
listRawTem.Add(new double[] { ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[i]).ctimer, Math.Round((((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[i]).cdata * 1000.0f), 6) });
}
else
{
listRawTem.Clear();//缓存3000点,大于3000,重新开始
}
//TCP数据回传
lock (globaldata.m_signalbuffer.TCP_Port)
{
if (globaldata.m_signalbuffer.TCP_Port.Count > 0)
{
Trace.WriteLine("TCP数据回传", "sys");
List<double[]> tcpraw = new List<double[]>();
for (int tcpi = 0; tcpi < globaldata.m_signalbuffer.TCP_Port.Count; tcpi++)
{
tcpraw.Add(new double[] { ((SignalBuffer.TCP_Channel)globaldata.m_signalbuffer.TCP_Port[tcpi]).dettimer, Math.Round(((SignalBuffer.TCP_Channel)globaldata.m_signalbuffer.TCP_Port[tcpi]).detdata1 * 1000.0f, 6) });
}
if (tcpraw.Count > 0)
{
CurveDisPlay2.curdisp2.WriteTcp(tcpraw);
}
}
globaldata.m_signalbuffer.TCP_Port.Clear();
}
}
if (isstart == 2 && listRawTem.Count > 0) //回填数据
{
int rami = listRawTem.FindIndex(s => s[0] >= starttimer);
if (rami > -1) //有需要回填数据
{
for (; rami < listRawTem.Count; rami++)
{
time += (((UInt32)listRawTem[rami][0] - starttimer) / 1000.0f / 60.0f);
starttimer = (UInt32)listRawTem[rami][0];
value = listRawTem[rami][1];
listPoint.Add(new double[] { Math.Round(time, 4), Math.Round(value, 6) });
listRaw.Add(new double[] { listRawTem[rami][0], Math.Round(value, 6) });
}
}
listRawTem.Clear();
}
if (starttimer <= ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[i]).ctimer && (((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[i]).ctimer - starttimer) > 0)
{
time += ((((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[i]).ctimer - starttimer) / 1000.0f / 60.0f);
//time += 0.00083;
starttime = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[i]).ctimer;
starttimer = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[i]).ctimer;
value = (((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[i]).cdata * 1000.0f);
// value = 2.0f;
if (time < 600)
{
listPoint.Add(new double[] { Math.Round(time, 4), Math.Round(value, 4) });
listPoint.Add(new double[] { Math.Round(time, 4), Math.Round(value, 6) });
listRaw.Add(new double[] { ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[i]).ctimer, Math.Round(value, 6) });
}
#if(data)
Trace.WriteLine("FID2:" + time.ToString() + "," + value.ToString(), "data");
#endif
//时间判断终点
if (globaldata.MethodRun_Statue == 4 || globaldata.MethodRun_Statue == 5)
//if(isstart==2)
// if ((globaldata.MethodRun_Statue == 4 || globaldata.MethodRun_Statue == 5))
if (globaldata.m_hmibuffer.gcinfo.methodstatus < 4 || globaldata.m_hmibuffer.gcinfo.methodstatus > 5)
{
if ((globaldata.m_dpbuffer.ShowList.showtime.runtimenow > timeend && globaldata.m_dpbuffer.ShowList.showtime.runtimenow < globaldata.m_dpbuffer.ShowList.showtime.alltime && isstart == 2))
if ((globaldata.m_hmibuffer.gcinfo.NowStartTime < globaldata.m_hmibuffer.gcinfo.NowEndTime) && (globaldata.m_hmibuffer.gcinfo.NowEndTime <= ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[i]).ctimer) && isstart == 2)
{
// CurveDisPlay.curdisp.addPoint(listPoint, true);
// Thread.Sleep(500);
drbool = true;
// time = 0;
isstart = 0;
//Console.WriteLine("方法结束");
// break;
}
break;
}
else if (isstart == 2 && globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.work_Statue == 2)
{
// CurveDisPlay.curdisp.addPoint(listPoint, true);
drbool = true;
// time = 0;
isstart = 0;
//break;
}
}
else
starttime = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[i]).ctimer;
starttimer = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port2[i]).ctimer;
}
......@@ -156,23 +229,41 @@ namespace GcDevicePc.ProThread
}
}
}
#if(debug)
#if (debug)
st.Stop(); //计时终止
Trace.WriteLine("后处理更新时间:" + st.Elapsed.ToString(), "sys");
#endif
//if (CProfileDevice.m_DevParam.syspara.u16DetInter == 1)
//{
// for (int i = listRaw.Count / CProfileDevice.m_DevParam.syspara.u16DetNum; i < (listRaw.Count / CProfileDevice.m_DevParam.syspara.u16DetNum)*2; i++)
// {
// lr.Add(listRaw[i]);
// }
// for (int i = listPoint.Count / CProfileDevice.m_DevParam.syspara.u16DetNum; i < (listPoint.Count / CProfileDevice.m_DevParam.syspara.u16DetNum) * 2; i++)
// {
// lp.Add(listPoint[i]);
// }
//}
//CurveDisPlay2.curdisp2.BgWorkerSave
CurveDisPlay2.curdisp2.addDataRaw(listRaw); //记录原始数据
CurveDisPlay2.curdisp2.addPoint(listPoint, drbool); //更新绘画区域
//lp.Clear();
//lr.Clear();
if (drbool)
{
time = 0;
CurveDisPlay2.curdisp2.cleardata();
}
// Console.WriteLine(string.Format("【{0}】读取个数结束 {1}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), globaldata.m_signalbuffer.Draw_Port.Count));
// Console.WriteLine(string.Format("【{0}】读取个数结束 {1}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), globaldata.m_signalbuffer.Draw_Port2.Count));
}
if (globaldata.cancelflag)
if (globaldata.cancelflag2)
{
globaldata.cancelflag = false;
globaldata.cancelflag2 = false;
}
// Thread.Sleep(500);
......@@ -186,13 +277,14 @@ namespace GcDevicePc.ProThread
}
}
//List<double[]> lr = new List<double[]>();
//List<double[]> lp = new List<double[]>();
public void CKvocUpdataStart()
{
if (datamre != null)
{
datamre.Reset();
}
// t_DataSave = new Thread(Monitor_Data);
t_DataSave = new Thread(Monitor_DataList);
t_DataSave.IsBackground = true;
t_DataSave.Start();
......
......@@ -6,6 +6,7 @@ using System.Threading;
using GcDevicePc.GCBuffer;
using System.Diagnostics;
using GcDevicePc.CK_UI;
using GcDevicePc.IniParam;
//using GcDevicePc.CK_UI;
namespace GcDevicePc.ProThread
......@@ -24,18 +25,23 @@ namespace GcDevicePc.ProThread
{
double time = 0;
double value = 0;
UInt32 starttime = 0x7FFFFFFF;
//float dtime = 0.0f;
//float dvalue = 0.0f;
List<double[]> listPoint = new List<double[]>();//临时数据区
List<double[]> listRaw = new List<double[]>();//原始数据
List<double[]> listRawTem = new List<double[]>();//原始数据缓存
bool drbool = false;
uint NowTimeOld = 0;//上一周期开始
UInt32 starttimer = 0x7FFFFFFF;
while (!datamre.WaitOne(500))
{
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(debug)
Stopwatch st = new Stopwatch(); //计时
......@@ -45,110 +51,169 @@ namespace GcDevicePc.ProThread
lock (globaldata.m_signalbuffer.Draw_Port3)
{
if (globaldata.m_signalbuffer.Draw_Port3.Count > 1)
{
if (globaldata.startclear)
if (globaldata.startclear3)
{
CurveDisPlay3.curdisp3.cleardata();
starttime = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[0]).ctimer;
time = 0;
// globaldata.startclear = false;
}
starttimer = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[0]).ctimer;
time = 0;
globaldata.startclear3 = false;
}
else
{
if (globaldata.startimerIsSet)
if (globaldata.startimerIsSet3)
{
CurveDisPlay3.curdisp3.cleardata();
starttime = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[0]).ctimer;
starttimer = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[0]).ctimer;
time = 0;
// globaldata.startimerIsSet = false;
globaldata.startimerIsSet3 = false;
}
ushort timeend = globaldata.m_dpbuffer.ShowList.showtime.alltime;
timeend -= 5;
if (starttime == 0)
starttime = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[0]).ctimer;
if (starttimer == 0)
starttimer = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[0]).ctimer;
#if(debug)
st.Start(); //计时开始
#endif
for (int i = 0; i < globaldata.m_signalbuffer.Draw_Port3.Count; i++)
{
if (globaldata.MethodRun_Statue == 4 || globaldata.MethodRun_Statue == 5)
// if (true)
{
//方法启停判断方法:使用获取HMI时间判断,判断时间会延迟0.03分钟左右
if (globaldata.m_dpbuffer.ShowList.showtime.runtimenow > 0 && isstart == 0 && globaldata.m_dpbuffer.ShowList.showtime.runtimenow < 3)
if ((globaldata.m_hmibuffer.gcinfo.NowStartTime <= ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[0]).ctimer) && isstart == 0 && (NowTimeOld != globaldata.m_hmibuffer.gcinfo.NowStartTime))
{
Console.WriteLine("方法开始");
if (CKVocAnalyzer.GlobalCKV.debugwork == 5)
{
CKVocAnalyzer.GlobalCKV.debugwork = 4;
isstart = 2;
time = 0;
starttime = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[0]).ctimer;
drbool = false;
starttimer = globaldata.m_hmibuffer.gcinfo.NowStartTime;
NowTimeOld = globaldata.m_hmibuffer.gcinfo.NowStartTime;
CurveDisPlay3.curdisp3.cleardata();
}
else
{
isstart = 2;
CurveDisPlay3.curdisp3.cleardata();
CurveDisPlay3.curdisp3.SetAxisX((double)globaldata.m_dpbuffer.ShowList.showtime.alltime / 60.0);
time = 0;
starttime = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[0]).ctimer;
drbool = false;
starttimer = globaldata.m_hmibuffer.gcinfo.NowStartTime;
NowTimeOld = globaldata.m_hmibuffer.gcinfo.NowStartTime;
CurveDisPlay3.curdisp3.cleardata();
Trace.WriteLine(globaldata.m_hmibuffer.gcinfo.NowStartTime.ToString(), "sys");
}
CKVocAnalyzer.GlobalCKV.dataFtime.FTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
listPoint.Clear(); //清除记录
listRaw.Clear();
}
}
//数据回填
if (isstart == 0) //方法结束,缓存原始数据
{
if (listRawTem.Count < 3000)
{
listRawTem.Add(new double[] { ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[i]).ctimer, Math.Round((((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[i]).cdata * 1000.0f), 6) });
}
else
{
listRawTem.Clear();//缓存3000点,大于3000,重新开始
}
//TCP数据回传
lock (globaldata.m_signalbuffer.TCP_Port)
{
if (globaldata.m_signalbuffer.TCP_Port.Count > 0)
{
Trace.WriteLine("TCP数据回传", "sys");
List<double[]> tcpraw = new List<double[]>();
for (int tcpi = 0; tcpi < globaldata.m_signalbuffer.TCP_Port.Count; tcpi++)
{
tcpraw.Add(new double[] { ((SignalBuffer.TCP_Channel)globaldata.m_signalbuffer.TCP_Port[tcpi]).dettimer, Math.Round(((SignalBuffer.TCP_Channel)globaldata.m_signalbuffer.TCP_Port[tcpi]).detdata1 * 1000.0f, 6) });
}
if (tcpraw.Count > 0)
{
CurveDisPlay3.curdisp3.WriteTcp(tcpraw);
}
}
globaldata.m_signalbuffer.TCP_Port.Clear();
}
}
if (isstart == 2 && listRawTem.Count > 0) //回填数据
{
int rami = listRawTem.FindIndex(s => s[0] >= starttimer);
if (rami > -1) //有需要回填数据
{
for (; rami < listRawTem.Count; rami++)
{
time += (((UInt32)listRawTem[rami][0] - starttimer) / 1000.0f / 60.0f);
starttimer = (UInt32)listRawTem[rami][0];
value = listRawTem[rami][1];
listPoint.Add(new double[] { Math.Round(time, 4), Math.Round(value, 6) });
listRaw.Add(new double[] { listRawTem[rami][0], Math.Round(value, 6) });
}
}
listRawTem.Clear();
}
if (starttime <= ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[i]).ctimer && (((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[i]).ctimer - starttime) < 3000)
if (starttimer <= ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[i]).ctimer && (((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[i]).ctimer - starttimer) > 0)
{
time += ((((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[i]).ctimer - starttime) / 1000.0f / 60.0f);
time += ((((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[i]).ctimer - starttimer) / 1000.0f / 60.0f);
//time += 0.00083;
starttime = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[i]).ctimer;
starttimer = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[i]).ctimer;
value = (((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[i]).cdata * 1000.0f);
if (time < 600)
{
listPoint.Add(new double[] { Math.Round(time, 4), Math.Round(value, 4) });
listPoint.Add(new double[] { Math.Round(time, 4), Math.Round(value, 6) });
listRaw.Add(new double[] { ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[i]).ctimer, Math.Round(value, 6) });
}
//时间判断终点
if (globaldata.MethodRun_Statue == 4 || globaldata.MethodRun_Statue == 5)
//if(isstart==2)
// if ((globaldata.MethodRun_Statue == 4 || globaldata.MethodRun_Statue == 5))
if (globaldata.m_hmibuffer.gcinfo.methodstatus < 4 || globaldata.m_hmibuffer.gcinfo.methodstatus > 5)
{
if ((globaldata.m_dpbuffer.ShowList.showtime.runtimenow > timeend && globaldata.m_dpbuffer.ShowList.showtime.runtimenow < globaldata.m_dpbuffer.ShowList.showtime.alltime && isstart == 2))
if ((globaldata.m_hmibuffer.gcinfo.NowStartTime < globaldata.m_hmibuffer.gcinfo.NowEndTime) && (globaldata.m_hmibuffer.gcinfo.NowEndTime <= ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[i]).ctimer) && isstart == 2)
{
// CurveDisPlay.curdisp.addPoint(listPoint, true);
// Thread.Sleep(500);
drbool = true;
// time = 0;
isstart = 0;
//Console.WriteLine("方法结束");
// break;
break;
}
}
else if (isstart == 2 && globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.work_Statue == 2)
{
// CurveDisPlay.curdisp.addPoint(listPoint, true);
drbool = true;
// time = 0;
isstart = 0;
//break;
}
}
else
starttime = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[i]).ctimer;
starttimer = ((SignalBuffer.Channel_XY)globaldata.m_signalbuffer.Draw_Port3[i]).ctimer;
}
......@@ -159,23 +224,40 @@ namespace GcDevicePc.ProThread
}
}
}
#if(debug)
#if (debug)
st.Stop(); //计时终止
Trace.WriteLine("后处理更新时间:" + st.Elapsed.ToString(), "sys");
#endif
//if (CProfileDevice.m_DevParam.syspara.u16DetBehind == 1)
//{
// for (int i = (listRaw.Count / CProfileDevice.m_DevParam.syspara.u16DetNum)*2; i < listRaw.Count; i++)
// {
// lr.Add(listRaw[i]);
// }
// for (int i = (listPoint.Count / CProfileDevice.m_DevParam.syspara.u16DetNum)*2; i < listPoint.Count; i++)
// {
// lp.Add(listPoint[i]);
// }
//}
CurveDisPlay3.curdisp3.addDataRaw(listRaw); //记录原始数据
CurveDisPlay3.curdisp3.addPoint(listPoint, drbool); //更新绘画区域
//lr.Clear();
//lp.Clear();
if (drbool)
{
time = 0;
CurveDisPlay3.curdisp3.cleardata();
}
// Console.WriteLine(string.Format("【{0}】读取个数结束 {1}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), globaldata.m_signalbuffer.Draw_Port.Count));
// Console.WriteLine(string.Format("【{0}】读取个数结束 {1}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), globaldata.m_signalbuffer.Draw_Port3.Count));
}
if (globaldata.cancelflag)
if (globaldata.cancelflag3)
{
globaldata.cancelflag = false;
globaldata.cancelflag3 = false;
}
// Thread.Sleep(500);
......@@ -189,6 +271,8 @@ namespace GcDevicePc.ProThread
}
}
//List<double[]> lr = new List<double[]>();
//List<double[]> lp = new List<double[]>();
public void CKvocUpdataStart()
{
if (datamre != null)
......
......@@ -236,17 +236,17 @@ namespace GcDevicePc.ProThread
globaldata.m_signalbuffer.Draw_Port.Add(globaldata.m_signalbuffer.Channel1_Port);
globaldata.m_signalbuffer.Save_Port.Add(globaldata.m_signalbuffer.Channel1_Port);
//if (globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.sendtohw)
//{
// lock (globaldata.channelA_A)
// {
// globaldata.channelA_A.Add((long)(fidv[i] * 1000000));
// }
// lock (globaldata.channelB_A)
// {
// globaldata.channelB_A.Add((long)(fidv[i] * 1000000));
// }
//}
if (globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.sendtohw)
{
lock (globaldata.channelA_A)
{
globaldata.channelA_A.Add((long)(fidv[i] * 1000000));
}
lock (globaldata.channelB_A)
{
globaldata.channelB_A.Add((long)(fidv[i] * 1000000));
}
}
}
}
}
......@@ -299,18 +299,18 @@ namespace GcDevicePc.ProThread
globaldata.m_signalbuffer.Draw_Port2.Add(globaldata.m_signalbuffer.Channel2_Port);
globaldata.m_signalbuffer.Save_Port2.Add(globaldata.m_signalbuffer.Channel2_Port);
//if (globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.sendtohw)
//{
// lock (globaldata.channelA_B)
// {
// globaldata.channelA_B.Add((long)(fidv[i] * 1000000));
// }
if (globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.sendtohw)
{
lock (globaldata.channelA_B)
{
globaldata.channelA_B.Add((long)(fidv[i] * 1000000));
}
// lock (globaldata.channelB_B)
// {
// globaldata.channelB_B.Add((long)(fidv[i] * 1000000));
// }
//}
lock (globaldata.channelB_B)
{
globaldata.channelB_B.Add((long)(fidv[i] * 1000000));
}
}
}
}
}
......@@ -363,17 +363,17 @@ namespace GcDevicePc.ProThread
globaldata.m_signalbuffer.Draw_Port3.Add(globaldata.m_signalbuffer.Channel3_Port);
globaldata.m_signalbuffer.Save_Port3.Add(globaldata.m_signalbuffer.Channel3_Port);
//if (globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.sendtohw)
//{
// lock (globaldata.channelA_C)
// {
// globaldata.channelA_C.Add((long)(fidv[i] * 1000000));
// }
// lock (globaldata.channelB_C)
// {
// globaldata.channelB_C.Add((long)(fidv[i] * 1000000));
// }
//}
if (globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.sendtohw)
{
lock (globaldata.channelA_C)
{
globaldata.channelA_C.Add((long)(fidv[i] * 1000000));
}
lock (globaldata.channelB_C)
{
globaldata.channelB_C.Add((long)(fidv[i] * 1000000));
}
}
}
}
}
......
......@@ -4,6 +4,7 @@ using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading;
using GcDevicePc.GCBuffer;
using GcDevicePc.IniParam;
namespace GcDevicePc.ProThread
......@@ -12,7 +13,6 @@ namespace GcDevicePc.ProThread
{
[DllImport(@"HWSendData.dll", EntryPoint = "SendDataToHW")]
public static extern void GCSendDataToHW(Int32 data1, Int32 data2, Int32 data3);
#region 私有变量
ManualResetEvent datamre = new ManualResetEvent(false);
......@@ -113,7 +113,7 @@ namespace GcDevicePc.ProThread
for (i = 0; i < 5; i++)
{
switch (CProfileDevice.m_DevParam.signal.uDetA[0])
switch (methodconfig.signal.uDetA[0])
{
case 1:
if (globaldata.channelA_A.Count >= 1)
......@@ -138,7 +138,7 @@ namespace GcDevicePc.ProThread
break;
}
switch (CProfileDevice.m_DevParam.signal.uDetB[0])
switch (methodconfig.signal.uDetB[0])
{
case 1:
if (globaldata.channelB_A.Count >= 1)
......@@ -163,21 +163,21 @@ namespace GcDevicePc.ProThread
break;
}
if (CProfileDevice.m_DevParam.signal.u16ChannelA == 1 && CProfileDevice.m_DevParam.signal.u16ChannelB == 1)
if (methodconfig.signal.u16ChannelA == 1 && methodconfig.signal.u16ChannelB == 1)
{
SendDataToHW_AB(mydataA, mydataB);
Thread.Sleep(50);
}
//写入A
if (CProfileDevice.m_DevParam.signal.u16ChannelA == 1 && CProfileDevice.m_DevParam.signal.u16ChannelB != 1)
if (methodconfig.signal.u16ChannelA == 1 && methodconfig.signal.u16ChannelB != 1)
{
SendDataToHW_A(mydataA);
Thread.Sleep(50);
}
//写入B
if (CProfileDevice.m_DevParam.signal.u16ChannelA != 1 && CProfileDevice.m_DevParam.signal.u16ChannelB == 1)
if (methodconfig.signal.u16ChannelA != 1 && methodconfig.signal.u16ChannelB == 1)
{
SendDataToHW_B(mydataB);
Thread.Sleep(50);
......@@ -194,7 +194,7 @@ namespace GcDevicePc.ProThread
int i = 0;
for (i = 0; i < 5; i++)
{
switch (CProfileDevice.m_DevParam.signal.uDetA[lastA])
switch (methodconfig.signal.uDetA[lastA])
{
case 1:
if (globaldata.channelA_A.Count >= 1)
......@@ -219,7 +219,7 @@ namespace GcDevicePc.ProThread
break;
}
switch (CProfileDevice.m_DevParam.signal.uDetB[lastB])
switch (methodconfig.signal.uDetB[lastB])
{
case 1:
if (globaldata.channelB_A.Count >= 1)
......@@ -244,21 +244,21 @@ namespace GcDevicePc.ProThread
break;
}
if (CProfileDevice.m_DevParam.signal.u16ChannelA == 1 && CProfileDevice.m_DevParam.signal.u16ChannelB == 1)
if (methodconfig.signal.u16ChannelA == 1 && methodconfig.signal.u16ChannelB == 1)
{
SendDataToHW_AB(mydataA, mydataB);
Thread.Sleep(50);
}
//写入A
if (CProfileDevice.m_DevParam.signal.u16ChannelA == 1 && CProfileDevice.m_DevParam.signal.u16ChannelB != 1)
if (methodconfig.signal.u16ChannelA == 1 && methodconfig.signal.u16ChannelB != 1)
{
SendDataToHW_A(mydataA);
Thread.Sleep(50);
}
//写入B
if (CProfileDevice.m_DevParam.signal.u16ChannelA != 1 && CProfileDevice.m_DevParam.signal.u16ChannelB == 1)
if (methodconfig.signal.u16ChannelA != 1 && methodconfig.signal.u16ChannelB == 1)
{
SendDataToHW_B(mydataB);
Thread.Sleep(50);
......@@ -266,7 +266,7 @@ namespace GcDevicePc.ProThread
}
}
public static GCMethodConfig methodconfig { get; set; }
private void SendToHW_Draw()
{
DateTime StartTimeA;
......@@ -295,17 +295,42 @@ namespace GcDevicePc.ProThread
bool run_stop = false;
int recordA = 0;
int saveA = 0;
int recordB = 0;
int saveB = 0;
int onea = 0;
int oneb = 0;
bool ackoneA = false;
bool ackoneB = false;
ushort SendNumA = 0;
ushort SendNumB = 0;
ushort MAXNum = 0;
//int i = 0;
bool runflag = false;
while (true)
{
if ((globaldata.m_hmibuffer.gcinfo.methodstatus == 4 || globaldata.m_hmibuffer.gcinfo.methodstatus == 5) && globaldata.m_hmibuffer.gcinfo.hmistatus == 4 && run_stop != true)
{
saveB = 0;
recordB = 0;
recordA = 0;
saveA = 0;
onea = 0;
oneb = 0;
ackoneA = false;
ackoneB = false;
mydataA_old = 0;
mydataB_old = 0;
InitSendToHWData();
//清除所有数据,准备传输
CleanAllToHWData();
......@@ -314,27 +339,25 @@ namespace GcDevicePc.ProThread
StartSendDataToHW();
//绘图通知开启flag
runflag = true;
if (CProfileDevice.m_DevParam.signal.u16ChannelA == 1)
if (methodconfig.signal.u16ChannelA == 1)
{
SendNumA = CheckNumandTime(0, CProfileDevice.m_DevParam.signal.uDetA, CProfileDevice.m_DevParam.signal.u16DetTimeLengthA);
SendNumA = CheckNumandTime(0, methodconfig.signal.uDetA, methodconfig.signal.u16DetTimeLengthA);
}
if (CProfileDevice.m_DevParam.signal.u16ChannelB == 1)
if (methodconfig.signal.u16ChannelB == 1)
{
SendNumB = CheckNumandTime(0, CProfileDevice.m_DevParam.signal.uDetB, CProfileDevice.m_DevParam.signal.u16DetTimeLengthB);
SendNumB = CheckNumandTime(0, methodconfig.signal.uDetB, methodconfig.signal.u16DetTimeLengthB);
}
// LogHelper.I("StepA StpeB is", SendNumA.ToString() + " "+ SendNumB.ToString());
MAXNum = SendNumA > SendNumB ? SendNumA : SendNumB;
if (CProfileDevice.m_DevParam.signal.u16ChannelA == 1 || CProfileDevice.m_DevParam.signal.u16ChannelB == 1)
if (methodconfig.signal.u16ChannelA == 1 || methodconfig.signal.u16ChannelB == 1)
{
StepA = 0;
StepB = 0;
{
StartTimeA = DateTime.Now;
StartTimeB = DateTime.Now;
......@@ -357,21 +380,39 @@ namespace GcDevicePc.ProThread
if (StepA < SendNumA)
{
if (secA <= CProfileDevice.m_DevParam.signal.u16DetTimeLengthA[StepA])
if (secA <= methodconfig.signal.u16DetTimeLengthA[StepA])
{
//Console.WriteLine("总共:" + SendNumA.ToString() + " 阶段,现在是第" + StepA.ToString() + "个阶段:" + secA.ToString() + "/" + CProfileDevice.m_DevParam.signal.u16DetTimeLengthA[i].ToString());
//Console.WriteLine("总共:" + SendNumA.ToString() + " 阶段,现在是第" + StepA.ToString() + "个阶段:" + secA.ToString() + "/" + methodconfig.signal.u16DetTimeLengthA[StepA].ToString());
switch (CProfileDevice.m_DevParam.signal.uDetA[StepA])
switch (methodconfig.signal.uDetA[StepA])
{
case 1:
if (globaldata.channelA_A.Count >= 1)
{
if (changeA_flag)
//if (changeA_flag)
//{
// offetA = Int32.Parse(globaldata.channelA_A[0].ToString()) - mydataA_old;
// changeA_flag = false;
//}
mydataA = Int32.Parse(globaldata.channelA_A[0].ToString()) - offetA;
if (ackoneA)
{
offetA = Int32.Parse(globaldata.channelA_A[0].ToString()) - mydataA_old;
changeA_flag = false;
onea = mydataA;
ackoneA = false;
}
mydataA = Int32.Parse(globaldata.channelA_A[0].ToString()) - offetA;
if (onea > saveA)
{
mydataA = mydataA - (onea - saveA);
}
else if (onea < saveA)
{
mydataA = mydataA + (saveA - onea);
}
mydataA_old = mydataA;
}
......@@ -379,12 +420,29 @@ namespace GcDevicePc.ProThread
case 2:
if (globaldata.channelA_B.Count >= 1)
{
if (changeA_flag)
//if (changeA_flag)
//{
// offetA = Int32.Parse(globaldata.channelA_B[0].ToString()) - mydataA_old;
// changeA_flag = false;
//}
mydataA = Int32.Parse(globaldata.channelA_B[0].ToString()) - offetA;
if (ackoneA)
{
offetA = Int32.Parse(globaldata.channelA_B[0].ToString()) - mydataA_old;
changeA_flag = false;
onea = mydataA;
ackoneA = false;
}
if (onea > saveA)
{
mydataA = mydataA - (onea - saveA);
}
else if (onea < saveA)
{
mydataA = mydataA + (saveA - onea);
}
mydataA = Int32.Parse(globaldata.channelA_B[0].ToString()) - offetA;
mydataA_old = mydataA;
}
......@@ -392,12 +450,30 @@ namespace GcDevicePc.ProThread
case 3:
if (globaldata.channelA_C.Count >= 1)
{
if (changeA_flag)
//if (changeA_flag)
//{
// offetA = Int32.Parse(globaldata.channelA_C[0].ToString()) - mydataA_old;
// changeA_flag = false;
//}
mydataA = Int32.Parse(globaldata.channelA_C[0].ToString()) - offetA;
if (ackoneA)
{
offetA = Int32.Parse(globaldata.channelA_C[0].ToString()) - mydataA_old;
changeA_flag = false;
onea = mydataA;
ackoneA = false;
}
mydataA = Int32.Parse(globaldata.channelA_C[0].ToString()) - offetA;
if (onea > saveA)
{
mydataA = mydataA - (onea - saveA);
}
else if (onea < saveA)
{
mydataA = mydataA + (saveA - onea);
}
mydataA_old = mydataA;
}
......@@ -419,11 +495,13 @@ namespace GcDevicePc.ProThread
globaldata.channelA_C.RemoveAt(0);
}
recordA = mydataA;
}
else
{
// LogHelper.I("StepA++ ", StepA.ToString() + " " + SendNumA.ToString());
saveA = recordA;
ackoneA = true;
StepA++;
StartTimeA = DateTime.Now;
changeA_flag = true;
......@@ -433,21 +511,36 @@ namespace GcDevicePc.ProThread
if (StepB < SendNumB)
{
if (secB <= CProfileDevice.m_DevParam.signal.u16DetTimeLengthB[StepB])
if (secB <= methodconfig.signal.u16DetTimeLengthB[StepB])
{
//Console.WriteLine("总共:" + SendNumB.ToString() + " 阶段,现在是第" + StepB.ToString() + "个阶段:" + secB.ToString() + "/" + CProfileDevice.m_DevParam.signal.u16DetTimeLengthB[i].ToString());
//Console.WriteLine("总共:" + SendNumB.ToString() + " 阶段,现在是第" + StepB.ToString() + "个阶段:" + secB.ToString() + "/" + methodconfig.signal.u16DetTimeLengthB[i].ToString());
switch (CProfileDevice.m_DevParam.signal.uDetB[StepB])
switch (methodconfig.signal.uDetB[StepB])
{
case 1:
if (globaldata.channelB_A.Count >= 1)
{
if (changeB_flag)
//if (changeB_flag)
//{
// offetB = Int32.Parse(globaldata.channelB_A[0].ToString()) - mydataB_old;
// changeB_flag = false;
//}
mydataB = Int32.Parse(globaldata.channelB_A[0].ToString()) - offetB;
if (ackoneB)
{
oneb = mydataB;
ackoneB = false;
}
if (oneb > saveB)
{
offetB = Int32.Parse(globaldata.channelB_A[0].ToString()) - mydataB_old;
changeB_flag = false;
mydataB = mydataB - (oneb - saveB);
}
else if(oneb < saveB)
{
mydataB = mydataB + (saveB - oneb);
}
mydataB = Int32.Parse(globaldata.channelB_A[0].ToString()) - offetB;
mydataB_old = mydataB;
}
......@@ -455,12 +548,29 @@ namespace GcDevicePc.ProThread
case 2:
if (globaldata.channelB_B.Count >= 1)
{
if (changeB_flag)
//if (changeB_flag)
//{
// offetB = Int32.Parse(globaldata.channelB_B[0].ToString()) - mydataB_old;
// changeB_flag = false;
//}
mydataB = Int32.Parse(globaldata.channelB_B[0].ToString()) - offetB;
if (ackoneB)
{
offetB = Int32.Parse(globaldata.channelB_B[0].ToString()) - mydataB_old;
changeB_flag = false;
oneb = mydataB;
ackoneB = false;
}
mydataB = Int32.Parse(globaldata.channelB_B[0].ToString()) - offetB;
if (oneb > saveB)
{
mydataB = mydataB - (oneb - saveB);
}
else if (oneb < saveB)
{
mydataB = mydataB + (saveB - oneb);
}
mydataB_old = mydataB;
}
......@@ -468,12 +578,29 @@ namespace GcDevicePc.ProThread
case 3:
if (globaldata.channelB_C.Count >= 1)
{
if (changeB_flag)
//if (changeB_flag)
//{
// offetB = Int32.Parse(globaldata.channelB_C[0].ToString()) - mydataB_old;
// changeB_flag = false;
//}
mydataB = Int32.Parse(globaldata.channelB_C[0].ToString()) - offetB;
if (ackoneB)
{
offetB = Int32.Parse(globaldata.channelB_C[0].ToString()) - mydataB_old;
changeB_flag = false;
oneb = mydataB;
ackoneB = false;
}
mydataB = Int32.Parse(globaldata.channelB_C[0].ToString()) - offetB;
if (oneb > saveB)
{
mydataB = mydataB - (oneb - saveB);
}
else if (oneb < saveB)
{
mydataB = mydataB + (saveB - oneb);
}
mydataB_old = mydataB;
}
......@@ -491,11 +618,13 @@ namespace GcDevicePc.ProThread
{
globaldata.channelB_C.RemoveAt(0);
}
recordB = mydataB;
}
else
{
// LogHelper.I("StepB ", StepB.ToString() + " " + SendNumB.ToString());
saveB = recordB;
ackoneB = true;
StepB++;
StartTimeB = DateTime.Now;
changeB_flag = true;
......@@ -505,7 +634,7 @@ namespace GcDevicePc.ProThread
//写入AB
if (StepA < SendNumA && StepB < SendNumB)
{
//LogHelper.I("SendDataToHW A B", secA.ToString() + " "+ secB.ToString());
//Console.WriteLine("SendDataToHW A B", secA.ToString() + " "+ secB.ToString());
SendDataToHW_AB(mydataA, mydataB);
Thread.Sleep(50);
......
......@@ -168,8 +168,6 @@ namespace GcDevicePc
string err_log = test.INIGetStringValue("Logs", "ErrLog", null);
string hmi_log = test.INIGetStringValue("Logs", "HmiLog", null);
try
{
NetworkInterface[] port = NetworkInterface.GetAllNetworkInterfaces();
......@@ -277,8 +275,6 @@ namespace GcDevicePc
}
//string AddressIP = string.Empty;
//string IPGateWay = string.Empty;
//string IPSubNet = string.Empty;
......@@ -298,7 +294,6 @@ namespace GcDevicePc
// {
// IPGateWay = _IPAddress.ToString();
// }
//}
}
......@@ -324,9 +319,8 @@ namespace GcDevicePc
else e.Handled = true;
}
}
}
private void CaseNo_TextBoxChange(object sender, EventArgs e)
{
TextBox text = sender as TextBox;
......@@ -341,6 +335,7 @@ namespace GcDevicePc
TextBox text = sender as TextBox;
text.SelectAll();
}
private void changemac_Click(object sender, EventArgs e)
{
//bool ret = false;
......@@ -468,7 +463,6 @@ namespace GcDevicePc
}
}
public static bool IsIPAddress(string ip)
{
return Regex.IsMatch(ip, @"^((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)$");
......@@ -520,8 +514,6 @@ namespace GcDevicePc
Thread th_changeip;
private void changelocal_Click(object sender, EventArgs e)
{
try
......
......@@ -34,7 +34,7 @@ namespace GcDevicePc
InitializeComponent();
}
public auxtool(ushort time1, ushort time2,ushort time3)
public auxtool(ushort time1, ushort time2, ushort time3)
{
InitializeComponent();
......@@ -64,7 +64,7 @@ namespace GcDevicePc
this.label4.Text = ipos.ToString() + "/100";
this.progressBar1.Value = Convert.ToInt32(ipos);
if(ipos == 100 || send_ok)
if (ipos == 100 || send_ok)
{
this.label4.Text = "传输完成";
this.runbtn.Enabled = true;
......@@ -76,7 +76,7 @@ namespace GcDevicePc
private void hvalvetime_KeyPress(object sender, KeyPressEventArgs e)
{
if(!(Char.IsNumber(e.KeyChar)) && e.KeyChar != (char)8)
if (!(Char.IsNumber(e.KeyChar)) && e.KeyChar != (char)8)
{
e.Handled = true;
}
......@@ -150,14 +150,14 @@ namespace GcDevicePc
{
if (HmiIP != null)
{
if(globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.system_Statue == false)
if (globaldata.m_pcbuffer.gcpcinfo.pcworkinfo.system_Statue == false)
{
this.CHmibtn.Enabled = false;
int ret = 0;
FileServerClient singlesend = new FileServerClient();
singlesend.WtClientInit(HmiIP, HmiPort);
ret = singlesend.WtHMICloseRro("WtMainProc");
if(ret == 1)
if (ret == 1)
{
MessageBox.Show("停止系统成功!");
}
......@@ -167,7 +167,8 @@ namespace GcDevicePc
this.chosenbtn.Enabled = true;
this.updatebtn.Enabled = true;
}else
}
else
{
MessageBox.Show("请停止系统,再关闭!");
}
......@@ -246,19 +247,19 @@ namespace GcDevicePc
for (int i = 0; i < 100; i++)
{
if(send_ok)
if (send_ok)
{
SetTextMesssage(100, i.ToString() + "\r\n");
}else
}
else
{
Thread.Sleep(200);
SetTextMesssage(i, i.ToString() + "\r\n");
if(i == 95)
if (i == 95)
{
i--;
}
}
}
}
......@@ -285,9 +286,9 @@ namespace GcDevicePc
private void searchHMI_Click(object sender, EventArgs e)
{
ArrayList DeviceList = new ArrayList();
if(!hmisearch)
if (!hmisearch)
{
if(mre != null)
if (mre != null)
mre.Reset();
addhmi = new Thread(searchhmi);
addhmi.IsBackground = true;
......@@ -428,7 +429,7 @@ namespace GcDevicePc
{
updatefirm();
while(true)
while (true)
{
if (globaldata.m_hmibuffer.gcinfo.hmistatus == 5)
{
......@@ -440,7 +441,7 @@ namespace GcDevicePc
updatestart = true;
}
if( updatestart)
if (updatestart)
{
if (globaldata.m_hmibuffer.gcinfo.hmistatus == 0)
{
......
......@@ -70,6 +70,7 @@ namespace GcDevicePc
//public static string cur_RunTab; //当前运行表名
//public static string cur_DataName; //保存数据文件名
public static string show_MethodName; //显示方法名
public static string CurrentVersion; //当前版本
//public static bool system_Statue; //系统开启状态
//public static ushort work_Statue; //系统工作状态
......@@ -126,10 +127,14 @@ namespace GcDevicePc
// public static Modbus m_modbus = new Modbus();
//public static UInt32 starttimer = 0x7FFFFFFF; //开始时间
//public static bool startimerIsSet = false;
// public static int savetimer; //开始时间
public static UInt32 starttimer = 0x7FFFFFFF; //开始时间
public static bool startimerIsSet = false;
// public static int savetimer; //开始时间
public static bool startimerIsSet1 = false;
public static bool startimerIsSet2 = false;
public static bool startimerIsSet3 = false;
//public static int[] channel1_timer = new int[30];
//public static float[] channel1_data = new float[30];
......
No preview for this file type
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