基于單片機的恒流源設計_第1頁
基于單片機的恒流源設計_第2頁
基于單片機的恒流源設計_第3頁
基于單片機的恒流源設計_第4頁
基于單片機的恒流源設計_第5頁
已閱讀5頁,還剩21頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 基于單片機的恒流源設計摘 要恒流源在日常生活中扮演著重要的角色,很多電子設備需要工作時候的電流處于穩定狀態。我們把可以保證給工作中負載供給恒定電流的電源叫做恒流源。恒流源的用途很豐富,它能夠在脈沖或者差動放大電路中產生作用,同樣也能夠作為它的有源負載,又可以提供給放大電路偏流用來使它的靜態功能工作點處于穩定。本文介紹了一種基于AT89C51單片機的數控恒流源的研制,該系統主要是由單片機系統電路、DAC轉換電路恒流電路。設計的恒流系統具有精度高、穩定性高的特點。在數字輸入信號部分主要是利用單片機輸出的數字量同時配有按鍵數字鍵控功能。DAC轉換模塊將單片機輸出的數字量轉換為模擬量,以作為恒流電路

2、的基準電壓。恒流電路部分以集成運放和達林管組成的電流負反饋電路來實現電流的恒定輸出。本設計為了增加人機交互采用數碼管顯示,可以使得數控恒流的效果更加直觀。本文闡述了精確實現恒流源的原理設計、完整的硬件原理圖和軟件流程圖,并對部分軟件模塊的設計思想進行分析。與此同時,也對生活中的可實現性進行仔細測試和仿真。關鍵詞:AT89C51;單片機;DA轉換;恒流源。A study of the constant current source based on MCUAbstract Constant current source in everyday life plays an important ro

3、le in many electronic devices need to work in a stable state when the current. We can guarantee that the work load to a constant current power supply is called the constant current source. Constant current source uses a very rich, it can in the differential amplifier circuit in the pulse or an effec

4、t, it also can be used as an active load, and can be used to provide bias current to the amplification circuit of the static function of the operating point so that it is stable. This paper introduces a numerical constant current source AT89C51 microcontroller development, the system is dominated by

5、 single-chip system circuit, DAC converter circuit constant current circuit. Designed constant current system with high precision, high stability characteristics. In the main part of the digital input signal is digital output using the same chip with digital keying function keys. DAC conversion modu

6、le microcontroller digital output is converted to analog, as the reference voltage constant current circuit. Part of an integrated constant current circuit op amp tubes and Darling current negative feedback circuit to achieve a constant current output. The design of human-computer interaction in ord

7、er to increase the use of digital tube display, you can make the effect more intuitive numerical constant. This paper describes the precise design principles to achieve a constant current source, a complete hardware schematics and software flow chart, and part of the software module design ideas for

8、 analysis. At the same time, but also the life of the realization careful testing and simulation.Key words:AT89C51;SCM; DA conversion; constant current source第一章 課題背景所謂恒流源必是輸出電流與端電壓無關、無溫漂,同時其輸出電流應該與所連接的外部結構無關。換句話就是輸出電流保持穩定。具體描述如下:(1) 輸出電流恒定且與負載變化無關; (2) 基本無溫漂; (3) 內阻趨向于無窮大。恒流源在電子線路和模擬集成電路中是應用最多的電路單元

9、之一,主要用于:(1) 提供偏置。晶體管電路通常需要專門的偏置電路提供偏置電壓以達到穩定靜態工作點的作用;(2) 集電極有源負載。從上述表達式可知,提高增益的一個方法就是增大負載的電阻,但是這樣不僅會造成負載上的壓降上升,使輸出電壓的動態范圍減小,而且從成本和工藝上考慮也是很不合算。各方考慮主要利用三極管恒流源來代替集電極負載電阻,便組成了有源負載集電極放大器。 (3) 提高差分放大電路性能。用恒流源三級管充當差分放大電路一個阻值很大的長尾電阻Re,它的優點很多,因此,這種方法在集成運放中被廣泛采用。(4) 用恒流源的基準電壓電路是集成穩壓器的重要組成部分。本設計是一個具有可數控、高精度、高穩

