DSP 实验指导书探素.docx
《DSP 实验指导书探素.docx》由会员分享,可在线阅读,更多相关《DSP 实验指导书探素.docx(22页珍藏版)》请在冰点文库上搜索。
DSP实验指导书探素
实验一基于CAN总线的PWM波占空比控制实验
实验目的:
通过该实验,使学生对DSP开发板的硬件中的CAN总线模块和PWM模块的仿控一体化技术有一个初步认识,完成整个实验后,学生能感受到自动代码生成技术的方便与快捷。
实验步骤:
A、找到CAN-BasedControlofPWMDutyCycle仿真模型
B、搭建测量电路。
C、对MATLAB中的CAN-BasedControlofPWMDutyCycle模型编译并下载至DSP开发板。
D、观察输出波形。
实验要求:
A、掌握信号发生器和数字示波器的使用方法;
B、了解DSP开发板的硬件电路图;
C、对仿控一体化有感性认识。
实验内容:
1、找出CAN-BasedControlofPWMDutyCycle仿真模型
本实验采用MATLAB中demo已经有的仿真模型来实现该实验。
1、打开MATLAB中,点击help—demo—Simulinkcoder—Demos—EmbeddedTargets—
TexasInstrumentsC2000—CAN-BasedControlofPWMDutyCycle,打开C2812cantest.mdl。
图1
2、实验仿真原理介绍
该模型里面的DutyCycle模块在DSP中地址为0x8FF0的存储空间里取占空比数值,当读取数值后,TransmitCANMsg模块,利用信箱5向总线上发出该数值。
同时,ReceiveCANMsg模块利用信箱0从总线上读取该数值,当ReceiveCANMsg收到该占空比数据后,ProcessCANMsg模块将该占空比的值发送给PWM模块即C28xPWM。
改变占空比的话,可以在DutyCycleChange模块中进行改变,可以选择25%,50%和75%三种。
2、搭建测量电路。
1、双击仿真模型中的C28xPWM模块,在Output栏中,根据自己的需要选择EnablePWM1/PWM2或者EnablePWM3/PWM4.本例采用事件管理器A中的PWM3/PWM4.
2、由DSP2812的资料可知,PWM3/PWM4分别对应J17端子的第3和第4管脚,同时第16管脚为GND,将第3管脚和第16管脚通过示波器的探针接入示波器。
图2
3、下载编译CAN-BasedControlofPWMDutyCycle模型至DSP开发板中
1、点开Tools—CodeGeneration—BuildModel(快捷键为ctrl+B),等待模型编译下载完毕。
2、点击CCS中的
键,即可在示波器中观察到输出波形。
4、观察输出波形。
观察示波器屏幕即可得出下列图形:
图3占空比为75%时的PWM波
实验二由ADC转换生成SPWM波的仿控一体化实验
实验目的:
通过该实验,使学生对DSP开发板的硬件有一个初步认识,完成整个实验后,学生能对SPWM波有更清晰的认识。
同时感受到自动代码生成技术的方便与快捷。
实验步骤:
A、完成正弦波信号的调试;
B、搭建硬件测试电路;
C、对MATLAB中的ADC-PWMSynchronizationviaADCInterrupt模型编译并下载至DSP开发板。
D、观察输出波形。
实验要求:
A、掌握信号发生器和数字示波器的使用方法;
B、了解DSP开发板的硬件电路图;
C、对SPWM波形有感性认识。
实验内容:
1、调试正弦波信号
本实验的正弦波信号由OWONAG1022信号发生器产生,需要调试产生出一个0~3的正弦波信号,连接至DSP开发板的ADC输入端口。
1、为了确保DSP开发板中ADC芯片的安全,务必要保证送入该端口的正弦波信号最大值不得超过3V,最小值不得低于0V。
所以需要调试出一个符合该条件的信号。
2、将波形发生器CH1接口和数字示波器CH1接口通过连接线连接到一起;
3、在示波器中按CH1菜单按键,将耦合方式设置为直流,探头衰减设置为×1,按下MENUOFF,关闭窗口。
4、通过信号发生器F1~F4按键,调整输出正弦波,并在示波器中观测,直至产生符合要求的正弦波。
本例采用最小值为120mv,最大值为1.6V的正弦波,如图1所示:
图-1
2、调试正弦波信号
1、搭建DSP测量硬件电路,首先要看在Demo中的ADC-PWMSynchronizationviaADCinterrupt中使用的是ADC那个输入端口和输出的PWM是哪个管脚。
图-2
由图2可知,本例采用的是ADCINA0,由DSP开发板的PDF图3中可知
图-3
其对应的为DSP开发板J17中的26管脚和16管脚。
注意ADCLO引脚是ADC采样的参考地,要将该引脚和系统GND连接到一起,即将16和17管脚连接一起。
2、由ADC-PWMSynchronizationviaADCinterrupt可知该模型采用的是PWM1/PWM2。
图-4
对应DSP硬件图资料可知,其对应的管脚为J17的1,2管脚
图-5
3、下载编译ADC-PWMsynchronizationviaADCinterrupt至DSP开发板
图-6
图-7
1、在MATLAB的demo中找到该模型后,将文件目录路径改为其它路径,不能为MATLAB安装路径下的bin文件夹。
2、点开Tools—CodeGeneration—BuildModel(快捷键为ctrl+B)
4、观察输出波形。
1、将信号发生器输出端地接16和17管脚,另一端接26管脚。
2、示波器管脚地端接16管脚,另一端接1或2管脚。
即可得出以下波形:
图-8
实验三由SPWM波滤波为正弦波的开环仿控一体化实验
实验目的:
通过该实验使学生对仿控以体会有一个较为系统的认识,完成整个实验后,学生应该对代码生成的思路有一个较为清晰的理解,比较与C语言编程的区别。
实验步骤:
A、完成simulink下DSP开发PWM开环仿真模型;
B、完成simulink下载程序,并用示波器观察波形;
实验要求:
A、了解实验三下simulink元器件的功能和连接以及的仿真方法;
B、了解产生PWM波的方法;
C、对滤波硬件电路有所了解。
实验内容:
1、学习了解模板“单相离网Ramp电压单环控制仿真模型”
A、了解该模型的内部构造及设计者的设计思路。
设计者通过单闭环系统来控制IGBT的通断来控制逆变电压稳定。
B、逆变电路如下:
C、滤波电路:
D、控制算法部分,使用PID算法:
E、代码生成模块:
AD采集模块、PWM波生成模块:
2、对模型进行修改,修改成我们需要的开环仿真模型,模型最终仿真如下:
A、正弦信号发生部分:
数值“4096”是可以设置的,表示正弦信号的幅值。
B、SPWM波模块,正弦信号与载波进行比较,生成SPWM波。
其中的载波频率是可以设置的,建议设置为12.8KHz:
C、滤波部分
D、将滤波电路的参数设置为:
电阻值20K,电容值设置为0.1uf,这与我们的硬件相对应。
E、通过改变载波频率以及正弦信号幅值,最终滤波出正弦波,如下图:
3、通过修改“constant”的点数(0-4096),我们可以通过在仿真中的示波器观察到正弦波的幅值在发生变化。
4、在仿真的基础上,完成代码生成程序的设计,最终如下图:
大家可以发现上图和仿真图形非常类似,只是删除掉了仿真模型中的硬件部分而已,并且将PWM生成模块改为了橘黄色的代码生成模块,这样可以实现代码的编译,并且烧录进DSP目标板中。
A、双击“PWM”模块,进行设置:
当分频选择“None”不分频时,载波频率的的计算公式为:
载波频率=75MHz/(Waveperiod),当选择12.8KHz的载波频率时,大家可以发现应该设置Waveperiod为5860.
B、选择输出通道。
如果用PWM1/PWM2,就勾选“EnabelPWM1/PWM2”;如果用其他通道,也是同理,勾选相应的即可。
“Dutycyclesource”为占空比,选择“Inputport”即为选择外部输入端控制。
C、选择控制逻辑。
按照上图进行选择即可。
D、完成了以上的设置之后,就可以生成需要的代码了。
在连接好DSP目标板硬件的情况下,点击“Tools”——“codegeneration”——“Buildmodel”,等待片刻,MATLAB会自动连接DSP目标板,并将生成的代码下载到DSP板中。
5、连接硬件,观察试验结果
如果选择的是PWM1通道,用连接线将PWM1端子连接到RC9上,即完成了PWM波与滤波电路的连接;然后将GNDRC与GNDA连接,完成共地操作;最后将GNDA与ADL0A连接,完成数字地模拟地的共地操作。
完成以上的硬件连接,便可以进行试验结果的观察了,用示波器的探针连接RC10与底线两端,便可以观察到滤波形成的正弦信号了。
实验四单闭环稳压仿控一体化实验
实验目的:
通过该实验使学生对仿控以体会有一个较为系统的认识,对闭环控制系统有一定了解,学会调节PID参数的思路,了解通过代码生成方法快速完成控制系统的方法。
实验要求:
A、电容两端电压的给定值任意设定在在0.1V~0.8V之间,当调动可调电阻时,电容两端电压均可以稳定在设定值不变;
B、独立完成控制系统的设计;
C、独立完成控制系统的图形化程序编写。
实验步骤:
A、基于实验三,完成该实验的图形化程序编写;
B、确认图形化程序无误后,编写并下载代码;
C、调节可调电阻,并用示波器观察波形,验证是否实现稳压功能;
实验内容:
1、完成图形化语言编程;
A、根据硬件选择相应的通道,下面AD转换以ADA0为例,AD模块设置如下:
B、PWM模块以选择PWM1通道为例,设置如下:
2、编译程序,并向DSP目标板并下载代码;
在连接好DSP目标板硬件的情况下,点击“Tools”——“codegeneration”——“Buildmodel”,等待片刻,MATLAB会自动连接DSP目标板,并将生成的代码下载到DSP板中。
3、调节可调电阻,观察电压能否稳住,由此逐步调节PID。
A、以该系统为例,如第一张图所示,给定值为700,对应电压为:
700/4096*3=0.512V;
B、下载程序后,连接硬件如下。
与试验三类似,如果选择的是PWM1通道,用连接线将PWM1端子连接到RC9上,即完成了PWM波与滤波电路的连接;然后将GNDRC与GNDA连接,完成共地操作;再将GNDA与ADL0A连接,完成数字地模拟地的共地操作;将ADA0与RC10连接,完成反馈通道AD的采集;最后将S4与RC10l连接起来,实现可调电阻与电容两端的并联。
C、完成以上的硬件连接,便可以进行试验结果的观察了,用示波器的探针连接RC10与底线两端,调节可调电阻,观察到电压能否稳定在0.512V。
D、如果调动电阻,发现电压也随之变化,那么说明PID参数与该系统不匹配,改变PID中的PID参数,再次下载程序到DSP中,继续调动电阻进行试验,直至电压能够稳住。
以上参数是我调节出来的参数,较为合适,大家可以试验观察,调节可调电阻,结果如下:
改图可见电压稳定在512mV附近,由于电容充放电的特性,电压会有一定波动,属于正常现象,在可以允许的范围之内。