안녕하세요~ 레이군 입니다.
홈 어시스턴트 기본편 두번째 시간을 진행해 볼께요.
이번시간은 홈 어시스턴트를 조금 다루다 보면 필요한, 도우미 항목에 대한 내용 입니다.
전부 다 설명드리긴 어려우니, 가장 기초적인 것들 몇개만 소개해 드릴께요.
스마트홈 플랫폼, 그중에서도 홈 어시스턴트를 사용하는 목적은 다양하겠지만
그중에 큰 부분을 차지하는게 바로 자동화 일겁니다.
자동화 동작은 크게 트리거 -> 조건 -> 동작 순서로 이루어 지며
여기에는 각종 구성요소들이 필요합니다.
대부분은 HA에 연결되어 있는 센서라던지 각종 장치에서 받아오는 데이터를 사용하지만,
사용자의 입력이 필요한 항목들도 존재합니다.
가령 목표 온도 / 습도를 임의로 설정한다던가, 원하는 날짜/시간 등을 설정한다던가...
카운터 증/감을 이용하는 등 물리적인 장치가 아닌 가상의 데이터가 필요할때가 있죠.
또는 사용자의 입력을 필요로 하는게 아닌, 특정 데이터를 가공하거나 해서 저장하는게 필요할수도 있습니다.
이럴때 사용하는게 도우미 항목 입니다.
도우미는 상당히 다양한 항목이 존재하지만, 그중에 가장 기본적인 몇가지에 해대서만 설명 드리겠습니다.
![](https://blog.kakaocdn.net/dn/dGlQoR/btrFElpgYSy/pQgadFKzUxGGf1Kedb9k0K/img.png)
도우미 항목에 접근하기 위해서는, 설정 -> 기기 및 서비스 -> 도우미 로 가시면 되고
우측 하단에 있는 도우미 만들기 를 클릭하시면, 설정 가능한 항목을 볼 수 있습니다.
항목은 HA가 발전함에 따라 추가/삭제/변경 될 수 있습니다.
![](https://blog.kakaocdn.net/dn/RPCGe/btrFzTgGBnY/cvQepHs9aN257KnJcrLW91/img.png)
오늘 알아볼 항목들 입니다.
계수기 / 날짜 또는 시간 / 드롭다운 / 버튼 / 숫자 / 스위치의 장치 유형 변경 / 타이머 / 텍스트 /토글
2022년 6월 24일 기준, 도우미 설정 가능 항목은 총 16개 이며, 오늘은 그중 9개 항목에 대해 알아보겠습니다.
계수기(counter)
![](https://blog.kakaocdn.net/dn/qjhFq/btrFAjzV9JE/woAc7d1giHVmGUenKbtY51/img.png)
계수기는 카운터 값으로, 최소/최대 값을 지정하고 초깃값, 계수 간격을 설정할 수 있습니다.
HA가 시작될때 최근값 복원을 선택하면, 카운터가 변경된 상태에서 HA가 재시작 되더라도
최종 값을 유지하게 됩니다.
![](https://blog.kakaocdn.net/dn/bi2JKs/btrFyLDujib/XztJjMsvxAVQLTZnw3Dcl1/img.png)
counter 라는 domain 값으로 설정되며, 증/감/초기화 가 가능합니다.
![](https://blog.kakaocdn.net/dn/ceK4zV/btrFCS8IBRe/RKhNZu94SyfVJoMIoZAJI1/img.png)
counter 관련 서비스로 증/감/초기화 등이 가능합니다.
이걸 이용하면, 도어/모션센서 등의 조합으로 카운터 증/감 자동화를 만들 수 있고
해당 카운터의 증/감에 따라 재실여부를 판단할 수 있는 가상의 카운터센서를 만들 수 있겠죠.
날짜 또는 시간(input_datetime)
![](https://blog.kakaocdn.net/dn/x4V0x/btrFDfiMT8D/WqszTz8jdhVXPYGGKF0iNK/img.png)
이 항목은 날짜 / 시간 / 날짜와 시간으로 설정할 수 있습니다.
![](https://blog.kakaocdn.net/dn/qzlA6/btrFBcGALuc/xLd51YqWUnUFnKULZcvpI1/img.png)
위 항목은 날짜 로 설정되어 있는 상태인데, 항목을 눌러 날짜를 선택할 수 있게 됩니다.
시간만 선택할수도 있고, 날짜와 시간을 모두 선택할수도 있습니다.
특정 날짜에 실행해야 하는 자동화, 특정 시간에 실행할 자동화 등...
이 항목을 이용하면 손쉽게 다룰 수 있게 됩니다.
![](https://blog.kakaocdn.net/dn/IM9kj/btrFz3jKzID/Lnk1rmB045K4IsHk2DNnFK/img.png)
input_datetime.set_datetime 서비스를 활용해서 필요한 내용을 지정할 수 있습니다.
자동화의 동작으로 특정 날짜나 시간등을 저장해 두고 싶다면, 이 서비스를 활용하면 되겠죠.
드롭다운(input_select)
![](https://blog.kakaocdn.net/dn/AHj9W/btrFBhuSnfW/h3xUtPHDZiWivHbKnF51xK/img.png)
드롭다운 메뉴를 생성합니다.
옵션은 필요한 만큼 추가할 수 있습니다.
![](https://blog.kakaocdn.net/dn/IaTRd/btrFDhgBBsB/SrtVvVW9JZxP8Hgq7cIrj1/img.png)
이런식으로 설정된 항목들을 선택할 수 있게 되고, 여기서 선택된건 해당 구성요소의 상태(state) 로 설정됩니다.
이걸 활용하면, 유튜브 플레이 리스트를 테마별로 저장해두고 -> 드롭다운 메뉴 변경에 따라 바꿀 수 있겠죠.
버튼(input_button)
![](https://blog.kakaocdn.net/dn/cG0qdE/btrFEu0QTfV/sbX9ZcHMUITqgfQd7niPG1/img.png)
버튼은 단순합니다. 그냥 이름과 아이콘만 선택이 가능하구요
![](https://blog.kakaocdn.net/dn/kFA9e/btrFDHMSKRS/A3ptQzwqHMhSOQvtCPjCH0/img.png)
할 수 있는 동작도 누르기 하나뿐 입니다.
저걸 누르면, 누른 날짜/시간이 상태값으로 설정됩니다.
더블클릭 이런거 안 되고, 눌렸다 라는것 하나만 저장되는 항목 입니다.
음...활용처는 많이 떠오르지 않는데, 자동화 테스트 하거나 할때 쓰기 좋겠네요...
숫자(input_number)
![](https://blog.kakaocdn.net/dn/btt4pL/btrFzF351CA/K5Kv5ouewdUO1m1SM8N001/img.png)
숫자는 최소/최대 수치를 설정하고, 슬라이더 형태로 할지 입력형태로 할지를 결정한 다음
슬라이더의 간격 / 측정 단위를 설정할 수 있습니다.
측정 단위는 비어있다면 정사, 0.1 이라던가 0.5 같이 입력을 해줄 수 있습니다.
슬라이더 간격은 1이나 0.1, 0.01 같이 수치로 입력하면 됩니다.
뭔가 오류가 있는지, 1 미만의 숫자를 입력하면 빨간색으로 뜨는데.. 무시하고 만들기 하면 되더라구요.
![](https://blog.kakaocdn.net/dn/L8TA7/btrFEtHCVlh/uJhDM8mgenrybg4y9L22i1/img.png)
위 화면은 슬라이더, 아래 화면은 입력란 으로 설정했을때의 화면 입니다.
input_number.set_value 서비스를 사용해 특정 수치를 저장해 두고 싶거나 할때 쓰기 좋고
저같은 경우는 원하는 온도를 설정할때 쓰기 편해서 좋더라구요.
스위치의 장치 유형 변경
![](https://blog.kakaocdn.net/dn/dfkpuI/btrFDIE0ZGI/0CjrCkYVIW6oGsfrgaclqk/img.png)
이건 설명드릴 다른 내용들과는 좀 결이 다르긴 한데...
가상의 무언갈 만드는건 같지만, 이건 무에서 유를 창조하는게 아니라 기존에 있는 걸 변경시킵니다.
HA에는 수많은 스위치가 등록되는데요, 가령 전등 스위치 같은 경우 전등(light)를 제어하긴 하지만
실제로 동작은 릴레이여서 스위치(switch) 로 인식됩니다.
이 상태로 구글홈 등에 연동되면, 해당 장치는 스위치가 되어서 따로 설정을 해줘야 하죠.
이럴때, 스위치 -> 전등(light) 로 바꿔주면 상당히 편해지는데요
원래는 꽤나 복잡한 과정을 거쳐 진행했었는데, 도우미 항목에서 손쉽게 변경이 됩니다.
기존의 스위치를 숨기고 -> 해당 스위치의 상태가 동기화 되는 전등(혹은 팬, 커버 등) 을 만들어 줍니다.
숨겨둔 스위치를 다시 보이고 싶다면, 설정 - 기기 및 서비스 - 구성요소 에 가서 숨겨진걸 해제 하시면 됩니다.
타이머(timer)
![](https://blog.kakaocdn.net/dn/bjEoDX/btrFDH0qxjb/l7HPKxEP4zUkKHxqbqgLSk/img.png)
타이머는 뭐... 시간만 정해주면 되겠죠?
복원? 항목은... 제가 타이머를 잘 안써서 설명을 봐도 이해를 잘 못하겠네요 ㅠ.ㅜ
이 부분은 패스...
![](https://blog.kakaocdn.net/dn/1GHn6/btrFEvemNVx/uKGRBbxe1ZNQ6fKWGmu3U0/img.png)
중지 상태에서는 시작 버튼만 보이고
시작이 되면 일시정지 / 취소 / 완료 버튼이 보입니다.
이걸 활용하면 타이머가 완료되면 할 동작 / 취소되면 할 동작등 세부적으로 지정할 수 있습니다.
텍스트(input_text)
![](https://blog.kakaocdn.net/dn/uK78l/btrFAjNvgNL/5RT3WlW5UWWHCz9I8aBcF0/img.png)
최소 / 최대 길이는 사용할 수 있는 문자열의 길이 입니다.
바이트 단위가 아니라, 그냥 몇 글자(스페이스 포함)인지를 검출합니다.
최대길이가 3 이라면, 123 혹은 abc 혹은 가나다 까지 됩니다.
디스플레이 모드는, 입력하는 창에 표시할 방식을 지정합니다.
텍스트로 하면, 그냥 입력값 자체가 보이고 비밀번호로 하면, *** 형태로 표시됩니다.
물론 어떤걸로 하던지 해당 entity의 상태(state) 값은 입력한 값이 그대로 표시됩니다.
정규표현식은 저도 뭔지 잘 모르겠네요 ㅠ.ㅜ
![](https://blog.kakaocdn.net/dn/v4wH4/btrFz9p4Cki/Pp0R2N4GKfej0hwnK0J5J1/img.png)
요렇게 입력을 해주면 됩니다.
그러면 저 값이 state로 변경되죠.
토글(input_boolean)
![](https://blog.kakaocdn.net/dn/b0SR2e/btrFz9DzJEa/mgLQAESwhRqaVvDYyv3Wp0/img.png)
토글도 매우 단순하게 이름과 아이콘 설정만 가능합니다.
![](https://blog.kakaocdn.net/dn/boGy2G/btrFElQk4nE/QoDE4Ba38qcSxo4JAnZJb1/img.png)
켜고/끄고... 마치 스위치 처럼 동작시킬 수 있지요.
다만 이건 스위치가 아니고 input_boolean이라는 domain 을 가지고 있기 때문에
서비스 호출로 켜고 끄려면 input_boolean.turn_on 같은 서비스를 써야 합니다.
이 점만 유의한다면, ST에서 사용하는 가상스위치 라고 생각해도 무방합니다.
사람 A, B중 하나라도 집에 들어오면 = on
A, B 모두 집에 없으면 = off
이런식으로 자동화를 만든다면, 해당 구성요소를 재실센서로 쓸 수 있겠죠.
자 오늘은 여기까지!
도우미 항목에 대한 기초를 알아보았습니다.
나머지 항목들은, 기본적인것 보다는 좀 더 지식이 필요한 부분이라...
나중에 다시 다뤄보겠습니다!
다음에 또 뵈요~
'SmartHome. IoT > SmartHome 응용' 카테고리의 다른 글
HA에서의 Local, Cloud, Polling, Push. (0) | 2022.07.11 |
---|---|
Zigbee2MQTT 설치 최신판(feat. sonoff zigbee 3.0) (4) | 2022.06.27 |
HomeAssistant(HA) 의 {매우}기본적인 이해 - 1편 (0) | 2022.06.23 |
HomeAssistant 설치방법의 다양성에 대하여. (0) | 2022.06.16 |
시놀로지 NAS에 VMM으로 HomeAssistant 설치하기 (0) | 2022.06.16 |