畢業(yè)論文——微型近紅外光譜檢測儀圖譜顯示程序_第1頁
已閱讀1頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  中南民族大學</b></p><p><b>  畢業(yè)論文(設計)</b></p><p>  學院: 電子信息工程學院 </p><p>  專業(yè): 電子信息工程 年級: </p><p>  題目:微型近紅外光譜檢測

2、儀圖譜顯示程序 </p><p>  學生姓名: 學號: </p><p>  指導教師姓名: 職稱: </p><p>  20XX年X月XX日</p><p><b>  目錄</b></p><p><b>

3、  摘要:1</b></p><p>  Abstract1</p><p><b>  1 緒論2</b></p><p>  1.1 研究背景2</p><p>  1.2 國內外研究現(xiàn)狀2</p><p>  1.3 研究意義4</p><p>

4、;  1.4 本文組織結構4</p><p>  2 QT開發(fā)環(huán)境的搭建5</p><p>  2.1 linux下QT-Creator安裝5</p><p>  2.1.1 QT開發(fā)環(huán)境交叉編譯器安裝5</p><p>  2.1.2 配置QT-Creator使其支持交叉編譯6</p><p>  2.1.

5、3 QT—creator 版本設置6</p><p>  2.2 移植tslib使開發(fā)板支持觸屏操作7</p><p>  2.3 linux下QT庫的安裝編譯7</p><p>  2.3.1 設置linux系統(tǒng)環(huán)境變量8</p><p>  2.3.2 配置qt-everywhere-opensource8</p>

6、<p>  2.3.3 編譯安裝qt-everywhere-opensource8</p><p>  2.3.4 測試ARM版的qt庫是否編譯安裝成功9</p><p>  2.3.5 移植 qt4.8.5到開發(fā)板9</p><p>  2.3.6導出QT環(huán)境變量10</p><p>  2.3.7 開發(fā)板上測試QT程序

7、是否可以運行10</p><p>  3 微型近紅外光譜檢測儀圖譜顯示程序軟件設計11</p><p>  3.1 微型近紅外光譜檢測儀圖譜顯示程序軟件設計流程圖11</p><p>  3.2 微型近紅外光譜檢測儀圖譜顯示程序—代碼結構13</p><p>  3.2.1 微型近紅外光譜檢測儀圖譜顯示程序—源代碼文件13</

8、p><p>  3.2.2 微型近紅外光譜檢測儀圖譜顯示程序—頭文件14</p><p>  3.2.3 微型近紅外光譜檢測儀圖譜顯示程序—界面文件15</p><p>  3.3 微型近紅外光譜檢測儀圖譜顯示程序界面設計15</p><p>  3.3.1 微型近紅外光譜檢測儀圖譜顯示程序網(wǎng)格主界面設計16</p><

9、;p>  3.3.2 微型近紅外光譜檢測儀圖譜顯示程序標簽繪制17</p><p>  3.4 光譜數(shù)據(jù)網(wǎng)絡傳輸TCP數(shù)據(jù)包格式設計17</p><p>  3.4.1 QDataStream 傳遞自定義結構體類型光譜數(shù)據(jù)17</p><p>  3.5 qt_socket編程—光譜數(shù)據(jù)傳輸C/S架構設計18</p><p> 

10、 3.5.1 TCP協(xié)議連接特性18</p><p>  3.5.2 微型近紅外光譜檢測儀圖譜顯示程序客戶端設計19</p><p>  3.5.3微型近紅外光譜檢測儀圖譜顯示程序客戶端代碼分析20</p><p>  4 微型近紅外光譜檢測儀圖譜顯示程序—光譜顯示測試22</p><p>  4.1 水果檢測—葡萄反射光譜波長與吸光

11、度關系測試數(shù)據(jù)22</p><p>  4.2 水果檢測—葡萄反射光譜波長與吸光度關系曲線圖23</p><p><b>  5 總結展望23</b></p><p>  5.1 全文總結23</p><p><b>  5.2 展望24</b></p><p>&

12、lt;b>  致謝24</b></p><p><b>  參考文獻25</b></p><p><b>  附錄25</b></p><p>  微型近紅外光譜檢測儀圖譜顯示程序</p><p>  摘要:微型近紅外光譜檢測儀圖譜顯示程序用于顯示光電探測設備采集的光電信號,

13、通過前端光電探頭采集光信號,經(jīng)過光電轉換電路設備轉換為模擬電信號,將電信號經(jīng)過濾波、除噪聲以直觀的曲線圖形式呈現(xiàn),在光譜分析技術領域給科研人員提供了直觀、準確的數(shù)據(jù)。本文采用QTCreator圖形界面集成開發(fā)環(huán)境設計微型近紅外光譜檢測儀圖譜顯示程序,以ARM 開發(fā)板、安卓手機等平臺作為顯示程序硬件平臺,光信號轉換的電信號數(shù)據(jù)來自前端采集設備經(jīng)3G網(wǎng)絡傳輸?shù)竭h程服務器,服務器將經(jīng)過濾波、除噪聲處理的光譜數(shù)據(jù)發(fā)送到終端顯示程序并顯示。<

14、;/p><p>  關鍵詞:近紅外光、光電轉換、QT、光譜曲線</p><p>  Tiny near infrared spectrum monitor map display program</p><p>  Abstract: Tiny near infrared spectrum monitor map display program is used to d

15、isplay photoelectric signal of the photoelectric detection equipment acquisition, through collecting front-end photoelectric detector light signal, through the photoelectric conversion circuit devices converted into anal

