热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

图解连接阿里云(一)创建阿里云物联网平台产品和设备,使用MQTT.fx快速体验

前沿提要:MQTT是什么不知道?看这一篇:https:www.cnblogs.comhappybirthdaytoyoup10362336.html阿里云官网玩不转?看这一篇:&

 

前沿提要:

MQTT是什么不知道?

看这一篇:https://www.cnblogs.com/happybirthdaytoyou/p/10362336.html

阿里云官网玩不转?

看这一篇: https://www.cnblogs.com/happybirthdaytoyou/p/14065294.html

不会用代码连接阿里云?

看这一篇:https://www.cnblogs.com/happybirthdaytoyou/p/14074606.html

 

 

1.  打开 https://www.aliyun.com/  注册账号

 

2.注册账号登录后点击控制台

 

 

3. 在下图1处输入物联网平台,会弹出2处所示物联网平台的入口,点击红色箭头所示处,进入物联网平台页面

 

4. 在物联网平台页面处 点击该公共实例

 

 

5. 选中1处产品这一栏,点击2处的创建产品按钮

 

 

6. 填写创建产品所需的参数。 我之后将十使用windows软件MQTT.fx来连接阿里云,我的电脑是通过wifi联网的,所以我在下图的联网方式处选择Wi-Fi 。

  下面我创建一个产品,产品名称叫做:我是产品-我负责管理设备们

     (产品名称在账号内具有唯一性。例如,可以填写为产品型号。支持中文、英文字母、日文、数字、下划线(_)、短划线(-)、@符号和英文圆括号,长度限制4~30个字符,一个中文或日文占2个字符)

 点击确认,我们将进入下图页面

 

7.

 

现在我们面临两个选择,通过阅读上图2的文字,我们了解到,物模型是一种抽象的数据结构,我们需要为每个产品定义一个物模型,这是产品下属的设备们的抽象父类。

所以,我们按照由上至下的设计原则,先为产品定义物模型吧! 点击上图2处,前往定义物模型。

 

8.

再点击编辑草稿

 

9.

再点击 添加标准功能

 

10.

  选择 其他类型, 我在这里输入 温度,表示我的物联网设备将要上传温度值吧(你不一定要选择温度的,这里的选择仅仅是阿里云对用户数据进行一个粗略的分类而已),

  点击3处的搜索按钮, 4处随便选择一个, 我选择的是当前温度--空气盒子。 

然后点击确定

 

 

 还可以点击编辑

我们将其读写类型改为 :读写。 这表示该数据不仅可以上传到云平台(只读),还可以由云平台下发到设备。

再点击 发布上线,勾选:确认已查看当前版本与线上版本的比对结果。 点击确定。

 

这样,一个物模型就创建好了。

根据上面的提示,一个产品,不仅需要物模型,还需要设备,所以,接下来,我们就添加设备。

 

11. 在物联网平台 / 设备管理 / 设备 页面, 点击:添加设备

 

 1选择我们刚才创建的产品    2给设备起个英文名字    ,再点击确认

 

 再点击完成

 

 至此,我们又将设备创建好了。PS:当前设备状态可以看到,是未激活。

 

接下来我们就可以跑起来单片机或者其他什么Linux板子,又或者是上位机软件,又或者是ubuntu内允许的可执行程序,来连接这个阿里云了。

连接需要一些参数,这些参数阿里云已经为我们都提供了,我们通过自己的主页就可以看到, 如下图所示:

 上图可以查看设备的参数。

 

上图可以查看设备模型( 即 产品 )的参数。

 

12. 后面要用到的时候再来查看相关参数, 我们先下载MQTT.fx吧 

 

MQTT.fx软件的下载路径

https://mqttfx.jensd.de/index.php/download?spm=a2c4g.11186623.2.16.63f75800DlwS9m

我下载的是最新版的1.71版本

 

打开该软件

接着点击上图的该设置按钮

 

然后填好相关参数,如下图所示:

 

 这里解释下相关参数

你的Client ID可以和我的配置一样。 后面的securemode也可以设置为3, signmethod也可以跟我一样,设置为sha1(sha1就是上图的hmacsha1)。

Broker Address就是个域名, 你的这个域名可以配置为  “你的ProductKey”+ “iot-as-mqtt.cn-shanghai.aliyuncs.com” 这串字符,

你的ProductKey可以通过下图方式查到:

 

接着我们来填写User Credentials选项卡

下面介绍下这两行怎么填写:

 

 

ProductKey的查看方法前面已经介绍过了,这里介绍下DeviceName的查看方法: 

 填好它。  现在就只剩一个Password还需要填写了,我们需要借助一个密码计算工具。

 在该QQ群进行如下搜索即可下载

 

QQ群号在此

解压缩下载包后,双击sign文件,即可使用,

下图是我输入的计算密码所需的参数:

productKey、deviceName、clientId都介绍过了,或者我的配图里都展示出来了。method选择为sha1,还记得吧,我们之前配置Client ID的时候配置为了sha1,这里要对应上。

现在只剩一个deviceSecret没介绍了,我们可以通过下图方式查看:

填写好参数以后,点击Genrete,就可以生产password了。

然后把password复制黏贴到MQTT.fx的下图处,再点击OK按钮

 然后再点击Connect

 

如果上面的操作都正确,那么喜迎时刻到了:

小灯变成了绿色,disconnect按钮也可见(白色背景,黑色字体)了。

同时!==》我们可以看到,该设备由原先的 未激活 状态更改为 在线状态。我们已经建立了上位机MQTT.fx软件和阿里云的连接了。

既然连接已经通了,那我们接着来干点收发数据的事情吧。