10、定度的單片機數控恒流源。可以控制輸出電流范圍為03A,可以滿足各類要求。第二章 恒流源設計的原理恒流源是一個應用最多的設計單元之一,電路部分通常分為:以集成運放作為核心元件的集成運放恒流源、以場效應管為核心部件的MOS管恒流源、以晶體管為核心部件的晶體管恒流源。 圖1 晶體管恒流源 圖2 場效應管恒流源 圖3 集成運放恒流源 由于使用晶體管恒流源主要考慮到晶體管的節電壓Ube基本恒定,因為它主要是三極管構成。上述晶體管電流輸出:I=Is = Ube/Rs,具體恒流輸出過程如下。 -(1) -(2) -(3)(1) 晶體管恒流電路優點:無特殊的元件使得設計簡單而且可行性較高,電流輸出可以通過Rs

11、控制。(2)晶體管恒流電路優點:元器件本身差異造成不同管子的晶體管節電壓Ube差距較大,個體差異使得晶體管的節電壓Ube即使是同一批次的產品仍會有一定的波動。因此無法滿足高精度的要求。場效應晶體管作為主要組成部件的恒流電路,如圖2所示。Rg1、Rg2分壓,穩定G點電位。由于MOSFET的G電壓被鉗位.當流過MOSFET的電流有增大的趨勢時,負反饋電阻上的壓降增大,使MOSFET截止趨勢增加,電流下降。同樣的當流過MOSFET的電流有減小的趨勢時,負反饋電阻上的壓降降低,使MOSFET導通趨勢增加,電流升高,從而達到恒定輸出的作用。具體恒流輸出Id如下: -(1) -(2) -(3)集成運放恒流

12、源的主要組成部件是運算放大器和晶體管。主要運用 “虛短”和“虛斷”,使用運放作為反饋的集成運放恒流源的主要特性是高精度。典型的運放恒流源如圖(3)所示,具體恒流輸出如下: 集成運放的虛斷特性: 集成運放的虛短特性: 集成運放恒流源恒定輸出:集成運放和晶體管作為主要部件的恒流源電路可以擴大輸出電流的取值范圍,同時溫漂更小,恒流性能更高,尤其在負載一端需接地,要求大電流的場合,獲得了廣泛應用。本設計最后采用的是精密的運算放大器和大功率的達林頓管組合,運用電流深度負反饋,達到恒流的目的。第三章 恒流源系統的硬件結構本文介紹的設計硬件圖如圖4所示,硬件電路部分主要是由單片機最小系統、DAC模塊、恒流電

13、路、數碼管顯示電路、按鍵控制電路和電源模塊電路組成。系統框圖如下所示:圖4 恒流源設計系統框圖3.1單片機最小系統電路單片機的應用正在不斷深入,它往往作為一個核心部件,不可以孤單的行使職責。要與其他除它之外的電路相搭配,只有這樣才能夠讓單片機正常工作。這種能使單片機工作的最簡電路,我們叫做單片機最小系統。就51而言,它的最小系統主要包括三個部分。下面給出一個51系列單片機的最小系統電路。 圖5 單片機最小系統3.1.1復位電路復位電路就是把電路恢復到起始狀態的電路。能夠在系統上電時給予復位信號,并且會一直等到系統的電源不再改變為止才會撤離所給的復位信號,這就是復位電路的功能所在。復位后的CPU

14、的主要特征是各IO口呈現高電平。對于單片機而言基本的復位操作是將單片機的復位引腳RST上給定一個高電平信號并讓該信號維持在2個機器周期以上,便可觸發系統復位中斷從而將系統復位。單片機系統的復位方式有:按鍵復位和上電復位。(1)按鍵復位復位電路最簡單的方式就是通過按鍵復位直接在單片機復位引腳RST上加入高電平。單片機的復位引腳接至電阻R1一端,電阻R1另外一端接地。電路如下所示。常用的途徑是在復位引腳端和正電壓之間安裝復位按鍵。當給一個力使按鍵被壓迫向下,單片機的復位方位就會保持Vcc。假如保持按下10ms即可讓系統實現復位。 圖6 按鍵復位 圖7上電復位電路 圖8復位電路(2)上電復位上電復位

15、的電路圖如圖7所示,具體實現方式如下:系統上電瞬間單片機復位引腳RST電壓時間變化曲線如下所示。從曲線上易得當系統在一剎那完成上電,根據電容工作原理特性,它兩端的Uc1不可能實現迅猛的變化,故電源電壓全部加到R1上,然后電容C1開始充電,時間常數T=R1*C1,此時電容電壓逐漸增加,R1兩端電壓逐漸降低,如果R1兩端電壓從高電平到低電平持續時間達到2個機器周期,即可實現單片機復位。 圖9:Urst電壓時間曲線。在本設計中采用了按鍵復位和上電復位的兩種模式(如圖8所示)上電復位完成系統初始化,同時增加的手動按鍵復位可以方便調試使用。3.1.2晶振電路在單片機最小系統里晶振的作用是給單片機輸入時鐘

