一款基于STC12C5A60S2与PID算法的数控电源
、C电容储能,其电路等效如图5所示;当Q断开时,通过电感的电流减小,电感L、C电容释放能量,其电路等效如图6所示;当Q的G极为一个高低电平交替变换的PWM信号,要求PWM信号频率比电感L、电容C储能和释放能量的频率高,此时充电速度比放电速度快,输出端就会得到一定的电压。PWM信号的占空比改变时输出的电压随之改变。
2.4 电压反馈电路设计
一些开环式电源容易受负载的影响,当负载变化时,输出电压波动较大。为了解决这个问题,本系统设计一个电压反馈电路,使系统为闭环系统,即:输出电压经分压电阻后得到适合单片机采集的电压,经电压跟随器后输入到STC12C5A60S2单片机的ADC0脚。系统利用单片机内置的ADC对输出电压进行实时测量,以调整PWM信号的占空比。系统电压反馈电路如图7所示。
2.5 按键控制与显示电路设计
一个数控电源人机交互界面是必不可少的,它包括按键控制电路和显示电路。
为了简单便捷地输入设置电压,系统采用4个轻触开关作为控制按键。按键功能分别为:步进增加、步进减小、输出增加、输出减小。
本系统要进行设置电压、步进电压的显示,显示电路通常有液晶显示或数码管显示。数码管成奉低、寿命长,但显示内容过少、线路复杂且亮度受供电电源影响较大,故本系统选择使用低功耗、无闪烁、可靠性高的LCD1602液晶。
系统按键控制与显示电路如图8所示。
3 系统软件设计
3.1 总体软件设计
该数控电源软件设计主要包括:PWM信号产生程序、ADC采样程序、PID控制算法程序、按键处理程序、数据显示程序。系统总体流程图如图9所示。系统开始进入初始化程序,包括LCD1602初始化、PID程序初始化、PWM相关寄存器初始化等。单片机处于按键检测状态,有按键输入时,调用按键控制程序,输出一定占空比的PWM,并将设定的电压值显示于LCD1602。另外,单片机对经BUCK电路输出的电压进行ADC釆集,与设定值比较得到PID控制的各项参数,经PID算法,调节PWM占空比,最终得到与设定值非常接近的输出电压。
3.2 PID软件设计
数控电源的PID算法系统组成形式如图10所示。系统通过按键设定一定的电压值r后,给出相应占空比值,同时单片机通过ADC采集输出电压,得到测量值z,与给定值对比得到偏差e,计算出PID算法中所需的P、I、D变量值,最终得到准确的被控量y。
4 实验测试
按键没定输出电压和实际输出电压测试,其结果如表1所示。数控电源输出的纹波测试如表2所示。由表1可见,输出电压值越低,偏差越小;输出电压值越高,偏差越大,但均不大于0.1V。由表2可见,输出电压越高,纹波越大,但均小于1%。由此可见,系统有较高的精准度。
5 结论
测试结果表明,文中设计的基于STC12C5A60S2单片机的数控电源能够较精确地输出设定的电压值,通过运用PWM技术和PID算法对输出的电压进行快速地调整,得到较精确的电压值。系统控制精度高、反应速度快、输出稳定、操作简单,具有一定的实用价值。
STC12C5A60S2 PID BUCK 相关文章:
- 蓄电池大功率恒流放电系统设计(12-09)
- 关于车辆信息上传改用PIDS车地无线通道的研究(12-09)
- 改进型PID神经元控制算法在APF控制中的应用(01-06)
- 一款快速稳定响应的DSP逆变电源模糊PID控制(11-29)
- 基于串级PID控制算法的压控大功率电流源(07-24)
- 分布式电源并网逆变器控制策略与仿真研究(04-25)