182 lines
3.8 KiB
C#
182 lines
3.8 KiB
C#
using System;
|
|
|
|
namespace AGVNavigationCore.Models
|
|
{
|
|
|
|
|
|
/// <summary>
|
|
/// 노드 타입 열거형
|
|
/// </summary>
|
|
public enum NodeType
|
|
{
|
|
/// <summary>일반 경로 노드</summary>
|
|
Normal,
|
|
|
|
Label,
|
|
/// <summary>이미지 (UI 요소)</summary>
|
|
Image,
|
|
/// <summary>
|
|
/// 마크센서
|
|
/// </summary>
|
|
Mark,
|
|
/// <summary>
|
|
/// 마그넷라인
|
|
/// </summary>
|
|
Magnet
|
|
}
|
|
|
|
/// <summary>
|
|
/// 도킹 방향 열거형
|
|
/// </summary>
|
|
public enum DockingDirection
|
|
{
|
|
/// <summary>도킹 방향 상관없음 (일반 경로 노드)</summary>
|
|
DontCare,
|
|
/// <summary>전진 도킹 (충전기)</summary>
|
|
Forward,
|
|
/// <summary>후진 도킹 (로더, 클리너, 오프로더, 버퍼)</summary>
|
|
Backward
|
|
}
|
|
|
|
/// <summary>
|
|
/// AGV 이동 방향 열거형
|
|
/// </summary>
|
|
public enum AgvDirection
|
|
{
|
|
/// <summary>전진 (모니터 방향)</summary>
|
|
Forward,
|
|
/// <summary>후진 (리프트 방향)</summary>
|
|
Backward,
|
|
/// <summary>좌회전</summary>
|
|
Left,
|
|
/// <summary>우회전</summary>
|
|
Right,
|
|
/// <summary>정지</summary>
|
|
Stop
|
|
}
|
|
|
|
/// <summary>
|
|
/// 장비 타입 열거형
|
|
/// </summary>
|
|
public enum StationType
|
|
{
|
|
/// <summary>
|
|
/// 일반노드
|
|
/// </summary>
|
|
Normal,
|
|
/// <summary>로더</summary>
|
|
Loader,
|
|
/// <summary>클리너</summary>
|
|
Clearner,
|
|
/// <summary>오프로더</summary>
|
|
UnLoader,
|
|
/// <summary>버퍼</summary>
|
|
Buffer,
|
|
/// <summary>충전기1</summary>
|
|
Charger1,
|
|
/// <summary>충전기2</summary>
|
|
Charger2,
|
|
|
|
/// <summary>
|
|
/// 끝점(더이상 이동불가)
|
|
/// </summary>
|
|
Limit,
|
|
|
|
}
|
|
|
|
/// <summary>
|
|
/// AGV턴상태
|
|
/// </summary>
|
|
public enum AGVTurn
|
|
{
|
|
None=0,
|
|
|
|
/// <summary>
|
|
/// left turn 90"
|
|
/// </summary>
|
|
L90,
|
|
/// <summary>
|
|
/// right turn 90"
|
|
/// </summary>
|
|
R90
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// 모터 명령 열거형 (실제 AGV 제어용)
|
|
/// </summary>
|
|
public enum MotorCommand
|
|
{
|
|
/// <summary>정지</summary>
|
|
Stop,
|
|
/// <summary>전진 (Forward - 모니터 방향)</summary>
|
|
Forward,
|
|
/// <summary>후진 (Backward - 리프트 방향)</summary>
|
|
Backward
|
|
}
|
|
|
|
/// <summary>
|
|
/// 마그넷 위치 열거형 (실제 AGV 제어용)
|
|
/// </summary>
|
|
public enum MagnetPosition
|
|
{
|
|
/// <summary>직진 (Straight)</summary>
|
|
S,
|
|
/// <summary>왼쪽 (Left)</summary>
|
|
L,
|
|
/// <summary>오른쪽 (Right)</summary>
|
|
R
|
|
}
|
|
|
|
/// <summary>
|
|
/// 속도 레벨 열거형 (실제 AGV 제어용)
|
|
/// </summary>
|
|
public enum SpeedLevel
|
|
{
|
|
/// <summary>저속 (Low)</summary>
|
|
L,
|
|
/// <summary>중속 (Medium)</summary>
|
|
M,
|
|
/// <summary>고속 (High)</summary>
|
|
H
|
|
}
|
|
|
|
public enum eAGVCommandReason
|
|
{
|
|
/// <summary>
|
|
/// 초기 미지정
|
|
/// </summary>
|
|
Normal,
|
|
|
|
/// <summary>
|
|
/// 위치 미확정
|
|
/// </summary>
|
|
UnknownPosition,
|
|
|
|
/// <summary>
|
|
/// 대상경로없음
|
|
/// </summary>
|
|
NoTarget,
|
|
|
|
/// <summary>
|
|
/// 경로없음
|
|
/// </summary>
|
|
NoPath,
|
|
|
|
/// <summary>
|
|
/// 경로이탈
|
|
/// </summary>
|
|
PathOut,
|
|
|
|
/// <summary>
|
|
/// 마크스탑을 해야한다
|
|
/// </summary>
|
|
MarkStop,
|
|
|
|
/// <summary>
|
|
/// 완료
|
|
/// </summary>
|
|
Complete,
|
|
|
|
}
|
|
} |