2016-07-23 7 views
0

Ramesberry Pi (게이트웨이)를 통해 Sense HAT (장치)에서 Bluemix 응용 프로그램으로 데이터를 전송합니다. 내 파이는 라즈베리 파이의 CPU 온도를 Bluemix에 보냅니다. 하나의 IBM IoT 노드에서 두 데이터를 모두받습니다. Sense HAT 데이터를 Raspberry Pi 데이터와 구별 할 수는 없습니다. 다음은 함수 노드 코드입니다.게이트웨이로 IBM Bluemix에 데이터를 보내는 동안 Raspberry Pi의 장치 ID를 얻는 방법

var v; 
if(msg.deviceId==="raspberryID") 
{ 
    v= "From Raspberry Pi"; 
} 
    else if (msg.deviceId=="senseHatid") 
{ 
    v= "From Sense Hat"; 
} 
return {payload:v} 

반환 값은 항상 "Sense Hat에서"이지만, 디버그에서 데이터를 모두받을 수 있습니다. if else 문에서 msg.deviceType을 사용하면 동일한 결과를 얻습니다.

+0

코드를 테스트했는데 정상적으로 작동합니다. Sense Hat과 Raspberry Pi를 구별 할 수 있습니다. 장치 ID를 다시 확인하고 확인하십시오. –

답변

0

당신은 senseHatid를 사용하여 Raspberry Pi와 SenseHAT에서 모든 데이터를 게시하는 것처럼 보입니다.

노드 - 레드를 사용하여 라스베리 파이에서 판독 값을 게시하고 있습니까? 이렇게 확인하려면 아웃 바운드 Watson IoT 노드의 msg.deviceType 및 msg.deviceId 값을 CPU 온도의 경우 Raspberry Pi 게이트웨이로, senseHat 데이터의 경우 SenseHit 장치로 설정합니다.

+0

브라이언 감사합니다. 그것은 그 문제를 해결했습니다. – Meadow