16、og signal, will signal after filtering, in addition to the noise present in the form of intuitive graphs, in the field of spectral analysis technique provides researchers with intuitive, accurate data.I</p><p&

17、gt;  Keywords: near-infrared light, photoelectric conversion, QT, spectral curve</p><p><b>  1 緒論</b></p><p><b>  1.1 研究背景</b></p><p>  紅外光譜可分為近紅外(780?2500nm

18、)、中紅外(2500?25000nm)和遠紅外(25000?1000000nm)3個譜區(qū)。從20世紀50年代起就有近紅外光譜分析儀器應用于農(nóng)副產(chǎn)品的成分分析,但是由于當時的信息處理技術的限制,沒有得到長足的進步。在進入20世紀80年代以后,計算機技術迅猛發(fā)展,使得化學計量方法通過計算機能夠良好解決近紅外光譜多元信息的處理和提取,并且在消除背景干擾方面也取得了良好的效果,人們真正認識到近紅外光譜分析儀的價值,歐美發(fā)達國家相繼進入廣泛的研究

19、開發(fā)階段。近紅外光譜檢測儀在20世紀90年代初開始商品化,近年來,已經(jīng)深入應用到許多領域,對生產(chǎn)技術和科學研究的發(fā)展起到了巨大的作用,在經(jīng)濟上產(chǎn)生了巨大的效益。</p><p>  本課題結合國內外相關研究,以水果成分的定性、定量檢測為試驗樣本,采用前端紅外光探測器掃描,將采集到的光譜經(jīng)過光電轉換電路和前置放大電路將光譜信號轉換為電信號,并在服務器網(wǎng)站和手機終端上顯示水果的成分光譜分析圖,微型近紅外光譜檢測儀圖譜

20、顯示程序主要實現(xiàn)食品成分光譜分析圖的顯示功能,終端程序主要應用平臺為安卓手機、ARM+linux電子設備等一系列平臺。</p><p>  1.2 國內外研究現(xiàn)狀</p><p>  從上世紀80年代中期,人類已經(jīng)開始對近紅外光譜檢測技術有一定的研究。到目前為止,近紅外光譜技術已經(jīng)走過了將近50多年的發(fā)展歷程。國內外已經(jīng)有30多家廠家生產(chǎn)不同用途的近紅外光譜儀,儀器的設計方式、性能、測量方

21、法都有很多變化。 光譜儀的主要技術指標慢慢趨于穩(wěn)定,理論框架和制造技術也已趨成熟。</p><p>  國外近紅外光譜技術在大型流程工業(yè)的應用越來越廣泛和成熟,由于涉及商業(yè)機密、企業(yè)經(jīng)濟利益(如化工、石化、食品等領域)等原因,很多實際應用都沒有得到推廣。比如石化行業(yè),據(jù)統(tǒng)計全球僅汽油調合裝置只有幾百套安裝在線近紅外光譜儀,其它主要煉油裝置如催化重整和催化裂化也都以在線近紅外光譜分析技術為基礎實現(xiàn)優(yōu)化控制操作。在農(nóng)

22、產(chǎn)品的現(xiàn)場收購環(huán)節(jié),便攜式、在線和臺式近紅外光譜被廣泛用于按質論價的分析手段,比如,在日本就有 550 家果品等級分揀企業(yè)安裝 2000 多臺在線近紅外分析儀。在制藥領域,近紅外光譜分析技術正在由可選方法(Alternative method)向一次方法(Primary method)進行革命性的轉變。近紅外技術的應用為上述行業(yè)帶來豐厚的經(jīng)濟效益,已成為提高企業(yè)科學管理一種重要手段。美國、法國、 德國、丹麥、瑞士、加拿大和澳大利亞等官方

23、機構為了解決模型維護問題,已經(jīng)建立糧食、甘蔗和果品分析的近紅外網(wǎng)絡體系,這些網(wǎng)絡主要由國家相關管理部門(國家網(wǎng)絡中心)牽頭, 由行業(yè)檢驗機構、研究機構、儀器廠家和用戶組成。丹麥在1991年建立最早的近紅外網(wǎng)絡,目前最大的是法國的 Agroreso </p><p>  我國從上世紀 80 年代中期在近紅外光譜儀的研發(fā)方面做過大量的工作,曾研制出傅立葉變換型、濾光片型、陣列檢測和光柵掃描型型儀器,并在農(nóng)業(yè)和石化等領

24、域得到應用??墒桥c國外同類先進產(chǎn)品相比,國產(chǎn)近紅外光譜儀的性能指標(波長準確性和重復性、信噪比、光譜一致性等)與國外尚存在一定差距,測量設備也不夠完善,有待提高。我國在近紅外光譜技術的應用研究領域,已幾乎涉及所有可能的領域,但大多數(shù)工作還處在嘗試性研究階段,離實際應用要求還有一定距離,需在建模采樣數(shù)量、種類、穩(wěn)健性、影響因素、和規(guī)范化操作等方面做系統(tǒng)性的研發(fā)工作。盡管在我國一些領域(例如煉油裝置的在線分析、流通領域藥品的真?zhèn)舞b別、煙草品

