ESP8266을 사용하여 QNAP QIoT Suite Lite에 어떻게 연결합니까?
이 자습서에서는 ESP8266을 사용해 QIoT Suite Lite에 데이터를 전송 및 수신하기 위해 MQTT 사용하는 방법을 배웁니다. ESP8266이 서로 다른 펌웨어, 사양 및 지침을 가지고 있으므로, 두 가지 일반적인 방법이 있습니다:
- Arduino Core를 사용하는 ESP8266
- Arduino와 결합된 AT 명령을 사용하는 ESP8266
준비 작업(Arduino IDE를 사용하여 라이브러리를 설치하고 IoT 애플리케이션 설정)
- 이 예에서는 MQTT를 사용합니다(자세한 내용은 https://pubsubclient.knolleary.net/을 방문하십시오).
- 새 IoT 애플리케이션을 추가합니다("QIoT 대시보드에 DHT11 데이터를 표시하는 방법은? 참조")
여기서는 예로 “button” 및 “led”를 사용합니다(리소스 이름과 리소스 ID는 “button” 및 “led”입니다).
- “규칙” 페이지로 이동하여, “button”에서 대시보드로 데이터를 연결하고 또한 상태를 장치에 전송합니다.
- QBroker 노드 설정: “button” 리소스를 “MQTT 메시지 입력”으로 설정합니다
- QDashboard 설정: 이름 “버튼”을 사용합니다(이는 QIoT Suite Lite 버전 1.1.1xx에만 적용할 수 있습니다). 최신 QIoT Suite Lite 버전을 사용하는 경우 다음을 참조하십시오: “QIoT Suite Lite를 v1.1.1에서 v1.1.2로 업데이트한 후 대시보드를 어떻게 사용합니까?”
- 노드 변경 설정: “msg.payload.value”을 “msg.payload”로 이동합니다
- QBroker 노드 설정: “led” 리소스를 “MQTT 메시지 출력”으로 설정합니다
- “대시보드” 페이지로 이동하여 버튼 상태를 확인합니다
json 파일에 대한 더 많은 예제를 보려면 아래 링크를 참조하십시오:
https://github.com/qnap-dev/qnap-qiot-sdks/blob/master/projects/esp8266-example/qiot-suite-lite-export/ESP8266.json
Arduino Core를 사용하는 ESP8266
타사 오픈 소스 라이브러리 사용 - ESP8266 WiFi 칩용 Arduino core: https://github.com/esp8266/Arduino
nodemcu를 예로 사용하여(이는 다른 ESP8266 패키지 웨이퍼와 동일합니다) 관련 서킷을 직접 수정합니다. 아래는 참조 이미지입니다:


resourceinfo.json 파일을 토대로 하여 다음을 수정합니다:

이 코드는 메시지를 수신한 다음 LED를 제어하는 것을 표현하는 데이터를 관리합니다(예: 수신 데이터 값이 “1”이면 LED를 켭니다).

이 코드는 첫 연결 및 재연결을 관리합니다. 구독도 여기에서 설정할 수 있습니다.

이 코드는 입력 메시지를 “{"value":"0"}” 및 “{"value":"1"}”에 패키지한 다음 QIoT Suite Lite에 게시하는 주 작업을 관리합니다.

설정 후, 버튼을 클릭하면 LED가 켜집니다. 이와 동시에 QIoT Suite Lite 대시보드의 버튼이 아래와 같이 켜집니다:


Arduino와 결합하여 AT 명령을 사용하는 ESP8266
타사 오픈 소스 라이브러리 사용 - WiFiEsp: https://github.com/bportaluri/WiFiEsp
Seeeduino를 예로 사용, 이는 다른 Arduino Uno 개발 보드와 동일합니다
참고: ESP-01은 3.3V만 지원하므로 Seeeduino를 사용할 때 전압을 3.3V로 변경하십시오. (Arduino Uno 또는 다른 개발 보드를 사용할 때, 관련 서킷을 직접 수정하십시오. 아래는 참조 이미지입니다).


resourceinfo.json 파일을 토대로 하여 다음을 수정합니다:

이 코드는 메시지를 수신한 다음 LED를 제어하는 것을 표현하는 데이터를 관리합니다(예: 수신 데이터 값이 “1”이면 LED를 켭니다).

이 코드는 첫 연결 및 재연결을 관리합니다. 구독도 여기에서 설정할 수 있습니다.

이 코드는 입력 메시지를 “{"value":"0"}” 및 “{"value":"1"}”에 패키지한 다음 QIoT Suite Lite에 게시하는 주 작업을 관리합니다.

설정 후, 버튼을 클릭하면 LED가 켜집니다. 이와 동시에 QIoT Suite Lite 대시보드의 버튼이 아래와 같이 켜집니다:

