Files
ENIG/Cs_HMI/docs/Buffer_In_Analysis.md
2025-12-12 20:57:55 +09:00

2.6 KiB

AGV 버퍼 진입 (Buffer In) 로직 분석

이 문서는 _SM_RUN_BUFFER_IN.cs 소스 코드를 기반으로 한 Buffer In 동작의 상세 로직 흐름을 설명합니다.

개요

목적: AGV가 버퍼 스테이션에 도킹하여 짐을 내리는 작업(Unloading)을 수행합니다.

선행 조건

  1. 충전 해제 (Charge OFF): 충전 중이 아니어야 합니다.
  2. 라이다 정지 (Lidar Stop): 장애물에 의해 차단되지 않아야 합니다.
  3. 위치 확인 (Position Check): 현재 위치가 확정되어 있어야 합니다.

시퀀스 상세 흐름

단계 동작 상세 설명 오류 조건 (Error Condition)
1 시작 (Start) - 로그 기록: "버퍼도킹시작"
- 음성 안내: "하차작업을 시작합니다"
(없음)
2 이동/정지 확인 - 현재 AGV가 움직이는 중인지 확인.
- 3초 이상 움직이면 강제 정지 명령.
- 정지해 있거나 이미 회전(L90) 상태라면 다음 단계로 진행.
(없음)
3 회전 명령 - 현재 회전 상태가 L90(왼쪽 90도)이 아니라면 좌회전 180도(Left 180 Turn) 명령 전송.
- 로그: "AGV Left Turn"
(없음)
4 회전 시작 대기 - AGV가 회전 동작을 시작했는지(움직임 감지) 확인. 5초 타임아웃: 5초 내 미동작 시 오류.
5 회전 완료 대기 - AGV가 회전 동작을 완료하고 멈췄는지 확인. 15초 타임아웃: 15초 이상 계속 움직이면 오류.
6 리프트 하강 - 리프트 다운(Lift Down) 명령 전송. (없음)
7 리프트 확인 - 리프트 다운 센서 신호 확인. 10초 타임아웃: 리프트 하강 미확인 시 오류.
8 마크 스탑 설정 - 마크 스탑(Mark Stop) 모니터링 활성화. (없음)
9 후진 이동 시작 - 속도: 저속(Low)
- 방향: 후진(Backward)
- 명령: 후진 구동(Run Backward)
10초 타임아웃: 속도 설정 실패 시 오류.
10 마크 신호 대기 - NEXTSTOP_MARK (자석/RFID) 신호 감지 대기. 3초 타임아웃: 3초 내 신호 미감지 시 오류.
11 최종 정지 확인 - AGV가 완전히 멈출 때까지 대기. 10초 타임아웃: 10초 내 정지 안 할 시 오류.
12 완료 - 로그: "버퍼투입완료"
- ACS 통신: 버퍼 투입 완료 신호 전송.
- 상태 업데이트.
(없음)

관련 파일

  • Project\StateMachine\Step\_SM_RUN_BUFFER_IN.cs