久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 8553|回復: 2
打印 上一主題 下一主題
收起左側

降壓型直流開關穩壓電源-2016年四川省TI杯大學生電子設計競賽設計報告

[復制鏈接]
跳轉到指定樓層
樓主
ID:344451 發表于 2018-6-20 10:57 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
2016年四川省TI杯大學生電子設計競賽
A題:降壓型直流開關穩壓電源


隨著開關電源技術的迅速發展,DC-DC降壓性開關電源已在通信、計算機以及消費類電子產品等領域得到了廣泛應用,是當今電子信息產業飛速發展不可缺少的一種電源。近年來,電池供電便攜式設備的需求越來越大,對DC-DC開關電源的需求也日益增大,同時對其性能要求也是越來越高。在當前背景下,高頻化、小體積化、輕質量化、高效率化、低成本化、安全可靠性乃至綠色化都成了為DC-DC開關電源未來必須追求的發展方向。
本設計的降壓型直流開關穩壓電源采用TI公司的降壓控制器LM5117芯片和CSD18532KCS MOS場效應管為核心器件,本著當前降壓型直流開關穩壓電源的發展方向,此電源設計正是一款效率、質量、電壓調整率、負載調整率、紋波均滿足設計要求,額定輸入電壓為16V,額定輸出電壓為5V,最大輸出電流為3A的DC-DC開關電源電路。同時就有負載識別實時輸出恒定電壓,過流保護的功能。


1系統方案
1.1 方案一
1.2 方案二
2系統理論分析與計算
2.1 DC-DC變換方法
2.2 穩壓控制方法
2.3 降低紋波方法
3電路與程序設計
3.1系統總設計
3.1.1系統總框圖
3.2主回路設計與器件選擇
3.2.1主回路設計
3.2.2主要器件的選擇
3.3可變電壓輸出設計
3.4程序的設計
3.4.1程序功能描述與設計思路
3.4.2程序流程圖
4測試方案與測試結果
4.1測試方案
4.2 測試條件與儀器
4.3 測試結果及分析
4.3.1測試結果(數據)
4.3.2測試分析與結論
參考文獻
附錄1:電路原理圖
附錄2:DC-DC相關計算
附錄3:源程序

II



降壓型直流開關穩壓電源A題)
本科組】
1系統方案
本設計以LM5117降壓控制器和CSD18532KCS NMOSFET場效應管為核心器件,搭建一個DC-DC同步整流降壓拓撲變換電路。實現5 V 固定電壓輸出,最大3A 電流輸出,紋波小于50mV,效率高于85%。搭建DC-DC直流穩壓器,并引入負載電阻測試功能,能識別電阻的大小來控制輸出電壓。
1.1 方案一
本方案采用純硬件的方式來識別電阻大小以及控制輸出電壓。測電阻時,采用將外接負載識別電阻作為運放的反饋電阻,通過電阻值的變化調節輸出電壓。通過后級運放輸出的高低電平信號來控制LM5117 的反饋引腳FB(0.8V參考電壓,低于0.8V出電壓上升,高于0.8V,輸出電壓降低)。通過調節幾個運放之間的放大倍數,從而實現輸出電壓與負載電阻的關系。
本設計采用純硬件方式,電路略微復雜,可靠性容易受運放影響,且在調試上會比較困難,識別控制精度較低。
1.2 方案二
本方案采用DC-DC加MCU 的方式,使用德州儀器(TI)高性能超低功耗處理器MSP430F5438A為核心控制。將外接負載識別電阻與參考電阻R 串聯分壓后,用單片機內部ADC 采集負載識別電阻兩端電壓大小,從而計算出該電阻阻值,之后配置外部DAC輸出相應的電壓值用于作為參考電壓。將參考電壓與LM5117輸出的反饋電壓用比較器進行比較。將比較器輸出端連接到LM5117的反饋引腳FB ,從而根據負載識別電阻大小精確控制輸出電壓大小。
本方案引入了MCU,增加了系統設計難度,但是具有高可靠性,高控制精度,以及高效率。

綜上所述,選擇方案二。

1




2系統理論分析與計算2.1 DC-DC變換方法
本設計中LM5117 采用的是同步整流,上管作為功率管,下管為續流管,在上管關閉后,由于兩端電流不突變,所以低管為電感續流,進而為外接負載續流。普通的開關電源芯片采用的是二極管續流,由于二極管有個PN結壓降(一般0.5V), 輸出電壓較小時隨著輸出電流增大,,在二極管上的損耗將會很大,這將極大的影響整個電源供電的效率。LM5117 將續流二極管換成了超低導通內阻NMOSFET,在大電流低電壓輸出時損耗會大大降低,從而提高電源系統的效率。
原理圖見附錄一。
2.2 穩壓控制方法
LM5117內置誤差放大器,通過比較器輸出電平給LM5117反饋引腳,進而調節輸出占空比,從而實現穩壓的功能。
本設計通過一個繼電器來選擇反饋電阻通道,根據外接是否有電阻來判斷默認選擇固定電壓反饋通道,在檢測到電阻后,控制DAC 的輸出電壓來與反饋信號進行比較,進而控制輸出電壓的穩定。穩壓控制電路原理圖如圖2.1。


