이번 시간에는 아두이노와 Wemos D1 R1을 통해 수집한 데이터로 Thingspeak라는 프로그램을 이용하여 휴대폰 및 컴퓨터에 값을 띄우는 방법에 대해 소개해드리도록 하겠습니다.
우선 Thingspeak에 가입을 해줍니다. 가입 시에 Email을 적는 란이 있습니다. 이메일을 아무거나 적으면 가입이 안 되고 학교 이메일 및 직장 이메일을 사용하여야 합니다. 저는 대학교에 입학했을 때 제공받은 학교 이메일로 가입을 하였습니다. 학교가 MATLAB 라이선스를 등록을 해놓았다면 학교 이메일로 사용할 수 있습니다.
가입을 완료하였다면 채널을 생성해 줍니다.
Thingspeak 로고 옆에 channels를 클릭하고 My channels를 클릭하여 줍니다. 초록색 New Channel 버튼을 클릭하여 채널을 생성하여 줍니다. New channel 버튼을 클릭하면 아래와 같은 화면이 뜨게 됩니다.
Name에 원하는 이름을 설정해 주시고 값을 1가지 띄울 거라면 Field 1만 체크박스에 체크해 주시고 두 가지를 띄울 거라면 Field 2도 체크해 줍니다. 나중에 변경 가능하니 잘못 클릭하여도 상관없습니다.
맨 밑에 Save Channel 이란 초록색 박스를 누르면 채널이 생성됩니다.
저는 채널 이름을 value로 설정하여 채널을 만들었습니다. 채널이 생성되면 채널 이름 밑에 Channel ID가 생성이 됩니다.
채널의 Sharing 항목을 통해서 channel의 접근을 private 하게 할 건지 public 하게 할 건지 결정할 수 있습니다. 저는 public으로 설정했습니다.
다음으로 휴대폰으로 값을 띄우는 방법에 대해 알려드리도록 하겠습니다. 두 가지 방법이 존재합니다. 첫 번째는 Thingview 앱으로 확인하는 방법 두 번째는 IoT ThingSpeak Monitor Widget으로 확인하는 방법입니다.
Thingview로 확인하는 방법을 먼저 설명드리도록 하겠습니다. 우선 ThingView라는 앱을 다운로드해 줍니다. 무료 버전과 유료 버전이 존재하는데 무료 버전을 다운로드했습니다.
Thingview를 열고 나서 밑에 파란색 버튼을 클릭해 주면 Add channel, Add all my channel 버튼이 나오는데 저는 하나의 채널만 열 것이기 때문에 Add channel을 클릭하였습니다.
그러고 나서 아래와 같은 화면이 뜨게 됩니다. Channel ID를 입력해 주고 채널의 접근이 public이라면 체크박스를 체크해 주시고 private이라면 체크박스를 해제해 줍니다. 체크박스를 해제하게 되면 API Key 항목이 뜨게 되는데 이 항목에 Read API를 넣어줍니다. Read API와 Write API에 대해서 저번 포스팅에 설명해드렸으니 참고 바랍니다. 그러고 나서 Search를 누르면 성공적으로 채널이 불러와집니다.
value라는 채널이 정상적으로 불러와졌으며 이 채널을 클릭하면 Thingspeak에서 보았던 데이터들을 볼 수 있습니다.
그다음 방법으로 IoT ThingSpeak Monitor Widget을 다운로드해 줍니다. 휴대폰의 위젯을 통해 들어가줍니다.
마찬가지로 채널 ID와 Read API를 입력해 줍니다. 위젯 설정에는 크게 First field and alert settings, Second field and alert settings, Update settings, Display Settings, Server settings로 나뉩니다. 한 위젯에 온도, 습도 항목을 띄우기 위해 First field 세팅에서 Field ID에 온도 필드를 설정해 주고 Second field 세팅에서는 습도 필드를 설정해 줍니다. 마지막으로 update 세팅에서 5분마다 값이 업데이트 되도록 5로 설정해 줍니다. 그러고 나서 맨 위 파란색 띠에 있는 체크 표시를 눌러주면 위젯이 설정 완료됩니다.
두 번째 위젯에서는 거리 값을 띄우고 특정 값 아래로 값이 측정되면 휴대폰에 알람이 가게 설정을 할 예정입니다. 새로 위젯을 띄우고 위에서 했던 것과 같이 채널 ID, Read API를 적어줍니다. Field ID에는 거리 필드로 설정해 줍니다. 15 아래가 되면 알람을 띄우기 위해 Lower threshold exceeded alert의 체크박스에 체크하고 Lower threshold value에 15.0을 적어줍니다. 반대로 특정 값 이상으로 설정하려면 Upper 체크박스에 체크한 다음 value에 값을 설정해 줍니다.
Insistent sound notification은 설정해 놓은 값이 특정 값보다 커지거나/ 작아지기 전까지 계속 알람을 울리게 해주는 기능입니다. 위에 사진과 같이 설정한 후 Insistent sound notification에 체크하게 되면 값이 15를 초과하기 전까지 알람이 계속 울리게 됩니다.
이처럼 위젯을 만든 후에 수정할 것이 생기면 위 사진에 표시된 버튼을 눌러주면 됩니다.
댓글