智能信感器信號(hào)處理的慨念
傳感器是用于檢測(cè)、監(jiān)視和響應(yīng)(如有需要)溫度、壓力、濕度和運(yùn)動(dòng)等物理參數(shù)的器件。它們是許多實(shí)際系統(tǒng)不可或缺的組件,在工業(yè)、消費(fèi)電子、汽車、醫(yī)療和軍事方面應(yīng)用非常廣泛。過(guò)去,從傳感器獲取的數(shù)據(jù)被直接發(fā)送到中央單元,然后中央單元可能會(huì)使用分立式硬件或數(shù)字邏輯對(duì)傳感器數(shù)據(jù)執(zhí)行后處理或顯示。隨著8位單片機(jī)(MCU)等嵌入式處理器解決方案的出現(xiàn),將程序固定的中央硬件替換為可通過(guò)編程來(lái)執(zhí)行應(yīng)用所需特定任務(wù)的MCU所帶來(lái)的優(yōu)勢(shì)愈加明顯。但是,8位MCU只能執(zhí)行計(jì)算密集度不大的系統(tǒng)基本處理任務(wù)。
傳感器信號(hào)融合
傳感器應(yīng)用復(fù)雜度的飛速提升使得將更強(qiáng)大的智能嵌入到傳感器接口勢(shì)在必行。很多應(yīng)用均采用多個(gè)傳感器來(lái)獲取各種測(cè)量數(shù)據(jù),并且采用十分先進(jìn)的方法對(duì)數(shù)據(jù)進(jìn)行處理。在某些情況下,必須同時(shí)處理來(lái)自多種傳感器的信號(hào)(因而需要利用同一個(gè)MCU),這種情形可以稱為“傳感器信號(hào)融合”。每種類型的傳感器都有自己的信號(hào)特性,并且需要通過(guò)不同的后處理來(lái)從中提取有用的信息,這就會(huì)增大CPU計(jì)算量和外設(shè)數(shù)據(jù)處理量。
容錯(cuò)
對(duì)于處理器而言,監(jiān)視傳感器信號(hào)和檢測(cè)可能會(huì)引起系統(tǒng)完全失效的錯(cuò)誤也非常有用:檢測(cè)出錯(cuò)誤情況之后可完全關(guān)閉系統(tǒng)或切換到冗余備份傳感器。如果在錯(cuò)誤檢測(cè)流程中再加入一個(gè)步驟,就可以在故障實(shí)際發(fā)生之前對(duì)其進(jìn)行預(yù)測(cè),這將大大簡(jiǎn)化現(xiàn)場(chǎng)硬件維護(hù)和保養(yǎng)。此類“容錯(cuò)”算法和技術(shù)可能會(huì)相當(dāng)復(fù)雜,需要更高的計(jì)算能力、更大的存儲(chǔ)容量和更豐富的外設(shè)功能,因此有必要升級(jí)到16位MCU。
分布式處理
在許多應(yīng)用中,傳感器物理地分散在較廣的區(qū)域內(nèi),如分散在大型建筑或工廠內(nèi),或分散在汽車的不同零部件內(nèi)。對(duì)于這樣的分布式系統(tǒng)來(lái)說(shuō)、集中式處理/控制方法往往被證實(shí)無(wú)效、或者在最佳情況下仍然低效。要減輕中央控制單元在處理和數(shù)據(jù)存儲(chǔ)方面的壓力,最好將處理能力分散到多個(gè)靠近傳感器或者甚至與傳感器集成的MCU上。但是這種“分布式傳感器處理”方法需要各種強(qiáng)大的信號(hào)轉(zhuǎn)換和通信外設(shè)。
智能傳感器處理信號(hào)鏈
傳感器信號(hào)處理包括各種各樣的嵌入式應(yīng)用,但是我們可以概括地定義代表傳感器處理系統(tǒng)特點(diǎn)的通用信號(hào)鏈。傳感器應(yīng)用的主要組件是傳感元件(也稱為變換器)、信號(hào)調(diào)理電路(多數(shù)是模擬電路元件),以及嵌入式微處理器(或者,在某些情況下是簡(jiǎn)單硬連線的數(shù)字邏輯電路或?qū)S肐C,即ASIC)。
傳感元件
傳感元件(實(shí)際上就是“傳感器”的意思)是用于將感興趣的物理參數(shù)轉(zhuǎn)換成某種電信號(hào)的器件。智能傳感器處理應(yīng)用經(jīng)常使用多個(gè)傳感元件,它們或者屬于同一類型(例如空調(diào)系統(tǒng)中的多個(gè)熱敏電阻)?;蛘邔儆诓煌愋?例如一臺(tái)工業(yè)機(jī)械設(shè)備中的熱電偶和一氧化碳探測(cè)器)。每種類型的傳感器都有自己的一套信號(hào)調(diào)理和數(shù)據(jù)后處理要求。
可以根據(jù)所測(cè)量的物理參數(shù)對(duì)傳感元件進(jìn)行廣義分類。例如:溫度傳感器,壓力傳感器,流量傳感器,氣體/化學(xué)傳感器,聲音/超聲波傳感器,位置/運(yùn)動(dòng)傳感器,加速計(jì),圖像傳感器,光傳感器等。
也可以根據(jù)傳感器輸出的電信號(hào)的類型對(duì)傳感器進(jìn)行分類。概括而言,共有4種常見的傳感器類型:電壓傳感器、電流傳感器、頻率傳感器、數(shù)字傳感器。
傳感器的信號(hào)調(diào)理電路
簡(jiǎn)單地說(shuō),信號(hào)調(diào)理電路將傳感元件的輸出信號(hào)映射到其余電子電路或應(yīng)用軟件可以處理的范圍內(nèi)。傳感器應(yīng)用所需的具體信號(hào)調(diào)理電路取決于所采用的傳感器的類型。例如,某個(gè)傳感器根據(jù)所測(cè)量的物理參數(shù)的大小產(chǎn)生輸出電壓,其需要的信號(hào)調(diào)理能力可能不同于產(chǎn)生可變電阻的傳感器。從本質(zhì)上說(shuō),傳感器應(yīng)用均有以下共同的信號(hào)調(diào)理要求。
首先、傳感器產(chǎn)生的信號(hào)必須盡量避免混入噪聲。而且、信號(hào)的頻譜(也就是信號(hào)帶寬)必須根據(jù)某些約束條件限制在特定的范圍內(nèi)。因而常常有必要使用一種稱為防混疊濾波器的器件。其次,傳感器產(chǎn)生的信號(hào)(不管是電壓、電流還是頻率)的振幅通常較小。為了準(zhǔn)確處理信號(hào),使系統(tǒng)盡量不受噪聲的影響,需要將信號(hào)放大。
除了濾波和放大之外,還需要使用模數(shù)轉(zhuǎn)換器(ADC)將信號(hào)轉(zhuǎn)換成數(shù)字形式,這增加了信號(hào)調(diào)理要求。除了耍放大信號(hào),可能還需要對(duì)信號(hào)進(jìn)行轉(zhuǎn)換,使其能適應(yīng)不同的ADC參考電壓。但是,很多ADC,尤其是MCU或數(shù)字信號(hào)控制器(Dsc)中包含的ADC,僅對(duì)單極性輸入有效。也就是說(shuō),輸入電壓不能相對(duì)于地在正負(fù)電平之間變換。在這種情況下,就需要使用電平位移器。
圖2舉例示出了某個(gè)具體的傳感器處理應(yīng)用所需的信號(hào)調(diào)理電路。在本例中,使用一個(gè)三運(yùn)放差分放大器將熱電偶產(chǎn)生的差分輸出電壓放大,然后送入片上ADC的輸入端。與此相似,ADC的另一個(gè)輸入可用于補(bǔ)償熱電偶引線結(jié)點(diǎn)和PCB(印制板)布線交匯處產(chǎn)生的電壓的影響(更多地用于補(bǔ)償后者)。
傳感器的處理器
即使在經(jīng)過(guò)相當(dāng)多的信號(hào)調(diào)理之后,若可從隨時(shí)間變化的電信號(hào)中提取出相關(guān)信息,傳感器產(chǎn)生的信號(hào)才有用。這一提取過(guò)程通過(guò)嵌入式微處理器來(lái)完成,傳統(tǒng)上使用MCU或DSP。因此,顯而易見,處理器的功能以及其上運(yùn)行的應(yīng)用軟件的功能才是系統(tǒng)中最關(guān)鍵的因素——這就是為智能傳感器處理系統(tǒng)提供所有“智能”的處理器子系統(tǒng)。
處理傳感器的輸出的第一步是將模擬信號(hào)(通常被調(diào)理成提供變化的模擬電壓)轉(zhuǎn)換成數(shù)字形式。由此可以推斷,ADc在決定整個(gè)傳感器處理系統(tǒng)的精確度方面起著至關(guān)重要的作用。ADc必須提供足夠高的分辨率和具有較好的精度特性,如積分非線性(Integral Non-Linearity,INL)和微分非線性(DifferentiM Non-Linearity,DNL)。
通常,可能需要對(duì)從傳感器獲取的數(shù)據(jù)執(zhí)行大量的后處理操作。此類操作的例子如下。
·數(shù)據(jù)的有限沖激響應(yīng)(Finite Impulse Response,F(xiàn)IR)和無(wú)限沖激響應(yīng)(Infinite Impulse Response,IIR)濾波,主要用于消除噪聲??赡苄枰煌愋偷臑V波器。例如,如果目標(biāo)僅僅是限制信號(hào)的帶寬和去除高頻噪聲,則使用低通濾波器或帶通濾波器比較合適。男一方面,如果系統(tǒng)易受電源引入的噪聲的影響,則使用高通濾波器或陷波濾波器(具體取決于所需信號(hào)的頻譜)更合適。
·進(jìn)行快速傅里葉變換(FFT)計(jì)算以分析數(shù)據(jù),以便將頻域數(shù)據(jù)用于進(jìn)一步的處理階段。這一操作對(duì)于信息包含在輸出信號(hào)的頻率中的傳感器尤為重要,例如基于多普勒效應(yīng)的超聲波傳感器或聲音傳感器。
·傳感器數(shù)據(jù)的靜態(tài)或周期性校準(zhǔn)。校準(zhǔn)是通過(guò)提供一組已知的傳感器輸入并測(cè)量相應(yīng)的輸出來(lái)設(shè)置傳感器輸出與所需物理參數(shù)之間的映射的過(guò)程。
·傳感器輸出與所測(cè)量的物理參數(shù)之間通常不是線性關(guān)系。在此類情況下(例如熱電偶),必須將采樣后的傳感器數(shù)據(jù)“線性化”以補(bǔ)償輸入/輸出之間的這種非線性關(guān)系。該過(guò)程通常會(huì)涉及高密集度的計(jì)算,如應(yīng)用高次多項(xiàng)式。
·根據(jù)輸入數(shù)據(jù)的大小對(duì)其進(jìn)行換算和歸一化。此類計(jì)算要求傳感器接口使用的處理器具有相當(dāng)高速的數(shù)學(xué)運(yùn)算能力。普通的16位MCU架構(gòu)無(wú)法滿足要求。
此外,在很多應(yīng)用中,并不只是簡(jiǎn)單地對(duì)傳感器信號(hào)進(jìn)行分析和解讀,還需要執(zhí)行控制操作對(duì)傳感器信號(hào)進(jìn)行響應(yīng)。這些操作可能包括以下任務(wù):
·調(diào)整傳感器信號(hào)分析軟件所使用的校準(zhǔn)參數(shù),以便可以正確分析傳感器輸出:
·向其他處理子系統(tǒng)傳送數(shù)據(jù),例如,汽車輪胎上的胎壓監(jiān)視器向儀表盤定期發(fā)送壓力數(shù)據(jù)并發(fā)送警報(bào):
·在互聯(lián)網(wǎng)上更新數(shù)據(jù),例如定期讀取電表讀數(shù)或定期收集工業(yè)數(shù)據(jù)采集系統(tǒng)的數(shù)據(jù):
·控制電機(jī)、電源、繼電器、開關(guān)和其他器件:
·容錯(cuò)措施,如修正與故障傳感器對(duì)應(yīng)的數(shù)據(jù)或切換到其他傳感元件。
傳統(tǒng)上使用數(shù)字信號(hào)處理器(DsP)執(zhí)行此類數(shù)學(xué)計(jì)算密集的任務(wù)。不過(guò),DSP本身(沒有關(guān)聯(lián)MCU)并不是非常適用于傳感器接口。理由主要有四個(gè):
·DsP器件沒有靈活的中斷結(jié)構(gòu):
·DSP器件在控制位(例如單獨(dú)的I/O引腳)方面的效率不高:
·DSP器件在很大程度上依賴于片外存儲(chǔ)器和外設(shè):
·DSP器件的引腳數(shù)一般都比較多,但是傳感器處理所需的引腳數(shù)應(yīng)該要非常少,這一點(diǎn)非常重要,因?yàn)楹芏鄳?yīng)用一般都有空間限制,并且對(duì)成本敏感。
另一種適用于高性能智能傳感器系統(tǒng)的有效單片架構(gòu)平臺(tái)是16位數(shù)字信號(hào)控制器(DSC),如MicrochipTechnology(美國(guó)微芯科技公司)的dsPIC33F系列。Dsc是一種創(chuàng)新的混合處理器架構(gòu),它集16位MCU的控制功能與豐富的DSP功能于一身。DSC架構(gòu)非常適用于提供周期性中斷,以及捕捉來(lái)自多個(gè)傳感器和控制輸入端的數(shù)據(jù)。如果需要,DSC架構(gòu)可以與分布式系統(tǒng)中的其他控制器模塊共享數(shù)據(jù)。另一方面,DSC的CPU支持一系列強(qiáng)大的DSP指令和靈活的尋址模式,因而能句多快速準(zhǔn)確地進(jìn)行算術(shù)和邏輯運(yùn)算?,F(xiàn)在,讓我們來(lái)深入了解使DSC架構(gòu)適用于智能傳感器信號(hào)處理的典型特性。