DOI QR코드

DOI QR Code

A Development of Real-time Energy Usage Data Collection and Analysis System based on the IoT

IoT 기반의 실시간 에너지 사용 데이터 수집 및 분석 시스템 개발

  • Hwang, Hyunsuk (Technical Research Center, New Communication Infotech Co., Ltd.) ;
  • Seo, Youngwon (Technical Research Center, New Communication Infotech Co., Ltd.)
  • Received : 2019.01.14
  • Accepted : 2019.02.11
  • Published : 2019.03.31

Abstract

The development of monitoring and analysis systems to increase productivity while saving energy is needed as a method to reduce huge amount of energy consumed in the process of producing large forged products. In this paper, we propose a system to monitor and analyze energy usage in real-time collected from gas-meter, wattmeter, and thermometer based on IoT installed in forging factories. The system consists of a data collection server for collecting and processing data from IoT- based platform and existing SCADA equipment and ERP/MES system in forging factories, and an application server for providing services to users. To develop the system, the overall system structure is logically diagrammed, and the databases configuration and implementation modules to efficiently store and manage data are presented. In the future, the system will be utilized to reduce energy consumption by analyzing energy usage pattern and optimizing process works with real-time energy usage and production process data for each facility.

Keywords

1. 서 론

전 세계적으로 급격한 경제 성장으로 인하여 에너지 비용이 지속적으로 증가하고 있기 때문에 에너지를 효율적으로 관리하여 에너지를 절감하는 방법에 대한 연구가 필요하다. 단조는 원재료를 투입하여 가열, 프레스, 절단, 열처리 등의 가공 과정을 거쳐서 제품을 생산하는 공정 작업으로 에너지 소비를 많이필요로 한다. 이러한 에너지 소비를 효율적으로 관리할 수 있는 정보를 제공하는 한 가지 방안으로 IoT(Internetof Things) 기반 실시간 에너지 모니터링 및 분석 시스템을 개발하여 운영하는 것을 제시하고 있다[1][2]. 또한, 이러한 모니터링 시스템을 기본으로 하여 에너지 분석 및 제조 공정 의사결정 지원에 관한 도구 개발에 대한 연구가 진행되었다[3,4,5].

산업용 IoT 플랫폼 구축 기술을 크게 IoT 기반에서 원래 데이터를 수집하기위한 기술, 수집한 데이터를 처리하고 분석하기 위한 기술, ERP/MES(Enter-prise Resource Program/Manufacturing Execution System). SCADA(Supervisory Control and Data Acquisition) 설비 등 기존 어플리케이션과 연결하는 기술로 분류하고 있다. 스마트 팩토리 구현을 위해 한국오픈솔루션의 PlantPulsePlatform, 한컴 MDS의 ThingsSPIN, 지식시스템(주)의 IoT 기반 스마트공장 생산 계획 솔루션인 SynPlanAPS 등의 솔루션을 비롯하여 최근에는 클라우드 기반의 IoT 플랫폼인 KETI 사의 모비우스, 아마존의 AWS, 마이크로소프트사의 Azure 등의 산업용 IoT 솔루션을 적용하는 사례가 많아지고 있다. 나아가, 스마트 공장의 제조현장에서 데이터 기반 의사결정을 통한 제조 지능화에 대한 플랫폼 아키텍처를 제시하고 있다[2].

IoT 기반 실시간 모니터링 시스템 환경 구축이 되어 있지 않은 에너지 관련 제조기업의 경우, 작업자가 가스 사용량, 작업시간, 중량 등을 수기로 기입하여 최소 단위를 일별로 하여 에너지 사용량과 원단위분석을 수행하고 있다. 이러한 수기 집계는 정확한 데이터 수집이 되지 않고 데이터 집계 오류가 발생될 수 있을 뿐 만 아니라, 실시간으로 설비별 에너지 사용량 비교 분석이 힘든 실정이다.