毕竟仅仅建立个连接不是目的,收发数据去辅助完成业务逻辑才是我们的目的。

 

 13 在下图处,阿里云平台为我们预设了一些Topic(主题), 我们可以借助这些主题来通信。

  当然,我们也可以自定义Topic, 都可以的。

  这里我们先使用预设好的物模型Topic吧。

 这里可以看到,设备属性上报的主题,

 我订阅的Topic就是:    /sys/a11B0MP4tDp/1st_device_mqttfx/thing/event/property/post     填入下图的3处:

留意一下,红色框内选择最左边一个蓝色的圈即可,这是通信的质量等级Qos, 阿里云好像不支持Qos为2.

现在不确定支不支持不要紧,因为现在是快速体验阿里云,到时候我们写下位机代码来和阿里云通信的时候肯定会设计到这个问题的,所以现在不操心,知道这么回事就行了。  

 

4处我填写的是CurrentTemperature":43, 为什么是CurrentTemperature呢?

因为CurrentTemperature是我们创建的温度数据的标识符。

点击Publish。数据就传到云上去咯。

 

现在我们可以去云上查看下数据。

至此,我们完成了设备向云发送数据的功能。

 

接下来我们来完成云下发数据到设备的功能:

先配置MQTT.fx

再次查看阿里云预设好的Topic列表,入下图紫色划线的主题就是我们现在需要的订阅主题。

意思就是,物联网设备订阅这个主题,云平台也可以通过向这个主题发送消息,传递给各个订阅过该主题的物联网设备,以此实现通信。

 

 我下图填入的主题是:/sys/a11B0MP4tDp/1st_device_mqttfx/thing/service/property/set

然后点击Subscribe。

 

接着在云平台这边来操作:

点击在线调试

点击前往查看

再进行如下配置

在3处填入你要发送的数值,我随便填了个35.

点击发送指令

之后会显示云端下发数据的记录:

 

回到MQTT.fx

3处可以选择按照JSON格式显示收到的数据。

至此,我们又完成了云端数据下发到设备的功能。

 

还有自定义Topic,有提到,没涉及,可以自己去尝试尝试。

 

 江湖很大,你我相遇在此有一定缘分,可以考虑加个QQ群聊聊人生,技术离不开生活,生活离不开聊聊。

 

 

.


推荐阅读
  • 本文介绍了如何使用JSONObiect和Gson相关方法实现json数据与kotlin对象的相互转换。首先解释了JSON的概念和数据格式,然后详细介绍了相关API,包括JSONObject和Gson的使用方法。接着讲解了如何将json格式的字符串转换为kotlin对象或List,以及如何将kotlin对象转换为json字符串。最后提到了使用Map封装json对象的特殊情况。文章还对JSON和XML进行了比较,指出了JSON的优势和缺点。 ... [详细]
  • 阿,里,云,物,联网,net,core,客户端,czgl,aliiotclient, ... [详细]
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • 本文介绍了计算机网络的定义和通信流程,包括客户端编译文件、二进制转换、三层路由设备等。同时,还介绍了计算机网络中常用的关键词,如MAC地址和IP地址。 ... [详细]
  • CEPH LIO iSCSI Gateway及其使用参考文档
    本文介绍了CEPH LIO iSCSI Gateway以及使用该网关的参考文档,包括Ceph Block Device、CEPH ISCSI GATEWAY、USING AN ISCSI GATEWAY等。同时提供了多个参考链接,详细介绍了CEPH LIO iSCSI Gateway的配置和使用方法。 ... [详细]
  • 图像因存在错误而无法显示 ... [详细]
  • centos安装Mysql的方法及步骤详解
    本文介绍了centos安装Mysql的两种方式:rpm方式和绿色方式安装,详细介绍了安装所需的软件包以及安装过程中的注意事项,包括检查是否安装成功的方法。通过本文,读者可以了解到在centos系统上如何正确安装Mysql。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 利用Visual Basic开发SAP接口程序初探的方法与原理
    本文介绍了利用Visual Basic开发SAP接口程序的方法与原理,以及SAP R/3系统的特点和二次开发平台ABAP的使用。通过程序接口自动读取SAP R/3的数据表或视图,在外部进行处理和利用水晶报表等工具生成符合中国人习惯的报表样式。具体介绍了RFC调用的原理和模型,并强调本文主要不讨论SAP R/3函数的开发,而是针对使用SAP的公司的非ABAP开发人员提供了初步的接口程序开发指导。 ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • CentOS 6.5安装VMware Tools及共享文件夹显示问题解决方法
    本文介绍了在CentOS 6.5上安装VMware Tools及解决共享文件夹显示问题的方法。包括清空CD/DVD使用的ISO镜像文件、创建挂载目录、改变光驱设备的读写权限等步骤。最后给出了拷贝解压VMware Tools的操作。 ... [详细]
  • 本文介绍了如何清除Eclipse中SVN用户的设置。首先需要查看使用的SVN接口,然后根据接口类型找到相应的目录并删除相关文件。最后使用SVN更新或提交来应用更改。 ... [详细]
  • Windows7 64位系统安装PLSQL Developer的步骤和注意事项
    本文介绍了在Windows7 64位系统上安装PLSQL Developer的步骤和注意事项。首先下载并安装PLSQL Developer,注意不要安装在默认目录下。然后下载Windows 32位的oracle instant client,并解压到指定路径。最后,按照自己的喜好对解压后的文件进行命名和压缩。 ... [详细]
  • 解决nginx启动报错epoll_wait() reported that client prematurely closed connection的方法
    本文介绍了解决nginx启动报错epoll_wait() reported that client prematurely closed connection的方法,包括检查location配置是否正确、pass_proxy是否需要加“/”等。同时,还介绍了修改nginx的error.log日志级别为debug,以便查看详细日志信息。 ... [详细]
author-avatar
大爱仅有的财产丶_468
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有