工控網(wǎng)首頁
>

應用設計

>

基于ARM嵌入式近紅外光譜儀器的研制

基于ARM嵌入式近紅外光譜儀器的研制

2010/4/1 14:25:00
摘要:本文介紹了基于ARM微處理器的嵌入式近紅外光譜儀器設計,并給出了儀器的軟件和硬件的設計方案。設計應用了最先進的ARM嵌入式技術,利用ARM豐富的內部設備,實現(xiàn)了光譜數(shù)據(jù)的傳輸和基于觸摸屏的人機交互平臺。實現(xiàn)近紅外光譜儀器操作簡單化,體現(xiàn)了ARM微處理器的優(yōu)勝之處。

關鍵詞:
近紅外光譜儀;ARM處理器;嵌入式系統(tǒng)

1. 引言

近紅外光譜主要是由分子振動的非諧振性使分子振動從基態(tài)向高能級躍遷時產生的,記錄的主要是含氫基團C-H、O-H、N-H等振動的倍頻和合頻吸收[1],具有豐富的物質結構和組成信息,非常適合用于碳氫有機物質的組成性質測量。近紅外光譜作為迅速崛起的光譜分析技術在分析測試領域中起的作用越來越引起人們關注,由于樣品在分析時基本不需要處理,且不破壞和消耗樣品,自身又無環(huán)境污染,近紅外光譜分析技術堪稱是綠色分析儀器的典型代表[2],該技術已廣泛應用于各領域包括農作物質量檢測、食品成分分析、藥物制劑分析、血氧的測定、石化工業(yè)分析、煙草行業(yè)中的應用等,是分析領域中最為活躍的熱點。

文中采用基于ARM9內核的嵌入式系統(tǒng)S3C2410A為核心開發(fā)近紅外光譜分析儀器。 作為32位的RISC(Reduced Instruction Set Computing)架構,基于ARM核的微控制器芯片具有較高的運行速度、較大的地址空間、低功耗和高性價比,具備在其上運行一個完整的嵌入式操作系統(tǒng)的能力,已遍及工業(yè)控制、消費類電子產品、通信系統(tǒng)、網(wǎng)絡系統(tǒng)、無線系統(tǒng)等各類產品市場。利用ARM來開發(fā)近紅外光譜分析儀器,以觸摸屏作為人機交換平臺,取代了傳統(tǒng)的鍵盤,脫離了定標等分析軟件對微機的依賴,最終使用戶在指引下通過簡單的操作對樣品進行檢測。

2.       儀器結構與工作原理設計

2.1總體結構

本設計是基于ARM微處理器的濾光片型近紅外光譜儀??傮w結構如圖(1)所示。光學系統(tǒng)中的光電檢測信號經過ADC后,并行輸入到單片機中進行初步數(shù)據(jù)處理,再由單片機串行發(fā)送到ARM微處理器中,利用ARM微處理器對光譜數(shù)據(jù)進行定標和分析,以及實現(xiàn)對光學系統(tǒng)、打印機和顯示操作系統(tǒng)的控制。

圖(1)總體結構圖

2.2儀器光學原理結構

在近紅外光譜測量技術中,對于分立波長型儀器是測量幾個特定波長的光譜數(shù)據(jù),并建立樣品濃度與這些數(shù)據(jù)的關系。濾光片型的近紅外儀器屬于分立波長測量儀器,設計分別選取了在近紅外光譜區(qū)內的11塊不同透射波長的窄帶干涉濾光片作為光譜儀器的分光系統(tǒng)。工作原理是:由光源發(fā)出的光經過濾光片得到一定帶寬的分析光,當光進入樣品內部后,通過與樣品內部的漫反射作用返回表面,由光電檢測器進行檢測。漫反射光是分析光和樣品內部分子發(fā)生了相互作用后的光,因此負載了樣品的結構和組成信息,可用于樣品成分測量。在測量過程中通過對濾光片盤的轉動來得到不同波長的光,從而實現(xiàn)分光。

