Commit ce5d6044 LN

调试bug修改,rfid,板卡 dll更新

1 个父辈 b7cdeae1
......@@ -622,12 +622,12 @@
this.lblThisSta.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.lblThisSta.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblThisSta.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblThisSta.ForeColor = System.Drawing.Color.Red;
this.lblThisSta.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblThisSta.Location = new System.Drawing.Point(255, 52);
this.lblThisSta.Location = new System.Drawing.Point(6, 103);
this.lblThisSta.Name = "lblThisSta";
this.lblThisSta.Size = new System.Drawing.Size(470, 122);
this.lblThisSta.Size = new System.Drawing.Size(719, 71);
this.lblThisSta.TabIndex = 246;
this.lblThisSta.Text = "等待启动";
this.lblThisSta.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
......@@ -681,7 +681,7 @@
this.lblHyInfo.AutoSize = true;
this.lblHyInfo.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblHyInfo.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblHyInfo.Location = new System.Drawing.Point(6, 117);
this.lblHyInfo.Location = new System.Drawing.Point(444, 19);
this.lblHyInfo.Name = "lblHyInfo";
this.lblHyInfo.Size = new System.Drawing.Size(68, 17);
this.lblHyInfo.TabIndex = 281;
......
......@@ -237,10 +237,18 @@ namespace OnlineStore.AssemblyLine
internal override void FormStatus(bool isStart)
{
btnStart.Enabled = !isStart;
btnStart.Enabled = true;
btnStop.Enabled = true;
//btnInStore.Enabled = isStart;
btnOutStore.Enabled = isStart;
btnOutStore.Enabled = isStart;
if (isStart)
{
btnStart.Text = "复位";
}
else
{
btnStart.Text = "启动调试";
}
}
private void FrmIOStatus_Shown(object sender, EventArgs e)
......
......@@ -228,7 +228,7 @@
this.groupBox4.Controls.Add(this.tableLayoutPanel2);
this.groupBox4.Location = new System.Drawing.Point(289, 3);
this.groupBox4.Name = "groupBox4";
this.groupBox4.Size = new System.Drawing.Size(276, 600);
this.groupBox4.Size = new System.Drawing.Size(276, 468);
this.groupBox4.TabIndex = 104;
this.groupBox4.TabStop = false;
this.groupBox4.Text = "DO列表";
......@@ -246,7 +246,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(265, 580);
this.tableLayoutPanel2.Size = new System.Drawing.Size(265, 448);
this.tableLayoutPanel2.TabIndex = 103;
//
// groupBox3
......@@ -256,7 +256,7 @@
this.groupBox3.Controls.Add(this.tableLayoutPanel1);
this.groupBox3.Location = new System.Drawing.Point(6, 3);
this.groupBox3.Name = "groupBox3";
this.groupBox3.Size = new System.Drawing.Size(276, 600);
this.groupBox3.Size = new System.Drawing.Size(276, 468);
this.groupBox3.TabIndex = 103;
this.groupBox3.TabStop = false;
this.groupBox3.Text = "DI列表";
......@@ -274,7 +274,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(265, 580);
this.tableLayoutPanel1.Size = new System.Drawing.Size(265, 448);
this.tableLayoutPanel1.TabIndex = 102;
//
// groupBox2
......@@ -428,9 +428,9 @@
//
this.lblMsg.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblMsg.ForeColor = System.Drawing.Color.Red;
this.lblMsg.Location = new System.Drawing.Point(821, 522);
this.lblMsg.Location = new System.Drawing.Point(3, 476);
this.lblMsg.Name = "lblMsg";
this.lblMsg.Size = new System.Drawing.Size(234, 80);
this.lblMsg.Size = new System.Drawing.Size(562, 131);
this.lblMsg.TabIndex = 279;
this.lblMsg.Text = "CID";
//
......
......@@ -491,12 +491,12 @@
//
this.lblThisSta.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.lblThisSta.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblThisSta.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblThisSta.ForeColor = System.Drawing.Color.Red;
this.lblThisSta.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblThisSta.Location = new System.Drawing.Point(147, 68);
this.lblThisSta.Location = new System.Drawing.Point(4, 181);
this.lblThisSta.Name = "lblThisSta";
this.lblThisSta.Size = new System.Drawing.Size(511, 62);
this.lblThisSta.Size = new System.Drawing.Size(652, 84);
this.lblThisSta.TabIndex = 246;
this.lblThisSta.Text = "等待启动";
this.lblThisSta.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
......@@ -574,10 +574,10 @@
this.lblInstoreList.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblInstoreList.ForeColor = System.Drawing.Color.Green;
this.lblInstoreList.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblInstoreList.Location = new System.Drawing.Point(149, 139);
this.lblInstoreList.Location = new System.Drawing.Point(249, 65);
this.lblInstoreList.Name = "lblInstoreList";
this.lblInstoreList.Size = new System.Drawing.Size(507, 119);
this.lblInstoreList.TabIndex = 277;
this.lblInstoreList.Size = new System.Drawing.Size(407, 96);
this.lblInstoreList.TabIndex = 277;
//
// tabPage2
//
......
......@@ -439,7 +439,7 @@ namespace OnlineStore.DeviceLibrary
ConfigIO io = baseConfig.getWaitIO(wait.IoType);
WarnMsg = moveInfo.Name + "[" + moveInfo.MoveType + "][" + moveInfo.MoveStep + "] 等待" + NotOkMsg + " 超时 " + Math.Round(span.TotalSeconds, 1) + "秒";
LogUtil.error(MoveInfo.Name + WarnMsg, DeviceID * 1000 + 13);
LogUtil.error( WarnMsg, DeviceID * 1000 + 13);
if (NoAlarm())
{
Alarm(LineAlarmType.IoSingleTimeOut);
......
......@@ -117,7 +117,7 @@ namespace OnlineStore.DeviceLibrary
IOMove(IO_Type.SL_Buffer_StopDown, IO_VALUE.LOW);
IOMove(IO_Type.SL_Out_StopDown, IO_VALUE.LOW);
//夹紧气缸放松
CylinderMove(null, IO_Type.SL_ClampCylinder_Relax, IO_Type.SL_ClampCylinder_Work);
CylinderMove(null, IO_Type.SL_ClampCylinder_Work, IO_Type.SL_ClampCylinder_Relax);
if (Config.DOList.ContainsKey(IO_Type.SL_RollerLine_Run))
{
IOMove(IO_Type.SL_RollerLine_Run, IO_VALUE.LOW);
......@@ -256,7 +256,7 @@ namespace OnlineStore.DeviceLibrary
case LineMoveStep.FR_16_BatchAxisToP1:
MoveInfo.NextMoveStep(LineMoveStep.FR_17_ClampCheck);
DebugInfo(MoveInfo.MoveType + " : 等待夹爪料盘检测信号无料");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.ClampCylinder_Check, IO_VALUE.LOW));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SL_ClampCylinder_Check, IO_VALUE.LOW));
break;
case LineMoveStep.FR_17_ClampCheck:
......@@ -307,10 +307,7 @@ namespace OnlineStore.DeviceLibrary
CheckAndMove(IO_Type.SL_Buffer_StopDown, IO_VALUE.LOW);
CheckAndMove(IO_Type.SL_Out_StopDown, IO_VALUE.LOW);
}
/// <summary>
/// 停止运行
/// </summary>
public override void StopRun()
{
runStatus = LineRunStatus.Wait;
......@@ -319,7 +316,7 @@ namespace OnlineStore.DeviceLibrary
mainTimer.Enabled = false;
}
StopMove();
CloseLed();
AgvClient.SetStatus(Config.AgvInName, "", ClientAction.None, ClientLevel.Low, true);
AgvClient.SetStatus(Config.AgvOutName, "", ClientAction.None, ClientLevel.Low, true);
}
......@@ -439,16 +436,100 @@ namespace OnlineStore.DeviceLibrary
needEnterWatch.Stop();
AgvClient.SetToNone(Config.AgvInName);
}
LedProcess();
}
private Stopwatch needEnterWatch = new Stopwatch();
private Stopwatch needLeaveWatch = new Stopwatch();
private void CloseLed()
{
CheckAndMove(IO_Type.SL_AlarmLed, IO_VALUE.LOW);
CheckAndMove(IO_Type.SL_HddLed, IO_VALUE.LOW);
}
private DateTime lastProLedTime = DateTime.Now;
private void LedProcess()
{
try
{
TimeSpan span = DateTime.Now - lastProLedTime;
if (span.TotalSeconds < 1)
{
return;
}
lastProLedTime = DateTime.Now;
if (runStatus <= LineRunStatus.Wait)
{
CloseLed();
return;
}
//报警时红灯闪烁,待机时绿灯亮,复位时绿灯闪烁 忙碌时绿灯闪烁
bool isNeedAlarmLed = false;
bool isBusy = false;
if (runStatus.Equals(LineRunStatus.HomeMoving) || runStatus.Equals(LineRunStatus.Reset))
{
isBusy = true;
}
if (MoveInfo.MoveType.Equals(LineMoveType.InStore) || MoveInfo.MoveType.Equals(LineMoveType.OutStore))
{
isBusy = true;
}
if (isInSuddenDown || isNoAirCheck || alarmType > LineAlarmType.AxisAlarm || (!alarmType.Equals(LineAlarmType.None)))
{
isNeedAlarmLed = true;
}
// 忙碌中,绿灯闪烁
if (isBusy)
{
if (IOValue(IO_Type.SL_HddLed).Equals(IO_VALUE.LOW))
{
IOMove(IO_Type.SL_HddLed, IO_VALUE.HIGH);
}
else
{
IOMove(IO_Type.SL_HddLed, IO_VALUE.LOW);
}
}
else if (IOValue(IO_Type.SL_HddLed).Equals(IO_VALUE.HIGH))
{
IOMove(IO_Type.SL_HddLed, IO_VALUE.LOW);
}
// 报警中 ,红灯闪烁
if (isNeedAlarmLed)
{
if (IOValue(IO_Type.SL_AlarmLed).Equals(IO_VALUE.LOW))
{
IOMove(IO_Type.SL_AlarmLed, IO_VALUE.HIGH);
}
else
{
IOMove(IO_Type.SL_AlarmLed, IO_VALUE.LOW);
}
}
else if (IOValue(IO_Type.SL_AlarmLed).Equals(IO_VALUE.HIGH))
{
IOMove(IO_Type.SL_AlarmLed, IO_VALUE.LOW);
}
}
catch (Exception ex)
{
LogUtil.error(Name + "灯处理定时器出错:", ex);
}
Thread.Sleep(5);
}
#region 气缸判断及动作
public void TopCylinderUp(LineMoveInfo moveinfo = null)
{
CylinderMove(moveinfo, IO_Type.SL_TopCylinder_Down, IO_Type.TopCylinder_Up);
CylinderMove(moveinfo, IO_Type.SL_TopCylinder_Down, IO_Type.SL_TopCylinder_Up);
if (moveinfo != null)
{
moveinfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SL_OutTopCylinder_Down, IO_VALUE.LOW));
......
......@@ -21,6 +21,8 @@ namespace OnlineStore.DeviceLibrary
public HY_C1Line(string cid, HYEquip_Config config) : base(cid, config)
{
Name = (" C1HY" + (DeviceID % 100).ToString().PadLeft(2, '0') + " ").ToUpper();
MoveInfo.Name = Name;
SecondMoveInfo.Name = Name;
}
public override bool StartRun(bool isDebug = false)
......@@ -108,6 +110,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.EndMove();
SecondMoveInfo.EndMove();
runStatus = LineRunStatus.Runing;
LogInfo("停止运动:横移线体停止,阻挡上升,顶升气缸下降,定位气缸下降 ");
LineStop();
if (IsDebug)
......@@ -201,10 +204,14 @@ namespace OnlineStore.DeviceLibrary
{
//托盘在工位阻挡处
MoveInfo.NewMove(LineMoveType.CheckFixture);
runStatus = LineRunStatus.Busy;
MoveInfo.NextMoveStep(LineMoveStep.HY03_FrontStopUp);
LogInfo("检测托盘," + MoveInfo.SLog + " ,阻挡上升");
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.LOW);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_FrontStopCheck, IO_VALUE.LOW));
if (Config.DOList.ContainsKey(IO_Type.HY_FrontStopDown))
{
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.LOW);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_FrontStopDown, IO_VALUE.LOW));
}
IOMove(IO_Type.HY_StopDown, IO_VALUE.LOW);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
IOMove(IO_Type.HY_OL_StopDown, IO_VALUE.LOW);
......@@ -219,10 +226,11 @@ namespace OnlineStore.DeviceLibrary
trayCheckWait.Stop();
trayCheck2LowWait.Stop();
MoveInfo.NewMove(LineMoveType.CheckFixture);
runStatus = LineRunStatus.Busy;
MoveInfo.NextMoveStep(LineMoveStep.HY02_FrontStopDown);
LogInfo(" 托盘检测:" + MoveInfo.SLog + ",检测到前阻挡托盘 ,前阻挡下降,清理托盘RFID,顶升气缸下降");
ClearTrayRFID();
IOMove(IO_Type.HY_FrontStopCheck, IO_VALUE.HIGH, 1200);
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.HIGH, 1200);
MoveInfo.OneWaitCanEndStep = true;
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_FrontStopCheck, IO_VALUE.LOW));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
......@@ -239,6 +247,7 @@ namespace OnlineStore.DeviceLibrary
trayCheckWait.Stop();
trayCheck2LowWait.Stop();
MoveInfo.NewMove(LineMoveType.CheckFixture);
runStatus = LineRunStatus.Busy;
MoveInfo.NextMoveStep(LineMoveStep.HY71_OL_Wait);
LogInfo(" 托盘检测:" + MoveInfo.SLog + ",检测到出料线托盘 ");
ClearTrayRFID();
......@@ -369,6 +378,7 @@ namespace OnlineStore.DeviceLibrary
{
CheckLog("C1线->出料线" + MoveInfo.SLog + " ,结束处理 ");
MoveInfo.EndMove();
runStatus = LineRunStatus.Runing;
}
#endregion
......@@ -384,11 +394,12 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.IsStep(LineMoveStep.HY12_WaitHY2Free))
{
HYEquipBase hyout = GetHyOutEquip();
if (hyout.MoveInfo.MoveType.Equals(LineMoveType.None))
if (hyout.MoveInfo.MoveType.Equals(LineMoveType.None)&&hyout.runStatus.Equals(LineRunStatus.Runing))
{
MoveInfo.NextMoveStep(LineMoveStep.HY13_WaitHY2Ready);
CheckLog("托盘横移" + MoveInfo.SLog + " ,等待" + hyout.Name + " 准备完成(顶升上升,定位下降) ");
hyout.MoveInfo.NewMove(LineMoveType.CheckFixture);
hyout.runStatus = LineRunStatus.Busy;
hyout.MoveInfo.NextMoveStep(LineMoveStep.HY51_WaitFree);
ClearTimeoutAlarm("等待" + hyout.Name + "可以横移超时");
}
......@@ -460,6 +471,7 @@ namespace OnlineStore.DeviceLibrary
{
CheckLog("托盘横移" + MoveInfo.SLog + " ,结束横移处理 ");
MoveInfo.EndMove();
runStatus = LineRunStatus.Runing;
}
#endregion
......@@ -633,6 +645,7 @@ namespace OnlineStore.DeviceLibrary
{
CheckLog(" 结束托盘处理 ");
MoveInfo.EndMove();
runStatus = LineRunStatus.Runing;
}
#endregion
......
......@@ -18,6 +18,8 @@ namespace OnlineStore.DeviceLibrary
public HY_C1_SLStation(string cid, HYEquip_Config config) : base(cid, config)
{
Name = (" C1HY" + (DeviceID % 100).ToString().PadLeft(2, '0') + " ").ToUpper();
MoveInfo.Name = Name;
SecondMoveInfo.Name = Name;
}
public override bool StartRun(bool isDebug = false)
......@@ -105,6 +107,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.EndMove();
SecondMoveInfo.EndMove();
runStatus = LineRunStatus.Runing;
LogInfo("停止运动:横移线体停止,阻挡上升,顶升气缸下降,定位气缸下降 ");
if (IsDebug)
......@@ -196,6 +199,7 @@ namespace OnlineStore.DeviceLibrary
if (CheckStopWatch(trayCheckWait, TrayWaitTime, true))
{
MoveInfo.NewMove(LineMoveType.CheckFixture);
runStatus = LineRunStatus.Busy;
if (Config.IsSideWayIn)
{
MoveInfo.NextMoveStep(LineMoveStep.HY03_FrontStopUp);
......@@ -228,6 +232,7 @@ namespace OnlineStore.DeviceLibrary
trayCheck2LowWait.Stop();
//托盘在第一个阻挡处
MoveInfo.NewMove(LineMoveType.CheckFixture);
runStatus = LineRunStatus.Busy;
MoveInfo.NextMoveStep(LineMoveStep.HY02_FrontStopDown);
LogInfo(" 托盘检测:" + MoveInfo.SLog + ",检测到前阻挡托盘检测,前阻挡下降,清理托盘RFID");
ClearTrayRFID();
......@@ -358,7 +363,7 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.IsStep(LineMoveStep.HY12_WaitHY2Free))
{
HYEquipBase hyOut = GetHyOutEquip();
if (hyOut.MoveInfo.MoveType.Equals(LineMoveType.None))
if (hyOut.MoveInfo.MoveType.Equals(LineMoveType.None)&&hyOut.runStatus.Equals(LineRunStatus.Runing))
{
MoveInfo.NextMoveStep(LineMoveStep.HY13_WaitHY2Ready);
CheckLog("托盘横移" + MoveInfo.SLog + " ,等待"+ hyOut.Name + "准备完成(顶升上升,定位下降) ");
......@@ -432,6 +437,7 @@ namespace OnlineStore.DeviceLibrary
{
CheckLog("托盘横移" + MoveInfo.SLog + " ,结束横移处理 ");
MoveInfo.EndMove();
runStatus = LineRunStatus.Runing;
}
#endregion
......@@ -532,6 +538,7 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.IsStep(LineMoveStep.HY65_TopUp))
{
MoveInfo.EndMove();
runStatus = LineRunStatus.Runing;
CheckLog("托盘阻挡" + MoveInfo.SLog + " 处理完成");
}
else
......
......@@ -29,6 +29,8 @@ namespace OnlineStore.DeviceLibrary
{
Name = (" J3HY" + (DeviceID % 100).ToString().PadLeft(2, '0') + " ").ToUpper();
}
MoveInfo.Name = Name;
SecondMoveInfo.Name = Name;
}
public override bool StartRun(bool isDebug = false)
......@@ -112,7 +114,7 @@ namespace OnlineStore.DeviceLibrary
{
MoveInfo.NextMoveStep(LineMoveStep.JHY_R05_ClampCheck);
LogInfo(MoveInfo.MoveType + " " + MoveInfo.MoveStep + ": 等待夹爪无信号");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.ClampCylinder_Check, IO_VALUE.LOW));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_ClampCylinder_Check, IO_VALUE.LOW));
}
else if (MoveInfo.IsStep(LineMoveStep.JHY_R05_ClampCheck))
{
......@@ -173,7 +175,7 @@ namespace OnlineStore.DeviceLibrary
BusyMoveProcess();
if (MoveInfo.MoveType.Equals(LineMoveType.None) && (!MoveStop))
{
if (LineManager.Line.CanProcessLine())
if (LineManager.Line.OutHyCanProLine())
{
CheckFixture();
}
......
......@@ -103,7 +103,7 @@ namespace OnlineStore.DeviceLibrary
}
protected override void FixtureProcess()
{
if (!LineManager.Line.CanProcessLine())
if (!LineManager.Line.OutHyCanProLine())
{
return;
}
......
......@@ -15,6 +15,8 @@ namespace OnlineStore.DeviceLibrary
public HY_OutLine(string cid, HYEquip_Config config) : base(cid, config)
{
Name = (" "+config.LineName+"HY" + (DeviceID % 100).ToString().PadLeft(2, '0') + " ").ToUpper();
MoveInfo.Name = Name;
SecondMoveInfo.Name = Name;
}
public override bool StartRun(bool isDebug = false)
{
......@@ -114,7 +116,7 @@ namespace OnlineStore.DeviceLibrary
{
if (MoveInfo.MoveType.Equals(LineMoveType.None))
{
if (LineManager.Line.CanProcessLine())
if (LineManager.Line.OutHyCanProLine())
{
CheckFixture();
}
......@@ -191,7 +193,7 @@ namespace OnlineStore.DeviceLibrary
trayCheckWait.Stop();
trayCheck2LowWait.Stop();
MoveInfo.NewMove(LineMoveType.CheckFixture);
MoveInfo.NextMoveStep(LineMoveStep.OHY01_LongLCheck);
MoveInfo.NextMoveStep(LineMoveStep.OHY11_ShortLCheck);
LogInfo(" 出料线横移(长线):" + MoveInfo.SLog + ",短线阻挡检测到托盘");
ClearTrayRFID();
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_ShortL_StopCheck, IO_VALUE.HIGH));
......@@ -244,7 +246,7 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.IsStep(LineMoveStep.OHY02_TopDown))
{
MoveInfo.NextMoveStep(LineMoveStep.OHY03_LongLStopDown);
CheckLog("出料线横移(长线)" + MoveInfo.SLog + " 长线体阻挡下降");
CheckLog("出料线横移(长线)" + MoveInfo.SLog + " 长线体阻挡下降1200");
IOMove(IO_Type.HY_LongL_StopDown, IO_VALUE.HIGH, 1200);
}
else if (MoveInfo.IsStep(LineMoveStep.OHY03_LongLStopDown))
......@@ -303,8 +305,9 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.IsStep(LineMoveStep.OHY15_TrayCheck))
{
MoveInfo.NextMoveStep(LineMoveStep.OHY16_TopDown);
CheckLog("出料线横移(短线)" + MoveInfo.SLog + " 顶升气缸下降");
CheckLog("出料线横移(短线)" + MoveInfo.SLog + " 顶升气缸下降,线体停止");
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
LineStop(MoveInfo);
}
else if (MoveInfo.IsStep(LineMoveStep.OHY16_TopDown))
{
......
......@@ -17,10 +17,10 @@ namespace OnlineStore.DeviceLibrary
public bool CanProcessLine(bool isCheckSleep = true)
{
if (runStatus <= LineRunStatus.Wait)
{
return false ;
}
//if (runStatus <= LineRunStatus.Wait)
//{
// return false ;
//}
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) &&
......@@ -30,7 +30,15 @@ namespace OnlineStore.DeviceLibrary
}
return false;
}
public bool OutHyCanProLine()
{
if (IOManager.IOValue(IO_Type.MotorRun_679, 0).Equals(IO_VALUE.HIGH) ||
IOManager.IOValue(IO_Type.MotorRun_23458, 0).Equals(IO_VALUE.HIGH))
{
return true;
}
return false;
}
private DateTime preIoTimerOutTime = DateTime.Now;
private void IOTimeOutProcess()
......@@ -100,9 +108,9 @@ namespace OnlineStore.DeviceLibrary
if (span.TotalSeconds > LineManager.Config.IOSingle_TimerOut && NoAlarm())
{
ConfigIO io = baseConfig.getWaitIO(wait.IoType);
WarnMsg = Name + "[" + checkWaitInfo.MoveStep + "]等待" + NotOkMsg + " 超时";
WarnMsg = checkWaitInfo.Name + "[" + checkWaitInfo.MoveStep + "]等待" + NotOkMsg + " 超时";
Alarm(LineAlarmType.IoSingleTimeOut);
LogUtil.error(MoveInfo.Name + WarnMsg, 901);
LogUtil.error( WarnMsg, 901);
}
//超过报警时长
else if (rwSpan.TotalSeconds > 5 && span.TotalSeconds > 6 && span.TotalSeconds < LineManager.Config.IOSingle_TimerOut * 2)
......
......@@ -563,6 +563,10 @@ namespace OnlineStore.DeviceLibrary
string msg = "";
try
{
if (string.IsNullOrEmpty(serverAddr))
{
return msg;
}
Dictionary<string, string> paramMap = new Dictionary<string, string>();
string msgListStr = JsonHelper.SerializeObject(msgList);
paramMap.Add("deviceAlarmList", msgListStr);
......
......@@ -414,20 +414,20 @@ namespace OnlineStore.DeviceLibrary
if (IoHighType.Equals(IO_Type.ClampCylinder_Work) || IoHighType.Equals(IO_Type.ClampCylinder_Relax) ||
IoHighType.Equals(IO_Type.UpDownCylinder_Down) || IoHighType.Equals(IO_Type.UpDownCylinder_Up)||
IoHighType.Equals(IO_Type.UpDownCylinder_Down) || IoHighType.Equals(IO_Type.UpDownCylinder_Up) ||
IoHighType.Equals(IO_Type.BeforeAfterCylinder_After) || IoHighType.Equals(IO_Type.BeforeAfterCylinder_Before)
)
{
moveInfo.WaitList.Add(WaitResultInfo.WaitTime(300));
}
}
//如果是进仓门口 夹紧
if (baseConfig.DType.Equals(DeviceType.MoveEquip) && (IoHighType.Equals(IO_Type.SL_ClampCylinder_Work)))
if (baseConfig.DType.Equals(DeviceType.FeedingEquip) && (IoHighType.Equals(IO_Type.SL_ClampCylinder_Work)))
{
//夹爪夹紧
moveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
moveInfo.WaitList.Add(WaitResultInfo.WaitIO(IoLowType, IO_VALUE.LOW));
}
if (baseConfig.DType.Equals(DeviceType.MoveEquip) && (IoHighType.Equals(IO_Type.SL_ClampCylinder_Relax)))
else if (baseConfig.DType.Equals(DeviceType.FeedingEquip) && (IoHighType.Equals(IO_Type.SL_ClampCylinder_Relax)))
{
//夹爪放松
moveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
......@@ -445,6 +445,18 @@ namespace OnlineStore.DeviceLibrary
moveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
moveInfo.WaitList.Add(WaitResultInfo.WaitIO(IoLowType, IO_VALUE.LOW));
}
else if (baseConfig.DType.Equals(DeviceType.HYEquip) && (IoHighType.Equals(IO_Type.HY_ClampCylinder_Relax)))
{
//夹爪放松
moveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
moveInfo.WaitList.Add(WaitResultInfo.WaitIO(IoHighType, IO_VALUE.HIGH));
}
else if (baseConfig.DType.Equals(DeviceType.HYEquip) && (IoHighType.Equals(IO_Type.HY_ClampCylinder_Work)))
{
//夹爪夹紧
moveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
moveInfo.WaitList.Add(WaitResultInfo.WaitIO(IoLowType, IO_VALUE.LOW));
}
else
{
moveInfo.WaitList.Add(WaitResultInfo.WaitIO(IoLowType, IO_VALUE.LOW));
......
此文件的差异太大,无法显示。
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!