增加在料仓和治具放料完成后粘料检测。

Eight
lhiven 5 months ago
parent 25c6794d2d
commit c2f0ecb68e

@ -21,7 +21,20 @@ namespace Rs.Framework
public static class GlobalVar
{
#region newpro
/// <summary>
/// 检测是否粘料
/// </summary>
[ParameterInit("bool", "true", "system", "检测是否粘料")]
public static bool EnableCheckStickMaterial
{
get
{
return SysConfigParam.GetValue<bool>(nameof(EnableCheckStickMaterial));
}
}
/// <summary>
/// 启用料仓
/// </summary>

@ -29,6 +29,8 @@ namespace Rs.MotionPlat.Flow.SubFlow
2,
,
,
,
}
public class FixturePlaceFlow
{
@ -249,24 +251,55 @@ namespace Rs.MotionPlat.Flow.SubFlow
case EFixturePlaceFlowStep.:
if (Ops.IsStop($"NozzleZ{curNozzle.NozzleIndex}"))
{
DischargeFlow.Instance.ActionEnd("拾取器将新的 DUT 装入治具夹头", "Picker load new DUT to test cell holder");
if (bTest)
if(GlobalVar.EnableCheckStickMaterial)
{
finished = true;
flowStep = EFixturePlaceFlowStep.;
flowStep = EFixturePlaceFlowStep.;
}
else
{
logInfo = $"{GetClassName()} 治具{curFixture.Index}放料完成后抬起,吸嘴{curNozzle.NozzleIndex}把产品SN: {curNozzle.Product.SN} 放入治具{curFixture.Index}";
MessageQueue.Instance.Insert(logInfo);
//curFixture.Product = curNozzle.Product;
curFixture.StartTest(curNozzle.Product);
curNozzle.Clear();
finished = true;
flowStep = EFixturePlaceFlowStep.;
flowStep = EFixturePlaceFlowStep.;
}
}
break;
case EFixturePlaceFlowStep.:
curNozzle.VacSuction(EIoOperate.Open, GetClassName());
if (curNozzle.HasProduct())
{
AlarmEntity alarmEntity = AlarmCollection.Get(AlarmConstID.).Transform(curNozzle.NozzleIndex);
if (alarmEntity != null)
{
Msgbox.ShowDialog(alarmEntity, EButtonType.Retry);
}
else
{
Msg.ShowError("翻译文件中未找到 ‘排料吸嘴粘料报警’项");
}
}
else
{
logInfo = GetClassName() + $" 吸嘴{curNozzle.NozzleIndex}放料到{curFixture.Index}号治具无粘料";
MessageQueue.Instance.Insert(logInfo);
flowStep = EFixturePlaceFlowStep.;
}
break;
case EFixturePlaceFlowStep.:
DischargeFlow.Instance.ActionEnd("拾取器将新的 DUT 装入治具夹头", "Picker load new DUT to test cell holder");
if (bTest)
{
finished = true;
flowStep = EFixturePlaceFlowStep.;
}
else
{
logInfo = $"{GetClassName()} 治具{curFixture.Index}放料完成后抬起,吸嘴{curNozzle.NozzleIndex}把产品SN: {curNozzle.Product.SN} 放入治具{curFixture.Index}";
MessageQueue.Instance.Insert(logInfo);
//curFixture.Product = curNozzle.Product;
curFixture.StartTest(curNozzle.Product);
curNozzle.Clear();
finished = true;
flowStep = EFixturePlaceFlowStep.;
}
break;
}
}
}

