在上一篇文章《Microsoft IoT Starter Kit 开发初体验》中,讲述了微软中国发布的Microsoft IoT Starter Kit所包含的硬件介绍、开发环境搭建、硬件设置、Azure IoT Hub的连接、程序的编译、下载和调试、PowerBI数据的展现。在这篇文章中,将会详细讲述Cloud to Device的消息反馈控制以及如何通过Stream Analytics将数据存储到Azure Storage Table,以方便数据后期的利用。

1. 反馈控制

上一篇文章中,验证了Device to Cloud的消息流,即设备发送数据到Azure IoTHub。其实,Azure IoTHub支持数据的双向传输,即设备也可以接收IoTHub发送的消息,从而达到反馈控制的目的。(早期的Azure EventHub只支持Device to Cloud的消息流,如果应用场景只需要发送Device to Cloud的消息,那么其实Azure EventHub就足以)。Microsoft IoT Starter Kit中包含了一个Chainable RGB LED,该LED可以用来演示反馈控制的功能。

首先,打开Device Explore,定位到Message to Device页面,如下图所示。

然后,在Message中输入控制命令,其格式如下:

{"Name":"SetRGBLed", "Parameters":{"rgbled":255}}

其中,下划线所示的内容可以根据所需控制的灯的颜色来确定:红色为0xff0000,十进制值为16711680;绿色为0x00ff00,对应的十进制值为65280;蓝色为0x0000ff,对应的十进制值为255.

当发送如上65280的命令后,Device Explore提示设备接收消息成功,再去确认LED灯的颜色,已经变为绿色。如下图所示。

2. 数据存储

Stream Analytics不仅可以将数据输出到PowerBI,还可以通过设置,将数据流输出到Azure Storage Table中,为后续的数据处理做好准备。下面讲述具体的设置方法。

首先,在Azure门户中新建一个存储账户,同时,下载Azure Storage Explorer工具到本地,用于连接Azure Storage Table。在本地打开Azure Storage Explorer工具,通过Add Account添加账户,如下图所示。

然后,在Tables中,新建一个表,用于存储Seeeduino的数据,这里以SeeeduinoTable为例,如下图所示。

接着,在Azure门户中,配置Stream Analytics的输出。通过添加New output来配置为SeeeduinoTable,如下图所示。

添加完成以后,Azure会自动对表的连接进行测试。如下图所示。

如果没有问题的话,给Seeeduino上电,先查看Azure IoTHub是否有数据输入。

再查看Stream Analytics是否有数据输入和输出,如下图所示。

如果没有问题的话,在通过Azure Storage Explorer工具查看是否有Seeeduino的数据。如下图所示。

3.总结

至此,通过这两篇文章,已经完整的阐述了Microsoft IoT Starter Kit所包含的硬件、开发环境搭建、硬件设置、Azure IoT Hub的连接、程序的编译、下载和调试、D2C数据的发送、C2D反馈控制的消息发送、PowerBI数据的展现和Azure Storage Table数据的存储。开发者可以在此基础上,通过Grove接口扩展更多的传感器和执行机构,结合Azure IoTHub,完成更多的功能。

