本文整理汇总了C#中FALibrary.Sequence.FASequence.NextTerminate方法的典型用法代码示例。如果您正苦于以下问题:C# FASequence.NextTerminate方法的具体用法?C# FASequence.NextTerminate怎么用?C# FASequence.NextTerminate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FALibrary.Sequence.FASequence
的用法示例。
在下文中一共展示了FASequence.NextTerminate方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: 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();
}
}
}
示例2: ConfirmTrayDetectSensorOnAndServoZStop
private void ConfirmTrayDetectSensorOnAndServoZStop(FASequence actor, TimeSpan time)
{
if (TrayDetectSensor.IsOn)
{
if (DateTime.Now - LastTrayDetectedTime > TimeTrayCountingSensorHuntingTime.Time)
{
LastTrayDetectedTime = DateTime.Now;
RFScannerUpDownServo.Stop.Execute(actor);
actor.NextStep();
}
}
else if (RFScannerUpDownServo.IsMotionDone()
&& RFScannerUpDownServo.IsInPosition(RFScannerUpDownServo.BottomPos))
{
TrayCount += CountOffset;
actor.NextTerminate();
}
else if (RFScannerUpDownServo.RunFlag == false && RFScannerUpDownServo.IsMotionDone() &&
RFScannerUpDownServo.ErrorFlag == false)
{
RFScannerUpDownServo.MoveBottomPos.Execute(actor);
}
}
示例3: StartSequenceList
private void StartSequenceList(FASequence actor, TimeSpan time)
{
if (CurrentSequenceQueue.Count <= 0)
actor.NextTerminate();
else
{
CurrentSequence = CurrentSequenceQueue.Dequeue();
actor.NextStep();
}
}
示例4: TerminateSequence
protected void TerminateSequence(FASequence actor, TimeSpan time)
{
actor.NextTerminate();
}
示例5: IncreaseTrayCount
private void IncreaseTrayCount(FASequence actor, TimeSpan time)
{
PickingTrayCount++;
if (SuppliedTrayCount + PickingTrayCount == TargetTrayCount)
actor.NextTerminate();
else
actor.NextStep();
}
示例6: ConfirmXYPosition
private void ConfirmXYPosition(FASequence actor, TimeSpan time)
{
if (TransferServoX.IsInPosition(TargetPosition.PositionX) &&
TransferServoY.IsInPosition(TargetPosition.PositionY))
actor.NextTerminate();
else
actor.NextStep();
}
示例7: ConfirmTrayDetectSensorOnAndServoZStop
private void ConfirmTrayDetectSensorOnAndServoZStop(FASequence actor, TimeSpan time)
{
if (TraySideDetectSensor.IsOn)
{
TransferServoZ.Stop.Execute(actor);
actor.NextStep();
}
else if (TransferServoZ.IsMotionDone()
&& TransferServoZ.IsInPosition(TargetPosition.PositionZ))
{
PickingTrayCount = 0;
actor.NextTerminate();
}
else if (TransferServoZ.RunFlag == false && TransferServoZ.IsMotionDone() &&
TransferServoZ.ErrorFlag == false)
{
TransferServoZ.MoveToPos.Execute(actor);
}
}
示例8: ConfirmRemainTrayCount
private void ConfirmRemainTrayCount(FASequence actor, TimeSpan time)
{
if (SuppliedTrayCount == TargetTrayCount)
{
InterfaceEmptyTraySupplyConveyorReady.DoTurnOff(actor);
actor.NextTerminate();
}
else
actor.NextStep("SelectTargetStacker");
}
示例9: ConfirmSeperateActionCount
private void ConfirmSeperateActionCount(FASequence actor, TimeSpan time)
{
if (RetryInfoSeperateAction.IncreaseCount() == true)
actor.NextStep();
else
actor.NextTerminate();
}
示例10: ConfirmStackFull
private void ConfirmStackFull(FASequence actor, TimeSpan time)
{
if (IsStackTerminated() == true)
{
if (ProductInfo.VT8792ProductInfo.TrayCount == ProductInfo.VT8792ProductInfo.TrayIndex &&
ProductInfo.VT8792ProductInfo.LotScanCompleted.ScanSuccess == false)
{
RFTrayCoveringRequest = true;
CoverTrayRequest = true;
actor.NextStep();
}
else
{
CoverTrayRequest = true;
actor.NextStep();
}
}
else
actor.NextTerminate();
}