★ Please read idea PDF file. We uploaded file in? "Document - Code".
We just simply write our idea in this page.
현대에는 고층 건물이 많아지면서 엘리베이터는 필수적인 이동 수단이 되었다. 최근 국내에 설치된 엘리베이터는 약 75만대로, 역대 최다 보유대수를 기록했다. 하지만, 엘리베이터 고장 ? 사고 건수 역시 1만 7천여건으로 통계 작성 이래 최다 건수를 기록했다.
기존의 엘리베이터 시스템은 관리자가 엘리베이터 내의 카메라, 비상통화장치 등을 통해 모니터링하는 시스템으로, 관리자가 부재 시 즉각적인 대응을 할 수 없다는 치명적인 단점이 있다. 특히, 고장이나 사고로 엘리베이터가 멈추는 경우를 대비하여 비상통화장치를 의무적으로 설치하고 있지만, 이 역시도 통화 연결이 잘 되지 않는 경우가 많다. 따라서 엘리베이터에 갇힌 승객들은 여러 번의 비상통화장치 버튼을 눌러야 하며, 엘리베이터 관리 업체가 출동하기까지 오랜 시간을 기다려야 한다.
이러한 기존 엘리베이터 시스템의 한계를 극복하고, 엘리베이터 고장 및 사고에 대해 더욱 즉각적이고 효율적으로 대응하기 위한 IoT 기반의 엘리베이터 모니터링 시스템을 제안하고자 한다.
- Ⅱ. IoT 기반 엘리베이터 모니터링 시스템 제안
IoT (Internet Of Things) 기술은 사람과 사물이 인터넷으로 연결되는 시스템으로, 기기에 부착된 센서를 통해 얻은 데이터를 수집, 저장, 분석할 수 있는 정보통신기술을 뜻한다. 엘리베이터에 IoT 기술을 접목시킬 경우, 기존 엘리베이터 시스템에 비해 더욱 빠르고 효율적으로 엘리베이터를 모니터링할 수 있다.
IoT 기반 엘리베이터 모니터링 시스템은, 엘리베이터와 관리자의 PC 및 스마트폰을 인터넷으로 연결하여, 엘리베이터 사고 및 고장에 대한 정보 및 비상통화장치에 대한 정보를 즉각적으로 전달한다.담당자의 PC뿐만 아니라 담당자의 스마트폰으로 즉시 알림이 가기 때문에, 관리자 부재로 인한 즉각 대응의 한계를 극복할 수 있다.
IoT 기반 엘리베이터 모니터링 시스템의 상세 구성도는 다음 그림과 같다.? 구현하고자 하는 엘리베이터 모니터링은 크게 두 가지로, 센서를 통한 데이터 수집과 비상통화 연결 여부 데이터 수집으로 이루어진다. 엘리베이터에 부착된 각종 센서를 통해 엘리베이터 내 화재, 지진, 정전 등의 사고를 24시간 감지한다. 만약 센서로 데이터를 수집하는 과정에서 사고가 감지되면 이를 즉각 전달한다. 비상통화의 경우, 승객이 비상통화장치 버튼을 누른 경우 이를 감지하고, 관리자에게 엘리베이터 내 비상상황이 발생했음을 즉각 전달한다. 이렇게 수집된 데이터는 관리자에게 즉시 전달된다. 이더넷 네트워킹을 통해 관리자의 PC에, 와이파이를 통해 관리자의 휴대폰에 전달된다. 이때 관리자는 스마트폰 어플리케이션을 통해서 고장 및 사고 상태를 24시간 확인할 수 있다. 또한, 고장 및 사고 발생 시 관리자의 휴대폰에는 소리와 함께 푸시 알림이 뜨게 하여 관리자가 즉각적으로 확인할 수 있도록 한다.
IoT Elevator monitoring system
해당 시스템 구현에 사용되는 구성 요소는 다음과 같다.
구분 |
요소 및 동작방식 |
엘리베이터 제어 보드 |
W5100S-EVB-Pico |
비상 호출 버튼 |
택트스위치 4핀 DM 626 |
화재 감지 |
불꽃 감지 적외선 센서 모듈 DOIT-M005, 연기 감지 센서 모듈 MQ2 |
지진 감지 |
디지털 진동 센서 모듈 SW-420 |
정전 감지 |
디지털 조도 센서 모듈 BH1750 |
관리자 PC |
Ithernet network |
관리자 스마트폰 |
Wifi network |
라즈베리파이 피코(Raspberry Pi Pico)는 기존의 라즈베리 파이에 MPU인 RP4020이 실장된 보드로 마이크로 컨트롤러(Micro Controller)를 이용한 응용 분야의 파이라고 할 수 있다. 라즈베리파이 피코는 133 MHz로 동작하는 듀얼 코어 ARM(ARM Cortex-M0), 264KB의 메모리(RAM), DMA 컨트롤러, 전용 QSPI 버스를 통해 최대 16MB까지 지원하는 오프 칩 플래시 메모리 등을 내장하고 있다. 기존의 라즈베리파이와 달리 라즈베리파이 피코는 GPIO 제어에 특화되어 있는데, 다용도 입출력(GPIO)이 가능한 GPIO 핀은 30개이고, 그중에서 4개는 아날로그 입력을 지원한다. 아울러 범용 비동기화 송수신(UART), 직렬 주변기기 인터페이스(SPI) 컨트롤러, I2C 컨트롤러를 탑재하고 있다. USB 1.1 컨트롤러를 내장하고 있고, UF2를 지원하는 USB 대용량 저장 장치 부팅 모드를 제공한다. 개발언어로는 C와 마이크로 파이썬을 지원한다.
우리가 사용할 W5100S-EVB-Pico는 라즈베리파이 피코에 Ethernet이 빌트인 되어 나온 개발보드로 WIZnet Ethernet HAT과 라즈베리파이 피코 보드가 하나의 보드로 합쳐진 보드라고 보면 된다. W5100S-EVB-Pico는 라즈베리파이 피코 MCU인 RP2040을 이용하여 라즈베리파이 피코와 핀맵을 동일하게 만든 개발보드이기 때문에 라즈베리파이 피코에서 지원되는 플랫폼이나 라이브러리를 그대로 사용 가능하다. 또한, 이더넷 기능과 RJ45(이더넷 포트)도 내장되어 있기 때문에, 별도의 회로구성 없이 Ethernet을 사용할 수 있다.
센서는 라즈베리파이 피코와 연결한 후 엘리베이터 내부의 환경을 계속해서 감시하고 특정 상황에서 정보가 변경되었을 때 W5100S-EVB-Pico 보드로 정보가 전달된다. 이때 웹 서버로 센서 정보가 함께 전송된다. 엘리베이터와 연결되어 있는 스마트폰 앱으로 알림이 전달되어 관리자가 엘리베이터의 상황을 실시간으로 확인할 수 있다.
- 엘리베이터 고장 및 사고 상황 감지 기능 구현
엘리베이터 안에서 비상 호출 버튼을 누를 시 관리자의 스마트폰 앱으로 푸쉬알림이 전달되도록 하기 위해 택트스위치 4핀(DM 626)을 사용한다. 택트 스위치의 4개의 다리는 2개씩 서로 연결되어 있는데 전압이 높은 부분(3.3V)을 한 쌍의 다리에 연결하고, 전압이 낮은 부분(GPIO 핀)을 나머지 한 쌍의 다리에 연결한다면 버튼을 누르지 않은 상태에서는 두 쌍의 다리가 연결되어 있지 않아 전기가 흐르지 않다가 버튼을 누르면 전압이 높은 부분에서 전압이 낮은 부분 쪽으로 전기가 흐르게 된다.
- 1.2 엘리베이터 고장 및 사고 센서 모니터링
엘리베이터 내 각종 센서를 이용하여 고장 및 사고 상황을 감지한다. 엘리베이터에서 발생할 수 있는 다양한 고장 및 사고 상황 중에서 화재, 지진, 정전 상황을 선택하여 기능을 구현하고자 한다.
화재를 감지하는 센서로는 불꽃 감지 적외선 센서모듈과 가스감지센서를 사용한다.
불꽃 감지 적외선 센서 모듈 (DOIT-M005)은 적외선 LED를 이용하여 화염이 났을 때 발생하는 적외선 파장의 범위를 기준으로 화염 발생 여부를 측정한다. 고감도 IR 수신기, 전원 공급 표시등, 비교기 출력 표시등이 있고 AO, 실시간 서미스터 전압 신호 출력이 가능하며 DO, 하이/로우 전기 레벨 신호 출력이 가능하다. 센서에서 출력해주는 값을 GPIO핀을 이용하여 디지털 신호로 데이터를 읽는다. 화염이 감지되면 0, 그렇지 않으면 1을 되돌린다.
연기감지센서(MQ2)는 LPG, 부탄가스, 프로판가스, 메탄가스, 알코올, 수소가스, 연기 등의 가연성 가스를 감지할 수 있는 센서이다. 가연성 가스가 센서의 표면과 접촉할 때 산화하는 과정에서 열이 발생하고 이에 따라 온도가 증가하는 것을 이용하여 감지하는 방식이다. 매우 높은 민감도와 빠른 반응시간을 가지고 있고 디지털 출력과 아날로그 출력으로 특정 가스 농도에 ON/OFF 기능이나 가스 농도 자체를 얻을 수 있다. VCC, GND, DO(Digital Out), AO(Analog Out) 4개의 핀이 있다. 디지털 신호 값을 원할 경우 DO에, 아날로그 신호 값을 사용하려면 AO에 연결한다. 이 두 센서는 엘리베이터 내부 및 외부에서 화재가 발생했을 경우 디지털 신호 값을 출력한다.
지진을 감지하기 위해서는 디지털 진동센서(SW-420)를 이용한다. 이는 진동감지부 내에 금속단자가 들어 있어 이 단자가 움직이면 디지털 신호를 발생시키는 센서이다. 센서를 흔들어 보면 금속 단자가 굴러가는 소리를 들을 수 있다. 디지털 센서로 VCC, GND, DO의 순서로 핀이 구성되어 있으며 DO핀을 원하는 GPIO핀에 연결하면 된다. 진동이 1번 감지되었는데 알람이 발생하면 실효성이 떨어지므로 시간 주기를 정하여 그 시간 내에 진동이 특정 횟수 이상 감지되면 알림이 가도록 한다.
엘리베이터 내 정전상황은 디지털 조도 센서(BH1750)를 사용한다. 16비트 AD컨버터가 내장되어 있어 디지털 신호를 바로 출력할 수 있어 아날로그를 디지털로 변환하여주는 복잡한 계산이 필요가 없다. 측정된 조도값은 Lux값으로 바로 출력된다. I2C 인터페이스를 통해 인터페이스할 수 있다. 측정된 조도값이 정해둔 Lux값을 넘지 않을 경우 엘리베이터가 정전으로 인식하여 웹서버에 알림이 가도록 한다.
- 웹서버 구현
웹 브라우저(web browser)를 통해 관리자가 엘리베이터 내 비상 호출 버튼 눌림 및 비상 상황 발생을 확인할 수 있도록 웹서버를 구현하고자 한다. 과정은 다음과 같다. 먼저, 라즈베리 파이 피코를 작동시키기 위해 아두이노용 앱에서 Pico 보드를 설정한 뒤, C와 유사한 아두이노용 언어로 코딩하여 전송한다. DHCP(Dynamic Host Configuration Protocol)을 통해 아두이노 IP를 할당받는다. 아두이노와 같은 네트워크에 접속해 있는 PC의 웹 브라우저에서 아두이노 IP에 접속하여 아두이노에서 제공하는 웹 페이지를 사용할 수 있도록 한다. 아두이노 웹 서버를 구축하여 웹 페이지에 실시간으로 센서값을 확인한다. 소프트웨어와 관련 개발 환경은 다음 표2와 같다.
구분 |
항목 |
적용내역 |
IDE |
Arduino |
아두이노 소스 컴파일 및
업로드 |
개발도구 |
Arduino |
아두이노 소스 컴파일 및
업로드 |
개발언어 |
html |
웹 페이지 생성 |
센서는 라즈베리파이 피코와 연결 설정을 완료한 이후 엘리베이터의 상태를 계속해서 감시한다. 이후 엘리베이터의 상태 정보가 변경되었다면 라즈베리파이 피코 보드로 정보가 전달되고 라즈베리파이 피코는 서버로 센서값 정보를 전송한다. 웹 브라우저와 스마트폰 앱에서 정보를 확인할 수 있다.
이더넷에 연결된 클라이언트에 직접 html 소스코드를 전달해주면 해당 정보를 클라이언트에서 처리하는 방법으로 웹 서버를 구현한다. 웹 페이지에서 Blackout detection이 HIGH임을 통해 엘리베이터에 정전이 발생했음을 알 수 있다. 엘리베이터 속 비상 호출 버튼의 눌림 유무와 각종 센서(불꽃 감지 적외선 센서, 연기 감지 센서, 디지털 진동 센서, 디지털 조도 센서)의 측정값에 따라 HIGH/LOW 값이 출력된다.
- 관리자 스마트폰
관리자용 어플은 web server에 전송된 비상호출 버튼, 위급 상황 발생에 관한 정보를 휴대폰으로 확인할 수 있도록 하여 관리자가 어디에서나 재난 정보를 받을 수 있도록 한다. 관리자는 이를 확인하고 엘리베이터를 긴급 중지시키는 등의 제어 명령을 내릴 수 있다.
- 3.1 개발 도구
- 3.1.1 App Inventor 2
App Inventor는 안드로이드용 앱 개발을 위한 전용 tool으로써 구글과 MIT가 공동으로 개발하여 MIT에서 web service로 제공되고 있는 개발 도구이자 언어이다. 이 Tool으로 프로그래밍 및 앱 제작을 진행하여 엘리베이터 관리자용 어플리케이션을 만드는 것이 목표이다. 관리자는 이 어플을 통해 엘리베이터의 정보를 확인하고, 긴급상황이 발생했을 시 어플을 이용해 신속히 엘리베이터를 제어할 수 있다.
App Inventor 2 웹서버를 이용하여 웹서버 상에서 어플을 제작한 후, 안드로이드에 MIT AI2 Companion 어플을 설치해 웹서버와 연동하면 웹서버에서 만든 어플이 안드로이드에 설치되게 된다. 연동 방법은 다음과 같다. 상단 메뉴의 connect탭에서 AI companion을 선택하면 connect to companion 창이 열리는데, 이 창을 통해 안드로이드 기기에서 QR코드를 인식함으로써 웹페이지와 안드로이드가 연결되게 된다. 이때 컴퓨터와 안드로이드 기기는 동일 Wifi 환경에 존재하는 것에 주의해야 한다. 결론적으로, App Inventor 2 웹서버를 이용하여 어플을 개발한 후, MIT A12 Companion을 안드로이드 기기에 설치함으로써 관리자용 어플 제작을 완료하고자 한다.
관리자용 어플 화면에는 엘리베이터 ID와 각종 센서를 통해 수집한 데이터들이 표현된다. 수집된 데이터를 통해 사고가 감지될 시 이를 화면에 표현한다.
라즈베리파이 피코 보드에서 수집한 정보를 관리자용 어플로 전달하는 기능을 구현하고자 한다. 관리자용 어플은 일정 시간마다 clock을 반복하여 각 센서에 대한 정보를 불러온다. 비상통화버튼의 경우, 만약 clock이 불러온 정보가 0이면 어플 창에 “들어온 민원 없음” 이라고 출력하게 된다. 반대로 1의 정보가 button에서 들어온다면, “해당 엘리베이터에 민원이 들어옴” 이라고 출력하게 된다. 모든 센서들은 논리값 0 혹은 1을 가지기 때문에 나머지 센서들도 이와 같은 방식으로 유사하게 구현한다.
라즈베리 파이 피코 보드에서 센서 정보를 전달하고, 센서의 High 신호가 들어올때마다 사용자의 휴대폰에 푸시 알림이 오는 push notification 기능을 구현하고자 한다. 푸시 알림과 함께 소리 알림도 나도록 하여 관리자가 알림을 확인하지 못하는 경우를 최소화하고자 한다.
카메라 등과 같은 모니터링 방식과 관리자 부재 시 즉각 대응이 어렵다는 기존의 엘리베이터 시스템의 한계를 극복하고자 IoT 기반 엘리베이터 모니터링 시스템을 고안하였다. 해당 시스템은 센서를 통해 엘리베이터 상황에 대한 정보를 수집하고, 이를 웹서버로 전달하여 관리자의 PC와 스마트폰으로 전달한다. W5100S-EVB-Pico 보드를 사용하여 화재, 지진, 정전에 대한 상황과 비상통화버튼 사용 유무에 대한 정보를 수집한다. 보드 내에 내장되어 있는 ithernet HAT을 이용하여 웹서버로 전달하고, 이를 관리자 PC와 스마트폰에 표현한다.
해당 IoT 기반 엘리베이터 시스템은 기존 엘리베이터 시스템보다 빠르고, 효율적인 모니터링이 가능하다. 센서를 통해 얻은 데이터를 24시간 즉각 전달하면서, 빠르게 위급상황에 대비할 수 있다. 또한, 승객이 비상통화장치 버튼을 누르기만 해도, 해당 정보가 관리자에게 전달되어 비상통화 연결이 어렵다는 단점을 극복할 수 있다. 특히, 엘리베이터 내 사고 및 고장 정보가 관리자의 푸시 알림으로 전달되어, 관리자 부재로 인한 대응 미흡을 최소화하면서 즉각적인 대응이 가능할 것으로 보인다.