728x90

※ 우리 부부가 직접 구매하고 사용한 후기입니다.

 

 

[붱이 Story/IoT] - SmartThings 자동화 이해하기 - 기본 원리 및 트리거란?

[붱이 Story/IoT] - SmartThings 자동화 이해하기 - 선행 조건 알고 쓰자

 

이번 내용은 "이 상태가 일정 시간 유지될 때" 즉 웹코에서 Stay라고 불리는 기능과

 

Switch류들 동작에서 "켜기"를 선택하면 나타나는 "자동 끄기" 에 대해서 얘기해보려고합니다. 

 

 

예시를 들어 설명하는게 좋을것 같네요

 

간단히 예제 상황은 이렇습니다

 

기기는 두개가있습니다.

"현관 앞 모션센서", "현관 앞 휴 전구"

 

> 자동화 목표

"누군가 현관앞에 지나갈때 전구가 켜지고 아무도 없을때 전구를 꺼지게 하고싶다"

 

어떤 자동화를 만들면 될까요?

초반에 입문하신분들은 아마 대부분 이렇게 만들꺼에요

1. 초기버젼

모션감지되면 켜기 모션 감지 안되면 끄기

그래도 동작은 잘될꺼에요 근데 이렇게 만들면 아직 현관에 있지만 신발끈을 묶거나? 할때 움직임 감지가 안되서

전구가 꺼져버리면 머리위로 손을 흔들거나 몸을 크게움직여서 다시 켜지게 하곤하겠죠?

 

그럼 좀더 좋은건 없을까요?

 

2. 자동 끄기 기능 사용하기

요건 자동화 하나만 만들어서 켜고 끄고를 자동으로 할수있어요! 너무좋지요?

 

현관앞에서 보통 저는 1분이상 머물지 않는다고 생각해서 켜진뒤 1분 후 끄도록 "자동 끄기" 를 설정했어요

이 자동 끄기의 매커니즘은 살짝 복잡한데요

시간으로 설명드릴게요

시간 모션센서
(20초 인터벌)
휴 전구
0:00 움직임 감지됨 켜짐
0:20 움직임 없음  
0:25 움직임 감지됨 켜짐 명령 또날아감
(전상태가 미감지에서 감지로
트리거로 인해 날라감)
0:45 움직임 없음  
1:25   꺼짐

요렇게 보면 이해되실까요? 원래는 처음 0:00에 켜지고 1분뒤니 1:00에 꺼져야하지만

1분 사이 움직임이 또 발생되서 켜짐 명령이 한번더 날라갔어요 그래서 앞에꺼 자동꺼짐을 무시하고 연장되서 1분 25초에 꺼지게 되는거죠 

 

이기능이 자동 끄기 기능이에요

 

근데 이게 다 커버못하는 한 가지 사항이있어요 아래사항인데요

시간 사람  모션센서
(20초 인터벌)
휴 전구  
0:00 사람 움직임 움직임 감지됨 켜짐  
0:15 사람 움직임      
0:33 사람 움직임      
0:45 사람 움직임      
1:00 사람 움직임   꺼짐  
1:01 전구 꺼진거 인지하고 다시 막 움직이기 시작함 이미 움직임 감지된 상태 켜지지 않음 문제상황
1:20   움직임 없음    

이해하셨을까요? ST 정식센서의경우 20초 인터벌이지만

그사이 움직임이 있으면 움직임 상태가 계속 연장되서

"움직임 없음"이 계속 연장될수가있어요

 

이케이스때 트리거는 최초 0:00때 한번뿐이 없었기때문에 자동끄기가 정확히 1분뒤 1:00에 꺼져버려요

그담 꺼지면 저는 뭐지하고 막 손을 흔들겠죠? 하지만 이번엔 켜지지않아요

왜냐면 모션센서는 아직 "움직임 감지됨" 상태거든요

 

이케이스는 드물지만 종종 나와요 그럼 짜증나겠죠?

 

이제 Stay를 쓸때가 왔어요

 

3. 이 상태가 일정 시간 유지될때 - Stay 사용하기

Stay의 기본개념은 간단해요 지정한 그 상태값이 지정한 시간동안 계속 유지하고 있어야 만족합니다.

