紅外熱像儀是利用紅外探測器、光學成像物鏡和光機掃描系統(目前先進的焦平面技術省去了光機掃描系統)接收被測目標的紅外輻射能量分布圖形反映到紅外探測器的光敏元上,在光學系統和紅外探測器之間,有一個光機掃描機構(焦平面熱像儀無此機構)對被測物體的紅外熱像進行掃描,并聚焦在單元或分光探測器上。由探測器將紅外輻射能轉換成電信號,經放大處理、轉換為標準視頻信號,通過電視屏或監視器顯示紅外熱像圖。這種熱像圖與物體表面的熱分布場相對應。除顯示紅外熱輻射圖像,紅外熱像儀還能提供精確的非接觸溫度測量功能。
從帶有掃描裝置的第一代熱像儀到焦平面陣列式結構的凝成像紅外熱像儀,紅外熱像儀已從笨重、操作復雜發展成為輕巧、操作方便簡潔的便攜式手持設備。
高性能處理器芯片的不斷發展,給紅外熱像儀帶來了新的動力。利用恰當的處理器,可以提高圖像的處理速度,并設計出更精巧的產品。本文就此討論基于非制冷焦平面探測器和高性能雙核處理器OMAPl510的紅外熱像儀的設計。
1 硬件體系結構
由于被測目標物體紅外輻射的熱像分布圖信號非常弱,與可見光圖像相比,缺少層次和立體感。因此,在實際探測過程中為更有效地判斷被測目標的紅外熱分布場,常采用一些輔助措施增加儀器的實用功能,如圖像亮度/對比度的控制、實標校正、偽色彩描繪等高線和直接進行數學運算,打印等。
本便攜式紅外熱像儀主要由具有320×240非制冷焦平面探測器的紅外攝像頭、預處理單元、OMAPl510處理器及其外圍器件組成,如圖1所示。
通過紅外攝像頭采集的320×2AO圖像數據量較大,自探測器轉換而來的電信號經采樣后,先經過預處理模塊,將數據轉換成16位數據交由OMAPl510處理。0MAPl510則需要對圖像數據進行窗位窗寬處理、256色的偽彩轉換、亮度對比度調節等,并最終在320×240的液晶屏上顯示。
OMAPl510處理器是TI公司生產的高性能單芯片雙核處理器.它主要由TMS320C55x DSP內核、低功耗增強型ARM925T。微處理器、交通控制器(Traffic Controller)、強大的DMA控制器和豐富的外圍設備等組成。
TI增強型ARM925T核采用ARM RISC體系結構,工作主頻為175MHz。它包括存儲器管理單元、16KB的高速指令緩沖存儲器(Cache)、8KB的數據高速緩沖存儲器和17個字的寫緩沖器。片內有1.5MB的內部SRAM,為液晶顯示等應用提供大量的數據和代碼存儲空間。它有13個內部中斷和19個外部中斷,采用兩級中斷管理。此外,核內還有ARM CPl5協處理器和保護模塊。
C55x DSP核具有最佳的功耗性能比,工作主頻為200MHz。它增加了三個硬件加速器:離散余弦變換,反相離散余弦變換加速器、運動估計運算加速器和半像素插值加速器。C55x DSP核內部有32K字的雙存取SRAN,48K字的單存取SRAM和12K字的高速指令緩存。此外,核內還包含存儲器管理單元(MMU)、兩級中斷管理器和直接存儲器訪問(DMA)控制器。
交通控制器是ARM925T處理器與各存儲芯片進行數據交換的中樞,同時也控制DSP、DMA控制器及本地總線接口對各存儲器的訪問。根據片外存儲器的特性,交通控制器可以靈活配置訪問的字寬、周期及整字訪問的突發式訪問。
OMAPl510芯片具有豐富的外圍接口,如液晶控制器、存儲器接口、攝像頭接口、藍牙接口、通用異步收發器、I2C主機接口、脈寬音頻發生器、串行接口、主客戶機USB口、安全數字多媒體卡控制器(SD/MMC)接口、鍵盤接口等。
2 軟件構架
軟件構架如圖2所示。MPU側加載嵌入式Linux操作系統,實現對前端圖像數據的讀取,對LCD、觸摸屏、鍵盤、SD卡等設備的訪問,與DSP的通信,以及Qt應用程序的運行等。應用程序對LCD等外圍設備的訪問都由相應的Linux驅動程序實現。MPU對DSP的訪問也是把DSP當作設備,在MPU倒加載所謂的DSP驅動實現。DSP側在DSP/BIOS的基礎上構造進行數據處理的任務(tasks),對圖像數據進行運算處理,如窗位窗寬調節、偽彩查色、亮度和對比度調節等。
MPU與DSP之間的通信有三種實現方式:mailbox寄存器、MPU接口和共享內存。
(1)MPU/DSP mailbox寄存器MPU與DSP處理器通過mailbox中斷機制通信。在公共TIPB空間有4個mailbox寄存器設備被雙核共享。其中,2個mailbox寄存器用來讓MPU發消息并向DSP發出中斷信號,另外2個用來讓DSP發消息并向MPU發出中斷請求信號。每個mailbox寄存器設備由2個16位寄存器和l位標志寄存器組成。發出中斷的處理器可以用一個16位寄存器發送一個字節的數據給接收中斷的處理器,而用另一個16位寄存器發送一個字的命令。
當一個處理器向命令寄存器寫入合適的命令字并對另一個處理器產生中斷,設置了合適的標志寄存器,通信即實現。接收中斷方的處理器通過讀取命令字、清除標志寄存器確認這次中斷。此時每個mailbox寄存器中的數據寄存器有效,可以傳送2個字的數據。
(2)MPU Interface(MPU)
MPUI允許MPU、系統DMA控制器與DSP及其外圍通信。MPUI允許訪問所有的DSP內存空間(16MB)和公有外圍總線。所以,MPU和系統DMA控制器都有訪問完整的DSP I/O空間(128KB)的讀寫權限,包括DSP公有的外圍控制寄存器。
(3)MPU/DSP共享內存
OMAP1510通過交通控制器(Traffic Controller)實現了一種共享內存結構。所以,MPU和DSP都可以訪問相同的共享內存SRAM(192KB)及EMIFF、EMIFS內存空間。MPU通過DSP的內存管理單元。MMU確定DSP的哪塊區域為可以用來訪問的共享內存。通過分配共享內存區域,定義好MPU和DSP之間訪問此共享內存的協議,處理器之間的交流機制即可實現。
本系統MPU與DSP的通信是結合mailbox寄存器和共享內存實現的。由于圖像數據較大,而mailbox的寄存器每次通信只能發送2×16bits的數據,所以僅用mailbox不能高效地實現大數據量的共享。共享內存雖然可以讓MPU與DSP共享一段內存。但卻缺少同步機制。用mailbox registers建立握手信號(中斷),可以使MPU和DSP同步訪問共享內存。當MPU將原始數據寫入共享內存后,通過寫mailbox發送消息并向DSP發出中斷信號來通知DSP處理數據;而當DSP處理數據完畢,也通過寫mailbox寄存器發送消息并向MPU發出中斷信號,通知MPU數據準備好。
在測試過程中發現,MPU和DSP在通過mailbox通信時會有延時,當數據量、運算量較小時,采用雙核機制的效率較低;而當數據量和運算量較大時,雙核機制遠比僅用MPU時效率高。MPU與DSP通信之問的延時對整個系統的影響不大。本系統在動態顯示320×240、16位的圖像數據時,DSP對數據做窗位窗寬處理、偽彩查表,并將數據轉換成LCD可接收的5—6—5格式,顯示速率約為18幀/秒。而這些操作都交由MPU處理時,顯示速率只有11.5幀/秒。
3 Qt應用程序設計
面向嵌入式系統的GUI主要有MiniGUI、OpenGUI、MicomWindows、Ot/Embedded幾種。本系統采用Qt/Embedded。
Qt是挪威Troll Tech開發的一個多平臺的C++圖形用戶界面工具包。它使用C++語言,具有面向對象編程的特點,因而采用Qt編寫的程序易懂且易于維護。
Qt/Embedded是基于有幀緩沖(frame-buffer)支持的Linux嵌入式平臺的獨立的C++圖形用戶界面應用程序平臺的開發工具。它包含一套完整的GUI類、操作系統封裝、數據結構類、效用和綜合類,可直接對framebuffer寫操作,避免用戶使用復雜的Xlib/Xserver系統。它對嵌入式用戶提供全部源碼,并允許修改及進一步調試。在Qt/embedded的移植過程中,當所使用的設備(如觸摸屏、鍵盤)不是Qt所支持的標準控件時,需要修改Qt/embedded源代碼,以實現Qt程序對設備的響應。
本系統Qt應用程序圖像顯示部分的軟件流程如圖3所示。其用戶界面具有窗口風格,從主菜單中選擇不同選項,可以彈出相應的功能窗口:全屏顯示紅外熱圖;回放保存在存儲卡上的圖像(BMP位圖);刪除存儲卡上的圖像、感興趣點溫度顯示等。點擊窗口上的退出按鈕,可以關閉相應功能窗口。操作過程既可以通過按鍵完成,也可以通過點擊觸摸屏實現。整個GUI界面風格簡潔,操作簡單。
本文通過便攜式紅外熱像儀的開發設計過程,說明了非制冷紅外探測熱像儀的原理,探討了OMAPl510手持終端的實現方法。由此設計出的紅外熱像儀的各項性能指標都達到了較高水平,如可以實現紅外熱像的高速動態攝像、圖片存儲到SD卡、圖片回放、USB口圖像傳輸等功能。實踐表明,雙核結構的0MAP系列是一種處理能力強、功耗低、結構緊湊的嵌入式系統芯片。它將在需要較強處理能力的便攜式裝置中表現出優良特性。
評論
查看更多