25、質的快速分析等),近紅外光譜技術正在發(fā)揮著重要的作用。 例如, 我國煉油企業(yè)已有近百套在線近紅外光譜分析儀,我國的地方藥監(jiān)部門也配備幾百臺以近紅外光譜儀為核心技術的藥品檢測車。但客觀地講,大多數(shù)在實際應用還是有一定距離。 這與我國當前的經(jīng)濟狀況和科技發(fā)展有直接的關系,以煉油行業(yè)為例,國外一個煉廠的原油儲量與其年加工量相當, 這意味著該煉廠一年的原油原料可以保持不變,柴油和汽油等產(chǎn)品性質的變化僅由加工裝置較小的操</p>&

26、lt;p><b>  1.3 研究意義</b></p><p>  本文結合國內外針對近紅外光譜在石油、化工、食品檢測等領域的應用研究為背景,提出終端節(jié)點采集光譜、服務器進行光譜濾波、轉化處理、終端顯示光譜曲線圖為一體的系統(tǒng)架構,以3G網(wǎng)和以太網(wǎng)為數(shù)據(jù)傳輸渠道,實現(xiàn)光譜數(shù)據(jù)的遠程實時傳輸;終端設備采用目前流行的安卓手機、ARM+Linux系統(tǒng)架構的電子設備為硬件平臺,以QT應用程序為軟

27、件平臺實現(xiàn)光譜數(shù)據(jù)的采樣處理、數(shù)據(jù)傳輸,以及光譜曲線圖的顯示功能;設備簡易輕巧,便于攜帶,為科研人員對近紅外光譜檢測技術的研究提供了方便實時檢測、數(shù)據(jù)實時更新的便利。</p><p>  隨著近紅外光譜分析技術的快速發(fā)展,特別是微型化近紅外光譜儀顯現(xiàn)的獨特優(yōu)勢,使微型化近紅外光譜儀成為近年來世界各國研究的一個新興發(fā)展方向。近紅外光譜技術在食品有效成份定量、無損、快速、現(xiàn)場在線檢測等領域的應用有著廣闊的前景,在國外

28、,近紅外光譜檢測儀的研究已經(jīng)走過了50多年的發(fā)展歷程,并且在不斷完善中;我國的近紅外光譜檢測儀的研究僅僅經(jīng)歷20年的時間,目前還處于起步試驗階段;因此,進行微型近紅外光譜儀系統(tǒng)的研究,應用背景迫切,具有重要的科學意義和實際應用價值。</p><p>  1.4 本文組織結構</p><p>  本文的結構如下,共分為五章:</p><p>  第一章:緒論,簡要介紹

29、紅外光譜檢測技術的應用背景、現(xiàn)狀和意義。</p><p>  第二章:介紹微型紅外光譜顯示程序QT開發(fā)環(huán)境的搭建過程和QT移植到開發(fā)板平臺的制作過程。</p><p>  第三章:介紹微型紅外光譜顯示程序界面設計、光譜數(shù)據(jù)網(wǎng)絡傳輸數(shù)據(jù)格式設計、光譜曲線繪制程序實現(xiàn)等。</p><p>  第四章:介紹微型紅外光譜顯示程序對各類水果植物等光譜顯示測試分析。</p

30、><p>  第五章:對全文所做關于微型紅外光譜顯示程序設計與實現(xiàn)的工作進行總結,并闡述將來進一步的研究方向。</p><p>  2 QT開發(fā)環(huán)境的搭建</p><p>  2.1 linux下QT-Creator安裝</p><p>  微型近紅外光譜顯示程序采用QT圖形界面開發(fā)環(huán)境,如圖1。QT圖形界面開發(fā)環(huán)境相比較傳統(tǒng)的VB、MFC圖形界

31、面開發(fā)環(huán)境,它具備跨平臺開發(fā)的優(yōu)勢。它既可以開發(fā)GUI程序,也可以開發(fā)非GUI程序,比如控制臺工具和服務器。正是基于QT可以跨平臺開發(fā)的特性,結合項目中采用的OK335xS-II開發(fā)板平臺,故采用QT圖形開發(fā)環(huán)境設計近紅外光譜波形顯示程序。鑒于設計的微型近紅外光圖譜顯示程序的運行平臺為OK335xS-II—ARM開發(fā)板的CPU內核,配套交叉編譯器為arm-linux-gcc-4.4.3版本。</p><p>  

32、圖1 QT-creator開發(fā)環(huán)境</p><p>  2.1.1 QT開發(fā)環(huán)境交叉編譯器安裝</p><p>  將交叉編譯器安裝包拷貝到linux系統(tǒng)的/opt目錄下,解壓交叉編譯器安裝包。編輯/etc/profile配置文件,將export PATH=/opt/arm-linux-4.4.3/bin:$PATH添加到/etc/profile中去,設置好環(huán)境變量后,使用 source

33、/etc/profile命令更新這個配置文件,然后使用arm-linux-gcc -v命令查看交叉編譯器安裝是否成功!如圖2是交叉編譯器安裝成功的輸出信息:</p><p>  圖2 安裝交叉編譯器</p><p>  2.1.2 配置QT-Creator使其支持交叉編譯</p><p>  項目使用的Qt Creator版本為2.7.1,Qt Creator安裝比

34、較簡單,解壓安裝包之后按照安裝提示一直點擊下一步,直到安裝完畢即可,安裝完畢之后,還需要對Qt Creator進行相關的配置。</p><p>  點擊Qt Creator的Tools 菜單下的 Options, 點擊 Add 添加 GCC,然后點擊 編譯器路徑添加交叉編譯器(/opt/arm-linux-4.4.3/bin/arm-linux-g++)的路徑,如圖3:</p><p> 