"움직임 없음" 1분이상 이라고 했다면 1분동안은 온전히 계속 "움직임 없음" 상태여야지만 만족합니다.

1분 사이에 "움직임 감지"로 바뀐다면 해당 타이머 체크는 취소가 됩니다.

다시 "움직임 없음"이 발생되면 그때부터 다시 1분을 만족하는지 Timer가 돕니다. 이해되죠?

 

하지만 Stay를 사용하면 1번처럼 두개를 만들어야해요 

모션 감지되면 꺼져있을때 켜기 모션 감지안됨 유지가 1분이상되고 전구가 켜져있으면 끄기

이렇게 만들면 2번의 문제 상황 표에서 연장해서 본다면 우선 내가 머무는동안은 최소한 꺼지지 않습니다.

시간 사람  모션센서
(20초 인터벌)
휴 전구
0:00 사람 움직임 움직임 감지됨 켜짐
0:15 사람 움직임    
0:33 사람 움직임    
0:45 사람 움직임    
1:00 사람 움직임    
1:20   움직임 없음  
2:20     꺼짐

단 자동끄기 보다 좀더 길게 켜져있긴하겠죠? 시간조절은 본인 상황에 맞게 조절해서 사용하시면됩니다.

 

이제끝난줄알았죠?

 

하지만!!  이것도 문제가 있습니다!!

 

위와같이하면 모션에 의해 자동 켜지고 그다음 자동으로 꺼짐에 대해서는 완벽하지만

움직임이 감지 되지않는 상태에서 전구가 켜지는 경우?에 대해서 커버가 안됩니다.

 

움직임은 감지되지 않았지만 모션센서가 인지 안되는 다른쪽에서 전구를 수동으로 켯다면?

또는 앱으로 실수로 자동으로 켰다면?

다른 자동화에 의해 실수로 켜졌다면?

 

이케이스에는 방어가 안되어있습니다?

 

아쉽지만 하나 더 만들어서 커버를 해야합니다.

 

위 케이스에서 저는 현관 전구는 최대 5분이상은 켜져있을일이 없다고 가정하고

아래와 같이 하나더 만들었습니다

총 3개나 만들어야했지만 좀더 스마트한 우리집이 된것 같습니다? ㅎㅎ

 

자동끄기와 Stay에 대해서 이제좀 이해가 되나요? 안되면 댓글 달아주세요~~~

728x90

※ 우리 부부가 직접 구매하고 사용한 후기입니다.

 

 

[붱이 Story/IoT] - SmartThings 자동화 이해하기 - 기본 원리 및 트리거란?

 

저번 시간에 기본 원리를 알아봤고 저기서 언급된 "선행 조건"이란건 무엇일까?

 

SmartThings앱에서 "선행 조건"이란 옵션이 근래 등장했죠?

 

 

이놈이 뭔지 완벽히 이해시켜 드리겠습니다

 

예제 두개로 설명드릴게요

위 조건은 간단합니다

조건

거실에 어웨어 미세먼지가 30이상으로 좋지않고

거실 공기 청정기가 꺼져 있던 상태면

 

동작

거실 공기 청정기를 켜라

 

심플하죠? 

 

 

"선행 조건"을 사용한 예제도 같이 보겠습니다.

도대체 뭐가 다른거죠? 차이점이 뭐죠? 둘다 조건이 동일해보이는데요?

언뜻보기엔 같을것 같지만 많이 다릅니다 선행조건이 들어감으로 인해서요

 

 

그럼 상황을 보고 설명을 드릴게요

미세먼지 수치가 40이 넘어서 거실 공청기가 켜졌습니다. (요건 예제 1 예제 2 동일하게 동작합니다)
부엉: (혼자 뿌듯) "오 자동화 잘동작하는데?"

미세먼지는 점점 떨어지고 있지만 아직 30 이상인 상태에서
은쟈: "아 오빠 공청기 너무 시끄러워 나 전화통화좀해야하니 잠시 꺼봐!!"

부엉: "알겠어 끌게"

거실 공청기의 전원을 누름

이후에 상황에 예제 1과 예제 2동작이 다릅니다.

 

예제1 자동화 상황

부엉 : 전원 off 누름
거실 공청기: 띠리리(꺼지는소리)
거실 공청기: 띠리리리~(켜지는소리와 함께 켜짐)

