DOI QR코드

DOI QR Code

WeMos와 유량 센서를 이용한 유속 모니터링 및 경보 알림 시스템 구현

Implementation of fluid flow measuring and warning alarm system using an WeMos and an fluid flow sensor

  • 유문성 (상지대학교 컴퓨터공학과)
  • 투고 : 2018.11.11
  • 심사 : 2019.02.08
  • 발행 : 2019.02.28

초록

여러 분야에서 유량 및 유속의 측정이 필요하다. 흔히 가정에서 보는 수도계량기가 있으며, 상하수도 플랜트, 석유화학 산업 등에서 유량계가 사용되고 있다. 유속을 실시간으로 모니터링하고 유속 이상 시 즉시 알리는 시스템이 필요하다. 최근 사물인터넷의 발달로 이런 장치를 저비용으로 구축할 수 있게 되었다. WeMos는 미니 와이파이 사물인터넷(IoT) 모듈로 Arduino IDE로 프로그래밍 할 수 있다. 유량 센서는 통과하는 유량에 비례하는 디지털 펄스를 출력한다. 본 논문에서는 유속 감지 기능을 WeMos의 사물인터넷 구현기술에 적용시켜 시스템을 제작하였다. 시스템이 작동하면 WeMos는 유량센서의 값을 받아들여 유속을 계산하고 그 값을 서버에 JSON방식으로 보낸다. 서버에서는 그래프로 유속을 시각화하여 스마트폰으로 유속 값을 모니터링하게 한다. 그리고 유속 이상 발생시 Pushbullet을 이용하여 스마트폰으로 즉시 경보 메시지를 보내는 시스템을 구현하였다.

Measurement of flow rate is required in various fields. Water meters are often used at home, and flow meters are used in water and sewage plants, petrochemical industries and so on.. A system is needed to monitor the flow rate in real time and notify immediately when flow rate is abnormal. Recently, with the development of the IoT it is possible to construct such devices at low cost. WeMos can be programmed with Arduino IDE as a mini wifii IoT module. The flow sensor can output a digital pulse proportional to the flow rate. In this paper, we developed the flow monitoring and warning system using WeMos and IoT technology. When the system operates, it calculates the flow rate, sends the value as JSON format to the server, monitors the flow rate as graph from the remote with the smartphone. We also implement the system to promptly send alert message to the smart phone using Pushbullet when the flow rate is abnormal.

키워드

Ⅰ. 서론

광범위한 분야에서 유량의 측정이 필요하다. 흔히 가정에서 보는 계량 목적의 수도계량기, 가스계량기가 있으며, 상하수도 플랜트에서의 수 처리 목적으로 사용되는 전자유량계 혹은 초음파 유량계, 석유화학 산업이나 공장에서 유체의 정밀한 계량 및 공정의 제어를 목적으로 사용되는 질량유량계 혹은 용적식 유량계가 있다. 또한 반도체 산업이나 기타 가스정제 산업 등에서 초순도 가스의 측정을 목적으로 사용되는 열식 질량유량계 혹은 질량유량 조절계(MFC-Mass Flow Controller)등 다양한 목적으로 사용되고 있다

최근에 사물인터넷의 발달로 유량 및 유속을 저렴한 가격으로 쉽게 구축할 수 있게 되었다. 사물인터넷은 사물지능통신, 사물통신, M2M (Machine to Machine), IoT(Internet of Things) 등 다양한 형태로 표현되고 있다. 기존의 정의에 따르면 사물인터넷이란 사람의 직접적인 개입 없이 사물이 스스로 다른 사물 혹은 서버와 정보를 교환하는 것이다. 현재 사물인터넷 기술이 주목받고 있으며 이를 구현하는 데 있어서 WeMos는 적합한 기능을 가지고 있다.[1]-[5]