Microsoft IoT Starter Kit 开发初体验-反馈控制与数据存储的更多相关文章

  1. Microsoft IoT Starter Kit 开发初体验

    1. 引子 今年6月底,在上海举办的中国国际物联网大会上,微软中国面向中国物联网社区推出了Microsoft IoT Starter Kit ,并且免费开放1000套的申请.申请地址为:http:// ...

  2. Microsoft IoT Starter Kit

    Microsoft IoT Starter Kit 开发初体验 1. 引子 今年6月底,在上海举办的中国国际物联网大会上,微软中国面向中国物联网社区推出了Microsoft IoT Starter K ...

  3. Xamarin.iOS开发初体验

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKwAAAA+CAIAAAA5/WfHAAAJrklEQVR4nO2c/VdTRxrH+wfdU84pW0

  4. IOS开发初体验

    IOS开发初体验 搭建开发环境 不多说什么了,开发环境的搭建太简单了,上App Store搜索XCode下载就行了,说多了都是眼泪 创建第一个IOS项目--HolleIOS 创建工程 选择工程创建位置 ...

  5. 中文代码示例之NW.js桌面应用开发初体验

    先看到了NW.js(应该是前身node-webkit的缩写? 觉得该起个更讲究的名字, 如果是NorthWest之意的话, logo(见下)里的指南针好像也没指着西北啊)和Electron的比较文章: ...

  6. Online开发初体验——Jeecg-Boot 在线配置图表

    Online开发——初体验(在线配置图表) 01 通过JSON数据,快速配置图形报表 02 通过SQL数据,快速配置图形报表 03 图表模板配置,实现不同数据源图表合并展示 04 图表布局,支持单排. ...

  7. Apache Beam入门及Java SDK开发初体验

    1 什么是Apache Beam Apache Beam是一个开源的统一的大数据编程模型,它本身并不提供执行引擎,而是支持各种平台如GCP Dataflow.Spark.Flink等.通过Apache ...

  8. 使用.NET 6开发TodoList应用(4)——引入数据存储

    需求 作为后端CRUD程序员(bushi,数据存储是开发后端服务一个非常重要的组件.对我们的TodoList项目来说,自然也需要配置数据存储.目前的需求很简单: 需要能持久化TodoList对象并对其 ...

  9. iOS开发UI篇—ios应用数据存储方式(XML属性列表-plist)

    iOS开发UI篇—ios应用数据存储方式(XML属性列表-plist) 一.ios应用常用的数据存储方式 1.plist(XML属性列表归档) 2.偏好设置 3.NSKeydeArchiver归档(存 ...

随机推荐

  1. Moocryption

    Moocryption 题目描述 Unbeknownst to many, cows are quite fond of puzzles, particularly word puzzles. Far ...

  2. Subsequences Summing to Sevens

    Subsequences Summing to Sevens 题目描述 Farmer John's N cows are standing in a row, as they have a tende ...

  3. mac home/end/pageup/pageDown

    home:按fn+左键 end:按fn+右键 pageup:按fn+上键 pagedown:按fn+下键

  4. AMQP协议学习

    参考这个:http://kb.cnblogs.com/page/73759/ 写的挺好 AMQP协议是一种二进制协议,提供客户端应用与消息中间件之间异步.安全.高效地交互.从整体来看,AMQP协议可划 ...

  5. SQL复习三(子查询)

    子查询 子查询就是嵌套查询,即select中包含这select,如果一条语句中存在着两个,或者两个以上的select,那么就是子查询语句了. 子查询出现的位置 where后,作为条件的一部分: fro ...

  6. 用php自动发邮件的简单实现

    如何自动发送邮件? php自带mail方法,不过只能在linux下直接使用,windows下要配置smtp服务器,有点麻烦. 可以用一些现成的类来实现,比如很有名的phpmailer,功能很强大,代码 ...

  7. Tokumx 代替 Mongodb 群集部署

    一, 配置环境: 系统: CentOS 7 x64 tokumx1 ip: 192.168.0.155 tokumx2 ip: 192.168.0.156 tokumx3 ip: 192.168.0. ...

  8. Linux环境变量相关文件

    执行顺序为: /etc/profile -> (~/.bash_profile | ~/.bash_login | ~/.profile) -> ~/.bashrc -> /etc/ ...

  9. PHP的高并发和大数据处理

    收集前人的经验.加速学习,解决工作中的难题. 一.代码优化(包括sql语句的优化), 合理的使用索引,避免整表查询.二.日常海量数据处理我用文件缓存,文件缓存分两种,第一种是最常见的生成html静太文 ...

  10. cocoapod升级版本

    原文 http://blog.csdn.net/sing_sing/article/details/49762359 该方法好用 sudo gem install -n /usr/local/bin ...