본 논문에서는 IoT 플랫폼 기반의 에너지 사용량을 실시간으로 수집하고 분석 결과를 제공함으로써효과적인 설비 관리 기능뿐 만 아니라, 향후, 원재료를 제품화하는 과정인 공정작업과의 연계를 통하여 공정 최적화 작업을 효과적으로 하여 에너지 절감을 지원하는 기본 시스템을 개발하고자 한다.

본 논문의 구성은 다음과 같다. 2장에서는 IoT 기반 플랫폼 및 설비모니터링 시스템에 대한 관련 연구를 기술한다. 3장에서는 실시간 모니터링 및 분석 시스템을 구현하기 위해 필요한 시스템 구조를 제안하다. 4장에서는 시스템을 개발하기 위한 서버 구성, 프로그램 모듈, 데이터베이스 구성 등을 제안하고 5장의 결론으로 구성한다.

 

2. IoT 기반 플랫폼 서비스 구조

사물인터넷 분야는 모든 기기, 사람, 사물 등이 네트워크로 연결되어 서로 정보를 공유하는 시스템을 활성화하기 위해 테스트베드 구축 및 시범사업 등이 진행되고 있다.IoT 기반의 서비스를 활성화하고 인프라 구축에 대한 시간 절감, 중복 투자 문제를 해결하기 위해 플랫폼을 공통적으로 사용하는 솔루션을 구축하고 있다. 한편, 산업마다 다양한 형태와 기능을 구현해야 하므로 유사한 산업별로 맞춤형 IoT 서비스와 커스터 마이징이 가능한 서비스를 제공하는 플랫폼에 대한 필요성을 제시하고 있다.

IoT 기반에서 데이터를 수집하기 위해서 ‘센서-게이트웨이-네트워크-플랫폼-서비스’ 등의 과정을 하나로 연결하는 표준 프레임워크 제시에 대한 연구가 수행되었다[1]. 이러한 구축을 위해서 새로운 플랫폼에 대한 요구사항을 IoT 분야 신사업 개척을 위한 기반 인프라 구축, 사물인터넷 확산을 위한 전력분야IoT 체계 정립, 에너지 IoT 정보 활용 기술 개발, IoT 플랫폼 개발, 센서 정보 연계를 위한 표준 프레임워크 구축 등 5가지로 요약 제시하였다. IoT 간에 데이터를 통신할 때, 서로 다른 프로토콜로 통신하는 디바이스들을 한 플랫폼에서 연동될 수 있도록 다양한 프로토콜을 적용하도록 설계하여 데이터를 수집 가능한 플랫폼이 제안되었다[6]. 사물과 사물간 데이터를 전송하는 방식은 HTTP 프로토콜을 활용하는 것이 대중적으로 사용되고 있지만, 전송이 효율적이 않아서 웹소켓을 활용하여 전송효율을 개선하는 데이터 수집 솔루션이 제안되었다[7].

에너지 분야의 절감 측면에서, 세계적으로 에너지사용이 점점 증가함에 따라 IT 기술과 접목하여 에너지 소비량을 줄이는 에너지 사용 관리 시스템 구축에 대한 연구가 진행되고 있다[8]. 이에 대한 분야로, IoT와 ICT 접목, 스마트 그리드, 마이크로 그리드, 에너지 저장 시스템, 에너지 정보시스템에 대한 연구가 진행되고 있다.IoT 기반 플랫폼 서비스는 센서로부터 실시간으로 데이터를 받아서 사용자에게 실시간 데이터 서비스 뿐 만 아니라 시계열 통계 정보, 데이터 상관관계 정보 등을 사용자에게 제공할 수 있는 환경을 말한다. 국외에서는 영국 최대의 전기 및 가스 회사인 Centrica사는 스마트 미터를 통해 가정에서 사용하는 에너지를 30분마다 1회 수집하여 실시간으로 소비자에게 정보를 제공한다. 이러한 시스템을 통해 소비자들은 본인의 전기 및 가스 사용량을 실시간으로 파악할 수 있게 하여 사용자 스스로에너지 절감을 실천하는 환경을 제공하여 에너지 비용을 절약하고 있다. 또한, 사용자 본인의 현재와 과거사용량 비교, 다른 사용자와의 사용량 비교 뿐 만 아니라 미래 에너지 사용 동향을 예측해서 제공하고 있다.

