【物联网云端对接-2】通过MQTT协议与阿里云物联网套件进行云端通信
在《程序员》杂志2017.4刊上,曾写过一篇《微软百度阿里三大物联网平台探析》,上面曾介绍了阿里云物联网套件的一些内容,在写该篇文章的时候,凌霄物联网网关还无法对接到此平台(TLS必须1.1版本以上)。但是随着阿里云物联网套件的不断发展,目前设备除了支持HTTPS认证外,也支持MQTT客户端域名直连认证(可以是TCP直连模式,也可以是TLS直联模式)。
最近有幸参与了阿里的飞凤物联网平台计划,可以更为深入的去研究阿里云物联网套件,除了用直接编写代码连接云外,也尝试用组态的方式去对接阿里云物联网套件。
相对而言,阿里云物联网套件,云端的操作简单易用。
第一步:创建产品(目前杭州点已经不支持创建产品),创建产品成功后,会产生一个ProductKey。

第二步:添加设备。可以添加若干设备,为每个设备配置Topic列表。

添加设备后,设备证书里面的设备名称(deviceName)和设备密钥(deviceSecret)是我们连接云端设备所必要的。

每个设备创建后,默认就自动拥有了如下3个Topic。用户可以根据需要自行添加。

云端做了这些工作,我们就可以在设备中编写程序和云端通信了。
MQTT需要对接的服务器域名为:”$productKey. iot-as-mqtt.cn-shanghai.aliyuncs.com”,其中$productKey用实际的产品密钥来替换,端口号默认为1883。
MQTT连接需要三个参量:mqttClientId, mqttUsername, mqttPassword
这个三个参量如何根据productKey、deviceName和deviceSecret来创建,可以参考阿里云物联网套件的相关文档说明,链接如下:https://help.aliyun.com/document_detail/30539.html?spm=5176.doc42743.6.574.ewvmlO

代码编程完成后,部署到凌霄智能网关运行后,就可以在“日志服务”页面看到设备上线及设备发送的各种信息通知了。

除了自行编写代码外,为了便于各种传感器和智能模块的接入,我们还采用了YFIOs组态的方式去连接阿里云物联网套件,这样无需编程,就可以快速和云端进行双向通信了。
第一步:添加智能设备

添加设备的同时,IO变量会自动创建。

第二步:添加系统策略:阿里云物联网套件客户端

填写必要的参数,勾选需要上传到物联网套件的IO变量。

第三步:部署运行

