Commit 10134e90 LN

1

1 个父辈 13d9695b
......@@ -88,12 +88,6 @@
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="agvtest\FrmAgvTest.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="agvtest\FrmAgvTest.Designer.cs">
<DependentUpon>FrmAgvTest.cs</DependentUpon>
</Compile>
<Compile Include="FrmHYEquip.cs">
<SubType>Form</SubType>
</Compile>
......@@ -175,9 +169,6 @@
<Compile Include="useControl\EquipControl.Designer.cs">
<DependentUpon>EquipControl.cs</DependentUpon>
</Compile>
<EmbeddedResource Include="agvtest\FrmAgvTest.resx">
<DependentUpon>FrmAgvTest.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmHYEquip.resx">
<DependentUpon>FrmHYEquip.cs</DependentUpon>
</EmbeddedResource>
......@@ -304,6 +295,7 @@
<Install>false</Install>
</BootstrapperPackage>
</ItemGroup>
<ItemGroup />
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
......
......@@ -126,7 +126,7 @@
this.panBase.Controls.Add(this.chbMoveStop);
this.panBase.Controls.Add(this.chbBoxSendShelf);
this.panBase.Controls.Add(this.btnScan);
this.panBase.Size = new System.Drawing.Size(1273, 50);
this.panBase.Size = new System.Drawing.Size(1226, 50);
this.panBase.Controls.SetChildIndex(this.btnStop, 0);
this.panBase.Controls.SetChildIndex(this.btnInStore, 0);
this.panBase.Controls.SetChildIndex(this.btnStart, 0);
......@@ -141,7 +141,7 @@
//
// btnExit
//
this.btnExit.Location = new System.Drawing.Point(1158, 4);
this.btnExit.Location = new System.Drawing.Point(1111, 4);
this.btnExit.Click += new System.EventHandler(this.btnClose_Click);
//
// chbDebug
......@@ -187,9 +187,9 @@
this.groupBox1.Controls.Add(this.txtWriteTime);
this.groupBox1.Controls.Add(this.label5);
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(685, 404);
this.groupBox1.Location = new System.Drawing.Point(685, 410);
this.groupBox1.Name = "groupBox1";
this.groupBox1.Size = new System.Drawing.Size(568, 107);
this.groupBox1.Size = new System.Drawing.Size(521, 107);
this.groupBox1.TabIndex = 105;
this.groupBox1.TabStop = false;
this.groupBox1.Text = "DO写入";
......@@ -335,7 +335,7 @@
this.groupBox4.Controls.Add(this.tableLayoutPanel2);
this.groupBox4.Location = new System.Drawing.Point(457, 1);
this.groupBox4.Name = "groupBox4";
this.groupBox4.Size = new System.Drawing.Size(220, 517);
this.groupBox4.Size = new System.Drawing.Size(220, 604);
this.groupBox4.TabIndex = 104;
this.groupBox4.TabStop = false;
this.groupBox4.Text = "DO列表";
......@@ -353,7 +353,7 @@
this.tableLayoutPanel2.RowCount = 2;
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 17F));
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 17F));
this.tableLayoutPanel2.Size = new System.Drawing.Size(209, 497);
this.tableLayoutPanel2.Size = new System.Drawing.Size(209, 584);
this.tableLayoutPanel2.TabIndex = 103;
//
// groupBox3
......@@ -363,7 +363,7 @@
this.groupBox3.Controls.Add(this.tableLayoutPanel1);
this.groupBox3.Location = new System.Drawing.Point(6, 1);
this.groupBox3.Name = "groupBox3";
this.groupBox3.Size = new System.Drawing.Size(220, 517);
this.groupBox3.Size = new System.Drawing.Size(220, 604);
this.groupBox3.TabIndex = 103;
this.groupBox3.TabStop = false;
this.groupBox3.Text = "DI列表";
......@@ -381,7 +381,7 @@
this.tableLayoutPanel1.RowCount = 2;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 17F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 17F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(209, 497);
this.tableLayoutPanel1.Size = new System.Drawing.Size(209, 584);
this.tableLayoutPanel1.TabIndex = 102;
//
// groupDO
......@@ -414,7 +414,7 @@
this.groupDO.Controls.Add(this.SL_ClampCylinder_Relax);
this.groupDO.Location = new System.Drawing.Point(685, 4);
this.groupDO.Name = "groupDO";
this.groupDO.Size = new System.Drawing.Size(568, 398);
this.groupDO.Size = new System.Drawing.Size(521, 402);
this.groupDO.TabIndex = 255;
this.groupDO.TabStop = false;
this.groupDO.Text = "IO操作测试";
......@@ -714,7 +714,7 @@
this.lblThisSta.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblThisSta.Location = new System.Drawing.Point(406, 14);
this.lblThisSta.Name = "lblThisSta";
this.lblThisSta.Size = new System.Drawing.Size(844, 330);
this.lblThisSta.Size = new System.Drawing.Size(756, 330);
this.lblThisSta.TabIndex = 246;
this.lblThisSta.Text = "等待启动";
this.lblThisSta.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
......@@ -730,7 +730,7 @@
this.tabControl1.Location = new System.Drawing.Point(5, 60);
this.tabControl1.Name = "tabControl1";
this.tabControl1.SelectedIndex = 0;
this.tabControl1.Size = new System.Drawing.Size(1270, 573);
this.tabControl1.Size = new System.Drawing.Size(1223, 645);
this.tabControl1.TabIndex = 257;
//
// tabPage3
......@@ -738,7 +738,7 @@
this.tabPage3.Controls.Add(this.groupBox6);
this.tabPage3.Location = new System.Drawing.Point(4, 26);
this.tabPage3.Name = "tabPage3";
this.tabPage3.Size = new System.Drawing.Size(1262, 543);
this.tabPage3.Size = new System.Drawing.Size(1215, 615);
this.tabPage3.TabIndex = 2;
this.tabPage3.Text = "状态信息";
this.tabPage3.UseVisualStyleBackColor = true;
......@@ -757,7 +757,7 @@
this.groupBox6.Controls.Add(this.lblThisSta);
this.groupBox6.Location = new System.Drawing.Point(3, 3);
this.groupBox6.Name = "groupBox6";
this.groupBox6.Size = new System.Drawing.Size(1256, 575);
this.groupBox6.Size = new System.Drawing.Size(1209, 609);
this.groupBox6.TabIndex = 278;
this.groupBox6.TabStop = false;
this.groupBox6.Text = "消息";
......@@ -826,7 +826,7 @@
this.lblInstoreList.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblInstoreList.Location = new System.Drawing.Point(406, 258);
this.lblInstoreList.Name = "lblInstoreList";
this.lblInstoreList.Size = new System.Drawing.Size(683, 109);
this.lblInstoreList.Size = new System.Drawing.Size(636, 109);
this.lblInstoreList.TabIndex = 277;
//
// tabPage1
......@@ -840,7 +840,7 @@
this.tabPage1.Location = new System.Drawing.Point(4, 26);
this.tabPage1.Name = "tabPage1";
this.tabPage1.Padding = new System.Windows.Forms.Padding(3);
this.tabPage1.Size = new System.Drawing.Size(1262, 536);
this.tabPage1.Size = new System.Drawing.Size(1215, 615);
this.tabPage1.TabIndex = 0;
this.tabPage1.Text = " IO列表 ";
this.tabPage1.UseVisualStyleBackColor = true;
......@@ -852,7 +852,7 @@
this.groupBox7.Controls.Add(this.tableLayoutPanel3);
this.groupBox7.Location = new System.Drawing.Point(232, 1);
this.groupBox7.Name = "groupBox7";
this.groupBox7.Size = new System.Drawing.Size(220, 517);
this.groupBox7.Size = new System.Drawing.Size(220, 604);
this.groupBox7.TabIndex = 279;
this.groupBox7.TabStop = false;
this.groupBox7.Text = "DI列表";
......@@ -870,7 +870,7 @@
this.tableLayoutPanel3.RowCount = 2;
this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 17F));
this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 17F));
this.tableLayoutPanel3.Size = new System.Drawing.Size(209, 497);
this.tableLayoutPanel3.Size = new System.Drawing.Size(209, 584);
this.tableLayoutPanel3.TabIndex = 102;
//
// groupBox8
......@@ -880,7 +880,7 @@
this.groupBox8.Controls.Add(this.tableLayoutPanel4);
this.groupBox8.Location = new System.Drawing.Point(685, 51);
this.groupBox8.Name = "groupBox8";
this.groupBox8.Size = new System.Drawing.Size(240, 365);
this.groupBox8.Size = new System.Drawing.Size(240, 437);
this.groupBox8.TabIndex = 280;
this.groupBox8.TabStop = false;
this.groupBox8.Text = "DO列表";
......@@ -898,7 +898,7 @@
this.tableLayoutPanel4.RowCount = 2;
this.tableLayoutPanel4.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 17F));
this.tableLayoutPanel4.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 17F));
this.tableLayoutPanel4.Size = new System.Drawing.Size(229, 345);
this.tableLayoutPanel4.Size = new System.Drawing.Size(229, 417);
this.tableLayoutPanel4.TabIndex = 103;
//
// tabPage2
......@@ -910,7 +910,7 @@
this.tabPage2.Location = new System.Drawing.Point(4, 26);
this.tabPage2.Name = "tabPage2";
this.tabPage2.Padding = new System.Windows.Forms.Padding(3);
this.tabPage2.Size = new System.Drawing.Size(1262, 536);
this.tabPage2.Size = new System.Drawing.Size(1215, 615);
this.tabPage2.TabIndex = 1;
this.tabPage2.Text = " 伺服信息 ";
this.tabPage2.UseVisualStyleBackColor = true;
......@@ -1338,7 +1338,7 @@
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 17F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(1281, 639);
this.ClientSize = new System.Drawing.Size(1234, 711);
this.Controls.Add(this.tabControl1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
......
......@@ -259,8 +259,7 @@ namespace OnlineStore.AssemblyLine
else
{
SL_RollerLine_Run.Visible = false;
}
}
LoadDP2();
LoadDOBtn(groupDO);
txtBp1.Text = equipBean.Config.BatchAxisP1.ToString();
......@@ -269,6 +268,7 @@ namespace OnlineStore.AssemblyLine
lblName.Text = equipBean.Name;
this.Text = equipBean.Name;
chbBoxSendShelf.Visible = equipBean.Config.IsCanOut.Equals(1);
btnScan.Visible = equipBean.Config.IsCanOut.Equals(0);
chbBoxSendShelf.Checked = equipBean.OutEndSendShelfOut;
IsLoad = true;
}
......@@ -385,7 +385,7 @@ namespace OnlineStore.AssemblyLine
private void btnFeedSideWayCylinder_Click(object sender, EventArgs e)
{
if (equipBean.UpdownIsUp())
if (equipBean.UpdownIsInP1())
{
equipBean.CylinderMove(null, IO_Type.SL_MoveCylinder_Give, IO_Type.SL_MoveCylinder_Take);
}
......@@ -745,7 +745,7 @@ namespace OnlineStore.AssemblyLine
private void SL_MoveCylinder_Give_Click(object sender, EventArgs e)
{
if (equipBean.UpdownIsUp())
if (equipBean.UpdownIsInP1())
{
equipBean.CylinderMove(null, IO_Type.SL_MoveCylinder_Take, IO_Type.SL_MoveCylinder_Give);
}
......
......@@ -208,9 +208,9 @@
this.groupBox1.Controls.Add(this.btnInStoreTset);
this.groupBox1.Controls.Add(this.button2);
this.groupBox1.Controls.Add(this.button1);
this.groupBox1.Location = new System.Drawing.Point(49, 233);
this.groupBox1.Location = new System.Drawing.Point(10, 61);
this.groupBox1.Name = "groupBox1";
this.groupBox1.Size = new System.Drawing.Size(872, 61);
this.groupBox1.Size = new System.Drawing.Size(1078, 69);
this.groupBox1.TabIndex = 195;
this.groupBox1.TabStop = false;
this.groupBox1.Text = "料仓通信测试";
......@@ -219,7 +219,7 @@
// lblPosId
//
this.lblPosId.AutoSize = true;
this.lblPosId.Location = new System.Drawing.Point(366, 24);
this.lblPosId.Location = new System.Drawing.Point(366, 28);
this.lblPosId.Name = "lblPosId";
this.lblPosId.Size = new System.Drawing.Size(40, 20);
this.lblPosId.TabIndex = 197;
......@@ -227,10 +227,10 @@
//
// btnUpdateStatus
//
this.btnUpdateStatus.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btnUpdateStatus.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.btnUpdateStatus.BackColor = System.Drawing.Color.White;
this.btnUpdateStatus.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnUpdateStatus.Location = new System.Drawing.Point(641, 17);
this.btnUpdateStatus.Location = new System.Drawing.Point(830, 21);
this.btnUpdateStatus.Name = "btnUpdateStatus";
this.btnUpdateStatus.Size = new System.Drawing.Size(222, 35);
this.btnUpdateStatus.TabIndex = 195;
......@@ -239,7 +239,7 @@
//
// txtPosId
//
this.txtPosId.Location = new System.Drawing.Point(426, 21);
this.txtPosId.Location = new System.Drawing.Point(426, 25);
this.txtPosId.Name = "txtPosId";
this.txtPosId.Size = new System.Drawing.Size(80, 26);
this.txtPosId.TabIndex = 196;
......@@ -248,7 +248,7 @@
//
this.cmbBoxIndex.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbBoxIndex.FormattingEnabled = true;
this.cmbBoxIndex.Location = new System.Drawing.Point(272, 20);
this.cmbBoxIndex.Location = new System.Drawing.Point(272, 24);
this.cmbBoxIndex.Name = "cmbBoxIndex";
this.cmbBoxIndex.Size = new System.Drawing.Size(85, 28);
this.cmbBoxIndex.TabIndex = 195;
......@@ -257,7 +257,7 @@
//
this.btnInStoreTset.BackColor = System.Drawing.Color.White;
this.btnInStoreTset.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnInStoreTset.Location = new System.Drawing.Point(515, 17);
this.btnInStoreTset.Location = new System.Drawing.Point(515, 21);
this.btnInStoreTset.Name = "btnInStoreTset";
this.btnInStoreTset.Size = new System.Drawing.Size(105, 35);
this.btnInStoreTset.TabIndex = 194;
......@@ -269,7 +269,7 @@
//
this.button2.BackColor = System.Drawing.Color.White;
this.button2.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.button2.Location = new System.Drawing.Point(118, 17);
this.button2.Location = new System.Drawing.Point(122, 21);
this.button2.Name = "button2";
this.button2.Size = new System.Drawing.Size(105, 35);
this.button2.TabIndex = 193;
......@@ -281,7 +281,7 @@
//
this.button1.BackColor = System.Drawing.Color.White;
this.button1.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.button1.Location = new System.Drawing.Point(11, 17);
this.button1.Location = new System.Drawing.Point(11, 21);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(105, 35);
this.button1.TabIndex = 192;
......@@ -590,9 +590,9 @@
this.lblWarnMsg.AutoEllipsis = true;
this.lblWarnMsg.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblWarnMsg.ForeColor = System.Drawing.Color.Red;
this.lblWarnMsg.Location = new System.Drawing.Point(378, 3);
this.lblWarnMsg.Location = new System.Drawing.Point(348, 3);
this.lblWarnMsg.Name = "lblWarnMsg";
this.lblWarnMsg.Size = new System.Drawing.Size(958, 75);
this.lblWarnMsg.Size = new System.Drawing.Size(996, 77);
this.lblWarnMsg.TabIndex = 96;
this.lblWarnMsg.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
......@@ -756,12 +756,14 @@
//
this.toolStripSeparator9.Name = "toolStripSeparator9";
this.toolStripSeparator9.Size = new System.Drawing.Size(173, 6);
this.toolStripSeparator9.Visible = false;
//
// toolStripMenuItem2
//
this.toolStripMenuItem2.Name = "toolStripMenuItem2";
this.toolStripMenuItem2.Size = new System.Drawing.Size(176, 26);
this.toolStripMenuItem2.Text = "AGV调试";
this.toolStripMenuItem2.Visible = false;
this.toolStripMenuItem2.Click += new System.EventHandler(this.toolStripMenuItem2_Click);
//
// toolStripSeparator13
......
......@@ -33,6 +33,29 @@ namespace OnlineStore.AssemblyLine
startTimer.Enabled = false;
startTimer.AutoReset = false;
}
private void FrmMain_Load(object sender, EventArgs e)
{
this.Opacity = 0;
this.Cursor = Cursors.WaitCursor;
FrmBase.GetVersion(true);
if (!LineManager.Init())
{
LogUtil.error("加载配置失败,直接退出程序");
Application.Exit();
return;
}
TrayManager.InitFileData();
LoadStoreData();
picLine.Image = ManagerUtil.M_Line;
this.Opacity = 100;
this.Visible = true;
this.WindowState = FormWindowState.Maximized;
this.notifyIcon1.Visible = false;
this.ShowInTaskbar = true;
this.Cursor = Cursors.Default;
//tabControl1.TabPages.Remove(tabPage5);
timer1.Start();
}
private void LoadStoreData()
{
......@@ -49,8 +72,8 @@ namespace OnlineStore.AssemblyLine
return;
}
//FrmIOTest ioStatus = new FrmIOTest();
//AddForm(" IO列表查看 ", ioStatus);
FrmIOTest ioStatus = new FrmIOTest();
AddForm(" IO列表查看 ", ioStatus);
FrmLineIO frmIOStatus = new FrmLineIO();
AddForm(" 流水线IO ", frmIOStatus);
......@@ -82,6 +105,15 @@ namespace OnlineStore.AssemblyLine
{
自动保存托盘信息ToolStripMenuItem.Text = gouStr + "自动保存托盘信息";
}
cmbBoxIndex.Items.Clear();
foreach (int key in lineBean.MoveEquipMap.Keys)
{
cmbBoxIndex.Items.Add("BOX-" + key);
}
if (cmbBoxIndex.Items.Count > 0)
{
cmbBoxIndex.SelectedIndex = 0;
}
LogUtil.logBox = this.logBox;
lastLogTime = DateTime.Now.AddMinutes(-10);
this.Opacity = 100;
......@@ -107,30 +139,7 @@ namespace OnlineStore.AssemblyLine
tabPageList.Add(lineTabPage);
tabControl1.Controls.Add(lineTabPage);
}
private void FrmMain_Load(object sender, EventArgs e)
{
this.Opacity = 0;
this.Cursor = Cursors.WaitCursor;
FrmBase.GetVersion(true);
if (!LineManager.Init())
{
LogUtil.error("加载配置失败,直接退出程序");
Application.Exit();
return;
}
TrayManager.InitFileData();
LoadStoreData();
picLine.Image = ManagerUtil.M_Line;
this.Opacity = 100;
this.Visible = true;
this.WindowState = FormWindowState.Maximized;
this.notifyIcon1.Visible = false;
this.ShowInTaskbar = true;
this.Cursor = Cursors.Default ;
//tabControl1.TabPages.Remove(tabPage5);
timer1.Start();
}
private void HideForm()
{
this.Opacity = 0;
......@@ -459,11 +468,7 @@ namespace OnlineStore.AssemblyLine
SetMenuS(启动AToolStripMenuItem, true);
SetMenuS(复位RToolStripMenuItem, false);
SetMenuS(停止TToolStripMenuItem, false);
}
//if (listView1.Visible)
//{
// UpdateListView();
//}
}
}
private void SetMenuS(ToolStripMenuItem toolMenu, bool isEn)
{
......@@ -552,12 +557,7 @@ namespace OnlineStore.AssemblyLine
LineServer.StartInStore(index, new InOutParam(0, "", posId, 0, 0));
}
}
private void 托盘初始化ToolStripMenuItem_Click(object sender, EventArgs e)
{
FrmRFIPEdit FRM = new FrmRFIPEdit();
......@@ -661,8 +661,8 @@ namespace OnlineStore.AssemblyLine
private void toolStripMenuItem2_Click(object sender, EventArgs e)
{
FrmAgvTest frm = new FrmAgvTest();
frm.ShowDialog();
//FrmAgvTest frm = new FrmAgvTest();
//frm.ShowDialog();
}
private string gouStr = "✔";
......@@ -1054,232 +1054,7 @@ namespace OnlineStore.AssemblyLine
}
#endregion
#region ListView显示
//private void btnUpdateStatus_Click(object sender, EventArgs e)
//{
// if (listView1.SelectedItems != null && listView1.SelectedItems.Count > 0)
// {
// int index = listView1.SelectedItems[0].Index;
// string name = "BOX-" + (index + 1);
// BoxInfo boxInfo = LineServer.GetBoxInfo(index + 1);
// if (boxInfo != null && boxInfo.SRunStatus >= 1)
// {
// if (boxInfo.SStatus.Equals((int)LineStatus.Debugging))
// {
// LogUtil.info("点击【 更改[" + name + "]为工作状态 】");
// LineServer.UpdateBoxDebug(boxInfo.ID, 0);
// }
// else
// {
// LogUtil.info("点击【 更改[" + name + "]为调试状态 】");
// LineServer.UpdateBoxDebug(boxInfo.ID, 1);
// }
// btnUpdateStatus.Visible = false;
// }
// }
//}
//private void listView1_SelectedIndexChanged(object sender, EventArgs e)
//{
// btnUpdateStatus.Visible = false;
// if (listView1.SelectedItems != null && listView1.SelectedItems.Count > 0)
// {
// int index = listView1.SelectedItems[0].Index;
// string name = listView1.Items[index].SubItems[0].Text;
// name = "BOX-" + (index + 1);
// BoxInfo boxInfo = LineServer.GetBoxInfo(index + 1);
// if (boxInfo != null && boxInfo.SRunStatus >= 1)
// {
// if (boxInfo.SStatus.Equals((int)LineStatus.Debugging))
// {
// btnUpdateStatus.Text = "更改[" + name + "]为工作状态";
// }
// else
// {
// btnUpdateStatus.Text = "更改[" + name + "]为调试状态";
// }
// btnUpdateStatus.Visible = true;
// }
// }
//}
//private void LoadListView()
//{
// this.listView1.Columns.Clear();
// AddHealder("设备名称", 110);
// AddHealder("启用", 40);
// AddHealder("报警", 110);
// AddHealder("状态", 110);
// AddHealder("BOX_CID", 80);
// AddHealder("在线", 40);
// AddHealder("BOX_报警", 110);
// AddHealder("BOX状态", 110);
// //AddHealder("BOX状态", listView1.Size.Width - 100 - 80 - 80 - 100 - 100 - 100 -40- 8);
// foreach (MoveEquip move in lineBean.MoveEquipMap.Values)
// {
// ListViewItem lvi = new ListViewItem();
// lvi.Text = move.Name;
// lvi.SubItems.Add(move.Config.IsDebug.Equals(1) ? "✘" : "✔");
// lvi.SubItems.Add(move.alarmType.ToString());
// // lvi.SubItems.Add(move.lineStatus.ToString());
// lvi.SubItems.Add(move.GetRunStr());
// BoxInfo box = LineServer.GetBoxInfo(move.DeviceID);
// if (box != null)
// {
// string online = "✘";
// lvi.SubItems.Add(box.CId.ToString());
// if ((DateTime.Now - box.LastMsgTime).TotalSeconds < LineServer.ClientKeepSecond)
// {
// online = "✔";
// }
// lvi.SubItems.Add(online);
// lvi.SubItems.Add(box.SAlarmType.ToString());
// lvi.SubItems.Add(box.ToShowStr());
// }
// else
// {
// lvi.SubItems.Add("");
// lvi.SubItems.Add("");
// lvi.SubItems.Add("");
// lvi.SubItems.Add("");
// }
// this.listView1.Items.Add(lvi);
// }
// ListViewItem emptyView = new ListViewItem();
// this.listView1.Items.Add(emptyView);
// foreach (FeedingEquip equip in lineBean.FeedingEquipMap.Values)
// {
// ListViewItem lvi = new ListViewItem();
// lvi.Text = equip.Name;
// lvi.SubItems.Add(equip.Config.IsDebug.Equals(1) ? "✘" : "✔");
// lvi.SubItems.Add(equip.alarmType.ToString());
// lvi.SubItems.Add(equip.GetRunStr());
// this.listView1.Items.Add(lvi);
// }
// this.listView1.Items.Add((ListViewItem)emptyView.Clone());
// foreach (HYEquipBase equip in lineBean.HYEquipMap.Values)
// {
// ListViewItem lvi = new ListViewItem();
// lvi.Text = equip.Name;
// lvi.SubItems.Add(equip.IsDebug.Equals(1) ? "✘" : "✔");
// lvi.SubItems.Add(equip.alarmType.ToString());
// lvi.SubItems.Add(equip.GetRunStr());
// this.listView1.Items.Add(lvi);
// }
// this.listView1.Items.Add((ListViewItem)emptyView.Clone());
// cmbBoxIndex.Items.Clear();
// foreach (int key in lineBean.MoveEquipMap.Keys)
// {
// cmbBoxIndex.Items.Add("BOX-" + key);
// }
// if (cmbBoxIndex.Items.Count > 0)
// {
// cmbBoxIndex.SelectedIndex = 0;
// }
//}
//private void AddHealder(string name, int widht)
//{
// ColumnHeader preSendwire = new ColumnHeader();
// preSendwire.Text = name; //设置列标题
// preSendwire.Width = widht; //设置列宽度
// preSendwire.TextAlign = HorizontalAlignment.Left; //设置列的对齐方式
// this.listView1.Columns.Add(preSendwire); //将列头添加到ListView控件。
//}
//private void UpdateListView()
//{
// if (listView1.Visible)
// {
// int i = 0;
// int item_debug_index = 1;
// int item_alarm_index = 2;
// int item_runStr_index = 3;
// int item_cid_index = 4;
// int item_SAlarmType_index = 6;
// int item_LastMsgTime_index = 5;
// int item_BoxStr_index = 7;
// foreach (MoveEquip move in lineBean.MoveEquipMap.Values)
// {
// ListViewItem lvi = new ListViewItem();
// lvi.Text = move.Name;
// SetItemText(i, item_debug_index, move.Config.IsDebug.Equals(1) ? "✘" : "✔");
// SetItemText(i, item_alarm_index, move.alarmType.ToString());
// SetItemText(i, item_runStr_index, move.GetRunStr());
// BoxInfo box = LineServer.GetBoxInfo(move.DeviceID);
// if (box != null)
// {
// SetItemText(i, item_cid_index, box.CId.ToString());
// string online = "✘";
// if ((DateTime.Now - box.LastMsgTime).TotalSeconds < LineServer.ClientKeepSecond)
// {
// online = "✔";
// }
// SetItemText(i, item_LastMsgTime_index, online);
// SetItemText(i, item_SAlarmType_index, box.SAlarmType.ToString());
// SetItemText(i, item_BoxStr_index, box.ToShowStr());
// }
// else
// {
// SetItemText(i, item_cid_index, "");
// SetItemText(i, item_LastMsgTime_index, "");
// SetItemText(i, item_SAlarmType_index, "");
// SetItemText(i, item_BoxStr_index, "");
// }
// SetItemColor(i, move.GetShowColor());
// i++;
// }
// i++;
// foreach (FeedingEquip equip in lineBean.FeedingEquipMap.Values)
// {
// SetItemText(i, item_debug_index, equip.Config.IsDebug.Equals(1) ? "✘" : "✔");
// SetItemText(i, item_alarm_index, equip.alarmType.ToString());
// SetItemText(i, item_runStr_index, equip.GetRunStr());
// SetItemColor(i, equip.GetShowColor());
// i++;
// }
// i++;
// foreach (HYEquipBase equip in lineBean.HYEquipMap.Values)
// {
// SetItemText(i, item_debug_index, equip.IsDebug.Equals(1) ? "✘" : "✔");
// SetItemText(i, item_alarm_index, equip.alarmType.ToString());
// SetItemText(i, item_runStr_index, equip.GetRunStr());
// SetItemColor(i, equip.GetShowColor());
// i++;
// }
// i++;
// }
//}
//private void SetItemColor(int i, Color color)
//{
// if (!listView1.Items[i].BackColor.Equals(color))
// {
// listView1.Items[i].BackColor = color;
// }
//}
//private void SetItemText(int rowIndex, int subIndex, string value)
//{
// if (this.listView1.Items[rowIndex].SubItems.Count > subIndex)
// {
// if (!this.listView1.Items[rowIndex].SubItems[subIndex].Text.Equals(value))
// {
// this.listView1.Items[rowIndex].SubItems[subIndex].Text = value;
// }
// }
//}
#endregion
private void 自动保存托盘信息ToolStripMenuItem_Click(object sender, EventArgs e)
{
......
......@@ -116,20 +116,20 @@ namespace OnlineStore.AssemblyLine
{
return;
}
ReadIOList();
ReadBtnDO();
ReadIOList();
ReadBtnDO();
lblName.BackColor = equipBean.GetShowColor();
if (equipBean.runStatus > LineRunStatus.Wait)
{
{
if (btnStart.Enabled)
{
FormStatus(true);
}
}
else
{
{
if (!btnStart.Enabled)
{
FormStatus(false);
......@@ -143,9 +143,9 @@ namespace OnlineStore.AssemblyLine
{
lblInoutInfo.Text = "";
}
lblMoveInfo.Text = equipBean.GetMoveStr()+"\r\n料仓类型:"+(equipBean.Config.IsBigTray.Equals(1)?"大料盘":"小料盘");
lblMoveInfo.Text = equipBean.GetMoveStr() + "\r\n料仓类型:" + (equipBean.Config.IsBigTray.Equals(1) ? "大料盘" : "小料盘");
string canOut = LineManager.Line.CanOutStore(equipBean.DeviceID) ? "可出库" : "不可出库";
lblStoreStatus.Text = KTK_Store.GetRunStr( equipBean.runStatus) + "(" + canOut + ")";
lblStoreStatus.Text = KTK_Store.GetRunStr(equipBean.runStatus) + "(" + canOut + ")";
lblThisSta.Text = equipBean.WarnMsg;
string text = "";
List<InOutParam> ps = new List<InOutParam>(equipBean.waitInStoreList);
......@@ -176,9 +176,8 @@ namespace OnlineStore.AssemblyLine
}
catch (Exception ex)
{
LogUtil.error(equipBean.Name + "界面定时器出错:" ,ex);
LogUtil.error(equipBean.Name + "界面定时器出错:", ex);
}
}
private void FrmTest_FormClosing(object sender, FormClosingEventArgs e)
......@@ -220,9 +219,7 @@ namespace OnlineStore.AssemblyLine
{
IOManager.instance.WriteSingleDO(deviceName, (byte)slaveId, (ushort)index, (IO_VALUE)value);
}
}
}
private ConfigIO GetSelectDO()
{
string text = cmbWriteIO.SelectedValue.ToString();
......@@ -251,9 +248,7 @@ namespace OnlineStore.AssemblyLine
selectControl = newControl;
}
}
}
}
private void cmbWriteIO_DrawItem(object sender, DrawItemEventArgs e)
{
......@@ -272,14 +267,11 @@ namespace OnlineStore.AssemblyLine
private void btnReadIO_Click(object sender, EventArgs e)
{
ReadIOList();
}
}
private void FrmIOStatus_Shown(object sender, EventArgs e)
{
timer1.Start();
}
}
private void btnStart_Click(object sender, EventArgs e)
{
if (equipBase.runStatus.Equals(LineRunStatus.Wait))
......@@ -385,11 +377,7 @@ namespace OnlineStore.AssemblyLine
{
MessageBox.Show("未启动或不在空闲中,无法入库测试!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
}
private void cmbSizeList_SelectedIndexChanged(object sender, EventArgs e)
{
if (cmbSizeList.SelectedIndex < 0)
......
......@@ -4,8 +4,8 @@ PRO,0,扫码的相机名称(多个用#分隔),CameraNameList,GigE:MV-CE200-10GC
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,
PRO,0,对应的横移模块,SidesWayNum,1,,
PRO,0,是否是用来出料,IsCanOut,0,,
PRO,0,上料流水线入口AGV小车站号名称,AgvInName,C5,,
PRO,0,上料流水线出口AGV小车站号名称,AgvOutName,C6,,
PRO,0,上料流水线入口AGV小车站号名称,AgvInName,T1_1,,
PRO,0,上料流水线出口AGV小车站号名称,AgvOutName,T1_2,,
,,,,,,
AXIS,0,轴一提升上料轴,Batch_Axis,11,HC,,250,1000,1000,60,80,50,10,100,0,0
PRO,0,提升上料轴上升待机点 P1,BatchAxisP1,6504500,,
......
......@@ -2,10 +2,10 @@
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,0,,
PRO,0,扫码的相机名称(多个用#分隔),CameraNameList,GigE:MV-CE200-10GC (00D76546878),,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,
PRO,0,对应的横移模块,SidesWayNum,0,,
PRO,0,对应的横移模块,SidesWayNum,2,,
PRO,0,是否是用来出料,IsCanOut,0,,
PRO,0,上料流水线入口AGV小车站号名称,AgvInName,C3,,
PRO,0,上料流水线出口AGV小车站号名称,AgvOutName,C4,,
PRO,0,上料流水线入口AGV小车站号名称,AgvInName,T2_1,,
PRO,0,上料流水线出口AGV小车站号名称,AgvOutName,T2_2,,
,,,,,,
AXIS,0,轴一提升上料轴,Batch_Axis,13,HC,,250,1000,1000,60,80,50,10,100,0,0
PRO,0,提升上料轴上升待机点 P1,BatchAxisP1,6515100,,
......
......@@ -2,10 +2,10 @@
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,0,,
PRO,0,扫码的相机名称(多个用#分隔),CameraNameList,GigE:MV-CE200-10GC (00D77519112),,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,
PRO,0,对应的横移模块,SidesWayNum,2,,
PRO,0,对应的横移模块,SidesWayNum,0,,
PRO,0,是否是用来出料,IsCanOut,0,,
PRO,0,上料流水线入口AGV小车站号名称,AgvInName,C1,,
PRO,0,上料流水线出口AGV小车站号名称,AgvOutName,C2,,
PRO,0,上料流水线入口AGV小车站号名称,AgvInName,T3_1,,
PRO,0,上料流水线出口AGV小车站号名称,AgvOutName,T3_2,,
,,,,,,
AXIS,0,轴一提升上料轴,Batch_Axis,9,HC,,250,1000,1000,60,80,50,10,100,0,0
PRO,0,提升上料轴上升待机点 P1,BatchAxisP1,6514600,,
......
......@@ -2,10 +2,10 @@
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,0,,
PRO,0,扫码的相机名称(多个用#分隔),CameraNameList,Name1#Name1,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,
PRO,0,对应的横移模块,SidesWayNum,3,,
PRO,0,对应的横移模块,SidesWayNum,20,,
PRO,0,是否是用来出料,IsCanOut,1,,
PRO,0,上料流水线入口AGV小车站号名称,AgvInName,C7,,
PRO,0,上料流水线出口AGV小车站号名称,AgvOutName,C8,,
PRO,0,上料流水线入口AGV小车站号名称,AgvInName,T4_1,,
PRO,0,上料流水线出口AGV小车站号名称,AgvOutName,T4_2,,
,,,,,,
AXIS,0,轴一提升上料轴,Batch_Axis,5,HC,,250,1000,1000,60,80,50,10,100,0,0
PRO,0,提升上料轴上升待机点 P1,BatchAxisP1,6508000,,
......
......@@ -2,10 +2,10 @@
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,0,,
PRO,0,扫码的相机名称(多个用#分隔),CameraNameList,Name1#Name1,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,
PRO,0,对应的横移模块,SidesWayNum,3,,
PRO,0,对应的横移模块,SidesWayNum,21,,
PRO,0,是否是用来出料,IsCanOut,1,,
PRO,0,上料流水线入口AGV小车站号名称,AgvInName,C7,,
PRO,0,上料流水线出口AGV小车站号名称,AgvOutName,C8,,
PRO,0,上料流水线入口AGV小车站号名称,AgvInName,T5_1,,
PRO,0,上料流水线出口AGV小车站号名称,AgvOutName,T5_2,,
,,,,,,
AXIS,0,轴一提升上料轴,Batch_Axis,3,HC,,250,1000,1000,60,80,50,10,100,0,0
PRO,0,提升上料轴上升待机点 P1,BatchAxisP1,6508000,,
......
......@@ -34,8 +34,7 @@ namespace OnlineStore.DeviceLibrary
}
actionMap = new Dictionary<string, Asa.ClientAction>();
LogUtil.info(" 开始 agvClient.Connect");
//}
LogUtil.info(" 开始 agvClient.Connect");
agvClient.Connect();
foreach (string str in NodeList)
{
......
......@@ -589,19 +589,20 @@ namespace OnlineStore.DeviceLibrary
LogUtil.info(Name + " " + posId + msg);
}
}
protected string RFIDIP="";
public virtual string GetMoveStr()
{
string msg = "";
int tLength = 15;
if (!String.IsNullOrEmpty(RFIDIP))
{
{
msg += "当前托盘:" + currTrayNum + " 上个托盘:" + preTrayNum + "\n";
}
msg += "runS: " + runStatus + "\n";
msg += "alarm: " + alarmType +" "+LastAlarmTime.ToLongTimeString()+ "\n";
msg += "Move:"+ MoveInfo.MoveType+ " " + MoveInfo.SLog + "\n";
msg += "SMove:" + SecondMoveInfo.MoveType + " " + SecondMoveInfo.MoveStep + "\n";
msg += "runS: " + runStatus + "\n";
msg += "alarm: " + alarmType + " " + LastAlarmTime.ToLongTimeString() + "\n";
msg += "Move:" + MoveInfo.MoveType + " " + MoveInfo.SLog + "\n";
msg += "SMove:" + SecondMoveInfo.MoveType + " " + SecondMoveInfo.MoveStep + "\n";
return msg;
}
internal void MoveEndS()
......
......@@ -186,7 +186,7 @@ namespace OnlineStore.DeviceLibrary
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed);
break;
case LineMoveStep.FR_05_UpdownAxis_P1:
if (UpdownIsUp())
if (UpdownIsInP1())
{
MoveInfo.NextMoveStep(LineMoveStep.FR_06_CylinderGive);
if (Config.IsCanOut.Equals(1))
......@@ -225,7 +225,6 @@ namespace OnlineStore.DeviceLibrary
LogInfo(MoveInfo.MoveType + ":" + MoveInfo.SLog + ": 托盘定位气缸后退,升降伺服到P1");
TrayLCylinderAfter(MoveInfo);
Thread.Sleep(50);
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed);
break;
case LineMoveStep.FR_13_LocationDown:
......@@ -434,6 +433,13 @@ namespace OnlineStore.DeviceLibrary
}
}
else
{
needLeaveWatch.Stop();
AgvClient.SetToNone(Config.AgvOutName);
needEnterWatch.Stop();
AgvClient.SetToNone(Config.AgvInName);
}
}
private Stopwatch needEnterWatch = new Stopwatch();
private Stopwatch needLeaveWatch = new Stopwatch();
......@@ -559,7 +565,7 @@ namespace OnlineStore.DeviceLibrary
}
public bool UpdownIsUp()
public bool UpdownIsInP1()
{
if (UpdownAxis.IsInPosition(Config.UpDownAxisP1))
{
......@@ -856,6 +862,7 @@ namespace OnlineStore.DeviceLibrary
#endregion
#endregion
private string lastcode = "";
public override string GetMoveStr()
{
......@@ -875,8 +882,7 @@ namespace OnlineStore.DeviceLibrary
msg += "当前托盘:" + currTrayNum + " 上个托盘:" + preTrayNum + "\n";
msg += "runS: " + runStatus + "\n";
msg += "alarm: " + alarmType + "\n";
msg += "MoveT:" + MoveInfo.MoveType + "\n";
msg += "MoveS :" + MoveInfo.SLog + "\n";
msg += "MoveT:" + MoveInfo.MoveType + " " + MoveInfo.SLog + "\n";
return msg;
}
public string GetLastTrayInfo()
......
......@@ -262,7 +262,7 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.IsStep(LineMoveStep.FI_08_LocationUp))
{
MoveInfo.NextMoveStep(LineMoveStep.FI_11_BatchAxisToP2);
InLog("料架入库" + MoveInfo.SLog + ":提升轴下降到位P2 ");
InLog("料架入库" + MoveInfo.SLog + ":提升轴下降到位P2 ["+ Config.BatchAxisP2 + "] ");
if (!ProcessShelfEnter)
{
IOMove(IO_Type.SL_Line_Run, IO_VALUE.LOW);
......@@ -332,12 +332,12 @@ namespace OnlineStore.DeviceLibrary
}
else if (MoveInfo.IsStep(LineMoveStep.FI_21_CylinderTake))
{
MoveInfo.NextMoveStep(LineMoveStep.FI_22_UpdownAxisToP3);
MoveInfo.NextMoveStep(LineMoveStep.FI_22_UpdownToP3);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
InLog("料盘移栽" + MoveInfo.SLog + ":升降轴到P3");
InLog("料盘移栽" + MoveInfo.SLog + ":升降轴到P3["+ Config.UpDownAxisP3+"]");
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP3, Config.UpdownAxis_P3Speed);
}
else if (MoveInfo.IsStep(LineMoveStep.FI_22_UpdownAxisToP3))
else if (MoveInfo.IsStep(LineMoveStep.FI_22_UpdownToP3))
{
MoveInfo.NextMoveStep(LineMoveStep.FI_23_CylinderTighten);
InLog("料盘移栽" + MoveInfo.SLog + ":上料横移机构夹紧");
......@@ -345,13 +345,13 @@ namespace OnlineStore.DeviceLibrary
}
else if (MoveInfo.IsStep(LineMoveStep.FI_23_CylinderTighten))
{
MoveInfo.NextMoveStep(LineMoveStep.FI_24_UpdownAxisToP1);
InLog("料盘移栽" + MoveInfo.SLog + ":升降伺服到P1点");
MoveInfo.NextMoveStep(LineMoveStep.FI_24_UpdownToP1);
InLog("料盘移栽" + MoveInfo.SLog + ":升降伺服到P1点 ["+ Config.UpDownAxisP1+"]");
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed);
}
else if (MoveInfo.IsStep(LineMoveStep.FI_24_UpdownAxisToP1))
else if (MoveInfo.IsStep(LineMoveStep.FI_24_UpdownToP1))
{
if (UpdownIsUp())
if (UpdownIsInP1())
{
MoveInfo.NextMoveStep(LineMoveStep.FI_25_CheckTray);
InLog("料盘移栽" + MoveInfo.SLog + ":等待 SL_ClampCylinder_Check=HIGH,SL_AxisLocationCheck=LOW");
......@@ -360,8 +360,8 @@ namespace OnlineStore.DeviceLibrary
}
else
{
MoveInfo.NextMoveStep(LineMoveStep.FI_24_UpdownAxisToP1);
InLog("料盘移栽" + MoveInfo.SLog + ":升降伺服到P1点");
MoveInfo.NextMoveStep(LineMoveStep.FI_24_UpdownToP1);
InLog("料盘移栽" + MoveInfo.SLog + ":升降伺服到P1点 ["+ Config.UpDownAxisP1 + "]");
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed);
}
}
......@@ -370,6 +370,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(LineMoveStep.FI_26_BatchAxisToP3);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
LastWidth = GetWidth();
MoveInfo.MoveParam.PlateW = LastWidth;
InLog("料盘移栽" + MoveInfo.SLog + ":提升伺服运动到P3,盘宽【" + LastWidth + "】,横移气缸上升 ");
CylinderMove(null, IO_Type.SL_MoveCylinder_Take, IO_Type.SL_MoveCylinder_Give);
......@@ -378,7 +379,7 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.IsStep(LineMoveStep.FI_26_BatchAxisToP3))
{
MoveInfo.NextMoveStep(LineMoveStep.FI_27_SaveSize);
if (UpdownIsUp())
if (UpdownIsInP1())
{
MoveInfo.NextMoveStep(LineMoveStep.FI_28_CylinderGive);
InLog("料盘移栽" + MoveInfo.SLog + ":上料横移气缸放料SOL");
......@@ -387,11 +388,12 @@ namespace OnlineStore.DeviceLibrary
else
{
MoveInfo.NextMoveStep(LineMoveStep.FI_27_SaveSize);
InLog("料盘移栽" + MoveInfo.SLog + ":上料横移机构取料端 前升降轴先到P1");
InLog("料盘移栽" + MoveInfo.SLog + ":上料横移机构取料端 前升降轴先到P1 ["+ Config.UpDownAxisP1 + "]");
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed);
}
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
LastHeight = GetHeight();
MoveInfo.MoveParam.PlateH = LastHeight;
if (LastWidth.Equals(7))
{
if (LastHeight > 16)
......@@ -436,7 +438,7 @@ namespace OnlineStore.DeviceLibrary
}
else if (MoveInfo.IsStep(LineMoveStep.FI_27_SaveSize))
{
if (UpdownIsUp())
if (UpdownIsInP1())
{
MoveInfo.NextMoveStep(LineMoveStep.FI_28_CylinderGive);
InLog("料盘移栽" + MoveInfo.SLog + ":上料横移气缸放料SOL");
......@@ -445,7 +447,7 @@ namespace OnlineStore.DeviceLibrary
else
{
MoveInfo.NextMoveStep(LineMoveStep.FI_27_SaveSize);
InLog("料盘移栽" + MoveInfo.SLog + ":上料横移机构取料端 前升降轴先到P1");
InLog("料盘移栽" + MoveInfo.SLog + ":上料横移机构取料端 前升降轴先到P1 ["+ Config.UpDownAxisP1 + "]");
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed);
}
}
......@@ -457,10 +459,10 @@ namespace OnlineStore.DeviceLibrary
{
FI_BatchAxisDown();
}
int targetPositon = Config.GetUpdownP2Detial(LastHeight, LastWidth);
string log = ":移栽伺服下降到P2:" + targetPositon;
InLog("料盘移栽" + MoveInfo.SLog + ": " + log + "");
UpdownAxis.AbsMove(MoveInfo, targetPositon, Config.UpdownAxis_P2Speed);
//int targetPositon = Config.GetUpdownP2Detial(LastHeight, LastWidth);
//string log = ":移栽伺服下降到P2:" + targetPositon;
//InLog("料盘移栽" + MoveInfo.SLog + ": " + log + "");
//UpdownAxis.AbsMove(MoveInfo, targetPositon, Config.UpdownAxis_P2Speed);
}
else if (MoveInfo.IsStep(LineMoveStep.FI_29_BatchAxisDown))
{
......@@ -492,16 +494,15 @@ namespace OnlineStore.DeviceLibrary
if (LineManager.Line. TrayIsReady(DeviceID,out currTrayNum))
{
MoveInfo.NextMoveStep(LineMoveStep.FI_33_CylinderDown);
//CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Up, IO_Type.SL_MoveCylinder_Down);
if (Config.SidesWayNum > 0)
{
// CylinderMove(MoveInfo, IO_Type.SW_LocationCylinder_Down, IO_Type.SW_LocationCylinder_Up);
}
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
int targetPositon = Config.GetUpdownP2Detial(LastHeight, LastWidth);
UpdownAxis.AbsMove(MoveInfo, targetPositon, Config.UpdownAxis_P2Speed);
LastPosParam.TrayNumber = currTrayNum;
InLog("料盘移栽" + MoveInfo.SLog + ":上料机构下降, 托盘号【" + currTrayNum + "】,更新托盘信息 :" + LastPosParam.ToShortStr());
InLog("料盘移栽" + MoveInfo.SLog + ":移栽伺服下降到P2: [" + targetPositon+"] 托盘号【" + currTrayNum + "】,更新托盘信息 :" + LastPosParam.ToShortStr());
TrayManager.UpdateTrayInfo(currTrayNum, true, ReelType.InStore, LastPosParam, LastPosParam.NgMsg);
SServerManager.SendPosToStoreCheck(Name, LastPosParam);
if (IOValue(IO_Type.SL_AxisLocationCheck).Equals(IO_VALUE.LOW) && MoveInfo.ShelfNoTray.Equals(false))
{
InLog("获取库位" + MoveInfo.SLog + ": 上料轴开始慢速上升到P3点,不等待结果");
......@@ -520,37 +521,32 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(LineMoveStep.FI_34_CylinderRelax);
InLog("料盘移栽" + MoveInfo.SLog + ":上料气缸放松");
CylinderMove(MoveInfo, IO_Type.SL_ClampCylinder_Work, IO_Type.SL_ClampCylinder_Relax);
ClearTimeoutAlarm("等待空托盘到达超时");
}
else if (MoveInfo.IsStep(LineMoveStep.FI_34_CylinderRelax))
{
MoveInfo.NextMoveStep(LineMoveStep.FI_35_WaitCylinderUp);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(100));
//MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SL_MoveCylinder_Down, IO_VALUE.LOW));
//CylinderMove(null, IO_Type.SL_MoveCylinder_Down, IO_Type.SL_MoveCylinder_Up);
TrayPreMove();
}
else if (MoveInfo.IsStep(LineMoveStep.FI_35_WaitCylinderUp))
{
TrayMoveOk();
FI_36_CylinderUp();
MoveInfo.NextMoveStep(LineMoveStep.FI_35_AxisToP1);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
InLog("料盘移栽" + MoveInfo.SLog + ":升降轴到P1点 ["+ Config.UpDownAxisP1 + "]");
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed);
}
else if (MoveInfo.IsStep(LineMoveStep.FI_36_CylinderUp))
else if (MoveInfo.IsStep(LineMoveStep.FI_35_AxisToP1))
{
MoveInfo.NextMoveStep(LineMoveStep.FI_37_UpDownAxisToP1);
// InLog("料盘移栽" + MoveInfo.SLog + ":升降伺服到P1点");
TrayMoveOk(true);
if (!UpdownAxis.IsInPosition(Config.UpDownAxisP1))
{
InLog("料盘移栽" + MoveInfo.SLog + ":升降轴到P1点,托盘放行");
MoveInfo.NextMoveStep(LineMoveStep.FI_35_AxisToP1);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
InLog("料盘移栽" + MoveInfo.SLog + ":升降轴到P1点 ["+ Config.UpDownAxisP1 + "]");
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed);
}
else
{
InLog("料盘移栽" + MoveInfo.SLog + ":升降轴已在P1点,托盘放行");
}
MoveInfo.NextMoveStep(LineMoveStep.FI_36_TrayMoveOk);
InLog("料盘移栽" + MoveInfo.SLog + ":升降轴已到P1,托盘放行");
TrayMoveOk();
}
}
else if (MoveInfo.IsStep(LineMoveStep.FI_37_UpDownAxisToP1))
else if (MoveInfo.IsStep(LineMoveStep.FI_36_TrayMoveOk))
{
if (getPosTask == null || getPosTask.IsCompleted)
{
......@@ -584,7 +580,7 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.IsStep(LineMoveStep.FI_52_TrayLocation_After))
{
MoveInfo.NextMoveStep(LineMoveStep.FI_53_BatchAxisToP1);
InLog("上料完成" + MoveInfo.SLog + ":提升伺服到P1点,定位气缸下降");
InLog("上料完成" + MoveInfo.SLog + ":提升伺服到P1点["+ Config.BatchAxisP1 + "],定位气缸下降");
BatchAxis.AbsMove(MoveInfo, Config.BatchAxisP1, Config.BatchAxis_P1Speed);
LocationCylinderDown(MoveInfo);
}
......@@ -668,6 +664,7 @@ namespace OnlineStore.DeviceLibrary
LastPosParam = null;
string code = CodeManager.ProcessCode(LastCodeList);
lastcode = code;
MoveInfo.MoveParam.WareCode = lastcode;
getPosTask = Task.Factory.StartNew(delegate
{
//更新托盘条码信息
......@@ -686,7 +683,7 @@ namespace OnlineStore.DeviceLibrary
ms = 2000;
}
Thread.Sleep(ms);
LogUtil.error(Name + "【" + code + "】第[" + count + "]次 FI_23_GetPosID 超时,等待" + ms + "后重新获取");
LogUtil.error(Name + "【" + code + "】第[" + count + "]次 "+ MoveInfo .SLog+ " 超时,等待" + ms + "后重新获取");
}
else if (result.Result.Equals(99) || result.Result.Equals(100))
{
......@@ -695,12 +692,12 @@ namespace OnlineStore.DeviceLibrary
ms = 3000;
}
Thread.Sleep(ms);
LogUtil.error(Name + "【" + code + "】第[" + count + "]次 FI_23_GetPosID 结果【" + result.Result + "】,等待" + ms + "后重新获取");
LogUtil.error(Name + "【" + code + "】第[" + count + "]次 " + MoveInfo.SLog + " 结果【" + result.Result + "】,等待" + ms + "后重新获取");
}
else if (!result.Msg.Equals(""))
{
LastPosParam = result.Param;
LogUtil.error(Name + "【" + code + "】第[" + count + "]次 FI_23_GetPosID 入库NG:" + result.Msg);
LogUtil.error(Name + "【" + code + "】第[" + count + "]次 " + MoveInfo.SLog + " 入库NG:" + result.Msg);
break;
}
else
......@@ -713,48 +710,13 @@ namespace OnlineStore.DeviceLibrary
}
catch (Exception ex)
{
LogUtil.error(Name + "【" + code + "】获取库位号报错:" + ex.ToString());
LogUtil.error(Name + "【" + code + "】 " + MoveInfo.SLog + " 获取库位号报错:" + ex.ToString());
}
});
}
private void FI_36_CylinderUp()
{
MoveInfo.NextMoveStep(LineMoveStep.FI_36_CylinderUp);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
//CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Down, IO_Type.SL_MoveCylinder_Up);
//如果是小料盘,且升降轴需要上升,
string upLog = "";
if (LastWidth.Equals(7) && LastHeight.Equals(8))
{
upLog = " ,7X8盘,升降轴到待机位P1 ";
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed);
}
InLog("料盘移栽" + MoveInfo.SLog + ":上料横移机构上升 " + upLog);
}
private void TrayPreMove()
{
if (Config.SidesWayNum > 0)
{
InLog(MoveInfo.SLog + " 提前下降顶升气缸 ,环形线定位气缸先下降");
//CylinderMove(null, IO_Type.SW_LocationCylinder_Up, IO_Type.SW_LocationCylinder_Down);
//if (Config.SidesWayNum.Equals(1))
//{
// Task.Factory.StartNew(delegate
// {
// //需要等待500再下降
// Thread.Sleep(500);
// CylinderMove(null, IO_Type.SW_TopCylinder_Up, IO_Type.SW_TopCylinder_Down);
// });
//}
}
else
{
InLog(MoveInfo.SLog + " 提前顶升下降, 顶升气缸下降)");
//CylinderMove(null, IO_Type.FL_TopCylinder_Up, IO_Type.FL_TopCylinder_Down);
}
}
private void FI_BatchAxisDown()
{
// MoveInfo.NextMoveStep(LineMoveStep.FI_21_BatchAxisDown);
......@@ -824,7 +786,7 @@ namespace OnlineStore.DeviceLibrary
}
private void FI_17_CylinderGive()
{
if (UpdownIsUp())
if (UpdownIsInP1())
{
MoveInfo.NextMoveStep(LineMoveStep.FI_17_CylinderGive);
InLog("料盘移栽" + MoveInfo.SLog + ":上料机构检测到料盘,横移机构到放料端,等待夹爪料盘检测=LOW");
......@@ -835,7 +797,7 @@ namespace OnlineStore.DeviceLibrary
{
//有料盘
MoveInfo.NextMoveStep(LineMoveStep.FI_16_CylinderUp);
InLog("料盘移栽" + MoveInfo.SLog + ":上料机构检测到料盘,升降轴先到P1");
InLog("料盘移栽" + MoveInfo.SLog + ":上料机构检测到料盘,升降轴先到P1 ["+ Config.UpDownAxisP1 + "]");
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed);
}
}
......@@ -875,13 +837,13 @@ namespace OnlineStore.DeviceLibrary
if (!hasRightCode)
{
LastCodeList = CodeManager.CameraScan(Config.GetCameraList(), Name, false, 3000);
}
}
return LastCodeList;
});
}
catch (Exception ex)
{
LogUtil.error("FI_13_ScanCode扫码出错:", ex);
LogUtil.error("" + MoveInfo.SLog + ":扫码出错:", ex);
}
//finally
//{
......@@ -1035,15 +997,15 @@ namespace OnlineStore.DeviceLibrary
width = 7;
}else
{
LogUtil.error(Name + "GetWidth :1234都未检测到,默认为7寸盘");
width = 7;
LogUtil.error(Name + "GetWidth :1234都未检测到,默认为15寸盘");
width = 15;
}
return width;
}
#endregion
#region 判断托盘是否需要
private void TrayMoveOk(bool needCheck = false)
private void TrayMoveOk()
{
LineManager.Line.TrayCanLeave(DeviceID);
}
......
......@@ -51,12 +51,10 @@ namespace OnlineStore.DeviceLibrary
if (lastXuniRfid.Equals("") || lastXuniRfid.Equals(outParam.rfid))
{
//如果虚拟料架号为空,或者虚拟料架号与当前一致才可以出库
}
else
{
//料架号不一致时,直接送出料架
//如果流水线还有次料架的任务,暂不送出
int count = TrayManager.GetOutTaskByRfid(lastXuniRfid);
if (count <= 0)
......@@ -87,7 +85,7 @@ namespace OnlineStore.DeviceLibrary
targetPosition = Config.BatchAxisP2;
}
OutLog("出库移栽 " + MoveInfo.SLog + " :提升伺服下降" + height + "mm,目标:" + targetPosition);
if (UpdownIsUp() )
if (UpdownIsInP1() )
{
//已经在取料端
if (CylinderIsOk(IO_Type.SL_MoveCylinder_Give, IO_Type.SL_MoveCylinder_Take))
......@@ -96,7 +94,7 @@ namespace OnlineStore.DeviceLibrary
UpdownAxis.AbsMove(MoveInfo, targetP, Config.UpdownAxis_P2Speed);
}
else if (UpdownIsUp())
else if (UpdownIsInP1())
{
CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Give, IO_Type.SL_MoveCylinder_Take);
}
......@@ -176,7 +174,7 @@ namespace OnlineStore.DeviceLibrary
{
MoveInfo.NextMoveStep(LineMoveStep.FO_01_BatchAxisToP2);
BatchAxis.AbsMove(MoveInfo, Config.BatchAxisP2, Config.BatchAxis_P2Speed);
OutLog("准备出库料架,升降盘不在后退端 " + MoveInfo.SLog + " :提升伺服先回到P2");
OutLog("准备出库料架,升降盘不在后退端 " + MoveInfo.SLog + " :提升伺服先回到P2 ["+ Config.BatchAxisP2 + "]");
}
}
return true;
......@@ -324,7 +322,7 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.IsStep(LineMoveStep.FO_08_LocationUp))
{
MoveInfo.NextMoveStep(LineMoveStep.FO_11_BatchAxisToP2);
OutLog("准备出库料架 " + MoveInfo.SLog + " :提升轴下降到位P2");
OutLog("准备出库料架 " + MoveInfo.SLog + " :提升轴下降到位P2["+ Config.BatchAxisP2 + "]");
if (!ProcessShelfEnter)
{
IOMove(IO_Type.SL_Line_Run, IO_VALUE.LOW);
......@@ -379,7 +377,7 @@ namespace OnlineStore.DeviceLibrary
{
OutLog("准备出库料架 " + MoveInfo.SLog + " :检测到料盘,下降的目标高度为【" + tp + "】<【" + Config.BatchAxisP2 + "】,料架已满,直接送出料架");
MoveInfo.NextMoveStep(LineMoveStep.FO_51_BatchAxisToP2);
OutLog("出库移栽 " + MoveInfo.SLog + ":提升伺服到P2点");
OutLog("出库移栽 " + MoveInfo.SLog + ":提升伺服到P2点 ["+ Config.BatchAxisP2 + "]");
BatchAxis.AbsMove(MoveInfo, Config.BatchAxisP2, Config.BatchAxis_P2Speed);
}
else
......@@ -544,7 +542,7 @@ namespace OnlineStore.DeviceLibrary
}
else
{
if (UpdownIsUp())
if (UpdownIsInP1())
{
MoveInfo.NextMoveStep(LineMoveStep.FO_22_CylinderTake);
OutLog(outType + MoveInfo.SLog + ":上料横移机构取料端");
......@@ -553,7 +551,7 @@ namespace OnlineStore.DeviceLibrary
else
{
MoveInfo.NextMoveStep(LineMoveStep.FO_21_AxisDownMove);
OutLog(outType + MoveInfo.SLog + ":上料横移机构取料端 前升降轴先到P1");
OutLog(outType + MoveInfo.SLog + ":上料横移机构取料端 前升降轴先到P1 ["+ Config.UpDownAxisP1 + "]");
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed);
}
}
......@@ -608,7 +606,7 @@ namespace OnlineStore.DeviceLibrary
}
else if (MoveInfo.IsStep(LineMoveStep.FO_27_ClampCheck))
{
if (UpdownIsUp())
if (UpdownIsInP1())
{
MoveInfo.NextMoveStep(LineMoveStep.FO_28_CylinderGive);
OutLog(outType + MoveInfo.SLog + ":上料横移机构到放料端");
......@@ -617,7 +615,7 @@ namespace OnlineStore.DeviceLibrary
else
{
MoveInfo.NextMoveStep(LineMoveStep.FO_26_UpdownAxisToP1);
OutLog(outType + MoveInfo.SLog + ":上料横移机构到放料端前,先升降轴先到P1");
OutLog(outType + MoveInfo.SLog + ":上料横移机构到放料端前,先升降轴先到P1 ["+ Config.UpDownAxisP1 + "]");
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed);
}
......@@ -625,7 +623,7 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.IsStep(LineMoveStep.FO_28_CylinderGive))
{
MoveInfo.NextMoveStep(LineMoveStep.FO_29_UpdownAxisToP3);
OutLog(outType + MoveInfo.SLog + ":移栽伺服到P3");
OutLog(outType + MoveInfo.SLog + ":移栽伺服到P3 ["+ Config.UpDownAxisP3 + "]");
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP3, Config.UpdownAxis_P3Speed);
}
else if (MoveInfo.IsStep(LineMoveStep.FO_29_UpdownAxisToP3))
......@@ -660,7 +658,7 @@ namespace OnlineStore.DeviceLibrary
}
else if (MoveInfo.IsStep(LineMoveStep.FO_32_ClampCheck))
{
if (UpdownIsUp())
if (UpdownIsInP1())
{
MoveInfo.NextMoveStep(LineMoveStep.FO_33_CylinderTake);
CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Give, IO_Type.SL_MoveCylinder_Take);
......
......@@ -103,7 +103,7 @@ namespace OnlineStore.DeviceLibrary
}
protected override void FixtureProcess()
{
if (!LineManager.Line.LineCanRun())
if (!LineManager.Line.CanProcessLine())
{
return;
}
......@@ -430,7 +430,7 @@ namespace OnlineStore.DeviceLibrary
}
else if (MoveInfo.IsStep(LineMoveStep.JM_02_CylinderTake))
{
int p2 = Config.GetUpdownP2(MoveInfo.MoveParam.PlateH);
int p2 = Config.GetUpdownP2Detial(MoveInfo.MoveParam.PlateH);
MoveInfo.NextMoveStep(LineMoveStep.JM_03_UpdownToP2);
OutLog(logName + MoveInfo.SLog + ":升降轴下降到取料点P2 [" + p2 + "]");
UpdownAxis.AbsMove(MoveInfo, p2, Config.UpdownAxis_P2Speed);
......@@ -450,7 +450,7 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.IsStep(LineMoveStep.JM_05_ClampWork))
{
MoveInfo.NextMoveStep(LineMoveStep.JM_06_UpdownToP1);
OutLog(logName + MoveInfo.SLog + ":升降轴到P1 ");
OutLog(logName + MoveInfo.SLog + ":升降轴到P1 ["+ Config.UpDownAxisP1 + "]");
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed);
}
else if (MoveInfo.IsStep(LineMoveStep.JM_06_UpdownToP1))
......@@ -514,7 +514,7 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.IsStep(LineMoveStep.JM_13_ClampRelax))
{
MoveInfo.NextMoveStep(LineMoveStep.JM_14_UpdownToP1);
OutLog(logName + MoveInfo.SLog + ":升降轴上升到P1 ");
OutLog(logName + MoveInfo.SLog + ":升降轴上升到P1 ["+ Config.UpDownAxisP1 + "] ");
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed);
}
else if (MoveInfo.IsStep(LineMoveStep.JM_14_UpdownToP1))
......
......@@ -13,10 +13,7 @@ using System.Timers;
using System.Windows.Forms;
namespace OnlineStore.DeviceLibrary
{
/// <summary>
/// 流水线自动料仓-流水线类
/// </summary>
{
public partial class LineBean : KTK_Store
{
public bool IsDebug = false;
......@@ -393,7 +390,7 @@ namespace OnlineStore.DeviceLibrary
TimeSpan span = DateTime.Now - StartTime;
LogUtil.info(Name + ",停止运行,总运行时间:" + span.ToString());
}
public DateTime LastAlarmTime = DateTime.Now;
public DateTime LastAlarmTime = DateTime.Now;
public override void Alarm(LineAlarmType alarmType)
{
if (alarmType.Equals(LineAlarmType.None).Equals(false))
......@@ -415,23 +412,16 @@ namespace OnlineStore.DeviceLibrary
isNoAirCheck = true;
}
if (alarmType == LineAlarmType.SuddenStop || alarmType.Equals(LineAlarmType.NoAirCheck))
if (alarmType.Equals(LineAlarmType.SuddenStop) || alarmType.Equals(LineAlarmType.NoAirCheck))
{
LogUtil.error(WarnMsg);
// StopMove();
MoveInfo.EndMove();
WriteDrivetMotorRun(IO_VALUE.LOW);
//IOMove(IO_Type.SW4_MotorRun, IO_VALUE.LOW);
//IOMove(IO_Type.SW4_TopCylinder_Down, IO_VALUE.LOW);
//IOMove(IO_Type.SW4_TopCylinder_Up, IO_VALUE.LOW);
T3C1_Stop();
//SideWayStop();
//ShuntStop();
//Shunt2Stop();
foreach (EquipBase equip in this.AllEquipMap.Values)
{
if (equip.runStatus>LineRunStatus.Wait)
if (equip.runStatus > LineRunStatus.Wait)
{
equip.Alarm(alarmType);
}
......@@ -440,7 +430,7 @@ namespace OnlineStore.DeviceLibrary
equip.CloseStopBlock();
}
}
}
IOMove(IO_Type.Alarm_HddLed, IO_VALUE.HIGH);
}
......@@ -810,8 +800,7 @@ namespace OnlineStore.DeviceLibrary
equip.CloseStopBlock();
}
}
MoveInfo.EndMove();
MoveInfo.EndMove();
WriteDrivetMotorRun(IO_VALUE.LOW);
T3C1_Stop();
}
......
......@@ -13,11 +13,7 @@ namespace OnlineStore.DeviceLibrary
partial class LineBean
{
#region 定时处理方法
public bool LineCanRun()
{
return true;
}
public bool CanProcessLine(bool isCheckSleep = true)
{
......@@ -25,8 +21,7 @@ namespace OnlineStore.DeviceLibrary
{
return false ;
}
if (LineCanRun() &&
IOManager.IOValue(IO_Type.MotorRun_C1_123, 0).Equals(IO_VALUE.HIGH) &&
if ( IOManager.IOValue(IO_Type.MotorRun_C1_123, 0).Equals(IO_VALUE.HIGH) &&
IOManager.IOValue(IO_Type.MotorRun_C1_4, 0).Equals(IO_VALUE.HIGH) &&
IOManager.IOValue(IO_Type.MotorRun_679, 0).Equals(IO_VALUE.HIGH) &&
IOManager.IOValue(IO_Type.MotorRun_23458, 0).Equals(IO_VALUE.HIGH))
......@@ -53,12 +48,12 @@ namespace OnlineStore.DeviceLibrary
}
//若BOX和移栽都没有在等待Io的过程中则此Io超时异常可能已经处理过
//if (MoveInfo.IsInWait.Equals(false) && SW41_MoveInfo.IsInWait.Equals(false) && SW23_MoveInfo.IsInWait.Equals(false))
//{
// LogUtil.info(Name + "清理信号超时报警【" + WarnMsg + "】 ");
// alarmType = LineAlarmType.None;
// SetWarnMsg("");
//}
if (MoveInfo.IsInWait.Equals(false) && T3C1_MoveInfo.IsInWait.Equals(false) )
{
LogUtil.info(Name + "清理信号超时报警【" + WarnMsg + "】 ");
alarmType = LineAlarmType.None;
SetWarnMsg("");
}
}
}
catch (Exception ex)
......@@ -154,10 +149,10 @@ namespace OnlineStore.DeviceLibrary
int storeId = checkWaitInfo.MoveParam.GetStoreId();
wait.IsEnd = LineServer.BoxCanReviceTray(storeId);
}
else if (wait.WaitType.Equals(WaitEnum.W010_SWCanTopUp))
{
//wait.IsEnd = SwCanUpMove(wait.TargetPosition);
}
//else if (wait.WaitType.Equals(WaitEnum.W010_SWCanTopUp))
//{
// //wait.IsEnd = SwCanUpMove(wait.TargetPosition);
//}
if (wait.IsEnd)
{
if (checkWaitInfo.OneWaitCanEndStep)
......
......@@ -105,8 +105,7 @@ namespace OnlineStore.DeviceLibrary
{
ResetClearData();
//移载装置原点状态:顶升气缸下降端,前后气缸后退端,上下气缸上升端,夹料气缸放松端,阻挡气缸输入=0
UpdownHomeMove();
// CylinderMove(MoveInfo, IO_Type.UpDownCylinder_Down, IO_Type.UpDownCylinder_Up);
UpdownHomeMove();
if (IsDebug)
{
IOMove(IO_Type.StopDown1, IO_VALUE.HIGH);
......
......@@ -698,7 +698,7 @@ namespace OnlineStore.DeviceLibrary
}
protected override void FixtureProcess()
{
if (!LineManager.Line.LineCanRun())
if (!LineManager.Line.CanProcessLine())
{
return;
}
......
......@@ -40,8 +40,7 @@ namespace OnlineStore.DeviceLibrary
{
LogUtil.error( type.Name + "枚举值:" + item + "重复存在,请检查代码!程序退出。");
Application.Exit();
return false;
break;
return false;
}
valueList.Add(item);
}
......@@ -54,21 +53,6 @@ namespace OnlineStore.DeviceLibrary
{
if (!isInit)
{
Dictionary<int, MoveEquip_Config> moveECMap = null;
Dictionary<int, FeedingEquip_Config> feedingECMap = null;
Dictionary<int, HYEquip_Config> HYECMap = null;
//Dictionary<int, DischargeLine_Config> disChargeLineMap = null;
DeviceConfig.SubDIList = new Dictionary<int, Dictionary<string, ConfigIO>>();
DeviceConfig.SubDOList = new Dictionary<int, Dictionary<string, ConfigIO>>();
DeviceConfig.ProIOIpMap = new Dictionary<string, string>();
DeviceConfig.ProRFIpMap = new Dictionary<string, string>();
moveECMap = new Dictionary<int, MoveEquip_Config>();
feedingECMap = new Dictionary<int, FeedingEquip_Config>();
HYECMap = new Dictionary<int, HYEquip_Config>();
//disChargeLineMap = new Dictionary<int, DischargeLine_Config>();
allConfigMap = new Dictionary<int, DeviceConfig>();
string server = ConfigAppSettings.GetValue(Setting_Init.http_server);
if (server.Equals(""))
{
......@@ -78,15 +62,32 @@ namespace OnlineStore.DeviceLibrary
{
IsConnectServer = true;
}
if (!CheckEnum(typeof(LineMoveStep))){
return false; }
if (!CheckEnum(typeof(LineMoveStep)))
{
return false;
}
if (!CheckEnum(typeof(LineStatus)))
{
return false;
}
if (!CheckEnum(typeof(LineRunStatus))){
if (!CheckEnum(typeof(LineRunStatus)))
{
return false;
}
Dictionary<int, MoveEquip_Config> moveECMap = null;
Dictionary<int, FeedingEquip_Config> feedingECMap = null;
Dictionary<int, HYEquip_Config> HYECMap = null;
DeviceConfig.SubDIList = new Dictionary<int, Dictionary<string, ConfigIO>>();
DeviceConfig.SubDOList = new Dictionary<int, Dictionary<string, ConfigIO>>();
DeviceConfig.ProIOIpMap = new Dictionary<string, string>();
DeviceConfig.ProRFIpMap = new Dictionary<string, string>();
moveECMap = new Dictionary<int, MoveEquip_Config>();
feedingECMap = new Dictionary<int, FeedingEquip_Config>();
HYECMap = new Dictionary<int, HYEquip_Config>();
allConfigMap = new Dictionary<int, DeviceConfig>();
isInit = true;
string lineType = ConfigAppSettings.GetValue(Setting_Init.Line_Type);
......
......@@ -264,17 +264,17 @@ namespace OnlineStore.DeviceLibrary
wait.IsEnd = false;
return wait;
}
public static WaitResultInfo WaitAxisOrg(ConfigMoveAxis axis,IO_VALUE value )
{
WaitResultInfo wait = new WaitResultInfo();
wait.CanWhileMoveCount = 0;
wait.WaitType = WaitEnum.W006_AxisOrg;
wait.AxisInfo = axis;
wait.IsHomeMove = true;
wait.IoValue = value;
wait.IsEnd = false;
return wait;
}
//public static WaitResultInfo WaitAxisOrg(ConfigMoveAxis axis,IO_VALUE value )
//{
// WaitResultInfo wait = new WaitResultInfo();
// wait.CanWhileMoveCount = 0;
// wait.WaitType = WaitEnum.W006_AxisOrg;
// wait.AxisInfo = axis;
// wait.IsHomeMove = true;
// wait.IoValue = value;
// wait.IsEnd = false;
// return wait;
//}
public static WaitResultInfo WaitHeight(int height)
{
......@@ -296,13 +296,13 @@ namespace OnlineStore.DeviceLibrary
wait.WaitType = WaitEnum.W009_BoxCanInstore;
return wait;
}
public static WaitResultInfo WaitSWCanTopUp(int swNum)
{
WaitResultInfo wait = new WaitResultInfo();
wait.WaitType = WaitEnum.W010_SWCanTopUp;
wait.TargetPosition = swNum;
return wait;
}
//public static WaitResultInfo WaitSWCanTopUp(int swNum)
//{
// WaitResultInfo wait = new WaitResultInfo();
// wait.WaitType = WaitEnum.W010_SWCanTopUp;
// wait.TargetPosition = swNum;
// return wait;
//}
//public static WaitResultInfo WaitSideWay()
//{
// WaitResultInfo wait = new WaitResultInfo();
......@@ -312,21 +312,21 @@ namespace OnlineStore.DeviceLibrary
/// <summary>
/// 等待出料移栽可以开始移栽
/// </summary>
public static WaitResultInfo WaitProvidingEquipCanOut()
{
WaitResultInfo wait = new WaitResultInfo();
wait.WaitType = WaitEnum.W201_ProvidingCanOut;
return wait;
}
//public static WaitResultInfo WaitProvidingEquipCanOut()
//{
// WaitResultInfo wait = new WaitResultInfo();
// wait.WaitType = WaitEnum.W201_ProvidingCanOut;
// return wait;
//}
/// <summary>
/// 等待出料流水线可以接收料盘
/// </summary>
public static WaitResultInfo WaitDLineCanReviceTray()
{
WaitResultInfo wait = new WaitResultInfo();
wait.WaitType = WaitEnum.W202_DLineCanOut;
return wait;
}
//public static WaitResultInfo WaitDLineCanReviceTray()
//{
// WaitResultInfo wait = new WaitResultInfo();
// wait.WaitType = WaitEnum.W202_DLineCanOut;
// return wait;
//}
public static WaitResultInfo WaitBatchAxis(ConfigMoveAxis axis, int targetPosition, int targetSpeed)
{
WaitResultInfo wait = new WaitResultInfo();
......@@ -345,18 +345,7 @@ namespace OnlineStore.DeviceLibrary
wait.WaitType = WaitEnum.W102_FeedScanCode;
return wait;
}
public static WaitResultInfo WaitFeedNoMove()
{
WaitResultInfo wait = new WaitResultInfo();
wait.WaitType = WaitEnum.W103_FeedNoMove;
return wait;
}
public static WaitResultInfo WaitDLineScanCode()
{
WaitResultInfo wait = new WaitResultInfo();
wait.WaitType = WaitEnum.W301_DLineScanCode;
return wait;
}
public string ToStr()
{
if (WaitType.Equals(WaitEnum.W001_AxisMove))
......@@ -399,10 +388,11 @@ namespace OnlineStore.DeviceLibrary
else if (WaitType.Equals(WaitEnum.W009_BoxCanInstore))
{
return "BOX可以开始入库";
}else if (WaitType.Equals(WaitEnum.W010_SWCanTopUp))
{
return "等待横移"+TargetPosition+"无托盘";
}
//else if (WaitType.Equals(WaitEnum.W010_SWCanTopUp))
//{
// return "等待横移"+TargetPosition+"无托盘";
//}
else if (WaitType.Equals(WaitEnum.W101_BatchAxisMove))
{
return "上料轴缓慢上升";
......@@ -411,21 +401,21 @@ namespace OnlineStore.DeviceLibrary
{
return "入料模块扫码";
}
else if (WaitType.Equals(WaitEnum.W103_FeedNoMove))
{
return "横移机构空闲";
}
else if (WaitType.Equals(WaitEnum.W201_ProvidingCanOut))
{
return "可移栽出料";
}else if (WaitType.Equals(WaitEnum.W202_DLineCanOut))
{
return "皮带线可放料盘";
}
else if (WaitType.Equals(WaitEnum.W301_DLineScanCode))
{
return "出料皮带线扫码";
}
//else if (WaitType.Equals(WaitEnum.W103_FeedNoMove))
//{
// return "横移机构空闲";
//}
//else if (WaitType.Equals(WaitEnum.W201_ProvidingCanOut))
//{
// return "可移栽出料";
//}else if (WaitType.Equals(WaitEnum.W202_DLineCanOut))
//{
// return "皮带线可放料盘";
//}
//else if (WaitType.Equals(WaitEnum.W301_DLineScanCode))
//{
// return "出料皮带线扫码";
//}
else
{
return "Wait位置类型:WaitType=【" + WaitType + "】";
......@@ -521,10 +511,10 @@ namespace OnlineStore.DeviceLibrary
/// BOX可以开始入库
/// </summary>
internal static int W009_BoxCanInstore = 9;
/// <summary>
/// 等待横移模块可以顶升,等待入料四和入料一处无托盘处理
/// </summary>
internal static int W010_SWCanTopUp = 10;
///// <summary>
///// 等待横移模块可以顶升,等待入料四和入料一处无托盘处理
///// </summary>
//internal static int W010_SWCanTopUp = 10;
/// <summary>
/// 入料模块:批量轴缓慢上升,并检测有料盘后停止
/// </summary>
......@@ -533,22 +523,7 @@ namespace OnlineStore.DeviceLibrary
/// 入料模块扫码
/// </summary>
internal static int W102_FeedScanCode = 102;
/// <summary>
/// 入料横移机构空闲
/// </summary>
internal static int W103_FeedNoMove = 103;
/// <summary>
/// 移栽模块可移栽出库
/// </summary>
internal static int W201_ProvidingCanOut = 201;
/// <summary>
/// 等待出料流水线可以接收料盘
/// </summary>
internal static int W202_DLineCanOut = 202;
/// <summary>
///等待出料皮带线扫码结束
/// </summary>
internal static int W301_DLineScanCode = 301;
}
public enum LineMoveType
{
......
......@@ -541,7 +541,7 @@ namespace OnlineStore.DeviceLibrary
/// <summary>
/// 料盘移栽:升降轴到P3
/// </summary>
FI_22_UpdownAxisToP3,
FI_22_UpdownToP3,
/// <summary>
/// 料盘移栽:上料横移机构夹紧
......@@ -550,7 +550,7 @@ namespace OnlineStore.DeviceLibrary
/// <summary>
/// 料盘移栽:升降伺服到P1点
/// </summary>
FI_24_UpdownAxisToP1,
FI_24_UpdownToP1,
/// <summary>
/// 料盘移栽:等待没有伺服料盘检测信号
/// </summary>
......@@ -599,18 +599,14 @@ namespace OnlineStore.DeviceLibrary
/// </summary>
FI_34_CylinderRelax,
/// <summary>
/// 料盘移栽: 上料横移机构上升
/// 料盘移栽: 升降伺服到P1点
/// </summary>
FI_35_WaitCylinderUp,
FI_35_AxisToP1,
/// <summary>
/// 料盘移栽:上料横移机构上升,定位或者顶升可以先下降
/// 料盘移栽: 放托盘离开
/// </summary>
FI_36_CylinderUp,
/// <summary>
/// 料盘移栽:升降伺服到P1点
/// </summary>
FI_37_UpDownAxisToP1,
FI_36_TrayMoveOk,
/// <summary>
......
......@@ -21,13 +21,7 @@ namespace OnlineStore.LoadCSVLibrary
public Line_Config(int id, string cid, string type, string filepath)
: base(id, cid, LoadCSVLibrary.DeviceType.Line, filepath)
{
}
///// <summary>
///// 设备是否处于调试状态(1=调试,0=正常)
///// </summary>
//[ConfigProAttribute("IsDebug",false)]
//public int IsDebug { get; set; }
}
/// <summary>
/// 气压检测信号关闭需要持续的时间
......@@ -133,9 +127,7 @@ namespace OnlineStore.LoadCSVLibrary
MustHaveDIList.Add(IO_Type.SuddenStop_BTN);
MustHaveDIList.Add(IO_Type.Reset_BTN);
MustHaveDIList.Add(IO_Type.Airpressure_Check);
//MustHaveDIList.Add(IO_Type.NGCylinder_Before);
//MustHaveDIList.Add(IO_Type.NGCylinder_After);
MustHaveDIList.Add(IO_Type.Airpressure_Check);
MustHaveDIList.Add(IO_Type.TopCylinder_Up);
MustHaveDIList.Add(IO_Type.TopCylinder_Down);
......@@ -143,14 +135,7 @@ namespace OnlineStore.LoadCSVLibrary
MustHaveDOList.Add(IO_Type.AutoRun_HddLed);
MustHaveDOList.Add(IO_Type.RunSign_HddLed);
MustHaveDOList.Add(IO_Type.Alarm_HddLed);
MustHaveDOList.Add(IO_Type.Alarm_Buzzer);
//MustHaveDOList.Add(IO_Type.DriveMotor_Run1);
//MustHaveDOList.Add(IO_Type.DriveMotor_Run2);
//MustHaveDOList.Add(IO_Type.DriveMotor_Run3);
//MustHaveDOList.Add(IO_Type.DriveMotor_Run4);
//MustHaveDOList.Add(IO_Type.SW4_MotorRun);
//MustHaveDOList.Add(IO_Type.NGCylinder_Before);
//MustHaveDOList.Add(IO_Type.NGCylinder_After);
MustHaveDOList.Add(IO_Type.Alarm_Buzzer);
MustHaveDOList.Add(IO_Type.TopCylinder_Up);
MustHaveDOList.Add(IO_Type.TopCylinder_Down);
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!