부엉: "어? 뭐지 왜 안꺼져?"( 다시 끄기 시도 )
거실 공청기: 띠리리(꺼지는소리)
거실 공청기: 띠리리리~(켜지는소리와 함께 켜짐)

부엉: "어? 뭐냐 왜 안꺼져!!!!"
은쟈: "뭐하자는거야 계속 띠리리 띠리리!!! 끄라고!!!!!!!!!!!!" 바로 등짝 스매싱!!

부엉: "아아악! 나도몰라 얘 이러지 ㅠㅠ"

 

예제2 자동화 상황은 뭐 상황설명 할거 없이 잘꺼집니다

 

 

그럼 왜 예제2는 잘꺼지고? 예제1은 안꺼졌을까요?

 

앞서 기본 원리에서 설명드린 트리거 때문입니다.

예제1을 다시봅시다

예제1에선 두가지 

1. 미세먼지가 30 이상

2. 거실 공청기가 꺼짐

 

이 두가지가 모두 트리거로 동작되기때문입니다

  동작 시나리오1: 미세먼지가 30이상이 될때? 거실공청기가 꺼져있으면 켜기

  동작 시나리오2: 거실 공청기를 끌때? 미세먼지가 30이상이면 켜기

 

그래서 부엉이가 공청기를 Off하려 할때마다(트리거로 동작되서) 다른조건인 미세먼지 30이상인지 체크를해서

자동화가 계속해서 공기청정기를 켜기를 수행했기때문에 안꺼졌던 겁니다.

 

예제2도 다시봅시다

여기선 거실 공청기 꺼짐에 대해서 "선행 조건" 옵션이 있죠?

 

"선행 조건"은 즉 trigger로 사용안하겠다.

웹코어에서는 이게 구분이 확실히 되어있죠? trigger와 condition으로요

웹코어에서 condition에 해당하는 기능입니다.

 

그럼 왜 이름이 "선행 조건"이냐?

추측하자면 이렇습니다.

트리거가 발생할때 "선행 조건" 옵션 켜진건 트리거가 발생하기 이전에 그상태여야 하기때문에 선행 되어야 하는 조건이라고 해서 "선행 조건" 이라고 지었지 않을까? 생각합니다.

 

이정도 설명이면 "선행 조건"에 대해서 개념을 확실히 알겠죠?

 

알고 쓰면 상당히 유용한 기능입니다.

728x90

※ 우리 부부가 직접 구매하고 사용한 후기입니다.

 

 

IoT에 가장 중요한 "자동화"  아직 많은 분들에게

IoT하면 "원격 컨트롤" 이라고 인식이 되어있는데

 

"원격 컨트롤" 은 그냥 기본중에 기본인거고

IoT의 진짜 의미는

사물인터넷(영어: Internet of Things, 약어로 IoT)은 각종 사물에 센서와 통신 기능을 내장하여 인터넷에 연결하는 기술. 즉, 무선 통신을 통해 각종 사물을 연결하는 기술을 의미한다.
출처: 사물인터넷 - 위키백과, 우리 모두의 백과사전

뭔가 사물끼리 쿵짝 쿵짝하는게 핵심인데 많은분들 인식은 아직 자동화는 잘모르시는것 같아요

그리고 이제 자동화를 알았다 해도? 처음 접하시는 분들은 너무 어려워 하시기에 정리 해볼까 합니다.

 

 자동화의 기본 원리

1. 어떠한 기기의 상태가 바뀐게 인지가 되고? (트리거)

2. 인지가되면 조건에 부합하는지 판단을 하고? (조건 체크)

3. 조건이 만족되면? 어떠한 동작을 한다~(동작 수행)

 

원리는 심플하죠?

 

룰 하나 만든걸 보고 얘기를 할게요

위 그림에서 트리거는 "부엉 쥬니어"라는 출입 감지 센서가

"사람 없음" 에서 -> "사람 있음" 으로 상태가 되면?  (1. 트리거)

다른 조건들도 같이 만족하면 - 오후 3시부터 6시 사이 주말뺀 주중에 (2. 조건 체크)

멤버들한테 Push로 쥬니어 집 도착! 이라고 알려주고 장소 상태를 귀가로 바꿔주는 동작입니다.  (3. 동작 수행)

 

