APP下载

基于Zigbee的串口通信数据流循环冗余校验方法

2021-11-18赵丽艳罗晓媛

计算机仿真 2021年1期
关键词:数据流校验串口

刘 君,赵丽艳,罗晓媛,邹 栋

(1. 黑河学院理学院,黑龙江 黑河 164300;2. 哈尔滨理工大学,黑龙江 哈尔滨 150000)

1 引言

信息化时代背景下,目前的教育将现代信息技术与传统教学模式融合,在学本理念下建立翻转课堂信息化教学模式,因此翻转课堂信息化教学平台随之出现。教学平台中包含教务信息、教学信息、学生档案等多样化教学数据,因此使用教学平台时,其数据分类效果备受重视。传统方法根据文献[1]以及文献[2]的研究内容,基于LINUX系统解析平台串口数据流,通过设计总线控制器CRC校验码,对教学资源进行类别检验[1-2]。但通过多次实验测试分析可知,该校验方法虽然利用了循环冗余校验法进行数据识别,但平台在分类教学资源时,还是存在信息显示错误提示。

因此,提出基于Zigbee的串口通信数据流循环冗余校验方法。Zigbee是一项低复杂度、低速率、低功耗的双向无线通讯技术,对于数据采集、识别以及分析,具有极强的辅助效果,能够帮助循环冗余校验法,识别与分析串口通信数据流。此次研究以传统方法为前提,以该技术为创新突破口,设计全新的校验方法,为翻转课堂信息化教学平台的智能化分类,提供更强大的校验技术。

2 串口通信数据流循环冗余校验方法

2.1 设计循环冗余校验码

循环冗余校验码作为特殊线性代码,可应用于翻转课堂的信息化教学管理模式中,为教学平台的通信数据流的智能分析,提供更加精准的教学数据。因此在该校验方法的初始阶段,预先编译循环冗余校验码。循环冗余检验码简称为CRC,该校验码有缩短型的结构特征,利用该校验码检测串口通信数据,可以检测出其中的错误信息流。CRC码的基本结构,如下图1所示。

图1 循环冗余校验码基本结构

根据图中标注可知,f(x)的m个系数,与m个信息位之间一一对应;h(x)的n-m个系数,与n-m个校验位之间相对应[3]。从信道编码角度来看,整个s位帧就是一个码字,因此将n-m校验位部分称作CRC码。其中f(x)为(m-1)次多项式,h(x)为(n-m-1)次多项式,则W(X)为(m-1)次多项式,g(x)为(n-m)次多项式。因此该循环码在发送端,存在公式

W(X)=xn-mf(x)+h(x)

(1)

W(X)=H(x)=xn-mf(x)+h(x)=k(x)g(x)

(2)

此时的接收码H(x),可以被生成多项式g(x)整除。如果接收码不能被整除,则说明学本理念下,翻转课堂信息化教学平台的串口通信数据,在传输过程中出现了误码[4]。此时循环冗余校验码的“循环”特征,表现在循环码生成多项式g(x)上,校验位的长度为n-m,是“冗余”的体现。因为该代码为循环码,因此存在

g(x)v(x)=x2+1

(3)

此时的n-m为n的因子。若n-m固定,则参数n也固定。但在实际校验中,帧长n是可以连续变化的,因此将循环码(n0,m0)缩短任意a位,得到CRC码为

(n0-a,m0-a)=(n,m)

(4)

缩短后的CRC码依然存在内在特性,通过循环码分析和控制,可以实现对串口通信数据流的校验工作[5]。

2.2 基于Zigbee规划串口通信数据识别方式

在设计循环冗余校验码的同时,基于Zigbee规划串口通信数据识别方式。已知Zigbee基本功能,是建立在数据传输基础上的,因此说明传输海量的教育资料时,离不开Zigbee获取串口通信数据流。因此利用Zigbee协议规定通信网络的四类地址模式:

typedef enum

{

afAddrNotPresent=AddrNotPresent,∥绑定

afAddr16Bit=Addrl6Bit,∥短地址

afAddrGroup=AddrGroup,∥组发

afAddrBroadcast=AddrBroadcast,∥广播发送

}afAddrMode_t;

