探讨AI人工智能设备统一数据链规约格式

目前很多自动驾驶汽车, 交通红绿灯, 智能家居电器设备之间, 都是不能相互通信的, 这对未来人工智能带来不方便,

人工智能中各设备制定全国性统一数据链非常重要.

因此, 我思考着: 汽车/ 手机app/ 冰箱/ 电视/ 风扇/ 洗衣机/ 空调/ 扫地机器人/ 热水器/ 防盗门/ 等设备之间应当要能相互通信,肯定采用了相同的数据规约格式, 但是又能体现不同的特点.

比如基本需求:

1, 我们下班了, 用手机app告诉热水器要预先热水, 房间的空调要提前开启.

2, 但是途中收到领导电话要加班, 这时又要告诉热水器关闭, 空调关闭, 以节能省电

3, 空调与热水器收到指令后, 回复并告诉控制app, 并显示当前状态.

4, 数据加密与解密, 整个过程中采用ASE或者其它方式加密.

 

对通用数据链规约要求如下:

1, 1对1命令/响应/上报/读写等等

2, 1对n广播命令

3, 1对n指定规约分类的局部广播命令

4, 同一命令接者应可以多个,有个批量大小.

5, 报文中有设备分类码,

6,报文中有作设备唯一标识码

7,设备同时可以并发进行多流程会话

 

根据上述要求, 制定一个通用数据链规约标准框架格式:

规约标志:2B,  FB88,指总规约标志.
会话流水:10B, 会话发起者生成19位唯一流水,同一次会话中请求/响应等不同流程由此号串联起来.
报文控制:1B,  1-2位表示1请求 /2响应 /3主动上报, 3位读/写, 4位是否有后续帧, 5位是否要回复,6位流程是否结束,其它备用
报文长度:2B,  最长65535字节.
规约分类:2B, 规约分类(65535种), 汽车/ 手机app/ 冰箱/ 电视/ 风扇/ 洗衣机/ 空调/ 扫地机器人等, 0为公共分类.
功能编号:2B, 表示功能(65535种), 每种规约分类单独的功能号.
发送地址:4B, 如:192.168.0.1

接收个数:1B, 不用广播方式时, 发给指定单位, 最多一次发给255个(比如座标同时发给指定的 255个空调)
接收地址:N, 127.0.0.1表示广播, 或者地址数集合:192.168.0.1,192.168.0.2等等
信息体个数:1B,一次最多共255个,如果内容很大,可以配合报文长度与后续帧状态标志来分批发送
信息体内容:N, 根据功能确定格式(如: 空调温度),可以无内容
校验:2B
结束:2B,FE88

这样一来, 使用中,所有类型的设备, 都可以接收各种设置, 又可以共享信息.

注: 本人做过电表规约, 了解网上公开的国标通信规约标准.

以下是列子:

写入目标温度:

  • 功能说明 

规约分类

功能编号

功能名称

说明:

90

1

设置目标温度数据

设备接收命令调节设置温度, 此表为10进制数, 91表示[手机]

  • 报文结构

规约结构

长度

例子值

说明:

规约标志

2B

FB88

 

会话流水

10B

00000000000000000001

会话发起者生成19位唯一流水, 同一会话编号相同,回复时原样返回

报文控制

1B

60

请求,写入,无后续帧, 需要回复, 流程未结束

报文长度

2B

0031

指整个报文的长度,包括开始与结束: 49

规约分类

2B

005B

十进制值为:91 手机

功能编号

2B

0001

功能号为:1

发送地址

4B

C0A80001

地址为:192.168.0.1

接收个数

1B

02

接收者地址数: 2个

接收地址

N

C0A80002C0A80003

接收者地址: 192.168.0.2, 192.168.0.3

信息体个数

1B

03

3个

信息体内容

N

000000FF000000FF000000FF

每个值用4字节表示浮点数: 最高温度, 最低温度, 设置温度, 共12字节

校验码

2B

00

结束标志

2B

FE88

 

最终发送的报文:

FB8800000000000000000001600031005B0001C0A8000102C0A80002C0A8000303000000FF000000FF000000FF00FE88

APP发送之后, 空调地址为 192.168.0.2, 192.168.0.3两个空调就会收到 设置温度, 然后启动空调.

从报文件中可以看到: 发送者对象是 [手机], 接收者只知道地址为 192.168.0.2, 192.168.0.3 的两个设备

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章