35、 圖3 QT—creator交叉編譯器設置</p><p>  2.1.3 QT—creator 版本設置</p><p>  點擊 Add 添加/usr/bin/qmake 文件添加進去之后,點擊應用即配置完成,如圖4:</p><p>  圖4 QT—creator 版本設置</p><p>  2.2 移植tslib使開發(fā)板支持觸屏操作

36、</p><p>  tslib 是電阻式觸摸屏用于校準的一個軟件庫,是一個開源的程序,能夠為觸摸屏驅動獲得的采樣提供諸如濾波、去抖、校準等功能,通常作為觸摸屏驅動的適配層,為上層的應用提供了一個統(tǒng)一的接口。因此這里先編譯安裝 tslib,這樣在后面編譯 Qt 的時候才能打包編譯進去。</p><p>  編譯安裝tslib前,需要先安裝 autoconf、automake、libtool

37、 包,Linux系統(tǒng)下執(zhí)行以下命令安裝autoconf、automake、libtool 包:</p><p>  然后解壓tslib-1.4.tar.bz2安裝包,執(zhí)行安裝腳本./tslib.sh:</p><p>  安裝完成之后,默認安裝到/usr/local/arm/tslib/下:</p><p>  將編譯好的tslib庫移植到開發(fā)板的/usr/lib目

38、錄下,文中采用的是使用tftp服務器將tslib下的庫拷貝到開發(fā)板的指定目錄下,需要保證開發(fā)板能上網(wǎng)</p><p>  2.3 linux下QT庫的安裝編譯</p><p>  下載qt-everywhere-opensource-src-4.8.5.tar.gz到Linux系統(tǒng)的指定目錄下,然后解壓安裝包:</p><p>  2.3.1 設置linux系統(tǒng)環(huán)境

39、變量</p><p>  解壓完成之后,需要進行系統(tǒng)環(huán)境變量的配置工作,進行QT庫安裝路徑的配置、QT程序執(zhí)行路徑配置、QT程序運行依賴庫路徑配置以及QT使用幫助手冊的配置,修改/etc/profile配置文件,將指定的QT配置添加到/etc/profile文件中,然后使用source /etc/profile文件更新配置文件,便可以查看到/etc/profile配置文件下添加了QT的配置信息,如圖5:</

40、p><p>  圖5 QT庫配置信息</p><p>  2.3.2 配置qt-everywhere-opensource</p><p>  首先指定交叉編譯的路徑/opt/arm-linux-gcc-4.4.3,設置QT庫的安裝路徑/usr/local/arm/qt-4.8.5,添加開發(fā)板支持觸屏操作的tslib頭文件和庫路徑/usr/local/arm/tslib

41、/include/和usr/local/arm/tslib/lib:</p><p>  2.3.3 編譯安裝qt-everywhere-opensource</p><p>  編譯qt-everywhere-opensource-src-4.8.5過程需要一定的時間,正常電腦的配置需要1個小時左右的時間:</p><p>  2.3.4 測試ARM版的qt庫是否

42、編譯安裝成功</p><p>  查看qt編譯程序qmake,出現(xiàn)以下信息,說明qt-everywhere-opensource安裝成功:</p><p>  然后將/usr/local/arm/qt4.8.5/bin/下的qmake復制到/usr/bin/目錄下,并修改為arm-qmake:</p><p>  2.3.5 移植 qt4.8.5到開發(fā)板</p

43、><p>  在PC的Linux系統(tǒng)上編譯好qt庫之后,我們需要將qt庫拷貝到開發(fā)板上,使開發(fā)板支持運行QT程序。</p><p>  將qt-everywhere-opensource-src-4.8.5目錄下的lib目錄拷貝到開發(fā)板的指定目錄下:</p><p>  通過secureCRT串口終端程序將qt庫經(jīng)過tftfp服務器程序發(fā)送到開發(fā)板指定目錄下,然后測試開

44、發(fā)板和主機是否ping通,確定開發(fā)板可以連接主機就進行文件的傳輸:</p><p>  解壓qtlib.tar.bz2到開發(fā)板的/usr/lib目錄下:</p><p>  拷貝qt-everywhere-opensource-src-4.8.5/demos/embeddeddialogs/這個</p><p>  目錄下的embeddeddialogs到開發(fā)板上,

45、并將embeddeddialogs放到/usr/bin下:</p><p>  2.3.6導出QT環(huán)境變量</p><p>  QT環(huán)境變量的路徑導出,要根據(jù)你自己將QT庫放在哪個路徑下的實際情況進行配置,Qt 環(huán)境變量說明如下:</p><p>  LD_LIBRARY_PATH:指定 qt 的共享庫具體路徑</p><p>  QT_QW

46、S_FONTDIR:指定 qt 的 font 具體路徑</p><p>  QWS_SIZE:設定在屏幕尺寸</p><p>  QWS_DISPLAY:指定的顯示類型和幀緩沖區(qū)</p><p>  QWS_MOUSE_PROTO:指定觸摸設備</p><p>  2.3.7 開發(fā)板上測試QT程序是否可以運行</p><p

47、>  修改embeddeddialogs的權限,然后執(zhí)行embeddeddialogs程序,當你執(zhí)行./embeddeddialogs -qws&,出現(xiàn)如圖6現(xiàn)象,說明QT庫移植開發(fā)板成功。</p><p><b>  圖6 測試QT</b></p><p>  到此,微型近紅外光譜圖譜顯示程序的軟件設計的QT開發(fā)環(huán)境搭建完畢,顯示程序硬件平臺OK335

