在2015年曾写过一篇文章《从微软build 2015。展望微软未来发展》,提到了微软的Azure和Windows 10 IoT,那算是初次接触微软物联网技术。比較幸运的是在兴许的时间里。有幸和微软相关部门进行了深入合作。对微软的Azure云及Windows 10 IoT有了更深的了解。
除了最初的基于树莓派平台做了微软利事盒教育箱(例如以下图所看到的)外,尤为重要的是基于台湾新汉的NISE50 Windows 10 IoT工控级网关对接微软Azure IoT Hub平台开发了养殖监控系统,兴许在潍坊的一个现场成功实施。
并于今年的1月9号在中关村微软大厦和甘来、健安华夏和研华相关人员一起向微软物联网部门汇报了各自和微软云相关的项目进展。
只是基于Windows10 IoT终端设备,对物联网项目来说,还是太“重”了,急需轻量级的网关进行数据採集。并上传到微软Azure IoThub端。
好在微软提供了设备端的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云进行通信的整个过程。
第一步:在MicrosoftAzure上创建一个IoT Hub
创建完成后。大概这个样子
创建完成后,我们单击共享訪问策略,获取共享訪问密钥。
第二步:借助DevcieExplorer Twin工具创建设备
从上面SDK链接中能够下载这个工具的源码,编译执行。在IoT Hub Connection String中填写第一步的共享訪问密钥。
然后在Management页面创建设备
下一个操作比較关键。我们要获取设备的连接字符串。以便在设备中填写这个字符串。
第三步:在.NETMicro Framework代码中填入连接字符串,并进行联调
设备执行后,在DeviceExplorer Twin的Data选项卡中就能够看到设备上传的数据了。
相同,也能够測试数据下发,可发现双向通信都是正常的。
这个时候登陆MicrosoftAzure我们能够看到数据上传的情况。
本篇文章先介绍到这里,下一篇文章将介绍基于MQTT通信协议和微软Azure云进行通信的过程。
有对微软物联网开发感兴趣的网友能够加我的QQ(71825781)或微信(yefanqiu),一起进行物联网技术探讨。