본 논문에서는 유속 감지 기능을 WeMos의 사물인터넷 구현기술에 적용시켜 시스템을 제작하였다. 또한 기존의 유량감지기가 유속 이상시 적절하게 대응하기 어려 웠던 문제점을 해결하였다. 특히 기존 시스템은 사용자가 지역을 벗어나 있을 경우에는 발생한 이상을 인식하는데 상당한 시간이 소요되었다. 이 연구의 목적은 WeMos와 유량센서를 이용하여 유속을 원격으로 모니터링하고 이상 발생 시 즉시 경보를 알리는 시스템을 구축하는 것이다

본 논문에서 제안한 시스템은 유량센서와 와이파이 통신이 가능한 WeMos로 구성된다. 유량센서로 측정한 펄스 값을 이용하여 유속을 구하고 시리얼 모니터에서 모니터링하고 서버에 측정값을 JSON방식으로 보내고 그 데이터를 이용 그래프로 만들어 사용자의 스마트폰에서 언제 어디서나 모니터링할 수 있게 하였다. 유속 이상이 감지되면 이상 발생 정보를 사용자의 스마트폰으로 알림 메시지 형태로 보낼 수 있게 구현하였다.

Ⅱ. 시스템의 하드웨어

WeMos와 유량센서 및 기타 장치로 시스템을 구성하였다.

1. WeMos

WeMos는 와이파이 사물인터넷(IoT) 모듈이다. WeMos mini Pro는 ESP-8266EX 마이크로 컨트롤러를 기반으로 하며 16MB 플래시가 있다. 11개의 GPIO 핀이 있어 IoT사용에 적합하며 Arduino IDE 또는 Nodemcu 로 프로그래밍할 수 있다. micro USB가 있으며, OTA를 사용하여 프로그래밍할 수도 있다. 보드의 한쪽 편에는 ESP8266EX 모듈, 다른 편에는 CH340 직렬 USB칩 및 리셋 버튼과 U.FL 안테나 커넥터가 있다. 또한 Android 및 iPhone과 호환된다. 그림 1은 WeMos mini Pro를 보여주며 이 모듈의 기술적 사양은 표 1과 같다.[6],[7]

OTNBBE_2019_v19n1_139_f0001.png 이미지

그림 1. 위모스 미니 프로

Fig. 1. WeMos mini pro

표 1. WeMos mini pro의 기술적 사양

Table 1. Technical Specification of WeMos mini pro

OTNBBE_2019_v19n1_139_t0001.png 이미지

WeMos는 저가형이지만 마이크로 컨트롤러의 기능을 모두 갖추고 있어 사물인터넷 기술을 접목한 시스템을 구현하기에 최적화되어 있다. 하드웨어 제어를 위한 입출력 핀을 내장하고 있으므로 추가적인 장비 없이도 기본적인 하드웨어 제어가 가능하다.

2. 유량센서

유량 센서는 통과하는 유량에 비례하는 디지털 펄스를 출력하며, 마이크로 프로세서를 사용하여 물 사용량 모니터링 및 사용량, 저장량을 계산할 수 있다.

본 연구에서 사용할 유량 센서는 Hall-Effect 효과를 이용한 YF-S201 유량 센서이다. 이 센서는 빨강(VCC, 5-24VDC), 검정(GND), 노랑(펄스출력)의 세 가지 연결선을 가지고 있다. 유량 센서는 물이 지나가는 통로에 설치되게 된다. 센서 내부에는 휠이 있어 물이 흘러감에 따라 회전하게 되고 이 휠에는 홀센서가 장착되어 있어 휠이 한 바퀴를 돌 때마다 펄스를 출력하게 된다. 센서의 출력에서 펄스를 세는 것으로 우리는 쉽게 유량의 속도를 구할 수 있다.[8],[9]

OTNBBE_2019_v19n1_139_f0002.png 이미지

그림 2. YF-S201 유량센서

Fig. 2. YF-s201 Flow sensor

3. 시스템 하드웨어 구축

그림 3은 유량센서와 WeMos를 연결하는 회로도이다. 유량센서의 파워선은 5V핀에, 유량센서의 접지선은 GND핀에 신호선은 D3선에 연결하였다.

OTNBBE_2019_v19n1_139_f0003.png 이미지

그림 3. 시스템 회로도

Fig. 3. wiring diagram of the system