16、信號,這個時鐘信號就是單片機的工作速度。單片機工作的最小時間計量單位就是由這個晶振決定的。圖10晶振電路晶振電路電容選擇的原則(1)C1,C21,因為每一種晶振都有各自的特性,所以最好按制造廠商所提供的 數值選擇外部元器件。(2)在誤差允許的區域內,C1和C2值都是越小,實現的功能就越精確,如果C1和C2值比正常數值大時,可能會使振蕩器更加穩定,可是也會增加響應的時間。3.2 TLC5615 DAC簡介及其與單片機的接口電路3.2.1 TLC5615芯片的結構框圖與特點TLC5615是一種兼容SPI和Micro-Wire串行總線接口的CMOS型的10位DAC芯片,它帶有緩沖基準輸入(高阻抗)的

17、電壓輸出數字/模擬轉換器(DAC),性能比早期電流型輸出的DAC要好,只需要通過3跟串行總線就可以完成10為數據的串行輸入,易于和工業標準的微處理器或單片機接口,適用于各種供電測量的測試儀表、移動電話,也適用于數字失調與增益調整以及工業控制場合。下面簡要介紹TLC5615芯片各個引腳的功能。 圖11 TLC561引腳圖 1 DIN:數字信號輸入端;2 SCLK:串行時鐘輸入端;3 CS :片選端,低電平有效;4 DOUT: 串行數據輸出;5 AGND:模擬地;6 REFIN:基準電壓輸入端;7 OUT:DAC轉換模擬信號輸出端;8 Vcc:正電源電壓端。3.2.2 TLC5615的使用方法 圖

18、12 TLC561時序圖 由TLC561時序圖可以看出,當片選CS信號有效時,數字信號輸入DIN由時鐘SCLK同步輸入或輸出,數據傳送時MSB在前LSB在后。在時鐘信號SCLK的上升沿將數字信號,片選CS的上升沿把數據傳送至DAC寄存器。當片選信號CS無效時,DAC芯片使能禁止。此時無法進行DAC轉換。3.2.3 TLC5615與單片機的接口電路 圖13 TLC5615與單片機的接口電路D/A轉換器的片選端口(CS)連接至單片機的P1.1口。D/A轉換器的SPI總線時鐘端口(SCLK)連接至單片機的P1.2口。D/A轉換器的數字輸入接口(DIN)連接至單片機的P1.3口。本接口的硬件電路十分簡

19、單,易于理解,工作穩定,TLC5615三線接口與SPI、QSPI以及Micro-wire串行標準兼容,一般只需要執行2個周期(一個寫周期傳送一個8位二進制數),就可以完成DAC操作,顯然轉換速度很快。采用接口接單的D/A轉換器TLC5615,其輸出電壓公式:(為基準電壓,n為單片機控制輸出端的10比特數據。)3.3 恒流電路 本設計采用集成運放構成的深度負反饋恒流源電路,見圖12。電路中,恒流源的參考電壓一般讓它等于數字與模擬信號轉換之后的輸出電壓,主要是兩部分組成電壓跟隨器,根據輸出的獨特形式便可得到輸出。因為跟隨器是作為負反饋來實現作用的,所以說良好的穩定性是電流源的閃光點。R3可采用大功

20、率的水泥電阻,阻值1歐,功率5W,能承受較高溫度,使其溫度影響減至最小。圖14 恒流電路具體恒流過程分析:假設負載電阻R2變化從而會導致IC增加所以導致流過R3的電流增加而使Ur3增加,反饋到運算放大器的N端從而減少運算放大器的輸出,從而減少達林頓管的導通性相當增大了輸出電阻而使IC減少直到達到原來的平衡故使之恒流。R2 ICUr3 UFeedback UR4IBIC由于反饋的作用而使此電流恒定。即IB恒定有由于IC=*IB而IB恒定所以IC恒定故恒流由深度負反饋中的虛斷原理知,流過電阻R3的電流IR為:IR=VIN/R3 其中,VIN為運放LM358的正向輸入端電壓,而取R3=1。那么通過R