여기서 트리거에 해당하는건 부엉 쥬니어의값이 "사람 없음" 에서 -> "사람 있음" 으로 되는 시점이 되는겁니다. 

 

Q1) 3시부터 6시 사이는 트리거가 아닌가요?

A) 3시에라고 했으면 트리거입니다 2시 59분에서 3시가 되는순간 트리거가되니까요

근데 시간대는 트리거로 사용안되고 밑에 보면 "선행조건" 이라고 찍혀있는건 조건 체크할때만 쓰여요

"선행조건"은 근래 들어간 개념으로 여기 링크를 참조하세요

[붱이 Story/IoT] - SmartThings 자동화 이해하기 - 선행 조건 알고 쓰자

 

 

Q2) 많은분들이 "방금 자동화를 만들었는데 저 집에 있는데도 동작이 안되요?" 요건 왜 안될까요?

A) 자동화 만들기전에 이미 센서값은 "사람 있음" 상태였기 때문에

자동화 입장에선 트리거가 발생하지 않았기 때문에 자동화가 동작 되지 않은거에요 이해되셨나요?

트리거가 발생되려면? 외출후에 집에들어올때! 그시점에 자동화가 실행될겁니다.

 

요점) 자동화가 동작되려면?

1. 트리거가 발생되고

2. 그외 추가 조건들이 만족되면

3. 동작이 수행된다

 

기본 개념 ! 간단하죠?

  1. 뉘르부 2021.07.26 00:49

    삼성 띵스 사용하면서 정말궁금한 부분이었는데 속시원하게 잘정리해주셔서 감사합니다. 트리거와 컨디션 개념이 확실해졌습니다!

  2. BlogIcon 뉘르부 2021.07.26 01:01

    큰도움 되고 있습니다.여기다 질문을 드려도 되는지 모르겠습니다만 멤버 위치로 자동화 조건을 만드는 경우에도 선행조건을 선택하지 않으면 모두 트리거로 봐야하나요?

    예) (멤버) 뉘르부가 (장소) 집에 (상태) 모든 디바이스가 집 밖에 있을때 로 설정 한경우 집으로 설정한 위치 안쪽에 있다가 벗어나야만 트리거링 되는건가요?


    • Favicon of https://blog.weekendproject.net BlogIcon 붱이붱이 2021.07.26 01:05 신고

      선행조건이 체크 안되어있을땐 모두 트리거로 생각하셔야해요

      헌데 여러개 섞여있을땐 트리거이기도 하고 컨디션이기도 합니다 무슨말이냐면


      나와 와이프 모두 들어와있을때(선행조건x) 로 만드신다면 트리거로 만든건 맞지만

      내가 들어올때(트리거)는 와이프의 상태는 조건(컨디션)으로 체크되는거고 와이프가 들어올때(트리거)는 내 상태(컨디션)가 선행조건처럼 체크되어요 이해 되셨을까요?

  3. 뉘르부 2021.07.26 01:21

    네 이해는 되었습니다만 한차로 동시에 들어온 경우 혹은 나간 경우 둘중 한사람 의 위치 업데이트만 늦어도 해당조건은 쓸수 없을수 것 같아보이네요.. 그래서 작동이 안됫나..

    간단히 둘다 집밖을 나가면 외출 모드실행 이었거든요

    예를 들어 시간을 설정한경우 (stay)
    1분이상
    제가 집밖을 벗어난지 1분이상 되는시점에 와이프가 1분이 안됫으면 실행 되지 못하는 조건이네요...
    이러면 혹시 언제 다시 확인을 할까요?

    • Favicon of https://blog.weekendproject.net BlogIcon 붱이붱이 2021.07.26 01:25 신고

      넵 둘다 1분이상으로 만드셨고 뉘르부님이 1분되는 시점에 아내분이 아직 1분이 안되면 그렇지만 아내분이 1분이 채워질때 뉘르부님이 1분넘은지 체크가 되니 동작이되야하는데 안되나요?

  4. 뉘르부 2021.07.26 18:13

    아 네 이해가 이제됬습니다. 기존에 다른 자동화랑를 다 지우고 재시도 해봐야겠네요. 친절하게 설명 잘해주셔서 감사합니다^^!

  5. 2021.07.26 21:08

    비밀댓글입니다

+ Recent posts