【物联网云端对接-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来实现类似功能. 同样在阿里云官方文档里已经有了一 ...
随机推荐
- awvs 中文手册详细版
目录: 0×00.什么是Acunetix Web Vulnarability Scanner ( What is AWVS?) 0×01.AWVS安装过程.主要文件介绍.界面简介.主要操作区域简介(I ...
- (转载)开源ckplayer 网页播放器, 跨平台(html5, mobile),flv, f4v, mp4, rtmp协议. webm, ogg, m3u8 !
文章链接:http://justcoding.iteye.com/blog/2110275 CKplayer,其全称为超酷flv播放器,它是一款用于网页上播放视频的软件,支持的格式有:http协议上的 ...
- NewsDaoImpl
package com.pb.news.dao.impl; import java.sql.CallableStatement;import java.sql.Connection;import ja ...
- Unity3D-Shader-人物残影效果
[旧博客转移 - 2016年1月7日 00:24 ] 前面的话 上一篇讲了一下人物边缘发光效果,链接: Unity-ShaderLab-实现X光效果,这次我们利用这个Shader来实现人物残影效果 先 ...
- Java基础语法<三> 输入输出
1. 读取输入 Scanner in = new Scanner(System.in); 输入一行(包含空格) String str = in.nextLine() 读取一个单词(以空白符作为 ...
- 深入理解 JavaScript(一)
编写高质量 JavaScript 代码的基本要点 转载:http://wiki.jikexueyuan.com/project/javascript-depth-understanding/start ...
- pc端的企业网站(IT修真院test8)详解1-3
一,base.css基础样式表的意义 我昨天,整理了一下代码规范. 发现现在这个程度的页面还原.有必要创建一个规范的base.css库和framework.css库 而且也要为日后的工作整理一些常用的 ...
- 运行shell脚本时报错"[[ : not found"解决方法
问题描述 在运行shell脚本时报错,命令为: sh test.sh 报错如图: 脚本代码如下: #!/bin/bash # file:test.sh # author:13 # date:2017- ...
- poj 1200 crasy search
https://vjudge.net/problem/POJ-1200 题意: 给出一个字符串,给出子串的长度n和给出的字符串中不同字符的个数nc,统计这个字符串一共有多少不同的长度为n的子串. 思路 ...
- 【linux相识相知】磁盘分区及文件系统管理详解
磁盘,提供持久的数据存储,它不像我们的内存,如果突然断电了,在内存中的数据一般都会被丢掉了,内存中的数据在保存的时候,会被写到硬盘里面,磁盘也是一种I/O设备. 我们都知道磁盘分区完成之后,还要进行格 ...