@ -27,7 +27,8 @@ namespace Rs.MotionPlat.Flow.SubFlow
,
,
,
,
}
/// <summary>
/// 料仓放料流程
@ -284,14 +285,43 @@ namespace Rs.MotionPlat.Flow.SubFlow
{
logInfo = $"{GetClassName()}放料完成已抬起";
MessageQueue.Instance.Insert(logInfo);
flowStep = EStockPlaceFlowStep.;
if(GlobalVar.EnableCheckStickMaterial)
{
flowStep = EStockPlaceFlowStep.;
}
else
{
flowStep = EStockPlaceFlowStep.;
}
}
break;
case EStockPlaceFlowStep.:
if (!curNozzle.HasProduct() || GlobalVar.RunSpace)
curNozzle.VacSuction(EIoOperate.Open, GetClassName());
if (curNozzle.HasProduct())
{
AlarmEntity alarmEntity = AlarmCollection.Get(AlarmConstID.).Transform(curNozzle.NozzleIndex);
if (alarmEntity != null)
{
Msgbox.ShowDialog(alarmEntity, EButtonType.Retry);
}
else
{
Msg.ShowError("翻译文件中未找到 ‘排料吸嘴粘料报警’项");
}
}
else
{
logInfo = GetClassName() + $" 吸嘴{curNozzle.NozzleIndex}无粘料";
MessageQueue.Instance.Insert(logInfo);
flowStep = EStockPlaceFlowStep.;
}
curNozzle.VacSuction(EIoOperate.Close, GetClassName());
break;
case EStockPlaceFlowStep.:
try
{
DischargeFlow.Instance.ActionEnd("拾取器将 1 个 DUT 卸载到output托盘OK/NG", "Picker unload 1 DUT to output trav (OK/NG)");
if(curNozzle.Product!=null)
if (curNozzle.Product != null)
{
curNozzle.Product.ToSlotIndex = curPlaceSlot.Index;
if (trayType != ETrayType.ReTest)
@ -313,17 +343,9 @@ namespace Rs.MotionPlat.Flow.SubFlow
finished = true;
flowStep = EStockPlaceFlowStep.;
}
else
catch (Exception ex)
{
AlarmEntity alarmEntity = AlarmCollection.Get(AlarmConstID.).Transform(curNozzle.NozzleIndex);
if(alarmEntity != null)
{
Msgbox.ShowDialog(alarmEntity, EButtonType.Retry);
}
else
{
Msg.ShowError("翻译文件中未找到 ‘排料吸嘴粘料报警’项");
}
LogHelper.Debug(GetClassName() + ex.Message);
}
break;
}

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

