使用模擬傳感器進行超級采樣


當物理量發生變化時,模擬傳感器返回連續電壓。
當物理量發生變化時,模擬傳感器返回連續電壓。換句話說,在它們的輸出端,存在與所測量事件類型成比例的電位差。有數百種模擬傳感器類型,它們的最佳用途是連接到配備ADC輸入的微控制器,用于測量檢測和處理最終動作。
在這里,我們探索使用兩個模擬執行此重要操作的最佳技術 傳感器類型 進行我們的觀察:LM35精密溫度傳感器和OH49E磁場傳感器(或同等產品)。這兩種傳感器都很便宜,在市場上很容易獲得。
溫度和磁場傳感器
LM35 是用于溫度測量的精密集成電路。它的輸出是線性的,與溫度成正比,以攝氏度為單位。它不需要外部校準,并提供與溫度成比例的電壓,通常在 –55°C 和 150°C 之間。它還具有低輸出阻抗、良好的線性度測量和出色的內部校準精度。在電子系統中連接和使用設備是一件簡單的事情。它僅吸收60 μA,因此其熱量極低,不會影響測量輸出。它可以由 4 V 至 20 V 之間的直流電壓供電以測量正溫度,也可以與雙電源一起使用以測量負溫度。輸出電壓是指溫度。
OH49E 體積小巧,用途廣泛 霍爾效應 線性器件,由永磁體或電磁鐵產生的磁場驅動。它比LM35溫度計小。輸出電壓取決于電源的輸出電壓,并與磁場強度成比例變化。它不需要外部濾波器,因為輸出是低噪聲的。內部精密電阻可確保更高的穩定性和精度。
圖1顯示了兩個傳感器的主要特性。輸出電壓是指磁場,以高斯表示,包括正磁場和負磁場。工作溫度介于 –20°C 至 100°C 之間,電流消耗約為 4.2 mA V抄送 = 5 V。

圖 1:LM35 和 OH49E 傳感器及其各自的封裝、引腳排列和輸出特性曲線(來源:美國國家半導體 [LM35]、南京歐卓科技 [OH49E] 數據表)
一次讀取一個樣本的錯誤
如今,ADC系統廣泛用于采集和處理各種模擬數據。在 工程學校,用于這種類型的獲取的方法通常效率低下,因為教師通常專注于理論而不是實際系統中發生的實際含義。
即使是經驗豐富的設計人員,最常見的錯誤之一是在每個時間間隔通過ADC系統獲取單個信息樣本。盡管單次讀數很簡單,但從來都不是一個好的解決方案,因為如果在讀取數據時噪聲或干擾影響系統,結果將變得不可靠。
圖2顯示了每秒采樣的單個溫度的錯誤采集,沒有進一步的、更復雜的處理。示例中的圖形是指 30 秒內的通用溫度采集。