运行后,我们查看设备的状态,已经在线,也会在“日志服务”中看到数据上传的信息。
【物联网云端对接-2】通过MQTT协议与阿里云物联网套件进行云端通信的更多相关文章
- 【物联网云端对接-3】通过MQTT协议与微软Azure IoT Hub进行云端通信
在上一篇文章<通过MQTT协议与阿里云物联网套件进行云端通信>中,我们介绍了通过MQTT对接阿里云的物联网套件.其实同样的代码,稍加调整也可以对接到微软Azure IoT hub上,不过需 ...
- 阿里云物联网平台体验(树莓派+Python篇)
阿里云物联网平台体验(树莓派+Python篇) 虽然对阿里云物联网平台比较熟悉了,从一开始就有幸参与了飞凤平台(Link Develop 一站式开发平台的前身)的一些偏硬件接入的工作.但是同时也见证了 ...
- 《ServerSuperIO Designer IDE使用教程》- 6.增加与阿里云物联网(IOT)对接服务,实现数据交互。发布:v4.2.4 版本
v4.2.4 更新内容:1.增加了对接阿里物联网平台的服务.下载地址:官方下载 6. 增加与阿里云物联网(IOT)对接服务,实现数据交互 6.1 概述 为了满足业务系统数据上云的要求,Se ...
- [Micropython][ESP8266] TPYBoard V202 之MQTT协议接入OneNET云平台
随着移动互联网的发展,MQTT由于开放源代码,耗电量小等特点,将会在移动消息推送领域会有更多的贡献,在物联网领域,传感器与服务器的通信,信息的收集,MQTT都可以作为考虑的方案之一.在未来MQTT会进 ...
- 阿里云物联网边缘计算加载MQTT驱动
写在前面 本文在LinkEdge快速入门样例驱动的基础上,加载了MQTT订阅的客户端,使得边缘端容器可以通过MQTT获得外部数据. 1. 系统需求 物联网边缘计算平台,又名Link IoT Edge[ ...
- nodejs连接阿里云物联网套件(mqtt)
文档地址:https://help.aliyun.com/document_detail/73742.html 连接方法:先HTTPS认证再连接 /* *阿里云物联网套件nodejs连接示例 *C ...
- 阿里云物联网平台体验(NetGadgeteer+C#篇)
目前对接阿里云物联网平台有多种软件和硬件,可以有多种不同语言来实现对接,比如c/c++,Java,JS,Python,C#等等,不过C#版本只有PC对接云平台的代码,嵌入式的目前还没有看到,所以本篇文 ...
- 【阿里云IoT+YF3300】15.阿里云物联网小程序构建
2013年8月,“轻应用”概念提出,但是仅仅活跃四年随后淡出 ,直到2017年1月9号借助微信小程序成功续命.一时间,以微信小程序和支付宝小程序为代表的轻应用解决方案迅速贯穿多个环节,成为“万物互联” ...
- 阿里云物联网平台体验(树莓派+Nodejs篇)
我们在<阿里云物联网平台体验(树莓派+python篇)>里,写了通过Python语言开发云到端的物联网程序,本篇文章将介绍通过nodejs来实现类似功能. 同样在阿里云官方文档里已经有了一 ...
随机推荐
- Centos操作系统在虚拟机VMware上的安装
1.下载centos操作系统,提供百度云盘链接:http://pan.baidu.com/s/1pLHOR03 2.打开上篇在VMware中新建好的空白虚拟机,将centos安装在此空白虚拟机上,步骤 ...
- Codeforces Round #418 (Div. 2).C two points
C. An impassioned circulation of affection time limit per test 2 seconds memory limit per test 256 m ...
- mybatis代理类Demo
前言 简单实现通过代理接口来实现对数据的查询demo,也是对mybatis的一个熟练.首先是编写接口代理. public interface IBookMapper { List<BookMod ...
- Spring Boot 系列(五)web开发-Thymeleaf、FreeMarker模板引擎
前面几篇介绍了返回json数据提供良好的RESTful api,下面我们介绍如何把处理完的数据渲染到页面上. Spring Boot 使用模板引擎 Spring Boot 推荐使用Thymeleaf. ...
- java volatitle介绍与使用
关于关键字volatile可以说是Java虚拟机提供的轻量级的同步机制,但是它并不容易完全被正常.完整地理解,以至于许多程序员都不习惯去使用它,遇到需要处理多线程数据竞争问题的时候一律使用Synchr ...
- 树上差分 (瞎bb) [树上差分][LCA]
做noip2015的运输计划写了好久好久写不出来 QwQ 于是先来瞎bb一下树上差分 混积分 树上差分有2个常用的功能: (1)记录从点i到i的父亲这条路径走过几次 (2)将每条路径(s,t ...
- RobotFramwork安装报错name 'execfile' is not defined
安装RobotFramwork的时候,提示了这个?是什么原因呢? 本机装的是python3.6: 经官方回复得知识因为python的版本不兼容该模块的安装. 官方认定版本是2.7,所以这里推荐大家玩p ...
- Spring mybatis源码篇章-SqlSessionFactoryBean
前言:通过实例结合源码的方式解读,其中涉及到的文件来自于博主的Github毕设项目SchoolActivity_WxServer,引用的jar包为mybatis-spring-1.3.0.jar Sp ...
- .net core 项目文件结构浅析
1:launch.json (配置调试用的) 通过vs code创建的项目,都会有这个文件,是启动调试的配置文件: (vscode默认支持nodejs调试) 要调试调试c#代码 需要安装 C# 插件 ...
- yii2 队列 shmilyzxt/yii2-queue 简介
在yii2论坛中看到一个关于队列的帖子,感觉不错.http://www.yiichina.com/extension/1084 (注:SendMail 错写为 SendMial,粘贴时要注意了.) 在 ...