This commit is contained in:
backuppc
2026-02-09 13:06:47 +09:00
parent 839486db87
commit bd06f59bf1
18 changed files with 24 additions and 1005 deletions

View File

@@ -73,6 +73,7 @@ namespace ENIGProtocol
BUFFER_NOT_COMPLETE, BUFFER_NOT_COMPLETE,
MARK_STOP_FAIL, MARK_STOP_FAIL,
LIDAR_STOP, LIDAR_STOP,
NOT_BUFFERPOINT,
} }
public static class AGVUtility public static class AGVUtility
@@ -109,6 +110,7 @@ namespace ENIGProtocol
case AGVErrorCode.NOTSET_CHARGEPOINT: return "충전기 노드 미설정"; case AGVErrorCode.NOTSET_CHARGEPOINT: return "충전기 노드 미설정";
case AGVErrorCode.ALREADY_CHARGE: return "이미 충전 중 상태임"; case AGVErrorCode.ALREADY_CHARGE: return "이미 충전 중 상태임";
case AGVErrorCode.CHARGE_RETRY_OVER: return $"충전명령 재전송 횟수 초과"; case AGVErrorCode.CHARGE_RETRY_OVER: return $"충전명령 재전송 횟수 초과";
case AGVErrorCode.NOT_BUFFERPOINT: return "현재 위치가 버퍼가 아닙니다";
default: return ecode.ToString(); default: return ecode.ToString();
} }
} }

File diff suppressed because it is too large Load Diff

View File

@@ -41,6 +41,17 @@ namespace Project
return false; return false;
} }
else if (PUB.sm.RunStepSeq == idx++) else if (PUB.sm.RunStepSeq == idx++)
{
//버퍼 노드 여부 확인
if (PUB._virtualAGV.CurrentNode.StationType != AGVNavigationCore.Models.StationType.Buffer)
{
SetRunStepError(ENIGProtocol.AGVErrorCode.NOT_BUFFERPOINT, $"[{funcname}-{PUB.sm.RunStepSeq}] 현재 위치가 버퍼가 아닙니다({PUB._virtualAGV.CurrentNode.StationType})");
return false;
}
PUB.sm.UpdateRunStepSeq();
return false;
}
else if (PUB.sm.RunStepSeq == idx++)
{ {
//카트감지 //카트감지
if (PUB.NextWorkCmd == ENIGProtocol.AGVCommandHE.PickOnEnter) if (PUB.NextWorkCmd == ENIGProtocol.AGVCommandHE.PickOnEnter)

View File

@@ -43,6 +43,17 @@ namespace Project
return false; return false;
} }
else if (PUB.sm.RunStepSeq == idx++) else if (PUB.sm.RunStepSeq == idx++)
{
//버퍼 노드 여부 확인
if (PUB._virtualAGV.CurrentNode.StationType != AGVNavigationCore.Models.StationType.Buffer)
{
SetRunStepError(ENIGProtocol.AGVErrorCode.NOT_BUFFERPOINT, $"[{funcname}-{PUB.sm.RunStepSeq}] 현재 위치가 버퍼가 아닙니다({PUB._virtualAGV.CurrentNode.StationType})");
return false;
}
PUB.sm.UpdateRunStepSeq();
return false;
}
else if (PUB.sm.RunStepSeq == idx++)
{ {
//회전이없다면 오류처리한다. //회전이없다면 오류처리한다.
if(PUB._virtualAGV.Turn != AGVNavigationCore.Models.AGVTurn.L90) if(PUB._virtualAGV.Turn != AGVNavigationCore.Models.AGVTurn.L90)