Commit 517829cb 张东亮

添加与服务器交互功能

1 个父辈 22bccea6
文件属性发生变化
文件属性发生变化
...@@ -20,7 +20,8 @@ ...@@ -20,7 +20,8 @@
<add key="ConfigPath_TrayList" value="\LineConfig\TrayList.data" /> <add key="ConfigPath_TrayList" value="\LineConfig\TrayList.data" />
<add key="ImagePath" value="\Images\" /> <add key="ImagePath" value="\Images\" />
<add key="UseBuzzer" value="0" /> <add key="UseBuzzer" value="0" />
<add key="Line_CID" value="01" /> <!--获取库位的料仓cid列表;多个用,分割-->
<add key="Line_CID" value="01,02,03,04,05,06" />
<!--end one store config--> <!--end one store config-->
<!--二维码类型列表配置,用#分割,一维码=Barcode 二维码: QR Code#Data Matrix ECC 200#Micro QR Code--> <!--二维码类型列表配置,用#分割,一维码=Barcode 二维码: QR Code#Data Matrix ECC 200#Micro QR Code-->
<add key="CodeType" value="Data Matrix ECC 200#QR Code" /> <add key="CodeType" value="Data Matrix ECC 200#QR Code" />
...@@ -63,6 +64,8 @@ ...@@ -63,6 +64,8 @@
<add key="TrayInRobotInfo" value="" /> <add key="TrayInRobotInfo" value="" />
<!--出料口上的料盘信息--> <!--出料口上的料盘信息-->
<add key="TrayInOutletInfo" value="" /> <add key="TrayInOutletInfo" value="" />
<!--入料口上的料盘信息-->
<add key="TrayInInletInfo" value="" />
<!--夹爪夹紧时忽略的料号列表,多个用#分割--> <!--夹爪夹紧时忽略的料号列表,多个用#分割-->
<add key="PNList" value="3402021720#3402021721#3402021100#3402021101#3402021102#3402021103#3402021104#3402021105#3402021106#3402021107#3402021108#3402021109#3402021112#3402021122" /> <add key="PNList" value="3402021720#3402021721#3402021100#3402021101#3402021102#3402021103#3402021104#3402021105#3402021106#3402021107#3402021108#3402021109#3402021112#3402021122" />
</appSettings> </appSettings>
......
...@@ -36,9 +36,12 @@ ...@@ -36,9 +36,12 @@
this.tabPage2 = new System.Windows.Forms.TabPage(); this.tabPage2 = new System.Windows.Forms.TabPage();
this.panel1 = new System.Windows.Forms.Panel(); this.panel1 = new System.Windows.Forms.Panel();
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel(); this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.robotDataControl = new OnlineStore.XLRStore.ReelDataControl();
this.robotControl = new OnlineStore.XLRStore.EquipControl(); this.robotControl = new OnlineStore.XLRStore.EquipControl();
this.inletControl = new OnlineStore.XLRStore.EquipControl(); this.inletControl = new OnlineStore.XLRStore.EquipControl();
this.outletControl = new OnlineStore.XLRStore.EquipControl(); this.outletControl = new OnlineStore.XLRStore.EquipControl();
this.outletDataControl = new OnlineStore.XLRStore.ReelDataControl();
this.inletDataControl = new OnlineStore.XLRStore.ReelDataControl();
this.ngboxDataControl = new OnlineStore.XLRStore.ReelDataControl(); this.ngboxDataControl = new OnlineStore.XLRStore.ReelDataControl();
this.lblStatus = new System.Windows.Forms.Label(); this.lblStatus = new System.Windows.Forms.Label();
this.lblWarnMsg = new System.Windows.Forms.Label(); this.lblWarnMsg = new System.Windows.Forms.Label();
...@@ -154,20 +157,37 @@ ...@@ -154,20 +157,37 @@
this.tableLayoutPanel1.ColumnCount = 2; this.tableLayoutPanel1.ColumnCount = 2;
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F)); this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F)); this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel1.Controls.Add(this.robotDataControl, 0, 3);
this.tableLayoutPanel1.Controls.Add(this.robotControl, 0, 0); this.tableLayoutPanel1.Controls.Add(this.robotControl, 0, 0);
this.tableLayoutPanel1.Controls.Add(this.inletControl, 0, 1); this.tableLayoutPanel1.Controls.Add(this.inletControl, 0, 1);
this.tableLayoutPanel1.Controls.Add(this.outletControl, 1, 1); this.tableLayoutPanel1.Controls.Add(this.outletControl, 1, 1);
this.tableLayoutPanel1.Controls.Add(this.ngboxDataControl, 0, 2); this.tableLayoutPanel1.Controls.Add(this.outletDataControl, 1, 2);
this.tableLayoutPanel1.Controls.Add(this.inletDataControl, 0, 2);
this.tableLayoutPanel1.Controls.Add(this.ngboxDataControl, 1, 3);
this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill; this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0); this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
this.tableLayoutPanel1.Name = "tableLayoutPanel1"; this.tableLayoutPanel1.Name = "tableLayoutPanel1";
this.tableLayoutPanel1.RowCount = 3; this.tableLayoutPanel1.RowCount = 4;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F)); this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 25F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F)); this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 25F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F)); this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 25F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 25F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(988, 605); this.tableLayoutPanel1.Size = new System.Drawing.Size(988, 605);
this.tableLayoutPanel1.TabIndex = 0; this.tableLayoutPanel1.TabIndex = 0;
// //
// robotDataControl
//
this.robotDataControl.BackColor = System.Drawing.Color.White;
this.robotDataControl.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.robotDataControl.ColorStatus = System.Drawing.Color.White;
this.robotDataControl.Dock = System.Windows.Forms.DockStyle.Fill;
this.robotDataControl.Location = new System.Drawing.Point(3, 456);
this.robotDataControl.Name = "robotDataControl";
this.robotDataControl.ReelText = "机器人夹爪物料信息";
this.robotDataControl.Size = new System.Drawing.Size(488, 146);
this.robotDataControl.TabIndex = 8;
//
// robotControl // robotControl
// //
this.robotControl.BackColor = System.Drawing.Color.White; this.robotControl.BackColor = System.Drawing.Color.White;
...@@ -179,7 +199,7 @@ ...@@ -179,7 +199,7 @@
this.robotControl.Location = new System.Drawing.Point(3, 3); this.robotControl.Location = new System.Drawing.Point(3, 3);
this.robotControl.MoveInfo = "暂无出入库"; this.robotControl.MoveInfo = "暂无出入库";
this.robotControl.Name = "robotControl"; this.robotControl.Name = "robotControl";
this.robotControl.Size = new System.Drawing.Size(982, 195); this.robotControl.Size = new System.Drawing.Size(982, 145);
this.robotControl.TabIndex = 0; this.robotControl.TabIndex = 0;
this.robotControl.WorkStatus = "暂未启动"; this.robotControl.WorkStatus = "暂未启动";
// //
...@@ -190,10 +210,10 @@ ...@@ -190,10 +210,10 @@
this.inletControl.ColorStatus = System.Drawing.Color.White; this.inletControl.ColorStatus = System.Drawing.Color.White;
this.inletControl.Dock = System.Windows.Forms.DockStyle.Fill; this.inletControl.Dock = System.Windows.Forms.DockStyle.Fill;
this.inletControl.EquipText = "入料口"; this.inletControl.EquipText = "入料口";
this.inletControl.Location = new System.Drawing.Point(3, 204); this.inletControl.Location = new System.Drawing.Point(3, 154);
this.inletControl.MoveInfo = "暂无出入库"; this.inletControl.MoveInfo = "暂无出入库";
this.inletControl.Name = "inletControl"; this.inletControl.Name = "inletControl";
this.inletControl.Size = new System.Drawing.Size(488, 195); this.inletControl.Size = new System.Drawing.Size(488, 145);
this.inletControl.TabIndex = 1; this.inletControl.TabIndex = 1;
this.inletControl.WorkStatus = "暂未启动"; this.inletControl.WorkStatus = "暂未启动";
// //
...@@ -204,24 +224,48 @@ ...@@ -204,24 +224,48 @@
this.outletControl.ColorStatus = System.Drawing.Color.White; this.outletControl.ColorStatus = System.Drawing.Color.White;
this.outletControl.Dock = System.Windows.Forms.DockStyle.Fill; this.outletControl.Dock = System.Windows.Forms.DockStyle.Fill;
this.outletControl.EquipText = "出料口"; this.outletControl.EquipText = "出料口";
this.outletControl.Location = new System.Drawing.Point(497, 204); this.outletControl.Location = new System.Drawing.Point(497, 154);
this.outletControl.MoveInfo = "暂无出入库"; this.outletControl.MoveInfo = "暂无出入库";
this.outletControl.Name = "outletControl"; this.outletControl.Name = "outletControl";
this.outletControl.Size = new System.Drawing.Size(488, 195); this.outletControl.Size = new System.Drawing.Size(488, 145);
this.outletControl.TabIndex = 2; this.outletControl.TabIndex = 2;
this.outletControl.WorkStatus = "暂未启动"; this.outletControl.WorkStatus = "暂未启动";
// //
// outletDataControl
//
this.outletDataControl.BackColor = System.Drawing.Color.White;
this.outletDataControl.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.outletDataControl.ColorStatus = System.Drawing.Color.White;
this.outletDataControl.Dock = System.Windows.Forms.DockStyle.Fill;
this.outletDataControl.Location = new System.Drawing.Point(497, 305);
this.outletDataControl.Name = "outletDataControl";
this.outletDataControl.ReelText = "出料口物料信息";
this.outletDataControl.Size = new System.Drawing.Size(488, 145);
this.outletDataControl.TabIndex = 5;
//
// inletDataControl
//
this.inletDataControl.BackColor = System.Drawing.Color.White;
this.inletDataControl.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.inletDataControl.ColorStatus = System.Drawing.Color.White;
this.inletDataControl.Dock = System.Windows.Forms.DockStyle.Fill;
this.inletDataControl.Location = new System.Drawing.Point(3, 305);
this.inletDataControl.Name = "inletDataControl";
this.inletDataControl.ReelText = "入料口物料信息";
this.inletDataControl.Size = new System.Drawing.Size(488, 145);
this.inletDataControl.TabIndex = 7;
//
// ngboxDataControl // ngboxDataControl
// //
this.ngboxDataControl.BackColor = System.Drawing.Color.White; this.ngboxDataControl.BackColor = System.Drawing.Color.White;
this.ngboxDataControl.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.ngboxDataControl.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.ngboxDataControl.ColorStatus = System.Drawing.Color.White; this.ngboxDataControl.ColorStatus = System.Drawing.Color.White;
this.ngboxDataControl.Dock = System.Windows.Forms.DockStyle.Fill; this.ngboxDataControl.Dock = System.Windows.Forms.DockStyle.Fill;
this.ngboxDataControl.Location = new System.Drawing.Point(3, 405); this.ngboxDataControl.Location = new System.Drawing.Point(497, 456);
this.ngboxDataControl.Name = "ngboxDataControl"; this.ngboxDataControl.Name = "ngboxDataControl";
this.ngboxDataControl.ReelText = "NG箱物料信息"; this.ngboxDataControl.ReelText = "NG箱物料信息";
this.ngboxDataControl.Size = new System.Drawing.Size(488, 197); this.ngboxDataControl.Size = new System.Drawing.Size(488, 146);
this.ngboxDataControl.TabIndex = 3; this.ngboxDataControl.TabIndex = 6;
// //
// lblStatus // lblStatus
// //
...@@ -618,6 +662,9 @@ ...@@ -618,6 +662,9 @@
private EquipControl robotControl; private EquipControl robotControl;
private EquipControl inletControl; private EquipControl inletControl;
private EquipControl outletControl; private EquipControl outletControl;
private ReelDataControl robotDataControl;
private ReelDataControl outletDataControl;
private ReelDataControl inletDataControl;
private ReelDataControl ngboxDataControl; private ReelDataControl ngboxDataControl;
} }
} }
......
...@@ -122,6 +122,9 @@ namespace OnlineStore.XLRStore ...@@ -122,6 +122,9 @@ namespace OnlineStore.XLRStore
ShowNGState(); ShowNGState();
ngboxDataControl.linkClear.Click += LinkClear_ClickA1; ngboxDataControl.linkClear.Click += LinkClear_ClickA1;
inletDataControl.linkClear.Click += LinkClear_Click;
outletDataControl.linkClear.Click += LinkClear_Click1;
robotDataControl.linkClear.Click += LinkClear_Click2;
robotControl.InitData(StoreManager.Client.robotEquip.Name); robotControl.InitData(StoreManager.Client.robotEquip.Name);
inletControl.InitData(StoreManager.Client.inletEquip.Name); inletControl.InitData(StoreManager.Client.inletEquip.Name);
outletControl.InitData(StoreManager.Client.outletEquip.Name); outletControl.InitData(StoreManager.Client.outletEquip.Name);
...@@ -131,7 +134,63 @@ namespace OnlineStore.XLRStore ...@@ -131,7 +134,63 @@ namespace OnlineStore.XLRStore
outletControl.DoubleClick += OutletControl_DoubleClick; outletControl.DoubleClick += OutletControl_DoubleClick;
LoadOk = true; LoadOk = true;
} }
/// <summary>
/// 机器人夹爪清除料盘按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
/// <exception cref="NotImplementedException"></exception>
private void LinkClear_Click2(object sender, EventArgs e)
{
if (BufferDataManager.TrayInRobotInfo == null)
{
return;
}
DialogResult result = MessageBox.Show("确定清除机器人夹爪上的物料缓存?", "", MessageBoxButtons.OKCancel);
if (result.Equals(DialogResult.OK))
{
BufferDataManager.TrayInRobotInfo = null;
LogUtil.info(Name + "清除机器人夹爪上的物料缓存");
}
}
/// <summary>
/// 出料口清除料盘按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
/// <exception cref="NotImplementedException"></exception>
private void LinkClear_Click1(object sender, EventArgs e)
{
if (BufferDataManager.TrayInOutletInfo == null)
{
return;
}
DialogResult result = MessageBox.Show("确定清除出料口的物料缓存?", "", MessageBoxButtons.OKCancel);
if (result.Equals(DialogResult.OK))
{
BufferDataManager.TrayInOutletInfo = null;
LogUtil.info(Name + "清除出料口的物料缓存");
}
}
/// <summary>
/// 入料口清除料盘按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
/// <exception cref="NotImplementedException"></exception>
private void LinkClear_Click(object sender, EventArgs e)
{
if (BufferDataManager.TrayInInletInfo == null)
{
return;
}
DialogResult result = MessageBox.Show("确定清除入料口的物料缓存?", "", MessageBoxButtons.OKCancel);
if (result.Equals(DialogResult.OK))
{
BufferDataManager.TrayInInletInfo = null;
LogUtil.info(Name + "清除入料口的物料缓存");
}
}
private void ShowNGState() private void ShowNGState()
{ {
...@@ -143,7 +202,32 @@ namespace OnlineStore.XLRStore ...@@ -143,7 +202,32 @@ namespace OnlineStore.XLRStore
{ {
ngboxDataControl.ShowData("NG箱物料信息", BufferDataManager.TraysInNGBoxInfo, IO_VALUE.HIGH); ngboxDataControl.ShowData("NG箱物料信息", BufferDataManager.TraysInNGBoxInfo, IO_VALUE.HIGH);
} }
if (BufferDataManager.TrayInInletInfo == null)
{
ngboxDataControl.ShowData("入料口物料信息", BufferDataManager.TrayInInletInfo, IO_VALUE.LOW);
}
else
{
ngboxDataControl.ShowData("入料口物料信息", BufferDataManager.TrayInInletInfo, IO_VALUE.HIGH);
}
if (BufferDataManager.TrayInOutletInfo == null)
{
ngboxDataControl.ShowData("出料口物料信息", BufferDataManager.TrayInOutletInfo, IO_VALUE.LOW);
}
else
{
ngboxDataControl.ShowData("出料口物料信息", BufferDataManager.TrayInOutletInfo, IO_VALUE.HIGH);
}
if (BufferDataManager.TrayInRobotInfo == null)
{
ngboxDataControl.ShowData("机器人夹爪物料信息", BufferDataManager.TrayInRobotInfo, IO_VALUE.LOW);
}
else
{
ngboxDataControl.ShowData("机器人夹爪物料信息", BufferDataManager.TrayInRobotInfo, IO_VALUE.HIGH);
} }
}
private void OutletControl_DoubleClick(object sender, EventArgs e) private void OutletControl_DoubleClick(object sender, EventArgs e)
{ {
tabControl1.SelectedIndex = 3; tabControl1.SelectedIndex = 3;
......
...@@ -80,6 +80,7 @@ ...@@ -80,6 +80,7 @@
this.lblStoreStatus = new System.Windows.Forms.Label(); this.lblStoreStatus = new System.Windows.Forms.Label();
this.btnStart = new System.Windows.Forms.Button(); this.btnStart = new System.Windows.Forms.Button();
this.btnStop = new System.Windows.Forms.Button(); this.btnStop = new System.Windows.Forms.Button();
this.lblrobotTaskInfo = new System.Windows.Forms.Label();
this.groupBox1.SuspendLayout(); this.groupBox1.SuspendLayout();
this.groupBox4.SuspendLayout(); this.groupBox4.SuspendLayout();
this.groupBox3.SuspendLayout(); this.groupBox3.SuspendLayout();
...@@ -328,6 +329,7 @@ ...@@ -328,6 +329,7 @@
// //
// groupBox6 // groupBox6
// //
this.groupBox6.Controls.Add(this.lblrobotTaskInfo);
this.groupBox6.Controls.Add(this.lblInoutInfo); this.groupBox6.Controls.Add(this.lblInoutInfo);
this.groupBox6.Controls.Add(this.lblMoveInfo); this.groupBox6.Controls.Add(this.lblMoveInfo);
this.groupBox6.Controls.Add(this.lblInstoreList); this.groupBox6.Controls.Add(this.lblInstoreList);
...@@ -870,6 +872,17 @@ ...@@ -870,6 +872,17 @@
this.btnStop.UseVisualStyleBackColor = false; this.btnStop.UseVisualStyleBackColor = false;
this.btnStop.Click += new System.EventHandler(this.btnStop_Click); this.btnStop.Click += new System.EventHandler(this.btnStop_Click);
// //
// lblrobotTaskInfo
//
this.lblrobotTaskInfo.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.lblrobotTaskInfo.ForeColor = System.Drawing.Color.Black;
this.lblrobotTaskInfo.Location = new System.Drawing.Point(2, 394);
this.lblrobotTaskInfo.Name = "lblrobotTaskInfo";
this.lblrobotTaskInfo.Size = new System.Drawing.Size(977, 109);
this.lblrobotTaskInfo.TabIndex = 282;
this.lblrobotTaskInfo.Text = "机器人获取任务";
//
// FrmRobotEquip // FrmRobotEquip
// //
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 17F); this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 17F);
...@@ -973,6 +986,7 @@ ...@@ -973,6 +986,7 @@
private System.Windows.Forms.Label lblValue; private System.Windows.Forms.Label lblValue;
private System.Windows.Forms.Button button1; private System.Windows.Forms.Button button1;
private System.Windows.Forms.ComboBox cmbBoxAd; private System.Windows.Forms.ComboBox cmbBoxAd;
private System.Windows.Forms.Label lblrobotTaskInfo;
} }
} }
...@@ -241,6 +241,7 @@ namespace OnlineStore.XLRStore ...@@ -241,6 +241,7 @@ namespace OnlineStore.XLRStore
{ {
lblInoutInfo.Text = ""; lblInoutInfo.Text = "";
} }
lblrobotTaskInfo.Text = SServerManager.RobotTaskInfo;
lblMoveInfo.Text = robotEquip.GetMoveStr();//+ "料仓类型:" + (boxBean.Config.IsBigTray.Equals(1) ? "大料盘" : "小料盘"); lblMoveInfo.Text = robotEquip.GetMoveStr();//+ "料仓类型:" + (boxBean.Config.IsBigTray.Equals(1) ? "大料盘" : "小料盘");
//string canOut = boxBean.CanOutStore(boxBean.DeviceID) ? "可出库" : "不可出库"; //string canOut = boxBean.CanOutStore(boxBean.DeviceID) ? "可出库" : "不可出库";
lblStoreStatus.Text = DeviceBase.GetRunStr(robotEquip.runStatus);// + "(" + canOut + ")"; lblStoreStatus.Text = DeviceBase.GetRunStr(robotEquip.runStatus);// + "(" + canOut + ")";
......
...@@ -103,6 +103,7 @@ namespace OnlineStore.Common ...@@ -103,6 +103,7 @@ namespace OnlineStore.Common
public static string TrayInRobotInfo = "TrayInRobotInfo"; public static string TrayInRobotInfo = "TrayInRobotInfo";
public static string TrayInOutletInfo = "TrayInOutletInfo"; public static string TrayInOutletInfo = "TrayInOutletInfo";
public static string TrayInInletInfo = "TrayInInletInfo";
public static string TraysInNGBoxInfo = "TraysInNGBoxInfo"; public static string TraysInNGBoxInfo = "TraysInNGBoxInfo";
/// <summary> /// <summary>
/// 禁用光栅 /// 禁用光栅
......
...@@ -273,5 +273,7 @@ namespace OnlineStore.Common ...@@ -273,5 +273,7 @@ namespace OnlineStore.Common
public static string executeTime = "executeTime "; public static string executeTime = "executeTime ";
public static string code = "code"; public static string code = "code";
public static string type = "type";
public static string cid = "cid";
} }
} }
...@@ -9,7 +9,7 @@ PRO,0,IO信号超时时间(秒),IOSingle_TimerOut,15,,,,,,,,,,,,,, ...@@ -9,7 +9,7 @@ PRO,0,IO信号超时时间(秒),IOSingle_TimerOut,15,,,,,,,,,,,,,,
PRO,0,机器人IP,Robot_IP,192.168.102.21,,,,,,,,,,,,,, PRO,0,机器人IP,Robot_IP,192.168.102.21,,,,,,,,,,,,,,
PRO,0,料盘高度转换系数,Coeff_Height,0.5,,,,,,,,,,,,,, PRO,0,料盘高度转换系数,Coeff_Height,0.5,,,,,,,,,,,,,,
PRO,0,料盘宽度转换系数,Coeff_Width,0.5,,,,,,,,,,,,,, PRO,0,料盘宽度转换系数,Coeff_Width,0.5,,,,,,,,,,,,,,
PRO,0,扫码的相机名称(多个用#分隔),ScanCodeCamera,GigE:MV-CE200-10GC (00E70964538),,,,,,,,,,,,,, PRO,0,扫码的相机名称(多个用#分隔),ScanCodeCamera,GigE:MV-CE200-10GC (00E70964538)#GigE:MV-CE200-10GC (00E70964539),,,,,,,,,,,,,,
,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,
PRO,0,行走机构_待机点,MoveAxis_P1,0,,,,,,,,,,,, PRO,0,行走机构_待机点,MoveAxis_P1,0,,,,,,,,,,,,
PRO,0,行走机构_入料口,MoveAxis_P2_Inlet,0,,,,,,,,,,,, PRO,0,行走机构_入料口,MoveAxis_P2_Inlet,0,,,,,,,,,,,,
...@@ -76,5 +76,6 @@ DO,1,13寸料盘顶升下降,Inlet_13InchJackDown,9,HC,Y09,,,,,,,,,,,, ...@@ -76,5 +76,6 @@ DO,1,13寸料盘顶升下降,Inlet_13InchJackDown,9,HC,Y09,,,,,,,,,,,,
DO,2,出料线体顶升上升,Outlet_JackUp,10,HC,Y10,,,,,,,,,,,, DO,2,出料线体顶升上升,Outlet_JackUp,10,HC,Y10,,,,,,,,,,,,
DO,2,出料线体顶升下降,Outlet_JackDown,11,HC,Y11,,,,,,,,,,,, DO,2,出料线体顶升下降,Outlet_JackDown,11,HC,Y11,,,,,,,,,,,,
DO,1,入料线体送料允许,Inlet_AllowFeed,12,HC,Y12,,,,,,,,,,,, DO,1,入料线体送料允许,Inlet_AllowFeed,12,HC,Y12,,,,,,,,,,,,
DO,1,入料线体相机光源,Inlet_CamLed,13,HC,Y13,,,,,,,,,,,,
...@@ -196,7 +196,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -196,7 +196,7 @@ namespace OnlineStore.DeviceLibrary
if (MoveInfo.MoveType.Equals(MoveType.None) && NoErrorAlarm()) if (MoveInfo.MoveType.Equals(MoveType.None) && NoErrorAlarm())
{ {
if(TrayIsInPosition()) if (!TrayIsInPosition() && BufferDataManager.TrayInInletInfo == null)
{ {
StartInstore(new InOutParam()); StartInstore(new InOutParam());
} }
......
...@@ -154,7 +154,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -154,7 +154,8 @@ namespace OnlineStore.DeviceLibrary
// MoveLog(" " + MoveInfo.SLog + " 原有料盘尺寸:【" + oldPos.PlateW + "X" + oldPos.PlateH + "】服务器返回尺寸【" + LastPosInfo.PlateW + "X" + LastPosInfo.PlateH + "】 "); // MoveLog(" " + MoveInfo.SLog + " 原有料盘尺寸:【" + oldPos.PlateW + "X" + oldPos.PlateH + "】服务器返回尺寸【" + LastPosInfo.PlateW + "X" + LastPosInfo.PlateH + "】 ");
//} //}
MoveInfo.MoveParam.PosInfo = lastPosInfo; MoveInfo.MoveParam.PosInfo = lastPosInfo;
NextMoveStep(StepEnum.Inlet_08_WaitTrayLeave, "获取目标仓位成功,等待料盘离开"); NextMoveStep(StepEnum.Inlet_08_WaitTrayLeave, $"获取目标仓位成功【{MoveInfo.MoveParam.PosInfo.ToStr()}】,等待料盘离开");
BufferDataManager.TrayInInletInfo = MoveInfo.MoveParam.PosInfo.ToCopy();
AddWaitTrayInPosition(false); AddWaitTrayInPosition(false);
SetCurCmd(RobotEquip.GetCmd_InletUp()); SetCurCmd(RobotEquip.GetCmd_InletUp());
} }
...@@ -166,7 +167,6 @@ namespace OnlineStore.DeviceLibrary ...@@ -166,7 +167,6 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.IsStep(StepEnum.Inlet_08_WaitTrayLeave)) else if (MoveInfo.IsStep(StepEnum.Inlet_08_WaitTrayLeave))
{ {
NextMoveStep(StepEnum.Inlet_09_WaitRobotInSafe, "料盘离开入料口,等待机器人到安全位置"); NextMoveStep(StepEnum.Inlet_09_WaitRobotInSafe, "料盘离开入料口,等待机器人到安全位置");
BufferDataManager.TrayInRobotInfo = MoveInfo.MoveParam.PosInfo;
SetCurCmd(RobotEquip.GetCmd_Standby()); SetCurCmd(RobotEquip.GetCmd_Standby());
AddWaitTime(10000); AddWaitTime(10000);
MoveInfo.OneWaitCanEndStep=true; MoveInfo.OneWaitCanEndStep=true;
...@@ -203,16 +203,22 @@ namespace OnlineStore.DeviceLibrary ...@@ -203,16 +203,22 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(6000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(6000));
try try
{ {
IOMove(IO_Type.Inlet_CamLed, IO_VALUE.HIGH);
LastCodeList = CodeManager.CameraScan(Config.ScanCodeCamera, Name); LastCodeList = CodeManager.CameraScan(Config.ScanCodeCamera, Name);
if (LastCodeList.Count <= 0) if (LastCodeList.Count <= 0)
{ {
LastCodeList = CodeManager.CameraScan(Config.ScanCodeCamera, Name); LastCodeList = CodeManager.CameraScan(Config.ScanCodeCamera, Name);
} }
} }
catch (Exception ex) catch (Exception ex)
{ {
LogUtil.error("扫码出错", ex); LogUtil.error("扫码出错", ex);
} }
finally
{
IOMove(IO_Type.Inlet_CamLed, IO_VALUE.LOW);
}
} }
string code = CodeManager.ProcessCode(LastCodeList); string code = CodeManager.ProcessCode(LastCodeList);
...@@ -288,7 +294,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -288,7 +294,7 @@ namespace OnlineStore.DeviceLibrary
Thread.Sleep(ms); Thread.Sleep(ms);
LogUtil.error(Name + "【" + pos.barcode + "】第[" + count + "]次 " + MoveInfo.SLog + " 结果【" + result.Result + "】,等待" + ms + "后重新获取"); LogUtil.error(Name + "【" + pos.barcode + "】第[" + count + "]次 " + MoveInfo.SLog + " 结果【" + result.Result + "】,等待" + ms + "后重新获取");
} }
else if (!result.Msg.Equals("")) else if (!result.Result.Equals(0))
{ {
lastPosInfo = result.Param; lastPosInfo = result.Param;
LogUtil.error(Name + "【" + pos.barcode + "】第[" + count + "]次 " + MoveInfo.SLog + " 入库NG:" + result.Msg); LogUtil.error(Name + "【" + pos.barcode + "】第[" + count + "]次 " + MoveInfo.SLog + " 入库NG:" + result.Msg);
......
...@@ -87,7 +87,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -87,7 +87,8 @@ namespace OnlineStore.DeviceLibrary
} }
else if (MoveInfo.IsStep(StepEnum.Outlet_04_WaitTrayLeave)) else if (MoveInfo.IsStep(StepEnum.Outlet_04_WaitTrayLeave))
{ {
NextMoveStep(StepEnum.Outlet_05_JackUp, "料盘离开完成,链条停止,顶升抬起"); NextMoveStep(StepEnum.Outlet_05_JackUp, "料盘离开完成,清除出料口缓存,链条停止,顶升抬起");
BufferDataManager.TrayInOutletInfo = null;
OutletRun(false); OutletRun(false);
JackUp(true); JackUp(true);
AddWaitTrayCheck2(false); AddWaitTrayCheck2(false);
......
...@@ -255,6 +255,14 @@ namespace OnlineStore.DeviceLibrary ...@@ -255,6 +255,14 @@ namespace OnlineStore.DeviceLibrary
if (!runStatus.Equals(RunStatus.Runing)) if (!runStatus.Equals(RunStatus.Runing))
return; return;
} }
private void CheckInStoreProcess()
{
if (StoreManager.Client.inletEquip.TrayIsInPosition() && BufferDataManager.TrayInInletInfo != null)
{
LogInfo("机器人执行入库【" + BufferDataManager.TrayInInletInfo.ToStr() + "】");
StartExecuctOut(new InOutParam(BufferDataManager.TrayInInletInfo));
}
}
private void ExecuteOutListProcess() private void ExecuteOutListProcess()
{ {
try try
...@@ -289,6 +297,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -289,6 +297,10 @@ namespace OnlineStore.DeviceLibrary
{ {
ExecuteOutListProcess(); ExecuteOutListProcess();
} }
if (runStatus.Equals(RunStatus.Runing))
{
CheckInStoreProcess();
}
BusyMoveProcess(); BusyMoveProcess();
IOTimeOutProcess(); IOTimeOutProcess();
if (NoErrorAlarm()) if (NoErrorAlarm())
...@@ -427,7 +439,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -427,7 +439,7 @@ namespace OnlineStore.DeviceLibrary
{ {
preNgSig = curNgSig; preNgSig = curNgSig;
curNgSig = IOValue(IO_Type.NGBox_TrayCheck).Equals(IO_VALUE.HIGH); curNgSig = IOValue(IO_Type.NGBox_TrayCheck).Equals(IO_VALUE.HIGH);
if(curNgSig==true && preNgSig==false) if (curNgSig == true && preNgSig == false)
{ {
BufferDataManager.AddTrayInNGBox(new InOutPosInfo()); BufferDataManager.AddTrayInNGBox(new InOutPosInfo());
} }
......
...@@ -45,7 +45,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -45,7 +45,7 @@ namespace OnlineStore.DeviceLibrary
InStore_06_CompressTray(); InStore_06_CompressTray();
break; break;
case StepEnum.InStore_06_CompressTray: case StepEnum.InStore_06_CompressTray:
NextMoveStep(StepEnum.InStore_07_ArmBackToP1, "在入料口取料完成,机械臂回待机点"); NextMoveStep(StepEnum.InStore_07_ArmBackToP1, "在入料口取料完成,清除入料口缓存,机械臂回待机点");
InStore_07_ArmBackToP1(); InStore_07_ArmBackToP1();
break; break;
case StepEnum.InStore_07_ArmBackToP1: case StepEnum.InStore_07_ArmBackToP1:
...@@ -75,7 +75,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -75,7 +75,10 @@ namespace OnlineStore.DeviceLibrary
InStore_11_ReleaseTray(); InStore_11_ReleaseTray();
break; break;
case StepEnum.InStore_11_ReleaseTray: case StepEnum.InStore_11_ReleaseTray:
NextMoveStep(StepEnum.InStore_16_ArmBackToP1, "在仓门口放料完成,机械臂回待机点"); NextMoveStep(StepEnum.InStore_16_ArmBackToP1, "在仓门口放料完成,清除机器人料叉缓存,机械臂回待机点");
//在料仓口口放料完成
BufferDataManager.TrayInRobotInfo = null;
UpdateLocInfo(MoveInfo.MoveParam.PosInfo.barcode, TaskStatus.BOXDOOR);
InStore_16_ArmBackToP1(); InStore_16_ArmBackToP1();
break; break;
#region NG #region NG
...@@ -99,7 +102,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -99,7 +102,10 @@ namespace OnlineStore.DeviceLibrary
InStore_15_ReleaseTray(); InStore_15_ReleaseTray();
break; break;
case StepEnum.InStore_15_ReleaseTray: case StepEnum.InStore_15_ReleaseTray:
NextMoveStep(StepEnum.InStore_16_ArmBackToP1, "在NG箱放料完成,机械臂回待机点"); NextMoveStep(StepEnum.InStore_16_ArmBackToP1, "在NG箱放料完成,清除机器人料叉缓存,机械臂回待机点");
//在料仓口口放料完成
BufferDataManager.TrayInRobotInfo = null;
// UpdateLocInfo(MoveInfo.MoveParam.PosInfo.barcode, TaskStatus.BOXDOOR);
InStore_16_ArmBackToP1(); InStore_16_ArmBackToP1();
break; break;
#endregion #endregion
...@@ -146,6 +152,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -146,6 +152,10 @@ namespace OnlineStore.DeviceLibrary
} }
private void InStore_07_ArmBackToP1() private void InStore_07_ArmBackToP1()
{ {
//在入料口取料完成
BufferDataManager.TrayInInletInfo = null;
BufferDataManager.TrayInRobotInfo = MoveInfo.MoveParam.PosInfo.ToCopy();
UpdateLocInfo(MoveInfo.MoveParam.PosInfo.barcode, TaskStatus.INROBOT);
SendCmd(GetCmd_Standby()); SendCmd(GetCmd_Standby());
} }
private void InStore_08_MoveAxisToStore() private void InStore_08_MoveAxisToStore()
...@@ -197,6 +207,18 @@ namespace OnlineStore.DeviceLibrary ...@@ -197,6 +207,18 @@ namespace OnlineStore.DeviceLibrary
targetIndex = 0; targetIndex = 0;
} }
#endregion #endregion
/// <summary>
/// 机器人更新任务状态
/// </summary>
/// <param name="barcode"></param>
/// <param name="status"></param>
private void UpdateLocInfo(string barcode,string status)
{
string result=SServerManager.UpdateTrayLoc(barcode, status);
if(!result.Equals(""))
{
SServerManager.UpdateTrayLoc(barcode, status);
}
}
} }
} }
...@@ -45,7 +45,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -45,7 +45,7 @@ namespace OnlineStore.DeviceLibrary
OutStore_06_CompressTray(); OutStore_06_CompressTray();
break; break;
case StepEnum.OutStore_06_CompressTray: case StepEnum.OutStore_06_CompressTray:
NextMoveStep(StepEnum.OutStore_07_ArmBackToP1, "在仓门口取料完成,机械臂回待机点"); NextMoveStep(StepEnum.OutStore_07_ArmBackToP1, "在仓门口取料完成,添加机器人缓存,机械臂回待机点");
OutStore_07_ArmBackToP1(); OutStore_07_ArmBackToP1();
break; break;
case StepEnum.OutStore_07_ArmBackToP1: case StepEnum.OutStore_07_ArmBackToP1:
...@@ -67,7 +67,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -67,7 +67,7 @@ namespace OnlineStore.DeviceLibrary
OutStore_11_ReleaseTray(); OutStore_11_ReleaseTray();
break; break;
case StepEnum.OutStore_11_ReleaseTray: case StepEnum.OutStore_11_ReleaseTray:
NextMoveStep(StepEnum.OutStore_12_ArmBackToP1, "在出料口放料完成,机械臂回待机点"); NextMoveStep(StepEnum.OutStore_12_ArmBackToP1, "在出料口放料完成,清除机器人缓存,机械臂回待机点");
OutStore_12_ArmBackToP1(); OutStore_12_ArmBackToP1();
break; break;
case StepEnum.OutStore_12_ArmBackToP1: case StepEnum.OutStore_12_ArmBackToP1:
...@@ -101,6 +101,9 @@ namespace OnlineStore.DeviceLibrary ...@@ -101,6 +101,9 @@ namespace OnlineStore.DeviceLibrary
} }
private void OutStore_07_ArmBackToP1() private void OutStore_07_ArmBackToP1()
{ {
//添加机器人缓存,并上报任务状态
BufferDataManager.TrayInRobotInfo = MoveInfo.MoveParam.PosInfo.ToCopy();
UpdateLocInfo(MoveInfo.MoveParam.PosInfo.barcode, TaskStatus.INROBOT);
SendCmd(GetCmd_Standby()); SendCmd(GetCmd_Standby());
} }
...@@ -127,6 +130,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -127,6 +130,10 @@ namespace OnlineStore.DeviceLibrary
} }
private void OutStore_12_ArmBackToP1() private void OutStore_12_ArmBackToP1()
{ {
//上报任务状态
BufferDataManager.TrayInRobotInfo = null;
BufferDataManager.TrayInOutletInfo = MoveInfo.MoveParam.PosInfo.ToCopy();
UpdateLocInfo(MoveInfo.MoveParam.PosInfo.barcode, TaskStatus.FINISHED);
SendCmd(GetCmd_Standby()); SendCmd(GetCmd_Standby());
} }
#endregion #endregion
......
...@@ -109,8 +109,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -109,8 +109,11 @@ namespace OnlineStore.DeviceLibrary
string[] recv = bean.RobotData.RecvMsg.Split(','); string[] recv = bean.RobotData.RecvMsg.Split(',');
if (recv != null && recv.Length == 2 && if (recv != null && recv.Length == 2 &&
recv[1].Equals(rtn_done)) recv[1].Equals(rtn_done))
{
LogUtil.info($"RobotMoveEnd:[{recv[0]},{recv[1]}]");
return true; return true;
} }
}
catch (Exception ex) catch (Exception ex)
{ {
LogUtil.error($"RobotMoveEnd:{bean.RobotData.RecvMsg}", ex); LogUtil.error($"RobotMoveEnd:{bean.RobotData.RecvMsg}", ex);
...@@ -272,7 +275,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -272,7 +275,7 @@ namespace OnlineStore.DeviceLibrary
int targetIndex = 0; int targetIndex = 0;
private void MoveAxisToStore() private void MoveAxisToStore()
{ {
switch (MoveInfo.MoveParam.PosInfo.PosId.Substring(0, 2)) switch (MoveInfo.MoveParam.PosInfo.Cid)
{ {
case "01": case "01":
targetIndex = 1; targetIndex = 1;
...@@ -345,7 +348,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -345,7 +348,7 @@ namespace OnlineStore.DeviceLibrary
startInStoreTime = DateTime.Now; startInStoreTime = DateTime.Now;
LogInfo(" 启动入库【" + param.PosInfo.ToStr() + "】 "); LogInfo(" 启动入库【" + param.PosInfo.ToStr() + "】 ");
param.MoveP = new LineMoveP(Config, param.PosInfo.PosId); param.MoveP = new LineMoveP(Config, param.PosInfo.PosId);
LogInfo("LoadInoutParam:" + JsonHelper.SerializeObject(param.MoveP)); //LogInfo("LoadInoutParam:" + JsonHelper.SerializeObject(param.MoveP));
MoveInfo.NewMove(MoveType.InStore, param); MoveInfo.NewMove(MoveType.InStore, param);
SetBoxStatus(DeviceStatus.InStoreExecute, RunStatus.Busy, param.PosInfo); SetBoxStatus(DeviceStatus.InStoreExecute, RunStatus.Busy, param.PosInfo);
MoveInfo.NextMoveStep(StepEnum.InStore_01_Wait); MoveInfo.NextMoveStep(StepEnum.InStore_01_Wait);
...@@ -376,15 +379,15 @@ namespace OnlineStore.DeviceLibrary ...@@ -376,15 +379,15 @@ namespace OnlineStore.DeviceLibrary
{ {
lock (outStoreObject) lock (outStoreObject)
{ {
if (MoveInfo.MoveType.Equals(MoveType.OutStore) && MoveInfo.MoveParam.PosInfo.PosId.Equals(param.PosInfo.PosId)) if (MoveInfo.MoveType.Equals(MoveType.OutStore) && MoveInfo.MoveParam.PosInfo.Cid.Equals(param.PosInfo.Cid))
{ {
LogUtil.error(Name + " 出库命令【" + param.PosInfo.ToStr() + "】重复,【" + MoveInfo.MoveParam.PosInfo.PosId + "】出库执行中"); LogUtil.error(Name + " 出库命令【" + param.PosInfo.ToStr() + "】重复,【" + MoveInfo.MoveParam.PosInfo.Cid + "】出库执行中");
return; return;
} }
List<InOutParam> reviceList = new List<InOutParam>(); List<InOutParam> reviceList = new List<InOutParam>();
reviceList.AddRange(waitOutStoreList); reviceList.AddRange(waitOutStoreList);
reviceList = (from m in reviceList where m.PosInfo.PosId.Equals(param.PosInfo.PosId) select m).ToList<InOutParam>(); reviceList = (from m in reviceList where m.PosInfo.Cid.Equals(param.PosInfo.Cid) select m).ToList<InOutParam>();
if (reviceList.Count == 0) if (reviceList.Count == 0)
{ {
LogInfo(" 执行出库【" + param.PosInfo.ToStr() + "】失败,加入等待队列"); LogInfo(" 执行出库【" + param.PosInfo.ToStr() + "】失败,加入等待队列");
...@@ -418,7 +421,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -418,7 +421,7 @@ namespace OnlineStore.DeviceLibrary
SetBoxStatus(DeviceStatus.OutStoreExecute, RunStatus.Busy, param.PosInfo); SetBoxStatus(DeviceStatus.OutStoreExecute, RunStatus.Busy, param.PosInfo);
MoveInfo.NewMove(MoveType.OutStore, param); MoveInfo.NewMove(MoveType.OutStore, param);
LogInfo("启动出库【" + param.PosInfo.ToStr() + "】 "); LogInfo("启动出库【" + param.PosInfo.ToStr() + "】 ");
LogInfo("LoadInoutParam:" + JsonHelper.SerializeObject(param.MoveP)); //LogInfo("LoadInoutParam:" + JsonHelper.SerializeObject(param.MoveP));
MoveInfo.NextMoveStep(StepEnum.OutStore_01_Wait); MoveInfo.NextMoveStep(StepEnum.OutStore_01_Wait);
return true; return true;
......
...@@ -102,7 +102,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -102,7 +102,7 @@ namespace OnlineStore.DeviceLibrary
} }
public static List<string> CameraScan(string cameraName, string deviceName, bool findRightCodeBreak = false, int timeOut = 1500) public static List<string> CameraScan(string cameraName, string deviceName, bool findRightCodeBreak = false, int timeOut = 1500)
{ {
List<string> nameList = new List<string>() { cameraName }; List<string> nameList = cameraName.Split('#').ToList();//new List<string>() { cameraName };
return CameraScan(nameList, deviceName, findRightCodeBreak, timeOut); return CameraScan(nameList, deviceName, findRightCodeBreak, timeOut);
} }
private static int ScanCount = 0; private static int ScanCount = 0;
......
...@@ -11,6 +11,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -11,6 +11,7 @@ namespace OnlineStore.DeviceLibrary
{ {
private static InOutPosInfo trayInRobotInfo = null; private static InOutPosInfo trayInRobotInfo = null;
private static InOutPosInfo trayInOutletInfo = null; private static InOutPosInfo trayInOutletInfo = null;
private static InOutPosInfo trayInInletInfo = null;
private static List<InOutPosInfo> traysInNGBoxInfo = null; private static List<InOutPosInfo> traysInNGBoxInfo = null;
/// <summary> /// <summary>
///机器人夹爪上的料盘信息,null时无料 ///机器人夹爪上的料盘信息,null时无料
...@@ -33,6 +34,15 @@ namespace OnlineStore.DeviceLibrary ...@@ -33,6 +34,15 @@ namespace OnlineStore.DeviceLibrary
SaveData(Setting_Init.TrayInOutletInfo, value); SaveData(Setting_Init.TrayInOutletInfo, value);
} }
} }
public static InOutPosInfo TrayInInletInfo
{
get { return trayInInletInfo; }
set
{
trayInInletInfo = value;
SaveData(Setting_Init.TrayInInletInfo, value);
}
}
/// <summary> /// <summary>
/// NG箱里的料盘信息 /// NG箱里的料盘信息
/// </summary> /// </summary>
...@@ -58,6 +68,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -58,6 +68,7 @@ namespace OnlineStore.DeviceLibrary
TrayInRobotInfo = LoadInoutPosInfo(Setting_Init.TrayInRobotInfo); TrayInRobotInfo = LoadInoutPosInfo(Setting_Init.TrayInRobotInfo);
TraysInNGBoxInfo = LoadNGBoxPosInfos(Setting_Init.TraysInNGBoxInfo); TraysInNGBoxInfo = LoadNGBoxPosInfos(Setting_Init.TraysInNGBoxInfo);
TrayInOutletInfo = LoadInoutPosInfo(Setting_Init.TrayInOutletInfo); TrayInOutletInfo = LoadInoutPosInfo(Setting_Init.TrayInOutletInfo);
TrayInInletInfo = LoadInoutPosInfo(Setting_Init.TrayInInletInfo);
} }
private static InOutPosInfo LoadInoutPosInfo(string configStr) private static InOutPosInfo LoadInoutPosInfo(string configStr)
{ {
......
...@@ -48,10 +48,6 @@ namespace OnlineStore.DeviceLibrary ...@@ -48,10 +48,6 @@ namespace OnlineStore.DeviceLibrary
} }
public InOutPosInfo PosInfo { get; set; } public InOutPosInfo PosInfo { get; set; }
/// <summary>
/// 料叉已取料的信息
/// </summary>
public InOutPosInfo PosInfoBack { get; set; } = null;
public LineMoveP MoveP { get; set; } public LineMoveP MoveP { get; set; }
/// <summary> /// <summary>
/// 入料机构从哪个料串取料,或出库放到哪个料串 /// 入料机构从哪个料串取料,或出库放到哪个料串
...@@ -88,10 +84,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -88,10 +84,11 @@ namespace OnlineStore.DeviceLibrary
inOut.CreateTime = DateTime.Now; inOut.CreateTime = DateTime.Now;
return inOut; return inOut;
} }
public string Cid { get; set; }
/// <summary> /// <summary>
/// 创建时间 /// 创建时间
/// </summary> /// </summary>
public DateTime CreateTime { get; private set; } public DateTime CreateTime { get; set; }
/// <summary> /// <summary>
/// 物品二维码 /// 物品二维码
/// </summary> /// </summary>
...@@ -134,8 +131,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -134,8 +131,7 @@ namespace OnlineStore.DeviceLibrary
public bool singleOut = false; public bool singleOut = false;
public string ToStr() public string ToStr()
{ {
return " [" + barcode + "] [" + PosId + "] [" + PlateW + "x" + PlateH + "],urgentReel [" + urgentReel return " [" + barcode + "] [" + PosId + "] [" + PlateW + "x" + PlateH + "],[cid="+Cid+"]";
+ "],cutReel [" + cutReel + "],smallReel [" + smallReel + "],rfid [" + rfid + "],rfidLoc [" + rfidLoc + "],singleOut[" + singleOut + "]";
} }
public bool IsNG { get; set; } = false; public bool IsNG { get; set; } = false;
...@@ -191,11 +187,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -191,11 +187,11 @@ namespace OnlineStore.DeviceLibrary
/// <param name="posId"></param> /// <param name="posId"></param>
public void UpdatePosById(string posId) public void UpdatePosById(string posId)
{ {
BoxPosition position = CSVPositionReader<BoxPosition>.GetPositon(posId); //BoxPosition position = CSVPositionReader<BoxPosition>.GetPositon(posId);
if (position == null) //if (position == null)
{ //{
LogUtil.error("GetPositon[" + posId + "] =null,没有库位不能执行出入库"); // LogUtil.error("GetPositon[" + posId + "] =null,没有库位不能执行出入库");
} //}
} }
/// <summary> /// <summary>
......
...@@ -154,6 +154,10 @@ namespace OnlineStore.LoadCSVLibrary ...@@ -154,6 +154,10 @@ namespace OnlineStore.LoadCSVLibrary
/// DO,1,入料线体送料允许,Inlet_AllowFeed,12,HC,Y12,,,,,,,,,,,, /// DO,1,入料线体送料允许,Inlet_AllowFeed,12,HC,Y12,,,,,,,,,,,,
/// </summary> /// </summary>
public static string Inlet_AllowFeed = "Inlet_AllowFeed"; public static string Inlet_AllowFeed = "Inlet_AllowFeed";
/// <summary>
/// DO,1,入料线体相机光源,Inlet_CamLed,13,HC,Y13,,,,,,,,,,,,
/// </summary>
public static string Inlet_CamLed = "Inlet_CamLed";
} }
public enum IO_VALUE public enum IO_VALUE
{ {
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!