유량센서에 물을 흘려보내기 위하여 크기에 맞는 깔때기와 물 받을 비커를 사용하였다. 전체 시스템 모습은 그림 4에 나타냈다.

OTNBBE_2019_v19n1_139_f0004.png 이미지

그림 4. 시스템 구성도

Fig. 4. configuration of the whole system

Ⅳ. 시스템의 소프트웨어

1. WeMos 프로그램

WeMos 프로그램은 아두이노 IDE를 사용하여 스케치를 작성하였다. 프로그램은 세 단계, 즉 유속측정 단계, 유속 모니터링 단계, 유속 이상시 경고 단계로 이루어진다.

먼저 유속측정 단계에서는 유량센서를 이용하여 유량을 측정하여 시간당 유속을 계산한다. YF-S201 유량 센서는 펄스(Hz) = 7.5*Q (여기서 Q는 유속(리터/분))이다.[7],[8] 이를 시간으로 단위를 바꾸면, 유속(리터/시간) = (펄스 주파수 x 60분) /7.5이 된다.

두 번 째 유속 모니터링 단계에서는 측정된 유속값을 시리얼 모니터에 출력하고 그 값을 WeMos의 와이파이 기능을 이용하여 서버에 JSON 형식으로 보낸다.

세 번째 유속 이상시 Pushbullet 서버로 경고 메시지를 보내 사용자의 스마트폰에서 받아볼 수 있게 하였다. Pushbullet은 메시지 발송 서비스로서 독자적인 서버를 구축하지 않고도 사용자들에게 메시지를 발송할 수 있는 서버다.[10] 유속이 150 이상이면 알림 메시지를 보내도록 설정하였다. Pushbullet은 스마트폰에 앱을 설치하여야 하며 고유의 APIKey가 필요하다.

2. 서버 소프트웨어

유량 센서 정보를 수신하고 클라이언트의 요청에 상응하는 값을 줄 수 있도록 웹서버를 구축하였다. 서버는 IBM X3500 시스템에 유분투 환경에서 Flask 프레임워크를 사용하고 웹 프로그래밍은 파이썬 언어, Javascript와 HTML을 이용하여 구현하였다. 서버는 JSON 데이터 형태로 센서 정보를 수신하고 요청에 대한 응답을 돌려준다. JSON (JavaScript Standard Object Notation)은 자바 스크립트의 표준 객체 표기법으로 문법이 매우 간단하여 XML 데이터에 비해 용량이 매우 적고 더 빠르게 파싱을 제공한다.[11],[12] WeMos는 PC에 비해 매우 제한된 환경을 가지므로 데이터와 처리가 간편한 JSON 데이터를 이용하였다. WeMos에서 보내온 데이터를 파싱한 후 측정값을 기반으로 구글 차트를 이용하여 그래프를 그려 PC나 스마트폰의 웹브라우저에서 사용자가 서버에 접속하면 항상 실시간으로 유속을 모니터링할 수 있게 하였다.

Ⅴ. 실험 및 결과

측정을 5초 단위로 하였다. 유속 측정 결과가 WeMos 에 연결된 시리얼 모니터에 그림 5와 같이 JSON방식으로 출력된다. 유속이 150 이하일 때는 유속만 출력하며 그 이상 시에는 유속 이상으로 판별하여 Pushbullet 서버에 보낼 경보 내용도 출력한다.

OTNBBE_2019_v19n1_139_f0005.png 이미지

그림 5. 시리얼 모니터에 보여지는 유속 측정 결과

Fig. 5. flow measured value shown in serial monitor

시리얼 모니터에서 확인된 유속은 서버로 JSON방식으로 보내지고 그 측정값을 그래프 형태로 나타내어 스마트폰에서 그림 6과 같이 모니터링할 수 있다.

OTNBBE_2019_v19n1_139_f0006.png 이미지

그림 6. 스마트폰에 보여지는 유속 모니터링 그래프

Fig. 6. fluid flow monitoring graph on smartphone

