本文整理汇总了C#中FALibrary.Sequence.FASequence.NextStep方法的典型用法代码示例。如果您正苦于以下问题:C# FASequence.NextStep方法的具体用法?C# FASequence.NextStep怎么用?C# FASequence.NextStep使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FALibrary.Sequence.FASequence
的用法示例。
在下文中一共展示了FASequence.NextStep方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ConfirmSkipPassToNextMachine
private void ConfirmSkipPassToNextMachine(FASequence actor, TimeSpan time)
{
if (SkipPassToNextMachine)
actor.NextStep("ClearIsAvailable");
else
actor.NextStep();
}
示例2: ConfirmTime
public void ConfirmTime(FASequence actor, TimeSpan time)
{
if (Time.Time < time)
{
if (MethodOfEndTime != null)
{
if (MethodOfEndTime())
actor.NextStep();
else
actor.NextStep("Retry");
}
else
actor.NextStep();
}
else
{
if (MethodOfDuringTime != null)
{
if (MethodOfDuringTime())
actor.NextStep();
else
actor.NextStep("Retry");
}
}
}
示例3: ConfirmStackTerminated
private void ConfirmStackTerminated(FASequence actor, TimeSpan time)
{
if (IsStackTerminated() == true)
actor.NextStep();
else
actor.NextStep("ClearIsAvailable");
}
示例4: ConfirmNextModuleLoadingAble
private void ConfirmNextModuleLoadingAble(FASequence actor, TimeSpan time)
{
if (NextModule == null)
actor.NextStep("ProductDataCopyToNextMachine");
else if (NextModule.IsAvailable == true)
{
NextModule.IsAvailable = false;
actor.NextStep();
}
}
示例5: Start
public void Start(FASequence actor, TimeSpan time)
{
if (StartCondition == null)
{
Start();
actor.NextStep();
}
else if (StartCondition() == true)
{
Start();
actor.NextStep();
}
}
示例6: ConfirmTrayIndex
private void ConfirmTrayIndex(FASequence actor, TimeSpan time)
{
bool isRFTray, isFirstTray, isLastTray, isHaveAEmptyPocket;
int needEmptyTrayCount;
string errMsg;
var result = UtilityClass.SetTrayProcessFlag(ProductInfo, out isRFTray, out isFirstTray, out isLastTray, out needEmptyTrayCount, out isHaveAEmptyPocket, out errMsg);
if (result == false)
{
RaiseAlarm(actor, AlarmLotInfoNotCorrect);
}
else
{
if (isRFTray || needEmptyTrayCount > 0 || isHaveAEmptyPocket) // Robot이 집어간다.
{
SkipPassToNextMachine = true;
actor.NextStep();
}
else
{
SkipPassToNextMachine = false;
actor.NextTerminate();
}
}
}
示例7: ConfirmTerminated
public void ConfirmTerminated(FASequence actor, TimeSpan time)
{
if (Sequences == null)
{
TerminateResult();
actor.NextStep();
}
else
{
foreach (var seq in Sequences)
{
if (seq.IsStartable() == false)
return;
}
if (TerminateResult != null)
TerminateResult();
actor.NextStep();
}
}
示例8: LoadJob
private void LoadJob(FASequence actor, TimeSpan time)
{
var equip = Equipment as VT5070.SubEquipment;
var partID = CurrentWork.ProductInfo.PRODUCT_NAME;
string msg = "";
var job = equip.JobManagerInstance.GetJob(partID, out msg);
if (job == null)
{
RaiseAlarm(actor, AlarmJobLoadFail, "Job is null\n" + msg);
}
else
{
try
{
SetJobInfo(job);
actor.NextStep();
}
catch (Exception e)
{
RaiseAlarm(actor, AlarmJobLoadFail, e.ToString());
}
}
}
示例9: ConfirmStatus
private void ConfirmStatus(FASequence actor, TimeSpan time)
{
if (StatusOnlineError == false &&
StatusBufferOverflow == false &&
StatusHeadOpenError == false &&
StatusPaperOutError == false &&
StatusRibbonOut == false)
{
actor.NextStep();
}
else if (TimeStatusCheckTimeout.Time < time)
{
if (RetryInfoStatusCheck.IncreaseCount())
{
actor.NextStep("Start");
}
else
{
if (StatusOnlineError)
{
FAAlarmManager.Instance.RaiseAlarm(actor, AlarmLabelPrinterOnlineError);
}
else if (StatusBufferOverflow)
{
FAAlarmManager.Instance.RaiseAlarm(actor, AlarmLabelPrinterBufferOverflowError);
}
else if (StatusHeadOpenError)
{
FAAlarmManager.Instance.RaiseAlarm(actor, AlarmLabelPrinterHeadOpenError);
}
else if (StatusPaperOutError)
{
FAAlarmManager.Instance.RaiseAlarm(actor, AlarmLabelPrinterPaperOutError);
}
else if (StatusRibbonOut)
{
FAAlarmManager.Instance.RaiseAlarm(actor, AlarmLabelPrinterRibbonOutError);
}
actor.NextStep("Start");
}
}
}
示例10: ConfirmStackCount
private void ConfirmStackCount(FASequence actor, TimeSpan time)
{
var x = SmallBoxStackMatrixInfo.StackSize[JobInfo.LargeBoxJobInfo.BoxType].X;
if ((StackCount * x) >= CurrentLotInfo.L_BOX_MOQ)
actor.NextStep();
else
actor.NextStep("MovePusherToStandbyPos");
}
示例11: ConfirmSupplyTerminatedInOff
private void ConfirmSupplyTerminatedInOff(FASequence actor, TimeSpan time)
{
if (InterfaceLoadingTerminatedIn.IsOff)
{
actor.NextStep();
}
}
示例12: ConfirmSupplyReady
private void ConfirmSupplyReady(FASequence actor, TimeSpan time)
{
InterfaceSupplyReadyOut.DoTurnOn(actor);
if (InterfaceLoadingRunningIn.IsOn && InterfaceLoadingReadyIn.IsOn)
{
InterfaceSupplyTerminatedOut.DoTurnOff(actor);
actor.NextStep();
}
}
示例13: ConfirmCurrentStep
private void ConfirmCurrentStep(FASequence actor, TimeSpan time)
{
if (CurrentStep == "Loading")
actor.NextStep("Loading");
else if (CurrentStep == "SupplyTray")
actor.NextStep("SupplyTray");
else
actor.NextStep();
}
示例14: ConfirmMoveDone
protected void ConfirmMoveDone(FASequence actor, TimeSpan time)
{
if (Device.IsMotionDone(AxisNo) == true)
actor.NextStep();
else if (MoveToPosTimeout.Time < time)
{
Device.Stop(AxisNo);
Alarm.FAAlarmManager.Instance.RaiseAlarm(actor, MovePosFail,
"MOVE FAIL POSNAME : " + TargetPosition.Name +
" POS : " + TargetPosition.Position +
" Part " + Name + '\n');
actor.NextStep("StartMove");
}
}
示例15: ConfirmUnloadingToSuccessWay
private void ConfirmUnloadingToSuccessWay(FASequence actor, TimeSpan time)
{
if (TrayInSensor.IsOff && TrayStopSensor.IsOff && OutCompletedSensor.IsOn)
{
ConveyorMotor.StopAction.Execute(actor);
actor.NextStep();
}
else if (TimeUnloadingTrayTimeout.Time < time)
{
if (Equipment.RunMode == FAFramework.Equipment.RunModeTypes.DRY_RUN)
{
ConveyorMotor.StopAction.Execute(actor);
actor.NextStep();
}
else
{
if (RetryInfoUnloadingTray.IncreaseCount() == false)
RaiseAlarm(actor, AlarmUnloadingTrayToSuccessWayFail,
TrayInSensor.GetInputIOStatus(),
TrayStopSensor.GetInputIOStatus(),
OutCompletedSensor.GetInputIOStatus());
actor.NextStep("SetUnloadingDirection");
}
}
else
ConveyorMotor.ReverseRunAction.Execute(actor);
}