在關(guān)注機(jī)器健康和其他物聯(lián)網(wǎng)(IoT)解決方案的現(xiàn)代應(yīng)用中,隨著檢測(cè)功能的日趨普及,對(duì)更簡(jiǎn)單的接口以及更少的I/O和更小的器件尺寸的需求也隨之增長(zhǎng)。連接到單個(gè)微處理器或FPGA的器件密度不斷增加,而應(yīng)用空間(以及由此導(dǎo)致的I/O引腳數(shù)量)卻受到限制。在理想情況下,所有應(yīng)用都需要一個(gè)ASIC來(lái)提供小巧的集成式解決方案。
但是,ASIC的開(kāi)發(fā)既耗時(shí)又昂貴,并且不具備滿足其他用途的靈活性。因此,越來(lái)越多的應(yīng)用都在使用微處理器或尺寸小巧的FPGA,以便能夠經(jīng)濟(jì)高效地按時(shí)完成產(chǎn)品開(kāi)發(fā)。在本文中,我們將探討一種溫度-頻率轉(zhuǎn)換器,它只需要使用一個(gè)GPIO引腳即可提供準(zhǔn)確的溫度結(jié)果。本文還將演示如何將電壓-頻率轉(zhuǎn)換器用于各種檢測(cè)應(yīng)用。
動(dòng)機(jī)
某些傳感器測(cè)量值(例如溫度、濕度和氣壓)本質(zhì)上是直流電,而且其變化速率并未快到(它們也不需要足夠精確的分辨率)足以保證ADC的需求以及與之相關(guān)的設(shè)計(jì)考慮。大多數(shù)ADC要求快速準(zhǔn)確的時(shí)鐘生成和時(shí)序、穩(wěn)定的基準(zhǔn)電壓、具有非常低輸出阻抗的基準(zhǔn)緩沖器以及模擬前端電路,以便對(duì)傳感器輸出進(jìn)行適當(dāng)?shù)?a target="_blank">信號(hào)調(diào)理,然后才能對(duì)其進(jìn)行數(shù)字量化并通過(guò)系統(tǒng)進(jìn)行監(jiān)控。在進(jìn)行環(huán)境溫度檢測(cè)時(shí),分立式應(yīng)用可能會(huì)在惠斯通電橋中使用一個(gè)熱敏電阻,然后由儀表放大器獲得其輸出,再饋入ADC。這種設(shè)計(jì)屬于過(guò)度設(shè)計(jì),需要超出應(yīng)用所需的更多空間、功率和計(jì)算周期,而應(yīng)用本身可能僅需要每15秒進(jìn)行一次測(cè)量。
能否設(shè)計(jì)一種替代性測(cè)量解決方案,既能減少與ADC信號(hào)鏈相關(guān)的元件數(shù)量和復(fù)雜性,還能測(cè)量模擬電壓?該解決方案就是采用一個(gè)電壓-頻率轉(zhuǎn)換器(例如 LTC6990, 將其配置為電壓控制振蕩器(VCO)模式,這樣就可以用來(lái)測(cè)量模擬電壓,而無(wú)需ADC。在本示例中,將精密熱電偶放大器 AD8494配置為環(huán)境溫度傳感器,其輸出電壓用作LTC6990的輸入,從而生成一個(gè)溫度-頻率轉(zhuǎn)換器的信號(hào)鏈。
圖1. 簡(jiǎn)單的溫度-頻率轉(zhuǎn)換器。
如何將溫度輸入轉(zhuǎn)換為頻率輸出?
如今,許多現(xiàn)代電子設(shè)備都需要板載溫度監(jiān)控系統(tǒng)。將模擬信號(hào)轉(zhuǎn)換為脈寬調(diào)制信號(hào)或數(shù)字信號(hào)的方法已有大量的文獻(xiàn)記載。但是,如果測(cè)量解決方案需要一個(gè)ADC,則存在一些與成本、精度和速率相關(guān)的不利因素。通常,測(cè)量越精確,解決方案就越昂貴。該電路提供了一種低成本且易于連接的通用解決方案,其精度可以根據(jù)溫度測(cè)量系統(tǒng)的需求而改變。
AD8494是一款熱電偶精密放大器,但它也可以通過(guò)將其輸入短路接地用作環(huán)境溫度傳感器。輸出則定義為:
在使用單極性電源的電路中, –VS=地電壓(0 V),同時(shí)還必須向AD8494的REF引腳施加一個(gè)失調(diào)電壓,從而使輸出電壓偏置高于地電壓,即使環(huán)境溫度為負(fù)時(shí)也是如此。
溫度傳感器的輸出電壓 VOUT定義為:
在VCO模式下,LTC6990的頻率輸出定義為:
由于AD8494的輸出電壓是LTC6990的 VCTRL因此可以用公式1來(lái)替換公式2中的 VCTRL設(shè)定 RSET= R-VCO則得到以下結(jié)果:
這樣就可以解出Tambient消掉電壓?jiǎn)挝?,于是得到公?:
得到頻率輸出了,有什么用處呢?
頻率輸出的美妙之處在于可以使用單個(gè)GPIO引腳進(jìn)行傳感器測(cè)量。如果使用圖3所示的同步計(jì)數(shù)器電路,那么在其CLK_IN輸入端將始終會(huì)觀察到時(shí)鐘的上升沿。如果將LTC6990的 FOUT用作輸入時(shí)鐘,則每次檢測(cè)到 FOUT的上升沿時(shí),計(jì)數(shù)器都會(huì)遞增,從而創(chuàng)建了一個(gè)周期計(jì)數(shù)器。如果每次測(cè)量之間的時(shí)間間隔保持恒定,則可以計(jì)數(shù)給定時(shí)間間隔內(nèi)的周期數(shù),并可通過(guò)浮點(diǎn)運(yùn)算或查找表計(jì)算出頻率。將采集時(shí)間 TAcquisitionn除以計(jì)數(shù)所得的周期數(shù),可以得出 FOUT的周期。對(duì)該關(guān)系式取倒數(shù)則得到公式6。
圖2. 一個(gè)以LTC6990輸出作為其時(shí)鐘輸入的4位同步計(jì)數(shù)器。
Verilog代碼示例顯示了一個(gè)通過(guò)使用FPGA上的單個(gè)GPIO輸入來(lái)計(jì)數(shù)周期數(shù)的函數(shù)。采集周期越長(zhǎng),測(cè)量結(jié)果就越精確。在下述代碼示例中,使用了一個(gè)16位計(jì)數(shù)器來(lái)提高分辨率。同時(shí)還假定在架構(gòu)的更高層級(jí)執(zhí)行采集時(shí)間測(cè)量控制邏輯。
圖3. Verilog代碼示例。
圖4. 溫度-頻率轉(zhuǎn)換器傳遞函數(shù)。
結(jié)論
在本應(yīng)用中,我們討論了一種新型的溫度-頻率轉(zhuǎn)換器。它提供了一種精確測(cè)量溫度的低成本方法。如果溫度超過(guò)–40°C至+125°C的工業(yè)溫度范圍,則可在傳感器的輸入端安裝一個(gè)熱電偶。下圖總結(jié)列出了測(cè)量系統(tǒng)的誤差。它說(shuō)明了環(huán)境溫度與輸出頻率以及系統(tǒng)精度之間的線性關(guān)系。盡管此解決方案可能無(wú)法提供非常好的溫度分辨率結(jié)果,但對(duì)于可接受大約±2°C誤差的應(yīng)用,它提供了一個(gè)經(jīng)濟(jì)簡(jiǎn)單的溫度測(cè)量接口。此外,采用電壓-頻率轉(zhuǎn)換器的概念也可用于測(cè)量其他類型的傳感器輸出,且無(wú)需使用ADC。
圖5. 溫度誤差。
-
FPGA
+關(guān)注
關(guān)注
1625文章
21620瀏覽量
601239 -
微處理器
+關(guān)注
關(guān)注
11文章
2244瀏覽量
82267 -
Verilog
+關(guān)注
關(guān)注
28文章
1343瀏覽量
109925 -
GPIO
+關(guān)注
關(guān)注
16文章
1188瀏覽量
51836 -
亞德諾
+關(guān)注
關(guān)注
6文章
4680瀏覽量
15905
原文標(biāo)題:如果FPGA/微處理器上只剩下一個(gè)GPIO,該如何進(jìn)行模擬測(cè)量?
文章出處:【微信號(hào):analog_devices,微信公眾號(hào):analog_devices】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論