DOI QR코드

DOI QR Code

Smart Safety Helmet Using Arduino

아두이노를 이용한 스마트 안전모

  • 이동건 (한국산업기술대학교 컴퓨터공학과) ;
  • 김원범 (한국산업기술대학교 컴퓨터공학과) ;
  • 김중수 (한국산업기술대학교 컴퓨터공학과) ;
  • 임상근 (한국산업기술대학교 컴퓨터공학과) ;
  • 공기석 (한국산업기술대학교 컴퓨터공학과)
  • Received : 2018.10.04
  • Accepted : 2019.02.08
  • Published : 2019.02.28

Abstract

Major causes of industrial accidents include falls and gas leak. The existing safety helmet and smart device combination products are focused on convenience, so the functions to prevent such accidents are insufficient. We developed a smart helmet focusing on fall accident detection and gas leak detection. We also developed management system to manage workers efficiently. Its core function is to detect dangerous conditions of employees, to communicate with managers and to confirm the situations of workers. The effectiveness of the combustible gas measurement capability was verified through experiments. However, since a significant amount of power consumption is founded due to continuous operation of the board and the sensor, countermeasures such as replacing with a large capacity battery are required.

산업 재해의 주요 원인에는 추락사고, 가스 누출 등이 있다. 기존의 안전모와 스마트 디바이스 결합 제품들은 편의성에 초점을 맞춰져 있어 위와 같은 사고를 예방하기 위한 기능이 미흡하다. 본 논문에서는 추락사고 인지와 가스 누출 감지 기능에 중점을 둔 스마트 안전모 개발을 다루었다. 또한 효율적으로 근로자를 관리할 수 있는 관리 시스템을 개발하였다. 이 시스템의 핵심 기능은 근로자의 위험 상태를 감지하여 관리자에게 전달하고 근로자의 상태를 확인하는 것이다. 실험을 통해 가연성 가스 측정 능력의 효용성을 검증하였다. 하지만 보드와 센서의 지속적인 동작으로 인해 상당한 전력 소모가 발견됨에 따라 대용량 배터리로 교체하는 등의 대응 방안이 요구된다는 점도 발견하였다.

Keywords

Ⅰ. 서론

OECD 주요 국가 중 우리나라는 산업 재해 사망률이 가장 높다.[1] 최근 산업 현장에서 일어나는 사고는 현저히 줄어들었지만 뉴스나 기사에서 산업 현장에서의 사고가 보인다. 또한 산업재해로 인한 손실액이 매년 증가하고 있다.[2]

산업재해는 추락, 충돌, 협착, 화재 폭발, 교통사고 순으로 많이 발생 되고 있다. 2018년도 현재 다양한 예방책도 만들어지고 안전 교육도 많이 하고 있지만 근로자의 상태파악이 잘되지 않고 있고 위험 상황 또한 인지하지 못하고 있는 것이 현실이다.

본 논문에서는, 근로자를 관리하고 위험 상황을 인지하여 알려주기 위해 안전모에 Arduino Orange Board [3]를 부착하고, 여기에 위험 상황을 알릴 수 있게 각종 센서를 보드에 연결한 제품의 개발을 다룬다.

입력 센서에는 초음파 센서, 가속도 센서, 유해물질 감지 센서가 있다. 초음파 센서와 가속도 센서는 근로자의 추락 의심 상황을 식별하기 위한 용도인데, 초음파 센서는 근로자의 안전모 착용 여부를 판단하기 위해 사용되고, 가속도 센서는 자유낙하를 감지하여 추락하는 상황임을 인지하기 위해 사용된다. 센서로부터 데이터를 취합하여, 추락 상황 감지 시 Google의 모바일 앱 개발 플랫폼인 Firebase[4]에서 제공하는 FCM(Firebase Cloud Messaging)[5] 알림 방식을 사용하여 관리자에게 알림이 가도록 구현하였다.

유해물질 감지 센서는 가연성 기체를 측정하기 위해 사용된다. 일산화탄소 기준 200ppm이 넘어가면 위험 상황으로 판단한다. 이 때 LED 센서를 통해 경고함과 동시에 추락 상황과 같은 방식으로 관리자에게 알림을 전송하며, 이를 확인한 관리자는 FCM을 통해 근로자를 호출할 수 있게 구현하였다.

