Fields of Manuscript

Journal of the Korean Society of Marine Engineering - Vol. 39 , No. 1

[ Article ]
Journal of the Korean Society of Marine Engineering - Vol. 39, No. 1, pp. 86-93
Abbreviation: Journal of the Korean Society of Marine Engineering
ISSN: 2234-7925 (Print) 2234-8352 (Online)
Print publication date Jan 2015
Received 01 Dec 2014 Revised 22 Dec 2014 Accepted 13 Jan 2015
DOI: https://doi.org/10.5916/jkosme.2015.39.1.86

e-Navigation MSP 평가를 위한 시나리오 기반 시뮬레이션 시스템 개발
신일식1 ; 황훈규2 ; 이장세3 ; 유영호

A Development of Simulation System based on Scenario for Evaluation of e-Navigation MSP
Il-Sik Shin1 ; Hun-Gyu Hwang2 ; Jang-Se Lee3 ; Yung-Ho Yu
1ICT Convergence Technology Team, Research Institute of Medium & Small Shipbuilding, Tel: 051-974-5528 (issin@rims.re.kr)
2Department of Computer Engineering, Graduate School of Korea Maritime and Ocean University, Tel: 051-410-5227 (hungyu@kmou.ac.kr)
3Division of Information Technology Engineering, Korea Maritime and Ocean University, Tel: 051-410-4577 (jslee@kmou.ac.kr)
Correspondence to : Division of Information Technology Engineering, Korea Maritime and Ocean University, 727, Taejong-ro, Yeongdo-gu, Busan 606-791, Korea, E-mail: yungyu@kmou.ac.kr, Tel: 051-410-4345