IoT 기반 사용자에게 서비스를 제공하는 측면에서 데이터 마이닝 기법을 통하여 에너지 사용 데이터로 부터 일정한 에너지 소비 패턴 찾아서 분류하여 에너지 사용량에 영향력을 끼치고 있는 요소를 파악함으로써 에너지 소비를 절감하는 방법을 제시하고 있다[9]. 최근에는 머신러닝 기법을 이용하여 에너지사용량을 예측함으로써 효과적인 에너지 사용에 도움을 주는 연구가 진행되고 있다[10,11].

 

3. 실시간 모니터링 및 분석 시스템 구조

Fig.1은 개발하려는 시스템 전체 구조를 나타낸다. IoT 플랫폼 서버,SCADA 서버에 실시간으로 수집되고 있는 데이터를 사용하여 어플리케이션을 개발하기 위해 푸쉬 요청으로 REST(REpresentational State Transfer) API 방식으로 데이터 수집 서버로 전송한다(단계 1). 모니터링 서버는 실시간 데이터를 수집하는 데이터 수집 서버와 수집된 데이터를 관리하는 어플리케이션 서버로 구성한다. 소켓을 통해 사용자에게 실시간 데이터를 푸쉬하고 데이터를 몽고데이터베이스에 저장한다(단계2-단계3). 클라이언트에서 모니터링 서비스를 요청하면 필요하면 ERP/MES 데이터베이스로부터 설비 상태 정보 및 상세한 설비 정보를 어플리케이션 서버로 가져와서 클라이언트에게 제공한다.(단계4-단계6). 계속해서 실시간 데이터는 IoT 서버,SCADA 서버로 부터 소켓으로 값을 받아 에너지 사용량, 요금 등에 대한 정보를 사용자에게 제공한다(단계8-단계9).

 

MTMDCW_2019_v22n3_366_f0001.png 이미지

Fig. 1. System architecture.

 

4. 구현 및 서비스 기능

4.1 데이터 수집 및 시스템 구현도

Fig.2는 단조공장에서 다양한 형태로 데이터를 수집하여 사용자에게 시각화하는 에너지 데이터 정보를 통합 수집 및 표출하는 구성도이다. 단조 설비에 설치된 IoT 기반 설비와 기존 설치되어 있는 감시제어 데이터 수집시스템(Supervisory Control And Data Acquisition, SCADA), 전사적자원관리시스템(Enterprise Resource Planning, ERP) 시스템으로부터 데이터를 수집하는 데이터 수집 서버와 수집된 데이터를 웹에서 표출가능하게 하기 위한 어플리케이션 서버로 구성되어 있다.

 

MTMDCW_2019_v22n3_366_f0002.png 이미지

Fig. 2. System implementation.

우선, 단조 설비공장에 설비별로 가스계량기, 전력량계, 온도계 IoT 디바이스를 설치하여 게이트웨이를 통하여 검침되는 누적지침을 무선으로 데이터 수집 서버로 전송하는 IoT 플랫폼을 구축한다. 데이터 수집 서버에서는 전송되어 오는 실시간 스트림 데이터를 패킷으로 경량화시켜,TCPsocket을 통해 HTTPRESTAPI 방식으로 관리 어플리케이션 서버로 데이터를 넘겨주면, 수집 주기처리, 전처리, 데이터 유효성 검사, 포맷변환을 하여 데이터베이스 서버로 전송하게 된다. 사용자에게 모니터링 및 분석 정보를 시각화하기 위해 소켓 통신으로 데이터를 전송한다.

