• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于邊界定位算法的光譜信號采集系統(tǒng)軟件設(shè)計(jì)與實(shí)現(xiàn)

      2020-07-14 08:37:05邵麗萍白忠臣楊曉昆張正平
      現(xiàn)代電子技術(shù) 2020年11期

      邵麗萍 白忠臣 楊曉昆 張正平

      摘? 要: 工程測量、化學(xué)工業(yè)等領(lǐng)域?qū)庾V分析數(shù)據(jù)的精度要求不斷提高,通過QT Creator平臺的多線程特點(diǎn),針對從主線程、CCD采集線程、光譜儀采集線程和串口收發(fā)數(shù)據(jù)線程功能,設(shè)計(jì)了光譜信號采集系統(tǒng),并根據(jù)光譜信號采集系統(tǒng)中電機(jī)運(yùn)動的特點(diǎn)提出了一種邊界定位算法。當(dāng)PC上位機(jī)發(fā)送定位指令給下位機(jī)時,下位機(jī)依據(jù)邊界定位算法控制電機(jī)運(yùn)動,進(jìn)而定位出所要測量的量子點(diǎn)陣列中各個點(diǎn)的位置坐標(biāo)。該方法在保持系統(tǒng)微型化的同時,提高了定位的準(zhǔn)確性,從而提高了系統(tǒng)檢測數(shù)據(jù)的精度。

      關(guān)鍵詞: 光譜信號采集; 邊界定位算法; 光譜分析; 線程設(shè)計(jì); 電機(jī)控制; 系統(tǒng)微型化

      中圖分類號: TN911.7?34? ? ? ? ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識碼: A? ? ? ? ? ? ? ? ? ? ? ? ?文章編號: 1004?373X(2020)11?0051?04

      Design and implementation of spectral signal acquisition system software

      based on boundary location algorithm

      SHAO Liping1, BAI Zhongchen2, YANG Xiaokun1, ZHANG Zhengping1

      (1. College of Big Data and Information Engineering, Guizhou University, Guiyang 550025, China;

      2. Guizhou Province Key Lab for Photoelectronic Technology and Application, Guizhou University, Guiyang 550025, China)

      Abstract: In view of the continuously increased precision requirements of spectral analysis data in engineering measurement, chemical industry and other fields, a spectral signal acquisition system is designed according to the multi?thread characteristics of QT Creator platform and the functions of main thread, CCD acquisition thread, spectrometer acquisition thread and serial port data receiving and transmitting thread. A boundary location algorithm is proposed according to the characteristics of motor motion in the spectral signal acquisition system. When the upper computer of PC sends a positioning command to the lower computer, the latter controls the motor motion according to the boundary positioning algorithm, and then locates the position coordinates of each point under measurement in the quantum dot array. With the proposed algorithm, the positioning accuracy is improved while maintaining the miniaturization of the system. Therefore, the data detection accuracy of the system is improved.

      Keywords: spectral signal acquisition; boundary location algorithm; spectral analysis; thread design; motor control; system miniaturization

      0? 引? 言

      隨著現(xiàn)代科學(xué)技術(shù)的不斷進(jìn)步,傳統(tǒng)的光譜儀由于體積大、成本高等因素限制了其在工程上的應(yīng)用,由此,光譜采集系統(tǒng)逐漸朝著微型化方向發(fā)展[1?2],微小型光譜儀控制系統(tǒng)的設(shè)計(jì)越來越受到重視[3?7],進(jìn)而也對其數(shù)據(jù)的精確度提出了更高的要求。本文所設(shè)計(jì)的光譜信號采集系統(tǒng)在滿足微型化的同時[8?12],通過使用本實(shí)驗(yàn)室不斷改進(jìn)的微型化移動平臺,對系統(tǒng)的定位技術(shù)進(jìn)行改進(jìn)[13?15],提出了一種邊界定位算法,進(jìn)一步提高了系統(tǒng)的定位精確度。

      1? 系統(tǒng)總體結(jié)構(gòu)

      本實(shí)驗(yàn)所設(shè)計(jì)的系統(tǒng)由硬件組和軟件組合作完成,本文的研究內(nèi)容屬于軟件組。整個系統(tǒng)的軟件設(shè)計(jì)采用跨平臺的C++圖形用戶界面應(yīng)用程序框架(QT Creator)進(jìn)行編程實(shí)現(xiàn),主要由CCD、計(jì)算機(jī)、光譜儀、下位機(jī)和LED光源五部分組成。計(jì)算機(jī)主要是用來處理算法、控制下位機(jī)、運(yùn)行系統(tǒng)軟件,計(jì)算機(jī)與下位機(jī)之間采用串口通信,通過下位機(jī)實(shí)現(xiàn)上位機(jī)對各個驅(qū)動器的控制,主要控制電機(jī)的運(yùn)動,進(jìn)而對量子點(diǎn)陣列進(jìn)行定位。計(jì)算機(jī)上觀察到的實(shí)時信息由CCD采集,通過串口通信進(jìn)行傳輸,并以此監(jiān)測量子點(diǎn)的定位是否準(zhǔn)確。采集系統(tǒng)使用QE65000型號光譜儀與計(jì)算機(jī)之間通過USB接口進(jìn)行傳輸,與傳統(tǒng)的串口傳輸相比,使用USB接口傳輸數(shù)據(jù)更快速、穩(wěn)定。LED光源的強(qiáng)弱是通過A/D轉(zhuǎn)換電路來調(diào)節(jié)的。系統(tǒng)的總體結(jié)構(gòu)如圖1所示。

      2? 定位算法

      2.1? 結(jié)? 構(gòu)

      PC上位機(jī)發(fā)送控制命令給STM32,下位機(jī)STM32執(zhí)行相應(yīng)的程序令電機(jī)運(yùn)動,在電機(jī)運(yùn)動的過程中產(chǎn)生反饋信號給STM32,再由下位機(jī)收集這些信息加以總結(jié),最終反饋給上位機(jī),并在界面中呈現(xiàn)出來。STM32具有功耗較低、實(shí)時性強(qiáng)、運(yùn)行速度快等優(yōu)點(diǎn),因此,本文使用STM32作為下位機(jī)。移動平臺用來放置待測樣品,通過控制電機(jī)的運(yùn)動,包括[x],[y]坐標(biāo)方向電機(jī)的前后移動和[z]坐標(biāo)方向電機(jī)的上下移動,進(jìn)而定位待測樣品的位置坐標(biāo)。結(jié)構(gòu)如圖2所示。

      2.2? 邊界定位算法設(shè)計(jì)

      首先定義存儲位置信息的坐標(biāo)變量[x],[y],[z],上位機(jī)控制電機(jī)依次定位量子點(diǎn)陣列的左上角、左下角、右上角和右下角4個點(diǎn)的坐標(biāo),當(dāng)4點(diǎn)坐標(biāo)定位完成后通過邊界定位算法計(jì)算出量子點(diǎn)陣列中剩余點(diǎn)的坐標(biāo),公式如下:

      [X[i]=zsx+mist[x]] (1)

      [X[i+5]=X[i]+(X[i+20]-X[i]4)+mist[x]] (2)

      式中:[i]是目標(biāo)點(diǎn)數(shù);[X[i]]是第[i]個量子點(diǎn)的[x]坐標(biāo);[zsx]代表左上角的[x]坐標(biāo);mist[[x]]是定位時[x]坐標(biāo)的誤差,當(dāng)mist[[x]]取0時,表示定位準(zhǔn)確,不需要進(jìn)行調(diào)整。通過式(1),式(2)計(jì)算出左側(cè)、右側(cè)邊緣的量子點(diǎn)的[x]坐標(biāo),而陣列中間的量子點(diǎn)的[x]坐標(biāo)則通過式(3)計(jì)算得到。

      [X[i]=X[i-1]+(X[i+3]-X[i-1]4)+mist[x]]? (3)

      [y]坐標(biāo)和[z]坐標(biāo)的定位算法與[x]坐標(biāo)一致,由此,就可定位出所有量子點(diǎn)的位置坐標(biāo)。

      邊界定位算法步驟為:

      1) 初始化電機(jī)的位置,即將[x],[y],[z]坐標(biāo)清零;

      2) 依次定位左上、左下、右上和右下角4個點(diǎn)的位置坐標(biāo);

      3) 通過邊界定位公式計(jì)算出陣列左側(cè)和右側(cè)邊緣的量子點(diǎn)位置坐標(biāo);

      4) 根據(jù)已定位的位置坐標(biāo)計(jì)算剩余量子點(diǎn)的位置坐標(biāo);

      5) 存儲所有量子點(diǎn)的位置坐標(biāo)。

      定位流程圖如圖3所示。

      3? 系統(tǒng)軟件設(shè)計(jì)

      本實(shí)驗(yàn)主要使用Qt Creator平臺實(shí)現(xiàn)整個系統(tǒng)的編程與設(shè)計(jì)。系統(tǒng)采用多線程設(shè)計(jì),總共分為4個線程,分別為:主線程、串口收發(fā)數(shù)據(jù)線程、CCD采集線程和光譜儀采集線程。其中,主線程用來進(jìn)行界面操作和控制其他線程狀態(tài);串口收發(fā)數(shù)據(jù)線程負(fù)責(zé)接收下位機(jī)傳來的協(xié)議指令和發(fā)送上位機(jī)發(fā)送給下位機(jī)的協(xié)議指令,并對其做簡要處理;CCD采集線程負(fù)責(zé)向CCD設(shè)備請求在定位量子點(diǎn)過程中需要獲取的顯微圖像;光譜儀采集線程負(fù)責(zé)測試過程中向光譜儀請求量子點(diǎn)光譜信息。

      3.1? 主線程設(shè)計(jì)

      主線程主要用于總控制人機(jī)交互界面的響應(yīng)和其他線程的啟動和停止。系統(tǒng)啟動過程中,首先會啟動串口線程和必要的信號、槽的連接,一些全局變量的初始化操作,以及其他子界面的構(gòu)建,如系統(tǒng)配置界面、定位界面、試驗(yàn)界面等,并與指定的串口端口建立連接,如果連接成功,則會啟動依賴于串口進(jìn)行上、下位機(jī)通信的信號與槽函數(shù)的連接。主界面的組成結(jié)構(gòu)如圖4所示。

      3.2? 串口線程設(shè)計(jì)

      串口線程設(shè)計(jì)用來專門接收和發(fā)送上位機(jī)與下位機(jī)之間的命令協(xié)議,在線程構(gòu)建的過程中,程序會打開指定端口的串口,波特率為115 200 b/s,沒有流控,兩個停止位。線程一旦啟動成功,就會一直查詢串口是否接收到數(shù)據(jù)或者是否需要發(fā)送數(shù)據(jù),如果需要發(fā)送數(shù)據(jù)到下位機(jī),那么程序會檢查此命令的長度,只有當(dāng)長度符合要求時,才會執(zhí)行發(fā)送指令;如果串口有下位機(jī)傳來數(shù)據(jù),那么在此線程內(nèi)部會執(zhí)行接收操作,并校驗(yàn)指令的幀頭是否正確,只有當(dāng)幀頭正確時,才會繼續(xù)執(zhí)行接收操作。當(dāng)一幀數(shù)據(jù)接收完成后,還會校驗(yàn)幀尾,只有當(dāng)幀尾也正確時,才會將這一幀數(shù)據(jù)去掉幀頭和幀尾后傳送到主線程進(jìn)行指令解析,否則,將接收到的數(shù)據(jù)全部丟棄。詳細(xì)流程如圖5所示。

      3.3? CCD線程設(shè)計(jì)

      程序首先檢測系統(tǒng)中可用的CCD設(shè)備,如果存在滿足要求的CCD設(shè)備,那么就對其進(jìn)行初始化,并獲取設(shè)備信息。當(dāng)主進(jìn)程請求定位、獲取圖像時,程序會向CCD設(shè)備發(fā)送請求指令,并對獲取到的圖像數(shù)據(jù)進(jìn)行格式轉(zhuǎn)換,轉(zhuǎn)換為QImage格式數(shù)據(jù),將其傳送到主進(jìn)程顯示。詳細(xì)流程如圖6所示。

      3.4? 光譜儀線程設(shè)計(jì)

      首先,程序獲取系統(tǒng)中的可用光譜儀設(shè)備,如果存在,則對其執(zhí)行打開和初始化操作,如果打開成功且主進(jìn)程在請求光譜信息,那么,此進(jìn)程就會向光譜儀發(fā)送請求光譜指令,并將獲取到的光譜信息保存到指定的數(shù)據(jù)結(jié)構(gòu)中,供主進(jìn)程使用。詳細(xì)流程如圖7所示。

      4? 系統(tǒng)測試結(jié)果

      將待測樣品放置在移動平臺后,打開采集系統(tǒng)軟件,首先初始化系統(tǒng)的電機(jī)位置、電機(jī)移動速度和其他配置參數(shù),然后對量子點(diǎn)陣列進(jìn)行定位,在定位過程中通過CCD實(shí)時傳輸量子點(diǎn)團(tuán)簇的顯微圖像,如圖8a)所示。系統(tǒng)定位完成后,CCD線程將存儲的定位信息發(fā)送到主線程,并在定位界面上顯示位置坐標(biāo),如圖8b)所示。當(dāng)主線程要獲取量子點(diǎn)的光譜信息時,光譜儀采集線程便向光譜儀請求光譜信息,顯示于圖形曲線顯示界面,如圖8c)所示。

      5? 結(jié)? 論

      本文使用QT Creator平臺設(shè)計(jì)并實(shí)現(xiàn)了光譜信號采集系統(tǒng),通過對主線程、串口收發(fā)數(shù)據(jù)線程、CCD采集線程和光譜儀采集線程的設(shè)計(jì),大大提高了系統(tǒng)的運(yùn)行速度。同時,根據(jù)邊界定位算法對系統(tǒng)的定位技術(shù)進(jìn)行改進(jìn),減少了系統(tǒng)的光耦數(shù)量,降低了硬件的復(fù)雜性,避免了因定位不準(zhǔn)確產(chǎn)生的誤差,從而提高了系統(tǒng)的檢測精度。但系統(tǒng)的電機(jī)運(yùn)動完全由上位機(jī)控制,不能從軟件運(yùn)行中及時發(fā)現(xiàn)電機(jī)的老化、松動等故障,應(yīng)定期對系統(tǒng)進(jìn)行維護(hù)和檢修。

      參考文獻(xiàn)

      [1] 周海彬,雷新卓,周望,等.基于Android系統(tǒng)的微型光譜儀總體設(shè)計(jì)[J].激光與光電子學(xué)進(jìn)展,2016,53(6):298?304.

      [2] 糜蓉,王永,熊顯名.基于Android平臺的微型光譜儀數(shù)據(jù)傳輸與顯示研究[J].計(jì)算機(jī)測量與控制,2015,23(12):4259?4262.

      [3] 劉兵,劉英,李燦,等.輕小型可見/近紅外實(shí)時成像光譜儀的光學(xué)系統(tǒng)設(shè)計(jì)[J].光學(xué)學(xué)報,2015,36(6):321?328.

      [4] LI Tengfei, LI Song, WANG Yapei, et al. Design of micro spectrometer for steel detecting [J]. Journal of applied optics, 2014, 35(6): 981?986.

      [5] 杜曉晴,童廣,胥慶,等.微小型紅外光柵光譜儀光學(xué)系統(tǒng)的設(shè)計(jì)與優(yōu)化[J].應(yīng)用基礎(chǔ)與工程科學(xué)學(xué)報,2009,17(1):85?91.

      [6] 梁靜秋,梁中翥,呂金光,等.空間調(diào)制微型傅里葉變換紅外光譜儀研究[J].中國光學(xué),2015(2):277?298.

      [7] 胡方強(qiáng),李晟.基于MEMS技術(shù)的便攜式近紅外光譜儀的研制[J].儀表技術(shù),2012(12):21?23.

      [8] 張寧,劉宇龍,吳嘉輝,等.微型光譜儀的CCD數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].紅外與激光工程,2015(1):141?147.

      [9] 劉宇龍.微型光譜采集系統(tǒng)設(shè)計(jì)[D].長春:長春理工大學(xué),2014.

      [10] 王毅磊,高鵬飛,黃斐,等.基于STM32的光譜采集系統(tǒng)設(shè)計(jì)[J].電子科技,2017,30(2):1?3.

      [11] 潘宇,羅永道.線陣CCD光譜采集系統(tǒng)的自適應(yīng)濾波降噪[J].光學(xué)儀器,2016,38(2):167?172.

      [12] 王博,白永林,歐陽嫻,等.基于線陣CCD的高速光譜信息采集系統(tǒng)的研究[J].光子學(xué)報,2010,39(3):441?445.

      [13] QIAO Zhaowei, SHI Tingna, WANG Yindong, et al. New sliding?mode observer for position sensorless control of permanent?magnet synchronous motor [J]. IEEE transactions on industrial electronics, 2013, 60(2): 710?719.

      [14] 賈啟.三自由度永磁同步平面電機(jī)定位控制研究[D].沈陽:沈陽工業(yè)大學(xué),2013.

      [15] LI Chuanjun, LIANG Qiujuan. Many high performance motion control of linear motor drive system research [J]. Applied mechanics and materials, 2014, 599: 981?984.

      门源| 锡林郭勒盟| 女性| 会同县| 衡东县| 鲜城| 东乡族自治县| 南召县| 南涧| 金山区| 晋中市| 卫辉市| 都昌县| 银川市| 盖州市| 广饶县| 盐源县| 武宁县| 内江市| 广河县| 康保县| 宜丰县| 林周县| 南投县| 门源| 定远县| 上饶县| 于都县| 东平县| 滨州市| 奉新县| 东丽区| 麦盖提县| 疏附县| 永宁县| 河北区| 金湖县| 朝阳县| 盐山县| 尼木县| 页游|