@ -62,6 +62,7 @@
this.txtMachineID = new System.Windows.Forms.TextBox();
this.label5 = new System.Windows.Forms.Label();
this.groupBox1 = new System.Windows.Forms.GroupBox();
this.cboxEnableCheckStickMaterial = new System.Windows.Forms.CheckBox();
this.txtUphRefreshCycle = new System.Windows.Forms.TextBox();
this.cboxMsgShowEn = new System.Windows.Forms.CheckBox();
this.cboxMsgShowCn = new System.Windows.Forms.CheckBox();
@ -146,7 +147,6 @@
//
// groupBox8
//
resources.ApplyResources(this.groupBox8, "groupBox8");
this.groupBox8.Controls.Add(this.button1);
this.groupBox8.Controls.Add(this.cboxLanguage);
this.groupBox8.Controls.Add(this.label2);
@ -157,15 +157,16 @@
this.groupBox8.Controls.Add(this.cboxEnableIndexTimeStatistics);
this.groupBox8.Controls.Add(this.cboxEnableStock);
this.groupBox8.Controls.Add(this.cboxRunSpace);
resources.ApplyResources(this.groupBox8, "groupBox8");
this.groupBox8.ForeColor = System.Drawing.Color.White;
this.groupBox8.Name = "groupBox8";
this.groupBox8.TabStop = false;
//
// button1
//
resources.ApplyResources(this.button1, "button1");
this.button1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(56)))), ((int)(((byte)(56)))), ((int)(((byte)(56)))));
this.button1.FlatAppearance.BorderColor = System.Drawing.Color.White;
resources.ApplyResources(this.button1, "button1");
this.button1.ForeColor = System.Drawing.Color.White;
this.button1.Name = "button1";
this.button1.UseVisualStyleBackColor = false;
@ -173,11 +174,11 @@
//
// cboxLanguage
//
resources.ApplyResources(this.cboxLanguage, "cboxLanguage");
this.cboxLanguage.FormattingEnabled = true;
this.cboxLanguage.Items.AddRange(new object[] {
resources.GetString("cboxLanguage.Items"),
resources.GetString("cboxLanguage.Items1")});
resources.ApplyResources(this.cboxLanguage, "cboxLanguage");
this.cboxLanguage.Name = "cboxLanguage";
//
// label2
@ -237,7 +238,6 @@
//
// groupBox3
//
resources.ApplyResources(this.groupBox3, "groupBox3");
this.groupBox3.Controls.Add(this.btnSaveRelCategory);
this.groupBox3.Controls.Add(this.txtSiteID);
this.groupBox3.Controls.Add(this.comBoxCp);
@ -257,15 +257,16 @@
this.groupBox3.Controls.Add(this.label17);
this.groupBox3.Controls.Add(this.txtMachineID);
this.groupBox3.Controls.Add(this.label5);
resources.ApplyResources(this.groupBox3, "groupBox3");
this.groupBox3.ForeColor = System.Drawing.Color.White;
this.groupBox3.Name = "groupBox3";
this.groupBox3.TabStop = false;
//
// btnSaveRelCategory
//
resources.ApplyResources(this.btnSaveRelCategory, "btnSaveRelCategory");
this.btnSaveRelCategory.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(56)))), ((int)(((byte)(56)))), ((int)(((byte)(56)))));
this.btnSaveRelCategory.FlatAppearance.BorderColor = System.Drawing.Color.White;
resources.ApplyResources(this.btnSaveRelCategory, "btnSaveRelCategory");
this.btnSaveRelCategory.ForeColor = System.Drawing.Color.White;
this.btnSaveRelCategory.Name = "btnSaveRelCategory";
this.btnSaveRelCategory.UseVisualStyleBackColor = false;
@ -279,47 +280,47 @@
//
// comBoxCp
//
resources.ApplyResources(this.comBoxCp, "comBoxCp");
this.comBoxCp.FormattingEnabled = true;
this.comBoxCp.Items.AddRange(new object[] {
resources.GetString("comBoxCp.Items"),
resources.GetString("comBoxCp.Items1"),
resources.GetString("comBoxCp.Items2")});
resources.ApplyResources(this.comBoxCp, "comBoxCp");
this.comBoxCp.Name = "comBoxCp";
this.comBoxCp.SelectedIndexChanged += new System.EventHandler(this.comBoxCp_SelectedIndexChanged);
//
// comBoxRelCategory
//
resources.ApplyResources(this.comBoxRelCategory, "comBoxRelCategory");
this.comBoxRelCategory.FormattingEnabled = true;
this.comBoxRelCategory.Items.AddRange(new object[] {
resources.GetString("comBoxRelCategory.Items"),
resources.GetString("comBoxRelCategory.Items1"),
resources.GetString("comBoxRelCategory.Items2")});
resources.ApplyResources(this.comBoxRelCategory, "comBoxRelCategory");
this.comBoxRelCategory.Name = "comBoxRelCategory";
this.comBoxRelCategory.SelectedIndexChanged += new System.EventHandler(this.comBoxRelCategory_SelectedIndexChanged);
//
// cboxHostType
//
resources.ApplyResources(this.cboxHostType, "cboxHostType");
this.cboxHostType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cboxHostType.FormattingEnabled = true;
this.cboxHostType.Items.AddRange(new object[] {
resources.GetString("cboxHostType.Items"),
resources.GetString("cboxHostType.Items1"),
resources.GetString("cboxHostType.Items2")});
resources.ApplyResources(this.cboxHostType, "cboxHostType");
this.cboxHostType.Name = "cboxHostType";
this.cboxHostType.SelectedIndexChanged += new System.EventHandler(this.cboxHostType_SelectedIndexChanged);
//
// cboxConfigName
//
resources.ApplyResources(this.cboxConfigName, "cboxConfigName");
this.cboxConfigName.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cboxConfigName.FormattingEnabled = true;
this.cboxConfigName.Items.AddRange(new object[] {
resources.GetString("cboxConfigName.Items"),
resources.GetString("cboxConfigName.Items1"),
resources.GetString("cboxConfigName.Items2")});
resources.ApplyResources(this.cboxConfigName, "cboxConfigName");
this.cboxConfigName.Name = "cboxConfigName";
this.cboxConfigName.SelectedIndexChanged += new System.EventHandler(this.cboxConfigName_SelectedIndexChanged);
//
@ -394,7 +395,7 @@
//
// groupBox1
//
resources.ApplyResources(this.groupBox1, "groupBox1");
this.groupBox1.Controls.Add(this.cboxEnableCheckStickMaterial);
this.groupBox1.Controls.Add(this.txtUphRefreshCycle);
this.groupBox1.Controls.Add(this.cboxMsgShowEn);
this.groupBox1.Controls.Add(this.cboxMsgShowCn);
@ -435,10 +436,18 @@
this.groupBox1.Controls.Add(this.lblTakeTrayFromNg2InputSpeed);
this.groupBox1.Controls.Add(this.lblWholeSpeed);
this.groupBox1.Controls.Add(this.label1);
resources.ApplyResources(this.groupBox1, "groupBox1");
this.groupBox1.ForeColor = System.Drawing.Color.White;
this.groupBox1.Name = "groupBox1";
this.groupBox1.TabStop = false;
//
// cboxEnableCheckStickMaterial
//
resources.ApplyResources(this.cboxEnableCheckStickMaterial, "cboxEnableCheckStickMaterial");
this.cboxEnableCheckStickMaterial.Name = "cboxEnableCheckStickMaterial";
this.cboxEnableCheckStickMaterial.UseVisualStyleBackColor = true;
this.cboxEnableCheckStickMaterial.CheckedChanged += new System.EventHandler(this.cbox_CheckedChanged);
//
// txtUphRefreshCycle
//
resources.ApplyResources(this.txtUphRefreshCycle, "txtUphRefreshCycle");
@ -496,10 +505,10 @@
//
// panelEx1
//
resources.ApplyResources(this.panelEx1, "panelEx1");
this.panelEx1.Controls.Add(this.btnSaveSpeedParam);
this.panelEx1.Controls.Add(this.cboxCurRecipe);
this.panelEx1.Controls.Add(this.label4);
resources.ApplyResources(this.panelEx1, "panelEx1");
this.panelEx1.Name = "panelEx1";
//
// btnSaveSpeedParam
@ -514,10 +523,10 @@
//
// cboxCurRecipe
//
resources.ApplyResources(this.cboxCurRecipe, "cboxCurRecipe");
this.cboxCurRecipe.FormattingEnabled = true;
this.cboxCurRecipe.Items.AddRange(new object[] {
resources.GetString("cboxCurRecipe.Items")});
resources.ApplyResources(this.cboxCurRecipe, "cboxCurRecipe");
this.cboxCurRecipe.Name = "cboxCurRecipe";
//
// label4
@ -729,7 +738,6 @@
//
// groupBox4
//
resources.ApplyResources(this.groupBox4, "groupBox4");
this.groupBox4.Controls.Add(this.dataGridView1);
this.groupBox4.Controls.Add(this.label6);
this.groupBox4.Controls.Add(this.panel1);
@ -739,13 +747,13 @@
this.groupBox4.Controls.Add(this.txtControlCenterPort);
this.groupBox4.Controls.Add(this.cboxEnableExceptionHandlingNozzle);
this.groupBox4.Controls.Add(this.cboxEnableScanBarCodeByDownCamera);
resources.ApplyResources(this.groupBox4, "groupBox4");
this.groupBox4.ForeColor = System.Drawing.Color.White;
this.groupBox4.Name = "groupBox4";
this.groupBox4.TabStop = false;
//
// dataGridView1
//
resources.ApplyResources(this.dataGridView1, "dataGridView1");
this.dataGridView1.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill;
this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridView1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
@ -754,6 +762,7 @@
this.,
this.,
this.});
resources.ApplyResources(this.dataGridView1, "dataGridView1");
this.dataGridView1.Name = "dataGridView1";
this.dataGridView1.RowTemplate.Height = 23;
this.dataGridView1.CellEndEdit += new System.Windows.Forms.DataGridViewCellEventHandler(this.dataGridView1_CellEndEdit);
@ -801,9 +810,9 @@
//
// panel1
//
resources.ApplyResources(this.panel1, "panel1");
this.panel1.Controls.Add(this.radioButton4);
this.panel1.Controls.Add(this.radioButton3);
resources.ApplyResources(this.panel1, "panel1");
this.panel1.Name = "panel1";
//
// radioButton4
@ -824,9 +833,9 @@
//
// txtControlCenterIP
//
resources.ApplyResources(this.txtControlCenterIP, "txtControlCenterIP");
this.txtControlCenterIP.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(16)))), ((int)(((byte)(16)))), ((int)(((byte)(16)))));
this.txtControlCenterIP.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
resources.ApplyResources(this.txtControlCenterIP, "txtControlCenterIP");
this.txtControlCenterIP.ForeColor = System.Drawing.Color.White;
this.txtControlCenterIP.Name = "txtControlCenterIP";
//
@ -842,9 +851,9 @@
//
// txtControlCenterPort
//
resources.ApplyResources(this.txtControlCenterPort, "txtControlCenterPort");
this.txtControlCenterPort.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(16)))), ((int)(((byte)(16)))), ((int)(((byte)(16)))));
this.txtControlCenterPort.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
resources.ApplyResources(this.txtControlCenterPort, "txtControlCenterPort");
this.txtControlCenterPort.ForeColor = System.Drawing.Color.White;
this.txtControlCenterPort.Name = "txtControlCenterPort";
//
@ -983,5 +992,6 @@
private System.Windows.Forms.TextBox txtUphRefreshCycle;
private System.Windows.Forms.ComboBox cboxHostType;
private System.Windows.Forms.Label label11;
private System.Windows.Forms.CheckBox cboxEnableCheckStickMaterial;
}
}