48、X-II型號的ARM開發(fā)板支持QT顯示程序運行的QT庫也移植完畢,第3章之后將具體介紹微型近紅外光圖譜顯示程序的軟件設計與實現(xiàn),以及微型近紅外光圖譜顯示程序對不同水果的反射光譜的吸光度測試。</p><p>  3 微型近紅外光譜檢測儀圖譜顯示程序軟件設計</p><p>  3.1 微型近紅外光譜檢測儀圖譜顯示程序軟件設計流程圖</p><p>  圖7 紅外光譜

49、顯示程序設計流程圖</p><p>  3.2 微型近紅外光譜檢測儀圖譜顯示程序—代碼結構</p><p>  3.2.1 微型近紅外光譜檢測儀圖譜顯示程序—源代碼文件</p><p>  圖8 光譜顯示程序代碼工程架構</p><p>  微型近紅外光譜檢測儀圖譜顯示程序的C++源碼文件如圖8所示,功能實現(xiàn)C++文件有三個:main.cpp

50、、curve.cpp、smartcomlab_light.cpp,這三個文件分別實現(xiàn)以下功能:</p><p>  3.2.2 微型近紅外光譜檢測儀圖譜顯示程序—頭文件</p><p>  圖9 光譜顯示程序代碼工程架構</p><p>  微型近紅外光譜檢測儀圖譜顯示程序頭文件如圖9所示有:curve.h 、dialog.h 、Queue.h這三個文件主要聲明以下

51、變量:</p><p>  3.2.3 微型近紅外光譜檢測儀圖譜顯示程序—界面文件</p><p>  圖3.4 光譜顯示程序代碼工程架構</p><p>  微型近紅外光譜檢測儀圖譜顯示程序界面文件如圖9所示,用于設計微型近紅外光譜檢測儀圖譜顯示程序的界面:</p><p>  3.3 微型近紅外光譜檢測儀圖譜顯示程序界面設計</p&

52、gt;<p>  微型近紅外光譜圖譜顯示程序的界面設計采用用QPainter類,界面設計的設備通常是主部件,也可以是QLabel部件或QTextEdit部件。繪圖時首先都要定義一個QPainter類對象,繪圖可以選擇的工具主要有Qpen(畫筆)、QBrush(畫刷),使用Qpen寫文本的時候,還可以指定字體。在進行QT繪圖時,還需要重載QWidget類的paintEvent(QpaintEvent *)函數(shù),該函數(shù)是受保護

53、的虛函數(shù),是繪制事件的函數(shù),可以在派生類中被重新實現(xiàn)來接受繪圖事件。</p><p>  微型近紅外光譜檢測儀圖譜顯示程序界面采用QT二維坐標形式設計,橫坐標為采集光譜的波長范圍,縱坐標為光譜波長對應的反射率,如圖10。紅外光照射下,不同的植物會反射出不同波長的光,不同波長的光對應著不同的反射率。正是根據(jù)這一特性,微型近紅外光譜檢測儀圖譜顯示程序采用多點坐標繪制曲線的思路進行設計。當點擊接收按鈕時,顯示程序創(chuàng)建s

54、ocket套接字,并向服務器發(fā)出接收光譜數(shù)據(jù)包的請求,服務響應客戶端的請求后向客戶端發(fā)送光譜數(shù)據(jù)包,顯示程序接收到數(shù)據(jù)包之后進行解析,最終以光譜曲線圖形式顯示,為光學科研人員提供直觀、準確的科學數(shù)據(jù)。</p><p>  圖10 微型近紅外光譜顯示程序界面</p><p>  3.3.1 微型近紅外光譜檢測儀圖譜顯示程序網(wǎng)格主界面設計</p><p>  微型近紅外

55、光譜檢測儀圖譜顯示程序網(wǎng)格主界面的設計主要調用QPainter類中的setpen成員函數(shù)和drawline成員函數(shù)進行網(wǎng)格線的繪制,調用setBrush成員函數(shù)和drawRect成員函數(shù)進行背景黑色框圖的繪制。以下介紹網(wǎng)格主界面的具體函數(shù)實現(xiàn):</p><p>  drawLine函數(shù)的實現(xiàn)原理是兩點繪制一條直線,在畫豎直網(wǎng)格線的時候,縱坐標y為兩個固定值,一個為0,一個為y軸最大值,橫坐標每隔一個小網(wǎng)格大小繪制

56、一條直線。</p><p>  同理,橫著畫網(wǎng)格線的時候,橫坐標x為兩個固定值,一個為0,一個為x軸最大值,縱坐標每隔一個小網(wǎng)格大小繪制一條直線。</p><p>  紅外光譜檢測儀圖譜顯示程序網(wǎng)格主界面框架繪制:</p><p>  3.3.2 微型近紅外光譜檢測儀圖譜顯示程序標簽繪制</p><p>  3.4 光譜數(shù)據(jù)網(wǎng)絡傳輸TCP數(shù)據(jù)

57、包格式設計</p><p>  3.4.1 QDataStream 傳遞自定義結構體類型光譜數(shù)據(jù)</p><p>  在QT開發(fā)中,QDataStream是側重于數(shù)據(jù)格式和類型,QDataStream不僅可以操縱文本數(shù)據(jù),還可以對QT規(guī)定的數(shù)據(jù)類型和開發(fā)者自己定義的數(shù)據(jù)類型進行操作、解析和傳輸。QDataStream將數(shù)據(jù)序列化,根據(jù)開發(fā)者定義的數(shù)據(jù)類型選擇相應的操作進行解析傳輸數(shù)據(jù)。&l