此次规划要求Zigbee为校验方法,提供四种不同的数据发送方式,分别为单点传送、间接传送、广播传送以及组寻址[6]。除此之外,目前的通信网络中,存在一个64位的物理地址,该地址代码为IEEE也可以发送待校验数据流。因为各个节点的网络地址,随着翻转课堂教学地点的变化,同样具有动态特征,因此点对点传输通信数据进行校验时不够稳定,所以采用IEEE地址传输点对点的通信信息,令每一个节点都有一个固定的IEEE地址,通过该地址读取每个节点的通信数据流,然后将每个节点的通信数据,存储到管理数据库中,并对节点进行编号,GPRS模块根据IEEE地址,将通信数据流转发给Zigbee协调器,然后通过已知函数ZDP_NwkAddrReq,将校验指令发送给对应的节点。图2为规划数据识别方式时,IEEE地址基本通信流程。

图2 基于Zigbee的数据传输流程

根据图2所示的基本流程,在网络中定义相应的组,并在所有组中,定义每一个节点的协议,最后在端口中数据加入组名为Group1的组,用AF_DataRequest函数传送教学平台中的翻转课堂信息。然后利用设计的循环冗余校验码,检测通信数据[7]。

2.3 设置循环冗余校验法管理逻辑

完成上述设计与规划后,利用循环冗余校验法管理通信数据,利用除法及余数的原理,识别翻转课堂信息化教学平台的错误传输。该方法将整个数据块f(x)看作一个系数为0,或者系数为1的连续二进制数据多项式,发送时用g(x)除以f(x),相除结果的余数,就是第一节设计的循环冗余校验码,然后将设计的校验码,附在Zigbee上发送[8]。用同一个生成多项式g(x),对传送进来的二进制数据做除法,然后接收数据,当结果为整数时,说明传输正确;当结果存在小数时,说明此时的信息传输错误,要求发送端口重新发送信息。循环冗余校验法的校验逻辑,如下图3所示。

图3 循环冗余校验法校验逻辑

此时的循环冗余校验码,处于一个循环计算检测的过程,要计算f位数据块f(x)的CRC码时,要求多项式g(x)必须短于f(x),同时要求多项式g(x)的高位和低位,均为1。假设新的g(x)阶数为b,附加b个0至数据块f(x)尾端,则该数据块的位数为f+b,相应的多项式为xbf(x)。去除g(x)中对应于xbf(x)的位串,并从xbf(x)对应的位串中,减去总是小于等于1的数据,得到的结果就是多项式F(x),也就是循环冗余校验码的数据块[9]。通过上述方法,管理Zigbee数据传输中的错误信息,实现对错误传输的校验管理。

2.4 并行控制模式实现循环冗余校验

(5)

用Y(0)表示寄存器的初始运行状态;Y′(0)表示寄存器的一般运行状态;用⊕表示相与以后的异或运算;用⊗表示异或运算[10-12]。则存在公式:

Y′(0)=U⊕Y(0)⊗R

(6)

递归得到:

Y′=Uc⊕Y⊗R

(7)

上述公式中:Uc表示翻转课堂信息化教学平台中,电路的使能控制矩阵,该矩阵的计算公式为:

(8)

将式(8)带入式(7)中,得到使能控制矩阵的最终计算结果。对于生成多项式g(x)的固定电路,使能控制矩阵Uc固定,使能为“1”时与门导通;当使能为“0”时与门截止。因此可通过连接和断开操控,代替与门阵列,降低并行控制模式的操控难度。利用并行控制模式,控制循环冗余校验法的检测管理程序,为学本视角下的翻转课堂信息化教学平台管理,提供更加可靠的检测技术,保证基本教学信息传输的及时性、针对性以及可靠性,为翻转课堂提供更精准的教学信息。至此在Zigbee的辅助下,完成对串口通信数据流的循环冗余校验。

3 实验测试与分析

为了验证此次研究校验方法的可靠性,提出对比测试,将基于Zigbee的校验方法,作为实验组测试对象;将传统设计下的循环冗余校验法,作为对照组测试对象,比较二者之间的校验差异。为了保证学本理念下,翻转课堂信息化教学平台稳定运行,将翻转课堂信息化教学平台作为研究对象,利用不同的方法,对其教学数据进行识别与智能分类,从两个角度分析方法之间的差异性。因此建立一个实验测试环境,安装各项数据检测软件,试运行翻转课堂教学平台,在平台应用的过程中,对其串口通信数据流进行校验。

