Franco Contadini
4-20mA電流環(huán)路是工業(yè)過程監(jiān)控應用中傳輸傳感器信息的常用技術。(傳感器測量物理參數(shù),如溫度、壓力、速度和液體流速。電流環(huán)路信號對噪聲相對不敏感,其功率可以從遠程供電的電壓中獲得。這使得電流環(huán)路在信息必須長距離傳輸?shù)竭h程位置時特別有用。
簡單的循環(huán)操作
在電流環(huán)路中,傳感器的輸出電壓首先轉換為比例電流,其中4mA通常表示傳感器的零電平輸出,20mA表示滿量程輸出。遠端的接收器將4-20mA電流轉換回電壓,該電壓可由計算機或顯示模塊進一步處理。
典型的4-20mA電流環(huán)路電路由四個元件組成:傳感器/變送器、電壓-電流轉換器、環(huán)路電源和接收器/監(jiān)視器。在環(huán)路供電應用中,傳感器驅動電壓-電流轉換器,其他三個元件串聯(lián)起來形成閉環(huán)(圖 1)。
圖1.4-20mA環(huán)路供電電路示意圖
智能4-20mA變送器
傳統(tǒng)上,4-20mA變送器包括一個現(xiàn)場安裝的器件,該器件感測物理參數(shù)并產生4-20mA標準范圍內的比例電流。為了響應行業(yè)需求,第二代4-20mA變送器,稱為“智能變送器”,使用微控制器(μC)和數(shù)據(jù)轉換器遠程調節(jié)信號。
智能變送器可以歸一化增益和偏移,通過將模擬信號轉換為數(shù)字信號(例如RTD傳感器和熱電偶)來線性化傳感器,使用駐留在μC中的算術算法處理信號,轉換回模擬信號,并將結果作為標準電流沿環(huán)路傳輸。
最新的第三代4-20mA發(fā)送器(圖2)被認為是“智能和智能”的。它們增加了數(shù)字通信,與4-20mA信號共享雙絞線。由此產生的通信通道可以傳輸控制和診斷信號以及傳感器數(shù)據(jù)。
圖2.智能和智能4-20mA變送器示意圖。
智能發(fā)射器使用的通信標準是Hart協(xié)議,該協(xié)議采用頻移鍵控(FSK),并基于貝爾202電話通信標準。數(shù)字信號的第 1 位和第 0 位分別由頻率 1200Hz 和 2200Hz 表示。這些頻率的正弦波疊加在傳感器的直流模擬信號上,以提供同步的模擬和數(shù)字通信(圖 3)。
圖3.同步模擬和數(shù)字通信。
4-20mA模擬信號在此過程中不受影響,因為FSK信號的平均值始終為零。數(shù)字狀態(tài)每秒可以改變兩到三次,而不會中斷模擬信號。允許的最小環(huán)路阻抗為23Ω。
智能、智能 4-20mA 發(fā)送器的基本 μC 要求
μC必須具備三種特定功能才能執(zhí)行這種4-20mA電流環(huán)路應用。μC 需要:
一個串行接口,用于驅動用于數(shù)據(jù)采集的ADC,用于設置環(huán)路電流的DAC。
低功耗,因為當前預算為4mA。
乘法累加單元(MAC),它既實現(xiàn)了應用于輸入信號的數(shù)字濾波器,又對Hart協(xié)議的兩個頻率進行編碼和解碼。
選擇微C
上述必要功能在MAXQ系列RISC μC中均有(圖4)。
圖4.MAXQ μC架構示意圖
模擬功能 MAXQ μC實現(xiàn)多種模擬功能
。時鐘管理方案僅向當前正在使用的塊提供時鐘。例如,如果指令涉及數(shù)據(jù)指針(DP)和算術邏輯單元(ALU),則時鐘僅應用于這兩個塊。該技術可降低功耗并降低開關噪聲。
低功耗 MAXQ μC具有先進的電源管理功能,通過動態(tài)匹配μC處理速度和所需的性能水平,將功耗降至最低。功耗較慢,例如,在活動減少期間。為了施加更大的處理能力,μC提高了其工作頻率。
PMM1:被 256 分頻電源管理模式
PMM2:32kHz 電源管理模式(PMME = 1,其中 PMME 是系統(tǒng)時鐘控制寄存器的 BIT 2)
停止模式(停止 = 1)
濾波信號處理
MAXQ μC內部的MAC實現(xiàn)4-20mA應用所需的信號處理。模擬信號被呈現(xiàn)給ADC,產生的采樣流在數(shù)字域中被濾波??梢允褂靡韵鹿綄崿F(xiàn)通用篩選器:
y[n] = Σbix[n-i] + Σaiy[n-i]
其中 b我和我分別表征系統(tǒng)的前饋和反饋響應。取決于我和 b我,數(shù)字濾波器可分為有限脈沖響應(FIR)或無限脈沖響應(IIR)。當系統(tǒng)不包含反饋元素(所有我= 0),濾波器為 FIR 類型:
y[n] = Σbix[n-i]
如果兩者都我和 b我元素不為零,但是,過濾器是 IIR 類型。
從上面的FIR濾波器等式中可以看出,主要的數(shù)學運算將每個輸入樣本乘以一個常數(shù),然后將每個乘積累加到n個值上。這些操作由以下 C 片段說明:
y[n]=0; for(i=0; iMAXQ μC的MAC執(zhí)行該操作的執(zhí)行時間為4 + 5n個周期,代碼空間僅為9個字(而傳統(tǒng)μC和MAC需要12個字)。
move DP[0], #x ; DP[0] -> x[0] move DP[1], #b ; DP[1] -> b[0] move LC[0], #loop_cnt ; LC[0] -> number of samples move MCNT, #INIT_MAC ; Initialize MAC unit MAC_LOOP: move DP[0], DP[0] ; Activate DP[0] move MA, @DP[0]++ ; Get sample into MAC move DP[1], DP[1] ; Activate DP[1] move MB, @DP[1]++ ; Get coeff into MAC and multiply djnz LC[0], MAC_LOOP.在MAXQ的MAC中,請注意,當?shù)诙€操作數(shù)加載到單元中并且結果存儲在MC寄存器中時,會自動發(fā)生請求的操作。另請注意,MC 寄存器寬度(40 位)在溢出之前可以累積大量 32 位乘法結果。這種能力改進了傳統(tǒng)方法,在傳統(tǒng)方法中,每次原子操作后都必須測試溢出。
MAXQ2000 μC的獨特功能
ADI公司MAXQ系列的第一個成員是低功耗、16位RISC微控制器,稱為MAXQ2000。它集成了一個用于液晶顯示器 (LCD) 的接口,可驅動多達 100 個 (-RBX) 或 132 個 (-RAX) 段。MAXQ2000非常適合血糖監(jiān)測,適合于任何要求高性能和低功耗的應用。它的最大工作頻率為 14MHz (VDD > 1.8V) 或 20MHz (VDD > 2.25V)。
MAXQ2000包括32k字閃存(用于原型設計和小批量生產)、1k字RAM、16個1位定時器和8個或2000個通用同步/異步接收器/發(fā)送器(UART)。為提高靈活性,微控制器內核 (<>.<>V) 和 I/O 子系統(tǒng)采用單獨的電源電壓。超低功耗休眠模式使MAXQ<>非常適合便攜式和電池供電設備。
MAXQ2000評估板
功能強大的MAXQ2000 μC可通過評估板(EV)進行評估,評估板是MAXQ2000的完整硬件開發(fā)環(huán)境(圖6)。
圖6.MAXQ2000評估板框圖
MAXQ2000評估板具有以下特性:
用于MAXQ2000內核和VDDIO電源軌的板載電源。
可調電源(1.8V至3.6V),可用于VDDIO或VLCD電源軌。
用于所有MAXQ2000信號和電源電壓的接頭引腳。
獨立的液晶子板連接器。
LCD子板,帶3V,3.5位靜態(tài)LCD顯示屏。
用于串行UART(線路232)的完整RS-0電平驅動器,包括流量控制線路。
用于外部中斷和微控制器系統(tǒng)復位的按鈕。
MAX1407多用途模數(shù)模數(shù)轉換器/DACIC,連接MAXQ2000 SPI總線接口。
1線接口和1線EEPROM IC。
條形圖 LED 顯示屏,用于顯示端口引腳 P0.7 至 P0.0 處的電平。
用于應用程序加載和系統(tǒng)內調試的JTAG接口。
因此,MAXQ2000評估板具有實現(xiàn)智能4-20mA發(fā)送器所需的全部功能:具有真正乘法累加單元的低功耗μC(用于濾波和音調編碼/解碼);用于傳感器讀數(shù)的 ADC;以及用于生成模擬輸出信號的DAC(圖7)。通過增加MAX1102等低功耗編解碼器,還可以實現(xiàn)HART調制解調器。
圖7.基于MAXQ4 μC的20-2000mA發(fā)送器
HART調制解調器實現(xiàn)
如果系統(tǒng)包括1200Hz和2200Hz(代表位1和0)的音調編碼器,則MAC可用于實現(xiàn)HART調制解調器請求的功能,以及這些頻率的音調檢測。
要生成所需的正弦波,您可以將遞歸數(shù)字諧振器實現(xiàn)為雙極點濾波器,由以下差分方程描述:
Xn= k * XN-1, yN-2,
其中常數(shù) k 等于 2 cos(2π*音調頻率/采樣率)。k的兩個值可以預先計算并存儲在ROM中。例如,以 1200kHz 采樣率產生 8Hz 音調所需的值為 k = 2 cos(2π*1200/8000)。
您還必須計算使振蕩器開始運行所需的初始脈沖。如果 XN-1和 XN-2都是零,然后每個后續(xù)的 Xn將為零。要啟動振蕩器,請設置 XN-1為零并設置 XN-2如下:
XN-2= -A*sin[2π(音調頻率/采樣率)]
假設我們的示例為單位正弦波,此方程簡化為 XN-2= -1sin[(2π(1200/8000)]。若要進一步將其簡化為代碼,請首先初始化兩個中間變量(X1、X2)。X1 初始化為零;X2加載初始激勵值(上面計算)以開始振蕩。因此,要生成正弦波的一個樣本,請執(zhí)行以下操作:
X0 = kX1 - X2 X2 = X1 X1 = X0計算每個新的正弦值需要一次乘法和一次減法。利用MAXQ μC上的單周期硬件MAC,可以產生如下正弦波:
move DP[0], #X1 ; DP[0] -> X1 move MCNT, #INIT_MAC ; Initialize MAC unit move MA, #k ; MA = k move MB, @DP[0]++ ; MB = X1, MC=k*X1, point to X2 move MA, #-1 ; MA = -1 move MB, @DP[0]-- ; MB = X2, MC=k*X1-X2, point to X1 nop ; wait for result move @--DP[0], MC ; Store result at X0.因為我們只需要檢測兩個頻率,所以我們使用改進的Goertzel算法,它可以作為簡單的二階濾波器實現(xiàn)(圖8)。
圖8.Goertzel 算法實現(xiàn)為一個簡單的二階濾波器。
要使用 Goertzel 算法檢測特定頻率,請在編譯時首先使用以下公式計算常量的值:
k = tone frequency/sampling rate a1 = 2cos(2πk)接下來,將中間變量 D0、D1 和 D2 初始化為零,并對收到的每個樣本 X 執(zhí)行以下操作:
D0 = X + a1*D1 - D2 D2 = D1 D1 = D0在收到足夠數(shù)量的樣本(205kHz采樣率通常為8個樣本)后,使用D1和D2的最新計算值計算以下內容:
P = D12 + D22 - a1 * D1 * D2.P現(xiàn)在包含輸入信號中測試頻率的平方功率的度量。
為了解碼這兩種音調,我們用兩個過濾器處理每個樣本。 每個篩選器都有自己的 k 值和自己的一組中間變量。每個變量的長度為 16 位,因此整個算法需要 48 字節(jié)的中間存儲。
審核編輯:郭婷
-
微控制器
+關注
關注
48文章
7546瀏覽量
151325 -
傳感器
+關注
關注
2550文章
51044瀏覽量
753118 -
接收器
+關注
關注
14文章
2468瀏覽量
71878
發(fā)布評論請先 登錄
相關推薦
評論