# 阿里云YAT产品接入流程
#1. 阿里生活物联网平台对接方案介绍
#1.1. 阿里生活物联网平台介绍
生活物联网平台是一款针对智能生活领域的物联网云平台,是在阿里云IaaS和PaaS层云产品的基础上,搭建的一套公有云平台。平台提供了功能设计、嵌入式开发调试、设备安全、云端开发、App开发、运营管理、数据统计等,助力开发者和方案商从产品前期开发到后期运营的全生命周期服务。
与物联网平台的区别
生活物联网平台和物联网平台均为阿里云IoT提供的云服务平台,两个平台各自优势和使用场景如下。
- 物联网平台提供原子化的设备接入能力,适用于云开发能力较强的用户,可以在各个行业领域使用。更多介绍,请参见什么是物联网平台 (opens new window)。
- 生活物联网平台提供了设备接入能力、移动端的SDK以及免开发的云智能App和界面,更适用于消费级的智能设备开发者,开发门槛较低,可以快速实现消费级设备的智能化,如智能家电、穿戴、家装领域等。
详情参考:https://help.aliyun.com/document_detail/124922.html (opens new window)
#1.2. 阿里生活物联网平台账号
登陆:https://living.aliyun.com/ (opens new window) , 阿里智能生活开放平台,如有支付宝账号,请直接登陆;若无支付宝账号,请免费注册并登录。
具体注册操作请参见阿里云账号注册流程 (opens new window)
#1.3. 阿里生活物联网平台关键名词解释
词条 | 解释 |
产品 | 设备的集合,通常指一组具有相同功能的设备。物联网平台为每个产品颁发全局唯一的ProductKey。 |
设备 | 设备的集合,通常指一组具有相同功能的设备。物联网平台为每个产品颁发全局唯一的ProductKey。 |
物模型 | 是对设备在云端的功能描述,包括设备的属性、服务和事件。物联网平台通过定义一种物的描述语言来描述物模型,称之为TSL(即 Thing Specification Language),采用JSON格式,您可以根据TSL组装上报设备的数据。 |
属性 | 是对设备在云端的功能描述,包括设备的属性、服务和事件。物联网平台通过定义一种物的描述语言来描述物模型,称之为TSL(即 Thing Specification Language),采用JSON格式,您可以根据TSL组装上报设备的数据。 |
事件 | 设备的功能模型之一,一般用于描述设备运行时的状态,如环境监测设备所读取的当前环境温度等。属性支持GET和SET请求方式。应用系统可发起对属性的读取和设置请求。 |
ProductKey | 是物联网平台为产品颁发的全局唯一标识。该参数很重要,在设备认证以及通信中都会用到,因此需要您保管好。 |
DeviceName | 是物联网平台为产品颁发的全局唯一标识。该参数很重要,在设备认证以及通信中都会用到,因此需要您保管好。 |
DeviceSecret | 在注册设备时,自定义的或系统生成的设备名称,具备产品维度内的唯一性。该参数很重要,在设备认证以及通信中都会用到,因此需要您保管好。 |
ProductSecret | 由物联网平台颁发的产品密钥,通常与ProductKey成对出现,可用于一型一密的认证方案。该参数很重要,需要您保管好,不能泄露。(庆科目前均采用一机一密方式) |
ProductID | 用于蓝牙配网,设备为蓝牙配网时需要烧录此信息 |
详情可参考:https://help.aliyun.com/document_detail/124931.html (opens new window)
#2. 平台产品创建
#2.1. 项目类别介绍
阿里生活物联网平台支持接入自有品牌项目和天猫精灵项目。二者区别如下:
项目类别 | APP使用说明 |
自有品牌项目 | 支持使用公版APP(云智能)或自有APP(基于生活物联网平台App SDK) |
天猫精灵生态 | 使用天猫精灵APP |
#2.2. 开发自有品牌项目产品
操作步骤:
- 创建项目 (opens new window):项目不仅便于您管理产品,还可以实现多方协同工作。
- 创建产品并定义功能 (opens new window):产品相当于同类设备的集合,例如,产品可以是某种型号的设备。您可以通过属性、服务和事件三个维度定义产品的功能。平台将根据您定义的功能构建出产品的数据模型,用于云端与设备端的数据通信。
- 配置App (opens new window):当前生活物联网领域,消费者通常使用App绑定并控制设备。平台提供App服务,您可以通过配置App参数项,轻松实现人机互动。
- 添加设备 (opens new window):设备指某个具体设备。每个设备拥有自己的设备证书,用于连接生活物联网平台。平台提供测试设备,测试设备的证书不能用于量产,仅供调试使用。
- 开发设备 (opens new window):平台提供设备端SDK,通过简单开发,设备即可具备上云能力。
- 调试设备连云 (opens new window):公版App连接设备后,通过App和控制台(云端)调试真实设备,验证设备端、云端、App端,三端上下行数据通信。
详情可参考连接:https://help.aliyun.com/document_detail/177362.html (opens new window)
#2.3. 开发天猫精灵生态的产品
操作步骤:
- 创建项目 (opens new window):项目不仅便于您管理产品,还可以实现多方协同工作。
- 创建产品并定义产品功能 (opens new window):产品相当于同类设备的集合,例如,产品可以是某种型号的设备。您可以通过属性、服务和事件三个维度定义产品的功能。平台将根据您定义的功能构建出产品的数据模型,用于云端与设备端的数据通信。
- 配置App (opens new window):在智能生活领域,终端消费者往往通过App或语音控制与实际设备互动。天猫精灵生态项目下的产品固定选用天猫精灵App控制设备。您可以通过简单配置,实现人机互动的效果。
- 添加设备 (opens new window):设备指某个具体设备。每个设备拥有自己的设备证书,用于连接生活物联网平台。平台提供测试设备,测试设备的证书不能用于量产,仅供调试使用。
- 开发设备 (opens new window):平台提供设备端SDK,通过简单开发,设备即可具备上云能力。
- 调试设备连云 (opens new window):天猫精灵App连接设备后,通过App和控制台(云端)调试真实设备,验证设备端、云端、App端,三端上下行数据通信。
详情可参考连接:https://help.aliyun.com/document_detail/177354.html (opens new window)
#3. 设备接入及调试
#3.1. 生成三元组
进入产品设备调试页面
选择您所使用的上海庆科模组型号,如没有可选择任一庆科模组。
选择好模组或芯片类型后,可在测试设备中点击 “新增测试设备”,如下图:
当不填DeviceName时,由平台自动生成DeviceName。请注意,如果采用蓝牙配网,须在DeviceName处填写调试模组的MAC地址,采用小写。天猫精灵生态项目操作相同。
添加完成,将自动生成测试设备所需的三元组,如下图:
三元组生成,也即:“设备激活凭证”,请保存,待设备调试时,需连同 “Product Secret”一起,通过YAT或cli指令烧录至模组中,需要设置的参数依次为:Product Key, Product Secret, Device Secret, Device Name, Product ID。其中Product ID为蓝牙配网所需。
其中,Product Secret 和Product ID的值在产品基本信息中,点击 “显示”即可。如图:
注意:当批量烧录模组时,不推荐使用cli命令烧录,需用庆科专门开发的 BAT 系统,与YAT固件一同进行自动批量预烧录,当下购买订单时需指定固件版本号及提供三元组参数文件。
#3.2. 设备调试
#3.2.1. 通信协议
庆科信息模组已经对接好阿里生活物联网平台,设备端有一套YAT协议需要对接。
框架协议:FogCloud云模块YAT通信协议 (opens new window)
阿里生活物联网平台协议:阿里平台YAT对接协议 (opens new window)
MCU OTA协议:MCU OTA 协议 (opens new window)
#3.2.2. 功能调试
拿到庆科信息的模组样品,可以按需重新配置杭研产品信息,配置产品信息可通过调试串口方式,或者设备端的用户串口方式。
用户串口默认配置
- Band rate: 115200
- Data bites: 8
- Parity: None
- Stop bites: 1
用户串口的波特率调试阶段,可以在调试串口输入cli命令实现:
uart [bandrate]
,uart <rx_pin>|<tx_pin> <pin num>
。
查看波特率命令 uart
或者 设置波特率为9600,命令 uart 9600
.
设置调试设备三元组:linkkey Product_Key Product_Secret Device_Secret Device_Name Product_ID
也可以输入linkkey
查询现在模组配置的三元组数值。
设备端MCU开发可先实现配网命令,模块正确执行的话,可以进行配网。
也可以通过 PC 端串口工具,给庆科信息的模块发送以下测试命令(以EMC3080,蓝牙配网为例):
C0 13 0A 03 00 00 CRC D0 热点配网命令
C0 12 00 00 D0 查询配网
C0 24 00 00 D0 查询UTC
* 状态上报格式:支持JSON、RAW-TLV格式。详情请参考阿里平台YAT对接协议 (opens new window) 。
#3.3. APP使用
#3.3.1. 使用云智能APP
公版App使用流程
在设备开发阶段,您可以使用开发版App调试设备。具体流程如下。
- 在控制台上已创建项目、产品,并完成产品的功能定义。可参见概述 (opens new window)完成这部分的操作。
- 打开公版App的控制开关。详细参见配置App交互端 (opens new window)。
- 设置App参数,其中选择产品面板、多语言管理、配网引导为必填参数。详细请参见设置App参数 (opens new window)。
- 扫描二维码下载开发版App,具体参见本文档“了解公版App”中的相关二维码。
- 扫描配网二维码,绑定设备后调试。具体二维码参见获取配网二维码 (opens new window)。
- 设备调试成功后,进入设备量产阶段 (opens new window),可同步准备说明书物料。详细参见下载物料说明书 (opens new window)。站点为中国站时,在设备量产阶段,产品名称通过审核后,即可在用户版App的对应品类中显示(即产品上架,对消费者可见)。
- 售卖您的设备。消费者购买设备后,根据说明书扫描二维码,下载用户版App并配网绑定您的设备。
具体参考:https://help.aliyun.com/document_detail/143848.html (opens new window)
#3.3.2. 自有品牌APP开发指南
具体参考:https://help.aliyun.com/document_detail/180775.html (opens new window)
#3.3.3. 天猫精灵设备面板
天猫精灵生态项目下的产品固定选用天猫精灵App控制设备。可以通过简单配置,实现人机互动的效果。
具体参考:https://help.aliyun.com/document_detail/177358.html (opens new window)
#4. 设备OTA说明
进入阿里生活物联网平台的 产品页面,找到 “运营中心”,如下图:
打开,进入设备运维,找到“固件升级”,如下图:
点击“添加固件”:
打开界面如下图:
WiFi OTA时,请将固件名称和版本号按照如下格式填写,比如版本为123时:wifi-123,固件类型选择整包。
MCU OTA时,请将固件名称和版本号按照如下格式填写,比如版本为112时:mcu-112,固件类型选择整包,固件模块可以选择新增模块,输入mcu以区分。
上传完成后点击验证固件:
注意:待升级的版本号应与要升级的版本号不同,然后“确定” 即可开始升级过程。
其中:
若选择“APP确认升级 - 是”,请在配网绑定成功后, 进入“APP”----> “我的”-->“设置”--->"固件升级"中,手动启动升级过程。
注意:设备端固件升级过程时,请勿断开电源,否则升级失败,需重新启动。 具体的升级结果可在升级详情中查看。
若选择 “APP确认升级 - 否”,推送后,设备在线则立刻ota升级;设备不在线则待设备上线后即时更新。
升级结果,可点击 “验证固件”查看,如图:
或在 “查看”中查看:
当 “验证固件” 成功后,可进行"批量升级"操作。
#5. 模块固件确认书
如果联调测试好,为了便于模块量产时可以准确地烧写所需版本的固件,已经预先写入针对产品信息的配置,需要输出并双方签订固件确认书(或叫承认书),将记录好与杭研后台产品相关的信息,双方按照首页信息下单和交付采购庆科信息的模块。
#5.1. 固件确认书信息
通常的庆科信息模块固件确认书的信息包括:
下单产品型号:包括庆科信息模组型号,固件SN及产品Product key。
量产三元组可以由客户提供,请于下单时一并提供。
量产固件信息:固件SN,通常两个圆点隔开的 12 位数字字母串,如0000.FY11.Y129,其中 Y129表示模块固件的版本。
#5.2. 确认书签字
针对模块型号、固件信息和标签信息,确认准确无误后,双方在首页上签字留档。