유속에 이상이 생기면 Pushbullet 서버를 이용하여 스마트폰에 경보 메시지를 보내는데 스마트폰에서 보여지는 유속 이상 알림 문자 화면을 그림 7에 나타냈다.

OTNBBE_2019_v19n1_139_f0007.png 이미지

그림 7. Pushbullet에 의한 유속 이상 알림 문자 메시지

Fig. 7. alarm message from Pushbullet

그림 5, 그림 6과 그림 7에서 유속이 이상 없을 때는 유속만 나타내고 유속에 이상이 있으면 유속과 경보 메시지가 나타내는 게 일치함을 보여준다.

Ⅳ. 결론

본 논문에서는 WeMos와 유량센서를 이용하여 유속 값을 측정하여 사용자가 원격에서 스마트폰으로 유속값을 실시간으로 그래프로 모니터링하고 이상이 생기면 경고 메시지를 받을 수 있는 시스템을 제안하였다. 그러기 위하여 사물인터넷 기반 서비스 시스템 구현이 용이한 WeMos를 이용하고 자체 서버와 Pushbullet 서버를 이용하여 시스템을 개발하였다. 와이파이 통신을 이용하여 개발된 서버와 접속하고 JSON방식으로 데이터를 보내도록 하였다.

서버에서는 받은 데이터를 디코딩하고 그래프로 표현하여 스마트폰 등의 클라이언트에 보내준다. 또한 유속 이상시 Pushbullet 서버를 이용하여 경고 메시지를 보낸다.

실험 결과 WeMos에서 시리얼 모니터링으로 측정된 값, 서버에서 출력된 그래프, 경고 메시지가 서로 일치됨을 확인하였다.

본 연구를 통해서 유량 센서값을 외부에서 모니터링하고 경보 알림 메시지를 받을 수 있는 기본적인 시스템을 구축하였다. 향후 유량 센서뿐만 아니라 다른 센서들에게도 적용할 수 있을 것으로 사료된다.

참고문헌

  1. Jayavardhana Gubbi a, Rajkumar Buyya b, Slaven Marusic, Marimuthu and Palaniswami, "Internet of Things (IoT): A vision, architectural elements, and future directions", Future Generation Computer Systems, Volume 29, Issue 7, pp. 1645-1660, September 2013. https://doi.org/10.1016/j.future.2013.01.010
  2. Bin Guo a, Daqing Zhang, Zhu Wang, Zhiwen Yu and Xingshe Zhou, "Opportunistic IoT: Exploring the harmonious interaction between human and the internet of things", Journal of Network and Computer Applications, Volume 36, Issue 6, Pages 1531-1539, November 2013. https://doi.org/10.1016/j.jnca.2012.12.028
  3. Joo-Bong Park, Seung-Jung Shin, "Propose of Elevator System for Effective Management based on IOT", The Journal of The Institute of Internet, Broadcasting and CommunicationVOL. 14 NO. 6, pp.163-167, December 2014. DOI: http://dx.doi.org/10.7236/JIIBC.2014.14.6.163
  4. Kyoon-Tai Kim. "Development of a Mountainous Area Monitoring System based on IoT Technology", Journal of the Korea Academia-Industrial cooperation Society(JKAIS), Volume 18. Issue 3, 437-446, March 2017. DOI: https://doi.org/10.5762/KAIS.2017.18.3.437
  5. Jinho Yoo. "The IoT Implementation Technology for e-Health Device Connection", The Journal of KIIECT, Vol. 8, No. 5, pp. 394-399, May 2015. DOI: https://doi.org/10.17661/jkiiect.2015.8.5.394
  6. WeMos Home Page - https://www.WeMos.cc/
  7. https://en.wikipedia.org/wiki/ESP8266
  8. https://wiki.eprolabs.com/index.php?title=Flow_Sensor_YF-S201
  9. http://www.hobbytronics.co.uk/yf-s201-water-flow-meter
  10. Pushbullet Home Page -https://www.Pushbullet.com/
  11. JSON Home Page-http://json.org/
  12. Bassett Lindsay,"Introduction to JavaScript Object Notation : A To-The-Point Guide to Json", O'Reilly Media, August, 2015