目前可穿戴電子設備市場正在快速增長,預測在2020年其市場將達到100億美元。眾所周知這些設備和電池都很小,因此我們需要進行精心的設計來保證設備的電池壽命能夠長達數月或者數年時間,而不是幾個小時或者幾天時間。這意味著我們需要關注從時鐘啟動到MOSFET開關切換操作之間所發生的每個細節。以下列舉了幾點對電池電量的計算精確到了每一分鐘,盡管有些想法對于節能的效果很小,但是有些卻很明顯。俗話說不積跬步無以至千里,方法多了對于節能的效果還是非常可觀的。
睡眠模式
假設一個設備實際上不能夠完全的關閉,那么對于節能最有效的策略可能就是讓設備盡可能的處于低功耗睡眠狀態。很明顯我們需要設置時間或者事件(如中斷)來將設備喚醒,如按下按鈕或者是肢體的運動。你可以通過多個參數來設置設備喚醒的頻率以及喚醒后的操作,你也可以設置動態睡眠間隔,每次睡眠時間根據具體情況而定。例如對于一個健康監測器,當我們活動的時候需要頻繁的監測和記錄相關數據,但是當活動變慢或者停止,監測的時間間隔可以適當增加,這樣可以節省電池電量。
與SPI方式不同的是I2C方式需要設計上拉電阻,這樣就增加了電能消耗。IC之間的管腳電容也會消耗電能,如果可能的話你應該盡量降低要傳輸的數據量。如果有四條通信線路,每個線路管腳電容5pF,電壓3.3V,運行頻率20MHz,僅管腳電容就將占據660μA電流(電流=0.5CVf,C是管腳電容,V是電壓,f是頻率),該管腳電容將是發送和接收的所有組合IC電容。這個電能與實際的IC電流相比可能是小巫見大巫,但是并非總是如此,這還與設備的功能有關。這也正說明了為什么高集成芯片是最高效的,對于外設、RAM和Flash的訪問都是在芯片內部完成的,這樣就有效的避免了管腳電容。最后大部分管腳電容都是由ESD保護二極管引起的。
電源效率
想要最大化效率,那么為開關電源選擇一個合適的開關穩壓器就是其關鍵因素,特別是同步穩壓器效率可能超過95%。當然不僅是總體效率,待機效率也是非常重要的,因此非常有必要了解設備不同模式下的電流,計算不同電流等級下的開關穩壓器效率之后確定不同模式對總體功耗的影響。目前市場上有一些非常不錯的穩壓器,例如Analog Device ADP5301降壓穩壓器,其無負載靜態電流可低至180nA,而且支持遲滯工作模式。在低負載時切換為短脈沖借助外部電感為輸出電容充電,然后恢復為靜態電流工作模式。根據輸入和輸出電壓在1μA電流時,低靜態電流可以幫你提高效率高達80%。當然實際中效果可能會低于這個值,但是效率依然高于40%。它提供的電流可高達0.5A,并且有一個可以借助外部固定電阻設置輸出的管腳。老式穩壓器在無負載時就消耗幾毫安的電流,因此這款穩壓器還是相當不錯的。
如果你正在使用的開關穩壓器有外部MOSFET,注意MOSFET開關時間會造成嚴重的損耗。從非導通到導通之間的轉換是開關MOSFET消耗功率最大的時刻。當它完全打開時電壓降通常會非常小因此功率損耗也會很低,然而非完全開啟會導致明顯的壓降,并且伴隨非常大的電流。因此如果你想將晶體管在這個狀態的時間最小化,你需要選用快速開關器件和低柵極電容,而且你還需要一個低導通(ON)電阻。
電源關閉
如果在睡眠模式下將電源關閉看你能否將電源電容保持很小,電容需要消耗電源進行充電,如果在睡眠模式下將電源關閉那么電容中存儲的能量就會被浪費掉(除非下次啟動時能量依然保存在那里)。舉個例子,在3.3V的電源電路中一個1μF電容每秒關閉100次將消耗165μA(計算公式同上)。很多IC在關閉或者睡眠模式下的功耗則更低,因此在睡眠狀態下保持電路供電似乎是更好的選擇,而不是將電源直接關閉。但是以下情況除外,就是你用的器件沒有睡眠模式或者睡眠模式下的電流不是很低。如果你使用100nF的電容替代1μF的電容將會節省很多能量。
低電源電壓
即使設備消耗的電流不低,但是在更低電壓條件下設備消耗的功率也會有所降低。如果一個微控制器是由1.8V驅動而不是3.3V,那么在相同電流下功耗會降低為一半。通常情況下數字設備在低電壓情況下也會消耗更低的電流,因此就進一步降低了功耗。請注意這時最大時鐘頻率也相應的降低了——在較低電壓情況下最大時鐘頻率也相應降低是正常現象。因此盡管電流降低了,但是運行微控制器代碼的時間確翻倍了。
舉個例子,Microchip nanoWatt XLP PIC24F16KA102微控制器驅動電壓是3.3V,運行頻率2MHz,消耗電流695μA,而在1.8V情況下只需要消耗電流363μA,功耗減少了70%——節能效果很明顯。然而在3.3V條件下微控制器的運行頻率是32MHz,而在1.8V條件下最大時鐘頻率也只有8MHz。
時鐘頻率
選擇適合應用的時鐘頻率,而不是最快的就是最好的。等到代碼運行完畢后我們可能才會知道哪個頻率才是合適的,大多數微控制器都有可調節的時鐘倍頻器,可以根據應用程序代碼來改變時鐘頻率。如果微控制器代碼是執行代碼和返回進入睡眠模式之間的限制因素,那么最快的時鐘可能是最高效的。然而一些其他操作實際上會降低速度,微控制器會“標記時間”進入睡眠狀態,我們可以通過定期的中斷來將微控制器喚醒。
另一種方法是,當處理器處于“等待”狀態時我們可以顯著降低運行時鐘頻率,當有事情做時再回到原來的時鐘頻率。理想情況下我們應該選擇睡眠模式,但是時鐘啟動和等待時鐘穩定期間會浪費功耗,因此這意味著在某些情況下睡眠模式并不是最好的選擇。
時鐘啟動
在等待系統時鐘穩定的過程中會浪費一些功耗,如果代碼能夠在時鐘建立期間就可以運行那么就會帶來一些改善,但是如果某部分電路需要穩定精確的時鐘,那么處理器不得不等待,這就導致能量浪費。因此某些微控制器生廠商設置了快速時鐘,實現快速啟動并穩定。
32位微控制器
每個設計都需要采用32位控制器嗎?它們好像已經滲入到各個方面,但是實際負責的工作卻沒那么多。采用16位或者8位控制器可能更加的高效。這取決于運行的代碼和編譯器的效率。如果使用藍牙或者網絡接口,那么更大的存儲器空間是必需的,應該采用16位或者32位處理器。采用TCP/IP協議的Web服務器需要使用32位處理器。編寫好的代碼可以降低資源消耗和功率消耗。
支持更大數據帶寬的處理器在很多方面消耗的功率都比較多。訪問32位的RAM和Flash比訪問16位的存儲空間所消耗的功率更高,而且越大的存儲空間漏電流也會隨之增加。這需要我們設計和編寫高效的代碼結構以及避免選擇那些擁有多余存儲空間的處理器,在存儲容量夠用的前提下將其降到最低。
如果存在RF無線接口,如智能藍牙,我們需要考慮到傳輸距離。不僅可以通過低功耗發射來節省功耗,而且接受部分可以設置可調節的靈敏度,當靈敏度較低時所需的功耗也會降低。舉個例子,Nordic Semiconductor nRF52832在高靈敏度時消耗電流10.9mA,而在正常靈敏度時只消耗6.1mA。
自定義IC
最根本的低功耗解決方案可能是采用完全自定義IC芯片,僅設計所必需的電路。無需驅動片外設備的電路消耗的功耗更少,然而對于開發一款產品而言這是最慢也是最貴的方式。這可能就是為什么康斯登(Frederique Constant)智能手表電池壽命能夠長達2到3年而Fitbit Flex智能手環卻只能持續3到5天的原因吧。
總結
當我們設計一個低功耗系統時有很多方面需要考慮,我們應該設計一個電子表格,列舉出系統所需要的所有部件,電流消耗,占空比要求,電壓和總功率消耗。對于每個具體設計大體計算出功率消耗,找出某些必備信息的唯一方法就是實際動手搭建一個系統并且進行相應測試。
-
微控制器
+關注
關注
48文章
7576瀏覽量
151725 -
低電壓
+關注
關注
5文章
128瀏覽量
29863 -
可穿戴設備
+關注
關注
55文章
3818瀏覽量
167151
發布評論請先 登錄
相關推薦
評論