开发者社区> 问答> 正文

请问,有使用 AliOS Things 快速构建 RGB 灯应用的案例吗?

请问,有使用 AliOS Things 快速构建 RGB 灯应用的案例吗?

展开
收起
1358896759097293 2021-04-01 11:05:38 1252 0
来自:阿里开源
2 条回答
写回答
取消 提交回答
  • 下一站是幸福

    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

    2021-04-02 21:55:06
    赞同 展开评论 打赏
  • 45271990@qq.com

    "本文将基于 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
    
    
    1. 使用浏览器访问 http://127.0.0.1:7001/。 说明:支付宝小程序服务端源码适用于 AliOS Things 3.1 版本。 步骤三:开发支付宝小程序客户端应用 支付宝小程序客户端向支付宝小程序服务端发送 RGB 灯颜色指令。使用小程序客户端开发工具打 开支付宝小程序客户端程序,并修改配置信息进行运行。了解支付宝小程序开发流程:支付宝小程序 快速开始。 1. 下载安装支付宝小程序客户端开发工具。 2. 下载支付宝小程序客户端源码。 3. 用小程序开发工具打开支付宝小程序客户端源码。 a. 打开小程序开发者工具客户端。然后单击客户端右上角打开项目。 b. 选择客户端源码文件,然后单击选择文件夹。 c. 单击打开。 d. 首次打开源码时提示安装依赖,单击确认安装依赖。 如果首次没有安装依赖,可以按下图操作手动安装所需依赖。
    2. 修改配置。 打开 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
    3. 下载设备端源码。 3. 用开发工具 Visual Studio Code 打开设备端源码。
    4. 修改设备端配置。5. 编译。 单击上面导航栏的 Terminal>New Terminal,在下面的 Terminal 窗口输入 aos make 进行编译。
    5. 烧录。a. 通过 USB 接口连接 D1 WiFi 设备。 b. 在 Terminal 窗口输入 aos upload 进行烧录。 步骤五:通过手机热点进行设备配网 前面的开发工作已经完成,现在是最关键的一步。手机热点信息已经通过步骤四烧录到设备中, 这里打开手机热点,设备会自动进行配网连接,通过串口监控可以查看配网日志信息。配网成功支付 宝小程序客户端设备状态变为在线,阿里云 IoT 平台设备状态变为在线。 1. 打开手机热点进行网络适配。 2. 单击设备端的图标 进行串口监控,查看设备日志。 3. 选择波特率为 961200,然后单击打开。步骤六:通过支付宝小程序控制 RGB 灯颜色 D1 WiFi 设备连上 RGB 灯,就可以通过支付宝小程序控制 RGB 灯的颜色。
    2021-04-02 21:46:30
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
+ 订阅
阿里巴巴相信开源的世界里人人贡献代码,人人获得收益,共同创造一个互帮互利的社区,促进技术进步和发展。
问答排行榜
最热
最新

相关电子书

更多
AliOS Things 电源管理框架 立即下载
AliOS Things快速开发指南 立即下载
ST+AliOS > Smart IoT ! 立即下载