Commit c5bf45f1 几米阳光

出入库逻辑调试修改

1 个父辈 b9fb7308
......@@ -312,6 +312,7 @@ namespace OnlineStore.AutoInOutStore
UpdateMiddlePosition();
UpdateInOutPosition();
UpdateUpdownPosition();
UpdateAutoPosition();
txtComPosition.Text = ShuoKeControls.GetLastPosition(compress_Slv).ToString();
}
}
......
......@@ -197,6 +197,7 @@
this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
this.notifyIcon1 = new System.Windows.Forms.NotifyIcon(this.components);
this.groupBox4 = new System.Windows.Forms.GroupBox();
this.lblComMsg = new System.Windows.Forms.Label();
this.btnRelMove = new System.Windows.Forms.Button();
this.txtAddr = new System.Windows.Forms.TextBox();
this.label18 = new System.Windows.Forms.Label();
......@@ -232,6 +233,7 @@
this.btnTempClose = new System.Windows.Forms.Button();
this.btnTempInit = new System.Windows.Forms.Button();
this.groupBox6 = new System.Windows.Forms.GroupBox();
this.lblOutInfo = new System.Windows.Forms.Label();
this.lblBatchMsg = new System.Windows.Forms.Label();
this.btnOpenDoor = new System.Windows.Forms.Button();
this.lblWaitTragGo = new System.Windows.Forms.Label();
......@@ -243,7 +245,6 @@
this.btnGetOutTray = new System.Windows.Forms.Button();
this.lblDoorStatus = new System.Windows.Forms.Label();
this.btnBatchInStore = new System.Windows.Forms.Button();
this.lblComMsg = new System.Windows.Forms.Label();
this.groupBox5.SuspendLayout();
this.groupBox1.SuspendLayout();
this.groupBox2.SuspendLayout();
......@@ -2276,6 +2277,17 @@
this.groupBox4.TabStop = false;
this.groupBox4.Text = "压紧轴";
//
// lblComMsg
//
this.lblComMsg.AutoSize = true;
this.lblComMsg.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblComMsg.ForeColor = System.Drawing.Color.Green;
this.lblComMsg.Location = new System.Drawing.Point(29, 165);
this.lblComMsg.Name = "lblComMsg";
this.lblComMsg.Size = new System.Drawing.Size(80, 17);
this.lblComMsg.TabIndex = 281;
this.lblComMsg.Text = "步进电机信息";
//
// btnRelMove
//
this.btnRelMove.Location = new System.Drawing.Point(282, 54);
......@@ -2510,7 +2522,7 @@
this.tabPage1.Controls.Add(this.groupBox7);
this.tabPage1.Location = new System.Drawing.Point(4, 26);
this.tabPage1.Name = "tabPage1";
this.tabPage1.Size = new System.Drawing.Size(567, 405);
this.tabPage1.Size = new System.Drawing.Size(567, 416);
this.tabPage1.TabIndex = 3;
this.tabPage1.Text = "温湿度调试";
this.tabPage1.UseVisualStyleBackColor = true;
......@@ -2631,6 +2643,7 @@
//
// groupBox6
//
this.groupBox6.Controls.Add(this.lblOutInfo);
this.groupBox6.Controls.Add(this.lblBatchMsg);
this.groupBox6.Controls.Add(this.btnOpenDoor);
this.groupBox6.Controls.Add(this.lblWaitTragGo);
......@@ -2650,6 +2663,17 @@
this.groupBox6.TabStop = false;
this.groupBox6.Text = "批量上下料操作";
//
// lblOutInfo
//
this.lblOutInfo.AutoSize = true;
this.lblOutInfo.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblOutInfo.ForeColor = System.Drawing.Color.Green;
this.lblOutInfo.Location = new System.Drawing.Point(127, 105);
this.lblOutInfo.Name = "lblOutInfo";
this.lblOutInfo.Size = new System.Drawing.Size(106, 22);
this.lblOutInfo.TabIndex = 234;
this.lblOutInfo.Text = "累积出库信息";
//
// lblBatchMsg
//
this.lblBatchMsg.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
......@@ -2770,17 +2794,6 @@
this.btnBatchInStore.UseVisualStyleBackColor = true;
this.btnBatchInStore.Click += new System.EventHandler(this.btnBatchInStore_Click);
//
// lblComMsg
//
this.lblComMsg.AutoSize = true;
this.lblComMsg.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblComMsg.ForeColor = System.Drawing.Color.Green;
this.lblComMsg.Location = new System.Drawing.Point(29, 165);
this.lblComMsg.Name = "lblComMsg";
this.lblComMsg.Size = new System.Drawing.Size(80, 17);
this.lblComMsg.TabIndex = 281;
this.lblComMsg.Text = "步进电机信息";
//
// FrmStoreBox
//
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
......@@ -3050,6 +3063,7 @@
private System.Windows.Forms.Label lblBatchMsg;
public System.Windows.Forms.Button btnUpdateSpeed;
private System.Windows.Forms.Label lblComMsg;
private System.Windows.Forms.Label lblOutInfo;
}
}
......@@ -313,6 +313,8 @@ namespace OnlineStore.AutoInOutStore
lblDoorStatus.Text = "仓门状态:打开";
UpdateFormDoorStats(true);
}
lblOutInfo.Visible = AutomaticBaiting.BatchOutStoreHeight>0;
lblOutInfo.Text = "累积出库: " + AutomaticBaiting.BatchOutStoreCount + "盘, 高" + AutomaticBaiting.BatchOutStoreHeight + "mm";
}
if (HumitureController.IsRun)
......@@ -1586,8 +1588,13 @@ namespace OnlineStore.AutoInOutStore
{
MessageBox.Show("请先关闭门锁");
return;
}
}
if (KND.IOValue(IO_Type.TrayCheck_Fixture).Equals(IO_VALUE.HIGH))
{
MessageBox.Show("叉子料盘检测有料,请检查后再入库");
return;
}
AutomaticBaiting.BatchDoorClose(false);
AutomaticBaiting.Reset(true);
}
......
......@@ -80,7 +80,7 @@ namespace OnlineStore.Common
public static string GetSpanStr(TimeSpan span)
{
//return Convert.ToDateTime(span.ToString()).ToString("HH:mm:ss");
string seconds = Math.Round(span.TotalSeconds % 60, 1).ToString();
string seconds = Math.Round(span.TotalSeconds % 60).ToString();
if (seconds.IndexOf(".") >= 0)
{
seconds = seconds.ToString().PadLeft(4, '0');
......
......@@ -176,6 +176,10 @@ namespace OnlineStore.DeviceLibrary
}
private static bool CheckByte(byte[] bits)
{
if (bits == null)
{
return false;
}
string strSend = "";
for (int i = 0; i < bits.Length; i++)
{
......
......@@ -143,7 +143,7 @@ namespace OnlineStore.DeviceLibrary
{
runTimeWatch.Restart();
LogUtil.info(LOGGER, StoreName + "开始启动,启动时间:" + DateTime.Now.ToLongTimeString());
KND.IOMove(IO_Type.SuckingDisc_Work, IO_VALUE.LOW);
if (IsHasCompress_Axis)
{
if (ShuoKeControls.isRun == false && (!StoreManager.OpenShuoKe(this)))
......
......@@ -295,7 +295,7 @@ namespace OnlineStore.DeviceLibrary
else
{
msg = "压紧轴计量检测目标【" + MeteringSignal.TragetChangeCount + "】实际【" + MeteringSignal.SignalChangeCount + "】";
LogUtil.error("压紧轴已经停止运动,但是 " + msg);
LogUtil.error("压紧轴已经停止运动,但是 " + msg,110);
return false;
}
}
......@@ -526,7 +526,7 @@ namespace OnlineStore.DeviceLibrary
{
string posId = StoreMove.MoveParam != null ? StoreMove.MoveParam.PositionNum : "";
LogUtil.info(LOGGER, StoreName + " 【" + posId + "】 整个入库流程结束,耗时【" + FormUtil.GetSpanStr(InOutWatch.Elapsed) + "】!");
LogUtil.info(LOGGER, " 【" + posId + "】 入库结束,耗时【" + FormUtil.GetSpanStr(InOutWatch.Elapsed) + "】!");
StoreMove.EndMove();
storeRunStatus = StoreRunStatus.Runing;
//设备连接,入库后,BOX恢复原始状态
......@@ -672,18 +672,25 @@ namespace OnlineStore.DeviceLibrary
StoreMove.NextMoveStep(StoreMoveStep.SO_03_ToBagPosition);
if (StoreMove.IsBatchInOutStore)
{
int targetValue = GetBatchTargetValue(Config.BatchAxis_OutDownPosition);
if (targetValue >= 1000 + moveP.BatchAxis_DownValue)
//上下料机构下降的距离=料盘最低高度+默认的高度
int outDownPosition = StoreMove.MoveParam.MoveP.BatchAxis_DownValue+ Config.BatchAxis_OutDownPosition;
//int outDownPosition = StoreMove.MoveParam.GetACPosition().BagHeight*AutomaticBaiting.AxisChangeValue * 2;
//if (outDownPosition < Config.BatchAxis_OutDownPosition)
//{
// outDownPosition = Config.BatchAxis_OutDownPosition;
//}
int targetValue = GetBatchTargetValue(outDownPosition);
if (targetValue >= 1000 )
{
StoreMove.TimeOutSeconds = 120;
ACAxisMove(Config.Batch_Axis, targetValue, Config.BatchAxis_P1_Speed);
OutStoreLog("出库:SO_03 批量上下料轴下降【" + Config.BatchAxis_OutDownPosition + "】目标【" + targetValue + "】 ");
OutStoreLog("出库:SO_03 批量上下料轴下降【" + outDownPosition + "】目标【" + targetValue + "】 ");
}
else
{
AutomaticBaiting.BatchOutStoreCount++;
AutomaticBaiting.BatchOutStoreHeight =1000;
OutStoreLog("出库:SO_03批量上下料轴需要下降【" + Config.BatchAxis_OutDownPosition + "】目标【" + targetValue + "】 ,请检查料盘是否已满");
OutStoreLog("出库:SO_03批量上下料轴需要下降【" + outDownPosition + "】目标【" + targetValue + "】 ,请检查料盘是否已满");
//停止出库
string posId = StoreMove.MoveParam != null ? StoreMove.MoveParam.PositionNum : "";
storeStatus = StoreStatus.StoreOnline;
......@@ -774,6 +781,8 @@ namespace OnlineStore.DeviceLibrary
OutStoreLog("出库:SO_11_PutTray 放下料盘,升降轴到P8(出库低点),压紧轴至P3(压紧前点)");
ComMoveToPosition(StoreMove.MoveParam.MoveP.ComPress_P3,true);
ACAxisMove(Config.UpDown_Axis, StoreMove.MoveParam.MoveP.UpDown_OutLow_P8, Config.UpDownAxis_P8_Speed);
AutomaticBaiting.BatchOutStoreHeight += StoreMove.MoveParam.GetACPosition().BagHeight;
AutomaticBaiting.BatchOutStoreCount++;
}
else if (KND.IOValue(IO_Type.SafetyLightCurtains).Equals(IO_VALUE.HIGH))
{
......@@ -809,7 +818,7 @@ namespace OnlineStore.DeviceLibrary
{
string posId = StoreMove.MoveParam != null ? StoreMove.MoveParam.PositionNum : "";
storeStatus = StoreStatus.StoreOnline;
LogUtil.info(LOGGER, StoreName + " 【" + posId + "】 出库结束,耗时【" + FormUtil.GetSpanStr(InOutWatch.Elapsed) + "】!");
LogUtil.info(LOGGER, "【" + posId + "】出库结束,耗时【" + FormUtil.GetSpanStr(InOutWatch.Elapsed) + "】累积出库: " + AutomaticBaiting.BatchOutStoreCount + "盘, 高" + AutomaticBaiting.BatchOutStoreHeight + "mm");
StoreMove.EndMove();
storeRunStatus = StoreRunStatus.Runing;
InOutEndProcess(StoreMoveType.OutStore);
......@@ -845,24 +854,24 @@ namespace OnlineStore.DeviceLibrary
int targetValue = currPosition - downValue;
return targetValue;
}
private void BatchAxisUpTrayHeight()
{
int targetValue = GetBatchTargetValue(StoreMove.MoveParam.MoveP.BatchAxis_DownValue);
//记录高度
AutomaticBaiting.BatchOutStoreCount++;
AutomaticBaiting.BatchOutStoreHeight += StoreMove.MoveParam.GetACPosition().BagHeight;
OutStoreLog(" 批量上下料轴下降【" + StoreMove.MoveParam.MoveP.BatchAxis_DownValue + "】,目标位置【" + targetValue + "】");
//判断盘满后,需要报警?
if (targetValue <= 0)
{
//TODO
WarnMsg = "库已满,请先拿走!";
}
else
{
ACAxisMove(StoreManager.Config.Batch_Axis, targetValue, StoreManager.Config.Batch_Axis.TargetSpeed);
}
}
//private void BatchAxisUpTrayHeight()
//{
// int targetValue = GetBatchTargetValue(StoreMove.MoveParam.MoveP.BatchAxis_DownValue);
// //记录高度
// AutomaticBaiting.BatchOutStoreCount++;
// AutomaticBaiting.BatchOutStoreHeight += StoreMove.MoveParam.GetACPosition().BagHeight;
// OutStoreLog(" 批量上下料轴下降【" + StoreMove.MoveParam.MoveP.BatchAxis_DownValue + "】,目标位置【" + targetValue + "】");
// //判断盘满后,需要报警?
// if (targetValue <= 0)
// {
// //TODO
// WarnMsg = "库已满,请先拿走!";
// }
// else
// {
// ACAxisMove(StoreManager.Config.Batch_Axis, targetValue, StoreManager.Config.Batch_Axis.TargetSpeed);
// }
//}
private void SO_13_InoutBack()
{
StoreMove.NextMoveStep(StoreMoveStep.SO_13_InoutBack);
......@@ -885,7 +894,7 @@ namespace OnlineStore.DeviceLibrary
OutStoreLog("出库:SO_08 升降轴到出料高点P2,旋转轴至P1(待机点),等待门锁关闭 ");
ACAxisMove(Config.UpDown_Axis, moveP.UpDown_OutHigh_P2, Config.UpDownAxis_P2_Speed);
ACAxisMove(Config.Middle_Axis, moveP.Middle_P1, Config.MiddleAxis_P1_Speed);
BatchAxisUpTrayHeight();
//BatchAxisUpTrayHeight();
}
else
{
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!