李小祥开题.pptx

  1. 1、本文档共36页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
李小祥开题

导师:刘嘉 副教授 学生:李小祥;; ;北京工业大学;北京工业大学;本课题的提出;反激电路PFC;只能DCM模式原因分析:;基于PSIM的系统模拟仿真 ;;;正常波形与突尖波形比较;100k突尖展开波形;分析结论;100k变压器;问题提出;课题目标;现阶段工作;现阶段工作;现阶段工作;改进后100khz波形;10kHzPwm;DSP+CPLD数字化控制策略:;DSP的选型;DSP28335;软件设计;主程序设计;电感电流和正弦基准电压比较的程序流程图 ;产生正弦基准电压程序流程图;软件锁相的DSP实现; 将eCAP2模块设置成APWM模式,该模式下,CAP1和CAP2寄存器分别工作在周期当前寄存器和比较当前寄存器模式,而CAP3和CAP4分别工作在周期映射寄存器及比较映射寄存器模式。每当eCAP1模块有捕获中断时,中断服务子程序读取eCAP2中计数时基的计数值,记为Tin;读取周期当前寄存器的值,记为Tref。两个值分别为锁相环的反馈输入和参考输入。环路滤波程序实现Tin对Tref的跟踪功能。软件锁相算法的运算结果重新送入周期寄存器中,依次不断调整,以实现对电网电压的相位跟踪。PWM波的产生:eCAP2模块的32位计数器进行计数,CAP1周期当前寄存器装载三角波载波周期所需的计数值,DSP内部固化了正弦周期表,一个完整的周期含有512个点,将各个正弦波的比较点的幅值取出送给CAP2比较当前寄存器,当定时器的计数值与比较器的值相等时发生比较匹配,每产生一次比较匹配,查表指针自动加一;当定时器的计数值与周期寄存器的值相等时,发生周期匹配,此时复位正弦表指针。这样相应的引脚就会输出宽度不等的方波。 ;PWM波的产生;void InitGpio(void) //通用I/O选择 { EALLOW; GpioMuxRegs.GPAMUX.all = 0x0; //所有的GPIO端口配置成I/O方式 GpioMuxRegs.GPAMUX.bit.T1PWM_GPIOA6 = 1; //T1PWM有效 GpioMuxRegs.GPADIR.bit.GPIOA0=1; //将GPIOA0配置成数字量输出,并初始化输出为0 GpioDataRegs.GPADAT.bit.GPIOA0=0; EDIS; } void InitEv(void) { //配置事件管理器EVA //假定事件管理器A的时钟已经在InitSysCtrl()中使能 EvaRegs.T1CNT = 0; EvaRegs.T1CON.bit.TMODE = 1; //连续增减计数 EvaRegs.T1CON.bit.TPS = 0; //定时器时钟预定标:/1 EvaRegs.T1CON.bit.TENABLE = 0; //禁止GP Time1操作 EvaRegs.T1CON.bit.TCLKS10 = 0; //使用内部时钟 EvaRegs.T1CON.bit.TCLD10 = 0; //等于0(下溢)时比较装载 EvaRegs.T1CON.bit.TECMPR = 1; //使能定时器比较功能 //EvaRegs.GPTCONA.bit.TCMPOE = 1; EvaRegs.GPTCONA.bit.TCOMPOE = 1; //T1/T2 逻辑驱动 T1PWM/T2PWM EvaRegs.GPTCONA.bit.T1PIN = 1; //GP Timer 1 比较输出配置:低电平有效 EvaRegs.T1PR = 1875; EvaRegs.T1CMPR = EvaRegs.T1PR/2; EvaRegs.EVAIMRA.bit.T1PINT = 1; //使能T1PINT中断 EvaRegs.T1CON.bit.TENABLE = 1; //使能GP Timer 1 } interrupt void T1PINT_ISR(void) // 通用定时器T1的周期中断 { EvaRegs.T1CMPR = sine[i]; i = i+1; if(i==100) i = 0; EvaRegs.EVAIMRA.bit.T1PINT = 1; EvaRegs.EVAIFRA.bit.T1PINT = 1; //PieCtrlRegs.PIEACK.all = PIEACK_GROUP2;改过的 PieCtrl.PIEACK.all = PIEACK_GROUP2; } ;实验室现有平台;四、工作进度安排;谢谢! 请各位老师批评指正!!!

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档