<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于單片機的數(shù)控電流源設(shè)計

          基于單片機的數(shù)控電流源設(shè)計

          作者: 時間:2010-07-05 來源:網(wǎng)絡(luò) 收藏

          本文采用Protel 99 SE軟件系統(tǒng)進行PCB板的,Mp lab進行系統(tǒng)仿真

          4 源的程序?qū)崿F(xiàn)

          本文所采用的PIC16F877A是MICROCHIP公司開發(fā)的新產(chǎn)品,具有FLASH編程的功能,可以直接在上進行如暫停CPU執(zhí)行,觀察寄存器內(nèi)容等操作,是目前應(yīng)用最廣泛的一種PIC單片機。

          單片機程序所要實現(xiàn)的功能是:獨立鍵盤對PIC16F877A單片機輸入數(shù)據(jù),PIC16F877A單片機對獲得的數(shù)據(jù)進行處理,并送到10位數(shù)模轉(zhuǎn)換器TLC5615,實現(xiàn)對的控制。

          在這里采用的是C語言編程,其優(yōu)點是編寫代碼效率高、軟件調(diào)試直觀、維護升級方便、代碼的重復(fù)利用率高、便于跨平臺的代碼移植等。主程序流程圖如圖2所示。

          5 系統(tǒng)測試

          要求輸出范圍為0.2A-1A,恒流源模塊采樣電阻兩端電壓為200mV-2000mV,由電壓值可以推算出數(shù)模轉(zhuǎn)換模塊的參考電壓|Vref|至少為2V(Vref0)。本設(shè)計的Vref=-2.15V,輸出端模擬電壓范圍為(0-12)V,所以輸出電流為0.2A-1A。設(shè)計要求在0.2A-1A內(nèi)任意預(yù)值,本設(shè)計通過鍵盤輸入電流值送單片機,單片機根據(jù)輸入的鍵值,將模擬量轉(zhuǎn)換為數(shù)字量送給數(shù)模轉(zhuǎn)換電路,然后輸出模擬量。部分電流值及其對應(yīng)的理論和實際的數(shù)字量如表1所列。其中對應(yīng)理論碼值為輸入電流對應(yīng)數(shù)模轉(zhuǎn)換所需要的碼值,實際碼值為單片機根據(jù)輸入電流值處理后送到數(shù)模轉(zhuǎn)換器的碼值。

          表1所列的測試結(jié)果表明,本設(shè)計輸出的最大誤差為當(dāng)輸入電流為32mA時,輸出電流為33mA,誤差為1mA。而題目中發(fā)揮部分要求輸出電流變化的絕對值≤輸出電流的0.1%+1mA,即1.032,所以本設(shè)計測量出來的誤差值達到了設(shè)計要求規(guī)定的誤差值。

          6 結(jié)論

          本文所設(shè)計的電流源采用PID算法實現(xiàn)了量程可選、輸出可調(diào)、步進精確、紋波電流極小的功能,而且可將輸出電流預(yù)置值、實測值在LED上同時顯示。人機接口采用獨立鍵盤及LED顯示器,控制界面直觀、簡潔,具有良好的人機交互性能。其具有控制靈活,系統(tǒng)升級方便,控制系統(tǒng)的可靠性提高,易于標(biāo)準(zhǔn)化,系統(tǒng)維護方便、一致性好、成本低,生產(chǎn)制造方便等優(yōu)點。

          基爾霍夫電流相關(guān)文章:基爾霍夫電流定律



          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();