스마트 안전모를 사용함으로써 낙하사고를 인지하고 유해물질 중독과 폭발을 예방할 수 있는 관리 시스템을 추가로 개발하였다. 본 시스템의 사용자는 근로자와 관리자로 나뉘며 각자의 상황에 맞게 웹과 앱을 사용할 수 있다. 근로자의 위험 상황을 알릴 수 있게 하기 위해서는 핸드폰과 스마트 헬멧이 Bluetooth로 연결[6] 되어 있어야 한다. 추가로 일정 관리, 게시판, 출근부 기능을 이용할 수 있도록 개발하였다. 관리자를 위한 기능으로 근로자의 위치를 알 수 있는 기능, 호출 기능 등을 개발하였다.

본 논문의 구성은 다음과 같다. Ⅱ장에서는 본 논문에 관련된 제품들을 비교 분석하였다. Ⅲ장에서는 스마트 안전모에 대한 설계 및 구현 내용을 기술하였다. Ⅳ장에서는 실험 및 결과를 분석한다. Ⅴ장에서는 연구 결과 및 향후 계획에 대해 설명한다.

Ⅱ. 관련 연구

본 논문에서 참고한 제품들을 아래와 같이 표 1로 정리하였다.

표 1. 관련 제품들

Table 1. Related Products 

OTNBBE_2019_v19n1_77_t0001.png 이미지

3사의 스마트 안전모를 확인해 보았을 때 이들의 장점은, 근로자와의 소통과 정확한 현장 상황 파악이 용이하고 현장 상황 파악 중 각 회사에서 사고가 많이 일어나는 원인을 파악해 가스 감지기, 고전압 등의 센서를 원인에 맞게 부착해 놓았던 점, 그리고 근로자의 빠른 대처가 이루어질 수 있다는 점 등을 들 수 있다.

하지만, 현장의 상황에 따른 알림 기능이 미비했고, 전체적으로 위험 예방 기능이 부족했다. 그래서 본 논문의 스마트 안전모는 산업 재해 원인을 분석해 가장 자주 일어나는 순으로 정리하여 해결책을 제시함으로써 위험 상황에 대비하도록 하였다. 또한, 현장의 정확한 상황파악을 위해 근로자의 위치와 현재 상태 그리고 근로자가 일하고 있는 장소의 상태를 관리자에게 실시간으로 전달할 수 있도록 하였다. 마지막으로 근로자의 위험 상황 대처가 빠르게 이루어져야 하므로 LED와 진동 센서, 부저를 사용하였고, 관리자가 이를 통제할 수 있도록 설계하였다.

Ⅲ. 시스템 설계 및 구현

1. 개발환경

본 논문에서는 아두이노와 안전모를 결합한 스마트 안전모를 개발하고, 이를 이용하여 위험상황 시 알림기능, 웹 지도상에서 근로자의 상태를 시각화하고 손쉽게 호출할 수 있는 기능 등을 개발한다. 표 2과 그림 1은 하드웨어 구성과 안전모의 전체 모습을 보여준다.

표 2. HW 환경

Table 2. Hardware environment 

OTNBBE_2019_v19n1_77_t0002.png 이미지

 

OTNBBE_2019_v19n1_77_f0001.png 이미지

그림 1. 스마트 안전모 구성

Fig. 1. Smart safety helmet configuration 

안전모에 부착된 핵심 하드웨어 부품은 1개의 아두이노 오렌지 보드와 3개의 입력 센서이다. 오렌지 보드는 기존 아두이노 우노(UNO) 보드에 블루투스 통신 기능이 탑재된 제품이다. 이 보드는 각종 입력 센서의 데이터를 블루투스 통신을 통해 모바일 앱과 송수신을 가능하게 해준다. 가속도 센서는 MPU-6050을 사용하였는데 이 제품은 가속도와 자이로센서를 1개의 센서에 모두 포함하고 있는 DOF (Degrees of Freedom) 센서이다. MPU-6050은 I2C (Inter Integrated Circuit) 통신 프로토콜을 통해서 데이터를 추출할 수 있다. 중력가속도를 측정할 수 있는 알고리즘을 적용하여 사용자 추락 시 감지한다. 유해가스 감지 센서는 MQ-9를 사용하였는데 10 – 1000ppm CO(일산화탄소) 범위 까지 감지할 수 있다. 가스 농도를 측정하여 위급상황 시 LED 센서를 통해 경고등을 울린다. 초음파 센서는 HC-SR04를 사용하였는데 이는 거리측정을 통해서 사용자의 안전모 착용 여부를 점검하며 자동 출근부 구성에 사용된다.

