【導(dǎo)讀】隨著物聯(lián)網(wǎng) (IoT) 應(yīng)用變得越來越復(fù)雜,工業(yè)物聯(lián)網(wǎng) (IIoT) 端點的設(shè)計人員需要在邊緣提供更復(fù)雜的計算。在邊緣對端點傳感器數(shù)據(jù)進(jìn)行計算,這是減少 IIoT 中心網(wǎng)絡(luò)瓶頸的實用方法。如此一來,在減少網(wǎng)絡(luò)流量的同時,也降低了主中心處理器的計算負(fù)載。但是,該方法也有缺點。
隨著物聯(lián)網(wǎng) (IoT) 應(yīng)用變得越來越復(fù)雜,工業(yè)物聯(lián)網(wǎng) (IIoT) 端點的設(shè)計人員需要在邊緣提供更復(fù)雜的計算。在邊緣對端點傳感器數(shù)據(jù)進(jìn)行計算,這是減少 IIoT 中心網(wǎng)絡(luò)瓶頸的實用方法。如此一來,在減少網(wǎng)絡(luò)流量的同時,也降低了主中心處理器的計算負(fù)載。但是,該方法也有缺點。
例如,一種常見的 IIoT 邊緣應(yīng)用是處理周期性的模數(shù)轉(zhuǎn)換器 (ADC) 傳感器數(shù)據(jù)。對于高精度的模擬數(shù)據(jù),數(shù)百個 ADC 數(shù)據(jù)點的數(shù)學(xué)處理、解讀和插值會大幅加重邊緣主機處理器的負(fù)載,從而可能影響整個網(wǎng)絡(luò)的性能。此外,高精度 ADC 可能需要在物聯(lián)網(wǎng)端點的主機微控制器固件中執(zhí)行自校準(zhǔn),這可能會使所有邊緣處理延遲至校準(zhǔn)完成。
本文將向開發(fā)人員展示如何將來自 Analog Devices 的精密模擬微控制器用作智能 ADC 外設(shè)。文中將說明這些模擬微控制器的特性如何使其適合用作單芯片數(shù)據(jù)采集系統(tǒng),這些系統(tǒng)既能輕松連接至 IIoT 端點微控制器,又可執(zhí)行 ADC 數(shù)據(jù)點處理和自校準(zhǔn)等邊緣處理功能,而不會影響主端點微控制器的性能。
為什么要在邊緣處理模擬傳感器數(shù)據(jù)?
隨著 IIoT 系統(tǒng)變得越來越復(fù)雜,所需處理的數(shù)據(jù)也越來越復(fù)雜。對于工業(yè)控制應(yīng)用,閥門和某些電機正在從開環(huán)系統(tǒng)轉(zhuǎn)換為閉環(huán)系統(tǒng),在這種系統(tǒng)中精密模擬傳感器必須能檢測到微小的閥門或電機位置。對于過程控制應(yīng)用,更大的處理量使得生產(chǎn)線速度加快,對系統(tǒng)中的溫度、壓力和執(zhí)行器的控制更加精細(xì)。
在過程控制中,生產(chǎn)線(過程)的速度主要取決于兩個因素:地面上機器和系統(tǒng)的機械能力,以及控制機器和系統(tǒng)中傳感器和執(zhí)行器的 IIoT 網(wǎng)絡(luò)效率。在某些情況下,微小的過程改進(jìn)能夠讓產(chǎn)量增加,但這些改進(jìn)可能會因 IIoT 網(wǎng)絡(luò)瓶頸而受阻。通過在邊緣執(zhí)行更多處理,可以減少這些瓶頸。
在 IIoT 端點處執(zhí)行邊緣處理,對于處理模擬信號特別有利。在 IIoT 發(fā)展的早期階段,處理模擬數(shù)據(jù)可能會很簡單,但可擴展性是一個問題:后期的改進(jìn)會導(dǎo)致計算的復(fù)雜性增加。通過網(wǎng)絡(luò)發(fā)送所有原始模擬數(shù)據(jù)會增加網(wǎng)絡(luò)流量,而在網(wǎng)絡(luò)中心處理器上處理所有這些數(shù)據(jù),也會占用寶貴的計算時間。因此,在邊緣處理模擬數(shù)據(jù)是一種提高網(wǎng)絡(luò)效率的切實可行的方法。
使用智能 ADC 在邊緣處理模擬數(shù)據(jù)
在邊緣處理成百上千個 ADC 數(shù)據(jù)樣本,這很容易使 IIoT 端點的主微控制器不堪重負(fù)。對于復(fù)雜的模擬傳感器,明智的設(shè)計決策是使用自帶處理能力的外部 ADC。這不僅可大大減輕 IIoT 端點微控制器的負(fù)擔(dān),而且使 ADC 的自校準(zhǔn)更加容易。
為了實現(xiàn)高性能的 ADC 數(shù)據(jù)捕獲和處理,Analog Devices 提供了一系列精密的模擬微控制器。ADuCM360BCPZ128-R7 精密模擬微控制器使用 Arm® Cortex®-M3 控制兩個 24 位三角積分 ADC(圖 1)。ADC 能夠每秒捕獲 4 千個模擬傳感器數(shù)據(jù)樣本 (kSPS)。此外,ADuCM360 還帶有一個 12 位數(shù)模轉(zhuǎn)換器 (DAC),用于產(chǎn)生精確的電壓以進(jìn)行自我校準(zhǔn)。該微控制器的工作電壓范圍為 1.8 至 3.6 V,并包含一個內(nèi)部 32 kHz 振蕩器和一個內(nèi)部 16 MHz 振蕩器,從而減少了空間受限系統(tǒng)中的元器件數(shù)量。
ADuCM360 配有 128 KB 的閃存和 8 KB 的 SRAM。ADuCM360 的一大優(yōu)勢是可以直接寫入閃存位置,類似于寫入 SRAM。這使固件開發(fā)人員可以輕松地將閃存存儲塊劃分為程序存儲器和 EEPROM。在數(shù)據(jù)采集系統(tǒng)中,這允許將 EEPROM 分區(qū)存儲塊用于存儲 ADC 校準(zhǔn)數(shù)據(jù)。
閃存支持直接 32 位擦除和寫入(不支持 16 位和 8 位擦除和寫入)。閃存寫入和擦除操作需要消耗大量的電流,因此在電池供電的應(yīng)用中,一次寫入 32 位的能力可以節(jié)省大量電力。與每次只能寫入和擦除一個存儲塊或一頁的閃存微控制器相比,這具有顯著的低功耗優(yōu)勢。
該閃存還支持常規(guī)的閃存擦除命令,例如頁面擦除和整個閃存陣列的大規(guī)模擦除。憑借這些功能,開發(fā)人員可以輕松編寫子例程,根據(jù)從 IIoT 端點主機微控制器通過串口發(fā)送的命令更新固件。這一點很重要:如果 ADuCM360 無法通過串口輕松更新固件,則會嚴(yán)重限制其在數(shù)據(jù)采集系統(tǒng)中的靈活性,因為能夠更新控制 ADC 的固件,這與 ADC 本身同樣重要。
高效的單芯片數(shù)據(jù)采集系統(tǒng)
兩個 24 位 ADC 均連接到一個輸入多路復(fù)用器,共支持 11 個單通道或 6 個差分輸入。四個內(nèi)部通道可以監(jiān)測內(nèi)部溫度傳感器以及 12 位 DAC 的輸出,還有一個內(nèi)部低漂移帶隙基準(zhǔn)。這些可用于執(zhí)行 ADC 的自校準(zhǔn)。DAC 可以經(jīng)過編程,以輸出每個 ADC 都可以讀取的一系列電壓。ADC 還可以對內(nèi)部帶隙基準(zhǔn)電壓進(jìn)行采樣。固件可以處理這些讀數(shù),以便可以在溫度范圍內(nèi)校準(zhǔn) ADC,并將校準(zhǔn)常數(shù)存儲在 EEPROM 中。
當(dāng)用作單芯片數(shù)據(jù)采集系統(tǒng)時,ADC 可以經(jīng)過編程,以高達(dá) 4 kSPS 的采樣率采集連續(xù)的模擬數(shù)據(jù)樣本。一個 11 通道直接存儲器訪問 (DMA) 控制器可以將這些數(shù)據(jù)傳輸至 SRAM。然后,固件可以應(yīng)用 EEPROM 中存儲的校準(zhǔn)常數(shù)來修改數(shù)據(jù),并在必要時根據(jù)溫度進(jìn)行校正。接下來,固件可以根據(jù)應(yīng)用的要求處理數(shù)據(jù),同時 DMA 將其他 ADC 數(shù)據(jù)傳輸至 SRAM。
對存儲的 ADC 數(shù)據(jù)處理完成后,結(jié)果可以發(fā)送到串行接口以待傳輸?shù)?IIoT 端點微控制器,或者如果需要傳輸多個數(shù)據(jù)樣本,DMA 可以將數(shù)據(jù)批量傳輸?shù)酱薪涌?。采用這種方式,一個高效的數(shù)據(jù)采集系統(tǒng)可以同時對一組 ADC 數(shù)據(jù)進(jìn)行采樣并以 DMA 傳輸至 SRAM、處理第二組 ADC 數(shù)據(jù),并將第三組 ADC 數(shù)據(jù)以 DMA 傳輸至串行接口。
模擬輸入信號可通過可編程增益放大器 (PGA) 進(jìn)行放大,并且可以將其設(shè)置為 2 的冪,支持的增益值包括 2、4、8、16、32、64 和 128。這樣就可以放大很小的電壓,以實現(xiàn)更精確的 ADC 采樣。
雖然其他功能還包括一個 16 位六通道脈沖寬度調(diào)制 (PWM)、19 個通用 I/O (GPIO)、兩個 16 位通用定時器、一個 32 位喚醒/看門狗定時器,以及一個外部中斷系統(tǒng),但讓應(yīng)用固件保持專注于支持其 ADC 捕獲和數(shù)據(jù)處理的主要用途非常重要。若要求 ADuCM360 執(zhí)行與其模擬數(shù)據(jù)捕獲主要用途無關(guān)的附加功能,很容易導(dǎo)致功能蔓延,從而干擾該用途,同時還會使固件更新復(fù)雜化。
超低功耗特性
盡管 ADuCM360 具有高端模擬功能,但在高性能條件下,它仍然能夠?qū)崿F(xiàn)低功耗。在正常工作模式下,Cortex-M3 內(nèi)核僅消耗 290 微安 (µA)/MHz。在系統(tǒng)時鐘為 0.5 MHz、兩個 ADC 都在取樣、所有定時器都在運行、PGA 增益為 4 的情況下,當(dāng)從 SPI 接口訪問時,微控制器僅消耗 1 毫安 (mA) 的電流。這是在輸入緩沖器關(guān)閉的情況下,因為緩沖器電壓存儲會增加功耗。當(dāng)處于僅喚醒定時器運行的休眠模式時,微控制器僅消耗 4 µA 的電流。這使得 ADuCM361 適用于電池供電的 IIoT 端點。
對于不需要兩個 ADC 速度的不太復(fù)雜的應(yīng)用,Analog Devices 提供了 ADUCM361BCPZ128-R7。除了只有一個三角積分 24 位 ADC 外,它與 ADuCM360 相同(圖 2)。
在一些應(yīng)用中,如不需要兩個 24 位 ADC 同時運行來提供高性能,則使用 ADuCM361 可以降低系統(tǒng)成本和電路板功耗。單個 ADC 也連接到一個多路復(fù)用器,總共支持 11 個單通道或 6 個差分輸入。此外,該器件也可使用 12 位 DAC、內(nèi)部帶隙基準(zhǔn)和溫度傳感器進(jìn)行自校準(zhǔn)。
ADuCM361 與 ADuCM360 引腳兼容。這樣一來,一種印刷電路板布局就可用于這兩款產(chǎn)品。這簡化了產(chǎn)品開發(fā)和物料清單 (BOM),因為 IIoT 端點制造商可以使用一款印刷電路板來生產(chǎn)兩款或更多產(chǎn)品。
數(shù)據(jù)采集系統(tǒng)開發(fā)
對于產(chǎn)品開發(fā),Analog Devices 提供了 EVAL-ADuCM360QSPZ 評估套件(圖 3)。該評估板可連接到模擬傳感器或外部電壓源,用以開發(fā) ADuCM360 和 ADuCM361 模擬微控制器的固件。
該評估套件可由運行 Windows 的主機通過 USB 端口訪問。這樣就可以使用目標(biāo)固件對板載 ADuCM360 進(jìn)行編程,以進(jìn)行測試和調(diào)試。EVAL-ADuCM360QSPZ 的印刷電路板上具有 ADuCM360 的所有引腳,包括串行 I/O,因此該評估板可以通過 I2C、SPI 或 UART 連接至主機微控制器以進(jìn)行實時調(diào)試。Windows 主機可以記錄 ADC 數(shù)據(jù),還可以調(diào)試自校準(zhǔn)程序的準(zhǔn)確性。
總結(jié)
在過程控制等高端模擬應(yīng)用中,所采用的許多 IIoT 端點需要對使用 ADC 捕獲的模擬傳感器數(shù)據(jù)進(jìn)行更多的邊緣處理。ADC 數(shù)據(jù)量和邊緣處理的復(fù)雜性會使 IIoT 端點主微控制器不堪重負(fù)。主端點微控制器可改為使用串口連接至一個模擬微控制器,并且該模擬微控制器是一個自足式數(shù)據(jù)采集系統(tǒng)。這樣可以提高端點的性能并減少網(wǎng)絡(luò)流量,從而讓 IIoT 網(wǎng)絡(luò)更為高效。
(轉(zhuǎn)載自電子發(fā)燒友網(wǎng),來源:Digi-Key,作者:Bill Giovino)
免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請電話或者郵箱聯(lián)系小編進(jìn)行侵刪。