圖 2:一次采集單個樣本的 ADC 并不總是最佳解決方案。(來源:喬瓦尼·迪瑪麗亞)
如圖所示,由于噪聲、干擾或傳感器問題等電氣因素,系統測量的一個樣本不正確,該值無疑會對測量產生不利影響。采集溫度的平均計算返回一個異常值,因為它還考慮了測量誤差。另一方面,固件將嘗試通過使用數學方法和智能過濾器來最小化測量誤差。
部分解決問題的一種方法是丟棄超出可接受值窗口的樣本。這樣,所有高于或低于某個范圍的值將被自動消除。隨著錯誤樣本的增加,或者換句話說,當樣本偏離數據的平均值時,問題變得更加明顯。
另一種選擇是使用幾何平均值而不是算術平均值來確定測量間隔的平均溫度。這種技術非常成功,并且通常是決定性的,但是由于兩者的原因,它在小型微控制器中的實現并不總是那么容易。 內存和硬件電源.
超級采樣
以下示例是通用的,適用于任何類型的MCU或嵌入式系統,并通過偽代碼表示。設計人員可以輕松地使該方法適應自己的邏輯系統。
圖3所示的超采樣是提高ADC分辨率的有用技術。從MCU的模擬端口讀取意味著將讀取電壓值的數字分配給整數類型變量。
為了更好地理解系統,請注意,1位ADC的分辨率為2.5 V,其中數字值00對應于0 V至2.5 V之間的電壓,數字值01對應于2.5 V至5 V之間的電壓。另一方面,2位ADC的分辨率為1.25 V,具有以下采集組合:
數字值 00 對應于 0 V 和 1.25 V 之間的電壓。
數字值 01 對應于 1.25 V 和 2.5 V 之間的電壓。
數字值 10 對應于 2.5 V 和 3.75 V 之間的電壓。
數字值 11 對應于 3.75 V 和 5 V 之間的電壓。
ADC系統中每增加一個位,模擬數據的采集容量和讀取分辨率就會翻倍。顯然,成本也與分辨率有關,因此8位ADC系統的成本相對較低,而24位采集電路的成本要高得多。
下表顯示了根據ADC位數獲得數字化電壓的可能性。
位模數轉換器 | 組合 | 分辨率 (0–5 V) |
8 | 256 | 19.531毫伏 |
10 | 1,024 | 4.882毫伏 |
12 | 4,096 | 1.220毫伏 |
16 | 65,536 | 76.293 μV |
20 | 1,048,576 | 4.768 μV |
24 | 16,777,216 | 298.023 nV |
36 | 68,719,476,736 | 72.759 pV |
其方程如下:

例如,我們已經看到,每秒的順序讀取節奏是一個有缺陷的解決方案,因為電路上可能發生干擾。對同一端口進行多次近距離讀取,對采集的樣本求和并計算相對算術平均值(更好的是幾何平均值),極大地改善了結果。采集圖顯示了這種技術的有效性,特別是當信號受到噪聲影響時。幾何平均是大多數應用的最佳解決方案。必須使用對數進行計算。
這本質上是超采樣方法,它允許設計人員以比當前ADC系統更高的分辨率進行“仿真”。通過執行許多近距離采集,分辨率隨著系統數字速率的降低而提高,不確定性水平轉換為接近實際值的水平。在較短的時間間隔內獲取的讀數越多,最終分辨率就越高。

圖 3:通過超采樣,測量更準確,錯誤率降低。(來源:喬瓦尼·迪瑪麗亞)
數字溫度計和磁場探測器
現在我們可以談談數字溫度計的兩個電路圖和 磁場探測器 與 LM35 和 OH49E 集成電路配合使用(圖 4)。

圖4:溫度傳感器和磁場探測器的示意圖(來源:Giovanni Di Maria)
兩個圖均提供5 V電壓。輸出端子必須連接到微控制器的ADC。電阻R1根據LM35的官方數據表計算,具有以下關系:

理論上,可以簡單地將測試儀連接到兩個傳感器的輸出端,讀取輸出電壓并將其轉換為有效的溫度和磁場測量值。當然,使用微控制器,操作更簡單,并且還可以將數據存儲在內存中。兩個傳感器提供電壓,必須使用適當的公式將其轉換為各自的物理量。
在以 V 運行的系統中裁判 5 V 和 10 位 ADC 時,使用 LM35 計算溫度的公式如下:

以下公式可用于在具有 5V 基準電壓和 10 位 ADC 的系統中使用 OH49E 集成電路確定磁場:

還應該記住,1 特斯拉 = 10,000 高斯,因此可以輕松完成此轉換。
偽代碼
第一個偽代碼現在涉及從模擬傳感器采集數據。(我們在檢查中使用的兩個傳感器之間的區別是無關緊要的,因為原理是相同的,并且適用于兩者。
假設我們想每秒獲取一個溫度(或磁場值)。第一個偽代碼適用于任何系統,涉及無需任何處理即可簡單獲取樣本的原始數據。在這種情況下,錄音可能會受到錯誤和干擾的影響。

另一方面,性能更高、效率更高的源列表涉及使用超級采樣,在這種情況下,每秒執行 100 次。如圖5所示,通過提高超采樣程度,信號得到改善并變得更清晰,特別是線路上可能發生的任何零星噪聲。

圖 5:來自模擬溫度計的信號通過不同程度的過采樣進行數字化。(來源:喬瓦尼·迪瑪麗亞)
圖表的第一次記錄(頂部和黑色)顯示了信號的“原始”采集,使用之前看到的傳統技術。圖形的第二個記錄(紅色)顯示了過采樣度為 10 的信號采集。該值模擬大約 13 位的 ADC 分辨率。第三個圖形記錄(綠色)顯示過采樣率為100的信號采集。該值模擬大約 16 位的 ADC 分辨率。圖中的第四條記錄(藍色)顯示了過采樣度為 1,000 的信號采集。該值模擬大約 20 位的 ADC 分辨率。
換句話說,我們已經以零成本將ADC從10位轉換為20位。

最 高級別的 ADC
使用過采樣通常意味著提高嵌入式系統或MCU的ADC分辨率。一個 微控制器 例如,配備10位數字模擬輸入,只需引入過采樣概念即可提高其分辨率。下表顯示了通過一個虛擬采集系統實現的分辨率,從過采樣程度開始。
超采樣程度 | ADC的仿真分辨率 |
1 | 10 位 |
2 | 11 位 |
4 | 12 位 |
8 | 13 位 |
16 | 14 位 |
32 | 15 位 |
64 | 16 位 |
128 | 17 位 |
256 | 18 位 |
512 | 19 位 |
1,024 | 20 位 |
2,048 | 21 位 |
4,096 | 22 位 |
8,192 | 23 位 |
16,384 | 24 位 |
這意味著,如果源代碼中的循環包括 100 個求和和平均步長,則根據以下基本公式,就好像一個人的 ADC 的分辨率為 16.6438 位:

公式中的十進制位數對于計算的準確性很重要。要獲得整數位數,始終建議使用冪為 2 的超級采樣度,以控制最終分辨率(2、4、8、16 等)。
超采樣技術可以大大提高使用模擬傳感器的數據采集電路的性能。實際上,該方法提高了系統的信噪比。超級采樣可用于增強動態范圍,即使這樣做需要編寫一些額外的源代碼。
一個警告提醒:由于傳感器引腳排列可能因型號而異,因此始終建議仔細檢查它們。
本文最初發表于 電子電氣時報.
Giovanni Di Maria一直喜歡電子,數學和DIY。他是一名計算機程序員,也是一名計算機科學和數學老師。他喜歡數字,他總是在尋找大的質數。他還寫了一本關于PIC Microcontroller 16F84使用mikroBasic編程的書。他是Elektrosoft的所有者,Elektrosoft是一家處理電子和信息技術的公司。他是一名全職培訓師和老師。
責任編輯:David
【免責聲明】
1、本文內容、數據、圖表等來源于網絡引用或其他公開資料,版權歸屬原作者、原發表出處。若版權所有方對本文的引用持有異議,請聯系拍明芯城(marketing@iczoom.com),本方將及時處理。
2、本文的引用僅供讀者交流學習使用,不涉及商業目的。
3、本文內容僅代表作者觀點,拍明芯城不對內容的準確性、可靠性或完整性提供明示或暗示的保證。讀者閱讀本文后做出的決定或行為,是基于自主意愿和獨立判斷做出的,請讀者明確相關結果。
4、如需轉載本方擁有版權的文章,請聯系拍明芯城(marketing@iczoom.com)注明“轉載原因”。未經允許私自轉載拍明芯城將保留追究其法律責任的權利。
拍明芯城擁有對此聲明的最終解釋權。