@ -118,6 +118,36 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="groupBox8.Location" type="System.Drawing.Point, System.Drawing">
<value>853, 3</value>
</data>
<data name="groupBox8.Size" type="System.Drawing.Size, System.Drawing">
<value>845, 432</value>
</data>
<data name="groupBox8.Text" xml:space="preserve">
<value>Device paramter</value>
</data>
<data name="groupBox3.Size" type="System.Drawing.Size, System.Drawing">
<value>844, 433</value>
</data>
<data name="groupBox3.Text" xml:space="preserve">
<value>Camera parameter setting</value>
</data>
<data name="groupBox1.Size" type="System.Drawing.Size, System.Drawing">
<value>844, 432</value>
</data>
<data name="groupBox1.Text" xml:space="preserve">
<value>Speed</value>
</data>
<data name="groupBox4.Location" type="System.Drawing.Point, System.Drawing">
<value>853, 441</value>
</data>
<data name="groupBox4.Size" type="System.Drawing.Size, System.Drawing">
<value>845, 433</value>
</data>
<data name="tableLayoutPanel1.Size" type="System.Drawing.Size, System.Drawing">
<value>1701, 877</value>
</data>
<data name="button1.Location" type="System.Drawing.Point, System.Drawing">
<value>251, 388</value>
</data>
@ -148,15 +178,6 @@
<data name="cboxRunSpace.Location" type="System.Drawing.Point, System.Drawing">
<value>36, 206</value>
</data>
<data name="groupBox8.Location" type="System.Drawing.Point, System.Drawing">
<value>853, 3</value>
</data>
<data name="groupBox8.Size" type="System.Drawing.Size, System.Drawing">
<value>845, 432</value>
</data>
<data name="groupBox8.Text" xml:space="preserve">
<value>Device paramter</value>
</data>
<data name="label18.Location" type="System.Drawing.Point, System.Drawing">
<value>33, 217</value>
</data>
@ -181,11 +202,14 @@
<data name="label5.Text" xml:space="preserve">
<value>Machine ID:</value>
</data>
<data name="groupBox3.Size" type="System.Drawing.Size, System.Drawing">
<value>844, 433</value>
<data name="cboxEnableCheckStickMaterial.Location" type="System.Drawing.Point, System.Drawing">
<value>641, 181</value>
</data>
<data name="groupBox3.Text" xml:space="preserve">
<value>Camera parameter setting</value>
<data name="cboxEnableCheckStickMaterial.Size" type="System.Drawing.Size, System.Drawing">
<value>144, 16</value>
</data>
<data name="cboxEnableCheckStickMaterial.Text" xml:space="preserve">
<value>Check stick material</value>
</data>
<data name="cboxMsgShowEn.Location" type="System.Drawing.Point, System.Drawing">
<value>811, 293</value>
@ -256,15 +280,15 @@
<data name="label7.Text" xml:space="preserve">
<value>Fixture on:</value>
</data>
<data name="panelEx1.Size" type="System.Drawing.Size, System.Drawing">
<value>838, 66</value>
</data>
<data name="btnSaveSpeedParam.Location" type="System.Drawing.Point, System.Drawing">
<value>638, 6</value>
</data>
<data name="btnSaveSpeedParam.Text" xml:space="preserve">
<value>Save</value>
</data>
<data name="panelEx1.Size" type="System.Drawing.Size, System.Drawing">
<value>838, 66</value>
</data>
<data name="tbarFlyCameraSpeed.Location" type="System.Drawing.Point, System.Drawing">
<value>154, 71</value>
</data>
@ -454,24 +478,9 @@
<data name="label1.Text" xml:space="preserve">
<value>global speed :</value>
</data>
<data name="groupBox1.Size" type="System.Drawing.Size, System.Drawing">
<value>844, 432</value>
</data>
<data name="groupBox1.Text" xml:space="preserve">
<value>Speed</value>
</data>
<data name="dataGridView1.Size" type="System.Drawing.Size, System.Drawing">
<value>839, 413</value>
</data>
<data name="groupBox4.Location" type="System.Drawing.Point, System.Drawing">
<value>853, 441</value>
</data>
<data name="groupBox4.Size" type="System.Drawing.Size, System.Drawing">
<value>845, 433</value>
</data>
<data name="tableLayoutPanel1.Size" type="System.Drawing.Size, System.Drawing">
<value>1701, 877</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>1701, 877</value>
</data>

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