多路信号采集测量快速响应方法研究

2022-02-15 10:07王宏业武文超陈建杞何佳谦李成钿
化工自动化及仪表 2022年1期
关键词:采集卡线程流量

王宏业 陆 星 武文超 王 雷 陈建杞 何佳谦 李成钿

(中国核动力研究设计院)

响应时间是数字化控制系统的关键性能指标,反应堆某些重要工艺设备在执行联锁功能时,工艺方面对系统响应动作的速度有较高要求。 因此,单从仪控角度来讲,尽可能缩短控制回路在整个联锁过程中的耗时是亟需解决的关键问题。 接收并处理现场一次仪表信号,对反应堆工况进行状态监测、超阈值判断及逻辑符合运算等,最后输出相关动作指令至电气系统以控制相应设备,将这个过程需要的时间定义为该控制回路的响应时间[1,2]。 一般情况下,控制回路对单路信号输入输出的响应时间较短;而对于多路信号采集,往往由于数据处理和函数运算更为复杂,导致响应时间较长。

现有主流技术主要是通过提高硬件指标或改善软件策略两种方法实现多路信号的快速响应,但对于已知确定的系统而言,从硬件上改进可行性不大,而且会增加成本。因此,笔者在自主搭建的控制回路试验装置上,以高温高压工况需进行温压补偿的流量测量为例展开研究[3,4],改进软件算法策略,以实现多路信号采集测量的快速响应。

1 常规方法测试分析

1.1 响应时间测试原理

响应时间测试原理如图1所示,控制回路初始状态处于输入、输出状态均无变化的稳态,当输入信号发生阶跃变化时(记为T0),该输入经控制回路各单元处理后的输出信号也发生相应的变化(记为T1),该系统的响应时间ΔT=T1-T0[5]。 因此,测试该控制回路响应时间的关键在于记录输出变化时刻T1和引起该输出变化的输入变化时刻T0。

图1 响应时间测试原理

1.2 试验装置搭建及软硬件分析

高温高压工况下, 必须考虑温度和压力对流体密度的影响,并进行修正与补偿,即为获得流量真值,需将相关多路模拟信号同时输入控制回路进行处理,直至输出触点信号,此为响应时间的测试范围,如图2所示,其中T01~T03分别为模拟信号输入1~3发生变化的时刻。

图2 响应时间测试范围示意图

以示波器CH1通道接收3路输入信号均发生阶跃跳变的最大时刻作为响应时间的起点时刻T0, 以示波器CH2通道接收触点输出电平发生跳变的时刻作为响应时间的终点时刻T1, 由1.1节知,T1与T0的差值ΔT即为该控制回路的响应时间。

1.2.1 硬件构成分析

根据响应时间的测试范围,自主搭建控制回路数据采集处理单元进行响应时间测试,结构如图3所示, 数据采集处理单元硬件部分主要由中央处理器、采集模块、输出模块、储存模块、显示模块、通信模块、键盘模块及网络模块等构成。 多路模拟信号同时输入时,首先通过模拟信号采集模块将模拟信号转换为数字量,进入中央处理器按照设定的数学模型进行实时运算和补偿,得到实际测量值,同时进行逻辑符合、阈值比较、时钟记忆、实时通信及数据存储等其他线程,最后通过输出模块传至其他设备。

图3 数据采集处理单元硬件结构框图

经分析,采集模块的扫描速率为125 ms;中央处理器运算周期不足1 ms;其他模块(如储存、显示、外部通信及网络等)在本次试验中未涉及,占用时间几乎可忽略。 因此,从硬件构成来看,响应时间的瓶颈在于采集模块,主要受硬件本身限制。

1.2.2 软件算法分析

对于试验装置的算法策略,多路信号采集测量为主线程,主要包括信号采集和数据处理。

1.2.2.1 信号采集算法策略

数据采集处理单元的模拟信号采集模块内设2块相互独立的A/D采集卡, 每块采集卡支持8通道输入,通道间相互独立,采样周期125 ms,轮询方式采集。 其中单个A/D采集卡的采样算法流程如图4所示。

图4 单个A/D采集卡的采样算法流程

首先对第1通道信号进行采样,经分压、滤波及放大等数据处理后,由采集电路完成模拟信号与数字信号的转换, 经卡件内部处理器处理后,以轮询方式切换至对下一通道信号的处理。

1.2.2.2 数据处理算法策略

A/D采集卡对输入信号采集完成后, 由中央处理器(CPU)控制获取数据并进行处理。 CPU采用分时处理技术, 即把CPU的运行时间分成很短的时间片,按时间片把CPU分配给各个线程(如数据获取、复杂函数运算、时钟记忆、通信显示、存储及数据输出等), 当某个线程在为其分配的时间片内不能完成时,则该线程暂时中断,其他线程以调度轮转的方式被处理。 CPU调度执行算法流程如图5所示。

图5 CPU调度执行算法流程

对于采集卡数据获取线程, 首先读取1#采集卡数据, 按照设定的数学模型进行实时运算,并进行阈值比较、逻辑控制等,最后执行输出后,以轮询方式切换至对2#采集卡数据的获取与处理。

1.3 常规方法测试结果

利用自主搭建的试验装置,模拟高温高压工况下流量信号测量环境,对流量信号的响应时间进行多次测量,得到的测试结果如图6、7所示。

图6 流量信号响应时间随机测试结果

从图7可以看出,3路信号同时输入控制回路时,流量信号的响应时间存在不确定性,且波动范围较大,最小响应时间113.9 ms,最大响应时间323.8 ms,平均响应时间223.5 ms。

图7 流量信号重复性测试统计结果

2 改进方法测试分析

为提高多路信号采集测量的响应时间,对1.2节搭建的测试装置软件算法策略进行详细分析,并提出改进方法。