2.3 儀器的電學原理結構

    本設計分為光譜數(shù)據(jù)采集系統(tǒng)和嵌入式控制系統(tǒng)兩部分。

圖(2)電學原理設計圖

2.3.1光譜數(shù)據(jù)的采集系統(tǒng)

光譜數(shù)據(jù)的采集系統(tǒng)是由緊貼光傳感器的ADC芯片和單片機來實現(xiàn)的。光譜信號的信噪比是儀器穩(wěn)定性的重要指標。光譜數(shù)據(jù)采集系統(tǒng)要盡量避免光譜采集過程中噪聲的引入和光譜信號的減弱,從而保證光譜數(shù)據(jù)采集的精度。因此,在光譜數(shù)據(jù)采集系統(tǒng)的設計中將ADC芯片緊貼光傳感器,由單片機對光譜數(shù)據(jù)進行采集和初步處理后傳輸?shù)紸RM微處理器中,這樣的設計可以減少數(shù)據(jù)的傳輸距離,避免因長距離傳輸而引入噪聲,從而達到提高信噪比的目的。

2.3.2嵌入式控制系統(tǒng)

嵌入式控制系統(tǒng)采用的處理器是由SAMSUNG公司推出的16/32位RISC處理器S3C2410A。S3C2410A提供了豐富的內部設備其中包括:LCD控制,支持NAND Flash系統(tǒng)引導,3通道UART,4通道DMA, I/O端口,RTC,8通道10位ADC和觸摸屏接口,IIC-BUS接口, USB設備,SD主卡&MMC卡接口,2通道的SPI以及內部PLL時鐘倍頻器等。S3C2410A采用了ARM920T內核,它的低功耗、精簡和出色的全靜態(tài)設計特別適用于對成本和功耗敏感的應用。利用ARM微處理器實現(xiàn)光譜數(shù)據(jù)的接收、定標、打印,人機交互界面和光學系統(tǒng)控制三大模塊功能。

光譜數(shù)據(jù)接收和數(shù)據(jù)打印都是利用ARM板中RS-232標準串口通信模塊來實現(xiàn)。S3C2410內部具有兩個獨立的UART控制器,每個UART均具有16字節(jié)的FIFO,支持的最高波特率可達到230.4Kbps。對ARM中的串口的設置主要是通過編寫串口通信協(xié)議程序來實現(xiàn)。本設計采用的是異步通信的格式。數(shù)據(jù)位寫入主要是通過對8位數(shù)據(jù)傳送接收緩沖區(qū)寄存器URXH1、URXH2的寫入來實現(xiàn),緩沖區(qū)寄存器寄放傳送/接收的數(shù)據(jù)字符。在字符數(shù)據(jù)傳送/接收過程中,數(shù)據(jù)位從最低位開始發(fā)送。數(shù)據(jù)位發(fā)送完后,不設置發(fā)送奇偶校驗位,數(shù)據(jù)位之后發(fā)送的是停止位,設置停止位是通過清零c_cflag中的CSTOPB來實現(xiàn)。波特率設置通過函數(shù)cfsetispeed和cfsetospeed來實現(xiàn),如本設計采用的是9600波率,可以通過cfsetispeed(&newtio, B115200);和cfsetospeed(&newtio, B115200);語句來實現(xiàn)波特率的設置。

2.4光譜數(shù)據(jù)的精度控制

    光譜數(shù)據(jù)的精度是決定儀器優(yōu)劣的一個重要指標,為了確保系統(tǒng)的光譜數(shù)據(jù)精度,設計通過增加采集信號精度,減少外界引入的噪聲這兩個方面來實現(xiàn)對光譜數(shù)據(jù)信噪比的提高。采集系統(tǒng)中ADC芯片采用了24位帶數(shù)字濾波的ADC,精度可達224,在噪聲控制方面,為了減少系統(tǒng)的噪聲,設計中對光學以及電學系統(tǒng)都做了屏蔽。在光學系統(tǒng)的整個外殼噴上了黑漆,以避免外界光的干擾。在電學上減少了對有源器件的使用,并且每個有源器件都具有獨立的屏蔽,以減少電噪聲的引入。經過實驗測量,設計中的光譜數(shù)據(jù)采集精度可達到4位半的精度。