이를 구현하기 위해 스프링스 프레임 워크 기반에서 각 기능별 사용자관리, 클라이언트 화면뷰, 자원, 설비 요금 기능 등의 페케이지로 분류하여 Web, Entity, Repository, Service 레이어로 구분하여 개발한다. Entity 레이어는 데이터 객체 및 속성 정의와 수행 메소드를 정의하는 부분으로 실제 데이타베이스 테이블과 매칭되는 클래스 구성되고, Repository 레이어는 데이터베이스에 검색, 갱신, 저장하기 위한쿼리문 정의 및 실제 수행과 관련한 파라메터 값 호출 등을 작성하는 부분이고, Service 레이어는 Repository 모듈에서 처리를 필요로 하는 메소드를 구현하는 부분으로 구성한다.Web 레이어는 Web API를 필요로 하는 컨트롤러를 구현하는 부분이다. 이러한 구조에서 기능 수행 과정은 다음과 같다. 우선, 실시간 모니터링 표출은 모니터 컨트롤러에서 Data Collection Server의 monitor 페케이지에서 사용자가 지정한 설비에 따라 소켓을 통해 데이터를 전송한다. 사용자가 요구한 검색 요청일 경우, 사용자의 권한에 따라 view 페케이지를 통해 사용자가 원하는 검색어를 지정하면 사용자가 지정한 검색 조건에 맞게 client 페케이지에서 해당 컨트롤러를 기동하여 Service 레이어에 정의되어 있는 메소드를 호출하게 된다. 그런 후 Entity 레이어에 맞는 객체를 가지고 Repository 레이어에서 정의한 메소드와 쿼리문을 수행하게 된다.

이때, Monitoring Server와 연결되어 있는 데이터베이스는 IoT 플랫폼에서 소켓기반에서 수집되는 최소 시간간격 단위의 사용량 데이터를 저장하는 몽고 DB, 통계 검색을 지원하기 위해 설비별로 시간당 데이터를 수집하기 위한 MySQL 데이터베이스, 검색속도를 빠르게 하기 위해 필요한 사용 금액 계산, 메뉴 갱신 기능 등의 모듈을 저장하기 위해 인메모리 데이터 구조 저장형식을 가진 캐쉬와 메시지 중개자 역할을 하는 Redis 데이터베이스로 분류하여 관리된다.

 

4.2 실시간 데이터 수집 구조 및 순차다이어그램

Fig.3은 설비 분류 코드, 에너지 분류 코드, 실제 실시간 누적지침, 시간, 토큰 등으로 구성되어 REST API 방식으로 실시간 수집하고 있는 스트링 데이터의 일부이다. Fig.4는 이렇게 수집한 스트링을 몽고데이터베이스에 저장해 두고 이를 검색하는 명령과 그 결과의 일부를 표출한 화면이다. 몽고데이터베이스에서 수집하는 계층은 설비종류, 수집 에너지 분류를 기준으로 저장되며, Fig.4에서 몽고데이터베이스에 저장되어 있는 콜렉션 “LOG01010100”은 LOG 뒤의 첫 ‘01’은 공정분류(예: 가열로), 그 다음 ‘01’은 공정분류에 따른 설비호기(예:1호기)를 의미한다. 마지막 ‘0100’ 센서로부터 수집되는 에너지 또는 센서 종류(예: 가스, 전력, 온도 등)를 분류하는 코드이다.

 

MTMDCW_2019_v22n3_366_f0003.png 이미지

Fig. 3. Data structure.

 

MTMDCW_2019_v22n3_366_f0004.png 이미지

Fig. 4. Data extraction in the mongo database.

 

Fig.5는 다양하게 들어오는 데이터를 수집하여 사용자에게 실시간으로 데이터를 모니터링하는 과정을 표시하는 순차 다이어그램을 나타낸 것이다. 사용자에게 제공하는 실시간 데이터는 현재 시간 기준으로 몇 시간 이전의 데이터를 우선, 표시하면서 실시간으로 들어오는 데이터를 화면에 표시한다. 현재 기준으로 몇 시간 이전 데이터는 Database Server에서 가져오고 현재 실시간 데이터는 IoT Sever/SCADAServer으로 부터 오는 데이터가 유효한지를 확인한 후 사용자 화면에 실시간으로 데이터를푸쉬하게 된다.

 