圖2.1 穩壓控制電路

2.3 降低紋波方法
由于開關管不斷導通關斷,電感電容不停的充放電,從而產生了輸出電壓的幅度波動,可以適當提高開關頻率來降低紋波。本設計采用546KHz 開關頻率,為了達到較小的輸出紋波,選擇37uH輸出電感,并選擇了低ESR,470uF輸出電容來降低負載下的紋波,并通過合理的PCB 走線來降低走線紋波帶來的干擾。
原理圖見附錄一。
3電路與程序設計3.1系統總設計3.1.1系統總框圖
系統總體框圖如圖3.1所示:


圖 3.1 系統總體框圖

3.2主回路設計與器件選擇3.2.1主回路設計
TI公司的降壓控制器LM5117芯片和CSD18532KCS MOS場效應管為核心器件搭建DC-DC變換電路,作為負載主回路。
本設計采用LM5117做降壓控制器,輸出5V、3A 電流。開關頻率546KHz,開啟二極管仿真,相關參數計算見附錄二。
電路原理圖圖見附錄一。

3.2.2主要器件的選擇
DC-DC主回路采用德州儀器官方提供的LM5117 同步降壓整流芯片和超低導通電阻,高速NMOSFET—CSD18532 ,搭建降壓直流穩壓電源。以超低功耗單片機MSP430F5438A,為主控芯片,采用內部ADC采樣。LM393高速比較器,進行過流保護比較和電壓調節比較。模數轉換采用MCP4822為比較器反相輸入端提供參考電壓。XL4005作為輔助電源芯片提供3.3V供電系統。
原理圖見附錄一。

3.3可變電壓輸出設計
此設計是電源電壓可調的關鍵,通過從輸出端串聯兩個電阻分壓后反饋給比較器同相輸入端,比較器反相輸入端接DAC輸出電壓,通過調節DAC 輸出電壓值,從而改變控制閥值,并將比較器的輸出端直接接到LM5117 反饋引腳FB。當改變DAC 輸出電壓時,輸出電壓也會隨之改變。從而實現了電壓調節的功能,為外接負載識別電阻調節輸出電壓大小提供了基礎。
原理圖見附錄一。
3.4程序的設計3.4.1程序功能描述與設計思路

1、程序功能描述

本設計采用MSP430F5434A內置ADC采樣,根據公式(U0 = R / 1K)處理后,控制DAC輸出電壓作為參考電壓控制輸出電壓的大小,從而實現自動識別,自動控制的目的。不接負載識別電阻則默認選擇固定輸出電壓通道,當ADC檢測到有允許范圍內的阻值時,單片機控制繼電器選擇電壓可調通道,根據采樣的電阻值,來控制輸出電壓。

3.4.2程序流程圖

1、主程序流程圖


圖3.2主程序流程圖
4測試方案與測試結果4.1測試方案

1、硬件測試

1)輸入輸出電壓電流

測試方法:通過四個六位半高精度數字萬用表同時測量總輸入和負載輸出點處的電壓及電流。并以這些數據計算效率。

2)電壓調整率測試

在滿載(3A)條件下,根據題目要求,輸入電壓Uin從17.6V 調至13.6V,測量負載兩端電壓變化。并根據以下公式計算電壓調整率。

  公式(4-1)

3)負載調整率測試

在輸出電壓不變的情況下,從滿載變到輕載 時,測量輸出電壓的變化,并根據以下公式計算負載調整率:

                    公式(4-2)

4)紋波測試

用示波器交流檔測量輸出負載兩端,將負載加大至輸出電流3A,調節示波器電壓刻度,使測量到的信號(波形)在屏幕上占大約2/3 的比例,然后打開峰峰值監測,觀察紋波大小。

5)過流保護測試

將負載加大,當輸出電流達到3.2A ,輸出將會關斷,減小負載后,電流輸出又馬上恢復。

2、軟件仿真測試

1)測試ADC采樣是否正常。

2)測試DAC采樣是否正常。

3)根據ADC采樣值來控制DAC是否正常。

3、硬件軟件聯調

1)外加負載電阻時,能夠根據實際的阻值,輸出對應的電壓(U0 = R/1K)。

2) 測試去掉外接負載電阻后能否自動調回固定電壓輸出檔。


