治具取料完成后不清除治具的测试结果,等下一个产品开始测试时清除上一个产品的测试结果,目的是为了解决产品刚放下去就获取结果的问题。

Eight
lhiven 7 months ago
parent 94ba24307f
commit f4ebd8a85c

@ -35,240 +35,248 @@ namespace Rs.MotionPlat
int errNum = 0; int errNum = 0;
public void RefreshStatus(TestFixture tf) public void RefreshStatus(TestFixture tf)
{ {
string msg = tf.GetLog(); try
if(string.IsNullOrEmpty(msg))
{ {
errNum++; string msg = tf.GetLog();
if(errNum>=10) if (string.IsNullOrEmpty(msg))
{ {
if (label5.BackColor != Color.Red) errNum++;
label5.BackColor = Color.Red; if (errNum >= 10)
}
}
else
{
//打印日志
string logDir = $"d:\\log\\Communition\\{DateTime.Now.ToString("yyyyMMdd")}";
if (!Directory.Exists(logDir))
{
Directory.CreateDirectory(logDir);
}
string logFileName = $"{logDir}\\{tf.Index}.txt";
File.WriteAllText(logFileName, $"{msg}\r\n");
if (label5.BackColor!=Color.Lime)
{
label5.BackColor = Color.Lime;
}
errNum = 0;
}
if (lblStatus.Text != tf.Status.ToString())
{
lblStatus.Text = tf.Status.ToString();
}
switch (tf.Status)
{
case ETestFixtureStatus.NoConnect:
if(btnReset.Enabled)
{
btnReset.Enabled = false;
}
if(lblStatus.BackColor!=Color.Gray)
{ {
lblStatus.BackColor = Color.Gray; if (label5.BackColor != Color.Red)
label5.BackColor = Color.Red;
} }
break; }
case ETestFixtureStatus.IDLE: else
if(!btnReset.Enabled) {
{ //打印日志
btnReset.Enabled = true; string logDir = $"d:\\log\\Communition\\{DateTime.Now.ToString("yyyyMMdd")}";
} if (!Directory.Exists(logDir))
if(lblStatus.BackColor!=Color.Green)
{ {
lblStatus.BackColor = Color.Green; Directory.CreateDirectory(logDir);
} }
//if (tf.Product != null) string logFileName = $"{logDir}\\{tf.Index}.txt";
//{ File.WriteAllText(logFileName, $"{msg}\r\n");
// if (tf.Product.Result == "true") if (label5.BackColor != Color.Lime)
// {
// lblResult.BackColor = Color.Green;
// }
// if (tf.Product.Result == "false")
// {
// lblResult.BackColor = Color.Red;
// }
// if (tf.Product != null && tf.Product.Result != null && lblResult.Text != tf.Product.Result)
// {
// lblResult.Text = tf.Product.Result.ToString();
// }
//}
//else
//{
// lblSN.Text = "";
// lblFixtureName.BackColor = Color.FromArgb(56, 56, 56);
//}
break;
case ETestFixtureStatus.Testing:
//if (tf.Product != null && lblSN.Text != tf.Product.SN)
//{
// lblSN.Text = tf.Product.SN;
//}
if (btnReset.Enabled != false)
{ {
btnReset.Enabled = false; label5.BackColor = Color.Lime;
} }
if (lblStatus.BackColor != Color.Blue) errNum = 0;
}
if (lblStatus.Text != tf.Status.ToString())
{
lblStatus.Text = tf.Status.ToString();
}
switch (tf.Status)
{
case ETestFixtureStatus.NoConnect:
if (btnReset.Enabled)
{
btnReset.Enabled = false;
}
if (lblStatus.BackColor != Color.Gray)
{
lblStatus.BackColor = Color.Gray;
}
break;
case ETestFixtureStatus.IDLE:
if (!btnReset.Enabled)
{
btnReset.Enabled = true;
}
if (lblStatus.BackColor != Color.Green)
{
lblStatus.BackColor = Color.Green;
}
//if (tf.Product != null)
//{
// if (tf.Product.Result == "true")
// {
// lblResult.BackColor = Color.Green;
// }
// if (tf.Product.Result == "false")
// {
// lblResult.BackColor = Color.Red;
// }
// if (tf.Product != null && tf.Product.Result != null && lblResult.Text != tf.Product.Result)
// {
// lblResult.Text = tf.Product.Result.ToString();
// }
//}
//else
//{
// lblSN.Text = "";
// lblFixtureName.BackColor = Color.FromArgb(56, 56, 56);
//}
break;
case ETestFixtureStatus.Testing:
//if (tf.Product != null && lblSN.Text != tf.Product.SN)
//{
// lblSN.Text = tf.Product.SN;
//}
if (btnReset.Enabled != false)
{
btnReset.Enabled = false;
}
if (lblStatus.BackColor != Color.Blue)
{
lblStatus.BackColor = Color.Blue;
}
break;
case ETestFixtureStatus.Warning:
if (btnReset.Enabled != true)
{
btnReset.Enabled = true;
}
if (lblStatus.BackColor != Color.Red)
{
lblStatus.BackColor = Color.Red;
}
break;
case ETestFixtureStatus.Homing:
if (btnReset.Enabled != false)
{
btnReset.Enabled = false;
}
if (lblStatus.BackColor != Color.YellowGreen)
{
lblStatus.BackColor = Color.YellowGreen;
}
break;
}
if (tf.Product != null)
{
if (lblSN.Text != tf.Product.SN)
{ {
lblStatus.BackColor = Color.Blue; lblSN.Text = tf.Product.SN;
} }
break; }
case ETestFixtureStatus.Warning: else
if(btnReset.Enabled!=true) {
lblSN.Text = "";
}
if (lblResult.Text != tf.Result)
{
if (tf.Result == "PASS")
{ {
btnReset.Enabled = true; lblResult.BackColor = Color.Green;
} }
if (lblStatus.BackColor != Color.Red) else if (tf.Result == "NG")
{ {
lblStatus.BackColor = Color.Red; lblResult.BackColor = Color.Red;
} }
break; if (string.IsNullOrEmpty(tf.Result))
case ETestFixtureStatus.Homing:
if(btnReset.Enabled!=false)
{ {
btnReset.Enabled = false; lblResult.BackColor = Color.FromArgb(11, 16, 36);
lblResult.Text = "";
} }
if(lblStatus.BackColor!=Color.YellowGreen) else
{ {
lblStatus.BackColor = Color.YellowGreen; lblResult.Text = tf.Result;
} }
break; }
} //if(tf.Product!=null)
//{
// if(!string.IsNullOrEmpty(tf.Product.Result) && lblResult.Text!=tf.Product.Result)
// {
// if(tf.Product.Result=="PASS")
// {
// lblResult.BackColor = Color.Green;
// }
// else
// {
// lblResult.BackColor = Color.Red;
// }
// lblResult.Text = tf.Product.Result;
// }
//}
//else
//{
// if(!string.IsNullOrEmpty(lblResult.Text))
// {
// lblResult.Text = "";
// lblResult.BackColor = Color.FromArgb(11, 16, 36);
// }
//}
//if (tf.Status== ETestFixtureStatus.Testing)
//{
// if (tf.Product!=null && lblSN.Text != tf.Product.SN)
// {
// lblSN.Text = tf.Product.SN;
// }
//}
//else if(tf.Status== ETestFixtureStatus.IDLE)
//{
// if (tf.Product != null)
// {
if(tf.Product!=null) // if (tf.Product.Result == "true" && lblFixtureName.BackColor != Color.Green)
{ // {
if(lblSN.Text!= tf.Product.SN) // lblFixtureName.BackColor = Color.Green;
// }
// if (tf.Product.Result == "false" && lblFixtureName.BackColor != Color.Red)
// {
// lblFixtureName.BackColor = Color.Red;
// }
// if (tf.Product!=null && tf.Product.Result!=null && lblResult.Text != tf.Product.Result)
// {
// lblResult.Text = tf.Product.Result.ToString();
// }
// }
// else
// {
// lblSN.Text = "";
// lblFixtureName.BackColor = Color.FromArgb(56, 56, 56);
// }
//}
//else if(tf.Status== ETestFixtureStatus.Homing)
//{
// if(btnReset.Enabled!=false)
// {
// btnReset.Enabled = false;
// }
//}
if (lblName.Text != tf.MachineID)
{ {
lblSN.Text = tf.Product.SN; lblName.Text = tf.MachineID;
} }
} //if(lblLotName.Text!= GlobalVar.LotName)
else //{
{ // lblLotName.Text = GlobalVar.LotName;
lblSN.Text = ""; //}
} //if(lblEnable.Text!=tf.Enable.ToString())
//{
// //this.lblFixtureName.Enabled = tf.Enable;
// lblEnable.Text = tf.Enable.ToString();
//}
if(lblResult.Text!=tf.Result) this.lblYield.Text = $"{(tf.Yield * 100).ToString("0.00")}%";
{
if(tf.Result=="PASS") if (this.lblLastCT.Text != double.Parse(tf.LastCT.ToString()).ToString("0.000"))
{ {
lblResult.BackColor = Color.Green; this.lblLastCT.Text = double.Parse(tf.LastCT.ToString()).ToString("0.000");
} }
else if(tf.Result=="NG")
if (lblPassCount.Text != tf.PassCount.ToString())
{ {
lblResult.BackColor = Color.Red; lblPassCount.Text = tf.PassCount.ToString();
} }
if(string.IsNullOrEmpty(tf.Result)) if (lblTotalCount.Text != tf.TotalCount.ToString())
{ {
lblResult.BackColor = Color.FromArgb(11, 16, 36); lblTotalCount.Text = tf.TotalCount.ToString();
lblResult.Text = "";
} }
else if (this.lblFixtureName.Enabled != tf.Enable)
{ {
lblResult.Text = tf.Result; this.lblFixtureName.Enabled = tf.Enable;
} }
} }
//if(tf.Product!=null) catch (Exception ex)
//{
// if(!string.IsNullOrEmpty(tf.Product.Result) && lblResult.Text!=tf.Product.Result)
// {
// if(tf.Product.Result=="PASS")
// {
// lblResult.BackColor = Color.Green;
// }
// else
// {
// lblResult.BackColor = Color.Red;
// }
// lblResult.Text = tf.Product.Result;
// }
//}
//else
//{
// if(!string.IsNullOrEmpty(lblResult.Text))
// {
// lblResult.Text = "";
// lblResult.BackColor = Color.FromArgb(11, 16, 36);
// }
//}
//if (tf.Status== ETestFixtureStatus.Testing)
//{
// if (tf.Product!=null && lblSN.Text != tf.Product.SN)
// {
// lblSN.Text = tf.Product.SN;
// }
//}
//else if(tf.Status== ETestFixtureStatus.IDLE)
//{
// if (tf.Product != null)
// {
// if (tf.Product.Result == "true" && lblFixtureName.BackColor != Color.Green)
// {
// lblFixtureName.BackColor = Color.Green;
// }
// if (tf.Product.Result == "false" && lblFixtureName.BackColor != Color.Red)
// {
// lblFixtureName.BackColor = Color.Red;
// }
// if (tf.Product!=null && tf.Product.Result!=null && lblResult.Text != tf.Product.Result)
// {
// lblResult.Text = tf.Product.Result.ToString();
// }
// }
// else
// {
// lblSN.Text = "";
// lblFixtureName.BackColor = Color.FromArgb(56, 56, 56);
// }
//}
//else if(tf.Status== ETestFixtureStatus.Homing)
//{
// if(btnReset.Enabled!=false)
// {
// btnReset.Enabled = false;
// }
//}
if(lblName.Text!=tf.MachineID)
{
lblName.Text = tf.MachineID;
}
//if(lblLotName.Text!= GlobalVar.LotName)
//{
// lblLotName.Text = GlobalVar.LotName;
//}
//if(lblEnable.Text!=tf.Enable.ToString())
//{
// //this.lblFixtureName.Enabled = tf.Enable;
// lblEnable.Text = tf.Enable.ToString();
//}
this.lblYield.Text = $"{(tf.Yield * 100).ToString("0.00")}%";
if(this.lblLastCT.Text != double.Parse(tf.LastCT.ToString()).ToString("0.000"))
{ {
this.lblLastCT.Text = double.Parse(tf.LastCT.ToString()).ToString("0.000"); LogHelper.Error("RefreshStatus", ex);
} }
if(lblPassCount.Text != tf.PassCount.ToString())
{
lblPassCount.Text = tf.PassCount.ToString();
}
if(lblTotalCount.Text != tf.TotalCount.ToString())
{
lblTotalCount.Text = tf.TotalCount.ToString();
}
if(this.lblFixtureName.Enabled!=tf.Enable)
{
this.lblFixtureName.Enabled= tf.Enable;
}
} }
private void btnReset_Click(object sender, EventArgs e) private void btnReset_Click(object sender, EventArgs e)

