ZHCAAO6A May 2020 – August 2021 ADS1115 , LMT70
| 溫度 (°C) | LMT70 輸出電壓 (mV) | TLA2024 數字輸出 |
|---|---|---|
| -55 | 1375.219 | 55F4h (22004d) |
| 125 | 302.785 | 12EDh (4845d) |
| 電源 | ||
|---|---|---|
| VDD | GND | |
| 3.3V | 0V | |
設計說明
該電路設計描述了一個使用精密模擬溫度傳感器和 16 位 ADC 的溫度測量電路。LMT70 溫度傳感器的輸出電壓在 –55°C 至 150°C 范圍內隨溫度變化而變化,并且在遠離 ADC 放置時可用于遠程測量。ADS1115 ADC 用于測量 LMT70 的輸出電壓。利用 ADC 的內部電壓基準,該電路可作為一種緊湊的低功耗解決方案來精確測量溫度。該設計包含用于配置器件的 ADC 寄存器設置以及用于配置和讀取器件的偽代碼。此電路可用于 PLC 模擬輸入模塊、實驗室和現場儀表 以及工廠自動化和控制 等應用中。

設計說明
元件選型
LMT70 的溫度測量范圍為 –55°C 至 150°C。在此溫度范圍內,LMT70 的輸出電壓在 1375mV 至 303mV 之間變化,具有負溫度斜率。該范圍用于在 ADC 的滿量程范圍條件下,最大限度地提高測量的分辨率。下圖中顯示了 LMT70 輸出傳遞函數。

