收藏官网首页
查看: 8741|回复: 3

[分享] 如何使用机智云ECE雾计算

9

主题

103

帖子

317

积分

中级会员

Rank: 3Rank: 3

积分
317
发表于 2016-12-28 11:41:17 | 显示全部楼层 |阅读模式
汉枫LPB120模块
本帖最后由 Genius 于 2016-12-29 12:19 编辑

ECE概述1. ECE雾计算是什么
雾计算可以理解为设备端的计算,能协助云计算解决部分其无法解决的数据计算需求,比如要求一秒钟采集50次传感器的设备,不可能实时把数据传到云端再进行处理,更适合在设备进行必要的数据计算,向云端传输处理结果,或者模组直接将数据的分析结果转换成对设备的动作等,提高实时性。
机智云ECE雾计算主要对接智能设备用的通信模组和手机,采取编译性语言(C语言)和解析性语言(Lua)相结合的方式,使用解析性脚本,将适配策略在云端进行配置,配置后通过推送的方式发送到模组或手机,设备收到新的配置策略后,立即执行;配置策略分别负责适配传输层协议适配、业务层协议适配、数据的计算方法等。
2. 技术价值
机智云ECE雾计算能降低开发成本,缩短开发周期。
  • 云端配置脚本,动态改变模组行为;
  • 增加不同设备的数据通信自适配的能力;
  • 增加不同设备的协议自动转换能力;
  • 增加设备端的数据计算算法实施与更换以及立即执行的能力。
3必读术语3.1 ECE
ECE是Edge Computing Engine的缩写,意为边缘计算引擎。
3.2 PK
PK是Pruduct Key的缩写,是企业在机智云平台开发者中心创建的某款产品的唯一编号,同一款产品的Product Key都是相同的。
3.3 协议脚本
协议脚本可将产品自定义协议与机智云协议进行相互转换,帮助用户产品轻松接入机智云。
3.4 通信配置
通信配置可设置串口通信的通信参数(波特率等)。
3.5 微应用
微应用可设置数据通信方法(数据包格式、加密方式等),对数据的处理(取最大值、最小值等),以及设备行为参数(采样频率、心跳时间等)。
3.6 LUA脚本
LUA是嵌入式脚本语言,实现可配置性和可扩展性。
使用场景与业务流程1.服务对象
机智云ECE雾计算服务于企业开发者用户,暂不对个人开发者用户开放。
2.通信配置协议转换
设置通信接口的设置参数,比如通信串口号、波特率、数据包格式、校验方式等,通过这些设置,可以让模组与设备正常的收发数据。
2.1场景描述
场景1:波特率转换
我们通过LUA脚本,将原来的设备通讯串口号从com3转换成com4,将波特率从9600转换成38400。
我们使用ECE雾计算服务,在【通信配置】里,将修改好的脚本进行录入(如下图,设备通讯串口号从com3转换成com4,波特率从9600转换成38400),然后点击【推送】,设置好推送地址。
此时,我们可以看到程序启动时(如下图),打开的串口号是COM3,波特率是9600。运行期间会收到云端的推送消息。收到消息后,模组会重启串口,并按照设定的参数,打开COM4,波特率使用38400。
这样,我们的通用模组,只在云端进行简单配置,就可以和各种设备进行数据通讯,双方都不需要再做二次开发。
2.2使用流程
流程说明:
1.通信配置LUA脚本给用户提供范例脚本头部,用户可对脚本进行新增、修改、清空操作,目前脚本只保留最新一版;
2.通信配置可以动态更改通信参数;
3.上传:脚本编写好,暂不进行推送,可将脚本上传云端保存;若用户不对脚本推送或上传,辑的脚本将不被保存;
4.通信配置只能对模组进行推送,可指定MAC地址或同PK所有MAC地址推送。点击推送后脚本将上传到云端保存;
3.微应用升级
微应用升级指的是对设备获取的数据或者设备自身行为的设置。可以设置对数据的后期处理,比如对温度值的最大值、最小值、平均值的处理,也可以设置设备的行为处理,比如设置设备对温度的采集频率等。
3.1场景描述
场景1:业务层协议转换
把设备采集的原始二进制数据转换成json字符串,然后再上报云端。
我们使用ECE雾计算服务,在【微应用】里,录入协议转换脚本(如下图),然后点击【推送】,设置好推送地址。
可以看到程序一开始输出的是原始二进制数据(如下图),收到云端下发的排序指令后,模组输出的就是格式化的json串。
这样,设备的私有协议都可以不用更改,我们在云端配置解析方法后,就可以做自动的适配和解析。
场景2:新增一个设备行为
当温度超过70度后,点亮红灯报警。
我们使用ECE雾计算服务,在【微应用】里,录入关联动作脚本(如下图),然后点击【推送】,设置好推送地址。
从日志中(如下图),可以看到模组已经收到脚本。
此时,我们使用热风**加热传感器(如下图),可以看到超过70度后,设备亮起了红灯。
这样,设备更多的功能,可以在后期方便的增加或者更改,而不用升级整个固件。
场景3:高级数据运算
让设备进行比较高效复杂的数据运算,并把运算结果转换为json后上传云端。假设设备默认5秒一次温度采样频率,为了得到更多的采样点,我们设定设备新的采样频率为100毫秒采集一次温度值,5秒后,用采集的数据计算出平均值、最大值、最小值和方差,然后上报云端。
同样是5秒上报一次,但是后者更具数据价值。
我们使用ECE雾计算服务,在【微应用】里,录入设备行为设定以及数据分析(如下图),然后点击【推送】,设置好推送地址。
可以看到设备一开始5秒一次采集温度(如下图),并上传,收到云端的配置脚本后,设备改为100毫秒采集一次温度,然后计算出结果,上报云端。
这样,就可以做到云和雾的计算平衡,雾端可以做更多的实时数据处理,实现最大的数据价值。
3.2微应用模组推送流程
流程说明:
1.微应用LUA脚本给用户提供范例脚本头部,用户可对脚本进行新增、修改、清空操作,目前脚本只保留最新一版;
2.微应用可用于业务层协议的自动适配和解析、添加或修改设备行为、让设备进行比较高效复杂的数据运算;
3.上传:脚本编写好,暂不进行推送,可将脚本上传云端保存;若用户不对脚本推送或上传,编辑的脚本将不被保存;
4.微应用可对模组或者手机进行推送:
  • 若对模组推送可指定MAC地址或同PK所有MAC地址推送;
  • 点击推送后脚本将上传到云端保存;
