发 帖  
原厂入驻New
申请华秋企业认证 多层板首单免费打样!
30s提交资料,10分钟通过审核(免费赔付+顺丰包邮)>>立即报名

AliOS Things 3.0应用笔记:摄像头配网 + 钉钉群通知 + 天气显示

2019-10-16 13:30:02  226 物联网 阿里云 AliOSThings iot
分享
0
本帖最后由 阿里云AIoT 于 2019-10-16 14:07 编辑


欢迎前往GitHub下载源码
http://bbs.elecfans.com/forum.php?mod=attachment&aid=ODQ4MzMyfGE1MjIyODlhN2IxOGEwYtixNTZlYjc3YzU5MzBiZTZkfDE1NzM2MjgyNTM%3D&request=yes&_f=.pdf
  • 运行流程
  • 效果展示
  • 操作流程
    • 环境配置
    • 源码结构
    • 配置
    • 烧录运行
  • 源码讲解
    • QR扫码部分
    • GUI部分
    • https client部分
运行流程本示例有如下3个功能:
  • 摄像头配网。
  • 推送消息到钉钉群。
  • 显示当天天气。
效果展示
https://ucc-vod.alicdn.com/sv/22fb9c92-16db8e2d3a6/22fb9c92-16db8e2d3a6.mp4
操作流程环境配置
使用vscode打开developerkit_app 源码。
源码目录结构
  1. .
  2. ├── Config.in
  3. ├── README.md
  4. ├── aos.mk
  5. ├── gui               # gui显示,包括进度条、天气界面等
  6. ├── http              # https client应用,包括上报消息到钉钉群,获取天气数据等
  7. ├── k_app_config.h
  8. ├── main.c            # 主入口函数
  9. └── qr_decode         # 摄像头扫码识别
复制代码
配置更改AOS_SDK_PATH路径
  • 编辑 .aos:

  1. AOS_SDK_PATH=/Users/xxw/workspace/github/AliOS-Things
  2. DEPENDENCIES=
  3. MD5SUM_HEADER=a1a4b53ab917fb4a6cb08289b6007fe0
复制代码
更改 /Users/xxw/workspace/github/AliOS-Things 为你的AliOS-Things源码路径。
  • 编辑 Config.in:

  1. ......
  2. config AOS_SDK_PATH
  3.     string
  4.     default "/Users/xxw/workspace/github/AliOS-Things"
  5. ......
复制代码
更改 /Users/xxw/workspace/github/AliOS-Things 为你的AliOS-Things源码路径。
更改钉钉群机器人的token
更改http/http_request.c中的DINGTALK_TOKEN为你的钉钉群token,点击这里了解详细说明:

  1. /* dingtalk token */
  2. #define DINGTALK_TOKEN "<YOUR-DINGTALK-TOKEN>"
复制代码
更改天气api的appcode
更改http/http_request.c中的WEATHER_APPCODE为你的appcode,点击这里了解详细说明:

  1. /* weather api appcode */
  2. #define WEATHER_APPCODE "<YOUR-WEATHER-APPCODE>"
复制代码
烧录运行下载烧录并运行,按照配网演示流程即可显示天气界面。其中配网二维码如下:


源码讲解QR扫码部分本demo使用developerkit开发板的摄像头,通过摄像头扫二维码获取到wIFi信息,然后连接到二维码。配网二维码中的wifi信息格式为:yunqiwifi&<ssid>&<passwd>,比如wifi名称为aiot,密码为12345678,那配网二维码中的wifi信息为:yunqiwifi&aiot&12345678。当


然也可以用网上的二维码生成网站自己生成二维码:https://cli.im/
GUI部分
本demo基于littlevGL绘制了简单的UI交互界面,使用了littlevGL如下组件:

其中字体图标和中文字体在Iconfont中生成,也可以到FontEditor里面编辑字体,得到的ttf文件通过littlevGL提供的Font Converter在线工具转化为C文件。

https client部分本示例使用到了AliOS Things 3.0提供的httpc组件,httpc组件支持多种RESTful的API调用,包括GET、POST、PUT、HEAD等,也支持https安全协议。
1. 钉钉群机器人:本示例使用到了钉钉群自定义机器人的webhook功能,当设备上线后,会主动发送消息到钉钉群中,原理就是通过https client发送POST数据到机器人webhook中,就能够在钉钉群中显示相应POST的数据,该数据也支持markdown格式。
了解钉钉群自定义机器人如何运作的可以参考:自定义机器人
2. 天气API:本示例使用到了阿里云API云市场的天气API:全国天气预报查询、实时天气、24小时天气、景区天气、预报7天/15天【支持高并发】【低延迟】,可以免费调用。请购买该应用(0元免费购买),然后获取到相应的访问appcode:


如何获取CA根证书本示例里面使用的https接口都是安全加密的接口,需要配置CA root证书才能够正常访问这些接口,如何获取https网站的ca证书请参考:导出https网站证书




















AliOS Things 3.0应用笔记:支付宝小程序设备控制 - 全栈开发(附全部源码).pdf.pdf.pdf

下载积分: 积分 -1 分

1.19 MB, 下载次数: 0, 下载积分: 积分 -1 分

阿里云AIoT 2019-10-16 14:05:04
http://bbs.elecfans.com/forum.php?mod=attachment&aid=ODQ4MzI5fGFlNmM4MWNlYmY4YzFlZTEzY2RkMGI1NTA3ODM5ZTVkfDE1NzM2MjgyNTM%3D&request=yes&_f=.pdf
PDF文档如上
回复

举报

评论

高级模式
您需要登录后才可以回帖 登录 | 注册

发经验
关闭

站长推荐 上一条 /10 下一条

快速回复 返回顶部 返回列表