毕业论文

打赏
当前位置: 毕业论文 > 自动化 >

PIC16F877A单片机单相逆变器研究+电路原理图(5)

时间:2016-12-23 12:48来源:毕业论文
5.软件设计 5.1主程序设计 本系统主要分为两部分:即为主程序和中断。主程序中主要需要实现的任务有:①程序系统的初始化;②SPWM信号的初始化,即由


5.软件设计
5.1主程序设计
本系统主要分为两部分:即为主程序和中断。主程序中主要需要实现的任务有:①程序系统的初始化;②SPWM信号的初始化,即由SPWM信号产生的正弦波的频率从10Hz逐渐增加到50Hz,调制度跟随正弦波频率从0.64逐渐增加到0.98;③根据按键来调节正弦波的频率和调制度;④计算特定频率和调制度下1/4周期正弦波的PWM信号的脉宽;⑤液晶实时显示正弦波的频率和调制度。中断的组要任务是查PWM信号的脉宽值送入CCPR1L。
由于系统要求SPWM信号的正弦波频率为10Hz~100Hz,且可以以1Hz为步进变化;又由于受到本系统所用的PIC单片机的CCP某块寄存器及抽样次数的限制,故将10Hz~100Hz频率分为四个部分,在每个部分采用不同的抽样数,并相应的设置不同的TMR2预分配比。程序将10Hz~100Hz频率分为10Hz~24Hz、25Hz~39Hz、40Hz~59Hz、60Hz~100Hz四个部分进行分别计算,即模块0~模块3。主程序流程如图14所示。5.2中断设计
本系统中设置SPWM的频率为5kHz左右,并外接4MHz晶振,计算得指令周期即计时步阶为1μs。PIC单片机CCP外围功能模块的PWM功能实现主要依靠相关寄存器值的设定,且以定时器2(TMR2)作为PWM的时基。中断程序流程如图15所示。
1)    SPWM周期的设定由寄存器PR2设定
(PWM)周期=(PR2)×4×Tosc×(TMR2)预分频值
系统中Tosc为4MHz,为提高分辨率及满足系统要求的正弦波频率为10Hz~100Hz,当正弦波频率为10~24Hz时,TMR2预分频器设为1:4,即T2CKPS1=0、T2CKPS0=1;当正弦波频率为25~100Hz时,TMR2预分频器设为1:1,即T2CKPS1=0、T2CKPS0=0;
2)    定时器TMR2的控制寄存器T2CON设定,因为SPWM频率高,周期短,但系统软件中采用查PWM脉宽的方式来修改PWM脉宽,所用时间少,可满足一个PWM周期改变一次脉宽的要求,故在此寄存器中设置后分频为1:1即可;
3)    CCP模块的控制寄存器CCP1CON的设定。选择CCP模块作用于PWM功能模式,即bit3:0=11ⅹⅹ;
4)    根据PWM输出信号脉宽的公式
PWM高电平(脉宽)=CCPR1L:CCP1CON(bit5,bit4)×Tosc×(TMR2)预分频值
计算出每个PWM周期CCPR1L的值。CCPR1L脉宽写入寄存器后,写入的脉宽值在下个TMR2周期时转至CCPR1H,通过读CCPR1H的脉宽值来改变PWM脉宽;
5)    寄存器TRISC 对应于CCP1的输入输出设置,应设置为输出形式,即TRISC的bit2 =0。
6.系统调试
6.1 SPWM信号调试
单片机输出的SPWM信号经过普通的RC滤波后的到正弦波,如图16:
其中R取为10KΩ的普通电阻、C取为104瓷片电容。
7.系统测试
7.1测试结果
在逆变器输出端接LC滤波和负载进行测试,负载为333Ω的纯阻性负载,负载两端的输出波形如图17(输入电压为150V):
测得的数据及根据测量数据计算所得的值如表1所示:
表 1测试数据
输入电压
输出电压
输入电流
输出电流
输入功率
输出功率
效率

50.0    38.2    0.12    0.07    6.00    2.67    44.6%
75.0    57.7    0.20    0.13    15.0    7.50    50.1%
100    82.3    0.28    0.21    28.0    17.3    61.7%
125    100    0.38    0.27    47.5    27.1    56.9%
150    124    0.44    0.32    66.0    39.7    60.2% PIC16F877A单片机单相逆变器研究+电路原理图(5):http://www.youerw.com/zidonghua/lunwen_1436.html
------分隔线----------------------------
推荐内容