안전모 외부의 전면과 후면에는 위험을 인지할 수 있도록 LED 센서를 부착하였으며 후면에는 추가로 유해가스 감지 센서를 부착하였다. 안전모의 내부의 중앙 부분에는 오렌지 보드와 초음파 센서를 부착하였으며 우측 측면 부분에는 가속도 센서를 부착하였다.

소프트웨어 개발 환경은 아래 표 3과 같다.

표 3. SW 개발 환경

Table 3. Software development environment 

OTNBBE_2019_v19n1_77_t0003.png 이미지

2. 하드웨어 및 소프트웨어의 구성

아래 그림 2는 스마트헬멧의 시스템 구성을 나타낸다. 여러 센서들이 연결된 OrangeBLE Board와 사용자의 스마트폰, 데이터의 처리 및 저장 역할을 하는 웹 서버로 구성되어 있으며, OrangeBLE Board는 스마트폰과 Bluetooth 통신을 통해, 스마트폰과 서버는 HTTP 통신을 이용해 데이터를 송수신한다.

OTNBBE_2019_v19n1_77_f0002.png 이미지

그림 2. 시스템 구성도

Fig. 2. System configuration diagram 

아래의 그림 3은 스마트 안전모에 대한 SW 구성도를 나타낸 것이다. 크게 안전 모듈, 정보 관리 모듈, 출근부 모듈, 일정 모듈, 기타 모듈로 5가지의 모듈로 구성된다.

OTNBBE_2019_v19n1_77_f0003.png 이미지

그림 3. 스마트 안전모 SW 구성도

Fig. 3. Smart helmet SW configuration diagram 

3. 안전 기능 및 기타 기능의 설계와 구현

스마트 안전모의 사용자는 근로자와 관리자로 나뉘고 모든 안전 기능은 근로자를 위해 만들어졌다.

안전 기능 중 첫 번째는 위험 가스를 감지할 수 있는 기능이다. 센서를 통해 가연성 가스, CO, 질소의 농도를 알아내어 기준 수치가 넘을 경우 근로자 본인에게 부저 소리가 나며 진동이 울린다. 그리고 관리자에게 근로자의 위험 상태를 알려주며 근로자를 호출할 수 있도록 구현하였다. 시나리오 방식은 아래의 그림 4와 같다.

OTNBBE_2019_v19n1_77_f0004.png 이미지

그림 4. 유해가스 감지 센서를 이용한 가스 알림 기능

Fig. 4. Gas notification function using harmful gas sensor 

두 번째는 추락 감지 기능이다. 추락 감지를 위해 안전모 착용 모듈을 만들어 착용 여부를 확인한 후, 조건이 충족되었을 때 알림이 발생하도록 한다. 아래의 그림 5와 같이 근로자가 안전모를 쓰고 있는 상태에서 추락하게 될 때 이를 인지하여 관리자에게 알려주도록 구현하였다.

OTNBBE_2019_v19n1_77_f0005.png 이미지

그림 5. 가속도 센서를 이용한 추락 알림 기능

Fig. 5. Fall notice function using acceleration sensor 

추락사고 판단을 위한 알고리즘은 아래 그림 6과 같다. 알고리즘에서 사용하는 변수는 다음 표 4와 같다. 추락 감지알고리즘은 안전모를 쓰고 있을 때만 작동한다. 초음파 센서와 사용자 머리 간의 거리가 10cm 내 일 경우, 안전모 착용으로 가정하여 추락 알림의 첫 번째 발생 조건으로 한다. 그리고 자유 낙하를 판단하기 위해 자이로 센서를 사용하여 중력 가속도 변화를 측정한다.

OTNBBE_2019_v19n1_77_f0006.png 이미지

그림 6. 추락 감지 알고리즘

Fig. 6. Fall detection algorithm 

표 4. 알고리즘의 변수

Table 4. Variable names of algorithm 