3.1 通信数据流信号识别效果

依据搭建的实验平台,两个测试组在校验开始之前,分别利用不同的技术,识别翻转课堂信息化教学平台中,多样化的通信数据流信号,结果如下图4所示。

图4 通信数据流信号识别效果对比测试

同样利用此次实验准备的MATLAB工具,对上图中的两组识别结果进行数据处理,得到如图4所示的测试结果。根据相似度评估函数,对两个测试组的数据识别效果进行评价。已知教学平台中的数据类型各不相同,因此平台串口的通信数据信号,经过处理后会形成不规则波形。同时测试环境本身也会给实验结果带来干扰,且识别波形往往存在时序上的差别,因此根据相关性,判别两个测试组的信号波形,与真实信号之间的相似度。实验假设真实信号与识别信号,分别为x(t)和y(t),利用误差能量度量波形之间的相似度,该误差能量的表示为

(9)

式中:γ表示令γ·y(t)接近x(t)的倍数值。同时要求选择参数γ时,要保证能使能量的误差最小,因此对上述公式进行求导,得出

(10)

当满足上述条件时,可知误差能量为最小值。因此将真实信号与识别信号之间的相关系数,定义为θxy,由此可以得到相关系数的值为

(11)

计算结果θxy,就可以用来描述真实信号与识别信号之间的波形相似度。而实验测试过程中,真实信号与识别信号之间会产生一个时间差ΔT,因此通过相乘和积分得到ΔT时间内,两个信号的相关系数,该系数的模小于1。当相似系数为0时,说明校验方法在识别数据的过程中,得到的结果最差;当相似系数为1时,则说明误差能量为0,此时说明校验方法对教学数据的识别效果最好。下表1中的数据,就是10次测试下,两个测试组的教学平台信号识别效果。

表1 信号波形相似性测试结果

根据表1可知,不同组别的信号波形相似性不同。对于第2组实验来说,实验组信号波形的相关系数为0.9346,对照组信号波形的相关系数为0.8585,其相似性差异为0.0761。综合表1中的10次测试结果可知,此次研究方法在识别教学数据时,其信号波形与真实信号波形之间,有更高的相似系数,其相似系数值更接近1。可见与对照组相比,有更好的数据识别效果。

3.2 翻转课堂信息化教学平台分类效果仿真测试

实验的第二测试阶段,将两组校验方法,分别载入到相同的翻转课堂信息化教学平台之中,比较不同循环冗余校验方法应用下,教学平台对教学信息的分类效果。仿真测试结果如下图5所示。

图5 平台分类效果对比测试

根据图5中的测试结果可知,实验组利用Zigbee的校验方法,将两类内容近似的教学信息完全分离。而对照组同样利用了循环冗余校验方法,但由于缺少Zigbee技术的辅助,部分A类教学信息与B类教学信息没能完全分离,导致其分类效果达不到预期。最终可能影响翻转课堂的信息化教学模式。可见Zigbee技术对于循环冗余校验方法,有更好的优化效果。

4 结束语

此次研究在传统循环冗余校验方法的基础上,融合Zigbee技术,加强对海量教学信息的精准识别,为平台分类不同类型的教学资源,提供更加智能化的分类手段。通过实验得出以下结论:

1)设计方法的信号波形的相关系数为0.9349,相似系数更接近1,说明设计方法的误差更小,识别准确率高。

2)设计方法能够将两类内容近似的教学信息完全分离,平台分类效果较好。

但此次研究受个人经验影响,还存在一些不足之处,今后的研究与分析工作中,可以设置一套并行控制算法,直接控制循环冗余校验的工作流程,进一步提高方法的校验效率,为各项平台的串口通信数据流分类,提供更加完善的技术支持。

猜你喜欢

数据流校验串口
优先级驱动的泛化航电网络实时性能分析
复杂多耦合仿真模型校验工具研究
使用Excel朗读功能校验工作表中的数据
电能表在线不停电校验技术
汽车维修数据流基础(上)
汽车维修数据流基础(下)
数据流安全查询技术综述
精通文件校验的“门道”
MCS—51单片机中的多串口通讯技术的应用
全国计算机等级考试机房准备工作探讨