Commit f17ebf35 LN

bug修改,超时报警自动清除

1 个父辈 6811af88
...@@ -509,7 +509,7 @@ namespace OnlineStore.AutoCountClient ...@@ -509,7 +509,7 @@ namespace OnlineStore.AutoCountClient
private void btnScan_Click(object sender, EventArgs e) private void btnScan_Click(object sender, EventArgs e)
{ {
equipBean.IOMove(IO_Type.Camera_Led, IO_VALUE.HIGH); equipBean.IOMove(IO_Type.Camera_Led, IO_VALUE.HIGH);
List<string> LastCodeList = CodeManager.CameraScan(equipBean.Name,equipBean.Config.LeftCamera ); List<string> LastCodeList = CodeManager.CameraScan(equipBean.Name+"测试",equipBean.Config.LeftCamera );
string msg = CodeManager.GetValidCode(LastCodeList); string msg = CodeManager.GetValidCode(LastCodeList);
equipBean.IOMove(IO_Type.Camera_Led, IO_VALUE.LOW); equipBean.IOMove(IO_Type.Camera_Led, IO_VALUE.LOW);
LogUtil.info(equipBean.Name + "[" + equipBean.Config.LeftCamera + "]扫码测试结果:\r\n" + msg); LogUtil.info(equipBean.Name + "[" + equipBean.Config.LeftCamera + "]扫码测试结果:\r\n" + msg);
...@@ -644,7 +644,7 @@ namespace OnlineStore.AutoCountClient ...@@ -644,7 +644,7 @@ namespace OnlineStore.AutoCountClient
private void btnRScan_Click(object sender, EventArgs e) private void btnRScan_Click(object sender, EventArgs e)
{ {
equipBean.IOMove(IO_Type.Camera_Led, IO_VALUE.HIGH); equipBean.IOMove(IO_Type.Camera_Led, IO_VALUE.HIGH);
List<string> LastCodeList = CodeManager.CameraScan(equipBean.Name,equipBean.Config.RightCamera ); List<string> LastCodeList = CodeManager.CameraScan(equipBean.Name+"测试",equipBean.Config.RightCamera );
string msg = CodeManager.GetValidCode(LastCodeList); string msg = CodeManager.GetValidCode(LastCodeList);
equipBean.IOMove(IO_Type.Camera_Led, IO_VALUE.LOW); equipBean.IOMove(IO_Type.Camera_Led, IO_VALUE.LOW);
LogUtil.info(equipBean.Name + "[" + equipBean.Config.RightCamera + "]扫码测试结果:\r\n" + msg); LogUtil.info(equipBean.Name + "[" + equipBean.Config.RightCamera + "]扫码测试结果:\r\n" + msg);
......
...@@ -354,6 +354,7 @@ namespace OnlineStore.AutoCountClient ...@@ -354,6 +354,7 @@ namespace OnlineStore.AutoCountClient
MessageBox.Show(robot.Name + "设备未启动,无法复位"); MessageBox.Show(robot.Name + "设备未启动,无法复位");
return; return;
} }
LogUtil.info(robot.Name + " 点击:复位");
robot.Reset(); robot.Reset();
} }
private void FrmLineStore_FormClosed(object sender, FormClosedEventArgs e) private void FrmLineStore_FormClosed(object sender, FormClosedEventArgs e)
...@@ -363,6 +364,7 @@ namespace OnlineStore.AutoCountClient ...@@ -363,6 +364,7 @@ namespace OnlineStore.AutoCountClient
停止TToolStripMenuItem_Click(null, null); 停止TToolStripMenuItem_Click(null, null);
} }
LogUtil.info(robot.Name + " 点击:停止");
AgvClient.Dispose(); AgvClient.Dispose();
if (IOManager.instance != null) if (IOManager.instance != null)
{ {
......
...@@ -483,7 +483,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -483,7 +483,7 @@ namespace OnlineStore.DeviceLibrary
WarnMsg = moveInfo.Name + "[" + moveInfo.MoveType + "][" + moveInfo.MoveStep + "]等待" + NotOkMsg + "超时[" + Math.Round(span.TotalSeconds, 1) + "]秒"; WarnMsg = moveInfo.Name + "[" + moveInfo.MoveType + "][" + moveInfo.MoveStep + "]等待" + NotOkMsg + "超时[" + Math.Round(span.TotalSeconds, 1) + "]秒";
int second = 10; int second = 10;
second = (int)(moveInfo.TimeOutSeconds / span.TotalSeconds) * 10; second = (int)(span.TotalSeconds/ moveInfo.TimeOutSeconds) * 10;
if (second > 120) if (second > 120)
{ {
second = 120; second = 120;
......
...@@ -278,11 +278,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -278,11 +278,11 @@ namespace OnlineStore.DeviceLibrary
Task<List<string>> scanTask = Task.Factory.StartNew(delegate Task<List<string>> scanTask = Task.Factory.StartNew(delegate
{ {
Robot.IOMove(IO_Type.Camera_Led, IO_VALUE.HIGH); Robot.IOMove(IO_Type.Camera_Led, IO_VALUE.HIGH);
NextCodeList = CodeManager.CameraScan(Name, CameraName); NextCodeList = CodeManager.CameraScan(Name+"预扫码", CameraName);
if (NextCodeList.Count <= 0) //if (NextCodeList.Count <= 0)
{ //{
NextCodeList = CodeManager.CameraScan(Name, CameraName); // NextCodeList = CodeManager.CameraScan(Name, CameraName);
} //}
Robot.IOMove(IO_Type.Camera_Led, IO_VALUE.LOW); Robot.IOMove(IO_Type.Camera_Led, IO_VALUE.LOW);
return NextCodeList; return NextCodeList;
}); });
......
...@@ -415,7 +415,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -415,7 +415,7 @@ namespace OnlineStore.DeviceLibrary
+ "超时[" + Math.Round(span.TotalSeconds, 1) + "]秒"; + "超时[" + Math.Round(span.TotalSeconds, 1) + "]秒";
int second = 10; int second = 10;
second = (int)(moveInfo.TimeOutSeconds / span.TotalSeconds) * 10; second = (int)(span.TotalSeconds/moveInfo.TimeOutSeconds ) * 10;
if (second > 120) if (second > 120)
{ {
second = 120; second = 120;
...@@ -455,7 +455,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -455,7 +455,7 @@ namespace OnlineStore.DeviceLibrary
{ {
if (!MoveInfo.MoveParam.WareCode.Equals("")) if (!MoveInfo.MoveParam.WareCode.Equals(""))
{ {
code = "[" + MoveInfo.MoveParam.WareCode + "]"; code = MoveInfo.MoveParam.WareCode ;
} }
} }
if (level.Equals(1)) if (level.Equals(1))
...@@ -734,5 +734,18 @@ namespace OnlineStore.DeviceLibrary ...@@ -734,5 +734,18 @@ namespace OnlineStore.DeviceLibrary
} }
return false; return false;
} }
protected void ClearTimeoutAlarm(string msg)
{
if (isInSuddenDown || isNoAirCheck)
{
return;
}
if (WarnMsg.Contains(msg) && alarmType.Equals(AlarmType.IoSingleTimeOut))
{
LogUtil.info(Name + "清理信号超时报警【" + WarnMsg + "】 ");
alarmType = AlarmType.None;
SetWarnMsg("");
}
}
} }
} }
...@@ -174,6 +174,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -174,6 +174,7 @@ namespace OnlineStore.DeviceLibrary
BatchMoveBean moveBean = MoveInfo.MoveParam.InPosType.Equals(1) ? LeftBatchMove : RightBatchMove; BatchMoveBean moveBean = MoveInfo.MoveParam.InPosType.Equals(1) ? LeftBatchMove : RightBatchMove;
if (moveBean.LastHeight > 0 || isOk) if (moveBean.LastHeight > 0 || isOk)
{ {
ClearTimeoutAlarm("测高结束超时");
MoveInfo.NextMoveStep(StepEnum.IW10_SaveSize); MoveInfo.NextMoveStep(StepEnum.IW10_SaveSize);
MoveInfo.MoveParam.PlateH = moveBean.LastHeight; MoveInfo.MoveParam.PlateH = moveBean.LastHeight;
MoveInfo.MoveParam.PlateW = GetWidth(); MoveInfo.MoveParam.PlateW = GetWidth();
......
...@@ -106,6 +106,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -106,6 +106,10 @@ namespace OnlineStore.DeviceLibrary
private bool CheckStartLabel(bool needAlarm=false) private bool CheckStartLabel(bool needAlarm=false)
{ {
if (MoveInfo.MoveParam == null)
{
return false;
}
if (MoveInfo.MoveParam.IsNgReel) if (MoveInfo.MoveParam.IsNgReel)
{ {
return false; return false;
...@@ -117,6 +121,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -117,6 +121,7 @@ namespace OnlineStore.DeviceLibrary
//TODO 记录信息,判断贴标模块当前空闲,此时可以打印标签(取码气缸前进,打印标签,取码气缸后退) //TODO 记录信息,判断贴标模块当前空闲,此时可以打印标签(取码气缸前进,打印标签,取码气缸后退)
if (SecMoveInfo.MoveType.Equals(RobotMoveType.None)) if (SecMoveInfo.MoveType.Equals(RobotMoveType.None))
{ {
ClearTimeoutAlarm("等待贴标模块空闲");
WorkLog("取料: 贴标模块开始打印标签"); WorkLog("取料: 贴标模块开始打印标签");
//TODO //TODO
bool result = StartLabelling(MoveInfo.MoveParam); bool result = StartLabelling(MoveInfo.MoveParam);
...@@ -250,6 +255,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -250,6 +255,7 @@ namespace OnlineStore.DeviceLibrary
WorkLog("放料:料串可放料,取料X轴移动到P3 "); WorkLog("放料:料串可放料,取料X轴移动到P3 ");
MoveXAxis.AbsMove(MoveInfo, Config.MoveX_P3, Config.MoveX_P3Speed); MoveXAxis.AbsMove(MoveInfo, Config.MoveX_P3, Config.MoveX_P3Speed);
ClearTimeoutAlarm("等待出料料串准备完成");
if (shelfOk) if (shelfOk)
{ {
ShelfMoveInfo.NextMoveStep(StepEnum.OS_21_BatchDownH); ShelfMoveInfo.NextMoveStep(StepEnum.OS_21_BatchDownH);
...@@ -277,6 +283,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -277,6 +283,7 @@ namespace OnlineStore.DeviceLibrary
bool debugOk = ShelfMoveInfo.MoveType.Equals(RobotMoveType.None) && MoveInfo.MoveParam.IsTest; bool debugOk = ShelfMoveInfo.MoveType.Equals(RobotMoveType.None) && MoveInfo.MoveParam.IsTest;
if (shelfOk || debugOk) if (shelfOk || debugOk)
{ {
ClearTimeoutAlarm("等待出料料串可放料");
MoveInfo.NextMoveStep(StepEnum.OT13_MoveZToP3); MoveInfo.NextMoveStep(StepEnum.OT13_MoveZToP3);
WorkLog("放料:取料Z轴下降到P3 "); WorkLog("放料:取料Z轴下降到P3 ");
MoveZAxis.AbsMove(MoveInfo, Config.GetMoveZP3(MoveInfo.MoveParam.PlateH), Config.MoveZ_P3Speed); MoveZAxis.AbsMove(MoveInfo, Config.GetMoveZP3(MoveInfo.MoveParam.PlateH), Config.MoveZ_P3Speed);
...@@ -319,17 +326,20 @@ namespace OnlineStore.DeviceLibrary ...@@ -319,17 +326,20 @@ namespace OnlineStore.DeviceLibrary
} }
else if (MoveInfo.IsStep(StepEnum.OT16_MoveXToP2)) else if (MoveInfo.IsStep(StepEnum.OT16_MoveXToP2))
{ {
TimeSpan span = DateTime.Now - MoveInfo.MoveStartTime; TimeSpan span = DateTime.Now - MoveInfo.MoveStartTime;
if (IsStartLabel) if (IsStartLabel)
{ {
MoveInfo.EndMove(); MoveInfo.EndMove();
WorkLog("放料完成,耗时(" + FormUtil.GetSpanStr(span) + ")"); WorkLog("放料完成,耗时(" + FormUtil.GetSpanStr(span) + ")");
} }
bool startOk = CheckStartLabel(true); else
if (startOk)
{ {
MoveInfo.EndMove(); bool startOk = CheckStartLabel(true);
WorkLog("放料完成,耗时(" + FormUtil.GetSpanStr(span) + ")"); if (startOk)
{
MoveInfo.EndMove();
WorkLog("放料完成,耗时(" + FormUtil.GetSpanStr(span) + ")");
}
} }
} }
...@@ -440,6 +450,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -440,6 +450,7 @@ namespace OnlineStore.DeviceLibrary
{ {
if (isPrintOk || isTimeOut || (!NeedPrint)) if (isPrintOk || isTimeOut || (!NeedPrint))
{ {
ClearTimeoutAlarm("打印标签完成");
SecMoveInfo.NextMoveStep(StepEnum.OL05_TakeBack); SecMoveInfo.NextMoveStep(StepEnum.OL05_TakeBack);
SecWorkLog("贴标: 打印结束[" + RobotManager.LastPrintStatus + "][" + (isTimeOut ? "超时120秒" : "") + "], "); SecWorkLog("贴标: 打印结束[" + RobotManager.LastPrintStatus + "][" + (isTimeOut ? "超时120秒" : "") + "], ");
//CylinderMove(SecMoveInfo, IO_Type.TakeCode_Forward, IO_Type.TakeCode_Back); //CylinderMove(SecMoveInfo, IO_Type.TakeCode_Forward, IO_Type.TakeCode_Back);
...@@ -495,6 +506,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -495,6 +506,7 @@ namespace OnlineStore.DeviceLibrary
if (canLabel && ShelfMoveInfo.IsStep(StepEnum.OS_25_WaitLabel)) if (canLabel && ShelfMoveInfo.IsStep(StepEnum.OS_25_WaitLabel))
{ {
ClearTimeoutAlarm("料盘可贴标");
SecMoveInfo.NextMoveStep(StepEnum.OL11_XYToP3); SecMoveInfo.NextMoveStep(StepEnum.OL11_XYToP3);
SecWorkLog("贴标: XY轴移动到P3点", 0); SecWorkLog("贴标: XY轴移动到P3点", 0);
......
...@@ -252,6 +252,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -252,6 +252,7 @@ namespace OnlineStore.DeviceLibrary
//TODO 此处需要验证贴标完成 //TODO 此处需要验证贴标完成
if (SecMoveInfo.MoveType.Equals(RobotMoveType.None)) if (SecMoveInfo.MoveType.Equals(RobotMoveType.None))
{ {
ClearTimeoutAlarm("贴标结束");
ShelfMoveInfo.NextMoveStep(StepEnum.OS_26_LabelOk); ShelfMoveInfo.NextMoveStep(StepEnum.OS_26_LabelOk);
ShelfWorkLog("贴标完成"); ShelfWorkLog("贴标完成");
} }
......
...@@ -186,6 +186,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -186,6 +186,7 @@ namespace OnlineStore.DeviceLibrary
} }
else if (IOValue(IO_Type.X_Lock_On).Equals(IO_VALUE.HIGH)) else if (IOValue(IO_Type.X_Lock_On).Equals(IO_VALUE.HIGH))
{ {
MoveInfo.NextMoveStep(StepEnum.XW11_StartCount); MoveInfo.NextMoveStep(StepEnum.XW11_StartCount);
WorkLog("点料:启用X射线点料,等待X射线可以启动"); WorkLog("点料:启用X射线点料,等待X射线可以启动");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
...@@ -204,6 +205,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -204,6 +205,8 @@ namespace OnlineStore.DeviceLibrary
{ {
if (xRayCanStart && (IOValue(IO_Type.X_Lock_On).Equals(IO_VALUE.HIGH)) ) if (xRayCanStart && (IOValue(IO_Type.X_Lock_On).Equals(IO_VALUE.HIGH)) )
{ {
ClearTimeoutAlarm("可以打开X射线");
ClearTimeoutAlarm("X互锁信号打开");
XW12_XRayStart(); XW12_XRayStart();
} }
else if (MoveInfo.IsTimeOut(120)) else if (MoveInfo.IsTimeOut(120))
......
...@@ -87,7 +87,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -87,7 +87,7 @@ namespace OnlineStore.DeviceLibrary
{ {
TimeSpan span = DateTime.Now - LastSetpTime; TimeSpan span = DateTime.Now - LastSetpTime;
int second = 10; int second = 10;
second = (int)(TimeOutSeconds / span.TotalSeconds) * 10; second = (int)( span.TotalSeconds/ TimeOutSeconds) * 10;
if (second > 120) if (second > 120)
{ {
second = 120; second = 120;
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!