..
This commit is contained in:
@@ -9,6 +9,12 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SampleProject", "sample\Sam
|
|||||||
EndProject
|
EndProject
|
||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ENIGProtocol.Tests", "ENIGProtocol.Tests\ENIGProtocol.Tests.csproj", "{3A677629-1F08-49B2-BC75-58282E439FD4}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ENIGProtocol.Tests", "ENIGProtocol.Tests\ENIGProtocol.Tests.csproj", "{3A677629-1F08-49B2-BC75-58282E439FD4}"
|
||||||
EndProject
|
EndProject
|
||||||
|
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "솔루션 항목", "솔루션 항목", "{0A11874A-E5C6-4170-9787-1FFF7AF0D289}"
|
||||||
|
ProjectSection(SolutionItems) = preProject
|
||||||
|
.gitignore = .gitignore
|
||||||
|
ReadMe.MD = ReadMe.MD
|
||||||
|
EndProjectSection
|
||||||
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
Debug|Any CPU = Debug|Any CPU
|
Debug|Any CPU = Debug|Any CPU
|
||||||
|
|||||||
53
ReadMe.MD
53
ReadMe.MD
@@ -55,20 +55,61 @@ This README provides a comprehensive overview of the `ENIGProtocol` library, mak
|
|||||||
|
|
||||||
### 명령어 목록
|
### 명령어 목록
|
||||||
1. **ACS (AGV Control System)**
|
1. **ACS (AGV Control System)**
|
||||||
- cmd(1): 출입문 열기
|
|
||||||
- cmd(2): 출입문 닫기
|
|
||||||
- cmd(3): 출입문 상태 확인 (응답: 1=열림, 0=닫힘)
|
|
||||||
|
|
||||||
2. **Buffer**
|
2. **Buffer**
|
||||||
- 버퍼 관리 관련 명령어
|
- E -> H | cmd(3): 상태 (data len=1 : 0=카트없음, 1=카트있음, 2=바쁨, 3=알수없음, 255=오류)
|
||||||
|
|
||||||
3. **AGV**
|
3. **AGV**
|
||||||
- AGV 제어 관련 명령어
|
- H -> E | Move : cmd(100) : 대상태그까지 이동(자동이동)
|
||||||
|
- TagID[6] = 000000
|
||||||
|
- H -> E | Stop : cmd(101) : 멈춤
|
||||||
|
- H -> E | Reset : cmd(102) : 오류 소거
|
||||||
|
- H -> E | Charge : cmd(103) : 충전실행(충전기 이동 후 자동 충전 진행)
|
||||||
|
- Action[1] : 0=Charge Off, 1=Charge On
|
||||||
|
|
||||||
|
- H -> E | MoveManual : cmd(104) : 메뉴얼이동
|
||||||
|
- Direction[1] : 0=Backward, 1=Forward, 2=TurnLeft, 3=TurnRight
|
||||||
|
- Speed[1] : 0=Slow, 1=Normal, 2=Fast
|
||||||
|
- Runtime[1] : 0 second
|
||||||
|
- H -> E | MarkStop : cmd(105) : 마크센서스톱
|
||||||
|
|
||||||
|
- H -> E | Lift Control : cmd(106) : 리프트제어
|
||||||
|
- Action[1] : 0=STOP, 1=UP, 2=DOWN
|
||||||
|
|
||||||
|
- H -> E | ClearPath : cmd(107) : 설정된 경로를 삭제(기동중에 수신되는 경우 강제 정지)
|
||||||
|
|
||||||
|
|
||||||
|
- H <-> E | Send Path : cmd(108) : 경로정보를 반환 (태그목록이 콤마로 분리되어 ASCII로 전송)
|
||||||
|
- PathID[1] : 1 : 명령어 식별번호, AGV상태값에 Path ID가 출력됨
|
||||||
|
- PathCount[1] : 전체 태그 갯수
|
||||||
|
- PageNo[1] : 1 : 데이터 총길이가 255를 넘어서면 페이지 분리하여 전달
|
||||||
|
- PageCount[1] : 1
|
||||||
|
- TagID[6]....[n]
|
||||||
|
|
||||||
|
- E <-> H | Request Path : cmd(1)
|
||||||
|
- PathID[1] : 식별용 Path ID, 데이터전송대상은 동일 ID로 값을 반환해야한다
|
||||||
|
- PathPage[1] : 요청페이지 (최초 1번 요청 후 수신데이터에서 다음페이지 존재한다면 페이지번호를 변경하여 요청해야 함)
|
||||||
|
|
||||||
|
- E -> H | Move Complete : cmd(2) : 목적지이동완료 후 전송
|
||||||
|
- E -> H | TagID Received : cmd(3) : 태그값 인식시 전송
|
||||||
|
- TagID[6] : "000000"
|
||||||
|
|
||||||
|
- E -> H | Status : cmd(9)
|
||||||
|
- Mode[1] : 0=manual, 1=auto
|
||||||
|
- RunSt[1] : 0=stop, 1=run, 2=error
|
||||||
|
- Diection[1] : 0=straight, 1=left, 2=right, 3=markstop
|
||||||
|
- Inposition[1] : 0=off, 1=on : 목적위치에 도달완료 시 설정 이동 이동시 OFF됨
|
||||||
|
- ChargeSt[1] : 0=off, 1=on
|
||||||
|
- CartSt[1] : 0=off, 1=on, 2=unknown
|
||||||
|
- LiftSt[1] : 0=down , 1=up, 2=unknown
|
||||||
|
- LastTag[6] : "000000"
|
||||||
|
- CurrentPath[1] : Path ID , 0=미설정, 1~255(순차증가)
|
||||||
|
|
||||||
4. **Door**
|
4. **Door**
|
||||||
- H -> E | cmd(1): 출입문 열기
|
- H -> E | cmd(1): 출입문 열기
|
||||||
- H -> E | cmd(2): 출입문 닫기
|
- H -> E | cmd(2): 출입문 닫기
|
||||||
- E -> H | cmd(3): 출입문 상태 (data len=1 : 1=열림, 0=닫힘)
|
- E -> H | cmd(3): 출입문 상태 (data len=1 : 0=닫힘, 1=열림, 2=바쁨, 3=알수없음, 255=오류)
|
||||||
|
|
||||||
### CRC16 계산
|
### CRC16 계산
|
||||||
- CRC16 다항식 사용
|
- CRC16 다항식 사용
|
||||||
|
|||||||
Reference in New Issue
Block a user