OTNBBE_2019_v19n1_77_t0004.png 이미지

안전 기능을 제외한 기타 기능은 크게 일정 관리 기능, 출근부 기능, 근로자 호출 기능으로 나뉜다. 먼저 출근부 기능은 초음파 센서를 이용해 근로자의 출근 여부를 확인하고 출근 시간과 퇴근 시간을 자동으로 입력해 주는 기능이다. 일정 관리 기능은 공사 일정에 맞춰 개인적인 일정을 저장할 수 있게 해주는 기능이다. 마지막으로 근로자 호출 기능은 관리자가 근로자가 어디 있든 근로자의 안전모 진동을 통해 호출할 수 있는 기능이다.

근로자 앱에서 OrangeBLE Board에 연결된 센서를 통해 수집한 데이터를 스마트폰에 송수신하는 기능을 구현하였으며, 추락, 가스 노출 등 위험 상황 시 관리자 앱으로의 메시지 전송 기능과 부가 기능으로 근로자 전용 게시판, 일정 관리 등의 기능을 구현하였다.

관리자 앱은 근로자의 위험 상황 시 발송된 메시지를 수신하여 안드로이드의 Alert Dialog[13]를 통해 경고해주는 기능과 근로자 스마트폰의 GPS 데이터 기반의 근로자 위치 파악, Firebase Cloud Message를 이용한 근로자 호출 기능을 구현하였으며 관리자 전용 게시판, 일정 관리 등의 부가 기능 등도 구현하였다.

아래 그림 7은 관리자 앱의 근로자 위험 알림을 확인할 수 있는 화면과 기준치가 넘는 가스 노출 시 위험 신호가 관리자 앱에 AlertDialog 형태로 표시되는 것을 나타낸다. 아래 그림 8은 근로자의 상태 조회 화면이다.

OTNBBE_2019_v19n1_77_f0007.png 이미지

그림 7. 근로자 위험 알림 확인

Fig. 7. Check for employee risk alert 

OTNBBE_2019_v19n1_77_f0008.png 이미지

그림 8. 근로자 상태 조회 화면

Fig. 8. View of employee status 

근로자의 스마트폰으로부터 들어온 센서 값들을 DB에 저장하기 위해 MySQL과 연동하였으며 JSP를 이용하여 관리자에게 위험 메시지 전송을 위한 페이지 요청이나 근로자 호출을 위한 관리자 스마트폰의 페이지 요청을 구현하였다. 또한 스마트폰 앱의 호출, 일정 관리, 게시판 등의 기능을 PC에서도 이용 할 수 있도록 별도의 웹페이지를 구현하였다.

Ⅳ. 실험 및 결과

본 논문에서는 CO 농도 데이터를 정확하게 처리하기 위한 CO 농도변화 실험, 가속도 센서의 각축 변화율에 따른 추락 상황 판단 실험, 스마트 안전모의 가용시간 측정을 위한 배터리전류량 측정 실험을 하였다.

다음 그림 9는 가스 농도 센서를 통하여 CO 농도를 측정해본 실험 결과이다. 10초를 기준으로 이전은 평상시 센서에 찍히는 ppm 값이고, 이후는 CO 가스를 주입했을 시 ppm 값이다. 하지만 1초마다 측정된 값으로 봤을 때 변동 폭이 크게 나타났다. 이를 개선하기 위해 5초를 기준으로 5개의 값을 받아 평균 CO 농도를 표현하였다. 그 결과로 그림 10과 같이 변화율을 안정화 시킬 수 있었다.

OTNBBE_2019_v19n1_77_f0009.png 이미지

그림 9. 시간별 CO 센서 농도 변화

Fig. 9. CO sensor concentration change over time 

OTNBBE_2019_v19n1_77_f0010.png 이미지

그림 10. 평균 시간별 CO 센서 농도 변화

Fig. 10. Change of CO sensor concentration by average time 

아래 그림 11은 안전모를 책상 위에서 바닥으로 떨어뜨려 추락 상황을 발생시키는 실험이다. 실험 결과 x, y,z축의 가속도 변화율이 100 이상일 때 추락 상황이 발생되었다. 근로자가 추락된다는 가정 하에 센서가 기울어지면 z축의 값의 변화율뿐만 아니라 x축, y축의 변화율도 확인해야 한다.

