α-β滤波基于SCADE Suite的开发

2021-11-19 18:57马文希张巧
装备维修技术 2021年32期
关键词:滤波

马文希 张巧

摘 要:SCADE Suite主要用于嵌入式控制软件的设计、验证和代码生成。本文利用完成了α-β滤波的代码开发,与传统的代码编写相比较缩短了开发周期,可视化更强,调试验证方便快捷,图形化的方法便于开发人员快速学习运用。

关键词:代码生成;α-β滤波;嵌入式控制软件;图形化开发;实时仿真

1SCADE软件试用

1.1 SCADE简介

SCADE 是一种图形化、模块化,基于自顶向下的控制流和数据流设计的软件开发工具。SCADE结合Lustre和Esterel两种语言进行设计,属于强类型语言,能够提供数据流运算符、控制结构体和层次化状态机,其语义规范,无歧义,支持循环式的程序执行方式。SCADE Suite基于形式化语言和严谨的数学理论,为研制人员设计出高安全性的系统和软件提供了充分的支持。提供了友好直观的基于模型的集成开发环境。SCADE使用同步语言,创建无歧义并且自动实现、规范方面有着强大的优势,SCADE的图形描述首先转换成LUSTRE语言,再通过LUSTRE转化成C语言或ADA语言。其中LUSTRE语言可以看成是SCADE的核心。

LUSTRE是一种基于数据流的同步程序设计语言,LUSTRE应用于反应系统。它是确定性的,是基于时间的同步模型。它的同步模型使它适合在程序中处理时间、并被编译成高效的程序。整个系统看作实时交互的节点集,实则构成了一种时间演算系统,可以刻画出系统的动态行为,该技术在许多安全关键系统中已经得到了成功的应用。能有效地控制和使用系统资源、确定任务的时限、描述系统的行为。LUSTRE的时间模型可以为程序员精确提供精确的时间控制;并发性则为指定控制系统提供了便利;完整的确定性;有限状态机语言;容易分析、执行时间可预测、更容易验证、服从软件的实现。

1.2 α-β滤波跟踪模型设计

当机动目标模型建立之后,就要对目标进行跟踪,主要是对目标的距离信息、方位角信息、俯仰角信息以及距離变化率信息、方位角变化率信息、俯仰角变化率信息进行跟踪,预测目标的运动参数。滤波就是从混合在一起的诸多信号中提取出所需要的信号。α-β滤波是一种简单并且在工程上易于实现得滤波方法。以α-β滤波模型设计作为SCADE软件建模的目标。该模型功能较为独立,适合作为单一软件模块进行设计。

2 传统工具软件设计过程

2.1 需求分析

2.1.1 跟踪模型处理过程

根据工作状态,选取对应的滤波参数。根据目标坐标预测值及本周期测量结果,进行目标坐标及速度估值,估值完成后,进行下周期坐标预测。

2.1.2 滤波跟踪模型输入输出

(1)输入参数为目标上周期滤波结果、间隔时间、滤波系数组;

(2)输出参数为目标本周期滤波结果。

2.2 软件设计

目标跟踪软件中的α-β滤波跟踪模型如下。

3 SCADE工具软件设计过程

3.1常量设计

根据需求分析,进行对应的常量设计,其中包含滤波系数等常量参数。包括目标当前拍的距离信息、方位角信息、俯仰角信息。

3.2 数据类型设计

根据需求分析,进行对应的数据类型设计,其中主要包含滤波系数结构体、、滤波系数数组等。包括目标的距离信息、方位角信息、俯仰角信息以及距离变化率信息、方位角变化率信息、俯仰角变化率信息。

3.3 Operator设计

根据实际需要定义相应的类型,确保在PC机进行模型测试与目标机的数据类型相符。整形根据实际需要选择8位,16位,32位或64位。浮点型根据需要选择32位(单精度)或64位(双精度)。将常用的模块集成到库,以便重用;建议设计清晰表达所实现的功能,如:一节点包含计数功能,调用库节点“counter”,而不是直接在当前节点中构建计数器;即使某些子功能不会重用,但只要它很复杂难以理解,就应该构建实现子功能的操作符。当操作符的内容无法在一个图形页设计完毕时,建议将操作符内容分到多个图形页(diagram)中去设计;而当实现图形页的一部分过于复杂或者图形页数量过大时,建议考虑将实现内容封装到新操作符中。对齐方式中输入采用左对齐,输出采用右对齐。变量与变量对齐,常量与常量对齐,运算符与运算符对齐。相同操作符可以按照不同情况设置为等宽,或等高,或大小相同。

根据软件流程图,将滤波跟踪模型划分为3个Operator:FiltersSelectByT(根据目标跟踪周期选择滤波系数组)、FiltersSelectByREB(根据距离角度标志选择滤波系数)、FilterProcess(滤波跟踪处理)、Opt_Main(顶层控制)。

Operator设计如图所示:

3.4 工程构建及仿真测试

软件建模完成后,选择Opt_Main模块进行Check,Check通过后,选择Simulation模式进行编译,编译完成后,点击运行。在运行前,可将输入输出接口添加至watch窗口中,并初始化各输入接口数据。初始化完成后,选择仿真运行时间开始仿真。在仿真过程中,可随时观测模块各级输入输出接口数据变化情况。计算结果与输入的上周期坐标预测值基本一致,符合目标滤波跟踪模型的要求。

4 总结

运用SCADE工具对数据计算类的软件进行设计开发,进行数据仿真比较灵活,可以动态的观测仿真数据。继而得出结论,SCADE Suite的优势主要体现在:软件的模块划分比较清晰,开发周期较短,而且生成的文档快速完整,通过图形化的方法进行系统建模,并且可以进行动态仿真,为开发者提供了极大的便利,SCADE Suite在以后的运用中会得到极大的推广。

参考文献:

[1]张合军.基于SCADE的无人机飞行控制系统软件设计[M].南京航空航天大学,2007.

[2]李绅.基于Scade Suite的数字滤波器设计[M].中国电子科机集团公司第二十研究所.

猜你喜欢
滤波
基于小波域滤波的电子通信信道恶意干扰信号分离方法
应用于农业温度监测的几种滤波算法研究
对地铁车辆滤波电抗器日常维护及常见故障探究
试论地铁列车电容滤波和电感滤波的优缺点
高炉风口辐射图像滤波与分割
几种图像滤波处理方法比较
基于非下采样剪切波变换与引导滤波结合的遥感图像增强
基于联合采用EMD与高通低通滤波的信号分析
降低逆变器传导噪声滤波算法的选择与验证
基于正则化的高斯粒子滤波算法