안동시 버스 승객안내 시스템 구축 프로젝트의 1차 개발에서는 버스 운행 데이터를 기반으로 승객에게 정류장 및 운행 정보를 제공하는 승객안내기(BIT) 시스템을 개발했습니다.
1차 시스템의 핵심은 티머니 통신 데이터를 활용한 오프라인 기반 정보 처리였습니다.
현재처럼 차량의 위치를 GNSS로 직접 수집하고 서버와 실시간 통신하는 구조가 아니라, 티머니 통신 장비에서 전달되는 데이터를 수신하여 차량 내부 시스템에서 분석한 뒤 승객안내 화면에 표시하는 방식으로 구성했습니다.
[BIT와 BIS 연동 구조]
BIS(Bus Information System)는 버스의 운행 정보와 위치 정보를 관리하고 제공하는 시스템이며, BIT(Bus Information Terminal)는 이러한 정보를 승객에게 실제로 보여주는 안내 단말입니다.
1차 개발에서는 차량 내부에서 전달되는 티머니 데이터를 기준으로 현재 운행 상태와 정류장 정보를 판단하고 필요한 정보를 승객안내 화면에 표시하도록 구현했습니다.
통신이 항상 가능한 환경을 전제로 할 수 없었기 때문에 서버 의존도를 최소화하고 오프라인 상태에서도 기본적인 승객안내 기능이 유지되도록 만드는 것이 중요한 과제였습니다.
[티머니 통신 데이터 처리]
실제 차량 환경에서는 단순히 데이터를 수신하는 것만으로는 안정적인 서비스를 구현하기 어려웠습니다.
수신되는 데이터의 시점과 차량의 실제 운행 상태가 정확하게 일치하지 않는 경우가 있었고, 운행 상황이나 통신 상태에 따라 데이터가 늦게 전달되거나 일시적으로 수신되지 않는 상황도 고려해야 했습니다.
따라서 수신 데이터의 유효성을 판단하고 이전 상태와 비교하여 현재 정류장 및 운행 상태를 결정하는 별도의 상태 관리 로직을 구현했습니다.
동일 데이터가 반복적으로 수신되거나 데이터가 일부 누락되는 경우, 비정상적인 순서로 데이터가 들어오는 경우에도 화면이 잘못 변경되지 않도록 예외 처리를 적용했습니다.
[오프라인 환경에서의 시행착오]
1차 개발에서 가장 큰 시행착오는 개발 환경과 실제 버스 운행 환경의 차이였습니다.
개발 환경에서는 정상적으로 동작하던 기능도 실제 차량에서는 통신 지연이나 순간적인 데이터 단절 등 예상하지 못했던 상황이 발생했습니다.
네트워크 연결을 항상 신뢰할 수 없었기 때문에 현재 운행에 필요한 데이터를 단말 내부에 유지하고, 통신이 불안정한 상황에서도 기존 정보를 활용할 수 있도록 처리했습니다.
또한 버스가 이동하면서 정류장을 통과하는 과정에서는 짧은 시간 동안 여러 상태가 변경될 수 있기 때문에 수신된 값을 그대로 화면에 반영하는 방식만으로는 안정적인 안내가 어려웠습니다.
이를 해결하기 위해 이전 상태와 현재 상태를 비교하고 일정 조건을 충족했을 때만 승객안내 화면을 갱신하도록 로직을 개선했습니다.
[1차 시스템의 한계]
1차 시스템은 티머니 통신 데이터를 기반으로 기본적인 승객안내 기능을 구현하는 데 초점을 맞췄습니다.
차량의 실제 위치를 GNSS를 통해 직접 판단하는 구조가 아니었기 때문에 세밀한 위치 기반 기능을 구현하는 데에는 한계가 있었습니다.
또한 1차 시스템에는 음성 안내 기능이 포함되지 않았으며 승객에게 제공되는 정보는 화면을 통한 시각적 안내가 중심이었습니다.
서버와 실시간으로 차량 상태를 주고받는 온라인 구조 역시 제한적이어서 차량의 현재 위치나 단말 상태를 중앙에서 실시간으로 관리하는 데 제약이 있었습니다.
이러한 경험을 바탕으로 2차 개발에서는 기존 구조를 확장하여 GNSS 위치정보, 온라인 서버 통신, LCD 제어, 차량 앰프 연동 음성 안내 및 FTP 기반 APK 관리 기능을 추가하는 방향으로 시스템을 고도화했습니다.
[1차 개발을 통해 얻은 경험]
버스 승객안내 시스템은 단순히 화면에 정류장 이름을 표시하는 프로그램이 아니라 차량 내부 통신 장비, 운행 데이터, 디스플레이 장치 등 여러 요소가 함께 동작해야 하는 시스템입니다.
특히 실제 운행 환경에서는 네트워크와 데이터가 항상 정상적으로 들어온다는 가정으로 개발할 수 없다는 점을 확인했습니다.
1차 구축을 통해 확보한 오프라인 데이터 처리와 예외 상황 대응 경험은 이후 2차 시스템에서 GNSS와 서버 통신을 결합한 온라인 승객안내 시스템으로 발전시키는 기반이 되었습니다.