Copyright © The Korean Society of Marine Engineering
This is an Open Access article distributed under the terms of the Creative Commons Attribution Non-Commercial License (http://creativecommons.org/licenses/by-nc/3.0), which permits unrestricted non-commercial use, distribution, and reproduction in any medium, provided the original work is properly cited.

초록

최근 선박의 안전항해를 위해 해사서비스 목록인 MSP에 대한 국제적인 논의가 활발하게 진행되고 있다. 성공적으로 MSP를 개발하기 위해서는 먼저 MSP의 구조와 데이터 표준화가 되어야 한다. 또한 육상-선박, 선박-선박 간 제공되는 IT서비스가 안전항해에 효과적인지 평가하고 데이터의 전달 및 표현방법에 대한 사전 적합성 검토가 필요하다. 따라서 본 논문에서 제안하는 시뮬레이션 시스템은 항해사 교육 목적으로 사용하는 선박 조종 시뮬레이터와 달리 일반 PC 환경에서 동작하여 MSP의 IT서비스를 개발하고 검증하는 것을 목적으로 설계하였다. 시스템은 시나리오 편집기 모듈과 항해환경 3차원 시각화 모듈, 항해기기 2차원 시각화 모듈로 구성되어 있다. 시나리오 편집기 모듈은 시뮬레이션 시나리오를 작성하고 시뮬레이션을 운용하는 기능을 제공한다. 항해환경 3차원 시각화 모듈은 작성된 시나리오에 따라 해상환경과 항해환경의 상호작용을 3차원으로 표현하는 기능을 제공한다. 항해기기 2차원 시각화 모듈은 선박의 주요 항해기기의 상호작용을 2차원으로 표현하는 기능을 제공한다. 개발된 시뮬레이션 시스템을 이용하여 다수 선박이 항구에 입․출항하는 항해환경을 구성하고 자선을 항구에 입항하는 시험을 행하여 국제해사기구에서 개발되어진 일부 MSP의 효용성을 평가하기 위한 시뮬레이션에 사용할 수 있다는 것을 확인하였다.

Abstract

Recently, the development of Maritime Service Portfolios (MSPs) for the safe navigation of ship has been discussed internationally. For the successful service of the MSPs, first of all, studies for the standardization about the structure and data structure of MSPs should be preceded. Also, it is necessary to evaluate and assess whether the services are effective for safe navigation, and provided data and portrayal methods are proper. However, because great dangers will be accompanied when untested MSPs about their effectiveness and safety are applied in real ship navigation, it is necessary that effectiveness and safety of the MSPs should be proven under various navigational conditions and environments by simulation. In this paper, we propose a 3D navigation simulation system using desktop PC environment, which is proper for evaluating the effectiveness of MSPs. The system consists of three modules which are simulation scenario editor, 3D visualization of navigational environment and 2D navigational equipment. The scenario editor module provides an environment setting for simulation, such as properties, routes and positions of vessels and aids to navigations. It also provides functions to create a scenario for the simulation to operate. Additionally, the 3D visualization module provides 3D navigational environment which shows interplay between geographical and navigational environment based on the created scenario. The 2D navigational equipment module provides visualization functions of various navigational equipment, shows the interaction between ship's navigational equipment and ship's environment. The simulation scenario, in which various kinds of ships are routing in the port, is created by the developed simulation system, and experimented whether this developed system is appropriate to evaluate and assess the MSPs developed by the International Maritime Organization.


Keywords: Simulation system, Maritime Service Portfolio, Scenario editor, 3D visualization, Navigational equipment
키워드: 시뮬레이션 시스템, 해사서비스 목록, 시나리오 편집기, 3차원 시각화, 항해기기

1. 서 론

IMO에서는 선박의 안전항해와 해양환경의 보호를 위한 e-Navigation을 구현하기 위해 전략 이행 계획을 수립하였으며, 그 중에서도 해사서비스 목록인 MSP (Maritime Service Portfolio)는 2018년부터 실행하도록 계획되어 있다. MSP란, 항해 시 항만, 연근해 및 혼잡 또는 제한 수역, 대양 횡단, 해양, 극지방 및 원해 지역 등에 따라 달라지는 안전항해를 위한 정보요구사항을 충족시킬 수 있도록 제공하는 서비스 집합을 의미하며, NAV 59차와 NCSR 1차 회의를 통해 16가지 MSP가 제안되었다[1]. MSP는 단일 IT장비를 개발하는 것이 아니라, e-Navigation 체계에서 적합하게 구축된 선박, 육상, 통신 인프라를 활용하여 안전항해를 위한 IT서비스를 의미한다. 즉, 항해에 필요한 정보를 제공하여 항해사들의 의사결정을 보조함으로써 인적과실(human error)과 정보부족에 의한 해양사고를 줄이는 것이 목적이다. 현재 MSP는 개념설계단계에 머무르고 있지만, 향후 다양한 IT서비스가 창출될 것으로 예상된다. 성공적인 MSP의 창출을 위해 먼저 IT서비스 기반이 되는 데이터의 구조와 전송, 표현, 프로토콜, 소프트웨어의 품질 인증과 항해사에게 어떠한 MSP가 있는지 알려주는 방법 등을 위한 표준화가 진행되어야 한다. 또한 항해사의 혼란을 야기하지 않도록 안전항해에 효과적인가에 대한 효용성 평가와 관리 및 유지보수를 위한 체계를 개발해야 한다[2]. 이러한 것은 실제 상황에서 많은 실험을 거쳐 확인되어야 하지만 선상실험 전에 이러한 목적에 적합한 시뮬레이션 시스템을 통하여 IT서비스가 제공하는 목표를 달성할 수 있는지를 검증하는 단계가 필요하다. 효과가 있을 것이라고 예상한 서비스가 실제적으로 기대하는 만큼의 효과는 없고 오히려 항해사의 판단을 흐리게 하거나 오해를 야기하여 안전항해에 해를 끼치는 경우도 발생할 수 있기 때문이다.

한편, 과거 사고사례를 분석해 보면 다양한 선박이 동일한 공간에서 운용될 때 항해사가 선박의 동특성을 이해하지 못해 발생하는 사고보다 육상-선박, 선박-선박 사이에서 정보를 교환할 때 항해사가 오해하기 쉬운 상황이거나 정보 부족 등에 따른 인적과실에 의한 사고발생 비율이 더 높다. 이는 교환되는 정보를 잘못 이해하도록 하는 요인이 있거나 적절한 정보의 부족, 제공되는 정보의 부적절한 시기 및 부적절한 표현 등에서 기인하다고 볼 수 있다[3]. 따라서 MSP평가와 효용성 검증을 위한 시뮬레이션 시스템은 복잡한 선박의 동적 운동특성에 대한 표현 보다는 인적과실에 의한 사고사례를 재현하여 정보전달 체계와 표현의 문제점을 발견하고 예방을 위한 방법을 발견할 수 있는 구조이어야 한다. 또한 개발된 MSP가 여러 상황에서 실제적으로 유용한 지를 검토할 수 있도록 해야 한다. 이러한 목적을 달성할 수 있도록 다음과 같은 점에 유의하여 시뮬레이션 시스템을 설계하였다.

①다양한 MSP를 검증할 수 있도록 해당 MSP의 시나리오 편집이 가능하고 용이해야 한다.

②선박의 항해 상태를 쉽게 변경할 수 있으며 항해사가 임의의 본선 조종이 가능해야 한다.

③임의로 해상환경(항구지형, 항로표지시설, 주/야간, 날씨, 파도)을 쉽게 재현할 수 있어야 한다.

④선박통항 상태를 쉽게 재현하고 시뮬레이션 중에도 기록, 중단, 재생이 가능하여 필요시 즉각적으로 분석이 가능한 구조이어야 한다.

⑤항해시 항해사의 인지상태와 정보 교환방법과 정보 표현을 쉽게 변경할 수 있어야 한다.

⑥사고재현을 토대로 문제점 파악과 해소를 위한 방안을 쉽게 찾을 수 있어야 한다.

⑦문제 해소를 위해 제안된 MSP를 쉽게 구성하고 시연을 통하여 문제가 해소되는 것을 쉽게 확인할 수 있는 구조이어야 한다.

⑧일반 PC환경에서 구현할 수 있어야 한다.

본 논문에서는 이러한 조건을 만족하는 시뮬레이션 시스템의 개발에 관한 내용을 다룬다.


2. MSP

현재 MSP는 유사서비스가 제공되고 있지만 이 서비스를 기반으로 응용/발전을 위하여 추가된 개념이 MSP이다. 16가지 MPS서비스는 내용은 다음과 같다[1].


Figure 1: 
The System architecture

MSP1은 전통적인 VTS(Vessel Traffic Service) 서비스로써 선박의 입출항 모니터링을 통하여 항해를 위한 의사결정과정 보조를 위해 적시에 주요한 정보를 제공하는 서비스이다. MPS2는 항해보조서비스로써 선상에서 항해의사결정을 보조하고 그 영향을 감시하여 장비의 고장 또는 비상 상황에서 선박의 요구에 의해 제공될 수 있는 서비스이다. MSP3은 통항기구서비스이며 VTS 영역 내에서 위험한 해사통항상황의 전개를 예방하여 안전하고 효율적인 선박 통항을 제공하는 서비스이다. MSP4는 지역항구서비스이며 VTS 시설이 과도하거나 부적절하다고 평가되는 항구에 적용되어 항구 이/접안 등과 같은 해상교통환경과 무관한 좁은 범위의 서비스이다. MSP5는 해상안전정보서비스로써 국제적 공통된 표준을 준수하여 해상안전정보를 방송하는 서비스이다. MSP6과 MSP7은 도선서비스와 터그서비스이며, 이 서비스는 이해 당사자들 간의 통신과 정보교환의 효율성을 향상시키기 위한 서비스이다. MSP8은 선박육상보고서비스로써 이 서비스는 선박 정보를 선상시스템에서 자동 보고/수신/공유 서비스이다. MSP9는 원격의료보조서비스로써 원격상담을 통하여 선원의 의료에 대한 조언을 제공하는 서비스이다. MSP10은 해상보조서비스로써 오염, 화재, 충돌, 좌초, 해상보안과 같은 위험상황에서 선박을 위해 빠른 보조와 전문적인 지원을 위하여 통신에 대한 상황을 감시하는 서비스이다. MSP11은 해도서비스로써 연안의 모양과 속성, 수심, 조석, 항해에 방해물 또는 위험물, 항로표지의 위치와 형태 등의 정보를 제공하여 갱신이 가능하도록 하는 서비스이며 MSP12는 항해출판서비스로써 수로의 속성 등과 같은 수정되지 않은 출판물을 사용함으로써 발생할 수 있는 항해의 재난을 방지하기 위한 서비스이다. MSP13은 빙해서비스로써 빙해가 많은 수로에서 선박에게 빙해 정보를 실시간으로 제공하는 서비스이며 MSP14는 기상정보서비스로써 항해자에게 날씨, 기후예보의 정보를 제공하는 서비스이다. MSP15는 실시간 수로정보와 환경정보서비스이며 MSP16은 수색과 구조를 위한 서비스이다.


3. 설 계
3.1 시뮬레이션 시스템 구조 설계

시뮬레이션 시스템은 감성 공학적으로 접근하여 사용자 편의 중심으로 설계하였다. 따라서 항해 지식을 모르는 비전문가도 다양한 시뮬레이션 환경을 쉽게 운용할 수 있다. 설계한 시스템은 Figure 1과 같이 시나리오 편집기 모듈, 항해환경 3차원 시각화 모듈, 3차원 지형 시각화 모듈 및 항해기기 2차원 시각화 모듈, 기록기로 구성된다.

시나리오 편집기 모듈은 시뮬레이션을 위하여 선박의 이름, 종류, 크기, 항로 등을 설정을 통한 시나리오 작성 기능을 제공하며, 시나리오 파일을 생성한다. 3차원 지형 시각화 모듈은 전 세계 항구 및 위험한 협수로에 대한 정밀한 지형과 수심정보 및 내항 항로표지시설을 3차원 이미지 파일로 생성한다. 항해환경 3차원 시각화 모듈은 생성된 시나리오 파일을 이용하여 해상상태와 다양한 종류의 선박이 항해하는 항해공간을 3차원으로 재현한다. 이 모듈은 선박 항해 시각화 부분, 해상환경 시각화 부분으로 구성된다. 항해기기 2차원 시각화 모듈은 항해환경에서 발생하는 상호작용을 전자해도표시시스템(ECDIS), 선박자동식별장치(AIS), 레이더(Radar)와 같은 주요항해기기를 표출한다[4]. 기록기는 시뮬레이션에 대한 전반적인 상황을 기록한다.

3.2 시뮬레이션을 위한 가상 객체의 정의

시스템은 가상 객체를 통하여 시뮬레이션을 수행한다. 먼저 가상 객체를 정의한 후 시나리오 편집기를 통하여 객체의 세부 속성을 설정하고 시나리오를 생성하여 시뮬레이션을 수행하도록 구성되어 있다. 따라서 시뮬레이션 시스템의 목적에 맞는 시각화에 관련한 가상 객체의 정의가 필요하다. 본 시스템은 선박의 항해를 통하여 MSP를 평가하므로 선박의 항해와 관련한 가상 객체가 필요하다. 4가지의 가상 객체를 정의하였으며 객체에 필요한 세부 속성 정보는 Table 1와 같다. 세부 속성은 시뮬레이션을 위한 기본정보로써 사용자는 시나리오 편집기 모듈로부터 각 객체에 대한 속성을 설정할 수 있다.

Table 1: 
Defined virtual objects
객체 속성
선박 선명, 선종, 크기, 총톤수, 위치(위/경도), 선속, 선수방향, 변침점
항로표지 등/부표의 종류, 위치(위/경도)
환경 시간, 해상상태(Sea Status), 조류, 바람, 안개, 눈/비
지형 시뮬레이션의 지형의 범위, 지형 및 수심

3.3 시나리오 데이터 형식 정의

시나리오 편집기 모듈에서 생성된 시나리오를 항해환경 3차원 시각화 모듈에서 이용하기 위하여 Table 2와 같이 시나리오 교환 데이터 형식을 정의하였다. 이때, 데이터 처리의 효율성 및 확장성을 위하여 NMEA 0183[5]의 Sentence 형식을 준용하였다. 정의한 데이터 형식은 크게 세 가지로 선박 데이터, 부표 데이터, 환경 데이터가 있다[6].

Table 2: 
Defined scenario data formats
형식
선박 데이터 $Time,Name,Type,Longitude,Latitude,Heading,Breadth,Height,Length,Weight
부표 데이터 Name,Type,Longitude,Latitude,Size,Weight
환경 데이터 해상상태 $TRI,SeaLevel,WindDirection
시간/위치 $SIL,Year,Month,Day,Hour,Minute,Second,TimeZone,Longitude,Latitude

선박 데이터 형식에서 Time은 시뮬레이션 진행 시간(초), Name은 선박의 이름, Type은 선박의 종류, Longitude와 Latitude는 선박의 현재 위치의 경도 및 위도, Heading은 선수의 방향(도), Breadth는 선박의 폭(m), Height는 선박의 높이(m), Length는 선박의 길이(m), Weight는 배수톤수(t)를 의미하는 필드이다. 또한 부표 데이터 형식에서 Name은 부표의 이름, Type은 부표의 종류, Longitude는 경도, Latitude는 위도, Size는 부표의 크기, Weight 배수톤수(t)를 의미하는 필드이다. 마지막으로 환경 데이터 형식은 해상상태와 관련된 TRI와 시간/위치와 관련된 SIL의 두 가지로 나누어 정의하였다. TRI의 SeaLevel은 해상상태(보퍼트 풍력계급[7] 기준), WindDirection은 바람(파도)의 방향을 의미하는 필드이고, SIL의 Year는 년, Month는 월, Day는 일, Hour는 시, Minute는 분, Second는 초, TimeZone은 런던 그리니치와의 시차, Longitude와 Latitude는 시뮬레이션 시작 중심 위치의 경도 및 위도를 의미하는 필드이다[6]. 본 논문에서 다루는 시스템은 조류 및 조류 방향은 고려하지 않는다.

3.4 시나리오 편집기 모듈 설계

시나리오 편집기 모듈은 선박 및 부표의 이름, 종류, 폭, 높이, 길이, 배수톤수, 속도, 선박회두 특성 등을 설정하여 선박을 추가하는 기능과 Google Map을 기반으로 해당 선박의 항로를 설정하고 시나리오를 생성하여 텍스트 파일로 출력하는 기능을 한다. 시나리오 편집기 모듈은 Figure 2와 같이 선박/부표 관리(ship/buoy management) 모듈, Google Map(customized Google Map) 모듈, 선박회두 특성에 기반한 위치 보간(position interpolation) 모듈, 시나리오 생성(scenario creation) 모듈로 구성되어 있으며, 각 모듈들의 기능은 다음과 같다[6].


Figure 2: 
Block diagram of scenario editor module

- 선박/부표 관리 모듈: 선박/부표의 속성을 설정하여 추가하거나 삭제할 수 있는 기능 및 Google Map 모듈과 시나리오 생성 모듈에 관련 데이터를 전달한다. Google Map은 웹 프로그래밍 언어인 Java Script를 기반으로 하고 있는데, 기본적으로 웹 프로그래밍 언어는 보안상의 이유로 인하여 로컬 메모리에 직접적인 접근이 불가능하다. 따라서 선박/부표 관리 모듈에서 추가된 선박/부표 값을 Google Map으로 직접 전달하지 못한다. 이러한 문제를 해결하기 위하여 선박/부표 관리 모듈과 Google Map 모듈간의 데이터 교환에는 XML (extensible markup language) 파일을 이용한다.

- Google Map 모듈: 선박/부표 관리 모듈로부터 전달받은 선박 및 부표 관련 XML파일을 로드한 후, Google Map에 선박의 항로(변침점) 및 부표의 위치를 설정하고, 해당 위치의 경도 및 위도를 추출하는 기능을 한다. 추출된 경도 및 위도 데이터는 선박 회두 특성을 부여하기 위하여 위치 보간 모듈로 전달된다.

- 위치 보간 모듈: 보다 정확한 3차원 재현을 위하여 설정된 선박의 예정항로와 선박 시운전시 제공되는 선박의 회두특성을 기반으로 특정 시간의 선박 위치(경위도)를 보간 한다. 이때, 점장도법(Mercator’s projection)을 구현 및 적용하여 보간된 위치 기반의 항로를 도출한다.

- 시나리오 생성 모듈: 3차원 시각화 모듈에서 재현할 수 있도록 선박의 속성 및 보간된 항로, 부표의 속성 및 위치, 해상 환경에 관한 데이터를 처리하여 정의된 시나리오 형식의 텍스트 파일로 출력한다.

3.5 항해환경 3차원 시각화 모듈 설계

항해환경 3차원 시각화 모듈은 시나리오 편집기 모듈을 통해 생성된 시나리오 파일을 기반으로 해양환경, 선박항해 등과 같은 항해환경을 3차원으로 실현하는 기능을 제공한다. 항해환경 3차원 시각화 모듈의 구조는 Figure 3과 같다[8].


Figure 3: 
Block diagram of the navigation environment 3D visualization module

시나리오 편집기로부터 생성된 시뮬레이션 데이터 파일을 읽고 데이터의 파싱 과정을 통하여 그 값을 필요로 하는 각 관리 프로그램으로 할당시킴으로써 항해환경 3차원 시각화 시스템을 실행한다. 항해환경 3차원 시각화 모듈은 파일 관리(file management) 모듈, 운용 관리(operating management) 모듈, 환경 관리(environment management) 모듈, 오브젝트 관리(object management) 모듈을 통해 동작하고, 시스템을 구성하는 각 모듈들의 기능은 다음과 같다.

- 파일 관리 모듈: 시나리오 편집기 모듈을 통해 생성된 시나리오 파일을 정해진 시간 간격으로 불러오고 그 데이터를 운용 관리 모듈로 보낸다.

- 운용 관리 모듈: 이 모듈은 시뮬레이터의 환경요소, 오브젝트 요소, 카메라 등 시각화 시스템 전체를 관리한다. 파일 관리 모듈로부터 입력 받은 데이터를 처리하여 환경 관리 모듈과 오브젝트 관리 모듈로 구분하여 전달한다.

- 환경 관리 모듈: 운용 관리 모듈로부터 전달받은 데이터에 따라 해상 환경의 요소들을 설정하고 제어한다. 해상

환경은 Unity Asset인 Triton과 SilverLining에 의해 제어된다. Triton에서 풍향, 풍속과 같은 바람의 상태를 설정하면 입자 기반의 분무 효과와 평면반사, 거품과 파도의 세기 등을 통해 보퍼트 풍력계급의 상태를 모델링 할 수 있다.

- 오브젝트 관리 모듈: 운용 관리 모듈로부터 전달받은 데이터에 따라 선박의 종류와 크기, 부표 종류와 모양 등의 오브젝트를 생성한다. 생성된 선박 오브젝트에게 시나리오에서 정해진 시간 간격에 따른 위치 및 선수각에 관한 데이터를 전달하여 선박을 항해하게 한다. 시나리오 수정으로 인해 시뮬레이션 데이터 파일이 변경될 때는 파일 관리 모듈에서 일정시간 간격으로 반복적인 읽기 기능을 제공함으로써 변경사항을 확인하고 이를 실시간으로 반영하여 항해환경 3차원 시각화 시스템에 적용시킬 수 있다. 또한, 시간 및 지역(위․경도)에 따라 달라지는 주/야간 효과를 부여하였고 카메라 위치를 자유롭게 이동할 수 있어 사용자가 원하는 다양한 관점에서의 시각화가 가능하다.

3.6 3차원 지형 시각화 모듈 설계

복잡한 항구 및 위험한 협수로에서 유용한 MSP개발을 위해서는 정밀하고 현실세계와 유사한 지형이 구현되어야 한다. 실제 항해환경과 유사한 3차원 지형 시각화 환경을 구현하기 위해서는 Figure 4와 같이 고도정보(elevation data), 수심정보(bathymetric data)와 항로표지정보(AtoN data)를 포함해야 한다. Global Mapper 도구를 이용하여 전자해도(ENC)로부터 수심정보와 항로표지정보를 획득 하였고 3차원 항구의 지형을 구현하기 위한 고도정보(elevation data)는 NASA의 SRTM v4.1 디지털 고도 지도 데이터베이스에서 획득하였다. Unity Terraland Earth Asset을 이용하여 수심지형과 고도지형을 병합하고 위성영상을 중첩하였다. 항로표지시설은 3차원 지형 시각화 모듈 또는 시나리오 편집기에서 전자해도에 따라 배치된다. 시뮬레이션이 항구 또는 협수로 등과 같은 지형이 필요한 내항에서 수행할 경우 3차원 지형 시각화 모듈에서 사전 등부표의 시설이 전자해도에 표시된 것과 같이 배치된다. 마지막으로 현실 세계와 유사한 지형 구현을 위하여 건물, 다리, 자동차, 항만 크레인과 같은 객체를 Unity TerraCity Asset을 이용하여 배치한다. Figure 5는 3차원 지형 시각화 모듈을 이용하여 구현된 3차원 부산항 지형 모델이다[9].


Figure 4: 
Block diagram of 3D terrain visualization module


Figure 5: 
Busan port made by the 3D terrain visualization module

3.7 항해기기 2차원 시각화 모듈 설계

항해기기 2차원 시각화 모듈은 선박에 탑재되는 주요 항해 장비인 레이더, 전자해도표시시스템의 모델링을 위해 설계하였다. 전자해도표시시스템은 항해용 센서들로부터 데이터를 입력받아서 전자해도를 기반으로 하여 선박의 위치와 정보를 표시한다. 레이더는 전파를 발신하여 물체로부터 반사파를 수신하는 방식으로 물체를 탐지하고, 그 방향 및 거리를 알아내는 장비이다. 항해기기 2차원 시각화 모듈은 Figure 6에서 보는바와 같이 항해환경 3차원 시각화 모듈에서 시뮬레이션에 참여하는 선박의 수와 위치 정보를 XML 파일형식으로 입력을 받고 Google Map에 표시한다. 레이더는 선박오브젝트와 Google Map지형을 실제 레이더파가 반사하는 모양으로 묘사하여 나타내고 전자해도표시시스템은 본선 또는 타선의 과거 및 현재 항적의 정보를 표시한다. Figure 7Figure 8은 구현된 항해기기의 전자해도표시시스템과 레이더의 2차원 시각화 모듈이다.


Figure 6: 
Block diagram of the navigation equipment 2D visualization Module


Figure 7: 
Creation of the ECDIS 2D visualization module


Figure 8: 
Creation of the Radar 2D visualization Module


4. 구현 및 실험
4.1 개발 환경

시스템의 개발 환경은 Figure 9와 같다. Microsoft Windows 7 Professional의 운영체제에서 시나리오 편집기 모듈은 Visual Studio 2008을 이용하여 C# 및 Google Map API를 기반으로 개발하였으며, 3차원 시각화 모듈은 Unity 3D Pro 4 및 Unity 전용 개발도구인 MonoDevelop를 이용하여 개발하였다. Unity 3D는 3차원 게임제작을 위한 도구지만 다양한 기능을 제공하고 있어 시뮬레이션 시스템의 개발 엔진으로 사용하기에 적합하다. 특히, Asset Store를 활용하면 지형, 바람, 파도와 같은 특수효과도 좋은 품질의 3차원 그래픽 작업이 쉽게 가능하다. 3차원 해상상태 및 시간/위치에 따른 환경 변화를 구현하기 위해 Sundog사에서 개발한 Unity Asset인 Triton 및 SilverLining을 이용하여 3차원 시각화 시스템을 구현하였다. 끝으로 시뮬레이션에 포함되는 다양한 선박의 가시화 그래픽과 등부표시설등은 Autodesk사의 3ds Max 2013을 이용하여 모델링하였다.


Figure 9: 
Development environments

4.2 선박 모델링

선박의 모델링은 항해환경 3차원 시각화 모듈에서 실제 선박과 유사한 3차원 시각화를 위한 그래픽과 선박의 동적운동 모델링으로 구분할 수 있다. 본 시스템에서는 컨테이너선, 일반화물선, 유조선, 여객선, 소형선등에 대하여 대/중/소 선박을 구분하여 3차원 시각화를 위한 그래픽을 구현하였다. Unity Asset Triton을 통해 Unity 3D에서 기본적으로 파도와 같은 해상환경을 구현할 수 있다. 파도에 의해 해수면에 대한 mesh 높이 값을 획득하여 선박의 부력 표현이 가능하기 때문에 파도의 높이차를 이용하여 선박의 Roll, Pitch의 표현이 가능하다. 본 시스템에서는 시뮬레이션에 참여하는 선박의 외력에 따른 동적운동 모델링은 항해 경험이 풍부한 항해사의 경험과 의견을 통하여 적용하였으며, 선박의 회두 특성은 시운전시 선박에 주어지는 선박 회두 특성 그래프를 사용하여 구현하였다.

4.3 사용자 인터페이스

설계한 내용을 기반으로 시스템을 구성하는 각 모듈을 구현하였다. 먼저, 시나리오 편집기 모듈의 사용자 인터페이스는 C#을 기반으로 Figure 10과 같이 구성하였으며, 전자해도 파일로부터 추출한 수심정보, 항로표지정보 등을 Google Map을 통해 표현하였다. 시나리오 편집기 모듈은 환경 설정 메뉴, 시나리오에서 선박 및 부표의 추가 설정을 위한 선박/부표 설정 및 추가부, 선박의 항로 설정 및 부표의 위치 설정부, 시나리오 데이터의 전송시간 설정을 위한 시간 간격 설정 및 시나리오 생성 버튼, 선박의 변침점 출력부, 생성된 시나리오 출력부 등으로 이루어져있다. 반면에 항해환경 3차원 시각화 모듈 및 3차원 지형 시각화 모듈은 시나리오의 시각화 및 지형의 시각화와 관련한 기능을 담당하기 때문에 별도의 사용자 인터페이스를 가지지 않는다.


Figure 10: 
Creation of simulation scenario using the scenario editor module

4.4 실험

시나리오 편집기 모듈을 이용하여 Figure 10과 같이 4척의 선박을 설정 및 추가한 후, 자선(흑색선)은 남서쪽 방향으로 진행하도록 항로를 설정하고, 나머지 3척의 선박(갈색/녹색/연두색선)은 북동쪽 방향으로 진행하도록 항로를 설정하여 자선과 3척의 배가 교차하는 상황이 발생하도록 하였다. 또한 이를 기반으로 10초 간격으로 시나리오를 생성하였으며 생성된 시나리오 파일 중 자선에 관한 데이터는 Table 3와 같다. 각 라인은 ‘$’로 시작하며 시뮬레이션 진행 시간(시간 간격 : 10초), 선박 이름(ownShip), 선종(0 – 컨테이너선), 선박의 위치인 경도 및 위도, 선수방향, 폭(40m), 높이(45m), 길이(300m), 배수톤수(90000t)등이 지정된다. Figure 11는 이러한 과정을 통해 생성된 시나리오를 이용하여 3차원으로 재현한 후 카메라를 여러 관점으로 전환한 화면이다. 이를 통해 항해중 항해사가 견시를 통하여 항해정보를 획득하는 효과와 유사하게 구성하였다.

Table 3: 
Scenario data in created text file
   $0,ownShip,0,129.13106918335,35.0368837736513,223.393228276138,40,45,300,90000
$10,ownShip,0,129.130837161815,35.036681924798,223.393228276138,40,45,300,90000
$20,ownShip,0,129.130605140858,35.0364800759447,223.393228276138,40,45,300,90000
               … (중략)
$480,ownShip,0,129.117759109044,35.0300665543739,250.764149200199,40,45,300,90000
$490,ownShip,0,129.117440260342,35.0299750384038,250.764149200199,40,45,300,90000
               … (중략)
$2290,ownShip,0,129.061852653882,35.0120674083212,224.63950824542,40,45,300,90000


Figure 11: 
Visualization of simulation using the 3D visualization module


5. 결론 및 향후 연구

본 논문에서는 MSP 검증을 위한 시뮬레이션 시스템 개발에 있어 MSP검증을 위한 시뮬레이터가 가져야할 조건을 제안하고 조건을 만족하기 위한 시뮬레이터 시스템을 설계하고 구현하였다. 시뮬레이션 시스템은 시나리오를 작성하는 시나리오 편집기 모듈과 항해환경 3차원 시각화 모듈, 3차원 지형 시각화 모듈, 항해기기 2차원 시각화 모듈 등으로 구성된다. 시나리오 편집기 모듈은 정의된 선박, 부표, 환경 설정 등 데이터를 제안된 모듈에 전송하고 항해환경 3차원 시각화 모듈은 시나리오에 기반을 두어 항해 시뮬레이션을 재현한다. 3차원 지형 시각화 모듈은 항해 시뮬레이션에 있어서 현실세계와 유사한 3차원 지형을 제공하며, 항해기기 2차원 시각화 모듈은 항해에 있어서 발생한 정보를 항해기기에 표출한다. 개발한 시스템은 일반 PC 환경에서 이용할 수 있으며, 새로운 MSP의 IT서비스 창출에 도움을 줄 수 있을 것으로 사료된다.

향후 연구로는 시뮬레이터의 세부 기능의 완성도를 높이는 연구를 비롯하여 항해기기 2차원 시각화 모듈의 고도화 개발을 진행하고 있다. 또한 과거 인적과실 및 정보교환 오류에 의한 사고사례를 재현하여 항해안전을 위한 MSP의 IT서비스 창출과 데이터 전송을 위한 프로토콜, 효과적인 정보표현방법 등을 개발하고 항해사나 관련 전문가가 시뮬레이션을 직접 수행한 후 MSP 효용성에 대한 정량적 평가를 위한 기준을 만들고 접목할 예정이다.


Acknowledgments

본 연구는 산업통상자원부 기술표준원 국가기술표준력향상사업의 e-Navigation 항구의 IT지원 요소기술 표준 개발 사업으로 수행된 연구결과이다.


References
1. International Maritime Organization (IMO), Development of an e-Navigation Strategy Implementation Plan, Report of the Correspondence Group on e-navigation to NAV 59, Sub-Committee on Safety of Navigation 59th Session Agenda Item 6, U.K, May, 31, 2013.
2. G. Y. Kong, B. K, Lee, D. H. Kim, and Y. H. Yu, “A study on MSP structure considering the gap analysis of IMO e-Navigation SIP”, Proceedings of the Korean Institute of Navigation and Port Research Spring Conference, p301-303, (2013), (in Korean).
3. W. S. Shim, A. D. Lieto, Y. K. Lim, and S. J. Lee, “Development of user-oriented human elements for e-navigation human element assessment”, Journal of Information and Communication Engineering, 16(6), p1113-1118, (2012), (in Korean). Available:.
4. H. G. Hwang, I. S. Shin, J. S. Lee, and Y. H. Yu, “A design of navigation simulation system for effectiveness evaluation of maritime service portfolio”, Proceedings of the 38th Korean Society of Marine Engineering Spring Conference, p283, (2014), (in Korean).
5. National Marine Electronics Association, “Standard for Interfacing Marine Electronic Devices”, USA, NMEA 0183 Version 4.00, Nov, 1, 2008.
6. H. G. Hwang, I. S. Shin, J. S. Lee, and Y. H. Yu, “A development of scenario editor for navigation simulation”, Proceedings of the 38th Korean Society of Marine Engineering Spring Conference, p284, (2014), (in Korean).
7. Y. J. Lee, “A study on Wind Speed Standardization and Wind Wave Correlation”, M.S. Thesis, Department of Environmental Engineering, Catholic Kwandong University, Korea, (2011), (in Korean).
8. H. S. Kang, I. S. Shin, and Y. H. Yu, “The design of 3D visualization system of ship navigation using unity 3D”, Proceedings of the 38th Korean Society of Marine Engineering Spring Conference, p222, (2014), (in Korean).
9. M. Beirami, I.-S. Shin, and Y.-H Yu, “A method for 3D simulation of elevation, bathymetric, AtoN Data for Maritime simulator”, Proceedings of the 38th Korean Society of Marine Engineering Spring Conference, p219, (2014), (in Korean).