1.登录阿里云物联网平台。 2.创建产品。
单击左侧菜单栏的设备管理>产品,打开产品列表页。
image.png
单击创建产品进入创建产品页面。
参考说明配置产品信息,然后单击保存。
image.png
产品名称:输入产品名称,例如:xw智能灯。
所属品类:此处选择标准品类下的智能生活/电工照明/灯。
单击请选择标准品类选择框。
image.png
在搜索框里输入灯,然后单击搜索图标。
image.png
单击下图所示选择,选择品类。
image.png
联网方式:此处选择Wi-Fi。
数据格式:此处选择ICA 标准数据格式(Alink JSON)。
3.添加设备。
单击图示中前往添加进入产品所属设备列表页面。
image.png
单击添加设备。
image.png
参考说明配置设备信息,然后单击确认。
image.png
DeviceName:输入DeviceName,例如:xwRGBLamp。
备注名称:输入备注名称,例如:xw智能灯设备。
单击下图所示前往查看。
image.png
单击DeviceSecret旁边的查看。
image.png
单击一键复制复制设备三元组。
image.png
设备三元组信息如下:
{ "ProductKey": "a1kJ", "DeviceName": "xwRGBLamp", "DeviceSecret": "be8f*****b45297fc" }
4.添加功能。
单击左侧菜单栏产品进入产品列表页。然后单击操作列的查看按钮。
image.png
单击功能定义,然后单击编辑草稿。
image.png
单击添加标准功能。
image.png
选择RGB调色,然后单击确定。
image.png
单击发布上线。
image.png
勾选确认已查看当前版本与线上版本的 比对结果,然后单击确定。
image.png
单击ProductSecret旁边的查看。
image.png
单击ProductSecret栏的复制。
image.png
ProductSecret和上面的三元组信息组成设备的四元组信息。 设备四元组信息用于后续支付宝客户端,物联网设备端开发,此处可以保存一下。 设备四元组信息如下:
{ "ProductKey": "a1EB", "ProductSecret": "Sj***YX", "DeviceName": "xwRGBLamp", "DeviceSecret": "c7****************4c1c" }
5.发布产品。
在产品详情页,单击右上角的发布,弹出确认发布产品框。
image.png
依次单击请确认后面的图标,然后单击发布。
image.png
步骤二:开发支付宝小程序服务端应用
支付宝小程序服务端接收支付宝小程序客户端的指令传送到阿里云IoT平台。使用Visual Studio Code开发工具,Node.js脚本语言。如果需要部署到线上或者上线小程序,还需要准备:
ECS或者公网可访问的服务器。
有效域名(已备案)。
SSL证书。
申请加入阿里巴巴小程序繁星计划,可以免费试用ECS和其他的小程序服务。 1.下载安装Node.js。 2.下载支付宝小程序服务端源码。 3.使用Visual Studio Code打开支付宝小程序服务端源码。 image.png 4.修改配置信息。 修改app/service/aliyunIoT.js文件中的config属性。
const config = { accessKey: ' ', accessSecret: ' ', endPoint: 'https://iot. .aliyuncs.com', apiVersion: '2018-01-20', regionId: ' ', };
access-key和access-secret是阿里云颁发给用户访问服务所用的密钥。
登录阿里云控制台。
鼠标移至右上角头像,然后单击AccessKey 管理。
image.png
在AccessKey管理页面获取accessKey和accessSecret。
image.png
regionId是阿里云物联网平台所属地域,查看地域详情,例如:cn-shanghai。
endPoint是地域所属的数据中心。阿里云物联网平台有多个地域,不同地域有不同的数据中心,例如:https://iot.cn-shanghai.aliyuncs.com。
5.依次单击上面菜单栏的Terminal>New Terminal打开Terminal窗口。 image.png 6.在Terminal窗口执行以下命令。
$ npm i $ npm run dev
7.使用浏览器访问http://127.0.0.1:7001/。 image.png 说明:支付宝小程序服务端源码适用于AliOS Things 3.1版本。 步骤三:开发支付宝小程序客户端应用
支付宝小程序客户端向支付宝小程序服务端发送RGB灯颜色指令。使用小程序客户端开发工具打开支付宝小程序客户端程序,并修改配置信息进行运行。了解支付宝小程序开发流程:支付宝小程序快速开始。 1.下载安装支付宝小程序客户端开发工具。 2.下载支付宝小程序客户端源码。 3.用小程序开发工具打开支付宝小程序客户端源码。
打开小程序开发者工具客户端。然后单击客户端右上角打开项目。
image.png
选择客户端源码文件,然后单击选择文件夹。
image.png
单击打开。
image.png
首次打开源码时提示安装依赖,单击确认安装依赖。
image.png
如果首次没有安装依赖,可以按下图操作手动安装所需依赖。 image.png
4.修改配置。 打开utils/device_api.js文件,修改以下三个属性:
const defaultServerURL = ' '; const defaultProductKey = ' '; const defaultDeviceName = ' ';
your-domain为支付宝小程序服务端API地址,例如:http://localhost:7001/api/device。
product-key为设备四元组信息中ProductKey值。
device-name为设备四元组信息中DeviceName值。
步骤四:开发设备端应用
要先安装好设备对应的驱动,本例中D1 WiFi设备对应的驱动为CH340。 1.修改AliOS Things3.1源码。 由于设备端应用需要依赖pwm库,所以要在AliOS Things系统中加入pwm库。 打开platform/mcu/esp8266/aos.mk文件,在第54行下面加入以下代码。
$(NAME)_PREBUILT_LIBRARY += bsp/lib/libpwm.a
image.png 2.下载设备端源码。 3.用开发工具Visual Studio Code打开设备端源码。 image.png 4.修改设备端配置。
打开app_entry.c文件,修改以下属性。
设备认证信息:
#define PRODUCT_KEY " " #define PRODUCT_SECRET " " #define DEVICE_NAME " " #define DEVICE_SECRET " "
ProductKey为设备四元组信息ProductKey的值。
ProductSecret为设备四元组信息ProductSecret的值。
DeviceName为设备四元组信息DeviceName的值。
DeviceSecret为设备四元组信息DeviceSecret的值。
WiFi信息:
#define WIFI_SSID "<WIFI_SSID>" #define WIFI_PASSWD "<WIFI_PASSWD>"
WIFI_SSID为手机热点的设备名称,例如:aiotesp8266。
WIFI_PASSWD为手机热点的密码,例如:12345678abc。
image.png
5.编译。 单击上面导航栏的Terminal>New Terminal,在下面的Terminal窗口输入aos make进行编译。 image.png 输出类似下图信息表示编译成功。 image.png 6.烧录。
通过USB接口连接D1 WiFi设备。
image.png
在Terminal窗口输入aos upload进行烧录。
输入1,然后按enter键。
image.png
输出类似下图信息表示烧录成功。
image.png 步骤五:通过手机热点进行设备配网
前面的开发工作已经完成,现在是最关键的一步。手机热点信息已经通过步骤四烧录到设备中,这里打开手机热点,设备会自动进行配网连接,通过串口监控可以查看配网日志信息。配网成功支付宝小程序客户端设备状态变为在线,阿里云IoT平台设备状态变为在线。 1.打开手机热点进行网络适配。 2.单击设备端的image.png图标进行串口监控,查看设备日志。 3.选择波特率为961200,然后单击打开。 image.png
Web Serial窗口输出连接信息。
image.png
支付宝小程序客户端重新编译后,设备状态为在线。
image.png
在阿里云物联网平台查看设备状态为在线。
image.png 步骤六:通过支付宝小程序控制RGB灯颜色
D1 WiFi设备连上RGB灯,就可以通过支付宝小程序控制RGB灯的颜色。 1.D1 WiFi设备连接RGB灯。 接线方式如下: D1 WiFi引脚 RGB灯引脚 GPIO12 Blue(蓝色灯引脚) GPIO13 Red(红色灯引脚) GPIO15 Green(绿色灯引脚) GND GND(负极)
2.在支付宝小程序客户端选择绿色,RGB灯颜色变为绿色。 image.png image.png 3.在支付宝小程序客户端选择蓝色,RGB灯颜色变为蓝色。 image.png image.png 4.在支付宝小程序客户端选择红色,RGB灯颜色变为红色。 image.png
"本文将基于 AliOS Things 3.1 系统搭建应用,此应用通过支付宝小程序控制 RGB 灯的颜色。 一、背景信息 支付宝小程序服务端主要功能是为支付宝小程序提供 API SaaS 服务,同时通过 OpenAPI SDK 对接 阿里云物联网(IoT)平台。 支付宝小程序客户端主要功能是显示前端控制界面,通过 https API 发送指令控制设备属性。 设备端程序主要功能是基于 AliOS Things 3.1 系统适配 D1 WiFi 设备开发。 阿里云物联网平台主要功能是提供安全可靠的设备连接通信能力,支持设备数据采集上云,规 则引擎流转数据和云端数据下发设备端。此外,也提供方便快捷的设备管理能力,支持物模型定 义,数据结构化存储,和远程调试、监控、运维。 硬件设备主要功能是通过 D1 WiFi 设备连接网络,接收支付宝小程序的指令控制 RGB 灯的颜色。 D1 WiFi 设备的芯片型号是 ESP 8266。 步骤一:管理阿里云物联网平台设备 支付宝小程序和设备端是通过阿里云 IoT 平台进行通信的,具体是通过设备四元组信息进行连接 的。所以要先在阿里云物联网平台创建产品,在产品下添加对应型号的设备,产生该设备四元组信息。 要有阿里云账号并开通阿里云物联网平台服务。 1. 登录阿里云物联网平台。 2. 创建产品。 a. 单击左侧菜单栏的设备管理>产品,打开产品列表页。 b. 单击创建产品进入创建产品页面。 c. 参考说明配置产品信息,然后单击保存。 产品名称:输入产品名称,例如:xw 智能灯。 所属品类:此处选择标准品类下的智能生活/电工照明/灯。 3. 单击请选择标准品类选择框。 4. 在搜索框里输入灯,然后单击搜索图标。 5. 单击下图所示选择,选择品类。 联网方式:此处选择 Wi-Fi。 数据格式:此处选择 ICA 标准数据格式(Alink JSON)。 6. 添加设备。 a. 单击图示中前往添加进入产品所属设备列表页面。 b. 单击添加设备。 c. 参考说明配置设备信息,然后单击确认。 DeviceName:输入 DeviceName,例如:xwRGBLamp。 备注名称:输入备注名称,例如:xw 智能灯设备。 d. 单击前往查看。 e. 单击 DeviceSecret 旁边的查看。 f. 单击一键复制复制设备三元组。 设备三元组信息如下: { ""ProductKey"": ""a1kJ"", ""DeviceName"": ""xwRGBLamp"", ""DeviceSecret"": ""be8fb45297fc"" } 7. 添加功能。 a. 单击左侧菜单栏产品进入产品列表页。然后单击操作列的查看按钮。 b. 单击功能定义,然后单击编辑草稿。c. 单击添加标准功能。d. 选择 RGB 调色,然后单击确定。 e. 单击发布上线。 f. 勾选确认已查看当前版本与线上版本的比对结果,然后单击确定。 g. 单击 ProductSecret 旁边的查看。 h. 单击 ProductSecret 栏的复制。 ProductSecret 和上面的三元组信息组成设备的四元组信息。 设备四元组信息用于后续支付宝客户端,物联网设备端开发,此处可以保存一下。 设备四元组信息如下: {""ProductKey"": ""a1EB"", ""ProductSecret"": ""Sj*****YX"", ""DeviceName"": ""xwRGBLamp"", ""DeviceSecret"": ""c7*******************4c1c"" } 8. 发布产品。 a. 在产品详情页,单击右上角的发布,弹出确认发布产品框。 b. 依次单击请确认后面的图标,然后单击发布。 步骤二:开发支付宝小程序服务端应用 支付宝小程序服务端接收支付宝小程序客户端的指令传送到阿里云 IoT 平台。使用 Visual Studio Code 开发工具,Node.js 脚本语言。如果需要部署到线上或者上线小程序,还需要准备: ECS 或者公网可访问的服务器。 有效域名(已备案)。 SSL 证书。 申请加入阿里巴巴小程序繁星计划,可以免费试用 ECS 和其他的小程序服务。 1. 下载安装 Node.js。 2. 下载支付宝小程序服务端源码。 3. 使用 Visual Studio Code 打开支付宝小程序服务端源码。 4. 修改配置信息。 修改 app/service/aliyunIoT.js 文件中的 config 属性。 oaccess-key 和 access-secret 是阿里云颁发给用户访问服务所用的密钥。 a. 登录阿里云控制台。 b. 鼠标移至右上角头像,然后单击 AccessKey 管理。 c. 在 AccessKey 管理页面获取 accessKey 和 accessSecret。 d. oregionId 是阿里云物联网平台所属地域,查看地域详情,例如:cn-shanghai。 oendPoint 是地域所属的数据中心。阿里云物联网平台有多个地域,不同地域有不同的数据中心, 例如:https://iot.cn-shanghai.aliyuncs.com。 5. 依次单击上面菜单栏的 Terminal>New Terminal 打开 Terminal 窗口。 6. 在 Terminal 窗口执行以下命令。
$ npm i $ npm run dev
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。