삼성 갤럭시 홈 미니 TTS기능 웹코어를 이용한 환기팬 자동정지 시나리오

2020. 2. 16. 10:16IoT Life

환기팬의 용도

화장실은 샤워, 목욕, 세수 등 물을 많이 사용하는 곳이므로 항상 습기로 가득합니다. 샤워를 하고 나면 습도가 90% 이상일 정도로 다습한 장소입니다. 습도가 90%로인 상태로 며칠만 두면, 곰팡이가 성장하는데 매우 도움을 주게 될것입니다. 그것을 방지하고자 화장실에는 환기팬이 설치되어 있습니다. 환기팬은 내부의 공기를 외부로, 외부의 공기를 내부로 끌어들이는 역할을 수행하여 습도 조절에 탁월한 기기입니다.

환기팬의 문제점

습도를 조절하는 기능은 탁월하지만 문제점이 있습니다. 환기팬에는 미세먼지를 제거할 필터가 없기 때문에 미세먼지 농도가 높은날에 환기팬을 사용하면 다이렉트로 미세먼지를 흡입(?) 하게 됩니다.(아래 공기청정기로 실험한 영상 참고!)

미세먼지에 노출되면 저같은경우에는 목이 금방 칼칼해지고 가래가 끼는등 목상태가 급격하게 나빠집니다. 미세먼지 농도가 높은날에는 환기팬을 사용하지 않도록 해야되는데 사람인지라...언제 미세먼지 농도가 높은지 낮은지 항상 판단하면서 환기팬을 사용하기에는 세상살이가 너무 빡빡하지요? 실수로 미세먼지 농도가 높은날 환기팬을 사용했을 때 자동으로 꺼주면서 안내를 해준다면 좀 편리하지 않을까 생각이 들었습니다. 또한 습도가 60% 이하로 낮음에도 불구하고 팬이 계속 돌아간다면 소중한 전기를 낭비하게 됩니다. 일정 습도로 떨어졌을 때(보통 40%~60%가 적정 습도라고 함) 팬이 자동으로 정지하도록 하면 어떨까요?

환기팬 자동정지 시나리오 수행을 위한 준비물

환기팬 자동정지 시나리오를 만들기위해서는 준비물이 필요합니다. 지난 월패드 제어 할때도 준비물이 필요했지요? IoT를 할려면 준비물이 많이 필요합니다^^;; 제가 사용한 기기, 툴은 아래와 같습니다.

이젝스 스위치(환기팬 제어용 스위치)
Sense9 온습도계(화장실 온도/습도 확인용 장치)
Smart Air Station(외부 미세먼지 농도 센싱용)
갤럭시 홈 미니(자동정지 했을 때 왜 정지 되었는지 안내 멘트. TTS용)
WebCore(자동화 프로그래밍 툴)

각 준비물에 대한 설명을 드리겠습니다. 먼저 이젝스 스위치는 Zigbee로 동작하는 IoT 스위치입니다. 2선식으로 중성선이 필요없고, Zigbee 신호를 증폭시켜주는 리피터 기능까지 갖춘 다재다능한 스위치입니다. 설치시 한가지 주의할 점은 첫번째 연결되는 부분(왼쪽 맨위, 혹은 맨위 버튼)의 저항이 30W 이상이여야 정상 작동합니다. 일반 형광등의 경우에는 문제가 없지만 저항이 작은 8W LED등을 첫번째 연결되는 부분에 연결하게 되면 깜빡 깜빡 거린다거나 ON/OFF가 안되는 등 사용이 불가합니다. 꼭 30W 이상의 부하가 걸리는 곳을 첫번째에 연결되도록 배치를 잘해주셔야합니다. 현재 신형(버튼식), 구형(터치식)이 존재합니다. 자세한 설치기는 아래 링크를 참고해주세요.
https://verificationkr.tistory.com/349

eZEX(이젝스) 스위치 6구 구형

두번째는 Sense9 온습도계입니다. ZigBee로 동작하는 온습도계입니다. 디자인이 타원형으로 제법 귀엽게 생겼으며 배터리는 쉽게 구할수있는 AAA전지 한개가 들어가는 구조입니다. 뒤쪽에 양면테이프로 붙여서 사용합니다. 2달 이상 사용한 결과 지그비 접속 이슈 없고, 양면테이프도 잘 고정되고 있습니다.