并非如肉眼所見,LMT70 的輸出傳遞函數不是線性的。需要從查找表中進行插值或根據多項式方程進行計算來準確確定溫度。
ADS1115 具有通過縮放電容采樣實現的可編程增益放大器 (PGA),這并非真正的放大器。通過此 PGA,輸入范圍可擴展為整個電源范圍,并為 ADC 提供六個不同的滿量程范圍 (FSR) 設置選項。
如前所述,當溫度測量范圍為 –55°C 至 150°C 時,LMT70 的輸出范圍為 1375mV 至 303mV。為了最大限度地提高分辨率,請選擇包含該溫度測量范圍的最小 ADC 滿量程范圍。在此測量范圍內,ADC FSR 可設置為 ±2.048V。在 –55°C 時,ADC 輸出代碼將讀取十進制的 55F4h 或 22004,而在 150°C 時將讀取十進制的 12Edh 或 4845。使用此設置,溫度測量值將為 17159 個代碼。由此得出的基本分辨率為每個代碼 0.012°C。
如果溫度測量范圍將最低溫度限制為 15°C,則 LMT70 的輸出電壓限值為 1.024V。在此限值下,ADC FSR 范圍可以設置為 ±1.024V,從而最大限度地提高 ADC 的分辨率。
ADS1115 16 位 ADC 會以差分方式報告數據。即使使用 ADC 進行單端測量,ADC 也會將數據報告為差分數據。單端測量具有 15 位的分辨率。
通常,ADC 輸入采用基本 RC 濾波電路。如果存在輸入濾波,ADC 的輸入電流會受串聯濾波器電阻影響而產生誤差。對于 ADS1115 器件,輸入電流建模為等效差分和共模輸入阻抗。當負輸入接地時,等效輸入阻抗可以近似為并聯的差分和共模阻抗。
使用 ±2.048V 的 FSR 時,ADS1115 差分輸入阻抗為 4.9MΩ,共模阻抗為 6MΩ。等效輸入阻抗約為 2.7MΩ。如果串聯濾波器電阻遠小于等效輸入阻抗,則測量的增益誤差不受濾波影響。
對于 Σ-Δ 型 ADC(如 ADS1115),輸入濾波的帶寬設置為至少是數據速率的 10 倍。如果 ADS1115 以 860SPS 的最高數據速率運行,則輸入濾波器可以設置為高于 8.6kHz。LMT70 可以驅動有限的電容,其數據表為串聯電阻和不同負載電容的組合提供了具體指導。對于合適的濾波器,請使用 RS = 3kΩ 和 CLOAD = 4.7nF,并將輸入濾波帶寬設置為 11.3kHz。如果使用不同的數據速率,或使用 ADS1015 或 TLA2024,則可以針對不同的數據速率重新計算此帶寬。無論如何,都請遵循 LMT70 器件的容性負載驅動指南,如數據表中所述。
配置寄存器設置
配置寄存器會設置 ADC 的操作模式和配置。配置包括前面各節中描述的所有設置。在 16 個位之間使用九個字段來配置器件。下表顯示了配置寄存器字段描述以及位名稱和位置、讀寫用法和復位值。
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
|---|---|---|---|---|---|---|---|
| 操作系統 | 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 位會設置操作狀態并啟動單次轉換。MUX[2:0] 位會設置輸入多路復用器以選擇模擬輸入。MODE 位會將器件設置為單沖轉換模式。DR[2:0] 位會設置器件的數據速率。其余字段用于本設計中未使用的 ADC 比較器設置。更多有關配置寄存器的詳細信息,請參閱《具有內部基準、振蕩器和可編程比較器且兼容 I2C 的 ADS111x 超小型、低功耗、860SPS、16 位 ADC》 數據表。
對于此應用,使用一個 ADC 通道來測量 LMT70。多路復用器設置為測量 AIN0 到 GND,FSR 設置為 ±2.048V,數據速率設置為 860SPS。ADS1115 中配置寄存器字段的設置如下表所示。
| 位 | 字段 | 設置 | 說明 |
|---|---|---|---|
| 15 | 操作系統 | 1 | 開始轉換 |
| 14:12 | MUX[2:0] | 100 | 單端輸入測量,AINP–AINN = AIN0–GND,選擇第一通道 |
| 11:9 | PGA[2:0] | 010 | FSR = ±2.048V,將 ADC 設置為能夠測量 0V 至 VDD 的整個電源范圍 |
| 8 | MODE | 1 | 單沖轉換模式下的運行 |
| 7:5 | DR[2:0] | 111 | 數據速率 = 860SPS |
| 4 | COMP_MODE | 0 | 傳統比較器 |
| 3 | COMP_POL | 0 | 低電平有效 |
| 2 | COMP_LAT | 0 | 非自鎖比較器 |
| 1:0 | COMP_QUE[1:0] | 11 | 比較器已禁用 |
結合字段描述中的這些位,配置寄存器值為 1100 0101 1110 0011 或 C5E3h。
ADS1115 的通道循環
ADS1115 具有四個模擬輸入通道,它們來自連接到 ADC 的可配置多路復用器。LMT70 溫度測量僅在 ADS1115 通道連接到 AIN0 時進行,而 AIN1、AIN2 和 AIN3 的輸入可用于交替測量。
若要循環使用 ADS1115 系統的每個通道,需逐一啟動每個通道的轉換過程,等待轉換完成,然后讀回數據。然后,開始下個通道的轉換過程。對系統中的所有四個輸入重復此序列,即可循環使用所有通道。寫入配置寄存器會啟動轉換并將 ADC 配置為正確的運行模式。通信從寫入器件的 I2C 從器件地址開始。I2C 寫入后跟三個字節。第一個字節是 01h,用以指示配置寄存器。接下來的兩個字節是寫入配置寄存器的數據。四個字節的完整通信如下表所示。
| I2C 地址: 1001000 寫入 |
地址指針: 配置寄存器 |
配置 MSB:開始轉換、設置輸入、FSR、單沖模式 | 配置 LSB:860SPS, 比較器已禁用 |
|---|---|---|---|
| 1001 0000 | 0000 0001 | 1100 0101 | 1110 0011 |
然后,主器件等待轉換完成。在本示例中,ADS1115 器件設置為最快的數據速率 860SPS。該器件使用內部振蕩器,因此數據速率存在一些變化。為確保在 ADC 完成轉換后讀取器件,微控制器需等待轉換完成所需的最長時間。該等待時間是標稱數據周期加上 10%(用以補償器件的內部振蕩器變化)。對于每次單沖轉換,ADC 喚醒時間都額外增加 20μs。使用以下公式計算總等待時間。
例如,如果器件以 860SPS 運行,則標稱數據周期為 1.16ms。所需的等待時間將為:
讀取器件從寫入轉換數據寄存器 (00h) 的寄存器指針開始,然后從同一 I2C 地址再次讀取兩個字節。下面顯示了在配置 ADC 之后讀取 LMT70 測量數據。五個字節的完整通信如下表所示。
| I2C 地址: 1001000 寫入 |
地址指針: 配置數據寄存器 |
I2C 地址: 1001000 讀取 |
讀取轉換數據 MSB | 讀取轉換數據 LSB |
|---|---|---|---|---|
| 1001 0000 | 0000 0000 | 1001 0001 | xxxx xxxx | xxxx xxxx |
其他 ADS1115 通道可以通過重復此序列以任意順序循環。通過設置配置寄存器來收集數據,等待轉換完成,然后讀取轉換數據。
測量轉換
根據 ADC 的滿量程范圍設置,溫度傳感器的輸出電壓轉換相對簡單。使用以下公式計算 LMT70 器件的輸出電壓:
下面是電氣特性溫度查找表。利用以下查找表進行插值,可以將電壓測量值轉換為溫度。
| 溫度 (°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 的輸出電壓可以用二階傳遞函數建模。使用最小二乘和方法,使用上表中的值生成最佳擬合二階傳遞函數。–10°C 至 110°C 的有限溫度范圍可用于生成具有一組系數的準確傳遞函數。在 –55°C 至 +150°C 的整個溫度范圍內,單個二階傳遞函數會增加極端溫度下的誤差,并且需要一組不同的系數。以下公式顯示了傳遞函數:
其中:
| 系數 | –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 表示。有關轉換方法的更深入討論,請查看 LMT70 數據表。
偽代碼示例
以下示例顯示了偽代碼序列以及設置器件和微控制器所需的步驟,該微控制器與 ADC 相連,以便在單沖轉換模式下從 ADS1115 獲取后續讀數。ADC 首先讀取的是 LMT70 溫度傳感器,使用 AIN0 通道。使用最大數據周期獲取數據,留出喚醒器件、配置 ADC、進行單次轉換和設置其他 ADC 測量的時間。其他測量通道以類似方式用于寫入配置寄存器和開始轉換,等待轉換完成,然后回讀轉換。
Configure microcontroller for I2C communication, I2C address=1001000 (48h)
Loop
{
Send 90h 01h C5h E3h //
// 開始寫入地址 48h,寫入第 0 位 (90h)
// 配置寄存器 01h
// 設置 C1E3h,AIN0-GND,FSR=±2.048V,單沖轉換,DR=860SPS,停止
Wait 1.30ms // 等待數據周期,+10% 補償內部振蕩器變化,+20us
Send 90h 00h 91h xxh xxh // 讀回 ADC 轉換數據
// 開始寫入地址 48h,寫入第 0 位 (90h)
// 轉換寄存器 00h,停止
// 開始從地址 48h 讀取,讀取第 1 位 (91h)
// 讀回 2 個字節,停止
// 從 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
}
更多有關 ADS1115 配置的詳細信息,請參閱數據表或《具有 16 個單端通道和 I2C 接口的精密測量電路》。
布局示例
下面顯示了 LMT70 和 ADS1115 器件的示例布局。使用 0402 電阻器和電容器添加 RC 輸入濾波。生成的布局約為 200mil×240mil。此測量不會考慮 I2C 上拉電阻器。每個系統都需要一套此類電阻器。
示例布局設計中采用的器件
| 器件 | 關鍵特性 | 鏈接 | 其他可能的器件 |
|---|---|---|---|
| ADS1115 | 具有內部基準、振蕩器和可編程比較器且兼容 I2C 的 ADS111x 超小型、低功耗、860SPS、16 位 ADC | http://www.cqwzaes.cn/product/cn/ADS1115 | 指向類似器件的鏈接 指向類似 SPI 器件的鏈接 |
| LMT70 | LMT70、LMT70A ±0.05°C 精密模擬溫度傳感器、RTD 和精密 NTC 熱敏電阻 IC | http://www.cqwzaes.cn/product/cn/LMT70 |
設計參考資料
請參閱《模擬工程師電路設計指導手冊》,了解 TI 的綜合電路庫。
如需 TI 工程師提供直接支持,請登陸 TI E2E 社區:
TI e2e.ti.com