Commit dc05986e 几米阳光

添加Mark点配置

1 个父辈 0b585148
......@@ -46,6 +46,10 @@ namespace URSoldering.Common
public static string BOARD_IMAGE_DEFAULT = "BOARD_IMAGE_DEFAULT";
/// <summary>
/// 坐标偏移的Mark点
/// </summary>
public static string Soldering_MarkPoint = "Soldering_MarkPoint";
/// <summary>
/// 焊接机器人待机点
/// </summary>
public static string Soldering_HomePoint = "Soldering_HomePoint";
......
......@@ -23,6 +23,8 @@ namespace URSoldering.DeviceLibrary
public static URPointValue Clear2Point = new URPointValue();
public static URPointValue RobotMin = new URPointValue();
public static URPointValue RobotMax = new URPointValue();
public static URPointValue MarkPoint = new URPointValue();
public static double ZUpLiftValue = (double)ConfigAppSettings.GetNumValue(Setting_Init.ZUpLiftValue);
......@@ -71,6 +73,7 @@ namespace URSoldering.DeviceLibrary
HomePoint = LoadPoint(Setting_Init.Soldering_HomePoint);
RobotMin = LoadPoint(Setting_Init.Soldering_RobotMin);
RobotMax = LoadPoint(Setting_Init.Soldering_RobotMax);
MarkPoint = LoadPoint(Setting_Init.Soldering_MarkPoint);
}
private static URPointValue LoadPoint(string configStr)
......@@ -312,8 +315,7 @@ namespace URSoldering.DeviceLibrary
{
WarnMsg = "机械臂连接断开";
LogUtil.error("检测到" + WarnMsg);
Alarm(AlarmType.RobotError);
Alarm(AlarmType.RobotError);
}
}
else
......@@ -655,6 +657,12 @@ namespace URSoldering.DeviceLibrary
string str = point.ToJosonStr();
ConfigAppSettings.SaveValue(Setting_Init.Soldering_Clear2Point, str);
}
public static void UpdateMarkPoint(URPointValue point)
{
WeldRobotBean.MarkPoint = point;
string str = point.ToJosonStr();
ConfigAppSettings.SaveValue(Setting_Init.Soldering_MarkPoint,str);
}
/// <summary>
/// 验证机器人是否超出活动范围
/// </summary>
......
......@@ -265,10 +265,14 @@ namespace URSoldering.DeviceLibrary
{
return "拖焊焊点";
}
else
else if(pointType.Equals(1))
{
return "中间点";
}else if (pointType.Equals(3))
{
return "拍照点";
}
return "未知类型";
} set
{
}
......
......@@ -54,7 +54,8 @@
<add key="Soldering_HomePoint" value="{&quot;UpdateTime&quot;:&quot;2018-07-31T11:07:51.9477967+08:00&quot;,&quot;X&quot;:-116.01,&quot;Y&quot;:-386.34,&quot;Z&quot;:367.11,&quot;RX&quot;:1.2962,&quot;RY&quot;:-2.4233,&quot;RZ&quot;:0.2117}" />
<add key="Soldering_RobotMin" value="{&quot;UpdateTime&quot;:&quot;2018-07-28T14:37:09.4700739+08:00&quot;,&quot;X&quot;:0.0,&quot;Y&quot;:0.0,&quot;Z&quot;:0.0,&quot;RX&quot;:0.0,&quot;RY&quot;:0.0,&quot;RZ&quot;:0.0}" />
<add key="Soldering_RobotMax" value="{&quot;UpdateTime&quot;:&quot;2018-07-28T14:37:09.4700739+08:00&quot;,&quot;X&quot;:0.0,&quot;Y&quot;:0.0,&quot;Z&quot;:0.0,&quot;RX&quot;:0.0,&quot;RY&quot;:0.0,&quot;RZ&quot;:0.0}" />
<add key="Config_Pwd" value="123456" />
<add key="Soldering_MarkPoint" value="{&quot;UpdateTime&quot;:&quot;2018-07-28T14:37:09.4700739+08:00&quot;,&quot;X&quot;:0.0,&quot;Y&quot;:0.0,&quot;Z&quot;:0.0,&quot;RX&quot;:0.0,&quot;RY&quot;:0.0,&quot;RZ&quot;:0.0}" />
<add key="Config_Pwd" value="123456" />
</appSettings>
<log4net>
<appender name="defaultAppender" type="log4net.Appender.RollingFileAppender">
......
......@@ -160,6 +160,7 @@ namespace URSoldering.Client
npoint.Add(new WeldPointInfo(0));
npoint.Add(new WeldPointInfo(1));
npoint.Add(new WeldPointInfo(2));
npoint.Add(new WeldPointInfo(3));
this.Column_pointType.DataSource = npoint;
this.Column_pointType.ValueMember = "pointType";
this.Column_pointType.DisplayMember = "TypeValue";
......
......@@ -379,6 +379,30 @@
AeLDoohrNFdzAAAAAElFTkSuQmCC
</value>
</data>
<metadata name="dataGridViewTextBoxColumn2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dataGridViewTextBoxColumn3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dataGridViewTextBoxColumn4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dataGridViewTextBoxColumn5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dataGridViewTextBoxColumn6.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dataGridViewTextBoxColumn7.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dataGridViewTextBoxColumn8.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dataGridViewLinkColumn1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="Column_pointNum.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
......
......@@ -32,6 +32,7 @@
this.dataGridViewImageColumn1 = new System.Windows.Forms.DataGridViewImageColumn();
this.dataGridViewImageColumn2 = new System.Windows.Forms.DataGridViewImageColumn();
this.panel1 = new System.Windows.Forms.Panel();
this.btnSetMark = new System.Windows.Forms.Button();
this.lblMsg = new System.Windows.Forms.Label();
this.btnMore = new System.Windows.Forms.Button();
this.btnBack = new System.Windows.Forms.Button();
......@@ -39,7 +40,6 @@
this.btnSetClear1 = new System.Windows.Forms.Button();
this.groupBox2 = new System.Windows.Forms.GroupBox();
this.urRobotSControl1 = new UserFromControl.URRobotSControl();
this.btnSetOrigin = new System.Windows.Forms.Button();
this.btnSaveHome = new System.Windows.Forms.Button();
this.btnSStop = new System.Windows.Forms.Button();
this.btnWStop = new System.Windows.Forms.Button();
......@@ -67,13 +67,13 @@
// panel1
//
this.panel1.AutoScroll = true;
this.panel1.Controls.Add(this.btnSetMark);
this.panel1.Controls.Add(this.lblMsg);
this.panel1.Controls.Add(this.btnMore);
this.panel1.Controls.Add(this.btnBack);
this.panel1.Controls.Add(this.btnSetClear2);
this.panel1.Controls.Add(this.btnSetClear1);
this.panel1.Controls.Add(this.groupBox2);
this.panel1.Controls.Add(this.btnSetOrigin);
this.panel1.Controls.Add(this.btnSaveHome);
this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel1.Location = new System.Drawing.Point(0, 0);
......@@ -81,6 +81,17 @@
this.panel1.Size = new System.Drawing.Size(545, 347);
this.panel1.TabIndex = 0;
//
// btnSetMark
//
this.btnSetMark.FlatAppearance.BorderSize = 0;
this.btnSetMark.Location = new System.Drawing.Point(359, 194);
this.btnSetMark.Name = "btnSetMark";
this.btnSetMark.Size = new System.Drawing.Size(159, 38);
this.btnSetMark.TabIndex = 263;
this.btnSetMark.Text = "重置为Mark点";
this.btnSetMark.UseVisualStyleBackColor = true;
this.btnSetMark.Click += new System.EventHandler(this.btnSetMark_Click);
//
// lblMsg
//
this.lblMsg.AutoSize = true;
......@@ -115,7 +126,7 @@
// btnSetClear2
//
this.btnSetClear2.FlatAppearance.BorderSize = 0;
this.btnSetClear2.Location = new System.Drawing.Point(359, 188);
this.btnSetClear2.Location = new System.Drawing.Point(359, 147);
this.btnSetClear2.Name = "btnSetClear2";
this.btnSetClear2.Size = new System.Drawing.Size(159, 38);
this.btnSetClear2.TabIndex = 38;
......@@ -126,7 +137,7 @@
// btnSetClear1
//
this.btnSetClear1.FlatAppearance.BorderSize = 0;
this.btnSetClear1.Location = new System.Drawing.Point(359, 126);
this.btnSetClear1.Location = new System.Drawing.Point(359, 100);
this.btnSetClear1.Name = "btnSetClear1";
this.btnSetClear1.Size = new System.Drawing.Size(159, 38);
this.btnSetClear1.TabIndex = 37;
......@@ -155,22 +166,10 @@
this.urRobotSControl1.Size = new System.Drawing.Size(271, 157);
this.urRobotSControl1.TabIndex = 0;
//
// btnSetOrigin
//
this.btnSetOrigin.FlatAppearance.BorderSize = 0;
this.btnSetOrigin.Location = new System.Drawing.Point(359, 9);
this.btnSetOrigin.Name = "btnSetOrigin";
this.btnSetOrigin.Size = new System.Drawing.Size(159, 38);
this.btnSetOrigin.TabIndex = 32;
this.btnSetOrigin.Text = "重置为电路板固定点";
this.btnSetOrigin.UseVisualStyleBackColor = true;
this.btnSetOrigin.Visible = false;
this.btnSetOrigin.Click += new System.EventHandler(this.btnSetOrigin_Click);
//
// btnSaveHome
//
this.btnSaveHome.FlatAppearance.BorderSize = 0;
this.btnSaveHome.Location = new System.Drawing.Point(359, 66);
this.btnSaveHome.Location = new System.Drawing.Point(359, 53);
this.btnSaveHome.Name = "btnSaveHome";
this.btnSaveHome.Size = new System.Drawing.Size(159, 38);
this.btnSaveHome.TabIndex = 36;
......@@ -237,7 +236,6 @@
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.Button btnWStop;
private System.Windows.Forms.Button btnSStop;
private System.Windows.Forms.Button btnSetOrigin;
private System.Windows.Forms.Label label14;
private System.Windows.Forms.Button btnSaveHome;
......@@ -250,5 +248,6 @@
private System.Windows.Forms.Button btnMore;
private UserFromControl.URRobotSControl urRobotSControl1;
private System.Windows.Forms.Label lblMsg;
private System.Windows.Forms.Button btnSetMark;
}
}
\ No newline at end of file
......@@ -147,5 +147,16 @@ namespace URSoldering.Client
frmOrgConfig.ShowDialog();
this.Visible = true;
}
private void btnSetMark_Click(object sender, EventArgs e)
{
URPointValue point = GetCurrRobotPoint();
DialogResult result = ShowConfire(point, "坐标偏移Mark点");
if (result.Equals(DialogResult.Yes))
{
WeldRobotBean.UpdateMarkPoint(point);
MessageBox.Show("保存清洗点2成功!");
}
}
}
}
......@@ -182,7 +182,8 @@
this.cmbPointType.Items.AddRange(new object[] {
"普通焊点",
"中间点",
"拖焊焊点"});
"拖焊焊点",
"拍照点"});
this.cmbPointType.Location = new System.Drawing.Point(92, 65);
this.cmbPointType.Name = "cmbPointType";
this.cmbPointType.Size = new System.Drawing.Size(103, 25);
......
......@@ -309,6 +309,11 @@ namespace URSoldering.Client
lblMsg.Text = "拖焊焊点,机械臂不抬起直接移动至焊点";
gbIron.Enabled = true;
gbWireFeeding.Enabled = true;
}else if (cmbPointType.SelectedIndex.Equals(3))
{
lblMsg.Text = "拍照点,用于坐标检测偏移";
gbIron.Enabled = false;
gbWireFeeding.Enabled = false;
}
}
}
......
......@@ -49,21 +49,24 @@
this.groupBox5 = new System.Windows.Forms.GroupBox();
this.maxControl = new UserFromControl.URRobotMControl();
this.minControl = new UserFromControl.URRobotMControl();
this.groupBox6 = new System.Windows.Forms.GroupBox();
this.markControl = new UserFromControl.URRobotMControl();
this.groupBox3.SuspendLayout();
this.groupBox2.SuspendLayout();
this.groupBox4.SuspendLayout();
this.groupBox1.SuspendLayout();
this.gbEpsonSetting.SuspendLayout();
this.groupBox5.SuspendLayout();
this.groupBox6.SuspendLayout();
this.SuspendLayout();
//
// groupBox3
//
this.groupBox3.Controls.Add(this.clear2Control);
this.groupBox3.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.groupBox3.Location = new System.Drawing.Point(499, 12);
this.groupBox3.Location = new System.Drawing.Point(447, 12);
this.groupBox3.Name = "groupBox3";
this.groupBox3.Size = new System.Drawing.Size(217, 265);
this.groupBox3.Size = new System.Drawing.Size(197, 265);
this.groupBox3.TabIndex = 40;
this.groupBox3.TabStop = false;
this.groupBox3.Text = "焊接清洗点2配置";
......@@ -80,9 +83,9 @@
//
this.groupBox2.Controls.Add(this.clear1Control);
this.groupBox2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.groupBox2.Location = new System.Drawing.Point(260, 12);
this.groupBox2.Location = new System.Drawing.Point(234, 12);
this.groupBox2.Name = "groupBox2";
this.groupBox2.Size = new System.Drawing.Size(217, 265);
this.groupBox2.Size = new System.Drawing.Size(197, 265);
this.groupBox2.TabIndex = 12;
this.groupBox2.TabStop = false;
this.groupBox2.Text = "焊接清洗点1配置";
......@@ -169,7 +172,7 @@
this.groupBox1.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.groupBox1.Location = new System.Drawing.Point(21, 12);
this.groupBox1.Name = "groupBox1";
this.groupBox1.Size = new System.Drawing.Size(217, 265);
this.groupBox1.Size = new System.Drawing.Size(197, 265);
this.groupBox1.TabIndex = 8;
this.groupBox1.TabStop = false;
this.groupBox1.Text = "机器人待机点配置";
......@@ -260,11 +263,31 @@
this.minControl.Size = new System.Drawing.Size(168, 226);
this.minControl.TabIndex = 2;
//
// groupBox6
//
this.groupBox6.Controls.Add(this.markControl);
this.groupBox6.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.groupBox6.Location = new System.Drawing.Point(660, 12);
this.groupBox6.Name = "groupBox6";
this.groupBox6.Size = new System.Drawing.Size(197, 265);
this.groupBox6.TabIndex = 43;
this.groupBox6.TabStop = false;
this.groupBox6.Text = "坐标偏移Mark点配置";
//
// markControl
//
this.markControl.Location = new System.Drawing.Point(24, 20);
this.markControl.Margin = new System.Windows.Forms.Padding(3, 6, 3, 6);
this.markControl.Name = "markControl";
this.markControl.Size = new System.Drawing.Size(168, 236);
this.markControl.TabIndex = 2;
//
// FrmSetting
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 17F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(750, 555);
this.ClientSize = new System.Drawing.Size(871, 555);
this.Controls.Add(this.groupBox6);
this.Controls.Add(this.groupBox5);
this.Controls.Add(this.groupBox3);
this.Controls.Add(this.groupBox2);
......@@ -284,6 +307,7 @@
this.gbEpsonSetting.ResumeLayout(false);
this.gbEpsonSetting.PerformLayout();
this.groupBox5.ResumeLayout(false);
this.groupBox6.ResumeLayout(false);
this.ResumeLayout(false);
}
......@@ -310,5 +334,7 @@
private UserFromControl.URRobotMControl homeControl;
private UserFromControl.URRobotMControl maxControl;
private UserFromControl.URRobotMControl minControl;
private System.Windows.Forms.GroupBox groupBox6;
private UserFromControl.URRobotMControl markControl;
}
}
\ No newline at end of file
......@@ -37,6 +37,7 @@ namespace URSoldering.Client
clear2Control.ShowPoint(WeldRobotBean.Clear2Point);
clear1Control.ShowPoint(WeldRobotBean.Clear1Point);
homeControl.ShowPoint(WeldRobotBean.HomePoint);
markControl.ShowPoint(WeldRobotBean.MarkPoint);
}
private void saveValue()
......@@ -147,6 +148,10 @@ namespace URSoldering.Client
WeldRobotBean.RobotMax = maxP;
ConfigAppSettings.SaveValue(Setting_Init.Soldering_RobotMin, minP.ToJosonStr());
ConfigAppSettings.SaveValue(Setting_Init.Soldering_RobotMax, maxP.ToJosonStr());
URPointValue markPoint = markControl.GetPoint();
WeldRobotBean.MarkPoint = markPoint;
ConfigAppSettings.SaveValue(Setting_Init.Soldering_MarkPoint, markPoint.ToJosonStr());
MessageBox.Show("保存成功,需要重启之后才能生效!");
this.Close();
......
......@@ -33,3 +33,18 @@ UR机器人是否到位判断条件修改:只判断X.Y.Z坐标是否一致
AOI检测NG时,红灯亮,等到下次开始焊接时清理红灯。
机器人移动movep改为movel
20181022
需要修改内容:
坐标偏移功能
1.增加一个整体的mark点,保存机械臂坐标
2.每个电路板需要配置拍照点
3.流程修改:焊接之前,先去拍照点,拍照识别,取出坐标后进行整体坐标偏移,然后再焊接。
图片上自动编程功能:
图片上要显示四个点:ABCD
需要配置AC点或者BD点作为固定点
点击图片,直接增加焊点,可以自动算出XY坐标
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!