58、t;/p><p>  由于光譜數(shù)據(jù)采用的是二維坐標形式進行光譜曲線的繪制,因此光譜曲線上的每一個點必須有兩個元素來表示,一個是橫坐標x,代表采集光譜的波長,一個是縱坐標y,代表采集光譜的吸光度;為此,作者采用的是結構體類型的數(shù)據(jù)代表光譜數(shù)據(jù)的橫坐標、縱坐標,考慮到光譜數(shù)據(jù)包的每次發(fā)送是連續(xù)的,所以采用結構體數(shù)組形式來存放一次發(fā)送的光譜數(shù)據(jù),最后將打包封裝好的光譜數(shù)據(jù)包通過TCP協(xié)議傳輸?shù)娇蛻舳恕?lt;/p>

59、<p>  光譜數(shù)據(jù)格式程序設計如下所示:</p><p>  定義一個結構體message_rev用來代表光譜數(shù)據(jù)的每一個坐標點,x為橫坐標光譜的波長,由于我們的光譜波長范圍為700~1700nm,因此用float型的數(shù)據(jù)表示足夠,y代表吸光度,然后定義一個 recv_data類型的結構體數(shù)組用于存放一次發(fā)送的100個光譜坐標數(shù)據(jù)。</p><p>  3.5 qt_sock

60、et編程—光譜數(shù)據(jù)傳輸C/S架構設計</p><p>  3.5.1 TCP協(xié)議連接特性</p><p>  TCP協(xié)議連接特性:</p><p>  TCP提供一種面向連接的、全雙工的、可靠的字節(jié)流服務;在一個TCP連接中,僅有兩方進行彼此通信。廣播和多播不能用于TCP;TCP的接收端必須丟棄重復的數(shù)據(jù);TCP對字節(jié)流的內容不作任何解釋,對字節(jié)流的解釋

61、由TCP連接雙方的應用層解釋;TCP通過下列方式來提供可靠性:應用數(shù)據(jù)被分割成TCP認為最適合發(fā)送的數(shù)據(jù)塊,稱為報文段或段;TCP協(xié)議中采用自適應的超時及重傳策略;TCP可以對收到的數(shù)據(jù)進行重新排序,然后將收到的數(shù)據(jù)以正確的順序交給應用層;TCP的接收端必須丟棄重復的數(shù)據(jù);TCP還能提供流量控制;</p><p>  TCP協(xié)議數(shù)據(jù)包傳輸原理如圖11:</p><p>

62、;  圖11 TCP協(xié)議連接結構圖</p><p>  3.5.2 微型近紅外光譜檢測儀圖譜顯示程序客戶端設計</p><p>  根據(jù)TCP協(xié)議連接的特性,為了保證服務器和客戶端可以無差錯的連接并及時顯示光譜數(shù)據(jù),微型近紅外光譜檢測儀圖譜顯示程序的光譜數(shù)據(jù)接收傳輸協(xié)議采用TCP協(xié)議與遠程服務器進行連接,當客戶端顯示程序發(fā)出請求時建立一個socket連接,服務器時刻監(jiān)聽著客服端的請求,當有

63、客戶端顯示程序發(fā)來請求時,服務器收到請求后發(fā)出應答信號,等待客戶端確認回復,當再次收到客戶端的確認回復信號之后,socket連接建立成功,服務器將處理好的光譜數(shù)據(jù)以TCP數(shù)據(jù)的形式發(fā)送給客戶端顯示程序,如圖12:</p><p>  圖12 TCP協(xié)議C/S架構圖</p><p>  TCP協(xié)議的程序使用的是客戶端/服務器模式,在Qt中提供了QTcpSocket類來編寫客戶端程序。我們在服

64、務器端進行端口的監(jiān)聽,一旦發(fā)現(xiàn)客戶端的連</p><p>  接請求,就會發(fā)出newConnection()信號,我們可以關聯(lián)這個信號到我們自己的槽函數(shù),進行數(shù)據(jù)的發(fā)送。而在客戶端,一旦有數(shù)據(jù)到來就會發(fā)出readyRead()信號,我們可以關聯(lián)此信號,進行數(shù)據(jù)的接收。</p><p>  3.5.3微型近紅外光譜檢測儀圖譜顯示程序客戶端代碼分析</p><p>  

65、在工程文件中添加如下代碼使光譜檢測儀圖譜顯示程序支持網(wǎng)絡傳輸,由于作者使用的Qt Creator版本沒有添加模塊一項,我們就需要在工程文件中添加支持網(wǎng)絡協(xié)議的模塊,如圖13:</p><p>  圖13 QT支持網(wǎng)絡模塊添加</p><p>  在smartcomlab.h頭文件中添加qt-socket編程的變量和私有槽函數(shù),newConnect( )函數(shù)用于連接遠程服務器,readMes

66、sage()函數(shù)用于讀取服務器發(fā)送的數(shù)據(jù),displayError()用于顯示連接錯誤信息,如圖14:</p><p>  圖14 私有槽函數(shù)聲明</p><p>  在smartcomlab.cpp中的構造函數(shù)中添加如下代碼,如圖15:</p><p>  圖15 關聯(lián)tcpSocket信號</p><p>  這里關聯(lián)了tcpSocket

