아두이노 클라우드 센서 타워 만들기: 온도, 모션, 가스 모니터링
부품 및 소모품
| 부품 |
수량 |
| Arduino MKR1000 |
1 |
| DHT22 온도/습도 센서 |
1 |
| Seeed Grove PIR 모션 센서 |
1 |
| Seeed Grove 가스 센서 (MQ3) |
1 |
| Adafruit TSL2561 디지털 조도/럭스/광량 센서 |
1 |
프로젝트 소개
이 튜토리얼을 따라 여러 센서를 장착한 작은 타워를 만들고, 아두이노 클라우드에 연결해 실시간 데이터를 시각화해 보세요.
아두이노 클라우드 연결
- 아두이노 클라우드 계정을 생성하고 로그인하세요.
- 처음이라면 '시작하기' 흐름을 따라 아두이노 클라우드 라이브러리를 다운로드하고 첫 디바이스를 만드세요.
- 새 씽(Thing)을 만들고 이름을
sensorTower로 지정하세요.
- 속성(Property)을 생성하세요. 속성은 아두이노 클라우드 대시보드에서 모니터링할 데이터 종류를 정의합니다.
- 속성 이름
- 속성 타입: 측정 단위 지정
- 속성 정책: 값 변경 시 또는 일정 간격으로 데이터 전송 여부 지정
- 업데이트 주기: '정기적 업데이트' 선택 시 간격 지정
- 이 프로젝트엔 온도, 습도, 가스 감지, 모션 감지, 조도 등 5개 속성이 필요합니다.
- 모든 속성 생성 후 Code 버튼을 클릭해 미리 채워진 스케치를 확인하세요.
생성된 코드엔 아두이노 클라우드 씽 객체 생성, 디바이스 자격증명으로 초기화, 디버거 활성화(선택), 속성 설정 코드가 이미 포함되어 있습니다.
ArduinoCloudThing sensorTower;
sensortower.begin(thingName, userName, thingId, thingPsw, sslClient);
sensortower.enableDebug();
sensortower.addProperty("temperature", FLOAT, R);
sensortower.writeProperty("temperature", "val");
테스트
- 생성된 코드를 다운로드해 보드에 업로드하세요.
- 필수! 네트워크 연결 정보를 채우세요:
/////// Wifi Settings ///////
char ssid[] = "";
char pass[] = "";
- 대시보드 뷰로 돌아가면 화면에 값이 실시간으로 변하는 걸 볼 수 있습니다.
센서 연결
각 센서 데이터시트를 참고해 아두이노에 연결하세요. 본 튜토리얼과 동일한 구성을 원한다면 아래 배선도 이미지를 참고하세요.
코드 작성
아두이노 클라우드 대시보드에서 받은 코드를 기반으로, 센서가 연결된 핀 선언과 각 센서 읽기 코드만 추가하면 됩니다.
코드
아두이노 클라우드에서 생성된 스케치에 센서별 읽기 로직을 추가한 전체 코드입니다.
커스텀 파트 및 인클로저
회로도
배선도 이미지 참조