找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 7484|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

基于PID閉環(huán)控制算法的串聯(lián)型開關(guān)穩(wěn)壓電源的設(shè)計(jì),附有電路仿真圖以及相關(guān)程序

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
基于PID閉環(huán)控制算法的串聯(lián)型開關(guān)穩(wěn)壓電源的設(shè)計(jì),附有電路仿真圖以及相關(guān)程序


電源整機(jī)架構(gòu)如圖1所示。

   

圖1  電源整機(jī)架構(gòu)


開關(guān)電源整機(jī)電路圖:

    整機(jī)電路圖


整機(jī)仿真效果圖:

仿真效果圖(proteus仿真工程文件可到51hei附件中下載)



單片機(jī)源程序如下:
  1. #include "Include.h"

  2. sbit K1=P0^0;//使目標(biāo)電壓增0.2
  3. sbit K2=P0^1;//使目標(biāo)電壓減0.2

  4. float Target=2.0;//目標(biāo)電壓

  5. void main()
  6. {
  7.         float Voltage;//當(dāng)前電壓
  8.         int Pwm;//用來更新PWM
  9.         float Voltage_1;//用來存儲(chǔ)PID函數(shù)返回后的增量
  10.         LCD1602_Drv_Init();
  11.         PWM_Init();
  12.         IncPIDInit();
  13.         PWM_Output(200);
  14.         while(1)
  15.         {
  16.                 Voltage=AD1674_LvBo();//對(duì)開關(guān)電源輸出端進(jìn)行電壓采集,濾波,并且將結(jié)果賦給當(dāng)前電壓Voltage
  17.                 Voltage_1=IncPIDCalc(Voltage,Target);//由PID增量式控制算法返回增量并且賦給Voltage_1
  18.                 Pwm+=Voltage_1;//控制PWM的脈寬輸出,調(diào)整輸出電壓
  19.                 PWM_Output(Pwm);//輸出占空比
  20.                 if(K1==0)
  21.                 {
  22.                         delay(10);
  23.                         if(K1==0)//按鍵k1真的按下
  24.                         {
  25.                                 Target+=0.2;//步進(jìn)電壓為0.2v,每按一次k1目標(biāo)電壓的增加0.2v
  26.                                 if(Target>=5.0)Target=5.0;//目標(biāo)電壓最大只能是5v
  27.                         }
  28.                         while(K1==0);//如果K1一直處于按下的狀態(tài),則程序什么也不做,呈現(xiàn)延時(shí)狀態(tài)
  29.                 }
  30.                 if(K2==0)
  31.                 {
  32.                         delay(10);
  33.                         if(K2==0)//K2真的按下
  34.                         {
  35.                                 Target-=0.2;//每按一次k2目標(biāo)電壓就減少0.2v
  36.                                 if(Target>=5.0)Target=5.0;//
  37. ……………………

  38. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
基于PID閉環(huán)控制算法的串聯(lián)型開關(guān)穩(wěn)壓電源的設(shè)計(jì),附有電路仿真圖以及相關(guān)程序.zip (798.63 KB, 下載次數(shù): 248)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏11 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:749490 發(fā)表于 2020-5-11 22:15 | 只看該作者
看起來不錯(cuò),下載來膜拜下
回復(fù)

使用道具 舉報(bào)

板凳
ID:60656 發(fā)表于 2020-5-26 21:17 | 只看該作者
支持樓主 精華
回復(fù)

使用道具 舉報(bào)

地板
ID:620337 發(fā)表于 2020-12-1 08:35 | 只看該作者
關(guān)鍵是調(diào)整率問題,,,如果輸入電壓比較穩(wěn)定倒是無所謂,否則輸出肯定會(huì)飄,因?yàn)閱纹瑱C(jī)的PWM輸出精度有限,,,如果精度高了,那么PWM頻率又會(huì)變慢,需要的電感會(huì)很大很大
回復(fù)

使用道具 舉報(bào)

5#
ID:229010 發(fā)表于 2020-12-30 14:25 | 只看該作者
正好需要學(xué)習(xí)pid
回復(fù)

使用道具 舉報(bào)

6#
ID:462629 發(fā)表于 2021-12-28 09:59 | 只看該作者
這個(gè)有做成實(shí)物的嗎?
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表