QIoT Suite Lite를 통해 Raspberry Pi를 QNAP NAS에 연결
Raspberry Pi(Nodejs) 시작하기

이 자습서에서는 Raspberry Pi (Debian 기반 Raspbian를 실행하는)를 작업하는 기본 사항에 대해 배웁니다. 그런 다음 QIoT Suite Lite를 사용하여 장치를 QNAP NAS에 연결하는 방법을 배웁니다.
Raspberry Pi 및 NAS가 동일한 LAN에 있는지 확인하십시오.
1. QNAP NAS에 Raspberry Pi 연결
운영 체제에서 Raspberry Pi 장치를 구성하고, 개발 환경을 설정하고, Raspberry Pi에 애플리케이션을 배포하십시오.
1.1 필요한 항목들
- Raspberry Pi
- NOOBS가 설치된 SD 카드(8GB 클래스 4 SD 카드 권장).
- HDMI 디스플레이.
- USB 키보드 및 마우스.
- 전원 공급: Pi를 사용하려면 모델 3B의 경우 5V에서 최소 2A, 이전 모델의 경우 5V에서 700mA인 USB 마이크로 전원 공급 장치가 필요합니다.
1.2 Raspbian 설정
- 추출한 NOOBS 파일이 들어 있는 SD 카드를 Raspberry Pi에 삽입합니다
- 키보드, 마우스 및 HDMI 디스플레이를 Raspberry Pi에 연결합니다. 전원 어댑터를 꽂습니다. Raspberry Pi에는 전원 스위치가 없고, 어댑터를 연결하면 자동으로 전원이 켜집니다.
- 설치한 OS 및 사용할 언어와 키보드 레이아웃을 묻는 메뉴가 나타납니다. Raspbian 옆의 상자를 선택하고 "설치"를 클릭합니다.
- 설치 과정에 최대 20분이 걸리며, 완료되면 Raspbian 데스크톱이 다시 시작됩니다.
- Wi-Fi 구성 ? 데스크톱 환경의 오른쪽 위 메뉴에서 무선 네트워크 아이콘을 찾은 다음 클릭하여 사용 가능한 Wi-Fi 네크워크의 목록을 봅니다.
- 다른 장치에서 Raspberry Pi에 연결하려면, Pi의 IP 주소를 알아야 합니다. 터미널을 사용하여(Ctrl + Alt + t를 눌러 터미널을 엽니다), hostname -I를 입력합니다.
다음 위치에서 더 많은 Raspberry Pi 설정 가이드를 찾을 수 있습니다: https://www.raspberrypi.org/learning/software-guide/
1.3 Nodejs 및 필수 라이브러리 설치
- node.js v6 설치
QIoT Suite Lite 샘플 코드를 보려면 QNAP github을 방문하십시오
2. QIoT Suite Lite에서 장치 생성
2.1 QIoT Suite Lite 설치
- QIoT Suite Lite는 App Center에서 설치할 수 있습니다.
- QIoT Suite Lite를 실행하고 로그인합니다. 기본 사용자 이름과 비밀번호는 “admin”입니다.
2.2 새 IoT 애플리케이션 생성
IoT 애플리케이션은 사물, 규칙 및 대시보드의 조합입니다. 먼저 IoT 애플리케이션에서 "사물"을 생성할 것을 권장합니다. 이 IoT 애플리케이션을 통해 NAS에 연결된 모든 장치의 기록을 유지할 수 있습니다.
규칙을 이용하면 연결된 장치에 의해 생성된 데이터를 수집, 처리, 분석하고 작업하는 IoT 애플리케이션을 구축할 수 있습니다. 규칙은 하나 또는 여러 장치로부터 나온 데이터에 적용될 수 있고, 하나 또는 여러 작업을 동시에 할 수 있습니다.
대시보드는 데이터를 분석하여 실시간에 이해할 수 있는 보고서로 변환합니다.
이러한 모든 요소는 사용자에게 완벽한 IoT 애플리케이션 환경을 제공합니다.

