2015-05-14 43 views
1

我成功注册了IBM Bluemix的Raspberry Pi。它有连接到它并运行的温度和湿度传感器。使用IBM Bluemix注册Raspberry Pi

问:在建设物联网应用首发,我需要编写上的Rpi什么推传感器数据为Bluemix或者干脆提供的MAC地址和API会做的伎俩?

注意:我遵循一个配方来配置我的Raspberry Pi,注册MAC地址。它连接并发送消息,当我检查设备。

请让我知道是否需要执行任何其他配置或编码以发送特定的dht22传感器数据以在Bluemix中可视化并在Node-red中使用它。

+0

我修改了树莓派秘方DHT11最近您的凭据,看看: https://github.com/vmorris/iot-raspberrypi – holocron

回答

0

如果Bluemix IOT控制台显示设备已连接并发送数据,则不需要在Raspberry Pi上做更多的事情。

您将需要将IOT服务绑定到您的Node-RED实例(假设您在Bluemix上运行Node-RED)来访问数据。

+0

它每隔两秒发送一次消息或类似的不是传感器数据。它显示更像ping,并且当我显示数据时它显示CPU温度和正弦波! –

+1

好的,你可以用你使用的配方链接来更新你的问题。这样我们可以看到它期望发布的数据。但听起来您需要添加自己的代码来读取传感器并发布它。 – hardillb

0

我相信你所用的配方是这样的一个:https://developer.ibm.com/iot/recipes/raspberry-pi/

每在源代码中的自述,这是该样品中发出的事件是:

CPU temperature 
CPU Load 
Simulated Sine wave to demonstrate the different events can be pushed to IoT Portal and visualized. 

如果你想捕捉其他项目,如湿度,您可能需要创建额外的代码/逻辑。

+0

Yesss和我一样,我现在怎么编辑它?很明显,我必须通过终端进行此操作,并且不能使用其他选项 –

+0

您没有理由使用终端编辑代码......您可以在工作站上使用IDE并FTP代码,或连接HDMI显示器和键盘+鼠标并在Pi上使用X编辑器。但是,是的,在终端中编辑它可能比较简单 - vim,emacs,nano等等。 – holocron

3

默认情况下,Raspberry Pi配方只发送CPU温度和CPU负载。由于默认情况下Raspberry Pi中没有传感器,因此配方会使用CPUTemp和CPULoad等参数。

对于您的情况,您需要更新代码以包含要发送到IoTF(Bluemix)的dht22温度和湿度参数。请检查Github上代码为树莓派配方 - https://github.com/ibm-messaging/iot-raspberrypi

导航到samples/c的配方代码。您将必须收集dht22传感器数据并将其转换为JSON并将其发送给IoTF。

  1. 在iot.h,更新JSON结构,包括您的传感器值。如果你不需要它们,你可以删除cputtemp和cpuload参数。

  2. 在iotmain.c中,第152行用代码更新代码以收集dht22传感器值。

  3. 在jsonator.c中,根据新的结构更新新的传感器值。

然后按照提供的步骤here编译代码并安装新的deb文件。现在,iot服务将发送带有dht22传感器值的数据。