Node-RED - MongoDB 연결
Arduino/Node-red

Node-RED - MongoDB 연결

Node-RED에서 MongoDB 연결

Node-RED에 MongoDB를 연결해서 사용하기 위해서는 우선 MongoDB 설치가 필수입니다. 아래 참조 사이트에 들어가면 MongoDB 설치 및 설정을 할 수 있습니다.

 

https://khj93.tistory.com/entry/MongoDB-Window%EC%97%90-MongoDB-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0

 

[MongoDB] Windows에 MongoDB 설치하기

MongoDB 몽고 DB는 Document 지향 데이터베이스 시스템으로 대표적인 NoSQL DB입니다. 오늘은 그러한 MongoDB를 Winodws에 설치 방법에 대해 포스팅을 해보려고 합니다 1. 설치 하기 설치 링크 : www.mongodb.com..

khj93.tistory.com

 

무사히 설치를 완료하였다면 Node-RED 사용자 디렉터리에서 다음 명령을 실행합니다.

 

 

무사히 설치가 완료되었다면 기존 왼쪽에 있는 노드에 MongoDB 노드가 추가된 것을 확인할 수 있습니다.

 

 
아두이노 코딩
다음과 같이 코딩하고 업로드한다. 단순하게 1 2 3 4 5를 출력하지만 본인이 원하는대로 센서값을 출력해도 된다.
","을 기준으로 나눠 각각 따로 저장이되게 코딩한다.
void setup() {
  Serial.begin(9600);
}

void loop() {
  Serial.print(1);
  Serial.print(",");
  Serial.print(2);
  Serial.print(",");
  Serial.print(3);
  Serial.print(",");
  Serial.print(4);
  Serial.print(",");
  Serial.print(5);
  Serial.print(",");
  delay(500);
}
node-red와 센서 연결
node-red를 다음과 같이 디자인한다. 시리얼 노드를 더블클릭해, 연결된 아두이노 나노 보드의 COM 포트를 입력한다.

 

serial 노드를 생성해, function 노드와 연결한다. 그리고, function 노드를 더블클릭해 다음과 같이 코딩한다. function 출력은 12개로 설정한다. 시리얼에서 문자열로 가져온 메시지 데이터는 콤마 형식으로 구분되어 있다. 이를 분리해 배열로 만들고, 실수값으로 변환해 메시지 리스트를 만든다. 이를 리턴한다.
 
 
 
node-red와 MongoDB 연결
디버깅을 위해 msg.payload, text 노드를 생성해 연결한다. mongodb out 노드를 생성해, 함수와 연결한다.
 

 

다음과 같이 몽고디비에 저장할 데이터베이스, 유저, 암호 등 연결 정보를 설정한다.
 

 

 

센서 값에 타임스탬프를 추가하기 위해, 함수를 하나 더 추가하고, 처음 만든 함수의 첫번째 출력과 노드를 연결한다. 함수의 출력은 기존에 만든 몽고디비 노드 입력과 연결한다. 

 

 
본 글에서는 받은 1 2 3 4 5의 데이터를 각각 flex1, flex2, flex3, flex4, flex5에 저장한다. 위에 코드를 각각 함수에서 payload 안에 sensor 필드의 값만 바꿔주면 된다.
노드레드 프로그램 배포 전에 다음과 같이 mongodb collection data를 모두 삭제한다. 
db.data.remove({})
배포를 하면, 다음과 같이 몽고디비에 저장되는 센서 데이터 값을 확인할 수 있다.
show dbs
use sensor
db.records.find()

 

node-red에서 데이터가 제대로 나오는지 확인할려면 주소창에 127.0.0.1:1880/ui 를 입력하면 대쉬보드를 확인할 수 있다.

 

출처 : http://daddynkidsmakers.blogspot.com/2021/02/arduino-nano-ble-node-red-iot-mongodb.html

 

Arduino nano BLE, Node-red기반 IoT 데이터 MongoDB 저장 및 모니터링하기

Arduino nano BLE, Node-red, IoT, 데이터, MongoDB, 저장, 분석,방법, 공유, 코딩, 예제, 아두이노, 노드래드, 몽고디비

daddynkidsmakers.blogspot.com

 

'Arduino > Node-red' 카테고리의 다른 글

Node-red  (0) 2021.08.14