Commit 0c465ecf LN

贴标增加配置。调试bug修改。

1 个父辈 081d831e
...@@ -45,6 +45,8 @@ ...@@ -45,6 +45,8 @@
<add key ="LabelName" value ="test2"/> <add key ="LabelName" value ="test2"/>
<!--打印机名称--> <!--打印机名称-->
<add key ="PrinterName" value ="ZDesigner GT800-300dpi EPL"/> <add key ="PrinterName" value ="ZDesigner GT800-300dpi EPL"/>
<!--是否启用打印标签-->
<add key ="NeedPrintLabel" value ="0"/>
</appSettings> </appSettings>
<log4net> <log4net>
......
...@@ -78,5 +78,6 @@ namespace OnlineStore.Common ...@@ -78,5 +78,6 @@ namespace OnlineStore.Common
public static string LabelName = "LabelName"; public static string LabelName = "LabelName";
public static string PrinterName = "PrinterName"; public static string PrinterName = "PrinterName";
public static string NeedPrintLabel = "NeedPrintLabel";
} }
} }
...@@ -16,14 +16,14 @@ PRO,0,出料提升轴P3速度,BatchAxis_P3Speed,1500,,,,, ...@@ -16,14 +16,14 @@ PRO,0,出料提升轴P3速度,BatchAxis_P3Speed,1500,,,,,
PRO,0,出料提升轴高度转换系数(1mm对应的脉冲),Height_ChangeValue,10446,,,,, PRO,0,出料提升轴高度转换系数(1mm对应的脉冲),Height_ChangeValue,10446,,,,,
,,,,,,,,, ,,,,,,,,,
PRO,0,取料X轴待机点-P1,MoveX_P1,2001,,,,, PRO,0,取料X轴待机点-P1,MoveX_P1,2001,,,,,
PRO,0,取料X轴-取料点-P2集合,MoveX_P2List,0=150000;8=150000;12=150000;16=150000;24=150000;32=140000;44=120000;56=100000;13=4710;15=1350;11=10120;7=15900,,,,, PRO,0,取料X轴-取料点-P2集合,MoveX_P2List,0=15900;8=150000;12=150000;16=150000;24=150000;32=140000;44=120000;56=100000;13=4710;15=1350;11=10120;7=15900,,,,,
PRO,0,取料X轴-放料点-P3,MoveX_P3,77100,,,,, PRO,0,取料X轴-放料点-P3,MoveX_P3,77100,,,,,
PRO,0,取料X轴P1速度,MoveX_P1Speed,500,,,,, PRO,0,取料X轴P1速度,MoveX_P1Speed,500,,,,,
PRO,0,取料X轴P2速度,MoveX_P2Speed,500,,,,, PRO,0,取料X轴P2速度,MoveX_P2Speed,500,,,,,
PRO,0,取料X轴P3速度,MoveX_P3Speed,500,,,,, PRO,0,取料X轴P3速度,MoveX_P3Speed,500,,,,,
,,,,,,,,, ,,,,,,,,,
PRO,0,取料Z轴待机点-P1,MoveZ_P1,2000,,,,, PRO,0,取料Z轴待机点-P1,MoveZ_P1,2000,,,,,
PRO,0,取料Z轴-取料点-P2集合,MoveZ_P2List,0=120000;8=448700;12=443900;16=440000;24=429900;32=420100;44=409000;56=398620,,,,, PRO,0,取料Z轴-取料点-P2集合,MoveZ_P2List,0=448700;8=448700;12=443900;16=440000;24=429900;32=420100;44=409000;56=398620,,,,,
PRO,0,取料Z轴-放料点-P3集合,MoveZ_P3List,0=108750;8=109700;12=100000;16=99000;24=93000;32=89000;44=74000;56=63500,,,,, PRO,0,取料Z轴-放料点-P3集合,MoveZ_P3List,0=108750;8=109700;12=100000;16=99000;24=93000;32=89000;44=74000;56=63500,,,,,
PRO,0,取料Z轴P1速度,MoveZ_P1Speed,1000,,,,, PRO,0,取料Z轴P1速度,MoveZ_P1Speed,1000,,,,,
PRO,0,取料Z轴P2速度,MoveZ_P2Speed,1000,,,,, PRO,0,取料Z轴P2速度,MoveZ_P2Speed,1000,,,,,
......
...@@ -37,9 +37,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -37,9 +37,10 @@ namespace OnlineStore.DeviceLibrary
this.DeviceID = config.Id; this.DeviceID = config.Id;
this.Config = config; this.Config = config;
IsDebug = config.IsDebug.Equals(1); IsDebug = config.IsDebug.Equals(1);
baseConfig = config;
Name = (" " + "出料模块" + " ").ToUpper(); Name = (" " + "出料模块" + " ").ToUpper();
Init(); Init();
ledProcessTimer.Elapsed += LedProcess;
IoCheckTimer.Elapsed += IoCheckTimerProcess;
MoveInfo = new RobotMoveInfo(" 取放料 "); MoveInfo = new RobotMoveInfo(" 取放料 ");
SecMoveInfo = new RobotMoveInfo( " 贴标 "); SecMoveInfo = new RobotMoveInfo( " 贴标 ");
ShelfMoveInfo = new RobotMoveInfo(" ShelfMove "); ShelfMoveInfo = new RobotMoveInfo(" ShelfMove ");
...@@ -380,14 +381,16 @@ namespace OnlineStore.DeviceLibrary ...@@ -380,14 +381,16 @@ namespace OnlineStore.DeviceLibrary
} }
else else
{ {
if (MoveInfo.MoveType.Equals(RobotMoveType.Working))
{
WorkingProcess();
}
if (SecMoveInfo.MoveType.Equals(RobotMoveType.Labelling)) if (SecMoveInfo.MoveType.Equals(RobotMoveType.Labelling))
{ {
LabellingProcess(); LabellingProcess();
} }
if (MoveInfo.MoveType.Equals(RobotMoveType.Working))
{
WorkingProcess();
}
if (ShelfMoveInfo.MoveType.Equals(RobotMoveType.ShelfPro)) if (ShelfMoveInfo.MoveType.Equals(RobotMoveType.ShelfPro))
{ {
ShelfMoveProcess(); ShelfMoveProcess();
...@@ -422,7 +425,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -422,7 +425,8 @@ namespace OnlineStore.DeviceLibrary
if (NoErrorAlarm() && IOValue(IO_Type.Out_TrayCheck).Equals(IO_VALUE.HIGH) && IOValue(IO_Type.X_OLine_Run).Equals(IO_VALUE.LOW)) if (NoErrorAlarm() && IOValue(IO_Type.Out_TrayCheck).Equals(IO_VALUE.HIGH) && IOValue(IO_Type.X_OLine_Run).Equals(IO_VALUE.LOW))
{ {
//料串准备好才能取料 //料串准备好才能取料
if (OutReelCount >= 0 && SecMoveInfo.MoveType.Equals(RobotMoveType.None)) if (OutReelCount >= 0)
//if (OutReelCount >= 0 && SecMoveInfo.MoveType.Equals(RobotMoveType.None))
{ {
StartWorking(new WorkParam()); StartWorking(new WorkParam());
} }
......
...@@ -55,12 +55,6 @@ namespace OnlineStore.DeviceLibrary ...@@ -55,12 +55,6 @@ namespace OnlineStore.DeviceLibrary
LogUtil.error(MoveInfo.Name + "StartWorking 失败 , MoveInfo 忙碌中=" + MoveInfo.MoveType); LogUtil.error(MoveInfo.Name + "StartWorking 失败 , MoveInfo 忙碌中=" + MoveInfo.MoveType);
return false; return false;
} }
//if (SecMoveInfo.MoveType.Equals(RobotMoveType.None).Equals(false))
//{
// LogUtil.error(MoveInfo.Name + "StartWorking 失败 , 贴标模块忙碌中=" + SecMoveInfo.MoveType);
// return false;
//}
if (IOValue(IO_Type.Out_TrayCheck).Equals(IO_VALUE.HIGH) && IOValue(IO_Type.X_OLine_Run).Equals(IO_VALUE.LOW)) if (IOValue(IO_Type.Out_TrayCheck).Equals(IO_VALUE.HIGH) && IOValue(IO_Type.X_OLine_Run).Equals(IO_VALUE.LOW))
{ {
MoveInfo.NewMove(RobotMoveType.Working, StepEnum.OT01_WaitCheck); MoveInfo.NewMove(RobotMoveType.Working, StepEnum.OT01_WaitCheck);
...@@ -118,11 +112,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -118,11 +112,8 @@ namespace OnlineStore.DeviceLibrary
} }
else if (MoveInfo.IsStep(StepEnum.OT03_MoveXToP2)) else if (MoveInfo.IsStep(StepEnum.OT03_MoveXToP2))
{ {
MoveInfo.NextMoveStep(StepEnum.OT04_CheckNeedImage); //MoveInfo.NextMoveStep(StepEnum.OT04_CheckNeedImage);
WorkLog("取料:判断是否需要拍照 "); //WorkLog("取料:判断是否需要拍照 ");
}
else if (MoveInfo.IsStep(StepEnum.OT04_CheckNeedImage))
{
if (MoveInfo.MoveParam.IsNgReel) if (MoveInfo.MoveParam.IsNgReel)
{ {
MoveInfo.NextMoveStep(StepEnum.OT07_MoveZToP2); MoveInfo.NextMoveStep(StepEnum.OT07_MoveZToP2);
...@@ -136,9 +127,12 @@ namespace OnlineStore.DeviceLibrary ...@@ -136,9 +127,12 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
} }
} }
//else if (MoveInfo.IsStep(StepEnum.OT04_CheckNeedImage))
//{
//}
else if (MoveInfo.IsStep(StepEnum.OT05_GetImage)) else if (MoveInfo.IsStep(StepEnum.OT05_GetImage))
{ {
//TODO 记录信息,判断贴标模块当前空闲,此时可以打印标签(取码气缸前进,打印标签,取码气缸后退) //TODO 记录信息,判断贴标模块当前空闲,此时可以打印标签(取码气缸前进,打印标签,取码气缸后退)
if (SecMoveInfo.MoveType.Equals(RobotMoveType.None)) if (SecMoveInfo.MoveType.Equals(RobotMoveType.None))
{ {
...@@ -257,11 +251,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -257,11 +251,11 @@ namespace OnlineStore.DeviceLibrary
} }
else if (MoveInfo.IsStep(StepEnum.OT15_MoveZToP1)) else if (MoveInfo.IsStep(StepEnum.OT15_MoveZToP1))
{ {
MoveInfo.NextMoveStep(StepEnum.OT16_MoveXToP1); MoveInfo.NextMoveStep(StepEnum.OT16_MoveXToP2);
WorkLog("放料:取料X轴回到P1 "); WorkLog("放料:取料X轴回到P2 ");
MoveXAxis.AbsMove(MoveInfo, Config.MoveX_P1, Config.MoveX_P1Speed); MoveXAxis.AbsMove(MoveInfo, Config.GetMoveXP2(MoveInfo.MoveParam.PlateW), Config.MoveX_P2Speed);
} }
else if (MoveInfo.IsStep(StepEnum.OT16_MoveXToP1)) else if (MoveInfo.IsStep(StepEnum.OT16_MoveXToP2))
{ {
MoveInfo.EndMove(); MoveInfo.EndMove();
WorkLog("放料完成"); WorkLog("放料完成");
...@@ -316,11 +310,21 @@ namespace OnlineStore.DeviceLibrary ...@@ -316,11 +310,21 @@ namespace OnlineStore.DeviceLibrary
} }
SecMoveInfo.NewMove(RobotMoveType.Labelling, StepEnum.Wait); SecMoveInfo.NewMove(RobotMoveType.Labelling, StepEnum.Wait);
SecMoveInfo.MoveParam = param; SecMoveInfo.MoveParam = param;
NeedPrint = ConfigAppSettings.GetIntValue(Setting_Init.NeedPrintLabel).Equals(1);
SecMoveInfo.NextMoveStep(StepEnum.OL01_Paste_Back);
SecWorkLog(" 启动贴标: 贴标气缸后退,吸盘停止输出,贴标Z轴到待机点P1,取码气缸前进");
IOMove(IO_Type.Nozzle_Work, IO_VALUE.LOW);
CylinderMove(SecMoveInfo, IO_Type.PasteCode_Forward, IO_Type.PasteCode_Back);
CylinderMove(SecMoveInfo, IO_Type.TakeCode_Back, IO_Type.TakeCode_Forward);
if (!LabelZAxis.IsInPosition(Config.LabelZ_P1))
{
LabelZAxis.AbsMove(SecMoveInfo, Config.LabelZ_P1, Config.LabelZ_P1Speed);
}
return true; return true;
} }
private bool NeedPrint = ConfigAppSettings.GetIntValue(Setting_Init.NeedPrintLabel).Equals(1);
protected override void LabellingProcess() protected override void LabellingProcess()
{ {
if (SecMoveInfo.IsInWait) if (SecMoveInfo.IsInWait)
...@@ -331,47 +335,56 @@ namespace OnlineStore.DeviceLibrary ...@@ -331,47 +335,56 @@ namespace OnlineStore.DeviceLibrary
{ {
return; return;
} }
if (SecMoveInfo.IsStep(StepEnum.Wait)) //if (SecMoveInfo.IsStep(StepEnum.Wait))
{ //{
SecMoveInfo.NextMoveStep(StepEnum.OL01_Paste_Back); // SecMoveInfo.NextMoveStep(StepEnum.OL01_Paste_Back);
SecWorkLog(" 贴标: 贴标气缸后退,吸盘停止输出,贴标Z轴到待机点P1"); // SecWorkLog(" 启动贴标: 贴标气缸后退,吸盘停止输出,贴标Z轴到待机点P1,取码气缸前进");
IOMove(IO_Type.Nozzle_Work, IO_VALUE.LOW); // IOMove(IO_Type.Nozzle_Work, IO_VALUE.LOW);
CylinderMove(SecMoveInfo, IO_Type.PasteCode_Forward, IO_Type.PasteCode_Back); // CylinderMove(SecMoveInfo, IO_Type.PasteCode_Forward, IO_Type.PasteCode_Back);
LabelZAxis.AbsMove(SecMoveInfo, Config.LabelZ_P1, Config.LabelZ_P1Speed); // CylinderMove(SecMoveInfo, IO_Type.TakeCode_Back, IO_Type.TakeCode_Forward);
} // if (!LabelZAxis.IsInPosition(Config.LabelZ_P1))
else if (SecMoveInfo.IsStep(StepEnum.OL01_Paste_Back)) // {
{ // LabelZAxis.AbsMove(SecMoveInfo, Config.LabelZ_P1, Config.LabelZ_P1Speed);
SecMoveInfo.NextMoveStep(StepEnum.OL02_TakeForward); // }
SecWorkLog("贴标: 取码气缸前进,"); //}
CylinderMove(SecMoveInfo, IO_Type.TakeCode_Back, IO_Type.TakeCode_Forward); if (SecMoveInfo.IsStep(StepEnum.OL01_Paste_Back))
}
else if (SecMoveInfo.IsStep(StepEnum.OL02_TakeForward))
{ {
// SecMoveInfo.NextMoveStep(StepEnum.OL02_TakeForward);
// SecWorkLog("贴标: 取码气缸前进,");
// CylinderMove(SecMoveInfo, IO_Type.TakeCode_Back, IO_Type.TakeCode_Forward);
//}
//else if (SecMoveInfo.IsStep(StepEnum.OL02_TakeForward))
//{
SecMoveInfo.NextMoveStep(StepEnum.OL03_PrintLabel); SecMoveInfo.NextMoveStep(StepEnum.OL03_PrintLabel);
RobotManager.LastPrintStatus = Asa.PrintLabel.PrinterStatus.Unknown; RobotManager.LastPrintStatus = Asa.PrintLabel.PrinterStatus.Unknown;
SecWorkLog("贴标: 重置状态=Unknown,开始打印标签 ,贴标XYR轴到取标签点P2, 等待2000ms"); SecWorkLog("贴标: 重置状态=Unknown,开始打印标签["+NeedPrint+"] ,贴标XYR轴到取标签点P2, 等待1s");
SecMoveInfo.WaitList.Add(WaitResultInfo.WaitTime(2000)); SecMoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
if (NeedPrint)
{
Task.Factory.StartNew(delegate
{
StartPrintLabel(SecMoveInfo.MoveParam.WareCode, SecMoveInfo.MoveParam.WareCount.ToString());
});
}
LabelXAxis.AbsMove(SecMoveInfo, Config.LabelX_P2, Config.LabelX_P2Speed); LabelXAxis.AbsMove(SecMoveInfo, Config.LabelX_P2, Config.LabelX_P2Speed);
LabelYAxis.AbsMove(SecMoveInfo, Config.LabelY_P2, Config.LabelY_P2Speed); LabelYAxis.AbsMove(SecMoveInfo, Config.LabelY_P2, Config.LabelY_P2Speed);
LabelRAxis.AbsMove(SecMoveInfo, Config.LabelR_P2, Config.LabelR_P2Speed); LabelRAxis.AbsMove(SecMoveInfo, Config.LabelR_P2, Config.LabelR_P2Speed);
StartPrintLabel(SecMoveInfo.MoveParam.WareCode, SecMoveInfo.MoveParam.WareCount.ToString());
} }
else if (SecMoveInfo.IsStep(StepEnum.OL03_PrintLabel)) else if (SecMoveInfo.IsStep(StepEnum.OL03_PrintLabel))
{ {
SecMoveInfo.NextMoveStep(StepEnum.OL04_PrintOk); // SecMoveInfo.NextMoveStep(StepEnum.OL04_PrintOk);
SecWorkLog("贴标: 等待 贴标机打码OK信号"); // SecWorkLog("贴标: 等待 贴标机打码OK信号");
// SecMoveInfo.WaitList.Add(WaitResultInfo.WaitTime(2000)); //}
} //else if (SecMoveInfo.IsStep(StepEnum.OL04_PrintOk))
else if (SecMoveInfo.IsStep(StepEnum.OL04_PrintOk)) //{
{
bool isPrintOk = RobotManager.LastPrintStatus.Equals(Asa.PrintLabel.PrinterStatus.Idle); bool isPrintOk = RobotManager.LastPrintStatus.Equals(Asa.PrintLabel.PrinterStatus.Idle);
bool isTimeOut = SecMoveInfo.IsTimeOut(50); bool isTimeOut = SecMoveInfo.IsTimeOut(60);
if (isPrintOk || isTimeOut)
if (isPrintOk || isTimeOut || (!NeedPrint))
{ {
SecMoveInfo.NextMoveStep(StepEnum.OL05_TakeBack); SecMoveInfo.NextMoveStep(StepEnum.OL05_TakeBack);
SecWorkLog("贴标: 打印结束["+ RobotManager.LastPrintStatus + "]["+(isTimeOut?"超时50秒":"")+"],取码气缸后退"); SecWorkLog("贴标: 打印结束[" + RobotManager.LastPrintStatus + "][" + (isTimeOut ? "超时60秒" : "") + "],取码气缸后退");
CylinderMove(SecMoveInfo, IO_Type.TakeCode_Forward, IO_Type.TakeCode_Back); CylinderMove(SecMoveInfo, IO_Type.TakeCode_Forward, IO_Type.TakeCode_Back);
} }
} }
...@@ -393,20 +406,23 @@ namespace OnlineStore.DeviceLibrary ...@@ -393,20 +406,23 @@ namespace OnlineStore.DeviceLibrary
else if (SecMoveInfo.IsStep(StepEnum.OL07_ZToP2)) else if (SecMoveInfo.IsStep(StepEnum.OL07_ZToP2))
{ {
SecMoveInfo.NextMoveStep(StepEnum.OL08_Nozzle_Work); SecMoveInfo.NextMoveStep(StepEnum.OL08_Nozzle_Work);
SecWorkLog("贴标: 标签吸盘取码"); SecWorkLog("贴标: 标签吸盘取码,等待吸盘信号到位 1.5s");
IOMove(IO_Type.Nozzle_Work, IO_VALUE.HIGH); IOMove(IO_Type.Nozzle_Work, IO_VALUE.HIGH);
}
else if (SecMoveInfo.IsStep(StepEnum.OL08_Nozzle_Work))
{
SecMoveInfo.NextMoveStep(StepEnum.OL09_WaitGetLabel);
SecWorkLog("贴标: 等待吸盘信号到位");
SecMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Nozzle_Work, IO_VALUE.HIGH)); SecMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Nozzle_Work, IO_VALUE.HIGH));
SecMoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000)); SecMoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1500));
SecMoveInfo.OneWaitCanEndStep = true; SecMoveInfo.OneWaitCanEndStep = true;
} }
else if (SecMoveInfo.IsStep(StepEnum.OL09_WaitGetLabel)) else if (SecMoveInfo.IsStep(StepEnum.OL08_Nozzle_Work))
{ {
// SecMoveInfo.NextMoveStep(StepEnum.OL09_WaitGetLabel);
// SecWorkLog("贴标: 等待吸盘信号到位");
// SecMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Nozzle_Work, IO_VALUE.HIGH));
// SecMoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
// SecMoveInfo.OneWaitCanEndStep = true;
//}
//else if (SecMoveInfo.IsStep(StepEnum.OL09_WaitGetLabel))
//{
SecMoveInfo.NextMoveStep(StepEnum.OL10_ZToP1); SecMoveInfo.NextMoveStep(StepEnum.OL10_ZToP1);
SecWorkLog("贴标: Z轴到P1点"); SecWorkLog("贴标: Z轴到P1点");
LabelZAxis.AbsMove(SecMoveInfo, Config.LabelZ_P1, Config.LabelZ_P1Speed); LabelZAxis.AbsMove(SecMoveInfo, Config.LabelZ_P1, Config.LabelZ_P1Speed);
...@@ -420,8 +436,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -420,8 +436,10 @@ namespace OnlineStore.DeviceLibrary
} }
else if (SecMoveInfo.IsStep(StepEnum.OL11_WaitCanLabel)) else if (SecMoveInfo.IsStep(StepEnum.OL11_WaitCanLabel))
{ {
bool canLabel = MoveInfo.MoveType.Equals(RobotMoveType.None) && ShelfMoveInfo.IsStep(StepEnum.OS_25_WaitLabel); ; bool canLabel = (MoveInfo.MoveType.Equals(RobotMoveType.None)||(MoveInfo.MoveType.Equals(RobotMoveType.Working)&& MoveInfo.MoveStep<=(StepEnum.OT11_WaitShelfOk)))
&& ShelfMoveInfo.IsStep(StepEnum.OS_25_WaitLabel ); ;
bool isTest = ShelfMoveInfo.MoveType.Equals(RobotMoveType.None) && MoveInfo.MoveType.Equals(RobotMoveType.None) && SecMoveInfo.MoveParam.IsTest; bool isTest = ShelfMoveInfo.MoveType.Equals(RobotMoveType.None) && MoveInfo.MoveType.Equals(RobotMoveType.None) && SecMoveInfo.MoveParam.IsTest;
if (canLabel || isTest) if (canLabel || isTest)
{ {
SecMoveInfo.NextMoveStep(StepEnum.OL12_XYToP3); SecMoveInfo.NextMoveStep(StepEnum.OL12_XYToP3);
...@@ -469,9 +487,9 @@ namespace OnlineStore.DeviceLibrary ...@@ -469,9 +487,9 @@ namespace OnlineStore.DeviceLibrary
else if (SecMoveInfo.IsStep(StepEnum.OL15_ZToP3)) else if (SecMoveInfo.IsStep(StepEnum.OL15_ZToP3))
{ {
SecMoveInfo.NextMoveStep(StepEnum.OL16_Nozzle_Stop); SecMoveInfo.NextMoveStep(StepEnum.OL16_Nozzle_Stop);
SecWorkLog("贴标: 放标签到料盘,等待2000"); SecWorkLog("贴标: 放标签到料盘,等待1S");
IOMove(IO_Type.Nozzle_Work, IO_VALUE.LOW); IOMove(IO_Type.Nozzle_Work, IO_VALUE.LOW);
SecMoveInfo.WaitList.Add(WaitResultInfo.WaitTime(2000)); SecMoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
} }
else if (SecMoveInfo.IsStep(StepEnum.OL16_Nozzle_Stop)) else if (SecMoveInfo.IsStep(StepEnum.OL16_Nozzle_Stop))
{ {
...@@ -489,20 +507,21 @@ namespace OnlineStore.DeviceLibrary ...@@ -489,20 +507,21 @@ namespace OnlineStore.DeviceLibrary
if (canLabel) if (canLabel)
{ {
ShelfMoveInfo.NextMoveStep(StepEnum.OS_26_LabelOk); ShelfMoveInfo.NextMoveStep(StepEnum.OS_26_LabelOk);
ShelfWorkLog("贴标完成"); LogUtil.info(SecMoveInfo.Name + " 贴标结束");
} }
} }
else if (SecMoveInfo.IsStep(StepEnum.OL18_LableBack)) else if (SecMoveInfo.IsStep(StepEnum.OL18_LableBack))
{ {
SecMoveInfo.NextMoveStep(StepEnum.OL19_XYRBackToP1); SecMoveInfo.NextMoveStep(StepEnum.OL19_XYRBackToP2);
SecWorkLog("贴标: XYR返回待机点P1"); SecWorkLog("贴标: XYR返回待机点P2,取码气缸前进");
LabelRAxis.AbsMove(SecMoveInfo, Config.LabelR_P1, Config.LabelR_P1Speed); LabelXAxis.AbsMove(SecMoveInfo, Config.LabelX_P2, Config.LabelX_P2Speed);
LabelXAxis.AbsMove(SecMoveInfo, Config.LabelX_P1, Config.LabelX_P1Speed); LabelYAxis.AbsMove(SecMoveInfo, Config.LabelY_P2, Config.LabelY_P2Speed);
LabelYAxis.AbsMove(SecMoveInfo, Config.LabelY_P1, Config.LabelY_P1Speed); LabelRAxis.AbsMove(SecMoveInfo, Config.LabelR_P2, Config.LabelR_P2Speed);
CylinderMove(SecMoveInfo, IO_Type.TakeCode_Back, IO_Type.TakeCode_Forward);
} }
else if (SecMoveInfo.IsStep(StepEnum.OL19_XYRBackToP1)) else if (SecMoveInfo.IsStep(StepEnum.OL19_XYRBackToP2))
{ {
SecWorkLog("贴标完成"); LogUtil.info(SecMoveInfo.Name + " 贴标结束");
SecMoveInfo.EndMove(); SecMoveInfo.EndMove();
} }
......
...@@ -174,7 +174,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -174,7 +174,7 @@ namespace OnlineStore.DeviceLibrary
//重置通用处理 //重置通用处理
mainTimer.Interval = 1000; mainTimer.Interval = 1000;
maxSeconds = 10; // maxSeconds = 10;
alarmType = AlarmType.None; alarmType = AlarmType.None;
mainTimer.Enabled = false; mainTimer.Enabled = false;
isInSuddenDown = false; isInSuddenDown = false;
......
...@@ -27,6 +27,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -27,6 +27,8 @@ namespace OnlineStore.DeviceLibrary
Name = (" " + "XRay" + " ").ToUpper(); Name = (" " + "XRay" + " ").ToUpper();
Init(); Init();
ledProcessTimer.Elapsed += LedProcess;
IoCheckTimer.Elapsed += IoCheckTimerProcess;
MoveInfo = new RobotMoveInfo(Name); MoveInfo = new RobotMoveInfo(Name);
SecMoveInfo = new RobotMoveInfo( Name.Trim() + "-SMove"); SecMoveInfo = new RobotMoveInfo( Name.Trim() + "-SMove");
} }
......
...@@ -49,7 +49,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -49,7 +49,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.MoveParam.SetReelInfo(Work_ReelInfo); MoveInfo.MoveParam.SetReelInfo(Work_ReelInfo);
MoveInfo.NextMoveStep(StepEnum.XW06_WaitTime); MoveInfo.NextMoveStep(StepEnum.XW06_WaitTime);
WorkLog("扫描区有料["+Work_ReelInfo.ToStr()+"],还未进行点料,开始处理"); WorkLog("扫描区有料["+Work_ReelInfo.ToStr()+"],还未进行点料,开始处理");
IOMove(IO_Type.X_InLine_Run, IO_VALUE.HIGH); //IOMove(IO_Type.X_InLine_Run, IO_VALUE.HIGH);
IOMove(IO_Type.X_MLine_Run, IO_VALUE.HIGH); IOMove(IO_Type.X_MLine_Run, IO_VALUE.HIGH);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.X_ReelCheck, IO_VALUE.HIGH)); MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.X_ReelCheck, IO_VALUE.HIGH));
......
...@@ -536,10 +536,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -536,10 +536,10 @@ namespace OnlineStore.DeviceLibrary
/// </summary> /// </summary>
OT03_MoveXToP2, OT03_MoveXToP2,
/// <summary> ///// <summary>
/// 取料: 判断是否需要拍照, ///// 取料: 判断是否需要拍照,
/// </summary> ///// </summary>
OT04_CheckNeedImage, //OT04_CheckNeedImage,
/// <summary> /// <summary>
/// 取料: 拍照并开始识别 /// 取料: 拍照并开始识别
...@@ -587,7 +587,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -587,7 +587,7 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 取料: 取料X轴回到P1 /// 取料: 取料X轴回到P1
/// </summary> /// </summary>
OT16_MoveXToP1, OT16_MoveXToP2,
/// <summary> /// <summary>
/// 取料: NG料,取料X轴到P1 /// 取料: NG料,取料X轴到P1
...@@ -642,21 +642,21 @@ namespace OnlineStore.DeviceLibrary ...@@ -642,21 +642,21 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 贴标: 贴标气缸后退,吸盘停止输出,贴标Z轴到待机点P1 /// 贴标: 贴标气缸后退,吸盘停止输出,贴标Z轴到待机点P1,取码气缸前进
/// </summary> /// </summary>
OL01_Paste_Back = 3601, OL01_Paste_Back = 3601,
/// <summary> ///// <summary>
/// 贴标: 取码气缸前进,贴标XYR都到待机点P2 ///// 贴标: 取码气缸前进,贴标XYR都到待机点P2
/// </summary> ///// </summary>
OL02_TakeForward, //OL02_TakeForward,
/// <summary> /// <summary>
/// 贴标: 打印标签, /// 贴标: 打印标签,
/// </summary> /// </summary>
OL03_PrintLabel, OL03_PrintLabel,
/// <summary> ///// <summary>
/// 贴标: 等待 贴标机打码OK信号 ///// 贴标: 等待 贴标机打码OK信号
/// </summary> ///// </summary>
OL04_PrintOk, //OL04_PrintOk,
/// <summary> /// <summary>
/// 贴标: 取码气缸后退 /// 贴标: 取码气缸后退
/// </summary> /// </summary>
...@@ -673,10 +673,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -673,10 +673,10 @@ namespace OnlineStore.DeviceLibrary
/// 贴标: 标签吸盘取码 /// 贴标: 标签吸盘取码
/// </summary> /// </summary>
OL08_Nozzle_Work, OL08_Nozzle_Work,
/// <summary> ///// <summary>
/// 贴标: 等待吸盘信号到位 ///// 贴标: 等待吸盘信号到位
/// </summary> ///// </summary>
OL09_WaitGetLabel, //OL09_WaitGetLabel,
/// <summary> /// <summary>
/// 贴标: Z轴到P1点 /// 贴标: Z轴到P1点
/// </summary> /// </summary>
...@@ -717,8 +717,9 @@ namespace OnlineStore.DeviceLibrary ...@@ -717,8 +717,9 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 贴标: XYR返回待机点P1 /// 贴标: XYR返回待机点P1
/// </summary> /// </summary>
OL19_XYRBackToP1, OL19_XYRBackToP2,
#endregion #endregion
#region 出料模块料串处理 3701 开始 #region 出料模块料串处理 3701 开始
/// <summary> /// <summary>
/// 出料料串:升降盘不在后退端,提升伺服到P2 /// 出料料串:升降盘不在后退端,提升伺服到P2
......
...@@ -230,7 +230,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -230,7 +230,7 @@ namespace OnlineStore.DeviceLibrary
ledProcessTimer.Enabled = false; ledProcessTimer.Enabled = false;
IoCheckTimer = new System.Timers.Timer(); IoCheckTimer = new System.Timers.Timer();
IoCheckTimer.Interval = 200; IoCheckTimer.Interval = 300;
// IoCheckTimer.Elapsed += IoCheckTimerProcess; // IoCheckTimer.Elapsed += IoCheckTimerProcess;
IoCheckTimer.AutoReset = true; IoCheckTimer.AutoReset = true;
IoCheckTimer.Enabled = false; IoCheckTimer.Enabled = false;
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!