21、2的輸出電流IO=IR,則負載電流只與固定的輸入電壓VIN的大小有關。則通過控制輸入電壓VIN的大小來控制輸出負載電流的大小,這也就是本系統設計的原理所在。3.4 數碼管顯示電路 數碼管依次由a,b,c,d,e,f,g,dp8段,從位選的角度來說他們又可以分為共陰極和共陽極.位選信號時數碼管選通信號,當某個數碼管位選通是,該數碼管就可以發光,當輸入不同的顯示筆段時候,又可以顯示不同的數字和字母這就是數碼顯示的控制方法。本設計在顯示方面采用了數碼管的動態顯示的方法。數碼管段選信號輸入時運用了輪詢的方法,在輪流顯示過程中,每位段碼顯示時間為12ms,由于人的視覺暫留現象不會感覺到這種閃爍現象。其電

22、路如下:圖15 數碼管顯示電路3.5 按鍵控制電路本系統的單片機的按鍵步進控制方式是使用I/O口的狀態表示。本設計用的是P2.4和P2.5口,程序循環執行鍵盤掃描任務,當某一端口低電平0,則表示有按鍵鍵入。圖16 按鍵控制電路3.6 電源電路在本設計的系統中,線性電壓的控制輸出,作為電源,為單片機、DA轉換器、運放和達林頓功率管提供工作電壓或參考電壓等。典型的電源電路的系統框圖如下所示: 交流220變壓器降壓整流濾波穩壓輸出圖17 電源模塊電路框圖在本設計中采用的電源設計電路如下所示:圖18 電源模塊電路第四章 系統的軟件設計4.1 總體流程圖本軟件設計以AT89C51為控制核心,實現可數控、

23、高精度的恒流源輸出。程序中分幾大模塊:數碼顯示模塊,DAC模塊,按鍵判斷部分。首先單片機判斷初始值的大小并控制DA轉換器輸出并在4位LED上顯示其輸出給定值的大小;如果有按鍵“” 按下,則單片機控制DA的輸出值以步進10mV增加;如果有按鍵“” 按下,則單片機控制DA的輸出值以步進10mV減少,則從DA輸出到恒流源電路的負載輸出(控制電阻R3=1),相應的電流輸出也增或減10,并且LED能及時顯示其輸出給定值大小。程序流程圖如下:初始化是否有“”按下?是否有“”按下?控制DA輸出值,并顯示輸出電流大小(mA)是否有預置值?按鍵+10按鍵減10YYY 圖19 軟件流程圖4.2子程序流程圖4.2.

24、1 數碼顯示子程序流程圖定義共陰極字符列表求出所顯示數據的千位、百位、十位、各位上的數09段選顯示(查字符列表),為選為高電平這該位選中并顯示相應的數,延時10mS,位選為低電平,該位不顯示。循環執行 圖20 顯示子程序流程圖 4.2.2 D/A轉換子程序流程圖本系統中的DA轉換器TLC5615在工作時,只有當片選 EMBED * MERGEFORMAT 為低電平時,串行輸入數據才能被移入16位移位寄存 當 EMBED * MERGEFORMAT 為高電平時,當SCLK時鐘每上升一次,DIN的一位數據就會隨之放進一個十六位的寄存器中。 電源模擬電路輸入接 口 數 / 模轉換器數字量輸入Vi模擬

25、電壓輸出參考電壓Vref圖21 D/A轉換子程序流程圖4.2.3 按鍵控制子程序流程圖一般情況下,一個按鍵按下過程中存在著機械抖動,在本設計中主要采用的是軟件延時消除按鍵過程的抖動,具體的軟件流程圖如下所示: 圖22 按鍵控制子程序流程第五章 軟件仿真圖23 protues軟件仿真圖第六章 系統測試與誤差分析6.1測試儀器 FLUCK數字萬用表; 數字示波器; PC機; 電阻箱,調整范圍(09999);6.2測試數據和誤差分析系統測試以旋轉式電阻箱為負載,測試時,把萬用表與負載串聯。1, 設定輸出電流為20mA。小范圍改變負載RL大小,輸出電壓在10V以內變化:給定電流:I (mA)負載大小:

26、RL()輸出電壓:VO(V)輸出電流IO(mA)2010.01102020.04202030.06202040.08202050.10202060.1220表1 負載變化恒流數據表2, 大范圍改變負載大小,給定值為I=20mA,實測輸出電流值:RL()輸出電壓值UO(V)輸出電流值IO(mA)110021.719.73100021.621.690020.122.380017.922.3770015.622.360013.322.250011.122.24008.8022.03006.6022.02004.3021.51002.1021902.0322.6801.8122.6701.5822.6

