顧樂旭
摘要:針對公共出行過程中大量行李物品不斷考驗(yàn)安檢設(shè)備效率的現(xiàn)狀,本文設(shè)計(jì)了一套具有多通道采集和網(wǎng)絡(luò)快速傳輸?shù)腦射線安檢儀實(shí)時檢測成像系統(tǒng)。該系統(tǒng)使用具有高集成度的ZYNQ芯片進(jìn)行開發(fā),利用其PL(Processing Logic)端完成實(shí)時數(shù)據(jù)多通道采集和數(shù)據(jù)處理,用PS(Processing System)完成系統(tǒng)的控制并利用Lwip(Light Weight IP協(xié)議)進(jìn)行TCP/IP協(xié)議的以太網(wǎng)傳輸,并針對數(shù)據(jù)特點(diǎn)進(jìn)行圖像處理實(shí)現(xiàn)初步灰度圖成像顯示。
關(guān)鍵詞:ZYNQ;多通道采集;實(shí)時成像;Lwip;TCP/IP
中圖分類號:TL816.1 文獻(xiàn)標(biāo)識碼:A 文章編號:1007-9416(2017)07-0160-02
由于X射線安檢設(shè)備使用環(huán)境的不同,所檢測的物體體積大小各異[1-3],所以其可布置的探測器序列數(shù)目需求應(yīng)進(jìn)行相應(yīng)調(diào)整,以保證安檢檢測質(zhì)量。但普遍安檢設(shè)備,因缺少擴(kuò)展接口而無法增加探測器序列,或?qū)U(kuò)展后增加的檢測數(shù)據(jù)不能進(jìn)行實(shí)時傳輸,所以無法實(shí)現(xiàn)按需調(diào)整的需求。本設(shè)計(jì)應(yīng)用ZYNQ中的PL端進(jìn)行多通道數(shù)據(jù)采集和時序控制,其高頻時鐘工作范圍不僅能提高數(shù)據(jù)采集的速度和精度,而且可以根據(jù)實(shí)際需求增減探測器序列的數(shù)目,擴(kuò)大檢測范圍。同時在PS端嵌入FreeRTOS實(shí)時操作系統(tǒng)可以對采集端進(jìn)行指令下達(dá)和實(shí)時控制調(diào)整,并實(shí)現(xiàn)千兆以太網(wǎng)功能,可以保證數(shù)據(jù)的實(shí)時傳輸以便上位機(jī)進(jìn)行圖像實(shí)時顯示。
1 系統(tǒng)硬件設(shè)計(jì)
1.1 線陣列探測器選取
本次成像系統(tǒng)使用的是線陣列探測器序列來檢測X射線經(jīng)過物體的透射和衰減程度,根據(jù)實(shí)際性能和應(yīng)用需求,選用日本濱松公司所生產(chǎn)的CF248-1式X射線探測模塊,此探測模由多個PD陣列模塊組成。采集方式是雙能采集方式,每塊CF248-10有4對PD,每對PD對應(yīng)16個像素、32個通道,即每塊CF248-10有128個通道。本次設(shè)計(jì)八串同時可連接探測器模塊的接口,每串可串聯(lián)15塊上述探測器序列,可達(dá)到15360個通道,帶載120塊CF248-10。可根據(jù)實(shí)際采集狀態(tài)調(diào)節(jié)積分時間和高低能增益。
1.2 系統(tǒng)總體設(shè)計(jì)方案
本文設(shè)計(jì)所采用的主要芯片是XILINX公司生產(chǎn)的ZYNQ-7000,其PL端的高頻率工作時鐘和快速處理能力可以滿足160Mbps采集數(shù)據(jù)的速率以及對數(shù)據(jù)進(jìn)行并行處理的需要,其PS端為成像系統(tǒng)的控制處理單元,不僅可以完成上位機(jī)對探測器序列的控制,而且可以運(yùn)行實(shí)時操作系統(tǒng),構(gòu)建以太網(wǎng)傳輸,實(shí)現(xiàn)上位機(jī)的實(shí)時成像。系統(tǒng)主體結(jié)構(gòu)框圖如圖1所示,數(shù)據(jù)采集模塊可連接多個通道的探測器序列,增加了可檢測的范圍和精度,并將采集的數(shù)據(jù)經(jīng)過實(shí)時操作系統(tǒng)處理,并會在DDR3進(jìn)行緩存,然后通過PHY芯片用以太網(wǎng)方式傳輸以便上位機(jī)可以對檢測物體進(jìn)行實(shí)時成像檢測。并通過串口功能對PS端操作系統(tǒng)的運(yùn)行狀態(tài)和數(shù)據(jù)通信進(jìn)行監(jiān)測。
2 系統(tǒng)軟件程序設(shè)計(jì)
系統(tǒng)的硬件程序設(shè)計(jì)分為數(shù)據(jù)采集模塊和數(shù)據(jù)傳輸模塊兩部分,數(shù)據(jù)采集模塊(PL端)的數(shù)字邏輯將采用VHDL語言進(jìn)行編寫,數(shù)據(jù)傳輸模塊(PS端)的程序設(shè)計(jì)將采用C語言配合FreeRTOS實(shí)時操作系統(tǒng)進(jìn)行編寫。系統(tǒng)的系統(tǒng)硬件邏輯架構(gòu)圖如圖2所示,系統(tǒng)的實(shí)時成像將在上位機(jī)搭建顯示平臺,進(jìn)行實(shí)時顯示。
2.1 數(shù)據(jù)采集模塊邏輯設(shè)計(jì)
數(shù)據(jù)采集模塊的數(shù)字邏輯設(shè)計(jì)是在PL端進(jìn)行的,主要包括參數(shù)設(shè)置單元、控制處理單元、數(shù)據(jù)生成轉(zhuǎn)換單元、差分信號轉(zhuǎn)換單元四個部分。參數(shù)設(shè)置單元是數(shù)據(jù)采集模塊(PL端)對上位機(jī)指令的轉(zhuǎn)換解析模塊,通過接收PS端發(fā)出的指令,按照相關(guān)報文協(xié)議對接收到的數(shù)據(jù)進(jìn)行分配整理,生成可供控制處理單元和數(shù)據(jù)轉(zhuǎn)換生成單元的各類參數(shù)和控制命令。
控制處理單元將作為數(shù)據(jù)采集模塊的核心,對探測器序列采集的數(shù)據(jù)和PS端傳遞過來的參數(shù)控制信息進(jìn)行主要的整合處理,按照參數(shù)單元解析的指令,對采集數(shù)據(jù)進(jìn)行數(shù)據(jù)截取,得到滿足一定成像條件的并行數(shù)據(jù)。
數(shù)據(jù)生成轉(zhuǎn)換單元將對控制單元生成的數(shù)據(jù),按照參數(shù)設(shè)置單元對采集數(shù)據(jù)的要求,對數(shù)據(jù)進(jìn)行有效部分的提取,并根據(jù)相應(yīng)報文對數(shù)據(jù)打包,形成可供傳輸?shù)絇S端的數(shù)據(jù)包。
差分信號轉(zhuǎn)換單元是將探測器序列的差分信號進(jìn)行轉(zhuǎn)換成可供FPGA端進(jìn)行邏輯設(shè)計(jì)的單端數(shù)字信號。而采用差分信號傳輸也是為了保證信號傳輸?shù)姆€(wěn)定性和完整性。
2.2 數(shù)據(jù)傳輸模塊邏輯設(shè)計(jì)
針對實(shí)時成像的系統(tǒng)需求,在PS端設(shè)計(jì)時需選用合適的實(shí)時操作系統(tǒng)對程序進(jìn)行實(shí)現(xiàn),考慮到PS端運(yùn)行空間大小及實(shí)時性與可靠性等因素,選擇FreeRTOS作為本次設(shè)計(jì)的操作系統(tǒng),并應(yīng)用以太網(wǎng)的方式進(jìn)行數(shù)據(jù)傳輸,采用Lwip堆棧實(shí)現(xiàn)TCP/IP協(xié)議,可以有效減少存儲器利用量和代碼尺寸,并有效的和實(shí)時操作系統(tǒng)結(jié)合,實(shí)現(xiàn)實(shí)時傳輸。數(shù)據(jù)傳輸模塊程序運(yùn)行框圖如圖3所示。
移植Lwip堆棧在FreeRTOS中進(jìn)行套接字socket的設(shè)置,完成TCP/IP的握手連接以及IP地址和MAC地址的設(shè)置,再通過創(chuàng)建相關(guān)數(shù)據(jù)傳輸任務(wù)函數(shù),而任務(wù)運(yùn)行的順序按優(yōu)先級的設(shè)定進(jìn)行,任務(wù)之間的信息通信經(jīng)過隊(duì)列進(jìn)行傳遞。在獲得上位機(jī)下達(dá)的指令后,按相關(guān)指令獲取數(shù)據(jù)后將通過DMA方式進(jìn)行傳輸,減小對PL端的中央處理單元的占用。上位機(jī)相應(yīng)參數(shù)控制指令也將通過ARM進(jìn)行相應(yīng)轉(zhuǎn)化后,調(diào)用Bram寄存器傳達(dá)到數(shù)據(jù)采集模塊中,使采集模塊按照上位機(jī)指令進(jìn)行工作。
3 系統(tǒng)實(shí)時成像設(shè)計(jì)與系統(tǒng)調(diào)試
系統(tǒng)實(shí)時成像軟件是通過VisualC++6.0開發(fā)環(huán)境,結(jié)合Windows Socket開發(fā)方式完成TCP/IP協(xié)議的千兆以太網(wǎng)傳輸,并調(diào)用成像函數(shù)設(shè)定圖像寬度,生成像素為1024*640的灰度圖。通過將本系統(tǒng)安裝在型號為THSCAN CX6550B的X射線檢測機(jī)上進(jìn)行性能檢測,對國家統(tǒng)一規(guī)定的安檢使用標(biāo)準(zhǔn)體(如圖4)進(jìn)行成像測試,得到的初步標(biāo)準(zhǔn)體成像(如圖5)。根據(jù)初步實(shí)時成像灰度圖效果表明,圖像整體邊緣顯示清晰,但實(shí)物細(xì)節(jié)顯示不清楚,因此用邊緣檢測方法進(jìn)行圖像去躁銳化,經(jīng)過Roberts算子,Prewitt算子,Sobel算子進(jìn)行圖像銳化后,依然無法顯示實(shí)物細(xì)節(jié)。經(jīng)分析得知,在灰度值范圍為0到65535范圍內(nèi),像素差值小于30,人類的肉眼將無法識別,各算子所計(jì)算的梯度值差別也很小。由Kirsch算法的原理啟發(fā),將單一像素周圍八個方向的像素值進(jìn)行相減求絕對值運(yùn)算,根據(jù)絕對值的大小和絕對值的范圍,提取像素差值在15范圍的像素,并對提取像素進(jìn)行雙對角線與水平垂直四個方向的中值濾波,進(jìn)行單獨(dú)成像可見原始圖像無法顯示的細(xì)節(jié),但無法保證原圖像的完整性。針對這一現(xiàn)象,通過計(jì)算提取出的像素中值,利用本系統(tǒng)灰度成像的范圍與計(jì)算所得像素中值進(jìn)行比較,調(diào)整像素值大小,收縮灰度級范圍,進(jìn)而得到清晰的標(biāo)準(zhǔn)體檢測圖(如圖6)。并將相應(yīng)圖像處理方法在上位機(jī)中進(jìn)行編程,完成成像系統(tǒng)的設(shè)計(jì)。
參考文獻(xiàn)
[1]楊雷,高富強(qiáng),李嶺,等.高速低能X射線工業(yè)CT數(shù)據(jù)采集與傳輸[J].計(jì)算機(jī)應(yīng)用,2014,34(11):3361-3364.
[2]馬偉.X射線安檢機(jī)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].南昌大學(xué),2013.
[3]李紅偉.X 射線圖像采集與處理技術(shù)研究[D].長春理工大學(xué),2012.endprint