【物联网云端对接-1】 通过HTTP协议与微软Azure IoT hub进行云端通信
在2015年曾写过一篇文章《从微软build 2015,展望微软未来发展》,提到了微软的Azure和Windows 10 IoT,那算是初次接触微软物联网技术。比较幸运的是在后续的时间里,有幸和微软相关部门进行了深入合作,对微软的Azure云及Windows 10 IoT有了更深的了解。
除了最初的基于树莓派平台做了微软利事盒教育箱(如下图所示)外,尤为重要的是基于台湾新汉的NISE50 Windows 10 IoT工控级网关对接微软Azure IoT Hub平台开发了养殖监控系统,后续在潍坊的一个现场成功实施。

并于今年的1月9号在中关村微软大厦和甘来、健安华夏和研华相关人员一起向微软物联网部门汇报了各自和微软云相关的项目进展。

不过基于Windows 10 IoT终端设备,对物联网项目来说,还是太“重”了,急需轻量级的网关进行数据采集,并上传到微软Azure IoT hub端。
好在微软提供了设备端的SDK(链接如下)
https://github.com/Azure/azure-iot-sdks
有基于C代码,也有基于C#代码的SDK,另外我们有性价比较高的,且相对成熟的物联网网关硬件,所以最直接的想法就是把SDK相关代码移植到硬件上去,但是没有想到一开始就困难重重,开始的几个月一直进展不大,后来在微软纪尚豪和王启霄等老师的协助下,突破了相关瓶颈,成功在凌霄物联网网关上移植成功了:基于Mbed OS系统的MQTT接口的云端通信、以及基于.NET Micro Framwork系统上的HTTP和MQTT的云端通信。
本篇文章就先介绍基于.NET Micro Framwork系统上的HTTP协议和微软Azure云进行通信的整个过程。
第一步:在Microsoft Azure上创建一个IoT Hub

创建完毕后,大概这个样子

创建完毕后,我们单击共享访问策略,获取共享访问密钥。
第二步:借助Devcie Explorer Twin工具创建设备
从上面SDK链接中可以下载这个工具的源代码,编译运行,在IoT Hub Connection String中填写第一步的共享访问密钥。
然后在Management页面创建设备

下一个操作比较关键,我们要获取设备的连接字符串,以便在设备中填写这个字符串。

第三步:在.NET Micro Framework代码中填入连接字符串,并进行联调

设备运行后,在Device Explorer Twin的Data选项卡中就可以看到设备上传的数据了。

同样,也可以测试数据下发,可发现双向通信都是正常的。
这个时候登陆Microsoft Azure我们可以看到数据上传的情况。