Sense9 온습도계

자세한 설치기는 아래 영상을 참고해주세요.


세번째는 Smart Air Station으로 물리 장치가 아닌 가상의 장치를 만들어서 센서로 활용할 수 있는 장치입니다. 제가 가는 IoT카페 뷩이(지금은 부엉이 닉네임 사용)님이 제작하셨습니다. 원리는 data.go.kr 이라는 사이트에서 각 지역별 대기측정소 데이터를 접근 할 수 있게  API를 제공을 하는데 이 API를 이용해서 미세먼지 농도를 가져와 트리거로 사용할 수 있는것입니다. 그리므로 data.go.kr 신청이 필수 입니다. 자세한 설치방법은 https://cafe.naver.com/stsmarthome/2561 를 참고 부탁드립니다.

갤럭시 홈 미니는 삼성에서 출시한 AI 스피커입니다. S20 사은품으로 준다고 해서 지금 막 후끈후끈 달아오르고 있습니다. 최근 갤홈미니에 TTS기능이 추가되어 웹코어에서 사용이 가능합니다. 이 TTS기능을 이용하여 왜 환기팬이 정지되었는지 사용자에게 알려줄것입니다. 삼성 갤럭시 홈 미니 설치 및 활용이 궁금하시면 https://verificationkr.tistory.com/440 를 참고 부탁드립니다.

이제 마지막 WebCore입니다. WebCore는 Smartthings 커스텀 App으로 동작하는 툴입니다. ST의 장치들을 읽어서 각종 프로그램을 할 수 있게 해주는 도구입니다. ST APP보다 좀 더 정교하게 자동화를 할 수 있습니다. 예를 들면 ST APP의 자동화라는 메뉴의 조건으로 Smart Air Station를 선택하면, 일산화탄소, 조도, 습도, 온도, 자외선 지수 밖에 선택을 못합니다.

ST APP에서는 모든 센서를 트리거로 사용하지 못함.

하지만 웹코어는 pm10, pm2.5 등 모든 센서값을 읽고 제어할 수 있습니다. ST APP이 일반 유저들을 위한 자동화라면, 웹코어는 고급 사용자를 위한 자동화라고 이해하면 쉽습니다. 그렇다고 매우 높은 수준의 프로그래밍 지식을 요구하지 않습니다. 또한 키보드로 하나하나 구문을 입력하는 방식을 사용하지 않고 마우스 클릭한 후 값을 입력하는 형태로 되어 있기 때문에 편리하게 자동화를 만들수 있습니다. 웹코어 설치방법은 https://cafe.naver.com/stsmarthome?iframe_url=/ArticleList.nhn%3Fsearch.clubid=29087792%26search.menuid=40%26search.boardtype=L%26search.totalCount=166%26search.page=11 를 참고해주세요.

환기팬 자동정지 시나리오 만들기

'환기팬의 문제점'의 조건 및 동작을 웹코어식으로 표현해보았습니다.

WebCore를 이용하여 자동화 프로그래밍했다!

프로그래밍된것을 한국말로 풀어보겠습니다.
 - 13~16 : pm25_value값이 16이상이고, 욕실팬 또는 화장실 팬의 스위치가 ON이면
 - 17~28 : 갤홈미니로 '미세먼지 농도가 높아서 환기팬이 자동 종료되었습니다.' 라고 발화하고 스위치를 OFF한다.
 - 29~32 : 만약 샤워실 온습도계의 습도가 60% 미만이고 화장실팬의 스위치가 ON이면(샤워실에는 온습도계가 없어서 뺐습니다ㅠㅠ)
 - 33~43 : 갤홈미니로 '습도가 60이하로 떨어졌기 때문에 환기팬이 자동 종료되었습니다'라고 발화하고 스위치를 OFF한다.

환기팬 자동정지 시나리오 만들기 검증

Test Case #1 : pm25_value값이 16 이상일 때 욕실팬을 키면 어떻게 동작할까? 미세먼지 농도가 높아서 껐다라는 안내 멘트가 나오면 OK입니다.
Test Case #2 : 습도가 60% 이하일 때 욕실팬을 키면 어떻게 동작할까? 습도가 낮기 때문에 껐다 라는 안내 멘트가 나오면 OK