프로젝트 목록
2025
AYTSS 신규 구축
대만 항만의 TOS 작업지시를 FMS 실행 단위로 변환하고 자율 야드 이송장비의 작업 진행을 관리하는 시스템입니다.
- 구분
- 항만 자율 이송장비 자동화
- 담당
- 프로젝트 기반 구조 및 초기 버전 설계·개발
- 기술
- Java 8, Spring Boot 2.7, Gradle, MyBatis, Spring JDBC, Oracle, TCP Socket, eventflow
시스템 개요
AYTSS는 TOS가 전달한 트럭 작업지시를 FMS에서 수행할 수 있는 실행 단위로 변환하고, 자율 야드 이송장비의 이동과 작업 진행을 관리하는 시스템입니다.
- TOS에서 트럭 작업지시와 장비·선박 관련 정보를 수신합니다.
- 수신한 작업을 차량별 TruckJob으로 저장하고 유효 상태를 관리합니다.
- 작업 종류와 적재 상태를 기준으로 다음 WorkOrder를 생성합니다.
- WorkOrder를 FMS Task로 전달하고 수락 응답을 확인합니다.
- FMS가 보고한 차량 위치와 작업 진행 상태를 반영합니다.
- 작업 완료 상태를 저장하고 TOS 및 연계 시스템에 결과를 전달합니다.
주요 개발
프로젝트 기반 구조
- Spring Boot 기반 신규 프로젝트 생성과 Gradle 빌드 구성
- 메시지, 이벤트, 핸들러, 서비스, 정책, 저장소, 작업 실행 영역 분리
- 공통 로직과 현장별 구현을 분리하기 위한 Profile·Factory·Policy 구조
- TOS, FMS, 크레인 자동화 시스템 연동 모듈 구성
작업지시 변환
TOS의 TruckJob을 FMS가 실행하는 WorkOrder로 변환했습니다. 작업은 다음 조건을 기준으로 구분합니다.
| 구분 | 실행 유형 |
|---|---|
| 양하 | 공차 이동 후 상차, 적재 이동 후 하차 |
| 적하 | 공차 이동 후 상차, 적재 이동 후 하차 |
| 야드 이송 | 야드 내 공차·적재 이동 |
| 복수 컨테이너 | 단일 작업과 2개 컨테이너 연속 작업 |
생성된 작업은 차량의 현재 위치와 목적지에 따라 대기구역, 트위스트락 작업구역, 안벽크레인, 야드블록 Sequence로 구성됩니다.
FMS 연동
- Task 생성·변경·취소·완료 메시지 송신
- 작업 수락 ACK와 응답 시간 초과 처리
- 차량 위치 및 작업 Progress 보고 수신
- 메시지 유효성 검사와 ACK OK/NG 응답
- 연결 단절 상태, 작업 거절과 재시도 처리
- 자동 차량과 수동 차량의 진행 조건 분리
작업 상태 관리
- 차량, TruckJob, WorkOrder, 야드 장비와 터미널 설정을 별도 Store로 관리
- WorkOrder 진행 상태, 현재 Sequence, 알람과 컨테이너 작업 상태 저장
- 시스템 재기동 시 DB의 작업 상태와 알람·적재 정보를 복원
- 복원된 WorkOrder를 기준으로 차량별 실행 Process 재생성
- 작업 완료, 취소, 차량 변경과 컨테이너 순서 변경 처리
eventflow 적용
AYTSS에서 장비 작업을 Task → Process → Sequence 단위로 나누고, 이벤트 수신에 따라 다음 단계로 진행하는 eventflow 실행 구조를 설계·적용했습니다. 작업 실행 전 상태 검사와 현재 진행 상태에 맞는 단계 전환도 이 구조에서 처리합니다.
운영 관련 기능
- 시스템, 차량과 인터페이스 상태 알람
- WorkOrder·메시지·Sequence 진행 로그
- KPI 기록 및 작업 진행 데이터 저장
- 중복 작업과 이미 완료된 상태에 대한 방어 처리
- 인터페이스 시험 및 랩 테스트 환경 지원
코드 버전 이력상 프로젝트는 2025년 2월 생성되었고, KevinPark가 2025년 5월 초기 릴리스를 등록했습니다. 현재 소스에는 초기 릴리스 이후 공동 유지보수 변경도 포함되어 있으므로, 공개 경력에서는 프로젝트 기반 구조와 초기 버전의 직접 개발 범위로 구분합니다.
공개 범위
원본 저장소에는 운영 접속 정보, 내부 메시지 규격과 사이트별 설정이 포함되어 있어 공개하지 않습니다. 이 페이지에는 시스템 역할과 담당 개발 범위만 정리했습니다.