DSP自适应滤波器与系统辨识实验


    实验6 适应滤波器系统辨识实验

    .实验目
    1.熟悉适应滤波器基概念掌握LMS算法基原理
    2.掌握LMS算法DSP实现方法
    3 熟悉适应方法进行系统辨识原理方法
    4 学采虚拟仪器记录分析信号方法

    二.实验设备
    PC兼容机台操作系统Windows2000安装Code Composer Studio 42软件
    C55x DSP实验箱

    三.实验原理
    1.适应滤波器基概念LMS算法
    基LMS算法适应滤波器结构见图

    中分称滤波器输入信号(参考输入信号参考信号)期信号称滤波器误差信号称滤波器控制输出信号输出信号
    称控制滤波器滤波器控制滤波器权值系数L滤波器阶数
    定义滤波器输入信号量滤波器系数量分
    (11)
    (12)
    滤波器输出信号表达
    (13a)

    (13b)

    误差信号表达
    (14)
    适应滤波器目迭代方式逐步调整滤波器系数误差信号量(幅度)断减趋优值
    LMS算法中定义性函数采梯度法进行寻优导出滤波器系数更新公式:
    (15)
    中收敛子取值合适太收敛速度慢太会导致系统会稳定
    2.适应系统辨识基原理
    基LMS算法适应系统辨识原理见图中辨识系统白噪声信号发生器发出辨识噪声方面注入辨识系统方面作适应滤波器参考输入信号算法收敛适应滤波器系数取辨识系统击响应


    3 实验硬件结构
    辨识系统结构见图中白噪声信号VC5509A部产生AIC23B路DAC输出注入图中示某未知电路模块该未知电路模块输出信号作AIC23B路输入信号ADC时分作适应滤波器参考输入信号期输入信号适应滤波器涉计算VC5509A完成
    该系统辨识结果信号开始间包括子系统未知电路模块外包括AIC23BDACADC部分


    4.实验源程序
    (1)lab6c程序首先完成系统初始化变量初始化然通查询定时器中断服务程序实现采样时间控制采样时间调次适应系统辨识模块完成次适应滤波滤波次数达规定次数时停止辨识进入循环等状态
    (2)processc适应系统辨识模块次适应系统辨识程中完成操作:1)产生白噪声数方面作滤波器参考输入x(n)方面JP5引脚LOUT0输出辨识系统输入端口2)JP5引脚LIN0读入辨识系统输出端口信号作滤波器期信号d(n)3)滤波器采前系数w(n)参考输入信号进行FIR滤波控制输出信号y(n)4)期信号控制输出信号相减误差信号e(n)误差信号JP5引脚LOUT1输出便采虚拟信号分析仪记录误差信号观察适应滤波程5)采LMS算法滤波器进行系数更新
    (3)lab5cmd命令文件
    (4)模块:sdram_initcaic23ci2ccutilcvectorsasm
    (5)关头文件:5509hc55xxdefshutilh

    四.实验步骤
    1. 预:
    (1)认真阅读实验指导书第三部分熟悉适应滤波适应辨识基原理方法
    (2)认真阅读实验指导书第七部分理解程序processc模块涉相关模块作
    2 实验准备:
    双击桌面图标启动Code Composer Studio选择工作目录
    3.建立工程lab6
    4 工程lab6中加载文件:lab6clab5cmdsdram_initcaic23ci2ccutilcvectorsasm5509hc55xxdefshutilh
    5.建立配置文件lab6ccxml(选择VC5509A Emulater模式仿真器选择XDS100V2)
    6 导线连接JP5引脚LOUT0LIN0虚拟仪器信号输入端接JP5引脚LOUT1
    7.编译链接工程载程序开虚拟仪器记录窗口开始记录波形
    8 运行程序数秒钟停止执行程序停止虚拟仪器记录1)采CCS观察波形开图形观察窗口观察滤波器系数波形观察相关信号2)观察虚拟仪器记录误差信号波形
    9 修改相关参数(滤波器长度收敛步长辨识次数等)重复述第78步操作直误差信号期输入信号(控制输出信号)相足够时取滤波器系数作辨识结果
    10.退出CCS

    五.实验结果

    六.思考题
    (1)实验辨识系统包括环节?
    (2)选做:导线VC5509A板JP5LOUT0引脚连接实验箱功率放器扬声器麦克连接实验箱信号调理板Mic信号输入端信号调理板信号输出端连接VC5509A板JP5LIN0引脚重复实验时辨识系统包括环节?时系统击响应原实验相什特点?

    七.附录
    (1)程序
    * 实验vc5509A板右角JP5接线排座
    * 左边起JP5引脚分AIC23B0LLINE(标记LIN0)RLINE(标记RIN0)NC
    * LOUT(标记LOUT0)ROUT (标记ROUT0)
    *
    #include 5509h
    #include utilh
    #include mathh

    *********************************************************************************
    int timer_flag 户定义定时器中断标志定时器isr中改变程序中查询复位
    int N_iden 辨识次数
    int n_iden 辨识进程计数器该值等N_iden时结束辨识程
    float WhiteNoise 白噪声信号前值
    float ErrorSignal 误差噪声信号前值
    float DesiredSignal期信号前值
    float w[L]x[L] 滤波器系数量前参考输入信号量L滤波器阶数utilh中定义修改
    float d[L]e[L]y[L] 期误差控制输出等信号量调试程序时观察信号波形
    void INTR_init() 中断初始化模块
    void TIMER_init() 定时器初始化子程序
    void wait(unsigned int cycles) 时延子程序

    int i
    float Mu005 适应滤波器收敛子信号处理模块processc中
    float alpha Mu*e(n)信号处理模块processc中

    void main()
    {
    *系统部件初始化 *
    PLL_Init(144) 调锁相环初始化子程序CPU时钟频率144MHz该模块代码定义utilc中
    wait(29) 调时延子程序CPU时延29周期 该模块代码定义main函数
    SDRAM_init() 调SDRAM初始化子程序 该模块代码定义sdram_initc中
    AIC23_Init() 调AIC23初始化子程序 该模块代码定义aic23c中
    INTR_init() 调中断初始化子程序该模块代码定义main函数
    TIMER_init() 调定时器初始化子程序该模块代码定义main函数
    *变量初始化 *
    for(i0i {
    w[i]00 初始化滤波器系数量
    x[i]00 初始化参考输入信号量
    d[i]00
    e[i]00
    y[i]00
    }
    ErrorSignal0
    DesiredSignal0
    timer_flag0
    n_iden0
    N_iden16000
    *辨识程循环 *
    while(n_iden {
    if(timer_flag1) 程序中清timer_flag0定时器isr中置timer_flag1
    { 果timer_flag0继续查询1调LMS_Filter进行次辨识程
    timer_flag0
    LMS_Filter()
    n_iden++
    }
    }
    *辨识程结束进入等 *
    while (1){}
    }

    *****************************
    void interrupt Timer()
    {
    timer_flag1
    }
    ******************************
    void wait(unsigned int cycles)
    {
    int i
    for ( i 0 i < cycles i++ ){}
    }
    void INTR_init( void )
    {
    PC55XX_MMR pMMR (PC55XX_MMR)C55XX_MMR_ADDR
    Write(pMMR>ivpd0xd0)
    Write(pMMR>ivph0xd0)
    Write(pMMR>ier00x10)
    Write(pMMR>dbier00x10)
    Write(pMMR>ifr00xffff)
    asm( BCLR INTM)
    }
    void TIMER_init(void)
    {
    PC55XX_TIMER pTIMER (PC55XX_TIMER)C55XX_TIM0_ADDR4K
    Write(pTIMER>tim0) Timer register
    Write(pTIMER>prd0x8CA0) Timer period register
    Write(pTIMER>tcr0x00E0) Timer control register
    Write(pTIMER>prsc0) Timer prescaler register
    }}

    (2)适应辨识子程序
    #include 5509h
    #include utilh
    #include extaddrh
    #include mathh

    extern float ErrorSignal
    extern float DesiredSignal
    extern float WhiteNoise
    extern float PuMualpha
    extern float w[L]x[L]
    extern float d[L]e[L]y[L]


    void LMS_Filter()
    {
    int i
    int outputTempinputTemp

    PC55XX_MCSP pMCBSP0 (PC55XX_MCSP)C55XX_MSP0_ADDR
    while (ReadMask(pMCBSP0 > spcr2 SPCR2_XRDY)) 等McBSP0准备
    * 获期信号*
    inputTemp Read(pMCBSP0>ddr1) 读取McBSP0数该数AIC23采集辨识系统输出信号
    inputTemp Read(pMCBSP0>ddr2)
    DesiredSignal(float)inputTemp
    * 生成辨识白噪声信号输出*
    WhiteNoiserand()0x4000 产生辨识白噪声信号浮点数
    outputTemp(int)WhiteNoise 转化整数

    Write(pMCBSP0>dxr1outputTemp) 数送McBSP0AIC23转换成模拟信号输出作辨识系统输入信号
    Write(pMCBSP0>dxr2outputTemp)
    * 更新参考输入信号量*
    for(iL1i>0i)
    {
    x[i]x[i1]
    }
    x[0]WhiteNoise32768
    * 更新期输入信号量*
    for(iL1i>0i)
    {
    d[i]d[i1]
    }
    d[0]DesiredSignal32768
    * 计算滤波器输出*
    y[0]00
    for(i0i {
    y[0]y[0]+w[i]*x[i]
    }
    * 更新误差信号量*
    for(iL1i>0i)
    {
    e[i]e[i1]
    }

    * 计算误差信号*
    e[0]d[0]y[0]

    * 更新滤波器系数*
    alphaMu*e[0]
    for(i0i {
    w[i]w[i]+alpha*x[i]
    }
    }
    文档香网(httpswwwxiangdangnet)户传

    《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
    该内容是文档的文本内容,更好的格式请下载文档

    下载文档到电脑,查找使用更方便

    文档的实际排版效果,会与网站的显示效果略有不同!!

    需要 2 香币 [ 分享文档获得香币 ]

    下载文档

    相关文档

    南邮dsp上机实验报告

    南京邮电大学实 验 报 告实验名称:离散时间信号与系统的时、频域表示离散傅立叶变换和z变换 数字滤波器的频域分析和实现数字滤波器的设计课程名称 数字信号处理A(双语) ...

    1年前   
    372    0

    DSP设计科学计算器实验报告

    基于DSP的科学型计算器设计一、题目要求:基于DSP F2812利用实验箱及软件编程设计一款科学型计算器使其满足如下功能:(1) 能够实现按键数值的识别,并在数码管上显示(2) 能够进行简单的...

    3年前   
    556    0

    自适应滤波实验报告

    自适应滤波实验报告   要求: 1,用LMS、RLS这两种算法求最佳滤波器系数。 (1)LMS算法,画出一次实验的误差平方收敛曲线,训练长度500,给出滤波器系数,进行20次的独立实 ...

    14年前   
    16746    0

    LMS自适应滤波实验报告

    LMS自适应滤波实验报告姓名: 学号: 日期:2015实验内容:利用自适应滤波法研究从宽带信号中提取单频信号的方法。设,是宽带信号,,,,,任选(1) 要求提取两个单频信号;(2)...

    2年前   
    784    0

    DSP原理及应用大作业

     DSP原理及应用大作业题 目: IIR算法的软件实验 学生姓名: 学 号: 院(系): 信息工程学院 专...

    3年前   
    903    0

    基于dsp的无刷直流电动机换向调速系统

    无刷直流电动机的机械特性、调节特性与他励直流电动机的特性类似。

    4年前   
    813    0

    实验五:FIR数字滤波器设计与软件实现

    实验五:FIR数字滤波器设计与软件实现一、实验指导1.实验目的(1)掌握用窗函数法设计FIR数字滤波器的原理和方法。(2)掌握用等波纹最佳逼近法设计FIR数字滤波器的原理和方法。(3)掌握FI...

    7个月前   
    210    0

    二阶低通滤波器的设计实验报告

    二阶低通滤波器的设计实验报告指导老师: xxx 学院 : xxx学院 专 业: 电子信息工程 班 级: 电信 组 别:xxx小组( ...

    1年前   
    1435    0

    DSP主控板硬件设计

    DSP主控板硬件设计1 课题来源及研究的目的和意义产品研制、生产、使用过程中,先进的检测技术和检验设备是检测产品性能参数及缩短研制时间的有利保障。因此测试设备是整个产品生命周期内不可或缺的关键...

    12年前   
    409    0

    操作系统实验心得

    操作系统实验心得  每一次课程设计度让我学到了在平时课堂不可能学到的东西。所以我对每一次课程设计的机会都非常珍惜。不一定我的课程设计能够完成得有多么完美,但是我总是很投入的去研究去学习。所以在...

    12年前   
    991    0

    信号与系统实验报告

    实验一 信号的时域描述与运算 一、实验目的 1、掌握信号的MATLAB表示及其可视化方法。 2、掌握信号基本时域运算的MATLAB实现方法。 3、利用MATLAB分析常用信号,加深对信号时...

    5年前   
    3237    0

    实验一开环直流调速系统的仿真实验

    熟悉并掌握利用MATLAB中Simulink建立直流调速系统的仿真模型和进行仿真实验的方法。

    4年前   
    1339    0

    iir滤波器论文

    基于MATLAB的IIR的滤波器的设计 摘 要 随着信息化的推进,数字信号处理的地位和作用变得越来越重要。因为信息化的基础是数字化,而数字化的核心技术就是数字信号处理。而数字滤波器在...

    5年前   
    1002    0

    决策支持系统实验3

    决策支持系统实验名称:回归分析实验实验地点:专业班级:信管学生姓名:学生学号: 指导教师:成  绩:2016年X月X日一、实验目的1.了解Microsoft Office Excel 2003...

    3年前   
    492    0

    管理信息系统上机实验

    管理信息系统上机实验一 一、实验名称: 用VISIO绘制E-R图,并将E-R图转换成关系模型 二、实验目标: 1、熟练掌握某一版本的VISIO; 2、掌握概念模型的设计; 3、掌握...

    11年前   
    10732    0

    信息管理系统实验报告

    信息管理系统实验报告班级: 财务管理班 成员: 指导老师: 2012食堂信息系统调查大纲• 一、引言• 二、系统需求分析• 三、可行性分析• 四、概念结构设计• 五、逻辑结构设计• ...

    2年前   
    560    0

    信号与系统实验指导书

    掌握用Matlab绘制波形图的方法,学会常见波形图的绘制。

    5年前   
    1920    0

    实验报告管理系统报告

    软件项目设计报告实验报告管理系统所在班级小组成员学院名称信电工程学院专业名称计算机科学与技术指导教师起止日期2014.12.16-2015.1.152015年1月15日目 录1 绪...

    2年前   
    331    0

    基于FPGA的IIR滤波器设计

     基于FPGA的IIR滤波器设计摘 要:数字信号处理在科学和工程技术许多领域中得到广泛的应用,与FIR数字滤...

    3年前   
    550    0

    RLC带通滤波器的设计与测试

     RLC带通滤波器的设计与测试 —— 通信学院 一、概念: 带通滤波器能将某一频率范围内的电压传输到输出端,滤掉该频率范围外...

    3年前   
    585    0

    文档贡献者

    文***享

    贡献于2020-10-01

    下载需要 2 香币 [香币充值 ]
    亲,您也可以通过 分享原创文档 来获得香币奖励!
    下载文档

    该用户的其他文档