APP下载

基于Scade Suite的数字滤波器设计

2015-07-27中国电子科技集团公司第二十研究所西安710068

山东工业技术 2015年6期
关键词:重置滤波器计数

李 珅(中国电子科技集团公司第二十研究所,西安710068)

基于Scade Suite的数字滤波器设计

李珅
(中国电子科技集团公司第二十研究所,西安710068)

ScadeSuite是一种基于模型的软件设计工具,具有软件开发周期短、代码调试测试方便等优点。本文提出了一种防抖动数字滤波器的设计方案,并介绍了这种滤波器在ScadeSuite环境下的框架设计及个主要模块之间和模块内部的逻辑关系。

ScadeSuite;数字滤波器设计;软件代码开发

随着软件业的不断发展,软件代码开发量越来越大,软件文档编写,软件测试、认证等工作大大延长了软件开发周期。

ScadeSuite是一种经过DO-178B认证的,基于模型的软件设计工具,它同时集成了代码生成、设计文档生成、用例测试等功能。使用这种工具不但可以节省代码和设计文档编写的时间,而且生成的代码和文档直接满足DO-178B认证的要求,从而大大缩短了软件开发周期和认证周期。

本文介绍了使用ScadeSuite6.3.1实现一个数字滤波器的方法。

1 数字滤波器模型

数字滤波器的模型如下图1:

比较选择模块根据它存储的50个历史数据判断输入数据是否为奇异值,判断依据为:如果输入数据超出以50个历史值为中心的门限(门限为均值的0.5倍和1.5倍),则为奇异值,如果输入数据落入门限内则为正常值。如果输入数据为正常值,比较选择模块直接输出输入数据,将本次输入数据存入历史值数组中,并将连续预测计数模块计数值清零;如果输入数据为奇异值,比较选择模块输出上一个正常值,并将连续异常计数模块加1,当连续预测的次数到达门限值(20次)时,复位比较选择模块和平滑滤波模块。

平滑滤波模块是一个长度为20的滑窗滤波器,每次有新数据到来时将数据存入缓存并输出均值。

2 滤波器的实现

2.1系统模型

2.1.1接口

本系统有一个输入值和一个输出值,在SCADESuite中定义如下图2:

由图可见,FilteDDM模块的接口有两个变量ddm和ddm20,其中ddm为输入值,ddm20为输出值,两个变量都是real型。

2.1.2模型

系统模型如下图3:Filter50Control为比较选择模块,它有两个输出,一个是选择之后的输出值(real类型),另一个是当前输入数据的状态(Filter50State类型)。由图3可见,Filter50Control输出的Filter50State类型变量发送给连续异常计数模块(ErrorCounter);输出的real型变量发送给平滑滤波模块(Filter20Control)。连续异常计数模块的输出可以重置比较选择模块和平滑滤波模块。

2.2比较选择模块模型

2.2.1接口

比较选择模块有一个输入和两个输出接口,定义如下图4:

ddm为输入数据,ddm_f为选择输出的结果,FilterState为输入数据类型(正常值或奇异值)。

2.2.2模型

比较选择模块模型如下图5:

ddm数据直接传送给选择器(Filter_50)进行数据选择,同时选择器给出数据状态(FilterState)和数据选择结果(ddm_f)。array50是一个数组变量,存储50个历史数据,由上一个循环的输出作为下一循环的输入。

2.3连续异常计数模块

2.3.1接口

连续异常计数模块接口如下图6:

输入State表示当前输入数据状态,输出control是重置比较选择模块和平滑滤波模块的信号,为true时重置这两个模块,为false时不重置。

2.3.2模型

连续异常计数模块模型如图7:

收到Filter50Control模块发送的State信号后,判断State是normal还是odd,如果是normal则计数器(counter)清零;如果是odd则计数器加1,计数器的输出与连续异常门限(FilterResetThreshold)比较,如果计数超出门限值则输出true信号用于重置比较选择模块和平滑滤波模块;否则输出false。

2.4平滑滤波模块

2.4.1接口(见图8)

2.4.2模型(见图9)

输入数据(ddm_f)经平滑滤波器处理得到ddm_s作为输出数据。Array20是一个20长度的数组,存储20个历史数据,由上一循环的输

出作为下一循环的输入。

3 结束语

本文介绍了一种在ScadeSuite6.3.1环境下实现数字滤波器的方法,经真实数据测试该滤波器效果较好,输出数据抖动较输入数据有明显减小。本次设计过程充分体现了ScadeSuite的优势:软件模块划分清晰,开发周期短,文档生成迅速完整。在以后的软件发工作中,ScadeSuite可能会发挥能大的作用。

[1]EsterelTechnologies.ScadeLanguagePrimer,2012.3.22.

[2]EsterelTechnologies。LibrariesManual,2009.7.9.

李珅(1981—),男,陕西耀县人,硕士研究生,工程师,软件项目负责人,数字信号处理。

猜你喜欢

重置滤波器计数
浅谈有源滤波器分析及仿真
基于多模谐振器的超宽带滤波器设计
重置系统微软给你“双料”选择
古代的计数方法
系统重置中途出错的解决办法
重置人生 ①
古代的人们是如何计数的?
使用朗仁 H6 Pro大师版重置雷克萨斯发动机记忆
从滤波器理解卷积
FFT、PFT和多相位DFT滤波器组瞬态响应的比较