3.軟件設計

3.1基于ARM9下Linux系統(tǒng)的串口應用程序設計

由于嵌入式控制系統(tǒng)中所選取的核心微處理器是植入了Linux 2.4.18內核的ARM9開發(fā)板,具體串口模塊的打開以及讀,寫應用程序是由基于Linux下的C編程來完成。具體的流程圖如下所示:

圖(3)串口打開及設置流程圖

串口模塊打開后,ARM微處理器通過串口模塊與單片機、熱敏打印機進行通信,實現(xiàn)對光譜數(shù)據(jù)接收和打印的功能。

3.2基于嵌入式QT的人機交互界面應用軟件設計

人機交互界面主要是利用基于Linux下的圖形界面設計開發(fā)工具Qt/Embedded來實現(xiàn)。QT是挪威Trolltech 公司的一個標志性產品。它的開發(fā)語言是C++.,它為跨平臺的軟件開發(fā)者提供統(tǒng)一的,精美的圖形用戶編程接口,還提供了統(tǒng)一的網(wǎng)絡和數(shù)據(jù)庫操作的編程接口,這使得Linux這些操作系統(tǒng)以更加方便、精美的人機界面走近普通用戶。Qt/Embedded是以原始的QT為基礎,做出了許多調整以適用于嵌入式環(huán)境。Qt/Embedded是面向嵌入式系統(tǒng)的QT版本,是QT的嵌入式Linux窗口,是完整的自包含C++ GUI和基于Linux的嵌入式平臺開發(fā)工具。

光譜采集定標應用軟件設計包括了編譯環(huán)境的建立和應用軟件程序的編譯兩個部分構成。

3.2.1編譯環(huán)境的建立

完整建立交叉編譯環(huán)境需要用到的軟件工具包包括:tmake-1.11或更高版本的tmake工具包、Qt/Embedded2.3.7安裝包和Qt2.3.2 for X11版的安裝包。首先將tmake-1.11工具包解壓,得到tmake工具。tmake工具是用于生成應用程序中的Makefile。然后安裝Qt/X11 2.3.2用于生成應用程序界面設計工具designer和應用程序界面的C++源程序、頭文件的轉化工具uic。其中必須注意的一點是uic和designer工具的源文件會和Qt/Embedded的庫一起編譯,所以根據(jù)“向前兼容”的原則,Qt for X11 的版本應比Qt/Embedded的版本舊。最后是對基于X86架構下的Qt/Embedded和基于ARM架構下的Qt/Embedded庫進行編譯,分別得到基于主機PC下的QTE編譯庫和基于ARM目標板下的QTE編譯庫。

3.2.2應用軟件程序的編譯

光譜采集定標應用軟件程序編譯利用Qt/X11中的designer工具進入QT圖形界面設計器進行界面設計,生成以ui為后綴的界面圖形文件。再利用uic工具生成圖形界面文件所對應的C++源碼及頭文件。用vi建立應用軟件的主程序和項目文件用于說明相關文件間的依賴關系。利用tmake工具生成應用軟件的Makefile,最后通過g++交叉編譯生<

投訴建議

提交

查看更多評論
其他資訊

查看更多

超越傳統(tǒng)直覺,MATLAB/Simulink助力重型機械的智能化轉型

新大陸自動識別精彩亮相2024華南國際工業(yè)博覽會

派拓網(wǎng)絡被Forrester評為XDR領域領導者

智能工控,存儲強基 | ??低晭砭手黝}演講

展會|Lubeworks路博流體供料系統(tǒng)精彩亮相AMTS展會