【物联网云端对接-1】 通过HTTP协议与微软Azure IoT hub进行云端通信

简介: 在2015年曾写过一篇文章《从微软build 2015,展望微软未来发展》,提到了微软的Azure和Windows 10 IoT,那算是初次接触微软物联网技术。

在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),一起进行物联网技术探讨。

相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
相关文章
|
21天前
|
网络协议 Linux iOS开发
推荐:实现RTSP/RTMP/HLS/HTTP协议的轻量级流媒体框架,支持大并发连接请求
推荐:实现RTSP/RTMP/HLS/HTTP协议的轻量级流媒体框架,支持大并发连接请求
43 1
|
1月前
|
网络协议 Linux
HTTP协议基本原理简介(二)
HTTP协议基本原理简介(二)
23 1
|
1月前
|
前端开发
webpack如何设置devServer启动项目为https协议
webpack如何设置devServer启动项目为https协议
139 0
|
1月前
|
缓存 前端开发
HTTP协议基本原理简介(三)
HTTP协议基本原理简介(三)
14 1
|
4天前
|
缓存 网络协议
【计算机协议】第一章——HTTP协议详解
【计算机协议】第一章——HTTP协议详解
|
6天前
|
网络协议 Java API
深度剖析:Java网络编程中的TCP/IP与HTTP协议实践
【4月更文挑战第17天】Java网络编程重在TCP/IP和HTTP协议的应用。TCP提供可靠数据传输,通过Socket和ServerSocket实现;HTTP用于Web服务,常借助HttpURLConnection或Apache HttpClient。两者结合,构成网络服务基础。Java有多种高级API和框架(如Netty、Spring Boot)简化开发,助力高效、高并发的网络通信。
|
8天前
|
缓存 安全 网络协议
Http协议是什么
【4月更文挑战第12天】HTTP是用于从WWW服务器传输超文本到浏览器的协议,基于TCP/IP,特点包括无连接、无状态、面向对象、无阻塞和可缓存。它的工作原理是客户端发送请求,服务器处理后返回响应。自1989年创建以来,HTTP已发展支持多媒体内容传输,并通过HTTPS提供安全保护。学习更多可参考计算机网络技术文献。
17 6
|
10天前
|
存储 JSON 前端开发
网络原理(4)HTTP协议(下)
网络原理(4)HTTP协议
25 0
|
21天前
|
XML JSON JavaScript
推荐一个比较好用的c++版本http协议库-cpp-httplib
推荐一个比较好用的c++版本http协议库-cpp-httplib
36 1
|
28天前
|
运维 监控 算法
slb监听协议http
SLB的HTTP监听器用于处理HTTP请求,配置时选择协议类型为HTTP和前端端口(如80)。SLB根据负载算法将请求转发至健康后端服务器,并支持会话保持。通过`X-Forwarded-For`和`X-Forwarded-Proto`头处理请求信息。由于不涉及SSL/TLS,数据传输不安全,推荐升级至HTTPS以加密通信。SLB提供性能监控和故障排查工具,帮助运维管理。
24 5

相关产品

  • 物联网平台