大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
之前一直想要使用mqtt协议模拟tcp协议的实时返回监控参数的功能,经过几个月的摸索和试验,终于将同步服务的开发摸透,仅仅看飞燕平台的技术文档是看不懂的,核心文档链接如下:
站在用户的角度思考问题,与客户深入沟通,找到孝昌网站设计与孝昌网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都做网站、成都网站设计、企业官网、英文网站、手机端网站、网站推广、主机域名、虚拟主机、企业邮箱。业务覆盖孝昌地区。
1、什么是rrpc,同步服务如何使用rrpc实现实时返回的效果
;aly_as=odhFNfAc
阿里将同步服务使用rrpc
2、服务的数据格式
;aly_as=KNMEpUOP
看完文档还有不懂的同学们,我给你准备了总结:
1.RRPC有专用的topic,服务端的实现,在物的模型服务中有invoke的请求方式和返回结果。
设备端根据文档1中的订阅topic与上报topic。上报的数据格式根据文档2上报。
例子:
1.按照物的服务调用方法请求
2.设备端订阅到服务的下发,将msgid从topic上面截取下来此处为1214836938775870464
3.将msgid填充到上报topic结尾,数据格式注意param改为data,加上code,其余数据对照功能定义中的物模型
4.在调试窗口中找到服务调用菜单
显示上报成功,注意服务的解析与属性事件不一样,通过通用打印只能打印出result ok,要进一步解析data出来再打印。
在本文中,我们将向您展示如何使用阿里云IoT平台轻松将Android Things连接到您的物联网(IoT)网络,我们将为该项目构造一个示例:功能性甲醛和温度传感器。有些人可能不了解Android Things,简单来说, 它就是让开发者可以使用Android开发工具开发嵌入式设备 。
项目设备清单
NXP i.MX7D
设备接线图
在设置硬件之后,是时候在阿里云IoT平台上配置软件了。
首先,导航到物联网控制台并激活阿里云IoT。创建高级产品并添加产品属性定义:
Android Things设备开发
1、使用Android Studio创建Android Things项目,并授予网络权限
2、将“eclipse.paho.mqtt”存储库添加到gradle
3、通过I2C读取DHT12数据
4、通过UART获取Ze08CH2O数据
5、创建阿里云IoT连接并报告数据
设备启动后,您可以在阿里云IoT控制台上查看设备的实时数据, 设备管理 - 运行状态 。
此项目在GIT上的地址是:,有兴趣的朋友可以试试。
简介: 没有设备,也能立刻体验物联网平台的功能:使用物联网平台提供的“在线调试”功能,体验虚拟设备上云设备数据存储分析的功能。
产品推荐:阿里云物联网开发者工具( IoT Studio ), 立刻免费体验吧!
你可能遇到以下情况:
1、手头没有开发板
2、还不懂“物联网云服务”怎么玩,想体验一下
3、设备端开发跟物联网云服务没跑通,不确定哪个环节出现问题
这时,你就需要用到“在线调试”功能来虚拟一个设备,详细步骤如下:
1、登陆物联网平台控制台 , 现在登入
2、左侧导航栏中,找到在线调试功能
3、开始设备上云开发,这个环节分为3个步骤:创建产品→创建设备→激活设备(使用在线调试)
3.1 创建产品
下方的都是默认选项,不用改动,点击完成,成功创建1个产品
3.2 产品和设备是包含与被包含的关系,我们创建成功产品后,即可在这个产品下添加设备
设备添加成功后,即弹出设备的三元组(设备证书),这个三元组是全网唯一的设备身份校验要素
ProductKey:是物联网平台为产品颁发的全局唯一标识。该参数很重要,在设备认证以及通信中都会用到,因此需要您保管好。
DeviceName:在注册设备时,自定义的或自动生成的设备名称,具备产品维度内的唯一性。该参数很重要,在设备认证以及通信中都会用到,因此需要您保管好。
DeviceSecret:物联网平台为设备颁发的设备密钥,和DeviceName成对出现。该参数很重要,在设备认证时会用到,因此需要您保管好并且不能泄露。
考虑设备实际生产时对安全和成本的不同需求,我们可以选择“一机一密”,或者“一型一密”。
一机一密:每个设备烧录其唯一的设备证书(ProductKey、DeviceName和DeviceSecret)。当设备与物联网平台建立连接时,物联网平台对其携带的设备证书信息进行认证。
一型一密:同一产品下所有设备可以烧录相同产品证书(即ProductKey和ProductSecret)。设备发送激活请求时,物联网平台进行产品身份确认,认证通过,下发该设备对应的DeviceSecret。
3.3 激活设备
我们发生几个开灯关灯的指令,就可以看到设备上报的数据:
4、使用物联网平台的“数据分析”功能存储数据
点击确定后,设备数据即成功存储
再点击“查看”,即可看到数据的存储
查看表结构
查看表数据
查询表数据
了解更多数据分析能力:
1、阿里云物联网平台数据分析服务主页
2、技术文档
有很多通信模块只有TCP功能,没有MQTT功能,比如WIFI,W5500等模块,还有一些NBIOT模块,但是又想连接阿里云物联网平台,官方提供了操作系统,需要自己移植,很麻烦,比较难看得懂。就在想有没有一些简单一定的方法。
心想MQTT是基于TCP的,能否使用TCP转MQTT?因此就想使用TCP协议然后转MQTT协议连接阿里云物联网平台,经过试验证明是可以的。
首先我们先分析一下如何登陆接入Onenet平台。
先从它数据格式开始分析。首先我们要从后台取出三个信息,我们以这个为例。
我们把产品ID,设备名称,设备秘钥,简称三要素 (具体是什么看你自己的设备)
其实阿里云物联网平台的MQTT协议用的就是标准的,不过它加入了自己的认证方式。
MQTT协议需要上传四个参数,报活时间,clientID,用户名,密码。
那么阿里云的就在clientID,用户名,密码做了手脚。
clientID比较长,按照一定的格式
用户名:设备名和秘钥组成
密码:使用了加密串进行了加密,有sha1或者MD5加密方式
下面我们来介绍一下
MQTT接入都是发十六进制的数据。
么我们发送的时候就是这样子的一串数据
0x74 0x00 0x04 0x4d 0x51 0x54 0x54 0x04 0xC0 0078 0033 0x61 0x62 0x63 0x7c 0x73 0x65 0x63 0x75 0x72 0x65 0x6d 0x6f 0x64 0x65 0x3d 0x33 0x2c 0x73 0x69 0x67
0x6e 0x6d 0x65 0x74 0x68 0x6f 0x64 0x3d 0x68 0x6d 0x61 0x63 0x73 0x68 0x61 0x31 0x2c 0x74 0x69 0x6d 0x65 0x73 0x74 0x61 0x6d 0x70 0x3d 0x31 0x32 0x30 0x7c 0009
0x35 0x36 0x37 0x38 0x26 0x31 0x32 0x33 0x34 0028 0x32 0x32 0x32 0x37 0x35 0x30 0x44 0x45 0x44 0x46 0x45 0x34 0x46 0x37 0x37 0x34 0x30 0x30 0x32 0x45 0x45 0x38 0x37 0x45 0x45 0x44 0x32 0x39 0x43 0x46 0x44 0x30 0x36 0x33 0x38 0x43 0x35 0x46 0x36 0x36
十六进制解释
数据长度:0x74
协议数据长度 0x00 0x04
协议类型: 0x4d 0x51 0x54 0x54
协议数据: 0x04 0xC0
keepAlive数据:0078
ClientID长度:0033
ClientID: 0x61 0x62 0x63 0x7c 0x73 0x65 0x63 0x75 0x72 0x65 0x6d 0x6f 0x64 0x65 0x3d 0x33 0x2c 0x73 0x69 0x67 0x6e 0x6d 0x65 0x74 0x68 0x6f 0x64 0x3d 0x68 0x6d 0x61 0x63 0x73 0x68 0x61 0x31 0x2c 0x74 0x69 0x6d 0x65 0x73 0x74 0x61 0x6d 0x70 0x3d 0x31 0x32 0x30 0x7c
用户名:0009
用户名: 0x35 0x36 0x37 0x38 0x26 0x31 0x32 0x33 0x34
密码长度:0028
密码: 0x32 0x32 0x32 0x37 0x35 0x30 0x44 0x45 0x44 0x46 0x45 0x34 0x46 0x37 0x37 0x34 0x30 0x30 0x32 0x45 0x45 0x38 0x37 0x45 0x45 0x44 0x32 0x39 0x43 0x46 0x44 0x30 0x36 0x33 0x38 0x43 0x35 0x46 0x36 0x36复制代码上面的就是连接服务器的连接包
下面呢,我们来做个发布包(上传数据到服务器)
0x30 0x1D 0009 2f7379732f706f7374 0x7b 0x70 0x61 0x72 0x61 0x6d 0x73 0x3a 0x7b 0x74 0x65 0x6d 0x70 0x3a 0x31 0x30 0x7d 0x7d
十六进制数据解释
数据头:0x30
数据长度:0x1D
TopicName数据长度:0009
TopicName数据内容:2f7379732f706f7374
主体json数据: 0x7b 0x70 0x61 0x72 0x61 0x6d 0x73 0x3a 0x7b 0x74 0x65 0x6d 0x70 0x3a 0x31 0x30 0x7d 0x7d复制代码以上就是连接阿里云的数据包格式及发布数据的格式,由于时间问题没有做订阅的数据包分析,下一次更新订阅的内容。