版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、课程设计基于 89C52 单片机 SPWM 波形发生器摘要本系统由 89C52 单片机控制模块、滤波和稳压模块组成。利用 Matlab 计算SPW脉冲序列占空比,采用查表方式,控制双极性 SPW控制脉冲序列的输出。 关键字:单片机 Matlab 查表 SPWM1设计目的和要求设计并制作一套单相SPW触发脉冲电路,掌握SPW算法和硬件实现方法, 理解驱动电路功能。 采用双极调制算法,产生一个 7脉冲SPW触发脉冲,并用单片机数字化近似 实现; 完成拓展硬件电路,软件编程和调试; 具有2ms死区设计; 低次谐波较少;2设计方案本系统以89C52单片机为控制核心,由查表法通过定时器产生SPW波,系统
2、设计框图如下:输出图1设计框图3理论分析和计算SPWM采用频率数倍于正弦波的三角波调制正弦波,可得到近似于正弦波的输出。三 角波的频率越高,即载波比越高,谐波的频率就越高,输出端滤波器就更容易去除谐波。查表就是通过计算得到脉冲序列中每一个矩形脉冲周期内上下电平持续时 间,c语言编程时用数组来表示,通过编写对应程序来查表进而控制输出端口高 低电平时间及转换,从而产生 SPWMfco图2 SPWM原理图利用Matlab计算SPWM脉冲序列占空比MATLA是一个高级的数学分析与运算软件,具有强大的计算功能。SPW控制通过MATLA进行分析和设计,可取得事半功倍的效果。采用MATLA可方便地 得到正弦
3、波与三角波的交点。在判断交点时,可通过交点的数学定义来判断。 所 谓交点,就是在交点附近时刻两函数之差值的绝对值趋于 0或许某一精度,而在 交点附近的极小区域,离交点越远,差值的绝对值逐渐增大。3Matlab计算程序以下子程序为计算交点的 MATLA程序。基波数据L2 =4*sin(2*pi*f*x)/5,载波数据 L仁sawtooth(2*pi*9*f*(x+1/1800),0.5),t(j)为交点时刻数据。%设置clc;prec = 0.00001;%精度f=50;step = 0.00000001;start = 0;% plotx=start:step:stop;L1=sawtooth
4、(2*pi*9*f*(x+1/1800),0.5); L2 =4*si n(2*pi*f*x)/5;);,'NorthWest' );,'L2=4*sin(2*pi*f*x)/5');plot(x, L1,'red' x L2, 'blue'legend( 'L1', 'L2', 'location'title('曲线交点图,'L1= sawtooth(2*pi*9*f*(x+1/1800),0.5)' xlabel('x');ylabel(&
5、#39;y');%找交点 jCount = 0;t=0;j=0;for i=1:length(x)if (abs(L1(i)-L2(i) <prec)jCount = jCount + 1;j=j+1;t(j)=x(i);display(strcat(if jCount=1 display(strcat(第 ' ,num2str(jCount),' 交点是 :' );'(' ,num2str(x(i),num2str(L1(i),')' )X=2A16-(t(j)-t(j-1)*10A6;HEX=dec2hex(round(
6、X),4);') ,第%横坐标else' ,num2str(jCount),' ,num2str(t(j)-t(j-1),end' 与' ,num2str(jCount-1),' 交点电平持续时间:'ms,', ' 定时器初始值: ' ,num2str(HEX);%计算定时器初值%将初值化为十六进制display(strcat('(' ,num2str(x(i),num2str(L1(i),lh = line(x(i) x(i),min(min(L1),min(L2) L1(i); set(lh,&
7、#39;color' , 'green' );set(lh,'LineStyle' , '-');text(x(i),L1(i),strcat('P_' ,num2str(jCount),'(' ,num2str(x(i),',' ,num2str(L1(i),')');endend3Matlab运行结果>>第 1 交点是 :(0,0)第 2 交点是 :(0.00097685,0.24167)第 3 交点是 :,第 2与 1点电平持续时间 0.00097685ms
8、, 定时器初值: FC2F(0.0025405,0.57283)第 4 交点是 :,第 3与2点电平持续时间 0.0015636ms, 定时器初值: F9E4(0.0029758,0.64361)第 5 交点是 :,第 4与3点电平持续时间 0.00043531ms, 定时器初值: FE4D(0.0048886,0.79952)第 6 交点是 :,第 5与4点电平持续时间 0.0019128ms, 定时器初值: F887(0.0051114,0.79952)第 7 交点是 :,第 6与5点电平持续时间 0.00022276ms, 定时器初值: FF21(0.0070242,0.64361)第
9、8 交点是 :,第 7与6点电平持续时间 0.0019128ms, 定时器初值: F887(0.0074595,0.57283)第 9 交点是 :,第 8与7点电平持续时间 0.00043531ms, 定时器初值: FE4D(0.0090232,0.24167)第 10 交点是 :,第 9与8点电平持续时间 0.0015636ms, 定时器初值: F9E4(0.01,0) ,第 10 与 9 点电平持续时间 0.00097685ms, 定时器初值: FC2F第11交点是:(0.010977,-0.24167)第12交点是:,第11与10点电平持续时间 0.00097685ms,定时器初值:FC
10、2F(0.01254,-0.57283)第13交点是:,第12与11点电平持续时间 0.0015636ms,定时器初值:F9E4(0.012976,-0.64361)第14交点是:,第13与12点电平持续时间 0.00043531ms,定时器初值:FE4D(0.014889,-0.79952)第15交点是:,第14与13点电平持续时间 0.0019128ms,定时器初值:F887(0.015111,-0.79952)第16交点是:,第15与14点电平持续时间 0.00022276ms,定时器初值:FF21(0.017024,-0.64361)第17交点是:,第16与15点电平持续时间 0.00
11、19129ms,定时器初值:F887(0.01746,-0.57283)第18交点是:,第17与16点电平持续时间 0.00043531ms,定时器初值:FE4D(0.019023,-0.24167)第19交点是:,第18与17点电平持续时间 0.0015636ms,定时器初值:F9E4町.QC2ST56.>讦伍iQOfJ炳.057窃)(0.02,0),第19与18点电平持续时间 0.00097685ms,定时器初值:FC2F-DLB-0.0320K6D.0I?.41573)1已 3 JU MJ 缶bffaljT,0 016屛即D好期用护如? Kap cn孑妝七叫生*.im i¥
12、; imt)>.,Tin(pD-32O图3 Matlab运行结果图3.3单片机电平时间间隔表由MATLA计算结果可以得出下表: 十进制电平时间间隔表:976 1563 435 1912 222 1912 435 1563 976976 1563 435 1912 222 1912 435 1563 976 十六进制定时器初值表:FC2F F9E4 FE4D F887 FF21 F887 FE4D F9E4 FC2FFC2F F9E4 FE4D F887 FF21 F887 FE4D F9E4 FC2F4单片机程序设计4.1程序设计流程图图4程序流程图4.2C语言实现程序4主程序#in c
13、lude<reg52.h>#in clude< intrin s.h>#defi ne uint un sig ned intint i=0;char flag=0;sbit P10=P1A0;sbit P17=P1A7;sbit P20=P2A0;/近似inta=1000,1000,1900,200,1900,500,1500,1000,1000,1500,500,1900,200,1900,500,1500,2000;/精确int a1=976 1563 435 1912 222 1912 435 1563 976 976 1563 435 1912 222 191
14、2 4351563 976;void mai n()P10=0;P17=0;IE=0x82;TMOD=0x01;TH0=(65536-ai)/256;TL0=(65536-ai)%256;TR0=1;while(1)if(flag=1) flag=0; P17=P17; P20=P20;4中断程序void timerO() in terrupt 1i+;if(i=18)i=0;TH0=(65536-ai)/256;TL0=(65536-ai)%256; flag=1;5电路设计1O11FIPl.QPMTP1.0vccPIApaoP1.2Po.iPUPO.JP1.4PO.3P1.5Pt),4PI
15、 6PO.5P1.7P0.6RSTPOh7P3 O.KXE>FAP3ALE PROGP3 24NTOPSFNPS 気TMTlP2广P3 4/TOP3 5/T1P3 岛"TVRP2.4P3.7/RDP2.3XTAL2P2.2XTAL1P2.1GNDP2.0-7b-IF去 r,P2.7Pi.&P2.4P2JP2.2P2 1P2.0-9T1 OuF 0.1 uFOUT-L + C4lOuFGXD图6电源模块TLP2$0趺吸哇PVM頤疑电貉vccC_0.111b电源模块图7双极性pwm转换电路6测试和结果测试过程使用直流稳压电源,示波器,万用表以及低通滤波器进行测试图8测试环境
16、使用低通滤波器对输出电压进行处理图9滤波过程正负12V直流电源供电图10供电电源低通滤波的截止频率较低时的输出波形图11实验波形I含有少量杂波的输出波形图12实验波形n截止频率较大时的输出波形图13实验波形川含有少量杂波的输出波形图14实验波形W黄色为使用较低截止频率的滤波器后的输出波形图15实验波形V使用较高截止频率的滤波器测试结果蓝色为SPW波形,黄色为使用较高截止频率的滤波器后的输出波形图16实验波形W使用非常高的截止频率的滤波器测试结果蓝色为SPW波形,黄色为使用非常高的截止频率的滤波器后的输出波形图17实验波形四图18实验波形忸7测试结果分析偏差原因:在定时器中断效劳程序中查表赋定时的初值,占用时间较多,导 致定时不准确;另外,测试仪器本身存在测量误差。8 体会和收获经过两周的课程设计,我们对 SPW波形产生的原理有
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 河北省2026届初三第十一模(最后一卷)生物试题含解析
- 2026年湖南省长沙市雅礼教育集团下学期初三期中生物试题试卷含解析
- 粉色卡通风妊娠期口腔保健
- 辽宁省锦州市滨海期实验校2025-2026学年初三月考(一)化学试题含解析
- 2026年痕量气体探测PPM级精度实现方法
- 2026年八层立体鸡笼自动喂料传送带系统设计
- 2026年生活照护类20项服务项目内涵详解
- 2026届天津市红桥区高三下学期一模英语试题(含解析)
- 2025年临床执业《外科护理》真题试卷
- 乐器制造企业技术发展部主任的技术创新规划与实施
- 防欺凌家校联动共育
- 实验室计量器器具校准操作规程
- 土工布铺设工程监理实施细则
- 汽车贴膜类招商加盟计划书
- DL∕T 547-2020 电力系统光纤通信运行管理规程
- JCT2166-2013 夹层玻璃用聚乙烯醇缩丁醛(PVB)胶片
- 建筑材料说课公开课一等奖市赛课获奖课件
- 充电桩合作框架协议
- 新一代大学英语提高篇视听说教程2答案
- 再生水厂退水管线出水口及钢模围堰施工方案
- 二十世纪西方文论课件
评论
0/150
提交评论