NORSOK T-100 기반의 해양플랜트용 TMS 응용 소프트웨어 개발
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.
초록
조선해양플랜트 기자재 중 텔레콤 장비들의 고장, 오동작 등은 선박이나 해양플랜트의 안전항해 및 운영에 부정적인 영향을 미친다. 특히 해양플랜트는 작업 환경과 설비가 복잡하기 때문에 사고 위험이 높고 안전 사고가 발생하면 심각한 금전적 피해와 환경오염이 발생한다. 따라서 선박 및 해양플랜트의 안전 항해 및 운영 등을 위해 선박이나 해양플랜트 내 텔레콤 장비를 네트워크로 연결한 후 데이터를 취합하여 육해상에서 모니터링할 수 있도록 하는 자동화된 시스템이 필요하다. 이에 본 논문에서는 텔레콤 장비 관리 관련 표준인 NORSOK T-100을 기반으로 요구사항 및 기능 목록을 작성하고, 사용자 편의 측면의 요구사항을 더하여 TMS을 새롭게 설계하고 개발하였다. 또한 실험 환경을 구축하여 TMS가 정상적으로 동작함을 확인하기 위해 실험 환경을 구축하였다.
Abstract
Malfunctioning of telecom systems can have serious implications on the safe navigation and operation of vessels and off-shore plants. Most safety-related accidents incur significant monetary damages and pollution due to complicated arrangements of the working environments and facilities. Therefore, an automated monitoring system that can collect data from configured telecom equipment connected to a network based on IP is required to ensure safe navigation and operation of such crucial institutions. This paper reports a list of such system requirements, system functions, and user-centered requirements based on the NORSOK T-100 (a standard of telecom management system). These findings were made through research with the newly designed and developed telecom management system (TMS). The TMS was tested by a testbed configured with CCTV, PA/GA, and other network equipment.
Keywords:
Offshore plant, NORSOK T-100, Telecom Management System, E-Navigation, ICT키워드:
해양플랜트, 노르웨이산업표준 T-100, 텔레콤장비관리시스템, e-Navigation, 정보통신기술1. 서 론
조선해양플랜트 기자재 부품은 약 460여종으로 구성되며, 선박 제조 원가의 55~66%를 차지할 정도로 비중이 크다[1]. 이러한 조선해양플랜트 기자재 가운데 여러 가지 텔레콤 장비들이 있는데, 이러한 텔레콤 장비들의 고장, 오동작 등은 선박이나 해양플랜트의 안전항해 및 운영에 부정적인 영향을 미친다. 따라서 이들 장비를 네트워크로 연결하여 각 장비의 오작동 가능성 등의 상태를 모니터링할 필요가 있다.
네트워크 상의 장비 상태를 모니터링할 수 있는 시스템으로 육상에서 일반적으로 사용되는 네트워크 모니터링 시스템(NMS: Network Monitoring System)은 네트워크 자원 즉, 네트워크 장비의 CPU, Memory 사용률, 회선상태 등을 모니터링하여 네트워크의 효율성과 생산성을 극대화하기 위한 목적으로 사용된다. IP 및 LAN 기반의 육상용 시스템은 2000년대 초반부터 다양하게 개발되어 있으나, 선박 및 해양플랜트에는 적용되어 있지 않다. 따라서 선박 및 해양플랜트의 안전 항해 및 운영 등을 위해 선박이나 해양플랜트 내 텔레콤 장비를 네트워크로 연결한 후 데이터를 취합하여 육해상에서 모니터링할 수 있도록 하는 자동화된 시스템이 필요하다. 이러한 IT융합 시스템은 향후 e-Navigation 시장이 열리면 선박 가격 대비 IT 기자재의 비중이 15% 이상 증가할 것으로 예상되므로 시장 전망 또한 밝다[2].
이러한 텔레콤 장비 관리에 대한 내용은 NORSOK(Norsk Sokkels Konkurranseposisjon) T-100 규정에 정의되어 있다. 해당 규정은 국제법은 아니므로 강제성을 띄지는 않지만, 해양플랜트의 선주가 이를 준수하도록 요청하고 있기 때문에 시장 표준(de facto standard)에 가깝다.
이러한 배경으로 NORSOK T-100을 분석하여 요구사항 및 기능 목록을 작성하고, 사용자 편의 측면의 요구사항을 더하여 텔레콤장비 관리 시스템(TMS: Telecom Management System)을 새롭게 설계하고 개발하였다.
2. TMS 개요
해양플랜트의 각종 사고 사례, 작업 경험, 엔지니어 등의 지식을 취합하여 해양플랜트 설계, 건조 및 운영에 활용하기 위한 규정을 제정하였는데 NORSOK이 그 중 하나이다. 그 내용 중 텔레콤 장비의 원격 관리/유지 보수를 위한 통신 관리 시스템에 대한 내용이 있다. 해양플랜트의 환경적인 특성 및 고가의 인건비로 인해 전문 기술 엔지니어를 지속적으로 상주시키기가 어렵기 때문에 육상에서 텔레콤 장비를 원격으로 모니터링하여 적시에 유지/보수할 수 있도록 하기 위한 것이다. 여기서 텔레콤 장비는 CCTV(Closed Circuit TeleVision), IPTV, PA/GA(Public Address/General Alarm system), Radar 등이다.
NORSOK T-100에서 TMS는 육상에서 해양플랜트 텔레콤 장비의 성능, 자원, 상태, 알람 등을 모니터링하여 적시에 적절한 조치를 취할 수 있도록 하는 종합 관제 시스템으로 정의한다. TMS는 기본적으로 SNMP(Simple Network Management Protocol)를 기반으로 텔레콤 장비의 데이터를 수집한다[3]. TMS 하드웨어는 TMS 메인 서버, TMS 클라이언트, 텔레콤 인터페이스 유닛(TIU: Telecom Interface Unit)과 각종 텔레콤 장비로 구성되고, 소프트웨어는 서버/클라이언트 소프트웨어로 구성된다. TMS 메인 서버는 SNMP를 이용하여 텔레콤 장비와 네트워크 요소(elements)의 알람 및 상태정보 데이터를 수집/관리하는 서버 소프트웨어를 탑재하고 있다.
TMS는 LAN/WAN(TCP/IP, SNMP, OPC), Serial(G.703, 2/4 wire E&M, V.11 (RS 422), V.24/V.28 (RS 232) 등), On/Off 등 다양한 통신 인터페이스를 가진다. 해양플랜트 내의 대부분의 텔레콤 장비는 LAN/WAN을 지원하지 않기 때문에 TMS와 연동되기 위해서는 TIU를 통해 Serial, On/Off 신호를 UDP/IP 기반으로 데이터를 전송할 수 있도록 프로토콜을 변환해주어야 한다.
3. TMS 설계
선박이나 해양플랜트에 TMS를 적용하기 위해 NOSROKT-100의 시스템 구성과 사용자 편의를 위한 모바일 클라이언트와 CCTV와 같은 텔레콤 장비에 대한 제어 기능을 더하여 Figure 1과 같은 시스템을 새롭게 제안하였다[3]. 새롭게 추가되는 기능에 대해서는 NORSOK에서 제시하는 시스템에 붉은 색으로 추가하여 표기하였다.
여기에 TMS를 개발하기 위해 국외경쟁사 제품의 제품소개 자료와 기술문서를 확보하여 분석한 후 벤치마킹 항목을 도출하고, NORSOK T-100의 TMS 소프트웨어 관련 요구사항을 분석하였다. 표준문서 및 국외경쟁사 매뉴얼의 각 문장을 하나씩 목록화하여 총 198 항목의 요구사항으로 정리하였고, 그 중 소프트웨어로 구현할 수 있는 성능 관련 요구사항 32 항목을 추출하였다. 국외경쟁사 매뉴얼 등의 자료의 요구사항은 NORSOK T-100에 서술된 내용과 대부분 일치하였고, 그 중 CCTV 모니터링 및 제어, 알람 정보에 대한 SMS/e-mail 송신 기능이 경쟁사의 특징적인 서비스로 포함되어 있어 TMS에서도 이를 반영하였다. 또 경쟁사와의 차별화된 서비스를 제공하기 위해 모바일 앱 서비스를 추가하였다. 이를 기반으로 Monitoring, Reporting, Logging, Alarm Management, General Management, Data Acquisition, TSub Controller의 7가지 기능을 정의하였고, 각 기능을 하나의 소프트웨어 모듈로 하여 Table 1과 같이 정하였다. 여기서 TSub는 텔레콤 서브 시스템(TSub: Telecom Subsystem) 즉, 텔레콤 장비의 약어이다.
상기 7가지 모듈을 기반으로 각 모듈 및 데이터베이스 간의 메시지 전달 방향을 도식하여 Figure 2과 같이 TMS 소프트웨어 아키텍처를 도출하였다.
점선은 데이터베이스와 모듈 간의 메시지 전달이고, 실선은 모듈간 메시지 전달을 도식하였다. 모듈 간 교환 및 전달되는 메시지 내용은 Table 2와 같고, 번호는 Figure 2의 번호와 일치한다.
4. TMS 개발
TMS는 Figure 3와 같이 서버 소프트웨어, 클라이언트 소프트웨어로 구성된다.
TMS 서버, 클라이언트 소프트웨어의 개발환경은 운영체제 Window Server 2012 R2 64bit, 개발언어 C# 그리고 데이터베이스는 MS SQL이다. 웹 클라이언트는 ASP.NET, 앱 클라이언트는 Android 5.1.1에서 개발하였다.
Figure 4는 서버, 클라이언트 소프트웨어의 작동 방법을 순서도로 나타낸 것이다. Figure 4 (a)는 서버의 동작과정이다. Data Acquisition Module은 네트워크에 연결된 텔레콤 장비로 30초 간격으로 SNMP Get 메시지를 보내고, 이에 대한 응답으로 수신한 SNMP 데이터를 Alarm Management Module로 전달한다. 동시에 텔레콤 장비에서 송신하는 SNMP Trap 메시지도 Alarm Management로 전달한다. SNMP Get 메시지는 주기적으로 텔레콤 장비의 상태 정보를 수집하는 역할을 하고, SNMP Trap 메시지는 텔레콤 장비에서 발생하는 알람 정보를 서버로 송신하는 역할을 한다. 이렇게 수집된 정보는 Alarm Management Module에 정의된 알람 카테고리와 우선순위에 따라 알람 데이터인지 확인한다. 알람 데이터일 경우 클라이언트에서 사용자가 인지할 수 있는 메시지 형태로 데이터를 가공한 후 Logging Module에 알람 로그를 저장하고 클라이언트로 알람을 전송한다. Figure 4 (b)는 알람을 수신하는 클라이언트 측의 동작 과정이다. 클라이언트는 모니터링 모드로 대기하다가 알람을 수신하면 알람의 우선순위를 확인한 후 Major 이상의 등급일 경우 SMS/Email 송신 여부 확인 후 전송하고 알람을 표시하고, 그 이하의 등급일 경우 전송하지 않고 표시한다. SMS/Email의 송신 여부는 관리자가 미리 지정할 수 있다.
알람 카테고리와 우선순위는 Table 3과 같이 정의하였다.malfunction은 텔레콤 장비의 기능 불량을 의미하고, 이에 대한 알람은 critical로 정하였다. not operation은 주요한 텔레콤 장비나 텔레콤 장비의 구성 요소가 동작하지 않는 경우이고, major로 하였다. 그리고 external condition은 시스템 성능에 영향을 미치는 외부 환경조건으로 minor, proactive alerting은 알람 상태를 야기하는 조건으로 warning으로 분류하였다. 마지막으로 시스템의 주요하지 않은 구성 요소의 오작동에 대해서는 information으로 분류하였다. 우선순위를 분류하는 기준은 각 제조사 자체 정의(philosophy)나 선주의 요구사항에 따른 것으로 해당 소프트웨어에서는 이를 임의로 정하여 분류하였다.
Table 4와 Table 5는 각각 메시지 교환을 위해 정의한 프로토콜과 메시지 종류이다.
Message header는 6바이트로 $SDTMS로 고정하였고 message type은 Table 5와 같이 정의하였다. message header와 message type, message 간은 field separator ','를 두어 구분하였고 message 뒤에 checksum을 위한 필드를 정의하였다. Table 5는 주요 메시지 유형을 정리해 놓은 것이다. ALARM_ACK는 알람 메시지에 대한 응답 메시지로 클라이언트에서 해당 알람을 확인하였다는 의미로 Acknowledge Flag를 전송하는 메시지이다. ALARM_OCCURED는 알람 내용를 전송하는 메시지이다. CONTROL_OCCURED는 CCTV 등의 줌인, 줌아웃 등 텔레콤 장비의 제어 메시지를 전송한다. EVENT_OCCURED는 DB에 데이터 저장, 삭제, 변경 등의 이력과 시스템 로그인/로그아웃, 알람 발생 및 처리 기록 등의 모든 이벤트 로그를 전송하는 메시지이다. TSUB_STATE_OTHER은 제조사에서 제공되는 텔레콤 장비 상태 정보를 전송할 때 사용한다. TSUB_STATE_SNMP는 SNMP를 이용하여 수집한 텔레콤 장비 상태 정보를 전송한다. 마지막으로 SELF_TEST_REG와 SELF_TEST_ACK는 TMS의 시스템 자체 동작 테스트를 위해 전송하는 메시지와 이에 대한 응답 메시지이다. SELF_TEST_ACK는 셀프 테스트가 성공적으로 완료되고 나면 메시지를 전송한다.
Figure 5은 실제 구현한 소프트웨어 사용자 인터페이스(UI: User Interface)이다. Figure 5 (a)와 (b)는 각각 웹 클라이언트와 안드로이드 앱 클라이언트 UI로 알람 로그 모니터링 기능만을 제공한다. (c)는 응용 클라이언트 UI로 Figure 6과 같이 General, Monitoring, Alarm, Control, Report, Admin Tool의 6개의 메뉴로 구성하였다.
메뉴의 주요 기능은 아래와 같다.
- ①General 메뉴는 login과 logout 기능을 제공한다.
- ②Monitoring 메뉴에서 View의 Tree&List는 정해진 시간 간격으로 수신한 알람 데이터를 표시하고, Map은 해당 선박 또는 플랜트의 위치를 구글맵 상에 표시하고, 특정 선박이나 플랜트를 선택하면 텔레콤 장비들이 어느 위치에 있는지 표시한다.
- ③Alarm 메뉴는 Alarm 로그를 조회할 수 있는 Search 기능과 텔레콤 장비의 알람을 정의할 수 있는 Define 기능이 있다.
- ④ Control 메뉴는 텔레콤 장비를 제어할 수 있는 페이지를 제공한다. 예를 들어 CCTV의 줌인, 줌아웃 등을 제어할 수 있는 페이지이다.
- ⑤Report 메뉴는 특정 기간 또는 특정 Alarm Log 및 Event Log를 PDF등의 전자문서로 출력하는 기능과 프린터를 통한 프린팅 기능을 제공한다.
- ⑥Admin Tool은 관리자가 사용할 수 있는 기능을 모아놓은 메뉴로써 텔레콤 장비 관리, Self Test 수행, User 생성 및 관리, Group 생성 및 관리, Group의 Role 관리 기능을 제공한다.
Figure 7은 텔레콤 장비로부터 수집한 데이터의 알람 여부를 설정 창으로 사용자 관점에서 매우 중요한 기능이다.
알람 정의를 위해 Alram 메뉴를 선택하면 TMS에 연결된 텔레콤 장비의 목록을 열람할 수 있다. 이 가운데 알람 정보를 정의하고자 Figure 7의 창을 열면 알람의 Priority, Category, Criterion Type을 결정할 수 있다. Priority, Category는 Table 3에 따라 선택할 수 있다. Criterion Type은 Value와 Range 중 하나로 선택한다. Value를 선택한 경우, 입력한 값을 기준으로 해당 값이 아니면 알람이 발생하도록 한다. Range를 선택하는 경우는 Valid Min Value, Valid Max Value를 선택하여 유효한 범위를 지정하고 해당 범위가 아닌 경우 알람이 발생하도록 한다. Description은 관리자가 식별할 수 있는 TSub 알람에 대한 설명이다.
5. 실험환경
본 논문에서는 CCTV, PA/GA, IP Phone 등의 텔레콤 장비를 몇 가지 선정하여 실험환경을 구축한 후 테스트를 진행하였다. Figure 8과 같이 테스트 환경을 구축하였고, Ship side, Shore side 장비는 각각 렉으로 제작하였다.
Table 6은 실험환경 구축에 사용된 텔레콤 장비와 서버의 사양이다. 웹 서버와 응용 서버는 하나의 서버에 함께 구축하였고, 데이터베이스 서버는 따로 두었다.
Figure 9는 실제 구축한 렉의 형상이다. 좌측 렉이 CCTV와 IP Phone, 서버, 스위치 등을 장착하였고, 중앙의 렉은 PA/GA 시스템이다.
TMS가 정상적으로 동작하는지 확인하기 위하여 임의의 알람 상황을 발생시켜 시스템이 제대로 동작하는지 확인하였다.
PA/GA의 정상동작을 확인하기 위해 시스템의 전원을 끄고 켠 후 응용 클라이언트의 변화를 확인하였다.
Figure 10 (a)는 PA/GA의 전원이 꺼진 후 Critical Alarm을 보여주는 화면이고, 전원을 켜고 난 후에는 (b)의 화면처럼 Information 정보로 PA/GA의 전원이 켜졌음을 알려준다. 이와 같은 기능별로 다양한 시나리오를 작성하여 실험을 진행하여 TMS가 정상적으로 동작함을 확인하였다.
6. 결 론
본 논문에서는 NORSOK T-100을 분석하여 사용자 편의 기능을 더하여 TMS를 새롭게 제안하였다. 구성하는 소프트웨어 요구사항을 분석하여 소프트웨어 모듈을 정의하고 설계를 완료하였다. 설계를 바탕으로 개발을 완료하고 실험 환경을 구축하여 시스템이 정상적으로 작동함을 확인하였다.
이후 품질관리 계획을 수립하여 구현한 TMS를 자체 평가하고 한국정보통신기술협회(TTA: Telecommunications Technology Association)를 통해 확인 및 검증 시험(V&V: Verification and Validation) 인증을 진행할 예정이다.
Acknowledgments
본 연구는 중소기업기술개발지원사업(기술혁신개발사업) 및 정보통신방송연구개발사업(누리마루R&BD프로젝트)으로 수행된 연구결과이다.
References
- K. S. Han, S. C. Han, and J. H. Park, “IT convergence application on shipbuilding/offshore plant”, Journal of the Korean Society of Mechanical Engineering, 53(11), p48-53, (2013), (in Korean).
- Technology development trends of Shipbuilding·Offshore Plant Industry and Marine equipment/Service Industry Raising Plan/Condition Analysis, Knowledge Industry Information Institute, Korea, (2014), (in Korean).
- NORSOK standard T-100(2010), Telecom subsystems, Edition 4, (2010), [Online]. Abailable: http://www.standard.no/en/webshop/search/?search=t-100 Accessed October 30, 2014.