Commit 2a83d3c4 张东亮

0428

1 个父辈 3c66cc7b
......@@ -14,6 +14,7 @@
<add key="AGVServerPort" value="9501"/>
<add key="Use_Fleet" value="False"/>
<add key="ChargeThreshold" value="20,90"/>
<add key="MixingString" value="B1,B2"/>
<add key="LimitPoints" value="0,0;0,0;0,0;0,0"/>
</appSettings>
......
......@@ -55,8 +55,6 @@
this.tabPage3 = new System.Windows.Forms.TabPage();
this.groupBox1 = new System.Windows.Forms.GroupBox();
this.richTextBox1 = new System.Windows.Forms.RichTextBox();
this.groupBox2 = new System.Windows.Forms.GroupBox();
this.tabControlAGV = new System.Windows.Forms.TabControl();
this.tableLayoutPanel4 = new System.Windows.Forms.TableLayoutPanel();
this.flowPanelKanBan = new System.Windows.Forms.FlowLayoutPanel();
this.lblCharge1 = new System.Windows.Forms.Label();
......@@ -78,7 +76,6 @@
this.groupBox4.SuspendLayout();
this.tabPage3.SuspendLayout();
this.groupBox1.SuspendLayout();
this.groupBox2.SuspendLayout();
this.tableLayoutPanel4.SuspendLayout();
this.SuspendLayout();
//
......@@ -109,6 +106,7 @@
this.tabControl1.SelectedIndex = 0;
this.tabControl1.Size = new System.Drawing.Size(1184, 450);
this.tabControl1.TabIndex = 7;
this.tabControl1.SelectedIndexChanged += new System.EventHandler(this.tabControl1_SelectedIndexChanged);
//
// tabPage1
//
......@@ -339,13 +337,12 @@
// tabPage3
//
this.tabPage3.Controls.Add(this.groupBox1);
this.tabPage3.Controls.Add(this.groupBox2);
this.tabPage3.Location = new System.Drawing.Point(4, 22);
this.tabPage3.Name = "tabPage3";
this.tabPage3.Padding = new System.Windows.Forms.Padding(3);
this.tabPage3.Size = new System.Drawing.Size(1176, 424);
this.tabPage3.TabIndex = 2;
this.tabPage3.Text = "AGV&日志";
this.tabPage3.Text = "日志";
this.tabPage3.UseVisualStyleBackColor = true;
//
// groupBox1
......@@ -354,7 +351,7 @@
this.groupBox1.Dock = System.Windows.Forms.DockStyle.Fill;
this.groupBox1.Location = new System.Drawing.Point(3, 3);
this.groupBox1.Name = "groupBox1";
this.groupBox1.Size = new System.Drawing.Size(752, 418);
this.groupBox1.Size = new System.Drawing.Size(1170, 418);
this.groupBox1.TabIndex = 33;
this.groupBox1.TabStop = false;
this.groupBox1.Text = "日志";
......@@ -364,32 +361,10 @@
this.richTextBox1.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox1.Location = new System.Drawing.Point(3, 17);
this.richTextBox1.Name = "richTextBox1";
this.richTextBox1.Size = new System.Drawing.Size(746, 398);
this.richTextBox1.Size = new System.Drawing.Size(1164, 398);
this.richTextBox1.TabIndex = 0;
this.richTextBox1.Text = "";
//
// groupBox2
//
this.groupBox2.Controls.Add(this.tabControlAGV);
this.groupBox2.Dock = System.Windows.Forms.DockStyle.Right;
this.groupBox2.Location = new System.Drawing.Point(755, 3);
this.groupBox2.Margin = new System.Windows.Forms.Padding(2);
this.groupBox2.Name = "groupBox2";
this.groupBox2.Padding = new System.Windows.Forms.Padding(2);
this.groupBox2.Size = new System.Drawing.Size(418, 418);
this.groupBox2.TabIndex = 32;
this.groupBox2.TabStop = false;
this.groupBox2.Text = "AGV手动";
//
// tabControlAGV
//
this.tabControlAGV.Dock = System.Windows.Forms.DockStyle.Fill;
this.tabControlAGV.Location = new System.Drawing.Point(2, 16);
this.tabControlAGV.Name = "tabControlAGV";
this.tabControlAGV.SelectedIndex = 0;
this.tabControlAGV.Size = new System.Drawing.Size(414, 400);
this.tabControlAGV.TabIndex = 47;
//
// tableLayoutPanel4
//
this.tableLayoutPanel4.ColumnCount = 1;
......@@ -511,7 +486,6 @@
this.groupBox4.PerformLayout();
this.tabPage3.ResumeLayout(false);
this.groupBox1.ResumeLayout(false);
this.groupBox2.ResumeLayout(false);
this.tableLayoutPanel4.ResumeLayout(false);
this.ResumeLayout(false);
......@@ -524,7 +498,6 @@
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel4;
private System.Windows.Forms.FlowLayoutPanel flowPanelKanBan;
private System.Windows.Forms.TabPage tabPage3;
private System.Windows.Forms.GroupBox groupBox2;
private System.Windows.Forms.Label lblCharge1;
private System.Windows.Forms.Label lblCharge2;
private System.Windows.Forms.Label lblStandy1;
......@@ -532,7 +505,6 @@
private System.Windows.Forms.Label lblStandy3;
private System.Windows.Forms.Label lblStandy4;
private System.Windows.Forms.Label lblLimit;
private System.Windows.Forms.TabControl tabControlAGV;
private System.Windows.Forms.GroupBox groupBox1;
private System.Windows.Forms.RichTextBox richTextBox1;
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2;
......
......@@ -44,6 +44,7 @@ namespace AGVControl
}
));
}
static Dictionary<string, Form> agvManual = new Dictionary<string, Form>();
private void ShowConfig()
{
int n;
......@@ -53,8 +54,10 @@ namespace AGVControl
if (input != null && input.Length == 4)
DeviceLibrary.Context.agvInfo[i].IsExistShelf = input[3];
flowPanelKanBan.Controls.Add(DeviceLibrary.Context.agvInfo[i].StateKanban);
AddForm(DeviceLibrary.Context.agvInfo[i].Name, new Manual(DeviceLibrary.Context.agvInfo[i]));
//AddForm(DeviceLibrary.Context.agvInfo[i].Name, new Manual(DeviceLibrary.Context.agvInfo[i]));
DeviceLibrary.Context.agvInfo[i].StateKanban.Init();
Context.agvInfo[i].StateKanban.Click += StateKanban_Click;
agvManual.Add(DeviceLibrary.Context.agvInfo[i].Name, new Manual(DeviceLibrary.Context.agvInfo[i]));
}
for (int i = 0; i < DeviceLibrary.Context.nodeInfo.Count; i++)
......@@ -71,6 +74,25 @@ namespace AGVControl
}
}
private void StateKanban_Click(object sender, EventArgs e)
{
if (sender is AGV_UI.Status)
{
AGV_UI.Status status = (AGV_UI.Status)sender;
if (agvManual[status.AGVName].IsDisposed)
{
Agv_Info agv = Context.agvInfo.Find(s => s.Name.Equals(status.AGVName));
if(agv !=null)
{
agvManual[status.AGVName] = new Manual(agv);
agvManual[status.AGVName].Show();
}
}
else
agvManual[status.AGVName].Show();
}
}
private void ItemShow_Click(object sender, EventArgs e)
{
Show();
......@@ -129,8 +151,8 @@ namespace AGVControl
if (idx > -1)
{
DeviceLibrary.Context.nodeInfo[idx].Online = online;
DeviceLibrary.Context.nodeInfo[idx].IsUse = online;
DgvNode.Rows[idx].DefaultCellStyle.ForeColor = online ? Color.Black : Color.Red;
bool isuse = DeviceLibrary.Context.nodeInfo[idx].IsUse;
DgvNode.Rows[idx].DefaultCellStyle.ForeColor = online && isuse ? Color.Black : Color.Red;
DgvNode.Rows[idx].SetValues(DeviceLibrary.Context.nodeInfo[idx].LineName, DeviceLibrary.Context.nodeInfo[idx].Action, DeviceLibrary.Context.nodeInfo[idx].Shelf, DeviceLibrary.Context.nodeInfo[idx].RFID, DeviceLibrary.Context.nodeInfo[idx].Online, DeviceLibrary.Context.nodeInfo[idx].IsUse);
}
}
......@@ -277,7 +299,7 @@ namespace AGVControl
//form.Anchor = ((AnchorStyles)((AnchorStyles.Top | AnchorStyles.Right | AnchorStyles.Bottom | AnchorStyles.Left)));
form.Show();
// tabPageList.Add(lineTabPage);
tabControlAGV.Controls.Add(lineTabPage);
//tabControlAGV.Controls.Add(lineTabPage);
}
private void button1_Click(object sender, EventArgs e)
......@@ -298,5 +320,11 @@ namespace AGVControl
}
textBox1.Text = "";
}
private void tabControl1_SelectedIndexChanged(object sender, EventArgs e)
{
if (tabControl1.SelectedIndex == 1)
LogUtil.logBox = richTextBox1;
}
}
}
......@@ -56,6 +56,7 @@
this.pictureBox2 = new System.Windows.Forms.PictureBox();
this.pictureBox3 = new System.Windows.Forms.PictureBox();
this.pictureBox4 = new System.Windows.Forms.PictureBox();
this.btnExit = new System.Windows.Forms.Button();
this.panelInfo.SuspendLayout();
this.grpBxRunMode.SuspendLayout();
this.grpBxOperation.SuspendLayout();
......@@ -223,7 +224,6 @@
//
// timer1
//
this.timer1.Enabled = true;
this.timer1.Interval = 1000;
this.timer1.Tick += new System.EventHandler(this.timer1_Tick);
//
......@@ -360,11 +360,23 @@
this.pictureBox4.TabIndex = 3;
this.pictureBox4.TabStop = false;
//
// btnExit
//
this.btnExit.Font = new System.Drawing.Font("宋体", 9F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic))), System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnExit.Location = new System.Drawing.Point(95, 307);
this.btnExit.Name = "btnExit";
this.btnExit.Size = new System.Drawing.Size(149, 40);
this.btnExit.TabIndex = 5;
this.btnExit.Text = "退出";
this.btnExit.UseVisualStyleBackColor = true;
this.btnExit.Click += new System.EventHandler(this.btnExit_Click);
//
// Manual
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(379, 319);
this.ClientSize = new System.Drawing.Size(379, 354);
this.Controls.Add(this.btnExit);
this.Controls.Add(this.groupBox1);
this.Controls.Add(this.grpBxMission);
this.Controls.Add(this.grpBxOperation);
......@@ -426,5 +438,6 @@
private System.Windows.Forms.PictureBox pictureBox2;
private System.Windows.Forms.PictureBox pictureBox3;
private System.Windows.Forms.PictureBox pictureBox4;
private System.Windows.Forms.Button btnExit;
}
}
......@@ -31,6 +31,7 @@ namespace AGVControl
cmbBxMission.SelectedIndex = 0;
InState.AddRange(new PictureBox[] { pictureBox1,pictureBox2,pictureBox3,pictureBox4});
OutState.AddRange(new PictureBox[] { pictureBox5, pictureBox6, pictureBox7, pictureBox8 });
timer1.Enabled = true;
isInit = true;
}
......@@ -166,7 +167,9 @@ namespace AGVControl
private void btnExit_Click(object sender, EventArgs e)
{
timer1.Enabled = false;
Close();
Dispose();
}
List<PictureBox> InState = new List<PictureBox>();
List<PictureBox> OutState = new List<PictureBox>();
......
......@@ -5,11 +5,11 @@ using System.Runtime.InteropServices;
// 有关程序集的一般信息由以下
// 控制。更改这些特性值可修改
// 与程序集关联的信息。
[assembly: AssemblyTitle("AGVControl-ProductionLine")]
[assembly: AssemblyTitle("AGVDispatch")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("AGVControl-ProductionLine")]
[assembly: AssemblyProduct("AGVDispatch")]
[assembly: AssemblyCopyright("Copyright © 2020")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
......
......@@ -70,7 +70,7 @@
// picBxConn
//
this.picBxConn.Dock = System.Windows.Forms.DockStyle.Left;
this.picBxConn.Image = global::AGV_UI.Properties.Resources.offline;
this.picBxConn.Image = ((System.Drawing.Image)(resources.GetObject("picBxConn.Image")));
this.picBxConn.Location = new System.Drawing.Point(0, 0);
this.picBxConn.Name = "picBxConn";
this.picBxConn.Size = new System.Drawing.Size(51, 47);
......@@ -105,7 +105,7 @@
//
this.lblAGVState.Dock = System.Windows.Forms.DockStyle.Right;
this.lblAGVState.Font = new System.Drawing.Font("宋体", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblAGVState.Image = global::AGV_UI.Properties.Resources.Unknown;
this.lblAGVState.Image = ((System.Drawing.Image)(resources.GetObject("lblAGVState.Image")));
this.lblAGVState.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lblAGVState.Location = new System.Drawing.Point(160, 0);
this.lblAGVState.Name = "lblAGVState";
......@@ -118,14 +118,14 @@
//
this.lblTask.Dock = System.Windows.Forms.DockStyle.Left;
this.lblTask.Font = new System.Drawing.Font("宋体", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblTask.Image = global::AGV_UI.Properties.Resources.task;
this.lblTask.Image = ((System.Drawing.Image)(resources.GetObject("lblTask.Image")));
this.lblTask.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lblTask.Location = new System.Drawing.Point(0, 0);
this.lblTask.Name = "lblTask";
this.lblTask.Size = new System.Drawing.Size(216, 50);
this.lblTask.Size = new System.Drawing.Size(154, 50);
this.lblTask.TabIndex = 0;
this.lblTask.Text = "无任务";
this.lblTask.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.lblTask.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
//
// flowPanelMissionState
//
......@@ -136,6 +136,7 @@
this.flowPanelMissionState.Name = "flowPanelMissionState";
this.flowPanelMissionState.Size = new System.Drawing.Size(287, 230);
this.flowPanelMissionState.TabIndex = 2;
this.flowPanelMissionState.Click += new System.EventHandler(this.flowPanelMissionState_Click);
//
// Status
//
......
......@@ -129,5 +129,9 @@ namespace AGV_UI
));
}
private void flowPanelMissionState_Click(object sender, EventArgs e)
{
this.OnClick(e);
}
}
}
......@@ -128,4 +128,50 @@
QmCC
</value>
</data>
<data name="picBxConn.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAJgSURBVFhH7Ze7axRRFIfXFygqmiKCaWwMaGVhJZr4bhWs9C9IFCxs1EZBRfMoTGmlrZ1/gq/G
YCn4BlGCIL5AfCuov+/svd6zN7MzbHazSZEPPmbPmcnMmbnn3pnUFsgYlr31n93nmPwrH8g5KWKtvC8p
4qnsk12HO+cJzMaTOCwX13+WMxtFnJKc77xFJfSEbaeL2C9/yz/yIIki1sg38ohFnS/iuORcr+RyEjnn
JAfctKhOO0VsCNvIIhmb/AQJzzLJ3bNzkIRjJkVckB/kRosSDAXn4VpLSEQOSHY8tGg6rRTBnd6QHHub
RAbXYN+ARYEJSfKsRYmdkuKglSLop3eSY3eTcIxJ8uMWBe5JknstSlyVP+U2ixqLeCs/ypfykmQYPWck
x12xKLFPkr9jUeC1JLneosQTSX6HRXUoIvaL96L0bJHkH1mU6Jfkn1kU+CZJ5tPjiyTPI/Vskt8l+16E
7ZT0rJbkP1mUWCXJf7YoEC+00qLEV0l+nUWNUERsKKTrPYUXEoWFPZck82kTh2CrRdPxT4Km840Zh+Cx
RYk4BLzw/nNXktxjUeKaJE/nNmOzjD3hZ0dVE96yKHBZkhyxKMEUIs8F8j7w+NnBlidZNQ0bmnaXJJkv
RCwqLM3sux7iZvgifoRt2UK03aLAUvlesiMfBu6G+V75KhW+CIzrR6TpUgynJTsnZX6n+YuljHw4Yk+U
voxghWQuc8AQiTYoKqLydQyHJB8Nv2S+LLeKL4JpXvlBEqE7+aOTFrWHLwJHZSV8OPIB2SmKhqPrzLtP
/qMk5gKK4N+/BQK12j/uTcqYd/4INwAAAABJRU5ErkJggg==
</value>
</data>
<data name="lblAGVState.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAIsSURBVFhH7ZXbS8MwFMb3v+0P9AZThoIiw9vEBwXBKYKoQ0XUFweK4AVvjE0GQpOmacw57Rlr
U222PriHfPDR9Zyv6a9tkpWcnJws1CyX1Tg6xosAvYmJsbIDLGoHWNQOsKhzAf1GQ8nPTzTf2jL6YLaw
0M94k5OZmUHLh4co//ycm88FFKenihR+fytWqRgZtrgYJ5TypqaM/qD56mqcjPTbQ5OHAgQF19dGZhhA
uB4Udjp4DFqtzBzZGlC+vOjRAj1yqPjaWiJjDTg9rULPw5y/vY1HJYTyMr4K2RowuLtTotnE3/D03sxM
P2ML6O/sYEa+v+M5vUWY5+ks2R7w/h5vDpMbJC4u+hlbQPn4iBn/8BDPxfExnsu3NyNLHg5Qn7PlZT2i
RPNaLapZALL5eZweYFatRjW9+klsacm4Bjw0INbOzrAWttsIZAPYf1uwtQzU4e2BxPl5ok4eCRDmX9jt
Yl0cHVkB0nyTr684PcgEGPZ6mXviaIDafH09+mR6FfJ6HTOgLEC+shJ3/xaMk752ZEAw7Wm0cEBZgMHN
DfZg9fLNTcPy4wP7we2tcW0hQPzUX1/YJxmAOqM4x56/v5/sxfYPDrCftScWA9TmGxvYJ6UB/d3dqKFX
PZubS/TIbHZW30D/CWj5e3uJXi4g3EA+PeEmne6RYVVDBpye6OLkBOvB1VWinra4vIzuo8carOcC/rcd
YFE7wKJ2gEVtAI6jYzwnJ6ffVSr9APX72FNpHTfwAAAAAElFTkSuQmCC
</value>
</data>
<data name="lblTask.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAIuSURBVGhD7Zq9TlRRFIVvo7UghPgCYEIg8bmIj4EaYsIL2FlaUFFCA53xpzDRThs1IVQ0SChw
beJOjpc1M3fNXsAU8yVfMZx7vtknM8xkJtPN+Z8deA6vRGPPKzgzXEA26BD/wFvlAXwJf0A2QJiwNcWE
rYUxwwsYM8nEIVi0NWFriglba92GMr8gi7UmbE0xYWutP6EMC/VN2Jpiwtb6yrBI34StKSZsra+MErmt
Vy12vYwSifeRS8j2jDP2jHsfYXtkLJEilhkskSKWGSyRIpYZLJEilhkskSKWGSyRIpYZLJEilhkskREs
wz14Co/hKmRYZrBERnAI2+4RZLTXpDKWyAjW4QnM7hlktPedylgiDYtwH65d3+q6TRhPrei+iz8Q+vcf
ylgi/3gMP8JoxOecpzB4BuNptXR96yb9+w9lLBHwBH6FbSeeVhtwEu2eVMYRiUfiE2StAzgJtk+mGmGP
RPoeLsBJsL0ylYjjEAHbLzNtJA7xDbL9yiEC1pCZJuI8RMA6MmrEfYiAtWSUyKRDPILTwHoyQyPxEvsZ
suu/wBU4LawpMzSyBdm1lUciYV2ZoZE3sH+d4xBBvxvKDI18gO01rkMEbTeVGRr5DuMf/S18DuNDk4uh
M4zFEilimcESKWKZwRIpYpnBEilimcESKWKZwRIpYpnBEilimYFFZkEZFpkFZX5DFrpP43swmSE/GLhr
X0OZ/AlH+9XmfRlfqe7Ch3DOnLuj6/4CuzhP2xu9LUAAAAAASUVORK5CYII=
</value>
</data>
</root>
\ No newline at end of file
......@@ -64,22 +64,22 @@ namespace Common
public const string A3 = "A3";
/// <summary>
/// 料仓1入口
/// 7寸盘入口
/// </summary>
public const string D1 = "D1";
/// <summary>
/// 料仓1出口
/// 7寸盘出口
/// </summary>
public const string D2 = "D2";
/// <summary>
/// 料仓2入口
/// 混合料仓入口
/// </summary>
public const string D3 = "D3";
/// <summary>
/// 料仓2出口
/// 混合料仓出口
/// </summary>
public const string D4 = "D4";
......@@ -88,5 +88,6 @@ namespace Common
public const string AGVServerPort = "AGVServerPort";
public const string Use_Fleet = "Use_Fleet";
public const string log4net_configname = "log4net_configname";
public const string MixingString = "MixingString";
}
}
......@@ -222,8 +222,11 @@ namespace DeviceLibrary
{
if (JobType.FindNeedEnterMission(currentAgv, SettingString.D1,false))
{
tarPlace = SettingString.D1;
return true;
if(!BoxInJobType.IsMixString(RFID))
{
tarPlace = SettingString.D1;
return true;
}
}
if (JobType.FindNeedEnterMission(currentAgv, SettingString.D3, false))
{
......

using Common;
using System.Collections.Generic;
namespace DeviceLibrary
{
......@@ -9,6 +10,7 @@ namespace DeviceLibrary
/// </summary>
public class BoxInJobType : JobType
{
static string[] mixString = AppConfigHelper.GetValue(SettingString.MixingString).Split(',');
/// <summary>
/// 料仓料串任务
......@@ -25,9 +27,9 @@ namespace DeviceLibrary
//检查设备1入口需要空料串用作出库
if (FindNeedEnterMission(currentAgv, SettingString.D1, true))
{
if(FindNeedLeaveMission(currentAgv,SettingString.A1,out rfid,true))
if (FindNeedLeaveMission(currentAgv, SettingString.A1, out rfid, true))
{
LogUtil.info(string.Format("{0} [{1}]需要空料串,去[{2}]取料串[{3}]", currentAgv.Name, SettingString.D1,SettingString.A1, rfid));
LogUtil.info(string.Format("{0} [{1}]需要空料串,去[{2}]取料串[{3}]", currentAgv.Name, SettingString.D1, SettingString.A1, rfid));
return new GetShelfJob(currentAgv.Place, SettingString.A1, rfid, false);
}
}
......@@ -43,30 +45,41 @@ namespace DeviceLibrary
}
//检查设备1入口需要满料
if (FindNeedEnterMission(currentAgv, SettingString.D1, false))
//混合仓入口需要满料
if (FindNeedEnterMission(currentAgv, SettingString.D3, false))
{
if(FindNeedLeaveMission(currentAgv, SettingString.A3, out rfid,false))
if (FindNeedLeaveMission(currentAgv, SettingString.A3, out rfid, false))
{
LogUtil.info(string.Format("{0} [{1}]需要满料串,去[{2}]取料串[{3}]", currentAgv.Name, SettingString.D1, SettingString.A3, rfid));
LogUtil.info(string.Format("{0} [{1}]需要满料串,去[{2}]取料串[{3}]", currentAgv.Name, SettingString.D3, SettingString.A3, rfid));
return new GetShelfJob(currentAgv.Place, SettingString.A3, rfid, true);
}
}
//检查设备2入口需要满料
if (FindNeedEnterMission(currentAgv, SettingString.D3, false))
//7寸盘入口需要满料
if (FindNeedEnterMission(currentAgv, SettingString.D1, false))
{
if (FindNeedLeaveMission(currentAgv, SettingString.A3, out rfid, false))
{
LogUtil.info(string.Format("{0} [{1}]需要满料串,去[{2}]取料串[{3}]", currentAgv.Name, SettingString.D3, SettingString.A3, rfid));
if (IsMixString(rfid))
return null;
LogUtil.info(string.Format("{0} [{1}]需要满料串,去[{2}]取料串[{3}]", currentAgv.Name, SettingString.D1, SettingString.A3, rfid));
return new GetShelfJob(currentAgv.Place, SettingString.A3, rfid, true);
}
}
return null;
}
public static bool IsMixString(string rfid)
{
if (mixString != null && mixString.Length > 0)
foreach (string item in mixString)
{
if (item.Equals(rfid))
return true;
}
return false;
}
}
}
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!