一种基于PIC单片机的正弦波逆变器设计
摘 要 本文采用PIC16F877A单片机作为控制器,设计了一种正弦波逆变器。介绍了PIC单片机控制的SPWM波实现方法,给出了相关的电路原理图及程序流程图。实验结果表明,此正弦波逆变器性能良好,THD含量少,具有较好的实用价值。
关键词 PIC16F877A;逆变;SPWM
中图分类号 TM464 文献标识码 A 文章编号 1674-6708(2016)172-0135-02
目前,SPWM信号主要有3种生成方式:1)使用比较器、振荡器等模拟电路产生三角波和方波进行比较,产生SPWM波,但是此种方法电路复杂,受元器件精度影响大,且不易控制;2)利用专用SPWM集成芯片,其优点是电路简单,集成度高,缺点是无法全面实现对系统的反馈控制、监视管理和保护工作,故一般也要配合单片机实现;3)利用单片机等微处理器产生SPWM波,此方法控制電路简单,调节灵活,硬件成本低。本文介绍一种利用PIC16F877A单片机实现SPWM波形的方法,并将其应用到全桥逆变电路中,验证了利用PIC单片机调制SPWM波的可行性。
1 系统总体设计
本系统从结构上看主要由单片机控制电路、驱动及逆变主电路组成。
1.1 单片机控制电路
1.1.1 PIC16F877A单片机主要功能简介
该系列单片机主要资源及功能有:1)3个定时器,2个8位,1个16位;2)8路10位A/D转换器,1个参考电压发生器,2个模拟电压发生器;3)368字节(368×8位)的数据存储器;4)上电复位(POR),掉电复位(BOR);5)2个CCP模块,具有捕捉、比较、脉宽调制功能;6)有两个8位定时/计数器TMR0、TMR2和一个16位定时/计数器TMR1,其中TMR2带有一个欲分频器、一个后分频器和一个周期寄存器。TMR2还是CCP模块中PWM工作方式下的时基[ 1 ]。
1.1.2 系统控制电路
本系统利用该系列单片机的CCP模块CCP1和CCP2输出两路互补SPWM波,然后通过反相器产生四路信号送至驱动电路。逆变输出电压具有稳压反馈功能,通过连接单片机RA0/AN0实现。系统控制电路如图1所示。
1.2 驱动及逆变主电路
本系统采用全桥逆变形式,驱动及逆变主电路如图2所示。当Q1,Q4导通时,Q2,Q3断开;当Q2,Q3导通时,Q1,Q4断开。驱动芯片采用IR2110,此芯片具有光耦隔离和电磁隔离的优点,悬浮电源采用自举电路,独立的功率地和逻辑地,使得芯片结构更加可靠[ 2 ]。
2 软件设计
2.1 PWM周期设定
实验中,PIC单片机采用10MHz晶振,SPWM的频率定为10kHz,因此单片机每执行一个指令,周期为0.4us。PIC单片机CCP模块产生SPWM需要TMR2定时器配合完成。其中占空比控制由寄存器CCPRxH和CCPRxL完成,PWM周期的设定由寄存器PR2控制,PWM周期计算公式如下:
(PWM)周期=(PR2+1)×4×Tosc×(TMR2)预分频其中Tosc为1/10MHz,TMR2预分频设为1:4,由此计算得PR2=62。
2.2 SPWM软件实现过程
在MPLAB IDE编译环境下采用c语言进行编译,设置相关寄存器,使能TMR2定时器,从0开始计数,同时CCP模块引脚输出高电平。在PWM模式下,TMR2计数将同步进行两次比较:1)当TMR2≥CCPRxL时,CCPx引脚输出低电平;2)当TMR2≥PR2时,TMR2被清零,CCPx引脚输出高电平,PWM占空比从CCPRxL复制到CCPRxH中锁存。同时TMR2的中断标志位被系统置高,即TMR2IF=1,转去执行中断程序[3]。
程序中脉宽表共有100个数值,100个脉宽值对应半个周期,存储在单片机ROM中以供调用。中断程序每运行一次,更新一次脉宽值。当计数Count≤100时,脉宽值存入CCPR1L中,CCPR2L=0;当100 3 实验分析 逆变器接阻性负载,输出稳定的正弦波,输出端检测的电压波形如图4所示,此时电压为224V,频率50Hz,满足工频要求,且正弦性好。 4 结论 基于PIC单片机控制的正弦波逆变器,电路简单,成本低廉。采用软硬结合的方式控制的SPWM波输出精度高,调节灵活、性能可靠。实验结果证明,该逆变器的电压和频率稳定,总谐波含量THD低,正弦性好,在日益发展的电力电子技术领域具有较好的应用前景。 参考文献 [1]姚晓通,杨博,刘建清.轻松玩转PIC单片机C语言[M].北京:北京航空航天大学出版社,2011:4-5. [2]张小鸣,卢方民.基于IR2110的H桥可逆PWM驱动电路应用[J].常州大学学报,2012,24(4):68-69. [3]陈晓萍,王念春,马玉龙.PIC单片机设计的SPWM控制技术[J].电源技术应用,2006,9(3):39-40.
上一篇:基于蓝牙控制的智能窗帘设计