2.1 响应时间组成分析

由1.2.2节分析可知, 对于多路模拟信号输入、单路开关量输出情况,数据采集处理单元的响应时间t主要分为两部分(图8):输入信号处理和通信时间(信号采集算法),记为t1;应用程序在CPU中执行时间(数据处理算法),记为t2;则有t=t1+t2[6]。

图8 响应时间各部分组成示意图

输入信号处理和通信时间t1包括A/D采集卡的处理时间(输入滤波、放大、采样时间)和I/O总线通信时间, 采集卡的处理时间由生产厂家决定,I/O总线通信采用循环扫描方式, 其扫描时间取决于采集模块的数量和单模块的处理时间。 在评价总线通信的最大响应时间时,需考虑某个通道刚好错过1个轮询扫描周期的情况。

应用程序在CPU中执行时间t2包括输入、运算、自诊断、输出及时钟记忆等多个阶段,一般采用固定周期扫描方式对多个A/D采集卡及其他模块分时处理。此外,由于CPU在短时间内需分时处理多个线程,存在采集卡数据获取线程被其他线程(如通信、存储等)中断的情况。

2.2 改进方法

根据上述分析可知,数据采集处理单元响应时间的影响因素在于3点:

a. A/D采集卡的输入通道较多,I/O总线以轮询方式进行处理时无法实现高速采集,存在采集通道错过轮询扫描周期的可能;

b. CPU采用分时处理技术对采集卡数据获取等多线程进行通信控制,数据获取线程的频次较低,存在采集卡错过轮询扫描周期的可能;

c. CPU在短时间内需分时处理多个线程,存在采集卡数据获取线程被其他线程 (如通信、储存等)中断的情况。

改进后的软件算法策略如图9所示, 可以看出, 算法牺牲2#采集卡,CPU只对1#采集卡的数据进行处理, 相当于在相同的时间片内提高对1#采集卡的处理频次;同时根据多信号输入的数量关闭1#采集卡内多余的通道,减少轮询等待时间;将采集卡数据获取线程设为CPU处理最高优先级,同时在执行这一进程时,为避免被其他线程频繁中断和降低CPU运行负荷, 关闭其他不必要的辅助线程。

图9 改进后的CPU调度执行算法流程

2.3 改进方法测试结果

用改进方法对流量信号的阶跃变化响应时间进行重复性测试,结果如图10、11所示。

图10 流量信号响应时间随机测试结果

从图11可以看出,改进软件算法策略后,3路信号同时输入控制回路时,流量信号的最小响应时间91.1 ms,最大响应时间191.7 ms,平均响应时间141.5 ms。 相比常规方法测得的响应时间有很大改善。

图11 流量信号重复性测试统计结果

3 算法改进前后对比

为进一步分析改进方法的有效性, 对常规方法和改进方法测得的50组数据进行统计分析,结果如图12、13所示,可以看出,流量信号改进前后的重复性测试结果均符合正态分布,红色曲线为利用统计方法对样本数据进行模型估计的结果。

图12 常规方法流量信号测试结果

图13 改进方法流量信号测试结果

根据正态分布的概率密度标准方程,有:

其中,f(x) 为正态分布概率密度函数,σ为正态分布标准差,μ为正态分布均值,x为采样数据。σ改进前为采用常规方法得出的正态分布标准差,μ改进前为采用常规方法得出的正态分布均值,x1,…,x50为常规方法的50组采样数据;σ改进后为采用改进方法得出的正态分布标准差,μ改进后为采用改进方法得出的正态分布均值,x1′,…,x50′为改进方法的50组采样数据。

采用常规方法测试, 当置信度为95%时,μ为223.5 ms,置信区间为[208.8 ms,238.1 ms],σ为51.7 ms;采用改进方法测试,当置信度为95%时,μ为141.5 ms,置信区间为[135.4 ms,147.6 ms],σ为21.6 ms。 因此,以置信度为95%的均值为计算基础,采用改进方法测得的响应时间相比常规方法改善了36.7%,稳定性也有明显提高。

为验证该方法的适用性,采用相同方法对液位信号测量进行测试[7],并进行统计分析,测试结果如图14、15所示。

图14 常规方法液位信号测试结果

图15 改进方法液位信号测试结果

采用常规方法测试,当置信度为95%时, μ为239.3 ms,置信区间为[228.5 ms,250.0 ms],σ为37.8 ms;采用改进方法测试,当置信度为95%时,μ为130.1 ms,置信区间为[123.4 ms,136.9 ms],σ为23.8 ms。 因此,以置信度为95%的均值为计算基础,采用改进方法测得的响应时间相比常规方法改善了45.6%,稳定性也有明显提高。

4 结束语

自主搭建控制回路试验装置,以高温高压工况下流量信号测量为例展开研究,从软件算法策略上提出改进方法, 并与常规方法进行对比,采用改进方法测得的多路信号采集测量时的响应时间明显改善,流量信号的均值响应时间提高了36.7%, 液位信号的均值响应时间提高了45.6%,且测试结果稳定性也有明显提高。 笔者提出的软件算法改进策略具有普适性,可应用到对响应时间有特殊要求的工程测试中,为实现相关控制系统快速测量提供了一种解决思路。

猜你喜欢
采集卡线程流量
冰墩墩背后的流量密码
实时操作系统mbedOS 互斥量调度机制剖析
张晓明:流量决定胜负!三大流量高地裂变无限可能!
寻找书业新流量
育婴监控系统的设计与实现
基于国产化环境的线程池模型研究与实现
智能变电站电子式电流互感器故障分析
大型视频多帧图像信息处理系统设计
基于ZigBee 通信的流量研究与改进
脉冲采集卡的开发