Firebase 에서 JsonObject 받기

Checker



17.12.01

Firebase DB에서 JsonObject로 다운받아 정보를 얻어보겠습니다.
DB 구조는 아래와 같이 했습니다.  LEG 를 통해 저 아래 있는 데이터들을 가져올겁니다.

라이브러리는 기존에 사용했었던 FirebaseArduino 를 사용했습니다.
깃 주소와 참조 문서는 아래 링크를 걸어두었습니다~

https://github.com/firebase/firebase-arduino
http://firebase-arduino.readthedocs.io/en/latest/#

우선 해당 라이브러리는 FirebaseObject 라는 놈으로 오브젝트를 가져옵니다.
FirebaseObject  에서 JosnVariant 를 get 할 수 있고 Variant 는 ArduinoJson 라이브러리에서  보니 JsonObject 로 변환이 가능합니다.  (ArduinoJson  라이브러리 링크는 아래 있습니다만, FirebaseArduino 라이브러리의 서드파티 라이브러리로 포함이 되어있습니다)

https://github.com/bblanchon/ArduinoJson

어쨋든 다운을 받고, 원하는 정보를 추출했습니다. DB에 없는 값은 0으로 표시되는지 확인하기 위해 테스트를 했습니다.

// 파이어베이스 JSON 오브젝트 가져오기
FirebaseObject firebaseObject = Firebase.get("LEG");

// JsonObject& 로 변환
JsonObject& jsonObject = firebaseObject.getJsonVariant
maxAcX = jsonObject["maxAcX"];          
minAcX = jsonObject["minAcX"];
maxAcY = jsonObject["maxAcY"];          
minAcY = jsonObject["minAcY"];
maxAcZ = jsonObject["maxAcZ"];          
minAcZ = jsonObject["minAcZ"];
        
maxGyX = jsonObject["maxGyX"];          
minGyX = jsonObject["minGyX"];
maxGyY = jsonObject["maxGyY"];          
minGyY = jsonObject["minGyY"];
maxGyZ = jsonObject["maxGyZ"];          
minGyZ = jsonObject["minGyZ"];

         
Serial.print("maxAcX : "); Serial.print(maxAcX);
Serial.print(" minAcX : "); Serial.println(minAcX);
Serial.print("maxAcY : "); Serial.print(maxAcY);
Serial.print(" minAcY : "); Serial.println(minAcY);
Serial.print("maxGyX : "); Serial.print(maxGyX);
Serial.print(" minGyX : "); Serial.println(minGyX);


결과입니다. maxAcY와 minAcY 는 DB에 없어서 0으로 뜨네요.


댓글 없음:

댓글 쓰기

BatteCoins 프로젝트

BattleCoins 17.12.26 요 몇 일 전부터 코인 매니저인 송대표가 찾아왔습니다. 그리고 이런저런 이야기를 나누다가 지금 진행중인 Checker를 잠깐 일시정지하고 코인 관련 아이템을 짧게 진행해보기로 했습니다. 그...