67、的兩個信號,當有數(shù)據(jù)到來時發(fā)出readyRead()信號,我們執(zhí)行讀取數(shù)據(jù)的readMessage()函數(shù)。當出現(xiàn)錯誤時發(fā)出error()信號,我們執(zhí)行displayError()槽函數(shù)。</p><p>  newConnect函數(shù)的實現(xiàn)如下,tcpSocket->abort()用于取消已有的TCP連接,tcpSocket->connectToHost()用于連接服務器,獲取服務器IP地址和端口號,

68、如圖16:</p><p>  圖16 newConnect()函數(shù)實現(xiàn)</p><p>  readMessage()函數(shù)用于讀取TCP數(shù)據(jù)傳輸過程中接收服務器發(fā)送過來的數(shù)據(jù)包,首先,開辟一段內存緩沖區(qū)recv_block用于存儲socket數(shù)據(jù),然后設置QT版本為4.6版本,在接收數(shù)據(jù)包的設計上,需要根據(jù)服務器發(fā)送的數(shù)據(jù)包長度和格式進行設計,由于服務器采用的是結構體數(shù)組形式進行光譜坐標

69、數(shù)據(jù)的發(fā)送,所以客戶端接收的數(shù)據(jù)格式也相應采用一個結構體數(shù)組進行接收,如圖17:</p><p>  圖17 readMessage()函數(shù)實現(xiàn)</p><p>  連接錯誤顯示函數(shù)的設計比較簡單,調用QT編程中的qDebug函數(shù)顯示錯誤信息,如圖18:</p><p>  圖18 連接錯誤顯示函數(shù)實現(xiàn)</p><p>  接收事件槽函數(shù)實現(xiàn)

70、向服務器發(fā)送請求連接和數(shù)據(jù)的功能,當點擊紅外光譜檢測儀圖譜顯示程序的接收按鈕時,發(fā)送連接服務器信號,建立一個TCP連接,如圖19:</p><p>  圖19 連接服務器函數(shù)實現(xiàn)</p><p>  4 微型近紅外光譜檢測儀圖譜顯示程序—光譜顯示測試</p><p>  4.1 水果檢測—葡萄反射光譜波長與吸光度關系測試數(shù)據(jù)</p><p>

71、  表1 葡萄反射光譜測試數(shù)據(jù)</p><p>  [注]:由于光譜數(shù)據(jù)點數(shù)過多,本文只是截取部分數(shù)據(jù)予以展示,波長范圍為[700nm~1700nm]。</p><p>  4.2 水果檢測—葡萄反射光譜波長與吸光度關系曲線圖</p><p>  葡萄反射光譜波長與吸光度關系曲線如圖20:</p><p>  圖20 葡萄反射光譜數(shù)據(jù)曲線圖&

72、lt;/p><p>  數(shù)據(jù)來源:湖北省武漢市洪山區(qū)中南民族大學電子信息工程學院智能光通信 實驗室服務器。</p><p>  測試人員:曾憲煬、賈欣、蔣明偉、江維、完顏成立、劉爽。</p><p>  測試時間:2015年4月3日。</p><p><b>  5 總結展望</b></p><

73、p><b>  5.1 全文總結</b></p><p>  微型近紅外光譜檢測儀圖譜顯示程序,用于近紅外光在石油、化工、食品檢測當中對采集的光譜數(shù)據(jù)以光譜曲線形式顯示的方式,為科研人員在近紅外光譜檢測分析領域的研究提供了科學、準確的數(shù)據(jù),本文著重講述微型近紅外光譜檢測儀圖譜顯示程序的開發(fā)過程以及適用平臺,主要工作內容如下:</p><p>  闡述本文的研究背

74、景及意義,分析了國內外關于近紅外光譜檢測分析技術的發(fā)展現(xiàn)狀。</p><p>  搭建用于開發(fā)微型近紅外光譜檢測儀圖譜顯示程序的QT開發(fā)環(huán)境,移植QT庫到ARM335x開發(fā)板使其支持QT程序的顯示,本文采用QT-4.8.5版本的QT,交叉編譯器使用arm-linux-gcc-4.4.3版本。</p><p>  闡述微型近紅外光譜檢測儀圖譜顯示程序的具體設計,主要涉及光譜曲線繪制算法設計、

75、qt-socket編程中基于TCP協(xié)議的光譜數(shù)據(jù)傳輸、紅外光譜顯示程序的界面設計。</p><p>  微型近紅外光譜檢測儀圖譜顯示程序測試分析,采集葡萄對紅外光譜檢測儀的反射光,測試葡萄在不同光譜波長下的反射率。</p><p><b>  5.2 展望</b></p><p>  微型近紅外光譜檢測儀圖譜顯示程序致力于ianhat cal

76、simulation re。本文以ARM335x開發(fā)板為硬件平臺、以QT-4.8.5為光譜顯示程序開發(fā)工具,實現(xiàn)紅外光譜檢測數(shù)據(jù)的遠程實時傳輸和光譜曲線的直觀精確顯示,為科研人員在紅外光譜檢測領域的研究提供了科學、準確的數(shù)據(jù);本文雖然實現(xiàn)了光譜數(shù)據(jù)的遠程傳輸和光譜曲線顯示,但是還有不足之處,本文的紅外光譜顯示程序一次只能顯示一種光譜曲線,還未實現(xiàn)同時顯示多種植物(比如水果、蔬菜)的光譜曲線同時顯示,同時,在光譜曲線定量、定性分析的處理上

