System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种串口设备异常波形检测的方法及系统技术方案_技高网

一种串口设备异常波形检测的方法及系统技术方案

技术编号:40991630 阅读:3 留言:0更新日期:2024-04-18 21:33
本发明专利技术公开了一种串口设备异常波形检测的方法及系统,包括:根据串口设备配备的波特率计算出每一位数据的时间t1;检测到某字节的起始位以后,开始检测波形;依次记录该字节所有高电平的时间t2[i]和所述时间内高电平检测数据位的个数q2[i];计算每一个高电平数据位的时间t3;依次记录该字节所有低电平的时间t4[i]和所述时间内低电平检测数据位的个数q4[i];计算每一个低电平数据位的时间t5;基于得到的时间t5、t3和时间t1,判断所检测数据波形是否存在波特率偏差或波形偏移。本发明专利技术方法能够实现对串口设备波形的正确解析,并输出正确的波形。

【技术实现步骤摘要】

本专利技术涉及串口异常波形检测,尤其涉及一种串口设备异常波形检测的方法及系统


技术介绍

1、本部分的陈述仅仅是提供了与本专利技术相关的
技术介绍
信息,不必然构成在先技术。

2、现有的串口设备在进行采样时,大多只采集每一位数据中间位置的1个点或者3个点,但是采集的位置无法更改,这种方案对一般的串口波形都能做到正常解析,但对一些异常波形,例如波形存在波特率偏差、相位偏差、噪声等问题,则可能无法采集到正确的数据。

3、现有技术虽然也公开了串口波形纠正方法,但是其需要获取每一个字节的所有采样点的值,然后从整体上判断波形是否发生了异常,进而对波形进行纠正;在这种方法虽然能够实现对异常波形的准确采集,但是数据采集量较大,进行波形纠正时的计算方法也较为复杂,影响了串口设备的采样效率。


技术实现思路

1、为了解决上述问题,本专利技术提出了一种串口设备异常波形检测的方法及系统,能够实现对异常波形的正确解析和输出。

2、在一些实施方式中,采用如下技术方案:

3、一种串口设备异常波形检测的方法,包括:

4、根据串口设备配备的波特率计算出每一位数据的时间t1;

5、检测到某字节的起始位以后,开始检测波形;

6、依次记录该字节所有高电平的时间t2[i]和所述时间内高电平检测数据位的个数q2[i];i=0,1,2,…,n;基于时间t2[i]和个数q2[i],计算每一个高电平数据位的时间t3;

7、依次记录该字节所有低电平的时间t4[i]和所述时间内低电平检测数据位的个数q4[i];i=0,1,2,…,n;基于时间t4[i]和个数q4[i],计算每一个低电平数据位的时间t5;

8、基于得到的时间t5、t3和时间t1,判断所检测数据波形是否存在波特率偏差或波形偏移。

9、若所检测数据存在波特率偏大或偏小,则调整串口设备的采样时间为m*t1,采样位置为m*t1时刻的中心位置。

10、若判断存在波形左偏移或右偏移,则保持采样时间为t1,采样点个数调整为设定数量k,将采集到的值存放到数组sample[k]中,遍历数组sample[k],统计数组中每个点的值,即0或1,当某一个值的数量超过采样数量的设定比例时,认为该值为该位的实际数据。

11、在另一些实施方式中,采用如下技术方案:

12、一种串口设备异常波形检测的系统,包括:

13、位数据时间计算模块,用于根据串口设备配备的波特率计算出每一位数据的时间t1;

14、波形检测模块,用于检测到某字节的起始位以后,开始检测波形;依次记录该字节所有高电平的时间t2[i]和所述时间内高电平检测数据位的个数q2[i];i=0,1,2,…,n;基于时间t2[i]和个数q2[i],计算每一个高电平数据位的时间t3;依次记录该字节所有低电平的时间t4[i]和所述时间内低电平检测数据位的个数q4[i];i=0,1,2,…,n;基于时间t4[i]和个数q4[i],计算每一个低电平数据位的时间t5;

15、波形判断模块,基于得到的时间t5、t3和时间t1,判断所检测数据波形是否存在波特率偏差或波形偏移。

16、与现有技术相比,本专利技术的有益效果是:

17、(1)本专利技术方法能够准确判断出异常波形的类型,并能够根据具体的异常波形类型实现对串口设备异常波形的准确采样;能够实现对串口设备波形的正确解析,并输出正确的波形。

18、(2)本专利技术通过每一个高电平数据位的时间t3、每一个低电平数据位的时间t5以及基于波特率计算出的每一位数据的时间t1,准确判断波形异常的类型,并且针对不同类型的波形分别制定了波形纠正的措施,算法简单有效,无需对每一个字节的所有采样点的值都进行采集,提高了波形采样的效率,同时保证了对异常波形采样的准确率。

19、本专利技术的其他特征和附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本方面的实践了解到。

本文档来自技高网...

【技术保护点】

1.一种串口设备异常波形检测的方法,其特征在于,包括:

2.如权利要求1所述的一种串口设备异常波形检测的方法,其特征在于,当波形由低电平变为高电平时,开始计时,电平再次变化时,停止计时,记为时间t2[0],记录此时间内高电平检测bit的个数q2[0];按此方法得到该字节所有高电平的时间t2[i]和所述时间内高电平检测数据位的个数q2[i]。

3.如权利要求1所述的一种串口设备异常波形检测的方法,其特征在于,当波形由高电平变为低电平时,开始计时,电平再次变化时,停止计时,记为时间t4[0],记录此时间内低电平检测bit的个数q4[0];按此方法得到该字节所有低电平的时间t4[i]和所述时间内低电平检测数据位的个数q4[i]。

4.如权利要求1所述的一种串口设备异常波形检测的方法,其特征在于,基于时间t2[i]和个数q2[i],计算每一个高电平数据位的时间t3,具体为:

5.如权利要求1所述的一种串口设备异常波形检测的方法,其特征在于,基于时间t4[i]和个数q4[i],计算每一个低电平数据位的时间t5,具体为:

6.如权利要求1所述的一种串口设备异常波形检测的方法,其特征在于,基于得到的时间t5、t3和时间t1,判断所检测数据波形是否存在波特率偏差或波形偏移,具体为:

7.如权利要求1或6所述的一种串口设备异常波形检测的方法,其特征在于,还包括:若所检测数据存在波特率偏大或偏小,则调整串口设备的采样时间为m*t1,采样位置为m*t1时刻的中心位置。

8.如权利要求1所述的一种串口设备异常波形检测的方法,其特征在于,基于得到的时间t5、t3和时间t1,判断所检测数据波形是否存在波特率偏差或波形偏移,具体为:

9.如权利要求1或8所述的一种串口设备异常波形检测的方法,其特征在于,若判断存在波形左偏移或右偏移,则保持采样时间为t1,采样点个数调整为设定数量K,将采集到的值存放到数组sample[K]中,遍历数组sample[K],统计数组中每个点的值,即0或1,当某一个值的数量超过采样数量的设定比例时,认为该值为该位的实际数据。

10.一种串口设备异常波形检测的系统,其特征在于,包括:

...

【技术特征摘要】

1.一种串口设备异常波形检测的方法,其特征在于,包括:

2.如权利要求1所述的一种串口设备异常波形检测的方法,其特征在于,当波形由低电平变为高电平时,开始计时,电平再次变化时,停止计时,记为时间t2[0],记录此时间内高电平检测bit的个数q2[0];按此方法得到该字节所有高电平的时间t2[i]和所述时间内高电平检测数据位的个数q2[i]。

3.如权利要求1所述的一种串口设备异常波形检测的方法,其特征在于,当波形由高电平变为低电平时,开始计时,电平再次变化时,停止计时,记为时间t4[0],记录此时间内低电平检测bit的个数q4[0];按此方法得到该字节所有低电平的时间t4[i]和所述时间内低电平检测数据位的个数q4[i]。

4.如权利要求1所述的一种串口设备异常波形检测的方法,其特征在于,基于时间t2[i]和个数q2[i],计算每一个高电平数据位的时间t3,具体为:

5.如权利要求1所述的一种串口设备异常波形检测的方法,其特征在于,基于时间t4[i]和个数q4[i],计算每一个低电平数据位的时间t...

【专利技术属性】
技术研发人员:周忠华曹永龙郭宝雪古欣
申请(专利权)人:山东有人物联网股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1