單一可交換式8位元或32位元的微控制器,提供超低功率運作、通用序列匯流排(USB)連線、圖形顯示支援及卓越的測量準確度,將使得裝置設計人員能夠以低成本建立功能更完整的產品。
這些裝置非常適合工業控制、設備及醫療應用,或是須要進行大量精密類比的任何其他應用。這些元件具有高解析度的類比數位轉換器(ADC)及數位類比轉換器(DAC)模組可供設計人員選擇,而某些廠商所開發的元件也具有整合至微控制器的通用型運算放大器與轉阻抗放大器。
這些高度整合微控制器具有豐富的周邊組合,包括USB 2.0控制器、多種序列介面和外接式匯流排介面。而醫療應用的USB堆疊層提供多種類別的支援,包括大量儲存裝置(MSD)、人機介面裝置(HID)、通訊裝置群組(CDC)及個人醫療保健裝置類別(PHDC),而醫療連線程式庫則提供裝置間的通訊(IEEE 11073相容)。
ADC模組設計至為關鍵
在任何的計量與醫療測量應用中,關鍵決策與成功要素在於ADC模組。計量表與監視器會依類比的定義,將實際的訊號轉換到處理、記錄與反應的數位電子領域。
微控制器讀取和ADC模組轉換最常見的測量數據為電壓與電流,因為所有的感應器都可以轉換到此電子領域。對系統設計人員而言,針對其應用使用最適合的ADC模組,進而選擇正確的微控制器,並不像尋找訊號精細度那樣直接。
選擇正確的微控制器產品,首先要考量解析度(但也須分析會造成測量誤差的速度、線性、雜訊及其他要素),不過,其次是要了解ADC,並利用此模組將不良的影響降到最低,甚至善用這些要素發揮系統優勢。
電表和高精密度的醫療設備等應用必須測出極微弱的訊號。因此,ADC解析度通常是關鍵的參數,亦即10位元、12位元或16位元的解析度,而且是在考量應用設計時選擇微控制器的重要因素。
然而,所有的ADC都具有誤差,因為ADC實際上是將訊號依離散步階(稱為量化程序)數位化。因此輸出無法完全代表類比輸入的訊號。舉例來說,一個16位元的轉換器會為最低有效位元(LSB)提供76微伏特(μV)步階,藉此達到最大5伏特(V)的輸入VIN。因此,ADC只能以76微伏特的步階(76微伏特、152微伏特、228微伏特,依此類推)將數值數位化。在這種情況下,代表完整的測量方式,其精密度不會超過±0.5 LSB(±38微伏特)。
電表必須能夠精確測量大範圍的電流。一般的美規電表,必須能夠讀取範圍0.25~200安培(A)的電流,且準確度為1%。這等於800水平下(200/0.25)的電流範圍,且準確度為1%,相當於16位元的80,000(800×100)。在此電流範圍內,電表的最大電壓還要更小(<1伏特),而且與輸入電壓間的差距,會讓電壓準確度降低到約5微伏特的水準。
同樣地,在高精密度的醫療裝置中,例如小樣本(0.3μl)的血液樣本,血糖儀就需要較高的ADC精密度。此外,縮小可測量的電壓帶差輸入後,可以獲得比單端輸入更好的雜訊免除力(Noise Immunity)。ADC輸入訊號線可以當作天線,接收環境的電氣活動(雜訊)。如果採用單端輸入,將無法區分訊號與雜訊間的差別,但差動輸入(Differential Input)會讓兩種輸入方式共有同一個雜訊,反而可以藉此有效消除雜訊。實際上,差動輸入放大器並不完全相符,因此轉換結果可能會出現些許雜訊電壓。越接近理想的差動輸入放大器,越適合表達共模拒絕比(Common Mode Rejection Ratio, CMRR)。
ADC的速度(轉換時間)會依類型而有所不同。轉換時間與通道的數量成正比。如果是連續漸進式的ADC,轉換時間會隨著通道數的對數縮放。因為類比技術的速度在先天上就比數位慢,所以增加通道的數量,也會增加轉換所需要的時間。因此,必須在速度與精密度之間做取捨。
|
圖1 DAC會將與來自SAR的數位碼輸出相同之類比電壓提供給比對器,以便和輸入電壓進行比對。 |
這些連續漸進式ADC具有取得輸入電壓(VIN)、比對器、連續漸進式暫存器子電路,以及內部參照電容DAC的取樣及保持電路。DAC會將與來自連續漸進式暫存器(Successive Approximation Register, SAR)的數位輸出相同之類比電壓提供給比對器,以便和VIN進行比對(圖1)。
以電表為例,對訊號(電壓/電流具有主要基本頻率如50/60Hz,依國家而有所不同)進行取樣。必要的ADC取樣頻率,通常會註明為測量電源頻率的第二十一個諧波(50/60Hz)所需要的頻率。這種需求會導致高達2×21×60的取樣頻率需求,例如,2.52kHz或約400微秒(μs)。這表示所有必要的測量,都必須在400微秒以內完成。
不過,因為變流器線圈或類似的系統電路,也有可能導致失真的電流測量數據,而使需求較為嚴苛。之所以出現這種延遲,表示必須先完成先前的電壓轉換,才能在要求的時間內執行電流轉換。這種延遲會針對每個CT進行校準,但可能轉換速度會低於要求的5微秒。替代方案為具有可程式化同步硬體觸發機制的多個獨立ADC模組。
部分的ADC實作具有可程式化的轉換時間。可以減少取樣時間的任何選項,對轉換的準確度都有負面影響,因為這些選項會增加擷取誤差,而產生這種誤差的原因,在於積體電路無法在指定的時間內將ADC的輸入完全充電。
如果無法在時間內獲得取樣結果,可以減少SAR保留時間,不過這麼做可能會增加不正確的可能性。這些誤差的顯著性與ADC和實作無關,但其意義通常是要讓ADC盡可能有更多的轉換時間讓應用可以處理。
但其他許多內嵌式ADC在特性上會引發這些誤差,而且會降低準確度,包括偏移、增益、溫度偏移與非線性的性能。部分的ADC能夠減少校準時的偏移與增益。校準程序有取樣、比對與估計三個步驟,這些步驟可以用來調整轉換結果。
多數ADC會在端點出現部分非線性的情況,這是因為很難測量與參照相同的訊號。在產品電氣特性中通常有明確指出的零刻度和滿刻度誤差,可以套用在轉換結果的末端(圖2),只要利用這兩個誤差,即可計算接地與電源間的調整轉移函數(虛線)。另一種觀察這些誤差的方法,是利用偏移與增益。部分的ADC模組能夠利用預先決定的(透過校準)增益調整與偏移調整來調整結果,如此可以讓調整轉移函數更能表示真正的傳輸函數(實線)。
|
圖2 在產品電氣特性中通常有明確指出的零刻度和滿刻度誤差,可以套用在轉換結果的末端。 |
ADC的非線性誤差無法進行系統校正,而且必須交由模組設計人員解決。非線性有兩種類型:微分與積分。對許多控制應用來說,微分非線性(Differential Non Linearity, DNL)是測量ADC效能最重要的方式,因為這種測量方式代表ADC將輸入電壓微小的變化和代碼轉換中正確的變化建立關聯的能力。
DNL是每次轉換時電流編碼寬度(Current Code Width, CCW)及理想編碼寬度(Ideal Code Width, ICW)的差距。積分非線性(Integral Non Linearity, INL)可以透過強調電流與理想轉換電壓間的差距,來表示實際轉移函數中的曲度。許多的ADC能夠透過內部連接到ADC通道的嵌入式溫度感應器來測量晶片的溫度,如果溫度補償曲線為已知,通常只要控制產品開發週期的環境特性,即可整合溫度補償。
這些誤差可以彙總並表示為未調整總誤差(Total Unadjusted Error, TUE),這個數字通常會註明為LSB的數字。TUE是最大誤差(位於理想直線轉移函數的上方或下方),包括先前描述的DNL、INL、零刻度與滿刻度誤差,或是實際轉移函數到理想ADC的最大誤差。
ADC的有效位元數(Effective Number Of Bits, ENOB)為解析度與準確度的真正表示。這個數值可以顯示特定系統內提供精確資訊的位元數,亦即有多少結果是雜訊與訊號。利用公式1即可計算出這個數值:
ENOB=(SINAD-1.76dB)/6.02dB ............................公式1
其中的訊噪失真比(Signal-to-Noise Plus Distortion Ratio, SINAD)是有意義的訊息(訊號),以及背景雜訊(雜訊或誤差)。SINAD值不僅會受到ADC的設計與晶片整合的影響,也會受到印刷電路板(PCB)的配置與設計,以及其他分立裝置的選擇所左右。較大的SINAD數值,表示訊號較多且幾乎沒有誤差,也就是說,在測量以微伏為單位的訊號時,較大的數值可以改善結果資料的準確度。較小的SINAD數值,則代表系統內的資料會因雜訊而失真,而且會影響到準確度。
提高轉換結果解析度/準確度
了解ADC模組中電氣規格的資料,有助於根據系統需求做出明智的決策,但除此之外,還有許多技巧可以用來提高轉換結果的解析度與準確度。
第一個技巧稱為抖動(Dithering)。將少量的控制雜訊(0.5 LSB的高斯白雜訊)加入ADC輸入,可以強制讓訊號大於或小於最接近的解析度步階,如此可避免必須無條件捨去到下面步階的數值。轉換LSB的狀態會在0到1之間隨機擺盪,而不是維持在固定的數值。
處理程序會以略微增加的雜訊,換取延伸ADC可以轉換的訊號有效範圍,而不會全部以這種低階的中斷訊號(只會量化為1位元的解析度)進行轉換。量化誤差可以有效延伸到一連串的雜訊值。抖動可以提高取樣器的解析度並改善線性,但是不一定能提高準確度。不過,將1到2 LSB的雜訊加入至超取樣(Oversampling)的訊號後,可以提高準確度。
將人造雜訊加入訊號時,務必記得,雜訊必須具有零的平均值。不過,許多系統都有來自其他來源的白雜訊,包括熱雜訊、中央處理器(CPU)核心、切換電源供應器的連接埠與變異(Variation)。血壓監視器特別容易產生白噪,因為泵會產生電磁干擾、震動等白噪而被印刷電路板和微控制器吸收。
超取樣是一種對訊號進行取樣的程序,其取樣的頻率明顯大於正在進行取樣的奈奎斯特(Nyquist)頻率。實際上,超取樣是用來取得較容易得到的較高解析度ADC轉換。
舉例來說,如果要執行16位元的轉換器,只要使用可執行二百五十六次目標取樣率的12位元轉換器即可。如果需要額外的解析度,每多一位元,就必須對訊號進行四次超取樣。平均一組二百五十六個連續的12位元取樣,會將4位元加入平均結果的解析度,產生具有16位元解析度的單一結果。因為實際的ADC無法進行立即轉換,所以在轉換器執行轉換時,輸入的數值必須維持不變。
取樣及保持電路,會利用在輸入和電子門儲存類比電壓的電容執行這項工作,以從輸入中斷電容。使用ADC的取樣設定,並保持最適合輸入訊號的時間,將有助於改善結果的準確度。
合併使用以上兩種方法(雜訊注入及超取樣)後,即可進一步提升準確度。這種技巧通常稱為超取樣及降頻(Decimation)。加入1到2 LSB的雜訊,同時取樣就不會得到相同的結果。這種方法可以提高SINAD,而且可以增加ENOB。將1到2 LSB的雜訊加入輸入訊號及超取樣,即可將所有結果平均化,以提供更精確的結果。
平均來自ADC測量數據的資料,也有利於將訊號波動和雜訊降低到最少,因為這種做法可以讓輸入訊號的峰值變平坦。經過一段時間後,正常的雜訊會有零的直流電(DC)平均值,因此平均同時發生的結果可降低雜訊的影響。可用在系統的平均結果,取決於訊號變化及可在必要取樣之間的使用時間。部分的ADC模組內建平均化能力。
改善硬體提升轉換準確度
上述的概念已整合到系統軟體設計,但只要利用改善硬體的技巧,即可提升轉換的準確度。許多電路(尤其是電池電壓與溫度偵測電路)會使用高數值的電阻分壓器來建立類比參照。電容通常擺在輸入的位置,如此可以降低類比交流電(AC)源阻抗,所以ADC能夠順利取得訊號。印刷電路板也具有1MΩ範圍的固有電阻。類比輸入漏電(IIN)通常指定在1微安培(μA)的上限,而一般的數值約為25奈安培(nA)起跳。這種漏電會造成誤差(EIL),如公式2所示:
EIL=IIN X RAS ............................公式2
其中RAS是ADC電壓源的類比訊源阻抗。消除此誤差的最佳做法,就是降低RAS以及系統控制中任何形式的漏電,例如印刷電路板漏電。
系統電源供應器也有可能是轉換不正確的雜訊來源。受到電源供應器干擾的ADC(包括ADC基準電壓),將無法準確表示感應器正在輸出水準。ADC有多種不同的設計方式,可以拒絕電源供應器部分的雜訊,不過消除電源供應器雜訊的最佳做法,是建立可供進行轉換的安靜環境。微控制器具有可以停止CPU及各種周邊裝置的模式。在這種環境下,雖然裝置不會產生輸出,不過ADC仍可進行轉換並中斷CPU,例如將裝置快速喚醒後,裝置便會立即恢復所有的運作與通訊。
最難消除的雜訊類型為同步雜訊,這種雜訊的性質與轉換排程(Conversion Scheduling)相同。這種類型的雜訊可能是增益或偏移誤差。如果雜訊來源具有低頻率,減少這種雜訊影響的唯一方法,就是變更與同步雜訊相關的轉換時間。因為電磁相容(EMC)事件、線路雜訊與白雜訊等隨機雜訊會隨機出現,所以很難防範,不過利用超取樣加以平均,即可將部分的訊號復原。
|
圖3 具有MMS功能的家用可攜式醫療血糖儀 |
以上已經利用取樣應用說明能量儀表計量,雖然其中的類比訊號必須準確轉換,不過另一個醫療應用,如下列具有MMS功能的家用可攜式醫療血糖儀範例所示(圖3)。這些可攜式家用醫療產品,都有需要長效電池、快速反應時間、功能強大的資料處理,以及有線與無線通訊介面等的需求。使用微機電系統(MEMS)的壓力與加速感應器,可用來取得實際的參數,對於微控制器透過ADC模組處理的天然連續訊號電壓或電流,這些感應器可進行精確與準確的轉換。
糖尿病患者必須監視其系統中的血糖,並全天候進行調整。因此,家用醫療市場針對這個市場開發出家用產品,讓病患能夠更輕鬆執行這項工作。這些裝置是由具有簡易型使用者介面的電池供應電力,操作方式相當簡單。
現時的計量表內含日期/時鐘和記憶體,很多計量表更能夠將這些資料傳輸到電腦,甚至可以透過行動電話網路傳輸給外科醫生。部分的血糖儀具有可以將刺血針穿過皮膚抽血的直流馬達。
利用血液樣本的化學反應,可以產生電流。電流大小可以對應血液中的血糖濃度。這些血糖濃度會落在mg/dl的範圍內。在穩定基準電壓的需求下,血糖讀數可能要花數秒,才能達到病患血糖濃度的最大值。
家用血糖儀的準確度頗受到關注,因為家用血糖儀的準確度,必須符合國際標準組織(ISO) 15197的標準,也就是當血糖濃度超過75mg/dl,或超過較低血糖濃度的絕對值時,在95%的測量中,測定結果必須在符合實驗室的標準的20%之內。會影響這些計量表準確度的因素,包括計量表的校準、環境溫度、血液樣本的大小與品質、血液中其他高濃度的物質血球容積比、計量表上的污垢、濕度,以及試紙變質。
規範的制定係以整個系統為依據。當準確度需求分布在使用中的電子系統裝置時,ADC需求規格通常是ENOB≧13.5位元的16位元解析度,而且至少有四對差動輸入(兩組不同的配對),以及超過100kHz的速度。每個葡萄糖製造商都有自己的方法來區分精密度,有的是根據使用的所有裝置,有的是根據特殊的演算法,不過上述的參數通常即為市場一般需求值。
高解析度ADC前景可期
任何的測量系統如醫療或計量,其最艱鉅的挑戰莫過於將類比訊號準確傳達到內嵌式控制器的數位領域。高解析度的ADC提供良好的結果資料粒度(LSB代表nV的變化),不過不一定會提供應用所要求的準確度。因為類比訊號不可能完美轉換成數位訊號,所以無法避免許多不正確的來源,不過各種ADC技巧,例如平均、超取樣與抽樣、校準、漏電控制、雜訊消除法及溫度補償,可以用來提高轉譯的準確度(TUE)與ADC的ENOB。
(本文作者任職於飛思卡爾)