相信大家在登录bluemix Dashboard之后, 都像笔者一样开始蠢蠢欲动, 想一展身手。 先别着急coding, 我们先来看看bluemix提供的现有的模板和样例, 简单的看一样, 能让你的setup事半功倍。
登录首页后点击CATALOG, 你就会看到下面的界面, 很多很多的样例模板, 不过不要害怕哦, 在接下来的文章里面, 我们就跟随IBM的官方教程一起学习一下。
万事开头难, 我们就开始从第一走一下: Boilerplates
Internet of Things (IoT) starter app物联网app, 相信目前很多小伙伴已经投入其中了。
Bluemix提供通过Node-RED来帮助用户建立和运营IoT app。 大家可以用bluemix提供的模拟器来实验一下简单的流程, 然后在在自己具体的设备上开发实践。
Node-RED是基于 Node.js 的,它把自己描述为“一个连接物联网的可视化工具”。它允许开发人员使用一个基于浏览器的流程编辑器连接设备、服务器和 API 应用。项目地址: http://nodered.org/ 朋友们可以先行研究一下
下面我们来介绍一下如何在Bluemix中使用Internet of Things (IoT) starter
使用
1. 通过一下步骤来建立IoT starter app。
a. 从catalog中的boilerplates 部分点击Internet of Things Foundation Starter, 然后点击View More
b. 输入app的名字, 修改host名字。 然后点击Create。
稍微等一会之后, app就会启动
http://<yourhost>.mybluemix.net
然后就会带您来到Node-RED for Internet of Things landing 界面
点击Go to your Node-RED flow editor
然后你就会看到一个一个可以从模拟设备读取温度的流程了
建立一个模拟器
如何来建立一个模拟器设备
1 在浏览器中输入https://quickstart.internetofthings.ibmcloud.com/iotsensor/, 你就可以看到这个IoT Sensor。
2 点击右上角那个带数字串的MAC地址就可以看到一系列的模拟数据
3 重新回头Node-RED workspace, 然后双击IBM IoT App In node来打开配置界面。 在Authentication 里面, 在下拉框里面选在start,从模拟器中复制Mac地址, 然后拷贝到Device ID里, 点击ok。需要确保的是Mac地址全部是小写,而且没有多余的空格
4 点击deploy按钮来进行部署
5 点击打开右边的debug界面。 您就可以看到生成的温度状态信息了。
- 增加模拟器中的温度值来观察debug pane中的状态信息变化。 需要注意的是温度超过40度就会有不同的消息出现。
修改示例的flow(流程)
下面是几个例子, 您可以根据自己的需要来修改流程
- 例如双击temp thresh节点你就可以看到判断温度是否在安全的限度内的规则。 您可以修改这些规则然后点击OK, deploy部署来修改正在执行的实例。
- 双击Temp节点可以查看数据是如何从设备传输过来的原始JSON数据转换成温度数据的
- ……
使用您自己的设备
如果您在IBM Internet of Things Foundation注册了自己的设备, 您也可以使用自己的设备。 注册地址
https://www.ng.bluemix.net/docs/services/IoT/index.html#iot170
根据您注册的设备来建立一个app
- 在app上绑定一个 Internet of Things service的实例
- 在IoTF organization 注册你的设备
- 配置 IBM IoT App In节点来标示您的设备。 然后在Authentication 类型里面选择Bluemix服务。 你会意识到现在可以选择更多的option了
- 您可以使用IBM Iot App Out 节点来给设备发送命令
保证flow编辑器的安全
默认的轻快下, flow编辑器是对所有人开放的, 但是您可以按照下面的步骤来给编辑器加个密码
- 在Bluemix Dashboard里, 选择您app的Environment Variables
- 添加的自定义variables:
a. NODE_RED_USERNAME - the username to secure the editor with
b. NODE_RED_PASSWORD - the password to secure the editor with
- 点击保存