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

          新聞中心

          EEPW首頁(yè) > 電源與新能源 > 設(shè)計(jì)應(yīng)用 > 利用DS4303或DS4305構(gòu)造精密電流源

          利用DS4303或DS4305構(gòu)造精密電流源

          作者: 時(shí)間:2012-02-13 來(lái)源:電子產(chǎn)品世界 收藏

            引言

          本文引用地址:http://www.ex-cimer.com/article/128917.htm

            有些應(yīng)用中需要可調(diào)節(jié)控制另一系統(tǒng)或?yàn)槠涮峁┢?。在產(chǎn)品的有效使用期限內(nèi)可能只需要一次電流調(diào)節(jié),多數(shù)情況下是在生產(chǎn)線(xiàn)上或工廠校準(zhǔn)期間進(jìn)行調(diào)整。目前,電流設(shè)置可以通過(guò)人工挑選電阻、調(diào)節(jié)電位器或利用DAC實(shí)現(xiàn),無(wú)論是元件成本還是校準(zhǔn)費(fèi)用,這些方案都相對(duì)比較昂貴。

            另外,有些應(yīng)用可能需要靈活調(diào)整,要求大電流范圍(中等精度)或小范圍(高精度),還要足夠簡(jiǎn)單以保持系統(tǒng)的穩(wěn)固性。

            設(shè)計(jì)挑戰(zhàn)

            把/DS4305的高精度電壓輸出轉(zhuǎn)換成,只需要額外增加三個(gè)元件:一路運(yùn)放、一只晶體管和一個(gè)電阻,如圖1所示,采用最便宜的元件即可構(gòu)建電路。附加電路利用運(yùn)放反饋,把/DS4305輸出電壓轉(zhuǎn)換成獨(dú)立的電流源。只要晶體管保持正確偏置,就可以控制電流源并保持高精確電流輸出,如圖2所示。電路中的誤差源主要包括:運(yùn)放失調(diào)電壓、較低的晶體管增益或漏電流等,這些都可以通過(guò)DS4304/DS4305的調(diào)整消除掉。一旦完成調(diào)整,VIN可以懸空,電流輸出IOUT將保持在所要求的數(shù)值。

            上述電路中,需謹(jǐn)慎選擇電阻R,不僅用其設(shè)置電流范圍,還需保證晶體管工作在線(xiàn)性區(qū)。電流高于特定工作點(diǎn)時(shí),可能引起晶體管飽和,導(dǎo)致最大電流下降。相反,如果運(yùn)放擺幅VCC至GND,則在電流范圍的低端,電流設(shè)置可能導(dǎo)致電壓無(wú)法足以驅(qū)動(dòng)晶體管開(kāi)啟,使晶體管處于截止?fàn)顟B(tài)。為了防止這種情況,運(yùn)放必須提供一點(diǎn)負(fù)壓,以保持最小電流下的正常工作。盡管電路存在缺陷,但在80%以上的電流范圍內(nèi)仍可保證理想工作。

            考慮到晶體管特性并非理想,計(jì)算R時(shí)可以設(shè)置目標(biāo)范圍和精度。設(shè)置R后,再通過(guò)調(diào)節(jié)/DS4305的VIN電壓調(diào)整輸出電流。表1給出了一些兼顧電流和精度的R推薦參數(shù)。



          關(guān)鍵詞: 電流源 DS4303

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(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); })();