4.2 測試條件與儀器
測試條件:檢查多次,硬件電路必須與系統原理圖完全相同,并且檢查無誤,硬件電路保證無虛焊。
測試儀器:高精度的數字萬用表,數字示波器,大功率負載電阻。
4.3 測試結果及分析4.3.1測試結果(數據)
測試結果好下表所示:
輸入電壓
輸入電流
輸出電壓
輸出電流
效率
紋波
負載調整率
電壓調整率
17.60V
1.07A
4.98V
3.01A
87.75%
42mV
0.7%
0.1%
13.60V
1.25A
4.96V
3.02A
87.82%
36mV
16.00V
1.08A
4.96V
3.01A
87.68%
38mV
——
——
外接負載識別電阻與輸出電壓關系表:
外接負載電阻
1.00K
3.90K
7.80K
9.00K
10.00K
輸出電壓
0.83V
3.89V
7.84V
9.02V
9.98V

4.3.2測試分析與結論

分析:









      • 輸出電壓誤差小于0.1V。
      • 輸出電流具有過流保護,誤差低于0.1V。
      • 調整電壓,輸出電壓變化0.02V 電壓調整率低于題目要求。
      • 輸出電壓不變,輸出負載變化,負載調整率低于題目。
      • 5.01V輸出時,3A 電流輸出,輸入16V 系統效率高于85%。
      • 測試多個電阻值,均能按照題目公式輸出相應電壓。

結論:

綜上述,原理圖跟實物一致,實測參數滿足題目要求。本設計滿足設計要求。

參考文獻
[1]童詩白 第四版《模擬電路》
[2]北京航空航天大學出版社《MSP430超低功耗單片機開發實例》
[3]中國電力出版社《開關電源入門設計》

1





附錄1:電路原理圖


圖1系統總電路圖



1




附錄2DC-DC相關計算
定時電阻
輸出電感
電流檢測電阻
斜坡電阻 和斜坡電容 的關系:
自舉電容和自舉二極管的關系:
輸出電容
輸入電容
軟啟動電容的啟動時間
重啟電容器的啟動時間
輸出分壓器的關系:
附錄3:源程序


  1. #include <msp430x54x.h>
  2. #include "4822_SPI.H"
  3. #include "MSP430_ADC.H"
  4. float ADR=326.0;      //ADC采樣值
  5. int DAU = 3496;     //DAC輸出值
  6. float R=0.0;        // R 的值
  7. void main(void)
  8.               {
  9.                             WDTCTL = WDTPW | WDTHOLD;              // Stop watchdog timer
  10.                             Init_ADC();                    //初始化ADC
  11.                             _4822_IO_init();                //初始化DAC通信接口
  12.                             P2DIR |= BIT3;
  13.                             P2REN |= BIT3;
  14.                             P2OUT ^= BIT3;            //置低,選擇固定5 V 輸出
  15.                             while(1)
  16.                             {
  17.                                           ADC12CTL0|=ADC12SC;     //進行一次轉換
  18.                                           while(ADC12CTL0&0X0);    //等待轉換完成
  19.                                           ADR=ADC12MEM0;        //獲得采樣值
  20.                                           R= 10*ADR/(4096-ADR);     //獲得R的值
  21.                                           if(ADR < 100 || ADR > 2098 ) //上限設置為10.5k
  22.                                           {
  23.                                                         P2OUT &= ~BIT3;
  24.                                           }
  25.                                           if(ADR > 100 && ADR < 372) //0-1K
  26.                                           {
  27.                                                         P2OUT |= BIT3;
  28.                                                         DAU = 261-(1-R)*261;
  29.                                           }
  30.                                           if(ADR == 372)  //1K
  31.                                           {
  32.                                                         P2OUT |= BIT3;
  33.                                                         DAU = 261;
  34.                                           }
  35.                                           if(ADR > 372 && ADR < 682) //1-2K
  36.                                           {
  37.                                                         P2OUT |= BIT3;
  38.                                                         DAU = 661-(2-R)*400;
  39.                                           }
  40.                                           if(ADR == 682)  //2K
  41.                                           {
  42.                                                         P2OUT |= BIT3;
  43.                                                         DAU = 661;
  44.                                           }
  45.                                           if(ADR > 682 && ADR < 945) //2-3K
  46.                                           {
  47.                                                         P2OUT |= BIT3;
  48.                                                         DAU = 1046-(3-R)*385;
  49.                                           }
  50.                                           if(ADR == 945)  //3K
  51.                                           {
  52.                                                         P2OUT |= BIT3;
  53.                                                         DAU = 1046;
  54.                                           }
  55.                                           if(ADR > 945 && ADR < 1170) //3-4K
  56.                                           {
  57.                                                         P2OUT |= BIT3;
  58.                                                         DAU = 1436-(4-R)*390;
  59.                                           }
  60.                                           if(ADR == 1170)  //4K
  61.                                           {
  62.                                                         P2OUT |= BIT3;
  63.                                                         DAU = 1436;
  64.                                           }
  65.                                           if(ADR > 1170 && ADR < 1365) //4-5K
  66.                                           {
  67.                                                         P2OUT |= BIT3;
  68.                                                         DAU = 1811-(5-R)*375;
  69.                                           }
  70.                                           if(ADR == 1365)  //5K
  71.                                           {
  72.                                                         P2OUT |= BIT3;
  73.                                                         DAU = 1811;
  74.                                           }
  75.                                           if(ADR > 1365 && ADR < 1535) //5-6K
  76.                                           {
  77.                                                         P2OUT |= BIT3;
  78.                                                         DAU = 2186-(6-R)*375;
  79.                                           }
  80.                                           if(ADR == 1535)  //6K
  81.                                           {
  82.                                                         P2OUT |= BIT3;
  83.                                                         DAU = 2186;
  84.                                           }
  85.                                           if(ADR > 1535 && ADR < 1686) //6-7K
  86.                                           {
  87.                                                         P2OUT |= BIT3;
  88.                                                         DAU = 2556-(7-R)*370;
  89.                                           }
  90.                                           if(ADR == 1686)  //7K
  91.                                           {
  92.                                                         P2OUT |= BIT3;
  93.                                                         DAU = 2556;
  94.                                           }
  95.                                           if(ADR > 1686 && ADR < 1820) //7-8K
  96.                                           {
  97.                                                         P2OUT |= BIT3;
  98.                                                         DAU = 2920-(8-R)*364;
  99.                                           }
  100.                                           if(ADR == 1820)  //8K
  101.                                           {
  102.                                                         P2OUT |= BIT3;
  103.                                                         DAU = 2920;
  104.                                           }
  105.                                           if(ADR > 1820 && ADR < 1940) //8-9K
  106.                                           {
  107.                                                         P2OUT |= BIT3;
  108.                                                         DAU = 3296-(9-R)*376;
  109.                                           }
  110.                                           if(ADR == 1940)  //9K
  111.                                           {
  112.                                                         P2OUT |= BIT3;
  113.                                                         DAU = 3296;
  114.                                           }
  115.                                           if(ADR > 1940 && ADR < 2048) //9-10K
  116.                                           {
  117.                                                         P2OUT |= BIT3;
  118.                                                         DAU = 3696-(10-R)*400;
  119.                                           }
  120.                                           if(ADR == 2048)  //10K
  121.                                           {
  122.                                                         P2OUT |= BIT3;
  123.                                                         DAU = 3696;
  124.                                           }
  125.                                           Awrit(DAU); //DAC輸出參考電壓
  126.                             }

  127. }
