I. Introduction
소물인터넷 (IoST: Internet-of-Small-Things)은 사물이 인터넷을 통해서 소량의 데이터를 송수신하는데 특화된 기술로 사물에 어떠한 기능을 접목하는지에 따라 다양하게 활용될 수 있어 관련 시장이 빠르게 성장할 것으로 예상된다[1]. 특히 소물인터넷을 위한 무선통신의 커버리지는 도심에서도 수 km에 이르기 때문에 국내 이동통신 3사도 소물인터넷 상용화에 적극적으로 뛰어드는 등 산업적 측면에서도 소물인터넷을 활용한 다양한 서비스들이 등장하고 있으며, 2014년 브라질 월드컵에서 독일 대표팀 선수들의 훈련에 웨어러블 컴퓨팅 및 소물인터넷 기술이 적용되어 가슴에 부착된 센서를 통해 호흡, 맥박 등을 실시간으로 분석하는 최첨단 훈련이 이루어진 사례가 있다[2]. 이를 반영하여 정부 차원에서 소물인터넷의 서비스 연속성, 공통 서비스에 대한 연동, 호환성 및 확장성 확보를 위해 디바이스와 게이트웨이로 구분되는 개방형 표준 아키텍처 채택의 필요성을 강조하고 있다. 디바이스에 내장된 센터를 통한 데이터 수집과 필요에 따른 제어에 있어서 인터페이스, 주파수 인증 및 범위, 배터리 수명, 무선 출력, SW 저전력 동작 등의 도입 기준을 제시하고 있으며, 게이트웨이는 디바이스의 기준에 더하여 실시간 분석, 네트워크 백홀 연동, SW 접근제어 등의 도입 기준을 제시하고 있다[3].
일반적으로 소물인터넷 디바이스에 전력을 공급하는 리튬이온 등 충전식 배터리는 고출력으로 방전 시 전압 강하가 나타나고 특히 반복 사용하면 수명이 짧아지기 때문에 주기적인 교체가 필요하다. 수많은 소물인터넷 디바이스가 물리환경과 통합되어 운영되는 인프라 시스템에서는 충전 횟수가 제한되어 반복된 충전 이후 교체를 요구하는 배터리 기반의 내장형 컴퓨터는 매우 높은 운영비용을 발생시킬 뿐이 아니라 이로 인한 대량의 폐기물을 발생시킬 수 있다.
슈퍼커패시터는 이러한 충전식 배터리의 성능을 보완하는 전력 저장장치로 급속 충전과 방전이 가능하고 높은 전력 효율 및 반영구적인 충·방전 사이클 수명의 특성을 갖고 있어 소물인터넷 기기들에 전력을 공급하는 보조 전력 저장장치로 관심받고 있다[5]. 기존의 일반 커패시터는 풍력, 태양광 패널, RF 에너지 하베스터[6] 등과 결합하여 정전 시 일시적으로 전력을 공급하는 안전기기 등에 이용될 수 있으나 적은 용량이라는 한계가 있다. 반면 슈퍼커패시터는 일반 커패시터 대비 단위 면적당 수십 배 많은 전력을 저장할 수 있어 에너지 하베스터와 결합 되었을 때 급속 충방전 및 반영구적인 수명 등의 장점으로 인하여 소물인터넷을 위한 내장형 컴퓨터의 가용성을 크게 향상 시킬 수 있을 것으로 기대된다.
에너지 하베스터의 하나인 태양광 패널은 해가 진 이후에 공급전력이 급속히 감소하는 등 지속적으로 일정한 전력을 공급하는데 근본적인 제한이 있기 때문에 비록 슈퍼커패시터와 결합하더라도 내장형 컴퓨터가 수행하는 소프트웨어에 대해 공급전력의 상태 (전압 수준, 빈도, 지속시간 등)에 대한 접근이 필수적이다.
본 논문은 슈퍼커패시터와 소형 태양광 패널에 의한 전력 공급과 그 특성에 따른 소물인터넷을 위한 내장형 컴퓨터의 데이터 처리에 일시적인 오류 혹은 제한이 있을 수 있는 시스템에서 날씨 등 물리적인 환경의 변화 및 컴퓨팅 부하의 변화 등 다양한 상황에서 시스템 가용성을 평가할 수 있는 프로토타입을 설계하고 구현한다.
이를 위해 본 논문의 소물인터넷을 위한 시스템 소프트웨어는 전원 공급 문제를 사전에 감지하고 전원 공급 차단 혹은 저하에 의한 데이터 유실을 방지하기 위해 시스템의 수행 시간 중에 SRAM과 같은 휘발성 메모리의 내용을 Flash 메모리 등의 비휘발성 메모리에 이전하는 기법을 적용한다.
본 논문의 구성은 다음과 같다. 2장에서는 에너지 하베스터 기반의 내장형 컴퓨터에서 전력 관리 기법과 관련한 기존 연구들을 살펴보고 본 논문에서 제안된 시스템 설계와 비교한다. 3장에서는 시스템 세부 설계와 구현 방법을 기술하며 4장에서는 성능 평가를 위해 구현된 프로토타입의 효용성을 검증하기 위해서 시스템 적용성과 에너지 측면에서의 오버헤드를 측정하여 제안된 기법이 효과적임을 실험을 통해 보여준다. 마지막으로 5장은 본 논문의 결론을 기술한다.
II. Related Work
소물인터넷은 제공되는 서비스 특성에 따라 사용량을 측정하는 미터링, 위치를 추적하는 트래킹, 상황에 대한 모니터링에 기반한 제어, 그리고 헬스케어로 구분 될 수 있으며 동일한 분류의 서비스들도 데이터의 특성에 따라 필요로 하는 하드웨어와 소프트웨어의 요구사항이 달라질 수 있다. 특히 사물인터넷이 기반하는 네트워크를 통해 주고 받는 데이터의 특성에 따라 응급차 내의 진단 시설 등 높은 신뢰도를 요구하는 응용의 경우 미션 크리티컬 데이터 서비스는 LTE, 3G 등 기 구축되어 가용성이 높은 무선통신망을 사용하지만 스마트홈, 스마트 교통시스템 등 일반적인 데이터 전송 서비스는 한번에 전송되는 데이터의 양과 빈도 그리고 시간제약성의 지원에 따라 구분된다[3].
공장 자동화, 차량 공유 서비스 등의 서비스는 대용량의 데이터 송수신, 실시간 모니터링 기능, QoS 보장, 짧은 응답시간 등을 필요로 하며 주로 LTE-M Cat1 무선통신망에 기반하며 원격검침, 물자관리 등의 서비스는 대부분 24바이트 이하의 소용량의 데이터 송수신을 필요로 하며 실시간성과 데이터 형태의 변화가 적은 경우 LoRa, NB-IoT, SIGFOX 등의 비면허 무선통신 기술에 기반하며[4], 본 논문은 이러한 소용량 데이터 전송서비스를 위한 센서/게이트웨이를 위한 플랫폼에 대한 전력 관리 기법을 제안한다.
에너지 하베스터는 소물인터넷을 구성하는 소형 내장형 컴퓨터를 효율적으로 사용하기 위해 자연에 존재하는 천연 에너지 자원으로부터 전력을 공급받아 작동하는 에너지를 수집하는 기술이다. 에너지 하베스터는 주변 환경에서 다양한 에너지를 모아 이를 전기 에너지로 전환한 뒤 전기로 동작하는 장치를 구동하는 기술을 지칭하며 태양에너지, 진동 에너지 등이 활용될 수 있다. 기존 화석 연료와 달리 에너지 하베스터는 주변의 자연 에너지를 흡수해 전기 에너지로 전환하는 과정에서 환경에 치명적인 부산물을 발생시키지 않기 때문에 사람의 개입 없이 장시간 야외에서 작동하는 소형 내장형 컴퓨터의 근본적인 전력 부족 문제를 해결할 것으로 기대된다[7].
특히 태양 에너지는 다른 에너지원에 비해 높은 접근성과 전력 밀도를 가지고 있는 것으로 알려져 있으며[8] 가로등이나 달빛 등 미세한 불빛으로도 에너지 수집이 가능한 것으로 알려져 소비전력이 극히 낮은 소형 내장형 컴퓨터에 태양 에너지 기반 에너지 하베스터와 배터리 혹은 커패시터 등의 보조 전력 저장장치가 결합된 시스템이 널리 적용되고 있다[9-11].
이러한 태양광 기반 에너지 하베스터 시스템을 설계하려면 태양 패널의 특성, 전력 저장공간 및 시스템 회로 설계를 고려해야 다[12]. 특히 태양 패널에 의한 전기 에너지 생산이 비선형 전기적 특성을 갖는다는 점을 고려하여 디지털 제어되는 MPPT (Maximum Power Point Tracking) 기법[13]이 제안되었으며, 이러한 기법을 기반으로 태양 에너지 기반 에너지 하베스터의 제한점의 극복을 위해 결합 되는 배터리 혹은 커패시터 등의 보조 전력 저장장치와의 통합 관리를 위한 다양한 PMIC (Power Management Integrated Circuit)가 소형 내장형 컴퓨터를 위한 전력 공급 시스템에 적용되고 있다.
일반적으로 내장형 컴퓨터에 사용되는 메모리는 휘발성 메모리와 비휘발성 메모리로 구분된다. SRAM 혹은 DRAM과 같은 휘발성 메모리는 메모리 접근 시간이 짧은 반면 용량이 작으며 데이터 손실을 방지하기 위해 지속적인 전력이 필요한 단점이 있다. 반면 Flash 메모리와 같은 비휘발성 메모리는 전원이 차단되어도 메모리에 데이터가 남아 있고 상대적으로 메모리 용량이 휘발성 메모리보다 큰 장점이 있는 반면 메모리 접근 시간이 휘발성 메모리에 비해 상대적으로 길다는 단점이 있다[14-15].
기존 메모리 시스템과 비교하여 이러한 이기종 메모리구조 기반의 내장형 컴퓨터에서 소비전력의 효율을 높이기 위한 대부분의 연구는 메모리 페이지 할당 기술과 작업스케줄링에 대한 기법을 제시하고 있다. 대표적으로 메모리 읽기/쓰기에 따라 이기종 메모리 페이지에 접근하기 위해 소비되는 소비전력을 계산하고 소비전력에 따라 각 메모리에 페이지를 할당하는 기법[16]과 효율적인 소비전력을 달성하기 위해 프로그램 코드 영역에서 메모리 접근 충돌 및 손실을 고려하여 페이지를 할당하고 이전에 생성된 페이지를 메모리에 배치하고 메모리 페이지의 수명에 따라 이를 대체하는 알고리즘[14]이 제안되었다.
본 논문은 기존 연구들에서 제안된 시스템과는 달리 일반 커패시터 대비 에너지 밀도가 높으며 PMIC로 통합 관리되는 소형 태양광 패널 기반의 에너지 하베스터와 결합되어 급속 충방전 및 반영구적인 수명 등의 장점을 갖는 슈퍼커패시터를 보조 전력 저장장치로 사용한다. 특히 소형 내장형 컴퓨터 상에서 일시적으로 에너지 수집이 불가능한 환경에서 전원 공급 차단 혹은 저하에 의한 데이터 유실을 방지하기 위해 기존의 소비전력 효율성을 향상 시키기 위해 적용되었던 이기종 메모리 구조를 적용하여 시스템 소프트웨어 수준에서 SRAM과 같은 휘발성 메모리에 있는 데이터를 Flash과 같은 비휘발성 메모리로 이전시키는 기법을 적용하여 기존 연구와 차별성을 갖는다.
III. Platform Prototype
1. System Design
본 논문의 플랫폼 프로토타입은 공급 전력이 가변적인 환경에서의 에너지 하베스터, 슈퍼커패시터를 보조 전력 저장장치로 결합하는 PMIC, 그리고 마이크로컨트롤러가 소비전력 면에서 효율적인 동작을 위해 저전력 모드로 전환이 가능한 하드웨어 구성요소를 적용한다. 이를 위해 저전력 소형 내장형 컴퓨터에 적합한 Texas Instrument사의 MSP432P4111 Launchpad를 시스템 설계 및 구현에 사용하였다[17-18].
Fig. 1은 구현된 시스템의 구성을 보여주며 Fig. 2는 프로우차트를 기술한다. 태양 에너지 수집을 위한 태양광 패널이 최대 변환 효율을 보장하기 위해 사용되는 MPPT 회로가 장착된 PMIC와 연결되고 일시적인 공급 전력 차단을 대비하기 위한 슈퍼커패시터가 보조 전력 저장장치로 통합되어 있다. PMIC의 공급 전력 차단 혹은 재개 상태를 마이크로컨트롤러에 알려주기 위해 PMIC의 STATUS 핀이 마이크로컨트롤러의 디지털 입력 핀에 연결되어 있으며, PMIC에 의해 마이크로컨트롤러에 적합하도록 전력을 공급해주는 LDO 전원 출력이 마이크로컨트롤러의 전원입력에 연결되어 동작하도록 구성하였다.
Fig. 1. Hardware System Setup
Fig. 2. Hardware System Setup
마이크로컨트롤러에 내장된 공급 전력을 관리하는 IC는 다양하고 넓은 입력 전력 범위를 허용하지만 소비전력 대비 효과적으로 동작하기 위해서는 시스템이 허용 범위 내에서 이루어져야 정상적인 동작을 보장할 수 있으며, 이는 전력 관리 IC의 코어 전원 조정기 (Core Regulator)에 의해 수행된다. MSP432P411 마이크로컨트롤러에는 Table 1과 같이 선형으로 작동하는 LDO (Low Drop-Out) 조정기와 인덕터를 기반으로 하는 DC/DC (Direct Current) 조정기가 제공되며 프로그램 코드에 의해 자유롭게 전환할 수 있다.
Table 1. Comparisons between LDO and DC/DC Core Voltage Regulators
태양광 등 전원 공급의 불안정성이 내재 된 에너지 하베스터를 전원 공급장치로 사용할 경우 다양한 물리적, 전기적 조건과 특성이 충족될 때 안정적인 동작이 가능하다. 에너지 하베스터에서 생산된 전력을 수집 전력이라고 하면 수집 전력이 특정 임계값 이상일 때 마이크로컨트롤러 시스템이 작동하기 시작하고, 이 값을 시스템 작동 전력이라고 한다. Fig. 3은 실험을 통해 확인한 코어 전원 조정기에 따른 최소 동작 가능 범위를 도식화한 것이다. Fig 1.에서 볼 수 있듯 마이크로컨트롤러의 주요 하드웨어 구성요소를 작동하기 위해 사용되는 코어 전력 수준(VCORE)은 마이크로프로세서에 공급되어 시스템의 작동 모드에 따라 설정된 최대 클럭 주파수를 제한하게 된다.
Fig. 3. Minimum Operating Voltage Ranges w.r.t. Microprocessor Operating Frequencies
Fig. 3의 실험 결과에 따르면 마이크로컨트롤러는 모든 경우에 1.68V 이상만 공급되면 정상적으로 동작할 수 있으며, 코어 전원 조정기에 따라 기본적인 전원 공급에 차이가 있는 것으로 측정되었다. 동일한 코어 전원 레벨과클럭 주파수를 사용하더라도 DC/DC 조정기를 사용하는 경우 최소 0.05V에서 최대 0.12V까지 추가 전원을 필요로하며 이는 평균 차이가 0.0125V인 코어 전력 수준보다 코어 전력 조정기의 유형이 시스템 동작에 더 영향을 미치며 코어 전원 조정기와 코어 전원 레벨에 관계없이 클럭 주파수와 필요한 공급 전력이 비례하는 것으로 나타낸다.
제안된 플랫폼에 사용된 마이크로컨트롤러는 전력 관리 IC가 제공하는 전력 레벨을 프로그램 코드로 변경할 수 있으며, 활성 모드 (Active Mode), 저전력 모드 (Low Power Mode)로 구분된다. 사용자의 프로그램 코드는 활성 모드에서 실행이 가능하지만 저전력 모드에서 실행이 허용되지 않는다. Table 2에서 기술된 바와 같이 저전력모드에서 소비전력을 절감하기 위해 일부 하드웨어 구성요소에 공급되는 전력을 차단 혹은 제한하는데 이로 인해 대기 상태에서의 하드웨어 기능이 제한될 수 있다.
Table 2. Availability of Hardware Components for Each Operating Mode
본 논문에서 제안된 플랫폼은 태양광 패널과 슈퍼커패시터를 결합하여 통합 관리하는 PMIC로부터 전원을 공급받고 전원 공급 상태 정보를 마이크로컨트롤러의 디지털 입력으로 전달받기 때문에 동작 모드 중 프로그램 코드가 수행되어야 하는 활성 모드 (AM)와 디지털 입력을 담당하는 GPIO (General Purpose Input and Output) 구성요소의 기능이 동작하는 저전력 모드 (LPM0_LDO_VCORE 동) 간의 전환을 사용한다.
2. Power Outage and Availability Detection
전원 공급 및 관리는 PMIC를 통해 수행되며 제공하는 다양한 기능 중 STATUS는 공급 전원이 특정 임계값 아래로 떨어지면 이를 감지하여 디지털 신호를 트리거하며 반대로 에너지 하베스터로부터 공급되는 전력의 범위가 전원 공급을 위한 조건이 충족되면 별도의 디지털 신호를 트리거 할 수 있다.
Fig. 1의 STATUS[0]는 슈퍼커패시터 전압이 정상적인 전원의 공급이 가능한 임계치에 도달하면 LDO가 작동하고 활성화될 수 있음을 디지털 신호를 Low 신호에서 High 신호로 변경하여 알려주며, 슈퍼커패시터 전압이 임계치 이하로 방전되면 LDO는 차단되며 최대 600ms 후에 STATUS[1]의 디지털 신호가 Low 신호에서 High 신호로 변경된다.
Fig. 4는 본 논문의 플랫폼에서 전원 공급 차단 및 재공급 감지를 위한 설계가 기반하고 있는 에너지 하베스터에일시적인 전원 공급이 차단된 이후 다시 전원이 공급되는 시나리오에서 슈퍼커패시터의 전압, STATUS 신호, 마이크로컨트롤러의 전류의 변화 및 절차를 기술한다.
Fig. 4. Overview of Power Outage and Availability Detection Procedures
인터럽트는 사용자의 프로그램 코드가 실행되는 동안 혹은 마이크로컨트롤러가 저전력 모드에 있는 동안 외부장치로부터의 요청에 의해 깨어나서 미리 지정된 명령어를 수행하는 구조를 갖는다. Fig. 4의 시나리오를 지원하기 위해서는 PMIC의 STATUS[0-1] 디지털 신호가 마이크로컨트롤러에 인터럽트를 통해 전달되어야 하는데 이를 위해 Fig. 5의 인터럽트 제어기 초기화 코드를 사용하여 전원 공급 차단 및 재공급 감지를 구현하였다.
Fig. 5. Interrupt Controller Initialization Code for Power Outage and Availability Detection
3. Program Context Relocation
제안된 플랫폼은 전원 공급 면에서 날씨와 시간에 따른 충분치 못한 공급 전원으로 짧게는 수 밀리초에서 길게는 수 시간 동안 전원 공급이 차단되거나 충분치 않은 전압이 공급되어 내장형 컴퓨터의 일부 기능의 동작에 일시적으로 오류가 발생할 수 있다.
이와 같은 연속적인 전원 공급이 보장되지 않는 컴퓨팅환경에서는 데이터의 유실을 방지하기 위해서는 전원 공급이 차단되는 경우 SRAM과 같은 휘발성 메모리에 있는 데이터가 Flash와 같은 비휘발성 메모리로 이전이 필요하다.
III.2절의 전원 공급 차단 및 재공급 감지를 위한 구현에 따라 각 이벤트 시 마이크로컨트롤러로 인터럽트를 통해 감지된 정보가 전달되면, 각각에 대응되는 인터럽트 핸들러가 수행되게 된다. 이때 레지스터와 같은 마이크로컨트롤러 내부에 있는 휘발성 데이터 혹은 프로그램 문맥 (Program Context)와 SRAM의 데이터를 Flash로 이전해야 하며 본 논문의 플랫폼에서는 (1) 프로그램 문맥의 휘발성 메모리 영역 이전 단계와 (2) 휘발성 메모리 영역의 비휘발성 영역으로의 이전 단계로 구현하였다.
프로그램 문맥 이전 단계에서는 Fig. 6과 같이 먼저 스택 포인터를 처리해야 하는데 인터럽트를 처리할 때 사용되는 주 스택 포인터 (MSP)를 저장한다. 이후 코어 레지스터 집합을 이전하고 그 중 프로그램 카운터는 인터럽트 핸들러를 떠날 때 스택에서 다시 로드되게 된다.
Fig. 6. Partial Code for Saving and Restoring Program Context
다음으로 비휘발성 메모리 이전 단계에서는 Fig. 7과 같이 먼저 플래시 메모리에 값을 쓰기 위해 사용할 플래시 섹터의 보호를 해제한다. 일반적으로 비휘발성 메모리는 시스템적으로 중요한 정보가 위치하기 때문에 섹터의 보호를 통해 잘못된 값의 입력이나 덮어쓰기 등을 방지한다. 즉 메모리 이전 전에 프로그래밍 가능한 영역을 확인하고 그 영역에 섹터를 지정한 후 지정된 플래시 섹터를 사용할 수 있도록 그 섹터의 보호를 해제한다. 다음으로 선정된 섹터에 저장되어 있을지 모르는 불필요한 데이터를 삭제하는 작업을 진행해야 하며 이후 지우기 작업이 완료된 플래시 섹터에 SRAM에서 플래시 메모리로 데이터를 이전한다. 마지막으로 해당 플래시 섹터를 다시 보호한다. 이는 플래시 메모리에 잘못된 값이 쓰일 위험을 방지를 위해 필요한 과정이다.
Fig. 7. Partial Code for Relocating the Program Context between Flash Memory and SRAM
IV. Experimental Results
본 논문에서 제안한 프로토타입 플랫폼의 효용성을 검증하기 위한 실험을 위해 슈퍼커패시터가 있는 에너지 하베스터와 통합되어 관리될 수 있는 APPEB1012를 사용하였다[19]. 보드에는 최대 전력 지점 추적 (MPPT)를 지원하는 전원 관리 PMIC로 AEM10941이 통합되어 있다[20].
슈퍼커패시터가 프로토타입의 보조 전력 저장장치로 사용되었을 때의 효용성을 검증하기 위해 제공된 정밀한 시뮬레이션 모델을 사용하여 주어진 충전 전류와 연결된 부하에 대한 슈퍼커패시터의 효율을 계산하였다. Table 3은 시뮬레이션에 사용한 슈퍼커패시터와 부하의 명세이고 Fig. 8은 시뮬레이션 결과이다.
Table 3. Supercapacitor Parameters
Fig. 8. Accurate Simulation Results for Voltage and Current (Supercapacitor & Microprocessor)
시뮬레이션한 회로는 태양광 패널과 병렬로 연결된 슈퍼커패시터로 구성된 하이브리드 시스템에 대해 정전류와 고정 전류의 반복 펄스로 구성된 부하를 받는다고 가정하였으며, 계산 결과에 따라 통합된 전원 공급 장치는 구성된 시스템을 위한 충분한 공급 전원을 제공하는 것을 확인하였다.
본 논문의 플랫폼의 전원 공급 차단 및 재공급 감지와 프로그램 문맥과 데이터의 휘발성 메모리 영역 이전 기법의 오버헤드 측정을 위해 다양한 벤치마크 프로그램을 사용하였다. 실험에 사용된 벤치마크는 FIR, MiBench[21]의 basicmath, dijkstra 그리고 Powerstone의 bcnt, blit, CRC, g3fax 및 pocsag의 총 8종을 사용하였다. 실험에서는 벤치마크의 실행 횟수를 총 소비 에너지 측정에 충분하도록 Table 4와 같이 벤치마크 실행 횟수를 기본 설정보다 2배로 늘려서 사용하였으며 이때 실행 횟수에 대한 기준은 약 1분 동안의 반복 실행 횟수이다.
Table 4. Repetition Counts for Benchmarks
Fig. 9는 본 논문에서 제안한 프로토타입 플랫폼의 기법들이 적용됨에 따라 증가된 총 소비 에너지를 정형화한 실험 결과로 약 6% 이내의 최대 소비 에너지 증가가 관찰되었으며 가장 적게는 dijkstra 벤치마크에서 0.2%의 증가하고 가장 많게는 crc 벤치마크에서 5.8%의 에너지가 증가하는 것을 관찰하였다.
Fig. 9. System Overheads in Terms of Normalized Energy
V. Conclusions and Future Work
소물인터넷은 전력 소모가 적기 때문에 전원 플러그가 필요 없이 수 개월 동안 동작할 수 있으며 보조 전력 저장장치로서 충전식 배터리 기반의 전원 장치의 한계를 뛰어넘을 것으로 예상되는 슈퍼커패시터와 태양광 패널이 결합된 에너티 하베스터가 내장형 컴퓨터에 적용될 경우 물리적인 환경의 변화 및 부하의 변화 등 다양한 상황에서 시스템 가용성을 향상 시킴으로써 기존에 적용하지 못한 새로운 산업영역에 적용할 수 있을 것으로 예상된다.
본 논문은 전원 공급 면에서 날씨와 시간에 따른 충분치 못한 공급 전원으로 짧게는 수 밀리초에서 길게는 수 시간 동안 전원 공급이 차단되거나 충분치 않은 전압이 공급되어 내장형 컴퓨터를 구성하는 일부 기능의 동작에 일시적으로 오류가 발생할 수 있는 안정적인 전원 공급이 보장되지 않는 컴퓨팅 환경에서 데이터의 유실을 방지하기 위해서 SRAM과 같은 휘발성 메모리에 있는 데이터가 Flash와 같은 비휘발성 메모리로 이전하는 기법을 구현하였다. 또한 해당 기법을 마이크로컨트롤러에 전원을 공급하는 에너지 하베스팅 시스템의 전원 공급의 중단 및 재개를 감지함으로써 시스템 가용성을 높이기 위한 프로토타입 플랫폼을 설계하고 구현하였다.
실험을 통해 슈퍼커패시터의 보조 전력 저장장치로서의 일시적 전원 공급에 효과적으로 대응하는지 검증하였으며 다양한 벤치마크를 통해 플랫폼에 구현된 전원 상태 감지 및 프로그램 문맥 및 데이터의 이전이 소비 에너지 면에서 낮은 오버헤드를 갖음을 실험을 통해 보여주어 본 논문에서 제안한 플랫폼의 효용성을 검증하였다.
본 논문의 향후 연구로는 제안된 소물인터넷의 데이터처리 플랫폼을 확장하여 클라우드로의 데이터 전송을 위한 통신에 일시적인 오류 혹은 제한이 있을 수 있는 센서 노드와 원거리 통신 노드의 두 계층으로 구성된 센서/원거리 통신의 계층화된 소물인터넷 구조를 위한 플랫폼을 개발할 예정이다. 이러한 환경에서는 센서 노드들은 항상 활성화되어 있는 상태가 아니라 주기적으로 혹은 외부의 이벤트 발생에 따라 활성화되고 그 외의 대부분의 시간 동안은 소비전력을 최소화하는 대기 상태로 있게 되는데, 다수의 센서들에 의해 수집되는 데이터의 특성에 따라 이러한 동작 주기의 복잡성을 갖으며, 센서 노드와 장거리 통신 노드 사이에 통신이 이루어지는 시간 및 무선통신 출력을 스케줄링함으로써 소비전력을 최적화할 수 있는 알고리즘의 개발이 가능할 것으로 기대된다.
ACKNOWLEDGEMENT
This research was supported by Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Education (NRF-2021R1F1A1050088).
References
- M. Gohar, S. H. Ahmed, M. Khan, N. Guizani, A. Ahmed and A. Ur Rahman, "A Big Data Analytics Architecture for the Internet of Small Things," IEEE Communications Magazine, vol. 56, no. 2, pp. 128-133, Feb. 2018. DOI: 10.1109/MCOM.2018.1700273
- I. Bojanova, "IT Enhances Football at World Cup 2014," IT Professional vol. 16, pp. 12-17, Jul. 2014. DOI: 10.1109/MITP.2014.54
- National Information Society Agency, "Government guidelines for introducing the Internet of Things." Issue registration number 11-1741000-000180-01, pp. 12-14, Jul. 2019.
- E. Morin, M. Maman, R. Guizzetti, and A. Duda. "Comparison of the Device Lifetime in Wireless Networks for the Internet of Things," IEEE Access, vol. 5, pp. 7097-7114, May. 2017. DOI: 10.1109/ACCESS.2017.2688279
- B. Munir B and V. Dyo, "On the Impact of Mobility on Battery-Less RF Energy Harvesting System Performance," Sensors, vol. 18, no. 11, Oct. 2018. DOI: 10.3390/s18113597
- T. Barcelo, "Energy Harvesting with Low Power Solar Panels," https://www.analog.com/en/technical-articles/energy-harvesting-with-low-power-solar-panels.html
- A. M. Siddiqui, L. Musavian, and Q. Ni, "Energy Efficiency Optimization with Energy Harvesting Using Harvest-use Approach," Proc. of the IEEE International Conference on Communication Workshop (ICCW), pp. 1982-1987, 2015. DOI: 10.1109/ICCW.2015.7247471
- Roundy and S. Joseph, "Energy Scavenging for Wireless Sensor Nodes with a Focus on Vibration to Electricity Conversion," PhD Thesis. University of California, Berkeley, 2003.
- D. Brunelli, et al, "Design of a Solar-Harvesting Circuit for Batteryless Embedded Systems," IEEE Transactions on Circuits and Systems I: Regular Papers, vol. 56, no. 11, pp. 2519-2528, Feb. 2009. DOI: 10.1109/TCSI.2009.2015690
- A. Joseph, "Energy Harvesting Projects," Journal of the IEEE Pervasive Computing, vol. 4, no. 1, pp. 69-71, Mar. 2005. DOI: 10.1109/MPRV.2005.8
- Paradiso, A. Joseph, and T. Starner, "Energy Scavenging for Mobile and Wireless Electronics," Journal of the IEEE Pervasive Computing, vol.1, pp. 18-27, Mar. 2005. DOI: 10.1109/MPRV.2005.9
- V. Raghunathan, et al, "Design Considerations for Solar Energy Harvesting Wireless Embedded Systems," Proc. of the 4th international symposium on Information processing in sensor networks, pp. 457-462, 2005. DOI: 10.1109/IPSN.2005.1440973
- C. Alippi, and C. Galperti, "An Adaptive System for Optimal Solar Energy Harvesting in Wireless Sensor Network Nodes," IEEE Transactions on Circuits and Systems I: Regular Papers, vol. 55, no. 6, pp. 1742-1750, Apr. 2008. DOI: 10.1109/TCSI.2008.922023
- H. A. Khouzani, F. S. Hosseini and C. Yang, "Segment and Conflict Aware Page Allocation and Migration in DRAM-PCM Hybrid Main Memory," IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, vol. 36, no. 9, pp. 1458-1470, Sept. 2017. DOI: 10.1109/TCAD.2016.2615845
- Z. Zhang, Y. Fu and G. Hu, "DualStack: A High Efficient Dynamic Page Scheduling Scheme in Hybrid Main Memory," Proc. 2017 International Conference on Networking, Architecture, and Storage (NAS), Shenzhen, pp. 1-6, 2017. DOI: 10.1109/NAS.2017.8026855
- Y. Zhang, J. Zhan, J. Yang, W. Jiang, L. Li, and Y. Li, "Energy-Aware Page Replacement for NVM Based Hybrid Main Memory System," Proc. 2017 IEEE 23rd International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA), Hsinchu, pp. 1-6. 2017. DOI: 10.1109/RTCSA.2017.8046335
- MSP432P4111 SimpleLinkTM Mixed-Signal Microcontrollers, TEXAS INSTRUMENTS, http://www.ti.com/lit/ds/symlink/msp432p4111.pdf
- MSP432P4xx SimpleLinkTM Microcontrollers Technical Reference Manual, TEXAS INSTRUMENTS, http://www.ti.com/lit/ug/slau356h/slau356h.pdf
- Henry Huang, "User Manual for APPEB1012," CAP-XX, 2020.
- E-Peas S, A, "AEM10941 Datasheet", e-Peas Semiconducrots, 2018.
- M. R. Guthaus, J. S. Ringenberg, D. Ernst, T. M. Austin, T. Mudge and R. B. Brown, "MiBench: A Free, Commercially Representative Embedded Benchmark Suite," Proc. the Fourth Annual IEEE International Workshop on Workload Characterization. WWC-4 (Cat. No.01EX538), IEEE (USA), pp. 3-14, Dec. 2001. DOI: 10.1109/WWC.2001.990739