ZHCAAO6A May 2020 – August 2021 ADS1115 , LMT70
溫度 (°C) | LMT70 輸出電壓 (mV) | TLA2024 數(shù)字輸出 |
---|---|---|
-55 | 1375.219 | 55F4h (22004d) |
125 | 302.785 | 12EDh (4845d) |
電源 | ||
---|---|---|
VDD | GND | |
3.3V | 0V |
設(shè)計說明
該電路設(shè)計描述了一個使用精密模擬溫度傳感器和 16 位 ADC 的溫度測量電路。LMT70 溫度傳感器的輸出電壓在 –55°C 至 150°C 范圍內(nèi)隨溫度變化而變化,并且在遠(yuǎn)離 ADC 放置時可用于遠(yuǎn)程測量。ADS1115 ADC 用于測量 LMT70 的輸出電壓。利用 ADC 的內(nèi)部電壓基準(zhǔn),該電路可作為一種緊湊的低功耗解決方案來精確測量溫度。該設(shè)計包含用于配置器件的 ADC 寄存器設(shè)置以及用于配置和讀取器件的偽代碼。此電路可用于 PLC 模擬輸入模塊、實(shí)驗(yàn)室和現(xiàn)場儀表 以及工廠自動化和控制 等應(yīng)用中。
設(shè)計說明
元件選型
LMT70 的溫度測量范圍為 –55°C 至 150°C。在此溫度范圍內(nèi),LMT70 的輸出電壓在 1375mV 至 303mV 之間變化,具有負(fù)溫度斜率。該范圍用于在 ADC 的滿量程范圍條件下,最大限度地提高測量的分辨率。下圖中顯示了 LMT70 輸出傳遞函數(shù)。
并非如肉眼所見,LMT70 的輸出傳遞函數(shù)不是線性的。需要從查找表中進(jìn)行插值或根據(jù)多項(xiàng)式方程進(jìn)行計算來準(zhǔn)確確定溫度。
ADS1115 具有通過縮放電容采樣實(shí)現(xiàn)的可編程增益放大器 (PGA),這并非真正的放大器。通過此 PGA,輸入范圍可擴(kuò)展為整個電源范圍,并為 ADC 提供六個不同的滿量程范圍 (FSR) 設(shè)置選項(xiàng)。
如前所述,當(dāng)溫度測量范圍為 –55°C 至 150°C 時,LMT70 的輸出范圍為 1375mV 至 303mV。為了最大限度地提高分辨率,請選擇包含該溫度測量范圍的最小 ADC 滿量程范圍。在此測量范圍內(nèi),ADC FSR 可設(shè)置為 ±2.048V。在 –55°C 時,ADC 輸出代碼將讀取十進(jìn)制的 55F4h 或 22004,而在 150°C 時將讀取十進(jìn)制的 12Edh 或 4845。使用此設(shè)置,溫度測量值將為 17159 個代碼。由此得出的基本分辨率為每個代碼 0.012°C。
如果溫度測量范圍將最低溫度限制為 15°C,則 LMT70 的輸出電壓限值為 1.024V。在此限值下,ADC FSR 范圍可以設(shè)置為 ±1.024V,從而最大限度地提高 ADC 的分辨率。
ADS1115 16 位 ADC 會以差分方式報告數(shù)據(jù)。即使使用 ADC 進(jìn)行單端測量,ADC 也會將數(shù)據(jù)報告為差分?jǐn)?shù)據(jù)。單端測量具有 15 位的分辨率。
通常,ADC 輸入采用基本 RC 濾波電路。如果存在輸入濾波,ADC 的輸入電流會受串聯(lián)濾波器電阻影響而產(chǎn)生誤差。對于 ADS1115 器件,輸入電流建模為等效差分和共模輸入阻抗。當(dāng)負(fù)輸入接地時,等效輸入阻抗可以近似為并聯(lián)的差分和共模阻抗。
使用 ±2.048V 的 FSR 時,ADS1115 差分輸入阻抗為 4.9MΩ,共模阻抗為 6MΩ。等效輸入阻抗約為 2.7MΩ。如果串聯(lián)濾波器電阻遠(yuǎn)小于等效輸入阻抗,則測量的增益誤差不受濾波影響。
對于 Σ-Δ 型 ADC(如 ADS1115),輸入濾波的帶寬設(shè)置為至少是數(shù)據(jù)速率的 10 倍。如果 ADS1115 以 860SPS 的最高數(shù)據(jù)速率運(yùn)行,則輸入濾波器可以設(shè)置為高于 8.6kHz。LMT70 可以驅(qū)動有限的電容,其數(shù)據(jù)表為串聯(lián)電阻和不同負(fù)載電容的組合提供了具體指導(dǎo)。對于合適的濾波器,請使用 RS = 3kΩ 和 CLOAD = 4.7nF,并將輸入濾波帶寬設(shè)置為 11.3kHz。如果使用不同的數(shù)據(jù)速率,或使用 ADS1015 或 TLA2024,則可以針對不同的數(shù)據(jù)速率重新計算此帶寬。無論如何,都請遵循 LMT70 器件的容性負(fù)載驅(qū)動指南,如數(shù)據(jù)表中所述。
配置寄存器設(shè)置
配置寄存器會設(shè)置 ADC 的操作模式和配置。配置包括前面各節(jié)中描述的所有設(shè)置。在 16 個位之間使用九個字段來配置器件。下表顯示了配置寄存器字段描述以及位名稱和位置、讀寫用法和復(fù)位值。
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
---|---|---|---|---|---|---|---|
操作系統(tǒng) | MUX[2:0] | PGA[2:0] | MODE | ||||
R/W-1h | R/W-0h | R/W-2h | R/W-1h | ||||
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
DR[2:0] | COMP_MODE | COMP_POL | COMP_LAT | COMP_QUE | |||
R/W-4h | R/W-0h | R/W-0h | R/W-0h | R/W-3h |
OS 位會設(shè)置操作狀態(tài)并啟動單次轉(zhuǎn)換。MUX[2:0] 位會設(shè)置輸入多路復(fù)用器以選擇模擬輸入。MODE 位會將器件設(shè)置為單沖轉(zhuǎn)換模式。DR[2:0] 位會設(shè)置器件的數(shù)據(jù)速率。其余字段用于本設(shè)計中未使用的 ADC 比較器設(shè)置。更多有關(guān)配置寄存器的詳細(xì)信息,請參閱《具有內(nèi)部基準(zhǔn)、振蕩器和可編程比較器且兼容 I2C 的 ADS111x 超小型、低功耗、860SPS、16 位 ADC》 數(shù)據(jù)表。
對于此應(yīng)用,使用一個 ADC 通道來測量 LMT70。多路復(fù)用器設(shè)置為測量 AIN0 到 GND,F(xiàn)SR 設(shè)置為 ±2.048V,數(shù)據(jù)速率設(shè)置為 860SPS。ADS1115 中配置寄存器字段的設(shè)置如下表所示。
位 | 字段 | 設(shè)置 | 說明 |
---|---|---|---|
15 | 操作系統(tǒng) | 1 | 開始轉(zhuǎn)換 |
14:12 | MUX[2:0] | 100 | 單端輸入測量,AINP–AINN = AIN0–GND,選擇第一通道 |
11:9 | PGA[2:0] | 010 | FSR = ±2.048V,將 ADC 設(shè)置為能夠測量 0V 至 VDD 的整個電源范圍 |
8 | MODE | 1 | 單沖轉(zhuǎn)換模式下的運(yùn)行 |
7:5 | DR[2:0] | 111 | 數(shù)據(jù)速率 = 860SPS |
4 | COMP_MODE | 0 | 傳統(tǒng)比較器 |
3 | COMP_POL | 0 | 低電平有效 |
2 | COMP_LAT | 0 | 非自鎖比較器 |
1:0 | COMP_QUE[1:0] | 11 | 比較器已禁用 |
結(jié)合字段描述中的這些位,配置寄存器值為 1100 0101 1110 0011 或 C5E3h。
ADS1115 的通道循環(huán)
ADS1115 具有四個模擬輸入通道,它們來自連接到 ADC 的可配置多路復(fù)用器。LMT70 溫度測量僅在 ADS1115 通道連接到 AIN0 時進(jìn)行,而 AIN1、AIN2 和 AIN3 的輸入可用于交替測量。
若要循環(huán)使用 ADS1115 系統(tǒng)的每個通道,需逐一啟動每個通道的轉(zhuǎn)換過程,等待轉(zhuǎn)換完成,然后讀回數(shù)據(jù)。然后,開始下個通道的轉(zhuǎn)換過程。對系統(tǒng)中的所有四個輸入重復(fù)此序列,即可循環(huán)使用所有通道。寫入配置寄存器會啟動轉(zhuǎn)換并將 ADC 配置為正確的運(yùn)行模式。通信從寫入器件的 I2C 從器件地址開始。I2C 寫入后跟三個字節(jié)。第一個字節(jié)是 01h,用以指示配置寄存器。接下來的兩個字節(jié)是寫入配置寄存器的數(shù)據(jù)。四個字節(jié)的完整通信如下表所示。
I2C 地址: 1001000 寫入 |
地址指針: 配置寄存器 |
配置 MSB:開始轉(zhuǎn)換、設(shè)置輸入、FSR、單沖模式 | 配置 LSB:860SPS, 比較器已禁用 |
---|---|---|---|
1001 0000 | 0000 0001 | 1100 0101 | 1110 0011 |
然后,主器件等待轉(zhuǎn)換完成。在本示例中,ADS1115 器件設(shè)置為最快的數(shù)據(jù)速率 860SPS。該器件使用內(nèi)部振蕩器,因此數(shù)據(jù)速率存在一些變化。為確保在 ADC 完成轉(zhuǎn)換后讀取器件,微控制器需等待轉(zhuǎn)換完成所需的最長時間。該等待時間是標(biāo)稱數(shù)據(jù)周期加上 10%(用以補(bǔ)償器件的內(nèi)部振蕩器變化)。對于每次單沖轉(zhuǎn)換,ADC 喚醒時間都額外增加 20μs。使用以下公式計算總等待時間。
例如,如果器件以 860SPS 運(yùn)行,則標(biāo)稱數(shù)據(jù)周期為 1.16ms。所需的等待時間將為:
讀取器件從寫入轉(zhuǎn)換數(shù)據(jù)寄存器 (00h) 的寄存器指針開始,然后從同一 I2C 地址再次讀取兩個字節(jié)。下面顯示了在配置 ADC 之后讀取 LMT70 測量數(shù)據(jù)。五個字節(jié)的完整通信如下表所示。
I2C 地址: 1001000 寫入 |
地址指針: 配置數(shù)據(jù)寄存器 |
I2C 地址: 1001000 讀取 |
讀取轉(zhuǎn)換數(shù)據(jù) MSB | 讀取轉(zhuǎn)換數(shù)據(jù) LSB |
---|---|---|---|---|
1001 0000 | 0000 0000 | 1001 0001 | xxxx xxxx | xxxx xxxx |
其他 ADS1115 通道可以通過重復(fù)此序列以任意順序循環(huán)。通過設(shè)置配置寄存器來收集數(shù)據(jù),等待轉(zhuǎn)換完成,然后讀取轉(zhuǎn)換數(shù)據(jù)。
測量轉(zhuǎn)換
根據(jù) ADC 的滿量程范圍設(shè)置,溫度傳感器的輸出電壓轉(zhuǎn)換相對簡單。使用以下公式計算 LMT70 器件的輸出電壓:
下面是電氣特性溫度查找表。利用以下查找表進(jìn)行插值,可以將電壓測量值轉(zhuǎn)換為溫度。
溫度 (°C) | VTAO (mV) (典型值) |
本地斜率 (mV/°C) |
---|---|---|
-55 | 1375.219 | -4.958 |
–50 | 1350.441 | -4.976 |
-40 | 1300.593 | -5.002 |
-30 | 1250.398 | -5.036 |
–20 | 1199.884 | -5.066 |
–10 | 1149.070 | -5.108 |
0 | 1097.987 | -5.121 |
10 | 1046.647 | -5.134 |
20 | 995.050 | -5.171 |
30 | 943.227 | -5.194 |
40 | 891.178 | -5.217 |
50 | 838.882 | -5.241 |
60 | 786.360 | -5.264 |
70 | 733.608 | -5.285 |
80 | 680.654 | -5.306 |
90 | 627.490 | -5.327 |
100 | 574.117 | -5.347 |
110 | 520.551 | -5.368 |
120 | 466.760 | -5.391 |
130 | 412.739 | -5.430 |
140 | 358.164 | -5.498 |
150 | 302.785 | -5.538 |
作為替代方案,LMT70 的輸出電壓可以用二階傳遞函數(shù)建模。使用最小二乘和方法,使用上表中的值生成最佳擬合二階傳遞函數(shù)。–10°C 至 110°C 的有限溫度范圍可用于生成具有一組系數(shù)的準(zhǔn)確傳遞函數(shù)。在 –55°C 至 +150°C 的整個溫度范圍內(nèi),單個二階傳遞函數(shù)會增加極端溫度下的誤差,并且需要一組不同的系數(shù)。以下公式顯示了傳遞函數(shù):
其中:
系數(shù) | –55°C 至 150°C 的最佳擬合 | –10°C 至 110°C 的最佳擬合 |
---|---|---|
a | –8.451576E-06 | –7.857923E-06 |
b | –1.769281E-01 | –1.777501E-01 |
c | 2.043937E+02 | 2.046398E+02 |
VTAO 以 mV 表示,TM 以 °C 表示。有關(guān)轉(zhuǎn)換方法的更深入討論,請查看 LMT70 數(shù)據(jù)表。
偽代碼示例
以下示例顯示了偽代碼序列以及設(shè)置器件和微控制器所需的步驟,該微控制器與 ADC 相連,以便在單沖轉(zhuǎn)換模式下從 ADS1115 獲取后續(xù)讀數(shù)。ADC 首先讀取的是 LMT70 溫度傳感器,使用 AIN0 通道。使用最大數(shù)據(jù)周期獲取數(shù)據(jù),留出喚醒器件、配置 ADC、進(jìn)行單次轉(zhuǎn)換和設(shè)置其他 ADC 測量的時間。其他測量通道以類似方式用于寫入配置寄存器和開始轉(zhuǎn)換,等待轉(zhuǎn)換完成,然后回讀轉(zhuǎn)換。
Configure microcontroller for I2C communication, I2C address=1001000 (48h)
Loop
{
Send 90h 01h C5h E3h //
// 開始寫入地址 48h,寫入第 0 位 (90h)
// 配置寄存器 01h
// 設(shè)置 C1E3h,AIN0-GND,F(xiàn)SR=±2.048V,單沖轉(zhuǎn)換,DR=860SPS,停止
Wait 1.30ms // 等待數(shù)據(jù)周期,+10% 補(bǔ)償內(nèi)部振蕩器變化,+20us
Send 90h 00h 91h xxh xxh // 讀回 ADC 轉(zhuǎn)換數(shù)據(jù)
// 開始寫入地址 48h,寫入第 0 位 (90h)
// 轉(zhuǎn)換寄存器 00h,停止
// 開始從地址 48h 讀取,讀取第 1 位 (91h)
// 讀回 2 個字節(jié),停止
// 從 AIN1、AIN2 和 AIN3 的測量(可選)
Send configuration for channel 1
Wait for conversion to complete
Read channel 1
Send configuration for channel 2
Wait for conversion to complete
Read channel 2
Send configuration for channel 3
Wait for conversion to complete
Read channel 3
}
更多有關(guān) ADS1115 配置的詳細(xì)信息,請參閱數(shù)據(jù)表或《具有 16 個單端通道和 I2C 接口的精密測量電路》。
布局示例
下面顯示了 LMT70 和 ADS1115 器件的示例布局。使用 0402 電阻器和電容器添加 RC 輸入濾波。生成的布局約為 200mil×240mil。此測量不會考慮 I2C 上拉電阻器。每個系統(tǒng)都需要一套此類電阻器。
設(shè)計中采用的器件
器件 | 關(guān)鍵特性 | 鏈接 | 其他可能的器件 |
---|---|---|---|
ADS1115 | 具有內(nèi)部基準(zhǔn)、振蕩器和可編程比較器且兼容 I2C 的 ADS111x 超小型、低功耗、860SPS、16 位 ADC | http://apartmentvenezia.com/product/cn/ADS1115 | 指向類似器件的鏈接 指向類似 SPI 器件的鏈接 |
LMT70 | LMT70、LMT70A ±0.05°C 精密模擬溫度傳感器、RTD 和精密 NTC 熱敏電阻 IC | http://apartmentvenezia.com/product/cn/LMT70 |
設(shè)計參考資料
請參閱《模擬工程師電路設(shè)計指導(dǎo)手冊》,了解 TI 的綜合電路庫。
如需 TI 工程師提供直接支持,請登陸 TI E2E 社區(qū):
TI e2e.ti.com