@ -103,7 +103,7 @@ namespace Rs.MotionPlat.Entitys
public void Clear() public void Clear()
{ {
this.Product = null; this.Product = null;
this.Result = ""; //this.Result = "";
} }
public void ClearData() public void ClearData()
@ -405,6 +405,7 @@ namespace Rs.MotionPlat.Entitys
} }
} }
Send($"Reset$"); Send($"Reset$");
Result = "";
if (CheckPrintLog()) if (CheckPrintLog())
{ {
AddLog($"<<< TC{Index} Reset$"); AddLog($"<<< TC{Index} Reset$");

@ -63,6 +63,7 @@ namespace Rs.MotionPlat.Flow
homeStep = 0; homeStep = 0;
m_bHomed = false; m_bHomed = false;
m_bCancle = false; m_bCancle = false;
Stopwatch stopwatch = new Stopwatch();
Task.Run(() => Task.Run(() =>
{ {
while (!m_bCancle && !m_bHomed) while (!m_bCancle && !m_bHomed)
@ -199,15 +200,21 @@ namespace Rs.MotionPlat.Flow
while (true) while (true)
{ {
Ops.On($"抽屉锁{i}"); Ops.On($"抽屉锁{i}");
Thread.Sleep(200); stopwatch.Restart();
if (Ops.IsOff($"抽屉锁{i}动位")) while (true)
{ {
Msgbox.ShowDialog(AlarmCollection.Get(AlarmConstID.), EButtonType.Retry); if(Ops.IsOn($"抽屉锁{i}动位"))
} {
else stopwatch.Stop();
{ break;
break; }
else if(stopwatch.ElapsedMilliseconds>5000)
{
Msgbox.ShowDialog(AlarmCollection.Get(AlarmConstID.), EButtonType.Retry);
stopwatch.Restart();
}
} }
break;
} }
} }
//检测各个轴是否有使能 //检测各个轴是否有使能

@ -31,6 +31,6 @@ using System.Runtime.InteropServices;
// //
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值 //可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
//通过使用 "*",如下所示: //通过使用 "*",如下所示:
[assembly: AssemblyVersion("1.20.24.16")] [assembly: AssemblyVersion("1.20.24.17")]
//[assembly: AssemblyVersion("1.0.0.0")] //[assembly: AssemblyVersion("1.0.0.0")]
//[assembly: AssemblyFileVersion("1.0.0.0")] //[assembly: AssemblyFileVersion("1.0.0.0")]

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save