基于LabVIEW的自适应滤波器系统辨识的设计
时间:11-27
来源:互联网
点击:
3.3 基于LabVIEW 的DSP系统级设计方法
使用LabVIEW进行DSP开发,程序框图主要分为两大部分,如图2所示。
图2 CCS Automation.vi程序框图
一部分是在图中左侧的顺序结构。对应于CCS自动进程,包括CCS打开项目VI、CCS创建VI、CCS复位VI、CCS加载代码VI和CCS 运行VI。此外,还有顺序结构右侧的CCS中断VI和CCS关闭项VI目也是CCS自动进程的一部分。顺序结构中的文件I/O模版的三个函数用来创建 CCS项目文件路径,这样就可以在CCS中打开项目文件。通过这些VI和函数,打开CCS、创建项目、在DSP上加载和运行程序,这些进程都可以通过 LabVIEW一端来控制。顺序结构中的Dsp.pjt是DSP项目,如LMS.pjt、FFT.pjt等,由设计者依据不同设计要求在CCS中创建。
程序框图中的另一部分为While循环结构,包括系统数据、参数的输入输出显示及分析等图形化代码及CCS RTDX通信模块。CCS RTDX通信模块使得LabVIEW和DSP之间连续交换数据。
在程序运行中,通过前面板上的Code Composer Status可以清楚地显示CCS运行状态,如图3所示。
图3 前面板CCS进程状态显示示例
任何DSP的开发程序都可以套用图2所示的程序模式进行基于LabVIEW的开发设计。对于不同的DSP设计,Dsp.pjt和LabVIEW while循环内图形化代码是不同的。
4 DSP设计实例
4.1 系统辨识原理
自适应滤波器具有在未知环境下良好运行并跟踪输入统计量随时间变化的能力,使得自适应滤波器成为信号处理和自动控制应用领域强大的设备。自适应滤波器应用分为四种类型:辨识、逆模型、预测及干扰消除,其中系统辨识的目的在于设计一个自适应滤波器逼近一个给定的未知的动态系统。应用自适应滤波器实现系统辨识的基本结构如图4所示。
图4 系统辨识的基本结构
在自适应滤波器的应用中,一个重要的问题是确立使可调节的滤波器参数最优的标准(或准则)。最小均方(LMS)算法能够产生一个二次性能指数作为滤波器系数的函数,从而具有单一的最小值,它是自适应滤波器的一种最基本的算法,所以本文采用LMS算法来实现自适应滤波器的应用。
4.2 基于TMS320C6713EVM的系统辨识设计
硬件平台选用的是TMS320C6713EVM高速语音信号(采集)处理平台。该平台采用了Texas Instruments公司高性能浮点DSP器件 TMS320C6713B。使用的仿真器为5100USB V2.0系列DSP仿真器。
软件设计部分如图5所示。由LabVIEW的Express VI产生的正弦波作为输入信号,以巴特沃思滤波器VI作为信号所通过的未知系统。在CCS开发环境下用C语言编写实现自适应滤波器的LMS算法程序,在 LabVIEW开发环境下用G语言开发自适应滤波器的应用程序与图形界面,通过LabVIEW与CCS之间的实时数据交换(RTDX)实现通信。
图5 系统辨识程序框图
通过前面板可以清楚直观的看到自适应滤波器输出逐渐逼近未知系统的输出,最后准确的识别出未知系统的过程。输入信号除了使用单频正弦波还以均匀白噪声为输入,实验结果表明均可达到对未知系统的辨识,验证了整个系统功能的正确性及设计方法的有效性。程序运行结果如图6所示。
图6 系统辨识运行结果
5 结论
本文在LabVIEW开发环境下实现了基于TMS320C6713EVM DSP硬件开发平台的自适应滤波器应用设计——系统辨识。其设计方法区别于传统的DSP设计开发方法,是DSP设计新方法的有益尝试。这种设计方法大大缩短了DSP的开发周期,充分发挥了DSP和LabVIEW的特点,将复杂运算交给DSP去实现,同时通过LabVIEW的可视化界面可以清楚地看到程序运行的结果与波形,方便实现在线调试,运行结果直观、清晰。使用LabVIEW开发环境进行DSP的开发摆脱了繁琐的基于文本的语言代码和复杂的调试过程,可以轻松实现对DSP的开发,是DSP设计的一个新的发展方向,可以很好地应用于工程实践及DSP教学。
使用LabVIEW进行DSP开发,程序框图主要分为两大部分,如图2所示。
图2 CCS Automation.vi程序框图
一部分是在图中左侧的顺序结构。对应于CCS自动进程,包括CCS打开项目VI、CCS创建VI、CCS复位VI、CCS加载代码VI和CCS 运行VI。此外,还有顺序结构右侧的CCS中断VI和CCS关闭项VI目也是CCS自动进程的一部分。顺序结构中的文件I/O模版的三个函数用来创建 CCS项目文件路径,这样就可以在CCS中打开项目文件。通过这些VI和函数,打开CCS、创建项目、在DSP上加载和运行程序,这些进程都可以通过 LabVIEW一端来控制。顺序结构中的Dsp.pjt是DSP项目,如LMS.pjt、FFT.pjt等,由设计者依据不同设计要求在CCS中创建。
程序框图中的另一部分为While循环结构,包括系统数据、参数的输入输出显示及分析等图形化代码及CCS RTDX通信模块。CCS RTDX通信模块使得LabVIEW和DSP之间连续交换数据。
在程序运行中,通过前面板上的Code Composer Status可以清楚地显示CCS运行状态,如图3所示。
图3 前面板CCS进程状态显示示例
任何DSP的开发程序都可以套用图2所示的程序模式进行基于LabVIEW的开发设计。对于不同的DSP设计,Dsp.pjt和LabVIEW while循环内图形化代码是不同的。
4 DSP设计实例
4.1 系统辨识原理
自适应滤波器具有在未知环境下良好运行并跟踪输入统计量随时间变化的能力,使得自适应滤波器成为信号处理和自动控制应用领域强大的设备。自适应滤波器应用分为四种类型:辨识、逆模型、预测及干扰消除,其中系统辨识的目的在于设计一个自适应滤波器逼近一个给定的未知的动态系统。应用自适应滤波器实现系统辨识的基本结构如图4所示。
图4 系统辨识的基本结构
在自适应滤波器的应用中,一个重要的问题是确立使可调节的滤波器参数最优的标准(或准则)。最小均方(LMS)算法能够产生一个二次性能指数作为滤波器系数的函数,从而具有单一的最小值,它是自适应滤波器的一种最基本的算法,所以本文采用LMS算法来实现自适应滤波器的应用。
4.2 基于TMS320C6713EVM的系统辨识设计
硬件平台选用的是TMS320C6713EVM高速语音信号(采集)处理平台。该平台采用了Texas Instruments公司高性能浮点DSP器件 TMS320C6713B。使用的仿真器为5100USB V2.0系列DSP仿真器。
软件设计部分如图5所示。由LabVIEW的Express VI产生的正弦波作为输入信号,以巴特沃思滤波器VI作为信号所通过的未知系统。在CCS开发环境下用C语言编写实现自适应滤波器的LMS算法程序,在 LabVIEW开发环境下用G语言开发自适应滤波器的应用程序与图形界面,通过LabVIEW与CCS之间的实时数据交换(RTDX)实现通信。
图5 系统辨识程序框图
通过前面板可以清楚直观的看到自适应滤波器输出逐渐逼近未知系统的输出,最后准确的识别出未知系统的过程。输入信号除了使用单频正弦波还以均匀白噪声为输入,实验结果表明均可达到对未知系统的辨识,验证了整个系统功能的正确性及设计方法的有效性。程序运行结果如图6所示。
图6 系统辨识运行结果
5 结论
本文在LabVIEW开发环境下实现了基于TMS320C6713EVM DSP硬件开发平台的自适应滤波器应用设计——系统辨识。其设计方法区别于传统的DSP设计开发方法,是DSP设计新方法的有益尝试。这种设计方法大大缩短了DSP的开发周期,充分发挥了DSP和LabVIEW的特点,将复杂运算交给DSP去实现,同时通过LabVIEW的可视化界面可以清楚地看到程序运行的结果与波形,方便实现在线调试,运行结果直观、清晰。使用LabVIEW开发环境进行DSP的开发摆脱了繁琐的基于文本的语言代码和复杂的调试过程,可以轻松实现对DSP的开发,是DSP设计的一个新的发展方向,可以很好地应用于工程实践及DSP教学。
LabVIEW DSP 嵌入式 滤波器 虚拟仪器 单片机 集成电路 总线 仿真 USB C语言 相关文章:
- 图形化开发环境:LabView平台(06-28)
- 基于LabVIEW串口通信的数据采集串口收录系统设计(04-18)
- 基于LabVIEW的心音信号检测系统设计(08-19)
- 基于ARM处理器LPC2142的高速数据采集卡设计(07-18)
- 基于单片机USB接口的数据采集存储电路的设计(09-14)
- 一种单片机虚拟实验室的建立方法(11-04)