本篇文章先介绍到这里,下一篇文章将介绍基于MQTT通信协议和微软Azure云进行通信的过程。有对微软物联网开发感兴趣的网友可以加我的QQ(71825781)或微信(yefanqiu),一起进行物联网技术探讨。
【物联网云端对接-1】 通过HTTP协议与微软Azure IoT hub进行云端通信的更多相关文章
- 【物联网云端对接-3】通过MQTT协议与微软Azure IoT Hub进行云端通信
在上一篇文章<通过MQTT协议与阿里云物联网套件进行云端通信>中,我们介绍了通过MQTT对接阿里云的物联网套件.其实同样的代码,稍加调整也可以对接到微软Azure IoT hub上,不过需 ...
- 国外物联网平台(2):微软Azure IoT
国外物联网平台(2)——微软Azure IoT 马智 平台定位 连接设备.其它 M2M 资产和人员,以便在业务和操作中更好地利用数据. 连接 IoT 设备 将所有设备连接到云,从这些设备接收大规模数据 ...
- 国外物联网平台初探(二) ——微软Azure IoT
平台定位 连接设备.其它 M2M 资产和人员,以便在业务和操作中更好地利用数据. 连接 IoT 设备 将所有设备连接到云,从这些设备接收大规模数据,以及管理这些设备的授权和限制. 在将设备连接到云和处 ...
- 基于Azure IoT开发.NET物联网应用系列-全新的Azure IoT架构
物联网技术已经火了很多年了,业界各大厂商都有各自成熟的解决方案.我们公司主要搞新能源汽车充电,充电桩就是物联网技术的最大应用,车联网.物联网.互联网三网合一.2017年的时候重点研究过Azure Io ...
- 《连载 | 物联网框架ServerSuperIO教程》- 12.服务接口的开发,以及与云端双向交互
1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...
- 国内物联网平台(1):百度物接入IoT Hub
国内物联网平台(1) ——百度物接入IoT Hub 马智 物接入IoT Hub - 架构 全托管的云服务,帮助建立设备与云端之间安全可靠的双向连接 支撑海量设备的数据收集.监控.故障预测等各种物联网场 ...
- 国内物联网平台初探(一) ——百度物接入IoT Hub
物接入IoT Hub - 架构 全托管的云服务,帮助建立设备与云端之间安全可靠的双向连接 支撑海量设备的数据收集.监控.故障预测等各种物联网场景 物接入IoT Hub - 功能 通信协议:支持MQTT ...
- 【物联网云端对接-2】通过MQTT协议与阿里云物联网套件进行云端通信
在<程序员>杂志2017.4刊上,曾写过一篇<微软百度阿里三大物联网平台探析>,上面曾介绍了阿里云物联网套件的一些内容,在写该篇文章的时候,凌霄物联网网关还无法对接到此平台( ...
- 【物联网云端对接-4】通过MQTT协议与百度云进行云端通信
百度云的天工物联网服务目前包括:物接入.物解析.物管理.时序数据库和规则引擎等5大部分,本篇文章仅介绍物接入. 天工物联网的物接入,从开发者的角度来说相对有些复杂,需要多步操作才能实现一个云设备的创建 ...
随机推荐
- rest第一篇
rest的作用 : 以http请求的格式提供数据 实际项目中,定义一个模块,从http请求中拿参数,然后访问mysql数据库得到数据,返回给http请求.
- 原来在ARC下还有这么多不同?!
1.ARC空声明变量 使用ARC的另一个优势是所有未初始化的变量默认都是"空值化"的.这意味着像下面这样的声明使用ARC编译后指向的是空值(nil): NSObject myObj ...
- linear-gradient线性渐变
作者:zccst CSS3 Gradient 分为 linear-gradient(线性渐变)和 radial-gradient(径向渐变). 1,在mozila background: -moz-l ...
- iOS调用相机,相册,上传头像
一.新建工程 二.拖控件,创建映射 三.在.h中加入delegate @interface ViewController : UIViewController 复制代码 四.实现按钮事件 -(IBAc ...
- Docker学习小计
1.自动下载并且创建容器 Now verify that the installation has worked by downloading the ubuntu image and launchi ...
- JS数字金额大写转换
/** 数字金额大写转换(可以处理整数,小数,负数) */ var digitUppercase = function(n) { var fraction = ['角', '分']; var digi ...
- IOS开发中使用CNContact\CNMutableContact 对通讯录增删改查
IOS开发中使用CNContact\CNMutableContact 对通讯录增删改查 首先当然是把CNcontact包含在工程中: @import Contacts; 1.下面是增加联系人的程序段: ...
- IOS开发-OC学习-MD5加密
MD5的全称是Message-Digest Algorithm 5. MD5加密算法为现在应用最广泛的哈希算法之一,该算法广泛应用于互联网网站的用户文件加密,能够将用户密码加密为128位的长整数.数据 ...
- shell sed
匹配 sed -n '/pattern/p' file_name |sed -n 7,12p #pattern是你要查的内容 #file_name是你要查的文件 以上实现:打印出匹配结果中的7-1 ...
- bzoj3052
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=3052 题目大意:自己看看,懒得写 题解:带修改的树上莫队,经典爆评测机的题 代码: #inc ...