- 처음 QIoT Suite Lite를 사용하는 경우, QIoT Suite Lite가 마법사를 제공하여 빠르게 IoT 애플리케이션을 설정하도록 도와줍니다.
- “빠른 설치 마법사”를 클릭하여 빠른 설치 마법사를 시작합니다. 팝업 창에서 QIoT Suite Lite 소개를 읽은 후 다음 버튼을 클릭합니다.
- 새 IoT 애플리케이션 생성
- IoT 애플리케이션 이름을 입력합니다. 예: app_1.
- 규칙 이름 및 대시보드 이름은 입력한 IoT 애플리케이션 이름을 기반으로 자동으로 생성됩니다.
- “다음”을 클릭하여 새 IoT 애플리케이션 생성을 완료합니다.
- "+ 추가"를 클릭하여 이 애플리케이션의 장치를 추가합니다.
- "+ 추가" 클릭 후, “사물 추가”에서:
- 장치의 이름(예: raspberrypi)을 입력하고 추가 속성에 장치 정보(예: 일련 번호 및 제조업체)를 제공합니다.
- QIoT에서 이미 장치를 지원하는 경우(Arduino Yun, Raspberry Pi, Edison 및 Linkit 7688 (Duo)), 사전 정의된 사물 유형을 선택합니다.
- 추가를 클릭하여 장치를 추가합니다.
- 장치의 IP 주소, 사용자 이름 및 비밀번호를 입력하고 연결 아이콘을 클릭합니다. QIoT Suite Lite가 장치와의 연결 상태를 확인합니다. 연결이 검증된 후 다음을 클릭합니다.
- "리소스"에서 "리소스 추가"를 클릭합니다.
- "리소스 추가" 클릭 후, “사물 리소스 추가”에서:
- 리소스 이름 및 리소스 ID에서 센서의 이름과 ID를 입력합니다. 리소스 ID는 QIoT Broker에 항목을 생성하는 데 사용됩니다. 이 ID는 장치에 대해 고유해야 하며 동일한 장치에 대해 중복이 허용되지 않습니다.
- 리소스 이름 및 리소스 ID에서 센서의 이름과 ID를 입력합니다. 리소스 ID는 QIoT Broker에 항목을 생성하는 데 사용됩니다. 이 ID는 장치에 대해 고유해야 하며 동일한 장치에 대해 중복이 허용되지 않습니다.
- "API 키"에서:
- QIoT 대시보드 위젯을 웹 페이지에 내장시키거나 타사 애플리케이션에서 QIoT API에 액세스하려면, API 키 탭으로 이동하고 "새 API 키 생성"을 클릭합니다. "완료"를 클릭합니다.
- QIoT 대시보드 위젯을 웹 페이지에 내장시키거나 타사 애플리케이션에서 QIoT API에 액세스하려면, API 키 탭으로 이동하고 "새 API 키 생성"을 클릭합니다. "완료"를 클릭합니다.
- 이제 IoT 애플리케이션이 생성됩니다. Node.js 샘플 코드 및 관련 파일(인증서, 리소스 정보)이 장치의 지정된 경로에 업로드됩니다.
- 샘플 대시보드가 생성됩니다.
- 규칙 탭으로 이동하여 장치에서 전송된 데이터를 처리하는 방법 및 대시보드에 표시하는 방법에 대한 플로우 또는 규칙을 정의합니다.
3. MQTTS를 사용하여 QIoT Suite Lite에 장치 연결
3.1 샘플 코드 실행
- PC에서 터미널 애플리케이션(예: PuTTY)을 엽니다. SSH에 의해 장치에 연결하고 샘플 코드를 넣을 폴더를 입력합니다(예: /home/root/bundle).
- 샘플 코드 종속 파일을 설치하고 다음 명령을 입력합니다
- 샘플 코드 실행
- 장치가 "temp" 항목 또는 사용자가 정의한 항목으로 메시지를 전송합니다
3.2 다른 프로토콜
- "장치 연결" 버튼을 클릭합니다
- 다른 프로토콜을 선택하여 사용할 수 있습니다
- 장치에 SSH를 실행하고 다음 명령을 입력합니다.
4. Power BI 통합
4.1 첫 번째 Power BI 계정 얻기
- https://powerbi.microsoft.com/en-us/에서 무료 PowerBI 계정을 신청합니다
- 등록 후, 다음 페이지가 나타납니다. "지금은 건너뛰기"를 클릭하여 데이터세트 생성을 시작할 수 있습니다.
4.2 스트리밍 데이터세트 API 설정
- "데이터 집합"를 생성합니다
- 화면 오른쪽 위 구석에서 "생성"을 클릭합니다
- 그런 다음 "스트리밍 데이터 집합"를 클릭합니다
- 데이터 소스로 "API"를 선택하고 "다음"을 클릭합니다.
- 스트림에서 값을 정의하면 텍스트 상자에 JSON 결과가 나타납니다. 이 JSON 코드를 사용하여 데이터를 IoT 애플리케이션에 푸시할 것입니다. "생성"을 클릭하여 작업을 마칩니다.
- 데이터 스트림을 생성한 후, IoT 애플리케이션이 사용자가 생성한 스트리밍 데이터 데이터세트에 라이브 데이터를 푸시하는 POST 요청을 사용하여 호출할 수 있는 REST API URL을 얻게 됩니다.
4.3 IoT 애플리케이션에서 Node-RED의 노드 구성
- QIoT Suite에서 IoT 애플리케이션을 생성합니다. 다음은 첫 번째 Node-RED 플로우입니다. 그런 다음 자신만의 IoT 플로우 생성을 시작할 수 있습니다. https://nodered.org/
에서 Node-RED에 대해 자세히 알 수 있습니다 - 라이브 데이터를 Power BI에 푸시하기 전에. IoT 데이터를 스트리밍 데이터 데이터세트로 변환하는 "기능" 노드가 필요합니다. 여기에서 msg.payload를 JSON 데이터세트로 교체할 수 있습니다.
- 코드는 다음과 같은 기능을 합니다:
- 라이브 데이터를 Power BI로 푸시하는 데 유용한 "http 요청" 노드가 필요합니다. "http 요청" 노드를 끌어다 놓고 "기능" 노드의 끝에 연결합니다.
- Power BI 콘솔에서 가져온 REST API URL을 복사하여 붙여넣고 http 메소드를 POST에 설정합니다. "배치"를 클릭하여 변경 내용을 저장합니다.
- Node-RED 플로우가 아래와 같이 표시됩니다.
4.4 실시간 데이터를 표시하는 타일 추가
- "대시보드"를 생성합니다
- 화면 오른쪽 위 구석에서 "생성"을 클릭합니다
- 그런 다음 "대시보드"를 클릭합니다
- 대시보드의 이름을 입력하고 "생성"을 클릭하여 대시보드 생성을 완료합니다.
- 화면 오른쪽 위 구석에서 "타일 추가"를 클릭합니다
- "사용자 지정 스트리밍 데이터"를 선택하고 "다음"을 클릭합니다.
- "데이터 집합"를 선택하고 "다음"을 클릭합니다.
- 가상화 유형(예: 게이지)을 선택하고, 값, 최소값, 최대값을 설정합니다.
- 작업할 스트리밍 데이터세트를 가지게 되고, 다음과 같은 실시간 게이지를 가져올 수 있습니다.