增加测试模组在取放料时,增加2段速度

master
lhiven 2 years ago
parent a2e5d47839
commit f17e903e15

@ -8,6 +8,7 @@ using System.Linq;
using System.Text; using System.Text;
using System.Threading; using System.Threading;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Windows.Forms;
namespace Rs.MotionPlat.Flow namespace Rs.MotionPlat.Flow
{ {
@ -20,8 +21,10 @@ namespace Rs.MotionPlat.Flow
, ,
, ,
, ,
, 1,
, 1,
2,
2,
, ,
, ,
, ,
@ -41,13 +44,16 @@ namespace Rs.MotionPlat.Flow
2, 2,
2, 2,
,
, ,
, ,
,
, ,
, ,
, 1,
, 1,
2,
2,
, ,
, ,
, ,
@ -131,7 +137,7 @@ namespace Rs.MotionPlat.Flow
if(pressUnload)//测试位下料 if(pressUnload)//测试位下料
{ {
pressUnload = false; pressUnload = false;
Step = ETurnoverFlowStep.; Step = ETurnoverFlowStep.;
} }
break; break;
case ETurnoverFlowStep.: case ETurnoverFlowStep.:
@ -155,25 +161,47 @@ namespace Rs.MotionPlat.Flow
logInfo = $"已运动到周转盘取料位上方 TurnoverY at:{Ops.GetCurPosition( AxisAlias.TurnoverY)}"; logInfo = $"已运动到周转盘取料位上方 TurnoverY at:{Ops.GetCurPosition( AxisAlias.TurnoverY)}";
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);
LogHelper.Debug(logInfo); LogHelper.Debug(logInfo);
Step = ETurnoverFlowStep.; Step = ETurnoverFlowStep.1;
} }
break; break;
case ETurnoverFlowStep.: case ETurnoverFlowStep.1:
targetPos = SysConfigParam.GetValue<double>("TurnoverTakeZ"); targetPos = SysConfigParam.GetValue<double>("TurnoverTakeZ") + GlobalVar.PressLowSpeedOffset;
errCode = AxisControl.TurnoverZ.MovePos(targetPos, GlobalVar.WholeSpeed); errCode = AxisControl.TurnoverZ.MovePos(targetPos, GlobalVar.WholeSpeed);
if(errCode== Motion.ErrorCode.Ok) if(errCode== Motion.ErrorCode.Ok)
{ {
logInfo = $"到周转盘下方取料位"; logInfo = $"到周转盘下方取料位";
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);
LogHelper.Debug(logInfo); LogHelper.Debug(logInfo);
Step = ETurnoverFlowStep.; Step = ETurnoverFlowStep.1;
}
else
{
Msg.ShowError($"轴TurnoverZ运动异常 ret:{errCode}");
}
break;
case ETurnoverFlowStep.1:
if (Ops.IsStop(AxisControl.TurnoverZ))
{
logInfo = $"已运动到周转盘下方取料位 at:{Ops.GetCurPosition(AxisAlias.TurnoverZ)}";
Step = ETurnoverFlowStep.2;
}
break;
case ETurnoverFlowStep.2:
targetPos = SysConfigParam.GetValue<double>("TurnoverTakeZ");
errCode = AxisControl.TurnoverZ.MovePos(targetPos, GlobalVar.PressLowSpeed);
if (errCode == Motion.ErrorCode.Ok)
{
logInfo = $"到周转盘下方取料位";
MessageQueue.Instance.Insert(logInfo);
LogHelper.Debug(logInfo);
Step = ETurnoverFlowStep.2;
} }
else else
{ {
Msg.ShowError($"轴TurnoverZ运动异常 ret:{errCode}"); Msg.ShowError($"轴TurnoverZ运动异常 ret:{errCode}");
} }
break; break;
case ETurnoverFlowStep.: case ETurnoverFlowStep.2:
if (Ops.IsStop(AxisControl.TurnoverZ)) if (Ops.IsStop(AxisControl.TurnoverZ))
{ {
logInfo = $"已运动到周转盘下方取料位 at:{Ops.GetCurPosition(AxisAlias.TurnoverZ)}"; logInfo = $"已运动到周转盘下方取料位 at:{Ops.GetCurPosition(AxisAlias.TurnoverZ)}";
@ -470,7 +498,28 @@ namespace Rs.MotionPlat.Flow
break; break;
//-----------------------------------------------测试位下料 //-----------------------------------------------测试位下料
case ETurnoverFlowStep.: case ETurnoverFlowStep.:
targetPos = SysConfigParam.GetValue<double>("PressZ")+GlobalVar.PressLowSpeedOffset;
errCode = AxisControl.PressZ.MovePos(targetPos, GlobalVar.PressLowSpeed);
if (errCode == Motion.ErrorCode.Ok)
{
logInfo = "测试完成准备抬起";
MessageQueue.Instance.Insert(logInfo);
LogHelper.Debug(logInfo);
Step = ETurnoverFlowStep.;
}
break;
case ETurnoverFlowStep.:
if (Ops.IsStop(AxisControl.PressZ))
{
logInfo = $"测试完成已抬起 PressZ at:{Ops.GetCurPosition(AxisAlias.PressZ)}";
MessageQueue.Instance.Insert(logInfo);
LogHelper.Debug(logInfo);
Step = ETurnoverFlowStep.;
}
break;
case ETurnoverFlowStep.:
targetPos = SysConfigParam.GetValue<double>("PressSafeZ"); targetPos = SysConfigParam.GetValue<double>("PressSafeZ");
errCode = AxisControl.PressZ.MovePos(targetPos, GlobalVar.WholeSpeed); errCode = AxisControl.PressZ.MovePos(targetPos, GlobalVar.WholeSpeed);
@ -479,10 +528,10 @@ namespace Rs.MotionPlat.Flow
logInfo = "测试完成准备抬起"; logInfo = "测试完成准备抬起";
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);
LogHelper.Debug(logInfo); LogHelper.Debug(logInfo);
Step = ETurnoverFlowStep.; Step = ETurnoverFlowStep.;
} }
break; break;
case ETurnoverFlowStep.: case ETurnoverFlowStep.:
if (Ops.IsStop(AxisControl.PressZ)) if (Ops.IsStop(AxisControl.PressZ))
{ {
logInfo = $"测试完成已抬起 PressZ at:{Ops.GetCurPosition(AxisAlias.PressZ)}"; logInfo = $"测试完成已抬起 PressZ at:{Ops.GetCurPosition(AxisAlias.PressZ)}";
@ -509,22 +558,40 @@ namespace Rs.MotionPlat.Flow
logInfo = $"已运动到测试取料位上方 TurnoverY at:{Ops.GetCurPosition(AxisAlias.TurnoverY)}"; logInfo = $"已运动到测试取料位上方 TurnoverY at:{Ops.GetCurPosition(AxisAlias.TurnoverY)}";
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);
LogHelper.Debug(logInfo); LogHelper.Debug(logInfo);
Step = ETurnoverFlowStep.; Step = ETurnoverFlowStep.1;
} }
break; break;
case ETurnoverFlowStep.: case ETurnoverFlowStep.1:
targetPos = SysConfigParam.GetValue<double>("PressTakeZ"); targetPos = SysConfigParam.GetValue<double>("PressTakeZ") + GlobalVar.PressLowSpeedOffset;
errCode = AxisControl.TurnoverZ.MovePos(targetPos, GlobalVar.WholeSpeed); errCode = AxisControl.TurnoverZ.MovePos(targetPos, GlobalVar.WholeSpeed);
if (errCode == Motion.ErrorCode.Ok)
{
logInfo = $"到测试取料位下方";
MessageQueue.Instance.Insert(logInfo);
LogHelper.Debug(logInfo);
Step = ETurnoverFlowStep.1;
}
break;
case ETurnoverFlowStep.1:
if (Ops.IsStop(AxisControl.TurnoverZ))
{
Step = ETurnoverFlowStep.2;
}
break;
case ETurnoverFlowStep.2:
targetPos = SysConfigParam.GetValue<double>("PressTakeZ");
errCode = AxisControl.TurnoverZ.MovePos(targetPos, GlobalVar.PressLowSpeed);
if(errCode== Motion.ErrorCode.Ok) if(errCode== Motion.ErrorCode.Ok)
{ {
logInfo = $"到测试取料位下方"; logInfo = $"到测试取料位下方";
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);
LogHelper.Debug(logInfo); LogHelper.Debug(logInfo);
Step = ETurnoverFlowStep.; Step = ETurnoverFlowStep.2;
} }
break; break;
case ETurnoverFlowStep.: case ETurnoverFlowStep.2:
if (Ops.IsStop(AxisControl.TurnoverZ)) if (Ops.IsStop(AxisControl.TurnoverZ))
{ {
logInfo = $"已运动到测试取料位下方 TurnoverZ at:{Ops.GetCurPosition("TurnoverZ")}"; logInfo = $"已运动到测试取料位下方 TurnoverZ at:{Ops.GetCurPosition("TurnoverZ")}";
@ -550,8 +617,8 @@ namespace Rs.MotionPlat.Flow
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);
LogHelper.Debug(logInfo); LogHelper.Debug(logInfo);
targetPos = SysConfigParam.GetValue<double>("PressTakeZ")+1; targetPos = SysConfigParam.GetValue<double>("PressTakeZ")+GlobalVar.PressLowSpeedOffset;
errCode = AxisControl.TurnoverZ.MovePos(targetPos, GlobalVar.WholeSpeed); errCode = AxisControl.TurnoverZ.MovePos(targetPos, GlobalVar.PressLowSpeed);
if (errCode == Motion.ErrorCode.Ok) if (errCode == Motion.ErrorCode.Ok)
{ {
Step = ETurnoverFlowStep.; Step = ETurnoverFlowStep.;
@ -600,8 +667,16 @@ namespace Rs.MotionPlat.Flow
else else
{ {
string msg = string.Join(",", ngList.ToArray()); string msg = string.Join(",", ngList.ToArray());
Msg.ShowError($"吸嘴{msg}真空值未达到,请处理后点击确定"); DialogResult dr = Msg.ShowError($"吸嘴{msg}真空值未达到,请处理", MessageBoxButtons.RetryCancel);
Step = ETurnoverFlowStep.; if(dr== DialogResult.Retry)
{
Step = ETurnoverFlowStep.;
}
else
{
Step = ETurnoverFlowStep.;
}
} }
break; break;
case ETurnoverFlowStep.: case ETurnoverFlowStep.:

Loading…
Cancel
Save