MTMDCW_2019_v22n3_366_f0005.png 이미지

Fig. 5. Sequence Diagram.

 

IoTServer/SCADAServer에서 Collection Ser-ver로 서비스를 요청하면 에너지 관리 수집 서버에서 토큰을 발급하여 연결인증을 수행한다(단계 1∼단계 2). 다음으로 모니터링 사용자 인터페이스 화면에서 실시간 데이터를 요청하면 소켓을 연결하여 Collection Server에서 DatabaseServer로 데이터를 요청하여 현재부터 2시간 전의 사용량 데이터가 사용자 화면에 표시된다(단계3∼단계5). 발급된 토큰이 유효하면 IoTServerRESTfulAPI 호출하고 데이터를 CollectionServer로 전송한다(단계6). 수집 서버에서는 전송된 실시간 에너지 데이터를 Cache또는 DatabaseServer에 있는 계산 모듈을 이용하여 사용 요금을 계산하여 모니터 사용자 인터페이스로 데이터를 푸쉬하게 된다(단계7∼단계16). 관련 설비정보 데이터가 필요하면 ERPDatabaseServer로 접근하여 필요한 정보를 전송받는다(단계17∼단계18).

 

4.3 분석 서비스 기능

Table1은 사용자에게 모니터링 및 분석 서비스를 제공하기 위해 개발에 사용된 개발 환경을 나타낸다. 서버 구축은 Tomcat 서버를 사용하고, 데이터베이스는 몽고, MySQL, Redis를 사용하고, Spring Framework, JPA 기반으로 Java, Javascript를 이용하여 화면을 디자인하고 기능을 표출하였다.

Table 1. System Development Environment

MTMDCW_2019_v22n3_366_t0001.png 이미지

 

4.3.1 모니터링 화면

Fig.6은 가열로 에너지 사용량을 모니터링 하는 화면으로 현재 가열로 가열일정, 작업 진행시간, 가열로에 장입되어 있는 원소재 목록 등을 실시간으로 확인 할 수 있다. 그리고 월 기준으로 현재 사용되고 있는 누적 가스량, 전월 가스 사용량, 가스 열량계수가 실시간으로 업데이트 되고 있는 화면이다.

 

MTMDCW_2019_v22n3_366_f0006.png 이미지

Fig. 6. Monitoring screen for each facility

 

4.3.2 이력검색

Fig.7은 각 설비별로 설정한 시작 및 종료 시간범위에 분 또는 시간 당 가스와 전력 사용량, 온도의 이력을 검색하는 기능이다. 이러한 검색을 통해, 가스, 전력 사용량과 온도 패턴을 검색하여 사용량 패턴을 추출할 수 있다.

 

MTMDCW_2019_v22n3_366_f0007.png 이미지

Fig. 7. History searching.

 

4.3.3 시계열 및 원단위 분석

에너지 분석 및 시각화 서비스에는 년도, 월, 일별시간에 따라 공정별/설비별 에너지 사용량 및 사용요금에 대한 그래프를 제공하는 시계열 분석, 공정별/설비별에 따른 에너지 사용량, 월별 사용량 등에 대한 그래프가 표시된다. Fig.8은 년도별로 공정 및 설비별로 에너지 사용량 대비 원소재 중량에 대한 원단위 분석 결과를 표시하는 그래프이다.

 

MTMDCW_2019_v22n3_366_f0008.png 이미지

Fig. 8. Unit analysis to energy usage and weight for each facility.

 

5. 결 론

