电子工程师技术服务社区
公告
登录
|
注册
首页
技术问答
厂商活动
正点原子
板卡试用
资源库
下载
文章
社区
论坛
开发板专区
雾计算ECE demo开发教程(esp8266试用版)
雾计算ECE demo开发教程(esp8266试用版)
开发
beam
LV4工程师
| 2017-01-13 15:28:02
浏览量 810
回复:0
发表新帖
ECE雾计算esp8266固件包 试用版发布
该固件实现了下列功能:
1、当检测到上报温度大于27度时,通知MCU打开电机;
2、当红外对管检测到障碍物时,打开红灯;
本教程配合下载中心的ECE固件开发包使用,结合一个demo教程,教你如何进行ECE开发。
下载地址:
ECE雾计算esp8266固件包
ECE雾计算是什么
雾计算可以理解为设备端的计算,能协助云计算解决部分其无法解决的数据计算需求,比如要求一秒钟采集50次传感器的设备,不可能实时把数据传到云端再进行处理,更适合在设备进行必要的数据计算,向云端传输处理结果,或者模组直接将数据的分析结果转换成对设备的动作等,提高实时性。
机智云ECE雾计算主要对接智能设备用的通信模组和手机,采取编译性语言(C语言)和解析性语言(Lua)相结合的方式,使用解析性脚本,将适配策略在云端进行配置,配置后通过推送的方式发送到模组或手机,设备收到新的配置策略后,立即执行;配置策略分别负责适配传输层协议适配、业务层协议适配、数据的计算方法等。
技术价值
机智云ECE雾计算能降低开发成本,缩短开发周期。
云端配置脚本,动态改变模组行为;
增加不同设备的数据通信自适配的能力;
增加不同设备的协议自动转换能力;
增加设备端的数据计算算法实施与更换以及立即执行的能力。
相关链接:
《如何使用机智云ECE雾计算》
-----------------------------------------------------------------------------------------------------------------------------------------------------
ECE入门准备
机智云账号注册
硬件准备
MCU协议介绍
脚本编译及推送
1.机智云账号注册
目前ECE的功能只有注册了机智云的企业账号,在企业账号下的企业产品项目下创建的产品才能体验。
注册教程
注意:需要在企业用户里面创建企业产品才能体验ECE 个人产品目前不支持
添加ECE服务:
等待机智云开通ECE服务
ECE开通后如下图:
2.硬件准备
机智云ECE功能现在基于GAgent ESP8266
4M Flash
硬件平台;
第一步我们得找到一个ESP8266的WiFi模组;
第二步拿到机智云提供的支持
ECE的固件
。
当以上两步准备好,然后进入固件烧录。
烧录教程
2.1设备连接
将ESP8266模块按照如下原理图进行接线,注意GPIO0(18号管脚)需要输入低电平,本实验直接接地处理,KEY1实现外部复位功能
上图为烧录固件简易原理图,在产品中实际搭建线路时,请参考官方提供线路图,如下所示:
2.2串口设置
将上述串口连接电脑后,通过“我的电脑”->“管理”-> “设备管理器”->“端口(COM 和LPT)”选项中可以看到相应增加的COM口。
2.3下载烧写软件
下载地址:
http://pan.baidu.com/s/1mhMGSeG
下载解压后得到下面文件
再次解压图中所示的文件后,双击打开烧写软件,出现如下对话框
2.4使用串口烧写方式一烧写固件
拿到支持ECE的ESP8266机智云WiFi固件
请务必依次对照下图所选的地方进行相应的填写:
固件烧写操作:
步骤一:当串口连接成功之后,点击如上图的“START”按钮,
会出现:
步骤二:将ESP8266进行复位(按下1节原理图所示的KEY1后松开)将会出现如下信息表示模块正在进行烧写。
步骤三:等待一段时间后,出现“FINISH”字样表示烧写成功。
产品初始化信息烧录:
到产品页面找到对应产品的
product key
,如下图:
把
product key
保存到init.lua脚本里面,格式如下:
把该文件烧录到
0xb0000地址
,烧录步骤跟
第五部分固件烧写操作
一样
视频教程
:
固件烧录
PK烧录
3.MCU协议介绍
MCU与WIFI通讯以字符串形式通讯,具体命令规范如下:
MCU 通知 WiFi进入airlink配网 cmd=2:
命令:
mcu2wifi&cmd=2&mode=0/1
//解释:
//mode:0 softap配置模式; mode:1 airlink配网模式
复制代码
WIFI回复配网:
命令:
mcu2wifi&cmd=2&result=0/1
复制代码
MCU上传设备数据给WiFi cmd=3:
命令:
mcu2wifi&cmd=3&Infrared=1&LedSwitchOnOff=1&MotorSwitchOnOff=1&Temperature=05
复制代码
WiFi发送控制指令给mcu cmd=4:
命令:
wifi2mcu&cmd=4&LedSwitchOnOff=1或者MotorSwitchOnOff=1
复制代码
实现该协议的固件见机智云下载中心
ECE雾计算esp8266固件包
里面的gokit_mcu_stm32_ece.hex
视频:
MCU协议介绍
4.脚本编译及推送
4.1脚本格式及编写规则
请参照demo.lua这个脚本为模板编写自己的lua应用程序,该demo脚本需配套gokit套件及上面提到的模组及MCU固件使用,实现了下列功能:
1.当检测到上报温度大于27度时,通知MCU打开电机;
2.当红外对管检测到障碍物时,打开红灯;
下面我们通过注释区定义了几大块:
应用程序初始化部分,程序请写到luaInit内容区,这部分的代码在整个脚本生命周期只会运行一次,比如分配应用的内存大小,请把lua应用程序需要初始化一次的部分放在这个区域内。
----------luaInit----------
---------内容------------
----------luaInit end----
复制代码
应用程序公有函数部分,程序请写到luaUtils内容区。
----------luaUtils---------
---------内容------------
----------luaUtils end---
复制代码
从app过来的数据处理,程序请写到luaHandleDataFromApp内容区。
----------luaHandleDataFromApp----------
---------------------内容--------------
----------luaHandleDataFromApp end----
复制代码
从MCU设备过来的数据处理,程序请写到luaHandleDataFromApp内容区。
----------luaHandleDataFromDev----------
---------------------内容---------------
----------luaHandleDataFromApp end----
复制代码
注意:
由于esp8266资源紧缺,编写的lua应用程序脚本大小不能大于10Kbytes,一次性定义的变量(table\string)不宜超过300个,总变量不宜超过500个。
4.2 lua SDK版本及相关的API
sdk版本:SDK5.1.4
Lua SDK标准库:其中string和table为sdk5.1.4标准库
core,math,C API,auxiliary library
复制代码
不全支持,有裁剪(详细的api请查看文档):
gagent_esp8266_api
tmr定时器接口用的是esp8266平台的定时器。 GAgent封装给lua使用的API: 请查看文档:gagent_esp8266_api
4.3 验证lua应用程序的语法
编写好的lua应用程序,可以先用本地的IDE先进行语法编译验证,确保语法编译没有问题,对于调用到的GAgent API,可以先打桩。Window平台推荐LUA本地编译的IDE工具:
SciTE或 LuaForWindows:
Ubuntu安装lua环境:
sudo apt-get install lua、sudo apt-get install lua5.1-0-dev
复制代码
4.4 脚本推送
把lua脚本拷贝到lua脚本录入处做推送:
可以通过指向mac地址对某台或某几台设备进行脚本推送:
推送结果反馈: 推送成功:
Mac地址出错或设备未上线提示的推送失败:
视频讲解:
lua脚本讲解
Gokit跑lua演示
ECE雾计算esp8266固件包 试用版发布
该固件实现了下列功能:
1、当检测到上报温度大于27度时,通知MCU打开电机;
2、当红外对管检测到障碍物时,打开红灯;
本教程配合下载中心的ECE固件开发包使用,结合一个demo教程,教你如何进行ECE开发。
下载地址:
ECE雾计算esp8266固件包
ECE雾计算是什么
雾计算可以理解为设备端的计算,能协助云计算解决部分其无法解决的数据计算需求,比如要求一秒钟采集50次传感器的设备,不可能实时把数据传到云端再进行处理,更适合在设备进行必要的数据计算,向云端传输处理结果,或者模组直接将数据的分析结果转换成对设备的动作等,提高实时性。
机智云ECE雾计算主要对接智能设备用的通信模组和手机,采取编译性语言(C语言)和解析性语言(Lua)相结合的方式,使用解析性脚本,将适配策略在云端进行配置,配置后通过推送的方式发送到模组或手机,设备收到新的配置策略后,立即执行;配置策略分别负责适配传输层协议适配、业务层协议适配、数据的计算方法等。
技术价值
机智云ECE雾计算能降低开发成本,缩短开发周期。
云端配置脚本,动态改变模组行为;
增加不同设备的数据通信自适配的能力;
增加不同设备的协议自动转换能力;
增加设备端的数据计算算法实施与更换以及立即执行的能力。
相关链接:
《如何使用机智云ECE雾计算》
-----------------------------------------------------------------------------------------------------------------------------------------------------
ECE入门准备
机智云账号注册
硬件准备
MCU协议介绍
脚本编译及推送
1.机智云账号注册
目前ECE的功能只有注册了机智云的企业账号,在企业账号下的企业产品项目下创建的产品才能体验。
注册教程
注意:需要在企业用户里面创建企业产品才能体验ECE 个人产品目前不支持
添加ECE服务:
等待机智云开通ECE服务
ECE开通后如下图:
2.硬件准备
机智云ECE功能现在基于GAgent ESP8266
4M Flash
硬件平台;
第一步我们得找到一个ESP8266的WiFi模组;
第二步拿到机智云提供的支持
ECE的固件
。
当以上两步准备好,然后进入固件烧录。
烧录教程
2.1设备连接
将ESP8266模块按照如下原理图进行接线,注意GPIO0(18号管脚)需要输入低电平,本实验直接接地处理,KEY1实现外部复位功能
上图为烧录固件简易原理图,在产品中实际搭建线路时,请参考官方提供线路图,如下所示:
2.2串口设置
将上述串口连接电脑后,通过“我的电脑”->“管理”-> “设备管理器”->“端口(COM 和LPT)”选项中可以看到相应增加的COM口。
2.3下载烧写软件
下载地址:
http://pan.baidu.com/s/1mhMGSeG
下载解压后得到下面文件
再次解压图中所示的文件后,双击打开烧写软件,出现如下对话框
2.4使用串口烧写方式一烧写固件
拿到支持ECE的ESP8266机智云WiFi固件
请务必依次对照下图所选的地方进行相应的填写:
固件烧写操作:
步骤一:当串口连接成功之后,点击如上图的“START”按钮,
会出现:
步骤二:将ESP8266进行复位(按下1节原理图所示的KEY1后松开)将会出现如下信息表示模块正在进行烧写。
步骤三:等待一段时间后,出现“FINISH”字样表示烧写成功。
产品初始化信息烧录:
到产品页面找到对应产品的
product key
,如下图:
把
product key
保存到init.lua脚本里面,格式如下:
把该文件烧录到
0xb0000地址
,烧录步骤跟
第五部分固件烧写操作
一样
视频教程
:
固件烧录
PK烧录
3.MCU协议介绍
MCU与WIFI通讯以字符串形式通讯,具体命令规范如下:
MCU 通知 WiFi进入airlink配网 cmd=2:
命令:
mcu2wifi&cmd=2&mode=0/1
//解释:
//mode:0 softap配置模式; mode:1 airlink配网模式
复制代码
WIFI回复配网:
命令:
mcu2wifi&cmd=2&result=0/1
复制代码
MCU上传设备数据给WiFi cmd=3:
命令:
mcu2wifi&cmd=3&Infrared=1&LedSwitchOnOff=1&MotorSwitchOnOff=1&Temperature=05
复制代码
WiFi发送控制指令给mcu cmd=4:
命令:
wifi2mcu&cmd=4&LedSwitchOnOff=1或者MotorSwitchOnOff=1
复制代码
实现该协议的固件见机智云下载中心
ECE雾计算esp8266固件包
里面的gokit_mcu_stm32_ece.hex
视频:
MCU协议介绍
4.脚本编译及推送
4.1脚本格式及编写规则
请参照demo.lua这个脚本为模板编写自己的lua应用程序,该demo脚本需配套gokit套件及上面提到的模组及MCU固件使用,实现了下列功能:
1.当检测到上报温度大于27度时,通知MCU打开电机;
2.当红外对管检测到障碍物时,打开红灯;
下面我们通过注释区定义了几大块:
应用程序初始化部分,程序请写到luaInit内容区,这部分的代码在整个脚本生命周期只会运行一次,比如分配应用的内存大小,请把lua应用程序需要初始化一次的部分放在这个区域内。
----------luaInit----------
---------内容------------
----------luaInit end----
复制代码
应用程序公有函数部分,程序请写到luaUtils内容区。
----------luaUtils---------
---------内容------------
----------luaUtils end---
复制代码
从app过来的数据处理,程序请写到luaHandleDataFromApp内容区。
----------luaHandleDataFromApp----------
---------------------内容--------------
----------luaHandleDataFromApp end----
复制代码
从MCU设备过来的数据处理,程序请写到luaHandleDataFromApp内容区。
----------luaHandleDataFromDev----------
---------------------内容---------------
----------luaHandleDataFromApp end----
复制代码
注意:
由于esp8266资源紧缺,编写的lua应用程序脚本大小不能大于10Kbytes,一次性定义的变量(table\string)不宜超过300个,总变量不宜超过500个。
4.2 lua SDK版本及相关的API
sdk版本:SDK5.1.4
Lua SDK标准库:其中string和table为sdk5.1.4标准库
core,math,C API,auxiliary library
复制代码
不全支持,有裁剪(详细的api请查看文档):
gagent_esp8266_api
tmr定时器接口用的是esp8266平台的定时器。 GAgent封装给lua使用的API: 请查看文档:gagent_esp8266_api
4.3 验证lua应用程序的语法
编写好的lua应用程序,可以先用本地的IDE先进行语法编译验证,确保语法编译没有问题,对于调用到的GAgent API,可以先打桩。Window平台推荐LUA本地编译的IDE工具:
SciTE或 LuaForWindows:
Ubuntu安装lua环境:
sudo apt-get install lua、sudo apt-get install lua5.1-0-dev
复制代码
4.4 脚本推送
把lua脚本拷贝到lua脚本录入处做推送:
可以通过指向mac地址对某台或某几台设备进行脚本推送:
推送结果反馈: 推送成功:
Mac地址出错或设备未上线提示的推送失败:
视频讲解:
lua脚本讲解
Gokit跑lua演示
0
收藏
举报
分享
×
微信分享
扫描二维码分享
qq分享
QQ空间分享
微博分享
我来回复
登录后可评论,请
登录
或
注册
所有回答
数量:
0
×
举报
举报人:
被举报人:beam
*
类型:
请选择类型
问题质量差
垃圾广告信息
偏离社区主题
违规内容
不友善内容
与社区已有问题重复
以上选项都不是
*
详细原因:
取消
提交
x
收藏成功!点击
我的收藏
查看收藏的全部帖子