77、,還存在一定的不足,因此,多光譜曲線顯示和光譜曲線精確地定量、定性分析是以后繼續(xù)努力的研究方向。</p><p><b>  致謝</b></p><p>  光陰似箭,轉眼間,大學四年的本科學業(yè)即將結束,值此畢業(yè)之際,衷心的感謝恩師楊春勇教授的諄諄教誨和悉心指導。兩年多的實驗室生活,將成為我在大學四年時光里最美、最充實的回憶,那段日子里,在楊老師積極鼓勵和指導下,我

78、和實驗室戰(zhàn)友們一起并肩努力,攻克了一個又一個的科研難題,參加科研活動,使我的科研能力、動手能力、以及綜合素質有了很大的提升。這期間,楊老師付出了大量心血和寶貴時間,我將永遠銘記楊老師對學生的栽培之恩。楊老師學識淵博,科研價值觀新穎、明確,工作認真務實,本文的順利完成離不開楊老師的精心指導,在此論文完成之際,謹向楊老師表達學生最誠摯的謝意。</p><p>  感謝實驗室?guī)熜值芙忝脗?,尤其感謝已畢業(yè)的碩士研究生牛磊

79、、蔡迎玲、覃基林,李淵、胡雯萱、趙佳佳以及09級本科師兄谷瑑、陸恒和鄒征學長;他們給予了我學習和生活上極大地幫助。感謝課題組成員陳振威、蘇家儀、陳少勇、梁少帥、曹可,在最艱難的日子里,是你們和我一起并肩作戰(zhàn)、攻克難關、為實驗室和學校爭光,與你們交流的過程中令我獲益匪淺。</p><p>  還有那群可愛的學弟學妹們,感謝你們在學長參賽過程中默默無聞的奉獻,你們的加入,為實驗室注入了新鮮的血液,為實驗室的后備科研力

80、量奠定了基礎,相信你們是最棒的,通過你們的努力,將來你們的成就和榮譽一定會超過我們這些前輩們。</p><p>  感謝含辛茹苦、勤勞簡樸的父母供我讀書,他們的支持與鼓勵給予我前行的動力,讓我順利完成了大學四年的學業(yè)。</p><p>  感謝百忙之中為本文審稿的各位老師提出的指導性建議,這將是我終身受用的寶貴財富。</p><p><b>  參考文獻&

81、lt;/b></p><p>  [1] W.Fred McClure. 204years of near infrared technology:1800—2003.Journal of near infrared spectroscopy,2003,11(6):487~518</p><p>  [2] 陸婉珍主編. 現(xiàn)代近紅外光譜分析技術 ( 第二版 ), 北京:中國石化出版社

82、 , 2006</p><p>  [3] 嚴衍祿. 近紅外光譜分析基礎與應用,北京:中國輕工業(yè)出版社,2005</p><p>  [4] 陸婉珍,袁洪福,褚小立. 近紅外光譜儀器 , 北京:化學工業(yè)出版社 , 2010[5] 褚小立編著. 化學計量學方法與分子光譜分析技術,北京:化學工業(yè)出版社 [6] 褚小立,王艷斌,陸婉珍. 近紅外光譜儀國內外現(xiàn)狀與展望,2007,(1):4~6

83、</p><p>  [7] 褚小立, 陸婉珍. 近紅外光譜儀器新進展,分析儀器, 2008,(1):3~7</p><p>  [8] 李軍會,趙龍蓮,張錄達,嚴衍祿.農(nóng)業(yè)近紅外分析技術軟件及網(wǎng)絡系統(tǒng)研制, 現(xiàn)代儀器,2000,(6):11~13</p><p>  [9] 褚小立,袁洪福,陸婉珍.近年來我國近紅外光譜分析技術的研究與應用進展 ,分析儀器 ,20

84、06,(2):1~10</p><p>  [10] 祝詩平,王一鳴,張小超.農(nóng)產(chǎn)品近紅外光譜品質檢測軟件系統(tǒng)的設計與實現(xiàn) , 農(nóng)業(yè)工程學報 ,2003,19(4):175~179</p><p><b>  附錄</b></p><p>  陳振威;楊春勇;侯金;曾憲煬;等.一種傳感器與微控制器通信的萬能接口,實用新型專利,ZL201320

85、835262.0.</p><p>  曾憲煬、陳振威、陳少勇、梁少帥、蘇家儀、曹可參加“第十三屆蘇州大學挑戰(zhàn)杯全國大學生課外學術科技作品競賽”(2013年10月13日于蘇州).</p><p>  鄒征,倪文軍,谷瑑,陸恒,等.基于6LoWPAN的移動性無線傳感器網(wǎng)絡關鍵技術,國家級大學生創(chuàng)新訓練項目,項目編號:GCX12002.(優(yōu)秀結題)</p><p>  

86、谷瑑,陸恒,鄒征,倪文軍,等.基于ZigBee的移動接入網(wǎng)關,中南民族大學校級科研基金(重點項目),項目編號:KYCX110001E.(結題)</p><p>  倪文軍,覃敏,馬健壯,陳皓,等.智能型雙軸向陽跟蹤控制系統(tǒng),中南民族大學校級創(chuàng)新訓練項目,項目編號:KYCX120122B.(結題)</p><p>  陳少勇,倪文軍,鄒征,梁少帥,等.光合速率檢測儀,中南民族大學校級創(chuàng)新訓練

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論