3.3微应用手机推送流程
流程说明:
1.同【2.3.2微应用模组推送流程说明】1、2、3;
2.微应用可对模组或者手机进行推送:
  • 有设备上,也可以只应用到这个Product_Key下被当前手机用户绑定过的设备上;
  • 选择对手机推送,用户则不需选择推送范围,也不需要填写MAC地址;
  • 点击推送后脚本将上传到云端保存;
业务规范1脚本名称
该名称为用户自定义输入,为必填项,否则无法实现推送。用户可删除或修改文案,目前版本只支持保存最新操作。支持字符输入字母A-Z、a-z、下划线、数字0-9,首字母不能为数字,字符最大输入量为64字节。此功能有两个用处:
  • 用户对本次脚本录入作备注,再次进入ECE服务时,能通过自定义文案知道当前操作内容;
  • 脚本推送时,作为推送的文件名;
2 MAC地址
MAC地址输入至少一个,输入限制50个内;输入多个MAC采用“回车”换行形式,地址多于输入框显示范围,输入框出现拉条,用户可点击并上下拖动到查看每一行。推送后将保存用户的填写信息。
MAC地址输入功能包括复制、粘贴、删除。
MAC支持输入任何符号、数字0-9、大写A-Z、小写a-z,限制12个字符或以内,地址输入操作如图:
LUA脚本规格说明
选择协议脚本后,会自动生成LUA脚本规范头部,用户不可对头部内容进行修改,用户在”–to do”下方完成内容编辑。
1 通信配置脚本头部
头部规范如下:
[size=1.33333em]----------luaComInit----------
--to do

----------luaComInit end----------
功能:设置串口通信的通信参数(波特率等)。
2微应用脚本头部
分为不同的微应用模块,每个微应用模块有不同的头部规范,应该在”–to do”下方位置添加相应的模块实现。目前支持以下的微应用模块:
2.1 Lua环境设置
头部规范如下
[size=1.33333em]----------luaInit----------
--to do

----------luaInit end----------
功能:初始化设置lua环境,比如应用内存大小。
2.2公共基础函数
头部规范如下:
[size=1.33333em]----------luaUtils----------
--to do

----------luaUtils end----------

功能:开发者自己实现的公共基础函数,可以被其它微应用模块所调用。
如果仅是一个微应用模块单独会使用的函数,不要放在该模块,放到相应微应用模块中。否则可能会导致其它微应用模块运行时占用内存过大而失败。
2.3 APP下发数据处理
头部规范如下:
[size=1.33333em]----------luaHandleDataFromApp----------
  --to do

  ----------luaHandleDataFromApp end------

功能:处理APP端下发的业务数据。
2.4 设备端数据处理
头部规范如下:
[size=1.33333em]----------luaHandleDataFromDev----------
--to do

----------luaHandleDataFromDev end------

功能:处理设备端发送的业务数据。
常见问题1 ECE服务支持哪些通信方式的产品?
目前支持Wi-Fi类、蓝牙类、GPRS类产品。
2 能看到历史推送记录吗?
目前不支持查看历史推送记录,每次脚本上传或脚本推送都只保存当前最新脚本,日后会开放此功能。
3 LUA脚本头部规范内容可自定义吗?
目前并不支持更改,脚本头部规范内容具有脚本类型识别作用。
4 MAC地址输入错误了怎么办?
用户点击推送后,云端会对MAC地址进行校验,假若MAC地址输入错误,会有弹框提醒用户。用户只需返回推送设置界面,系统会用户红色字体标出错误MAC,用户可删除或重新填写。
5 模组或手机接收成功会收到反馈吗?
目前版本暂不支持模组或手机是否成功接收,只给用户反馈是否推送成功。
6 支持脚本文件上传吗?
此版本暂不支持脚本文件上传,日后会开放此功能。

1

主题

220

帖子

1198

积分

金牌会员

Rank: 6Rank: 6

积分
1198
发表于 2016-12-28 16:19:11 | 显示全部楼层
抢沙发,感谢楼主分享

0

主题

4

帖子

66

积分

注册会员

Rank: 2

积分
66
发表于 2017-1-3 09:38:57 | 显示全部楼层
能配套一个视频讲讲吗?有点云里雾里。哈哈。

0

主题

4

帖子

66

积分

注册会员

Rank: 2

积分
66
发表于 2017-1-3 09:39:13 | 显示全部楼层
能配套一个视频讲讲吗?有点云里雾里。哈哈。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

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