欢迎来到天天文库
浏览记录
ID:34036532
大小:164.50 KB
页数:45页
时间:2019-03-03
《基于stm32的单相正弦变频稳压电源》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于stm32的单相正弦变频稳压电源本项设计的的要求是:输入40V到60V。输出稳定的有效值18V,80W。重载超过5A时,过流保护。输出正弦波频率在20Hz到60Hz可调,步进为1Hz。我们做的DC/AC主电路采用全桥式,双极性SPWM,驱动芯片采用IR2110,极容易烧毁,使用时应倍加小心。用电流互感器采电流,电压互感器采电压,电压经过全波整流后送到stm32里。这个设计大部分工作由软件完成。难点在于要调度好中断之间的关系,理解PI的整个控制过程。如果理解有偏差,就会出现无论怎么改变PI的系数,输出都稳不了压。同时,硬件电路也要做好。做电源不要引太多线出来,易受到干扰
2、。尽量避免使用过零比较器,因为过零比较器的上升沿下降沿极不稳定,易导致单片机误触发。下面在多分享下我做这个设计时的调试经验:1,利用高级定时器TIM1,产生SPWM,中断优先级一定要设成最高抢断式2,带重载时波形会失真,原因主要是死区时间和开关管损耗,可以尝试下改小死区时间。3,我的PI思路是这样的,在一个正弦波周期内,做一次PI。具体实现方法是:电压互感器采过来的经全波整流的波对应一个比较器产生的方波,正弦波过零时产生上升沿翻转,触发单片机开始定时,技术到四分之一个周期时,打开AD和DMA,在峰值处连续采14个点,然后排序,去掉最大的三个和最小的三个,然后相加求平均值。
3、做一次PI,在下个正弦波开始时,赋给Ma。这里关键是AD一定要采的准,可以设置电平翻转来用示波器观察是不是在峰值附近采值。下面给出全部代码:main.h#ifndef__MAIN_H#define__MAIN_HvoidRCC_Configuration(void);voidNVIC_Configuration(void);voidGPIO_Configuration(void);voidADC_Configuration(void);voidTIM_Configuration(void);voidADC_DMAInit(void);voidEXTI_Configurat
4、ion(void);voiddisplay1(void);voiddisplay2(void);voiddisplay3(void);voiddisplay4(void);voiddisplay5(void);voidpinlvzhuanhua(void);#endifmain.c#include"stm32f10x_lib.h"#include"stm32f10x_it.h"#include"stm32f10x_dma.h"#include"stm32f10x_adc.h"#include#include"lcd1602.h"#include"juzh
5、enkey.h"#include"main.h"/*Privatetypedef-----------------------------------------------------------*//*Privatedefine------------------------------------------------------------*//*Privatemacro-------------------------------------------------------------*//*Privatevariables----------------
6、-----------------------------------------*//*Privatefunctionprototypes-----------------------------------------------*//*Privatefunctions---------------------------------------------------------*//********************************************************************************FunctionName
7、:main*Description:Mainprogram.*Input:None*Output:None*Return:None*******************************************************************************/#defineN14#defineADC1_DR_Address((u32)0xc)unsignedshortADCConvertedValue[N];EXTI_InitTypeDefEXTI_InitStructure;ErrorStatu
此文档下载收益归作者所有