선박 AIS정보 응용을 위한 데이터베이스 설계 및 구현
†이서정․박인환*
†,* 한국해양대학교 IT공학부
Database Design and Implementation for Vessel AIS Information Application
†Seo-Jeong Lee, In-Hwan Park*
†,* Div. of IT, Korea Maritime University, Pusan 606-791, Korea
요 약 : 해상 교통량이 증가함에 따라 높아지는 선박 사고위험을 줄이기 위해 안전 운항을 위한 시스템은 필수적이다. 국제해사기구의 SOLAS에서는 선박에 AIS(Automatic Identification System)의 탑재를 의무화 하였다. AIS는 육상과 타 선박에 신원, 종류, 위치, 항해 상태 를 포함한 각종 항해정보와 선박상태를 자동으로 알리는 시스템이다. 안전운항을 위한 응용서비스 개발의 대부분의 경우에 AIS는 활용될 수 있으므로, 체계적인 정보의 관리가 필요하다. 본 논문에서는 수신된 메시지 정보를 관리하기 위해 데이터베이스를 도입하였다. AIS메시지를 정적정보와 동적정보로 나누어 저장하고, 전자해도 기반 AIS 정보를 디스플레이하는 시스템 구현을 통해 설계의 결과를 확인했다.
핵심용어 : AIS, 항해정보, AIS용 데이터베이스, 전자해도, 선박정보 표시시스템
Abstract : As the marine transportation has increased, the safe maneuvering system has been required. SOLAS obligated regulations for carrying AIS(Automatic Identification System) onboard. This system provides navigational information including identification, classification, position, a ship's course and voyage status from own vessel to ground and other vessels. Being utilized in the most development of application service for safe maneuvering, they are to be managed systematic. In this paper, we introduce a database system to manage the voyage status and navigational information of AIS message. It is classified by static or dynamic. An electronic navigational chart display system is implemented to verify the design.
Key words : AIS, navigational information, database design for AIS, electronic navigational chart, vessel information display system
†교신저자 : 정회원, [email protected] 051)410-4578
* 정회원, [email protected] 051)410-4570
1. 서 론
최근 국제교역량의 증가에 따른 해상 교통량의 증가는 해상 사고의 위험을 증가시키는 주된 원인이 되고 있으며, 특히 입 출항이 빈번한 연안에서의 사고율이 높은 실정이다. 항법미준 비나 경계소홀 등으로 대표 되는 운항과실로 인한 선박사고를 줄이기 위하여, IMO(국제해사기구, International Maritime Org.)의 1974 SOLAS에(1999/2000 개정사항 제5장 규칙19) 명 시된 AIS(선박자동식별장치, Automatic Identification System) 는 MSC(해사안전위원회, Maritime Safety Committe)72차 회 의에서 해상의 선박 중 300톤 이상 급에 대해서 AIS의 의무 장착이 제정되었다.
AIS는 적절한 장비를 갖춘 육상기지국, 타 선박 및 항공기 선박의 신원, 종류, 위치, 침로, 항해 상태 및 다른 안전정보를 포함한 정보를 자동으로 제공하며, 유사설비를 갖춘 선박으로 부터 표준으로 정의된 정보를 자동으로 수신한다. 또한 선박을 감시 및 추적하고 육상기지국과 정보를 교환 할 수 있는 기능 을 갖춘 장비이다(IMO,2001).
AIS는 항행상황 파악에서 안전모니터링에 이르기까지 다양
한 응용에 이용되고 있지만(Pokrajac,2007), AIS를 통해 수집 된 정보의 완전성(completeness)에는 문제점이 있어 이를 보장 하기 위해 아직도 많은 연구가 진행되고 있다(Nautical,2006;
Helsinki,2008).
본 논문에서는 AIS정보의 다양한 응용을 위한 준비로써, 선 박 정보를 체계적으로 관리하고 응용하기 위하여 데이터베이 스를 설계하고 이를 전자해도 기반의 표시 시스템을 구현하여 그 결과를 확인한다. 이는 fig. 1의 AIS기반 통합서비스 시스 템(LEE, 2009)의 일부로써 ‘전자해도기반 데이터 표시 (Electronic Chart Data Display)’ 부분에 해당된다. AIS수신기 로 수집한 선박 정보를 분석하고, 이를 데이터베이스에 표시할 수 있는 형태로 가공한다. 가공한 정보를 전자해도에 표시하 고, 이후의 응용 개발을 위해 저장한다.
AIS의 메시지 정보를 데이터베이스에 적용하는 사례는 주로 ECDIS(Electronic Chart Display Information System)과 ENC(Electronic Navigational Chart)에 포함되어 활용되고 있 다. Lam et al(2007)의 사례에서는 GIS와 ECDIS를 통합하여 웹기반 해양정보제공을 위한 시스템을 제안했고, Lin et al(2007)은 AIS메시지 중 위치정보를 중심으로 데이터베이스
를 구축했다. 그 외에도 AIS를 활용하는 시스템에 포함되어 제작된 제품이 다수 있으나 조사결과 데이터베이스 구조에 대 한 언급은 되어있지 않는 실정이다. 본 논문에서는 fig.2의 통 합시스템을 구현하기 위해 다른 기능으로의 확장을 고려하여 데이터베이스를 설계하고 이에 대한 구현은 전자해도기반 응 용을 통해 보여준다.
Fig. 1 Integrated Service System using AIS
2. 관련 연구
2.1 AIS
선박 AIS 장치는 다음과 같은 기능을 갖추고 있다.
선박의 항해정보를 실시간 제공 충돌예방 단문의 통신기능 내장 타선박의 항해정보 실시간 검색 타선에 자선의 정보를 제공
AIS는 디지털 VHF 무선 트랜스폰더 시스템으로9,600bps의 전송률로 두 개의 채널(87,88)을 선택적으로 이용하여 분당 2250개의 정보를 전송한다. 송신기와 수신기로 구성되며, 선박 위치, 항해데이터, 선명, 항해정보 등을 송수신한다(ITU,2001;
IALA,2002). Fig. 2는 AIS의 구성요소 개념도이다. 정보의 표 시는 수신기의 모니터에 표시하지만, 단문으로는 정보의 전문 성으로 모니터링하기 어려워 전자해도 기반의 장비 ECDIS (Electronic Chart Display and Information System) 등에 그 래픽과 텍스트로 표시한다.
Fig. 2 Components of AIS
2.2 AIS 데이터 처리 특징
항해 및 무선 통신표준 IEC 61993 part2에는 AIS의 암호화 된 이진데이터 전송과 암호화, 복호화, 메시지 구조화에 대한 규약이 정의되어 있다(IEC,2001). 이를 준수하는 모든 정보는 ASCII문자로써 8비트이며, MSB(Most Significant Bit)를 항상 0으로 보내도록 규정하고 있다. 그 외의 7비트로써 의미를 표 현한다. AIS에서 사용하는 기호는 6비트 이진의 가능한 64개 의 조합이며, table 1에 IEC에 의해 예약된 출력 가능한 “유효 문자”의 일부를 보여준다. ASCII 이진데이터는 대표되는 이진 값은 송신국에서 보내려고 의도한 데이터가 암호화되어있다.
표준에 따라 송신 메시지의 분석을 통한 6비트에서 8비트 ASCII문자로의 변환이 이루어 져야 한다. 이와 반대로 메시지 수신시에는 유효문자로 수신된 데이터를 이진필드로 대표되는 6비트 조합의 비트 스트림으로 복호화 알고리즘을 통해 변환 하는 작업이 필요하다.
2.3 AIS 메시지 정보의 내용 및 그 활용
AIS의 정보는 컴퓨터 내에서 데이터의 효율적인 처리를 위 하여 변하지 않는 정보, 거의 변하지 않은 정보, 수시로 변하는 정보 등으로 나누어 시스템을 구축하고 있다. 즉, 정적정보, 가 변정보, 동적정보 등의 세 가지 정보로 구별된다. 그 외에 기상 혹은 안전항해에 관한 메시지 등이 포함된다.
정적정보의 내용으로는 IMO 번호, 신호부자와 선명, 길이와 선폭, 선박의 형태, GPS 안테나의 위치 등이고, 가변정보는 흘 수, 위험화물, 목적지항, 도착예정시간, 항로계획 등이다. 또한
Table 1 Variable character table as 6-bit field ASCII
HEX = binary Valid character Binary field represented
30=00110000 0 000000
31=00110001 1 000001
32=00110010 2 000010
33=00110011 3 000011
34=00110100 4 000100
35=00110101 5 000101
36=00110110 6 000110
37=00110111 7 000111
38=00111000 8 001000
39=00111001 9 001001
6F=01101111 o 110111
70=01110000 p 111000
71=01110001 q 111001
72=01110010 r 111010
73=01110011 s 111011
74=01110100 t 111100
75=01110101 u 111101
76=01110110 v 111110
77=01110111 w 111111
동적정보는 선박의 위치(정확도 및 상태), UTC 시간, 대지침 로, 대지속력, 선수방위, 선회각속도, 횡경사각(선택), 피칭 및 롤링(선택), 항해상태(조종불능, 정박 등), 추가정보를 제공하 는 외부센서 등이다. 그리고 안전항해메시지는 중요한 항해상 혹은 기상통보 등이다(IEC,2001). 각 AIS 메시지 정보의 타입 은 table 2와 같다.
Table 2 AIS message types
메시지인식자 내 용 1,2,3 위치보고- 계획/할당/폴링 응답
4 기지국 위치, 세계표준시/일자 , 현재 슬롯번호 5 정적, 항해관련 데이터
6,7,8 Binary 메시지 할당된 주소 인식 및 방송 9 표준 수색구조항공기의 위치보고 10,11 세계표준시/일자 질의와 응답
12,13,14 안전관련 메시지 - 할당된 주소 인식 및 방송 15 질의 - 특정 메시지 형태 요구
16 할당모드
17 DGNSS 방송의 Binary 메시지 18,19 Class B SME 위치보고
20 자료링크 관리 - 기지국에 대해 예약된 슬롯 21 항로표지보고 - 위치와 상태보고
22 채널관리
2.4 AIS정보 응용을 위한 데이터베이스 활용
AIS정보를 이용한 응용은 선박의 안전운항을 위한 서비스를 구현하는데 다양하게 활용되고 있다. AIS데이터베이스는 다음 과 같은 특성을 갖는다(Rhine, 2008).
• 약결합(loosely-coupled) : 다양한 응용들 사이에 AIS데이터 베이스는 독립적으로 존재해야한다.
• 요청 및 응답 지원: 특정 응용시스템이 데이터베이스에 정 보를 요청하면 그에 대한 응답을 지원할 수 있어야한다.
• 동기화 지원: 서로 다른 응용이 데이터베이스의 동일 데이 터를 요청하거나 변경하려는 경우, 데이터에 대한 관리를 지원할 수 있어야한다.
3. 시스템 구현
3.1 시스템 구현 아키텍처
AIS를 이용한 선박정보 표시 시스템은 각 선박에 탑재되어 있는 AIS 장비에서 발생된 메시지를 AIS 수신기가 RS-232 시리얼(Serial)로 PC에 전달하고, 이 전달되는 모든 데이터는 IEC 61162-2 통신표준을 준수하므로 ASCII 코드화 되어 있다.
따라서 AIS 통신 프로토콜 표준에 따른 분석이 수행되어야한 다.
AIS 통신 프로토콜 표준에 따라 파악된 위치정보 및 선박 정보, 항해 중 선박정보는 데이터베이스 테이블에 저장된다.
데이터베이스에 저장된 정보의 활용의 사례로써 전자해도 상 에 표시하는 시스템을 구현하며, fig.3과 같은 아키텍처로 구성 한다. 각 구현 단계에는 필요한 관련 표준을 기반으로 분석 및 참조한다.
Fig. 3 System architecture
Fig. 3을 구현하는 상세 단계는 다음과 같다.
① 시리얼통신 : AIS장비에서 PC로 전송구현
② 프로토콜구현 : AIS 통신프로토콜표준 분석 및 구현 ③ DB구축 : MS-SQL로 AIS정보구조 구현
④ UI설계 : 전자해도디스플레이, 사용자정의UI구현 ⑤ 테스트 : 모듈별 통합 테스트
3.2 시리얼 데이터 처리
AIS장비에서 PC로 오는 데이터는 암호화된 특정 메시지 형 태이며 ②프로토콜구현 과정을 통해 분석된다. ①은 AIS 수신 기가 항해중인 선박들로부터 AIS 메시지를 받아서 시리얼로 데이터를 PC에 전달 받는 단계로, 메시지 형식은 아래와 같이 정의 된다(IMO,2007).
Fig. 4 VDM-VHF encoded data
Fig. 4에 표현된 VDM메시지는 콤마 단위로 구분되며 첫 세
그먼트부터 차례로 의미를 분석하면 다음과 같다.
① AIS VDM message
② 전체 문장의 수
③ 전체 문장중의 문장번호
④ 서로 다른 문장으로 구분할 수 있는 순서번호
⑤ “A" or "B"로 나타내어지는 AIS Channel
⑥ 암호화된 AIS 메시지
⑦ 채우기 비트
⑥은 2진 시리얼 정보를 6비트씩 압축한 형태를 AIS메시지 매핑 표준에 따라 표시한 일종의 기호와 같으며, 이는 (IMO, 2001)에 따라 의미 있는 데이터로 변경해야한다.
Table 3은 메시지1,2 그리고 3을 포함하는 위치정보를 보여 준다. Table 4는 정적데이터를 표시하는 5번 메시지의 구성이 다.
Table 3 AIS location report(message 1,2 and 3)
항목 내용
메시지 ID 메시지에 대한 식별자(1,2 혹은 3) 중계국 0-3.메시지의 반복횟수를 나타내기위해
사용됨 default=0; 3=반복하지않음 사용자 ID MMSI ID
항해상태
0 = 엔진추진에 의한 항해 중, 1 = 정박 중,
2 = 조종 불능상태, 3 = 조종능력이 제한될 때, 4 = 흘수에 의해 제한의 받을 때, 5 = 정박시,
6 = 좌초시, 7 = 조업시,
8 = 돛으로 운항 중(범주항해) 9 = HSC category를 위한 예비용, 10= WIG category를 위한 예비용, 15= default
선회율 ±708도/분(-128 = default) 대지속도 1/10노트단위의 대지속도(0-102.2)
1023=유효하지 않음
위치정밀도 1=높음
0=낮음
경도 1/10000분 단위의 경도(±180도, 동쪽 = +, 서쪽 = -)
위도 1/10000분 단위의 위도(±90, 북쪽 = +, 남쪽 = -) 선수방향 각도(0-359)(511은 지시불용) 타임스탬프 보고시 세계표준초(0-59) 혹은
60-63 지역사용을
위한 예비 관할지역당국에 의해 정의되는 예비 RAIM flag 위치 고정장치의 flag
통신상태 SOTDMA / ITDMA 상태
Fig. 5는 AIS의 시리얼 정보를 표준을 근거로 정적정보와 동적정보로 변환한 프로그램의 사용자 인터페이스이다.
Fig. 5 AIS processing user interface
Table 4 Static information (message 5)
항목 내용
메시지 ID 메시지에 대한 식별자(5) 반복 지시자 메시지의 반복횟수를 나타냄 0~3
default=0; 3=다시 반복하지 않음 사용자 ID MMSI ID(해상이동업무식별번호) AIS버전 0 = AIS 초기버전
IMO 번호 1~999999999 호출부호 7x6bit ASCII문자
선명 최대 20문자 6bit ASCII문자
선형 및 화물종류
0 = 유용하지 않거나 선박 없음 1~99 = 별도 정의
100~199 = 지역사용을 위한 예비용 200~255 = 앞으로 사용하기 위한 예비 직경
/ 위치기준점
보고위치를 위한 기준점;
또한 미터단위의 선박의 길이를 가리킨다 미터단위의 길이
도착예상시간 도착예상시간; 월월일일시시분분 표준시 현재의
최대흘수
1/10m단위; 255 =흘수가 25.5m이상 0 = 유용하지 않음
목적지 6bit ASCII를 사용하여 최대 20문자 DTE 데이터 터미널 대기(0=이용, 1=이용X)
3.3 AIS정보 표시시스템을 위한 데이터베이스 설계
본 논문에서는 향후 진행될 응용 서비스를 위한 데이터의 보관과 분석을 위해 데이터베이스를 도입했다. 실시간 데이터 를 전자해도에 표시하고 시간이나 정해진 필드에 따라 데이터 베이스에 분류 저장한다. 구현 대상 메시지는 1, 2, 3번 그리
고 5번이다. 1, 2 ,3번 메시지는 위치보고 메시지로 주로 동적 데이터를 포함하고 있다.
본 논문에서 설계한 데이터베이스 테이블은 정적정보, 동적 정보 및 임시정보를 저장하는 세 종류로 구성한다. Table 5, 6 은 정적정보와 동적정보에 대한 테이블의 스키마를 보여준다.
Table 5 Data table for message 1,2 and 3
열 이름 데이터형식 내용
MMSI int 해상이동업무식별 번호
Navigational_
Status int 항해 상태
ROT float 분당 회선율
SOG float 대지 속력
Position_Accur
acy float 위치 정확도
Longitude float 경도 ±180°
Latitude float 위도 ±90°
COG float 대지침로
Heading int 방향
Receive_Time datetime 메시지 수신 시간
Table 6 Data table for message 5
열 이름 데이터 형식 내용
MMSI int 해상이동업무 식별번호
IMO int 국제 해사 기구 번호
Call_Sign varchar(20) 무전기 신호 Name varchar(20) 배 이름 Type_of_Ship int 선박의 종류 Fixing_Device int 전자장치의 종류
Day int 날짜
Year int 년도
Minute int 분
Draught float 홀수
Destination varchar(20) 목적지
PosRefA int 배의형태지정 참조값
PosRefB int “
PosRefC int “
PosRefD int “
Receive_Time datetime 메시지 수신 시간
임시 정보는 특정 선박의 최신 정보를 보관하는 목적으로 사용되며, 이는 해도기반 화면디스플레이를 포함한 응용서비 스 개발을 위해 필요하다. 세 가지 정보 모두 MMSI 번호를 주 키로 사용하며 VHF 가청범위인 50Km 반경 내에 새로운 MMSI번호가 출현할 시에 새 튜플이 추가되고 기존 MMSI번 호와 같을 경우 기존 테이블에 정보가 갱신함으로서 최신정보 가 유지된다. 이에 대한 데이터베이스 테이블 관리의 알고리즘
개요는 다음과 같다.
Check_time_interval(system_clock); //업데이트주기확인 While (AIS==on)
{
If( new MMSI ) // 새로운선박 감지 create static_tuple
create dynamic_tuple
Else if (existed MMSI ) // 기존선박 update temporary_tuple
After system_clock countinue }
3.4 응용 사례 - 전자 해도 디스플레이
전자해도란 종이해도에 표시된 선박 항해에 관련된 모든 정 보사항으로 등심선·수심·항만시설·항로표지(등대, 등부표)·위 험물·해안선·항로 등을 국제 수로기구(IHO)기준 S-57 Edition 3.0으로 제작한 것이다. 전자적으로는 디스플레이 장치에 해도 정보와 항해보조정보를 포함하여 표시한다.
전자해도를 그리는데 필요한 기능 모듈에 데이터베이스로 분석된 AIS정보를 전달하여 화면상에 표시한다. Table 6의 메 시지 테이블에 저장 되어있는 경도(Longitude), 위도(Latitude) 의 데이터 값을 전자해도 표시인자로 대입한다. 대입된 좌표 값을 선박의 위치정보로 표시한다. 그리고 방향(Heading) 데이 터는 전자해도 상에 선박의 진행방향 값으로 표시하고, Table 6의 분당 회선율(ROT)등을 표시함으로써 사용자가 전자 해도 를 통해 선박의 정보를 알 수 있다. Fig. 6은 수신한 AIS정보 를 전자해도 상에 표현한 화면이다.
Fig. 6 Electronic chart display
4. 결 론
본 논문에서는 AIS정보의 다양한 응용을 위한 준비로써, 선 박 정보를 체계적으로 관리하고 응용하기 위하여 데이터베이
스를 설계하고 이를 전자해도 기반의 표시 시스템을 구현하여 그 결과를 확인했다.
연구 결과는 첫째, AIS 통신프로토콜표준 분석에 따라 AIS 장비에서 PC로 전송 구현, 둘째, AIS정보구조 구현을 위해 정 적정보와 동적정보로 구별하여 MS-SQL 데이터베이스로 구 축, 그리고 셋째, 전자해도 기반의 표시의 구현이다.
본 논문에서 설계한 데이터베이스는 멀티미디어 데이터와 상황데이터를 포함한 해양안전정보 기반의 의사결정지원시스 템 연구에 이용될 예정이다.
후 기
이 논문은 해양수산기술진흥원 해양수산특정연구개발사업
“차세대 해양안전관리체계 구축 및 운영기술개발”사업과 2007 년도 정부(과학기술부)의 재원으로 한국과학재단의 지원을 받 아 수행된 연구임(No. R01-2007-000-11863-0)
참 고 문 헌
[1] Central Commission for Navigation on the Rhine(2008), Leaflet Inland AIS Edition 2008.
[2] Helsinki(2008), "Inaccuracies in AIS data- effects on usability," Agenda Item 9 of 17th Helsinki commission HELCOM AIS, pp.1-4.
[3] IALA(2002) IALA Guidelines on universal ship-borne automatic identification system (AIS).
[4] IEC(2001), IEC61993-2, “Annex B: New sentences due to AIS,” Int. Elec. Committee.
[5] IMO(2001), IMO Resolution MSC.74(69), Annex 3, Recommendation on performance standards for an universal shipboard automatic identification system (AIS).
[6] IMO(2007), IMO NAV53 sub-committee, “Annex 8: AIS messages,” International Maritime Organization.
[7] ITU(2001), ITU-R Recommendation M.1371-1 (2001), Technical characteristics for a universal automatic identification system using time division multiple access in the VHF maritime mobile band.
[8] Lam, S. and Leyzack, A.(2007), "Integrating GIS, ECDIS and Web-based Marine Information System for Maritime Navigation and Coastal Protection," Hong Kong SAR, pp.1-9.
[9] Lee S.(2009), “Information Architecture for Vessel e-navigation application,” International conference on MITA, Vol.5, pp.151-154.
[10] Lin C. Sun T. Zhou J. Lin H.(2007), "Development of a Display Platform of the AIS Information," ICEMI’2007, pp.890-893.
[11] Nautical Institute(2006), "AIS Inaccuracies, International Marine Accident Reporting Scheme," the International Journal of the Nautical Institute, pp.19-20.
[12] Pokrajac, D., Filjar, R. and Desic, S.(2005), "Provision of general functionalities in Internet AIS," IEEE Intelligent Transportation Systems, pp.846-850
원고접수일 : 2010년 4월 19일 심사완료일 : 2010년 5월 20일 원고채택일 : 2010년 5월 27일