阿里云物联网平台相关知识理解

对规则引擎理解

在创建产品和设备之后,就需要设置规则引擎,让数据在下位机和上位机之间通信。

1. 规则引擎的数据流转

阿里云产品文档链接:https://help.aliyun.com/document_detail/30554.html?spm=5176.11485173.0.0.4f2e59af5ahvfm
该链接的文档主要讲解创建规则引擎时SQL表达式的使用。现在具体分析一些不明点。

先补充个知识点:
阿里云物联网平台相关知识理解_第1张图片
这是demo产品的Topic定义,最好选用发布和订阅一起,如上图的“操作权限”,这样方便。

1,创建一个test规则名称

(*规则名称的长度有限制,支持中文、英文字母、数字、下划线和短划线,长度限制1-30,中文算两位)
根据自己的上位机和下位机的数据转发方式选择json或二进制格式。在此选择json格式。
阿里云物联网平台相关知识理解_第2张图片

2,处理数据

假如从公司自己的服务器后台转发数据。
阿里云物联网平台相关知识理解_第3张图片
SQL的编写规则如下图所示:
阿里云物联网平台相关知识理解_第4张图片
阿里云物联网平台相关知识理解_第5张图片
在上图中,当我们在转发数据编写SQL,只需要填写“字段”以及“Topic”,规则查询语句会自动填充。
1,填写“字段”:自己的服务器后台要给下位机发送的参数变量,对于图中有下位机器件名称,开关控制,温度数据,可以加很多个参数。
2,填写“Topic”:选择自定义表示是自己创建的topic,第二空选择自己的产品,第三个填写服务器后台的设备名 / 数据转发的字符(自定义的)

3,转发数据

阿里云物联网平台相关知识理解_第6张图片
这里选择转发到另一Topic,对于Topic的定义,第三个空格的选择,可以如上图填写,这样没有选择固定的devicename,可以是demo产品里面的除了server01以外的任何设备,这样就不用每一个设备都添加一个转发数据的topic了。

4,转发数据的基本流程

阿里云物联网平台相关知识理解_第7张图片

2. 规则引擎的M2M设备间通信

该方案智能灯和手机App连接与通信的请求都交由物联网平台承担,客户不用关心高并发稳定通信等技术难点,也不需要购买大量服务器去承载这些请求,客户只需要实现自己的业务系统即可,实现自己的业务价值。

1. 用户控制智能灯的流程

阿里云物联网平台相关知识理解_第8张图片
该案例智能灯采用MQTT长连接接入,智能灯申请的ProductKey为pk2,deviceName为light。

2. 操作步骤

1,手机App用户使用自己的server注册登录,用户server将从物联网平台中申请设备,并返回给手机App,让手机App可以作为一个设备连接到物联网平台。
图中是HTTPS接入,申请的deviceName为controlApp。
2,将用户与智能灯绑定,当App请求用户server,server返回绑定成功的deviceName,即图中的light。
3,手机App获取到目标智能灯的deviceName,向物联网平台中的Topic发送指令,图中为Topic:/pk1/controlApp/update。
其中指令中格式是JSON,包含目标智能灯的deviceName,图中例子为:

	{“TargetDevice”:”light”,”control”:”data”,….}   

这行代码为APP发给下位机的命令代码。在下位机可以将其表示为字符串(大括号也包括在内)赋值给指针数组,当接收到的消息为该命令,则下位机让灯亮或者灯灭。
4,在配置中使用规则引擎。

  • 处理数据

     Select TargetDevice,..., From /pk1/+/update
    
  • 转发数据

     Republish Topic:/pk2/${TargetDevice}/get
    

这条规则的含义就是将产品pk1下面所有APP的指令转发产品pk2下面所有智能灯的订阅的Topic中。规则特别注意:

  • 处理数据,SQL语句需要将目标智能灯的deviceName筛选出来。
  • 转发数据,选择发布到另一个Topic中,而且必须使用转义符,通配所有目标智能灯,该例子中转义符${TargetDevice}就转义成了light。
    APP发送的指令可以通过规则动态路由到相应的目标智能灯上。

5,规则引擎,将手机App的指令到/pk2/light/get的Topic,智能灯订阅该Topic就可以接收指令更改状态。

----------------------
第二部分原文链接:https://help.aliyun.com/document_detail/85999.html?spm=a2c4g.11186623.6.828.1e672d4deLur4r

------------------------------------ 未完待续 -------------------------------------------

你可能感兴趣的:(物联网)