电子工程师技术服务社区
公告
登录
|
注册
首页
技术问答
厂商活动
正点原子
板卡试用
资源库
下载
文章
社区
论坛
开发板专区
人人都可以DIY的Arduino UNO智能灯(二)设备接入云平台原理
人人都可以DIY的Arduino UNO智能灯(二)设备接入云平台原理
DengQilong
LV4工程师
| 2017-08-12 17:46:08
浏览量 1085
回复:1
发表新帖
硬件本身有千奇百怪的型号,网络环境也千差万别。而
硬件连接手机、接入云端,就是这么简单的连接过程其实包含了从硬件跨到软件、跨到互联网的诸多问题。因为物联网产品所涉及到的技术领域跨度很大,建议不要从一开始就自己去完成所有的东西,而是要尽可能地去利用外部的资源,找到合适的工具去解决一些通用的问题。
这里在体验过几个智能硬件云平台后,我选择了借助机智云自助开发平台,来实现设备开发和联网。理由么,就是机智云提供了很多开发工具,对于我一个硬件工程师来说,也能做一款APP应用了。下面主要讲如何让设备具有联网能力。
三、让设备具有联网能力
要让设备能通过手机APP远程控制,首先得赋予设备联网能力。
通常我们会选用串口无线透传模块(WiFi、Zigbee、Lora、NB-IoT)联网,来实现联网功能。 此处推荐性价比最高的
esp8266
模块。
在ESP8266模块上烧写
GAgent
通信协议,把它连接到
arduino
UNO R3板卡的串口即可
,注意Tx、Rx要交叉连接。
烧写了GAgent后,MCU与云平台通信的协议对用户来说就屏蔽了,我们只需要在自动生成的单片机/MCU/SoC工程中添加下自己的业务代码即可,整个工程的框架已经为我们搭建好。
就像使用Arduino一样,完全不用关心底层驱动原理,只管调用现成的接口函数。
关于GAgent协议:
GAgent 的小固件程序,它运行在硬件平台里面,通常在 Wi-Fi 模块里,也可以在硬件的主控芯片里。GAgent 起到了一个承上启下的作用,对云端,它实现了所有的机智云接口,让硬件具有与云端连接的能力;对主控芯片,它又提供了一套对嵌入式开发很友好的封装,
让硬件工程师可以面向业务编程,而不用去考虑云端通信的细节
。
GAgent 在云端所提供的各类型接口能够让整个连接过程变得更加简易,这些接口在传输层面支持多种协议,包括 MQTT,HTTP/S,还有 WebSocket等。
GAgent for ESP8266固件
烧写教程:
http://club.gizwits.com/thread-3551-1-1.html
四、Let’s Go!
准备工作做好后,我们就可以开始奇妙的开发之旅啦~
Step1:
在机智云开发者中心创建一个产品,给它起个名字,选择WiFi方案,然后点击保存按钮,这样你的产品就在机智云那里“登记”了。
Step2:
接着我们创建数据点,数据点即设备产品的功能的抽象,用于描述产品功能及其参数。
本次我们需要实现控制RGB LED的亮灭和颜色(RGB色单独可调、一键设置组合色彩)5个功能,因此要建立5个数据点。机智云的开发者中心有很多产品模板,我们可以直接利用模板,然后在它的基础上修改。
进入开发者中心的数据点一栏:
点击管理->选择产品数据点模板:
选择
gokit
Demo:
GokitDemo的数据点有很多,去掉不需要的:
最后保留的5个用于控制RGB LED的数据点:
Step3:
数据点建立好后,在MCU开发栏目,选择独立MCU方案,硬件平台为ArduinoUNOR3,点击生成代码包即可生成工程。
稍等几秒,很快就能生成完毕;
工程生成好后,我们下载它;
硬件本身有千奇百怪的型号,网络环境也千差万别。而
硬件连接手机、接入云端,就是这么简单的连接过程其实包含了从硬件跨到软件、跨到互联网的诸多问题。因为物联网产品所涉及到的技术领域跨度很大,建议不要从一开始就自己去完成所有的东西,而是要尽可能地去利用外部的资源,找到合适的工具去解决一些通用的问题。
这里在体验过几个智能硬件云平台后,我选择了借助机智云自助开发平台,来实现设备开发和联网。理由么,就是机智云提供了很多开发工具,对于我一个硬件工程师来说,也能做一款APP应用了。下面主要讲如何让设备具有联网能力。
三、让设备具有联网能力
要让设备能通过手机APP远程控制,首先得赋予设备联网能力。
通常我们会选用串口无线透传模块(WiFi、Zigbee、Lora、NB-IoT)联网,来实现联网功能。 此处推荐性价比最高的
esp8266
模块。
在ESP8266模块上烧写
GAgent
通信协议,把它连接到
arduino
UNO R3板卡的串口即可
,注意Tx、Rx要交叉连接。
烧写了GAgent后,MCU与云平台通信的协议对用户来说就屏蔽了,我们只需要在自动生成的单片机/MCU/SoC工程中添加下自己的业务代码即可,整个工程的框架已经为我们搭建好。
就像使用Arduino一样,完全不用关心底层驱动原理,只管调用现成的接口函数。
关于GAgent协议:
GAgent 的小固件程序,它运行在硬件平台里面,通常在 Wi-Fi 模块里,也可以在硬件的主控芯片里。GAgent 起到了一个承上启下的作用,对云端,它实现了所有的机智云接口,让硬件具有与云端连接的能力;对主控芯片,它又提供了一套对嵌入式开发很友好的封装,
让硬件工程师可以面向业务编程,而不用去考虑云端通信的细节
。
GAgent 在云端所提供的各类型接口能够让整个连接过程变得更加简易,这些接口在传输层面支持多种协议,包括 MQTT,HTTP/S,还有 WebSocket等。
GAgent for ESP8266固件
烧写教程:
http://club.gizwits.com/thread-3551-1-1.html
四、Let’s Go!
准备工作做好后,我们就可以开始奇妙的开发之旅啦~
Step1:
在机智云开发者中心创建一个产品,给它起个名字,选择WiFi方案,然后点击保存按钮,这样你的产品就在机智云那里“登记”了。
Step2:
接着我们创建数据点,数据点即设备产品的功能的抽象,用于描述产品功能及其参数。
本次我们需要实现控制RGB LED的亮灭和颜色(RGB色单独可调、一键设置组合色彩)5个功能,因此要建立5个数据点。机智云的开发者中心有很多产品模板,我们可以直接利用模板,然后在它的基础上修改。
进入开发者中心的数据点一栏:
点击管理->选择产品数据点模板:
选择
gokit
Demo:
GokitDemo的数据点有很多,去掉不需要的:
最后保留的5个用于控制RGB LED的数据点:
Step3:
数据点建立好后,在MCU开发栏目,选择独立MCU方案,硬件平台为ArduinoUNOR3,点击生成代码包即可生成工程。
稍等几秒,很快就能生成完毕;
工程生成好后,我们下载它;
0
收藏
举报
分享
×
微信分享
扫描二维码分享
qq分享
QQ空间分享
微博分享
我来回复
登录后可评论,请
登录
或
注册
所有回答
数量:
1
13829261782
2018-02-03
楼主辛苦了!!
0
回复
举报
发布
×
举报
举报人:
被举报人:DengQilong
*
类型:
请选择类型
问题质量差
垃圾广告信息
偏离社区主题
违规内容
不友善内容
与社区已有问题重复
以上选项都不是
*
详细原因:
取消
提交
x
收藏成功!点击
我的收藏
查看收藏的全部帖子