27、601.3522.5501.1222.4400.8922.3300.6722.3200.4422100.2222表2 負載變化恒流數據表3,步進為10mA,負載電阻為6時給定電流值和輸出值:給定電流值I(mA)負載兩端電壓UO(V)輸出電流值IO(mA)100.0610200.1220300.1830400.2440500.3050600.3660700.4168.33800.4778.33900.5388.331000.591021100.641131200.701221300.761281400.821381500.881482000.5971992100.6272092200.65721

28、92300.6872292400.7232412500.7525010003.0091002表3 數控恒流數據表結 論 本次設計主要是針對電子設備在工作中要求供給的電流保持恒定不變,主要研究單片機的數控恒流源的研制。系統的測試和誤差分析,借助萬用表和可變電阻箱。在本次設計中遇到了數據的測試、器件等的選擇和使用等的問題,查閱資料和詢問老師同學而得知。在這次設計中我不僅學到了很多之前未知的知識,而且對所學的基礎理論、基本技能和專業知識的認識有了進一步鞏固和加深,同時對單片機系統有了深度的學習。該設計在很大程度上減少了不必要的誤差,并且大大提高了工作的效率。參考文獻1 歐陽文,ATMEL系列單片機的

29、原理與開發實踐,中國電力出版社,20072 康華光,電子技術基礎(模擬部分 第五版),高等教育出版社,20053 康華光,電子技術基礎(數字部分 第五版),高等教育出版社,20054 全國大學生電子設計競賽組委會,全國大學生電子設計競賽獲獎作品選編,北京 理工大學出版社,20055 田良、王堯,綜合電子設計與實踐,東南大學出版社,2002 6 吳戈、李玉峰,案例學單片機C語言開發,人民郵電出版社,20087 劉坤、宋戈、趙紅波,51單片機C語言應用開發技術大全,人民郵電出版社,20088 侯玉寶、陳忠平、李成群,基于Proteus的51系列單片機設計與仿真,電子工業 出版社,20089 劉坤、

30、高征紅,Protel99SE電路設計實例教程,清華大學出版社,200810郭惠、解書鋼,Protel99SE常用功能與應用實例精講,電子工業出版社,2008118-bit Microcontroller With 4K Bytes Flash AT89C51. ATMEL,2000128-bit Microcontroller With 8K Bytes Flash AT89LV51.ATMEL,2000致 謝結束本論文之際,我謹對銅陵學院電氣工程系王開全老師致以崇高的敬意和由衷的感謝。本論文是在導師王開全老師的精心指導下完成的。在整個設計研究過程中,導師在各方面給予了,給我指導查閱文獻和解決

31、難題使本論文得以順利完成。老師的知識儲備和經驗都很豐富、思維敏捷,并在我研究中不斷的給以鼓舞和不倦的教誨。從課程的學習、論文的選題、課題的研究到論文撰寫等等不僅凝聚著導師的心血和汗水,還有同學的友好幫助。老師待人誠懇,心胸寬廣,精深的知識儲備令我受益匪淺。同學友好積極給予相關需求,在此對我的導師和同學表示衷心的感謝!最后,對各位老師給我的論文審閱深表感謝,并渴望得到批評指正。附錄1 程序設計程序源代碼:#include#define uchar unsigned char#define uint unsigned int#define Vref 2.048void delay(unsigned

32、 char time); /*聲明延時函數,延時n ms*/void TLC5615(unsigned int dat2); /* 聲明TLC5615轉換函數*/void display(unsigned int dat);sbit P20=P20;sbit P21=P21;sbit P22=P22;sbit P23=P23;sbit P24=P24;sbit P25=P25;sbit SCLK5615=P13; /*定義時鐘信號sclk的IO口*/sbit DATA5615=P12; /*定義數據輸入din的IO口*/sbit CS5615=P11; /*定義片選信號cs的IO口*/uint

33、 dat=1234,dat2; uchar DisplayData=0X3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07,0X7F,0X6F; /*09字形碼共陰極*/uint thous,hund,ten,num; /*數碼管要顯示的數值,即給定的電流值,以mA為單位*/void main()dat2=(float)dat/1000*1024)/2/Vref; while(1) /死循環 if(P24= =0) delay(1000); if(P24= =0) delay(1000); dat=dat+10; dat2=(float)dat/1000*1024)/2/Vref; /有按鍵加10 ; if(P25= =0) delay(1000);if(P25= =0)delay(1000); dat=dat-10; dat2=(float)dat/1000*1024)/2/Vref; /有按鍵減掉10; if(dat3000) dat=0;display(da

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論