




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于TMS320F28069的SPWM波形实现李健-3班-15号摘要:本报告介绍了正弦脉宽调制(SPWM)的原理,包括规则采样法等。并采用TMS320F28069芯片,通过CCSV4.2.1软件进行程序下载和调试,在示波器界面上观察所得到的波形。最终,这次实验通过了老师的验收!关键词:正弦脉宽调制;规则采样法;SPWM波形Abstract: This report introduces the principle of sine pulse width modulation (SPWM), including Regular Sampling method, etc. And uses the TMS320F28069 chip, through CCSV4.2.1 software to download program and debug, observe waveform on the interface of oscillograph. In the end, this experiment was admitted by our teacher!Key words: sine pulse width modulation; Regular Sampling method; SPWM waveform1、SPWM原理在进行脉宽调制时,使脉冲系列的占空比按正弦规律来安排。当正弦值为最大时,脉宽最大,脉冲之间的间隔最小;当正弦值较小时,脉宽较小,脉冲之间的间隔较大。通过正弦波脉宽调制输出后的电压脉冲系列可以使电机电流中的高次谐波成分大大减少。SPWM开关点的计算从原理上讲,应该根据正弦参考控制波与三角载波进行比较后的交点来确定,确定交点的方法有硬件法和软件法。SPWM方法有很多种。其中,软件法又可以分为表格法、随时计算法和实时计算法。本实验采用实时计算法中的采样型SPWM算法。它是根据正弦参考控制波与三角载波进行比较后产生SPWM控制开关信号的基本原理,推导出SPWM开关点的算法。采样型SPWM有自然采样法和规则采样法两种。自然采样法在计算SPWM波的脉宽时要解超越方程,这需要花费较多的时间,因此自然采样法不适合用于实时控制。2、 规则采样法自然采样法的主要问题是SPWM 波形每一个脉冲的起始和结束时刻tA和tB对于三角载波的中心线不对称,因而求解困难。工程上实用的方法要求计算简单,误差不是很大,因此对自然采样法进行一些近似处理,得出了各种规则采样方法(Regular Sampling method)。 2.1称规则采样法I 这种方法是在三角载波的每一个周期的正峰值时刻找出正弦调制波上的对应点如图1所示D点,求出此处的电压值urd 。 图1 称规则采样法I用此电压值对三角载波进行采样,得A、B两点。就认为它们是SPWM 波形中脉冲的生成时刻,A、B 区间就是脉宽时间t2。SPWM波形的每一个脉冲的起始和结束时刻tA和tB对于三角载波的中心线是对称的(t1=t3)。所以称为对称规则采样法。 对称规则采样法I的计算公式为:脉宽时间: (1)间歇时间: (2)从上述计算公式可以看出,对称规则采样法I的计算明显比自然采样法要简单,但从图 2中可以看出输出脉冲宽度明显减小,从而造成控制误差。这是由于采样电压水平线与三角载波的交点都处于正弦调制波的同一侧造成的。为减小误差提出了对称规则采样法II。 2.2称规则采样法II如图2所示,仍然在三角载波的固定时刻找到正弦调制波上的采样电压值,但所取的不是三角载波的正峰值而是负峰值,图中E点,采样电压为ure 。图2 称规则采样法II在三角载波上由ure水平线截得A、B两点,从而确定了脉宽时间t2 由于 -&. 两点位于正弦调制波的两侧,因此,减少了脉宽生成的误差,使所得的SPWM波形更加准确。对称规则采样法II的计算公式为:脉宽时间: (3)间歇时间: (4)3、 制作正弦函数表由于本次实验的三角载波的频率为20KHZ,调制波的频率为50HZ,可以知道载波比N=400。对于正弦函数,可以预先根据 N 值通过MATLAB编制程序,计算出幅值为 1 的正弦函数 sin(N*/200)。把计算结果制成表格,称为基准正弦函数表,存于EPROM 中,以备查用,存放位置及长度需在.cmd文件中进行设置。4、 DSP 技术的特点及其应用TMS320F280x 系列是美国德州仪器公司新近推出的数字信号处理器,该系列处理器是基于 TMS320C2xx 内核的定点 DSP 芯片。它们是当今世界上集成度较高、性能较强的运动控制芯片系列。器件上集成了多种先进的外设,为电机及其他控制领域应用的实现提供良好的平台。 4.1 TMS320F2806 芯片特点 与先前的TMS320F24x系列相比TMS320F280x系列数字信号处理器提高了运算精度和系统处理能力。它与现存的F281x DSP控制器芯片相比,省去了 TMS320F281x DSP中的两个事件管理器模块 EVA 和 EVB,事件管理器模块的功能由增强型外设模块ePWM、eCAP和eQEP取而代之,使得开发工程师能更加有效地解决富有挑战性的控制问题。TMS320F280x高速的运算能力保证了控制的实时性,大容量的存储空间无需扩展片外RAM就能满足存储需求,保证了控制系统的高度可靠性,是电机数字化控制的升级产品。本课题所用的是TMS320F280x系列中的 F2806,其主要特点如下: 1采用高性能静态CMOS技术,使得内核、I/O 供电电压分别为1.8V和 3.3V,减少了控制器的损耗;100MIPS的执行速度使得指令周期缩短到10ns,从而提高了控制器的实时控制能力。 2基于TMS320C2XX DSP的CPU核,保证了TMS320LF240X系列DSP代码和 TMS320系列DSP代码兼容。 3片内有高达32K 16位的Flash程序存储器;高达10K16位的SARAM;10K16位的OTP ROM。还有4K16位的Boot ROM空间。 4l2位ADC转换器,其特性为:最小转换时间为160ns、8个或16个多路复用的输入通道,采集时间和转换时间分开,提高了采样率和输入阻抗,并且支持自动顺序采样,不需CPU干预。 5多达16路的PWM为高效的马达控制(双电机控制)方案提供了便利,16路中有6路为HRPWM(高分辨率脉宽调制),它的时间步长精度达到150ps,可以控制所有类型的电机。 6看门狗定时器模块(WDT)。 7eCAN 总线控制器可以为控制器、传感器、激励源以及其它节点提供良好的通讯,特别适用于工业现场和汽车等强噪声和恶劣的环境中。 8串行口通信接口(SCI)模块。 916 位串行外设(SPI)接口模块。 10基于锁相环时钟发生器。 11高达34个可独立编程或者复用的通用输入/输出引脚(GPIO)。 125 个外部中断(两个电机驱动保护、复位和两个可屏蔽中断)。 13电源管理包括3种低功耗模式,能独立地将外设器件转入低功耗工作模式。5、 实验说明 5.1 主程序和实验过程见附件 5.2 实验连线说明 观测本次实验结果只需要测两个引脚,即32脚接一根跳冒线,然后用示波器的接地夹子夹上即可,同理27脚接一根跳冒线,然后用示波器的高电平夹子夹上即可。这样我们就可以从示波器上观测到按照正弦规律变化的窄脉冲信(20KHZ),通过连接一个1K的电阻和1F的电容我们即可观测到50HZ的正弦波形。测试电路如图3所示:图3 连线说明 5.3 实验结果图4 等幅不等宽矩形脉冲(20KHZ)图5 正弦调制波(50HZ)6、总结 通过本次实验,我收益颇丰。我发现通过实验去复现一些理论的知识还是有很大的难度。记得老师上课的时候,SPWM的原理我就能够理解,但是通过CCSV4.2.1软件进行编程和调试的过程中仍然遇到了很多的问题。 1、一开始导入PWM程序时,是在电脑桌面上任意建的一个文件夹,程序导入到workspace后运行,总会出现错误和警告。后来发现,从controlSUITE3.2.2中把程序导入CCSV4.2.1的workspace,就不会出现错误和警告。 2、在通过MATLAB算正弦函数的值时,我一开始直接把得到的数据放在SPWM的查询表中,运行时又出现了错误。然后,发现MATLAB得到的数据的小数位超过6位,而实验芯片是32位的。所以,当把MATLAB得到的数据保留小数点后六位时,运行就没有错误了。3、在一开始编主程序时,没有用中断,得到的SPWM波形的频率始终不正确,而方波的频率却是正确的。这个问题缠绕了我好久,后来参考文献2,使用中断编程和多次调试。最后的频率符合实验的要求。4、在调试过程中还发现一个问题,就是一开始我使用的是双通道输出,而且参数设定值是一样的,我以为,27脚和28脚都能输出正确频率的正弦波;但是,两通道输出波形一样,频率却都不符合要求。当我去掉一个通道时,正弦波的频率就恢复正常了。在本次实验过程中,还遇到了一些其他的问题,在此也对王素宁等同学对我的帮助表示感谢。通过这次实验,我学到了很多,做研究不能急躁,需要拥有坚持、严谨、团结、互助的品质。参考文献:1 TMS320x280xDSP模数转换器(ADC)-参考指南. ZHCU0042 手把手教你学DSP. 顾卫刚.3 电力电子技术.附录 1、实验主程序/-/FILE:Symmetric PWM-Main.c/(Up-Down-Count, Dual Edge Symmetric Waveform, With Independent/Modulation on EPWM2A and EPWM2B)/ Description: This program sets up the EV TIMER2 to generate complimentary / PWM waveforms. The user can then observe the waveforms using an scope / from ePWM2A and ePWM2B pins. /- In order to change the PWM frequency, the user should change/ the value of period. /- The duty-cycles can independently be adjusted by changing compare /values (duty_cycle_A & duty_cycle_B) for ePWM2A and ePWM2B. /- For further details, please search for the SPRU791.PDF /(TMS320x28xx, 28xxx Enhanced Pulse Width Modulator Module) at / Target: TMS320F2806x or TMS320F2803x families (F28069)/-/ $TI Release:$ V1.0/ $Release Date:$ 11 Jan 2010 - VSC/-/ PLEASE READ - Useful notes about this Project/ Although this project is made up of several files, the most important / ones are: SymmetricPWM.c,this file/- Application Initialization, Peripheral config/- Application management/- Slower background code loops and Task scheduling/ SymmetricPWM-DevInit_F28xxx.c/- Device Initialization, e.g. Clock, PLL, WD, GPIO mapping/- Peripheral clock enables/ The other files are generally used for support and defining the registers / as Cstructs. In general these files will not need to be changed./ F2806x_RAM_SymmetricPWM.CMD or F2806x_FLASH_SymmetricPWM.CMD/- Allocates the program and data spaces into the devices memory map./ F2806x_Headers_nonBIOS.cmd and F2806x_GlobalVariableDefs.c/- Allocate the register structs into data memory. These register /structs are defined in the peripheral header includes (F2806x_Adc.h, .) /-#include PeripheralHeaderIncludes.h#include F2806x_EPwm_defines.h / useful defines forinitialization /%/ FUNCTION PROTOTYPES/%void DeviceInit(void);void InitFlash();void MemCopy(Uint16 *SourceAddr, Uint16* SourceEndAddr, Uint16* DestAddr);void update_sin(void);void PieCntlInit(void);void PieVectTableInit(void);void InitEPwmTimer(void);interrupt void epwm2_timer_isr(void);/%/ VARIABLE DECLARATIONS - GENERAL/%/ Used for running BackGround in flash and the ISR in RAMextern Uint16 RamfuncsLoadStart, RamfuncsLoadEnd, RamfuncsRunStart;#define PWM2_INT_ENABLE 1/定义初值Uint32 N=400; /载波比float M=0.8; /调制度Uint32 i=1; /采样计数 /预存正弦值表float sin400= 0, 0.015707, 0.031411, 0.047106, 0.062791, 0.078459, 0.094108, 0.109734, 0.125333, 0.140901, 0.156434, 0.171929, 0.187381, 0.202787, 0.218143, 0.233445, 0.24869, 0.263873, 0.278991, 0.29404, 0.309017, 0.323917, 0.338738, 0.353475, 0.368125, 0.382683, 0.397148, 0.411514, 0.425779, 0.439939,0.45399, 0.46793, 0.481754, 0.495459, 0.509041, 0.522499, 0.535827, 0.549023, 0.562083, 0.575005, 0.587785, 0.60042, 0.612907, 0.625243, 0.637424, 0.649448, 0.661312, 0.673013, 0.684547, 0.695913, 0.707107, 0.718126, 0.728969, 0.739631, 0.750111, 0.760406, 0.770513, 0.78043, 0.790155, 0.799685, 0.809017, 0.81815, 0.827081, 0.835807, 0.844328, 0.85264, 0.860742, 0.868632, 0.876307, 0.883766, 0.891007, 0.898028, 0.904827, 0.911403, 0.917755, 0.92388, 0.929776, 0.935444, 0.940881, 0.946085, 0.951057, 0.955793, 0.960294, 0.964557, 0.968583, 0.97237, 0.975917, 0.979223, 0.982287, 0.985109, 0.987688, 0.990024, 0.992115, 0.993961, 0.995562, 0.996917, 0.998027, 0.99889, 0.999507, 0.999877, 1.0, 0.999877, 0.999507, 0.99889, 0.998027, 0.996917, 0.995562, 0.993961, 0.992115, 0.990024, 0.987688, 0.985109, 0.982287, 0.979223, 0.975917, 0.97237, 0.968583, 0.964557, 0.960294, 0.955793,0.951057, 0.946085, 0.940881, 0.935444, 0.929776, 0.92388, 0.917755, 0.911403, 0.904827, 0.898028, 0.891007, 0.883766, 0.876307, 0.868632, 0.860742, 0.85264, 0.844328, 0.835807, 0.827081, 0.81815, 0.809017, 0.799685, 0.790155, 0.78043, 0.770513, 0.760406, 0.750111, 0.739631, 0.728969, 0.718126, 0.707107, 0.695913, 0.684547, 0.673013, 0.661312, 0.649448, 0.637424, 0.625243, 0.612907, 0.60042, 0.587785, 0.575005, 0.562083, 0.549023, 0.535827, 0.522499, 0.509041, 0.495459, 0.481754, 0.46793,0.45399, 0.439939, 0.425779, 0.411514, 0.397148, 0.382683, 0.368125, 0.353475, 0.338738, 0.323917, 0.309017, 0.29404, 0.278991, 0.263873, 0.24869, 0.233445, 0.218143, 0.202787, 0.187381, 0.171929, 0.156434, 0.140901, 0.125333, 0.109734, 0.094108, 0.078459, 0.062791, 0.047106, 0.031411, 0.015707, 0, -0.015707, -0.031411, -0.047106, -0.062791, -0.078459, -0.094108, -0.109734, -0.125333, -0.140901,-0.156434, -0.171929, -0.187381, -0.202787, -0.218143, -0.233445, -0.24869, -0.263873, -0.278991,-0.29404, -0.309017, -0.323917, -0.338738, -0.353475, -0.368125, -0.382683, -0.397148, -0.411514,-0.425779, -0.439939,-0.45399, -0.46793, -0.481754, -0.495459, -0.509041, -0.522499, -0.535827, -0.549023, -0.562083, -0.575005,-0.587785, -0.60042, -0.612907, -0.625243, -0.637424, -0.649448, -0.661312, -0.673013, -0.684547, -0.695913, -0.707107, -0.718126, -0.728969, -0.739631, -0.750111, -0.760406, -0.770513, -0.78043, -0.790155, -0.799685,-0.809017, -0.81815, -0.827081, -0.835807, -0.844328, -0.85264, -0.860742, -0.868632, -0.876307, -0.883766, -0.891007, -0.898028, -0.904827, -0.911403, -0.917755, -0.92388, -0.929776, -0.935444, -0.940881, -0.946085,-0.951057, -0.955793, -0.960294, -0.964557, -0.968583, -0.97237, -0.975917, -0.979223, -0.982287, -0.985109,-0.987688, -0.990024, -0.992115, -0.993961, -0.995562, -0.996917, -0.998027, -0.99889, -0.999507, -0.999877, -1.0, -0.999877, -0.999507, -0.99889, -0.998027, -0.996917, -0.995562, -0.993961, -0.992115, -0.990024, -0.987688, -0.985109, -0.982287, -0.979223, -0.975917, -0.97237, -0.968583, -0.964557, -0.960294, -0.955793, -0.951057, -0.946085, -0.940881, -0.935444, -0.929776, -0.92388, -0.917755, -0.911403, -0.904827, -0.898028, -0.891007, -0.883766, -0.876307, -0.868632, -0.860742, -0.85264, -0.844328, -0.835807, -0.827081, -0.81815,-0.809017, -0.799685, -0.790155, -0.78043, -0.770513, -0.760406, -0.750111, -0.739631, -0.728969, -0.718126,-0.707107, -0.695913, -0.684547, -0.673013, -0.661312, -0.649448, -0.637424, -0.625243, -0.612907, -0.60042, -0.587785, -0.575005, -0.562083, -0.549023, -0.535827, -0.522499, -0.509041, -0.495459, -0.481754, -0.46793, -0.45399, -0.439939, -0.425779, -0.411514, -0.397148, -0.382683, -0.368125, -0.353475, -0.338738, -0.323917, -0.309017, -0.29404, -0.278991, -0.263873, -0.24869, -0.233445, -0.218143, -0.202787, -0.187381, -0.171929, -0.156434, -0.140901, -0.125333, -0.109734, -0.094108, -0.078459, -0.062791, -0.047106, -0.031411, -0.015707;/%/ MAIN CODE - starts here/%void main(void) /初始化系统及各个外设/=/INITIALISATION - General/= DeviceInit();/ Device Life support & GPIO mux settings PieCntlInit(); / 初始化PIE控制寄存器 PieVectTableInit(); / 初始化PIE中断向量表 EALLOW; PieVectTable.EPWM2_INT = &epwm2_timer_isr;/中断函数入口 EDIS; InitEPwmTimer(); / 赋值中断函数地址 IER|= M_INT3; / 使能CPU级第三组中断 PieCtrlRegs.PIEIER3.bit.INTx2 = PWM2_INT_ENABLE; / 使能PIE中断,TB定时器中断位于INT3.2 EINT; / 开全局中断 ERTM; / 开实时中断 while(1) / Only used if running from FLASH/ Note that the variable FLASH is defined by the compiler (-d FLASH)/#ifdef FLASH/ Copy time critical code and Flash setup code to RAM/ The RamfuncsLoadStart, RamfuncsLoadEnd, and RamfuncsRunStart/ symbols are created by the linker. Refer to the linker files. /MemCopy(&RamfuncsLoadStart, &RamfuncsLoadEnd, &RamfuncsRunStart);/ Call Flash Initialization to setup flash waitstates/ This function must reside in RAM/InitFlash();/ Call the flash wrapper init function/#endif /(FLASH)/- #define period 4000 / 20kHz when PLL is set to 0x10(80MHz) / Time-base registers void InitEPwmTimer() EALLOW; SysCtrlRegs.PCLKCR0.bit.TBCL
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年放射性核素远距离治疗机项目合作计划书
- 内蒙古包头三十三中2026届高三上化学期中统考试题含解析
- 供暖收费基础知识培训课件
- 2025年《幼儿园保育教育质量评估指南》专项测试卷附答案
- 2025年气动元件、系统及装置合作协议书
- 互联网大厂裁员潮下职业转型中的团队协作与沟通能力提升研究
- 供应链贸易知识培训总结课件
- 2025年电力电容器及其配套设备项目发展计划
- 2026届云南省昆明市重点中学化学高二上期中经典试题含解析
- 音视频互联互通平台需求说明
- 老旧城区改造项目建议书
- 安全管理目标及责任书
- 阀门配送方案模板(3篇)
- 肝癌介入术术后护理
- 2025年高考河南省物理真题(含解析)
- 污泥安全培训课件内容
- 四懂四会消防知识培训
- 【二甲基甲酰胺(DMF)的精馏过程工艺设计计算案例2000字】
- 《曾国藩传》读书分享课件
- 公司对实习生管理制度
- T/CERDS 1-2021企业高质量发展评价指标
评论
0/150
提交评论