창문 키워드로 검색해 보니까 자작한 분도 계셨네요.
저는 여닫이 문으로 된 제품을 용감하게(?) 구입해서 좀 고민을 했는데 어떻게든 장착을 해서 이용하고 있습니다.
목적은 이산화탄소 수치가 높아지지 않게 환기하는 것이며, 밤에 계속 조금 열어두기 보다는 한 두 시간에 한번씩 10분간 열고 싶어서였습니다.
미닫이 창문에 설치한 모습 및 간단 자동 환기 테스트
애초 미닫이 창문용이 아니라서 좀 허접하게 되기는 했지만 Tuya 호환 Smart Windows and doors 제품의 설치된 모습은 아래와 같습니다. 사진에는 없지만, 별도의 리모콘도 함께 구입했습니다.
열고 닫히는 속도는 느리고 40초 정도입니다. 움직일 떄 소음이 나기는 하지만 생각보다는 조용하게 느껴집니다.
문제는 이중창이다보니까 한번에 열어야 하는데, 이중창을 서로 고정하기 위해 3D프린터로 부품을 인쇄해서 매직투명 테이프로 고정했습니다. 3D 설계를 아직 제대로 배우지 않아서 크기 정보와 내부의 필라멘트를 아껴달라고 ChatGPT에게 시켰습니다... 그랬더니 OpenSCAD의 스크립트를 주었고 한번에 작동했습니다. Bard는 .SLT를 줬는데 읽혀지지는 않았습니다.
먼저 Smart Life 앱으로 Timer 기능을 써서 열고 닫으면서 밤새 이산화탄소 효과를 체크해 보았습니다.
그러나, Smart Life 앱에서는 열고/닫고/멈춤만 되고, 약간만 예를 들어 7cm만 여는 기능은 안되는 것 같아서, Home Assistant에 Local Tuya를 HACS로부터 설치해서 연동을 해 보았습니다(그냥 Tuya 장치로 등록하면 미지원 장치로 나타납니다).
물론, 최종적으로는 평소에 닫아 놓고 이산화탄소 증가 시에 자동으로 10~15분간 창문을 모두 여는 기능을 사용하고 있습니다. 일단은 홈어시스턴트 자동화 기능으로 1000ppm이상 되면 창문을 열고 900ppm미만이 될 때까지 최대 15분간 기다린 후 닫도록 했습니다.
홈어시스턴트에 Local Tuya Integration을이용하여 등록하기
HACS에서 Local Tuya를 설치하고, https://github.com/rospogrigio/localtuya/ 를 참조하여 "cover" 장치로 등록을 해 보았습니다. Tuya IoT Platform에 무료 개발자 계정을 만들어야 하므로 과정이 (어려운 것은 아니지만) 복잡한 편입니다.
* 주의할 점 = 홈어시스턴트의 Integration에서 Local Tuya를 추가할 때 입력 항목 중에 User ID가 있는데 Smart Life 앱이나 Tuya 앱의 User ID가 아님에 유의해야 합니다. Tuya IoT Platform에서 생성한 클라우드 프로젝트에 연결된 App의 UID 값입니다. 그 밑의 가장 아래쪽 입력 칸은 패스워드 입력이 아니며 그냥 놔두면 됩니다.
위 github 리포를 참고하면 되며 Local key를 넣는 부분도 나오는데, Tuya IoT Platform에서 얻는 방법은 아래와 그림과 같습니다.
아래 그림과 같이 일련의 등록 과정을 거치면 이제 Open, Stop, Close 명령을 언제든 사용할 수 있으므로, 자동화나 스크립트의 시간 지연 기능을 이용하면 약간만 열거나 닫는 것을 구현할 수 있게 되었습니다.
이제 조금만 여는 기능은 일단 Close하고 그 다음에 Open을 한 후 일정 시간(예: 7초) 후 Stop을 하면 원하는만큼 열 수 있게 됩니다.
후기 및 기타 정보
특이했던 점은 체인이 장비와 직각으로 나오지 않고 아래로 아주 조금 쳐지는 경향이 있습니다. 아직 왜 그렇게 만들었는지 파악은 못했습니다.
이곳 IoT당에 있는 DIY로 창문 여닫이 글을 미리 봤다면, 그 부품으로 만들었어도 재미 있었을 것 같습니다. 별다른 내용이 더 있는 것은 아니지만 좀 더 자세한 것은 제 블로그 글(광고는 없기는 합니다만...)를 보셔도 됩니다.
그리고 창문을 열어서 환기하는 것은 아무래도 상주하는 식구가 3명 초과가 되면 이산화탄소가 급격히 증가하고 환기 중에 손해보는 난방열도 많아지므로 전열교환기 등을 선택하는 것이 좋다는 생각도 해봤습니다. 벽을 뚫어야 하는 30만원대 알리익스프레스의 제품을 고려하다가 우선 창문 개폐 자동화를 먼저 시도해 보았습니다.
참고로 이 제품에는 비가 올 때 닫을 수도 있도록 센서 입력 포트도 하나 있습니다.
끝으로 아래는 OpenSCAD 화면과 인쇄 중인 모습입니다.
일단은 이 제품에는 벽부 컨트롤러, 전용 리모콘, Smart Life앱, 홈어시스턴트 이렇게 4가지 방법으로 조작할 수 있는 편리함이 있어서 Local Tuya가 계속해서 오류 없이 작동해주기를 바라야겠네요.
제 경우 MQTT + ESP로 자동작동하게끔 해놓고 썼었는데 종종 수동으로 창문을 조작할 필요가있게 마련이라 수동작동이 무조건 자동설정에 우선하는 그런 스위치(Manual Override Switch)를 만들려고 했었는데 이게 말이 쉽지 실제로 간단치가 않드라구요. 회로를 좀 설계할 줄 알아야 하는데 제가 그쪽으로 까막눈이라 좀 삽질하다가 제대로 안 되서 포기하고 그냥 SPDT스위치 두개 달아서 수동전용으로 조작하는 상태입니다ㅠㅠ 직비리모콘 같은거 쓰면 간단하지만 제가 원하는 방식이 아니다보니 흥미가 떨어져서 불편한걸 그냥 두고 쓰고 있네요 ㅠㅠ
도움이 전혀 안되지만, 저의 창문 자동화의 경우라면 7인치 모니터에 홈어시스턴트에 등록한 창문자동화 자체를 ON/OFF할 수 있는 버튼을 띄워 놓아서 필요 시 끄는 정도로 제어할 듯합니다.
약간 다른 이야기지만, 홈어시스턴트에서 주방 팬 적외선 온도로 자동화 할 때 고장에 대비하여 ESP8266을 껐다 켤 USB 마이크로 스위치도 추가하고, 별도 습도계를 추가하여 Mi Home앱으로 습도 80% 초과 시 자동화하고, 자동화가 마음에 안드는 순간 및 제가 서울에 있는 동안 고장에 대비하여 지그비 스위치로 수동 ON/OFF조작할 수 있게 했었습니다.