復制代碼

完整的Word格式文檔51黑下載地址:
2016四川省電子設計大賽電源題LM5117設計方案論文.rar (214.82 KB, 下載次數: 69)


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

使用道具 舉報

沙發
ID:508266 發表于 2019-7-20 11:25 | 只看該作者
樓主,已經下載文件了,請問,MSP在這個實驗中的原理圖能給出來么?上面只有三張原理圖,沒有MSP430的引腳連接
回復

使用道具 舉報

板凳
ID:508266 發表于 2019-7-20 11:59 | 只看該作者
樓主能給一張實物圖么?
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产成人在线播放 | 久久久久久国产精品免费免费 | 天天操夜夜操 | 日韩在线精品视频 | 亚洲欧洲一区二区 | 亚洲精品久久久久久久不卡四虎 | 成人欧美一区二区三区黑人孕妇 | 蜜桃毛片 | 欧美久久一区二区三区 | 欧美一区二区三区 | 久久草在线视频 | 亚洲成人精品久久久 | 麻豆hd| 亚洲一区二区三区久久久 | 99热激情| 亚洲日韩中文字幕一区 | 亚洲精品免费在线 | 成人性视频免费网站 | 亚洲第一天堂 | 国产精品永久免费 | 日日日操 | 黄视频在线网站 | 在线不卡| 亚洲成人一区 | 久草视频网站 | 91精品一区二区三区久久久久久 | 成年人在线观看 | 欧美日韩一 | 日韩av一区二区在线观看 | 日韩在线免费视频 | 国产一区二区三区在线 | 久久成人综合 | 久久综合久 | 日韩a v在线免费观看 | 日韩欧美不卡 | 国产在线视频网 | 国产一级免费视频 | 亚洲视频在线看 | 日韩三区 | 牛牛热在线视频 | 国产精品夜间视频香蕉 |