본 논문에서는 단조 공장에서 제품 생산 공정에 사용되는 가열, 열처리, 프레스 등의 설비로 부터 다양하게 발생하는 데이터를 수집하기 위한 모니터링 및 분석시스템 구조와 구현 방법을 제시하였고 이를 바탕으로 사용자에게 제공하는 모니터링 및 검색 서비스 기능을 개발하였다. 이러한 구조는 다양한 형태의 소스로부터 데이터 수집이 가능한 수집 서버와 이를 서비스하기 위한 어플리케이션 서버로 나누어 운영함으로써 검색 속도를 높일 수 있는 장점을 가진다. 향후, 제안한 기본 시스템을 활용하여 에너지 사용패턴 및 원단위 분석 정보를 이용하여 머신러닝 기반 에너지 사용량 예측 알고리즘 및 설비별 공정 작업을 최적화하는 연구를 통하여 에너지를 절감할 수 있도록 도와주는 시스템으로 개선해나가는 연구가 필요하다.

References

  1. M.H. Park, Y.H. Kim, and S.B. Lee, "A Study on the Development of Energy IoT Platform," Korea Information Processing Society Transactions on Computer and Communiction Systems, Vol. 5, No. 10, pp. 311-318, 2016.
  2. S.J. Shin, J.Y, Woo, and W.C. Seo, "Developing a Big Data Analytics Platform Architecture for Smart Factory," Journal of Korea Multimedia Society, Vol. 19, No. 8, pp. 1516-1529, 2016. https://doi.org/10.9717/kmms.2016.19.8.1516
  3. R.L. Antoniol and F. Lima, "Digital Manufacturing Tools Applied to Energy Analysis and Decision in Manufacturing Systems," Proceeding of International Conference on Management of Engineering and Technology, pp. 721-729, 2016.
  4. H.J. Lee, S.K. Yoo, and Y.W. Kim, "An Energy Management Framework for Smart Factory Based on Context-awareness," Proceeding of International Conference on Advanced Communication Technology, pp. 685-688, 2016.
  5. K. Zhou, X. Li, Y. Zhang, Y. Lv, and L. Chen, "Study on Management System of Energy Information in Manufacturing Processes," Proceeding of International Conference on Measuring Technology and Mechatronics Automation, pp. 604-607, 2010.
  6. H.S. Oh, D.H. Kim, H.S. Jeon, and H.J. Park, "IoT Data Collection Platform Based on Selective Protocols," Journal of the Korean Institute of Communication Sciences, Vol. 42, No. 4, pp. 871-878, 2017. https://doi.org/10.7840/kics.2017.42.4.871
  7. S.H. Kim, D.H. Kim, H.S. Oh, H.S Jeon, and H.J. Park, "The Data Collection Solution Based on MQTT for Stable IoT Platforms," Journal of the Korea Institute of Information and Communication Engineering, Vol. 20, No. 4, pp. 728-738, 2016. https://doi.org/10.6109/jkiice.2016.20.4.728
  8. D.H. Ryu, K.J. Kim, Y.M. Ko, and M.S. Song, "A Review of New Services Based on Energy Usage Data," Korean Operations Research and Management Society, pp. 4686-4690, 2017.
  9. K.T. Jung, S.M. Yoon, H.J. Moon, and W.H. Yeo, "A Study on Building Energy Consumption Pattern Analysis Using Data Mining," Korea Institute of Ecological Architecture and Environment Journal, Vol. 12, No. 2, pp. 77-82, 2012.
  10. H.S. Lee, S.J. Lee, J.S. Kim, and J.P. Choi, "Big Data-based Electricity Energy Service Development," Korea Journal of Geothermal Energy, Vol. 11, No. 2, pp. 20-31, 2015.
  11. L. Jesus, F.D. Ridder, and B.D. Schuttera, "Forecasting Spot Electricity Prices: Deep Learning Approaches and Empirical Comparison of Traditional Algorithms," Applied Energy, Vol. 221, pp. 386-405, 2018. https://doi.org/10.1016/j.apenergy.2018.02.069

Cited by

  1. 포그 컴퓨팅 환경에서 기회적 포그 컴퓨팅 노드들을 고려한 서비스 요구사항 기반 테스크 분배 방법 vol.24, pp.1, 2019, https://doi.org/10.9717/kmms.2020.24.1.051