基于stm32的单相正弦变频稳压电源.doc

  1. 1、本文档共45页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于stm32的单相正弦变频稳压电源 本项设计的的要求是:输入40V到60V。输出稳定的有效值18V,80W。重载超过5A时,过流保护。输出正弦波频率在20Hz到60Hz可调,步进为1Hz。 我们做的DC/AC主电路采用全桥式,双极性SPWM,驱动芯片采用IR2110,极容易烧毁,使用时应倍加小心。用电流互感器采电流,电压互感器采电压,电压经过全波整流后送到stm32里。 这个设计大部分工作由软件完成。难点在于要调度好中断之间的关系,理解PI的整个控制过程。如果理解有偏差,就会出现无论怎么改变PI的系数,输出都稳不了压。同时,硬件电路也要做好。做电源不要引太多线出来,易受到干扰。尽量避免使用过零比较器,因为过零比较器的上升沿下降沿极不稳定,易导致单片机误触发。下面在多分享下我做这个设计时的调试经验:1,利用高级定时器TIM1,产生SPWM,中断优先级一定要设成最高抢断式2,带重载时波形会失真,原因主要是死区时间和开关管损耗,可以尝试下改小死区时间。 3,我的PI思路是这样的,在一个正弦波周期内,做一次PI。具体实现方法是:电压互感器采过来的经全波整流的波对应一个比较器产生的方波,正弦波过零时产生上升沿翻转,触发单片机开始定时,技术到四分之一个周期时,打开AD和DMA,在峰值处连续采14个点,然后排序,去掉最大的三个和最小的三个,然后相加求平均值。做一次PI,在下个正弦波开始时,赋给Ma。这里关键是AD一定要采的准,可以设置电平翻转来用示波器观察是不是在峰值附近采值。 下面给出全部代码: main.h #ifndef __MAIN_H #define __MAIN_H void RCC_Configuration(void); void NVIC_Configuration(void); void GPIO_Configuration(void); void ADC_Configuration(void); void TIM_Configuration(void); void ADC_DMAInit(void); void EXTI_Configuration(void); void display1(void); void display2(void); void display3(void); void display4(void); void display5(void); void pinlvzhuanhua(void); #endif main.c #include stm32f10x_lib.h #include stm32f10x_it.h #include stm32f10x_dma.h #include stm32f10x_adc.h #include stdio.h #include lcd1602.h #include juzhenkey.h #include main.h /* Private typedef -----------------------------------------------------------*/ /* Private define ------------------------------------------------------------*/ /* Private macro -------------------------------------------------------------*/ /* Private variables ---------------------------------------------------------*/ /* Private function prototypes -----------------------------------------------*/ /* Private functions ---------------------------------------------------------*/ /******************************************************************************* * Function Name : main * Description : Main program. * Input : None * Output : None * Return : None *******************************************************************************/ #d

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档