OTNBBE_2019_v19n1_77_f0011.png 이미지

그림 11. 가속도 센서의 각축 변화율

Fig. 11. Angular rate of change of acceleration sensor 

다음 그림 12는 안전모에 사용되는 9V 배터리의 시간에 따른 전류 소모량을 나타낸 것이다. 배터리전류량 측정은 아두이노 IDE를 이용 하였으며, 실험 결과 각각 배터리는 전류량에서 차이가 있었지만 감소하는 기울기는 거의 같았으며 4시간 정도 사용하면 방전되는 전력 문제가 발생 하였다. 무겁고 지속력 약한 배터리를 해결하려는 첫 번째 방안은 대용량 충전식 배터리를 사용하는 것이다. 전력소모를 절감하기 위한 추가적인 절전 알고리즘의 개발이 필요하다고 판단된다.

OTNBBE_2019_v19n1_77_f0012.png 이미지

그림 12. 시간별 배터리 잔류 전류량

Fig. 12. Amount of battery residual current per hour 

Ⅴ. 결론

기존에 산업 현장에서 사용하는 안전모나 스마트 디바이스 결합 제품은 대부분 편의성에만 초점을 맞춰 개발되어 안전성을 보장하지 못하는 단점이 존재하였다. 또한 안전 기능을 생각했더라도 정확한 위험 상황을 인지하기 힘들고, 인지했다 하더라도 이를 근로자에게 알려주는 방식이 미흡한 것으로 판단된다.

본 논문에서는 스마트 헬맷을 개발하여 작업 현장의 안전성을 보장하기 위해 현장 사고 원인의 대부분을 차지하는 가스사고, 추락사고를 인지하는 기능과 위험상황 발생 시 이를 근로자와 관리자에게 알려주기 위한 안전기능을 설계하고 구현하였다. 또한 관리자를 위한 각종 기능을 개발하여 본 시스템의 활용 가능성을 높였다.

개발 과정에서, 스마트 헬멧에서 사용되고 있는 블루투스 연결이 자주 해제되거나 예상보다 전력 소모가 커 배터리가 빠르게 소모되는 문제점이 발견되었다. 이러한 문제점은 대용량 충전식 외장 배터리를 장착하여 개선할 수 있으며 소프트웨어적으로 이를 개선하기 위한 저전력 알고리즘의 추가적인 개발이 필요하다.

References

  1. The death rate of industrial accidents in Korea versus OECD member countries, https://www.sedaily.com/NewsView/1OFR68SUAK#_enliple
  2. Status of industrial accidents, http://www.kosha.or.kr/board.do?menuId=554
  3. OrangeBoardBLE, https://kocoafab.cc/product/orangeble
  4. Firebase, https://firebase.google.com/
  5. FirebaseCloudMessaging, https://firebase.google.com/docs/cloud-messaging/?gclid=Cj0KCQjwz93cBRCrARIsAEFbWsid12SitVbo655SbYbEfsBD3XITSZBw-IXgr9qizO2CP7TaIpnXXM0aAmIgEALw_wcB
  6. Byung-Ho Cho, "Design of Autobike Driver's Driving Information and e-call Functions Providing Software using Smart Helmet", The Journal of The Institute of Internet,Broadcasting and Communication (IIBC), Vol.17, No. 4, pp.173-179, Aug. 31, 2017. DOI: https://doi.org/10.7236/JIIBC.2017.17.4.173
  7. Smart Helmet made in SAGA, http://m.ynkinno.co.kr/include/sol_saga.asp
  8. Safety Helmet made in Hansung Safety, http://www.hsafety.com/bbs/board.php?bo_table=product05&wr_id=28
  9. Smart Safety Helmet made in POSCO, http://www.steelprice.co.kr/news/articleView.html?idxno=7283
  10. MQ-9 Gas Sensor, http://blog.daum.net/_blog/BlogTypeView.do?blogid=0ZPt7&articleno=2443&categoryId=2& regdt=20161202130618
  11. MPU-6050 Sensor, http://deneb21.tistory.com/335
  12. HC-SR04 Ultrasonic Sensor, http://jdselectron.tistory.com/3
  13. Android Dialog, https://developer.android.com/guide/topics/ui/dialogs?hl=ko