基于SoC_FPGA的柔性智能機(jī)器視覺檢測(cè)系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于機(jī)器視覺技術(shù)領(lǐng)域,特別是涉及一種基于SoC_FPGA的柔性智能機(jī)器視覺檢測(cè)系統(tǒng)。
【背景技術(shù)】
[0002]機(jī)器視覺系統(tǒng)是通過圖像攝取裝置將目標(biāo)轉(zhuǎn)換為圖像信號(hào),并對(duì)這些信號(hào)進(jìn)行各種運(yùn)算來(lái)抽取目標(biāo)的特征,進(jìn)而根據(jù)判別的結(jié)果來(lái)控制現(xiàn)場(chǎng)的設(shè)備動(dòng)作。在傳統(tǒng)的大批量生產(chǎn)過程中,產(chǎn)品質(zhì)量的檢測(cè)主要依靠人工視覺,但人工視覺效率低且精度不高,采用機(jī)器視覺檢測(cè)方法可以大大提高生產(chǎn)效率和生產(chǎn)的自動(dòng)化程度。
[0003]由于機(jī)器視覺系統(tǒng)涉及海量數(shù)據(jù)及復(fù)雜計(jì)算,傳統(tǒng)的機(jī)器視覺系統(tǒng)通常采用采集和分析分離的設(shè)計(jì)模式,典型的機(jī)器視覺系統(tǒng)主要包括五大塊:照明,鏡頭,高速相機(jī),圖像采集卡和視覺處理器。照明和鏡頭直接影響輸入機(jī)器視覺系統(tǒng)的圖像數(shù)據(jù)的質(zhì)量;高速相機(jī)攝取目標(biāo)的圖像信息;圖像采集卡將圖像信息實(shí)時(shí)存儲(chǔ)并傳輸給視覺處理單元;視覺處理器對(duì)圖像信息進(jìn)行分析計(jì)算來(lái)抽取目標(biāo)特征。由于機(jī)器視覺系統(tǒng)往往涉及海量數(shù)據(jù)及復(fù)雜運(yùn)算,所以傳統(tǒng)的機(jī)器視覺系統(tǒng)采用采集與處理分離的設(shè)計(jì)模式或FPGA+DSP/CPU的雙芯片設(shè)計(jì)模式,在這種系統(tǒng)中,通常由FPGA負(fù)責(zé)圖像采集,DSP負(fù)責(zé)圖像運(yùn)算。雙芯片的設(shè)計(jì)方法不可避免的增加了 I/O連線,繼而增大了系統(tǒng)體積和設(shè)計(jì)復(fù)雜度,同時(shí)也提高了系統(tǒng)功耗。此外,雙芯片系統(tǒng)的數(shù)據(jù)吞吐率,實(shí)時(shí)性及可靠性都不可避免的受到限制,因此現(xiàn)有的智能相機(jī)的圖像處理功能往往只有灰度變換、去噪、濾波等圖像預(yù)處理,并不能真正意義上實(shí)現(xiàn)目標(biāo)特征提取。
[0004]即使是現(xiàn)有的智能相機(jī)也多是采用FPGA+DSP/CPU的雙芯片設(shè)計(jì)模式,這種設(shè)計(jì)模式不僅增大了裝置體積,增加了 I/o連線和設(shè)計(jì)難度,同時(shí)也提高了系統(tǒng)成本與功耗,降低了系統(tǒng)性能、實(shí)時(shí)性及靈活性。
【發(fā)明內(nèi)容】
[0005]針對(duì)現(xiàn)有機(jī)器視覺系統(tǒng)由于集成度低導(dǎo)致的系統(tǒng)成本高,功耗高,靈活性差,實(shí)時(shí)性差等問題,本發(fā)明目的是:提供一種基于SoC_FPGA的柔性智能機(jī)器視覺檢測(cè)系統(tǒng),實(shí)現(xiàn)了機(jī)器視覺系統(tǒng)的高集成度,成本低廉。
[0006]本發(fā)明的技術(shù)方案是:
一種基于SoC_FPGA的柔性智能機(jī)器視覺檢測(cè)系統(tǒng),以SoC_FPGA為中央處理單元,在SoC_FPGA上集成有電源模塊,時(shí)鐘模塊,圖像傳感器,存儲(chǔ)系統(tǒng),功率監(jiān)視器,I/O及傳輸模塊;所述SoC_FPGA包括HPS和FPGA兩部分,同時(shí)集成了 ARM硬核處理器、DSP和FPGA,F(xiàn)PGA架構(gòu)中的可編程邏輯和DRAM控制器構(gòu)成圖像采集模塊,用于圖像的采集與存儲(chǔ);FPGA架構(gòu)中的可編程邏輯、DSP模塊以及RAM模塊為圖像處理運(yùn)算的定制加速器;ARM硬核處理器加載嵌入式操作系統(tǒng)及用戶程序?qū)ο到y(tǒng)的硬件資源進(jìn)行管理。
[0007]優(yōu)選的,利用IP復(fù)用技術(shù)重定義接口實(shí)現(xiàn)對(duì)不同通信接口的兼容。
[0008]優(yōu)選的,F(xiàn)PGA架構(gòu)中的可編程邏輯、DSP模塊以及RAM模塊作為BUS單元掛載在AXI BUS上,ARM CPU可以通過LW HPS2FPGA及AXI BUS訪問,從而實(shí)現(xiàn)復(fù)雜算法的硬件加速。
[0009]優(yōu)選的,將圖像采集與處理和用戶程序劃分在相互獨(dú)立的數(shù)據(jù)層面,用戶程序通過用戶接口程序調(diào)用硬件加速。
[0010]優(yōu)選的,所述存儲(chǔ)系統(tǒng)包括存儲(chǔ)圖像數(shù)據(jù)的DDR3及存儲(chǔ)程序的Flash,I/O模塊包括usb2,uart,can,i2c,,PCIe及用戶自定義接口 ;傳輸模塊包括Ethernet,WirelessHART及WiFi模塊。
[0011]本發(fā)明的優(yōu)點(diǎn)是:
1.系統(tǒng)采用SoC_FPGA作為系統(tǒng)核心單芯片設(shè)計(jì)模式替代FPGA+CPU/DSP的雙芯片設(shè)計(jì)模式,進(jìn)一步提高了機(jī)器視覺系統(tǒng)的集成度,有效減小系統(tǒng)的體積與設(shè)計(jì)復(fù)雜度,節(jié)約了系統(tǒng)成本。
[0012]2.采用芯片解決方案,不需要設(shè)計(jì)芯片間I/O通路,減低了系統(tǒng)功耗,提高系統(tǒng)的性能與可靠性。
[0013]3.采用FPGA邏輯模塊、DSP及RAM模塊設(shè)計(jì)圖像處理算法定制加速器,有效提高機(jī)器視覺系統(tǒng)的計(jì)算性能和實(shí)時(shí)性。
[0014]4.采用IP復(fù)用技術(shù),實(shí)現(xiàn)系統(tǒng)硬件接口的用戶重定義,有效提高系統(tǒng)的設(shè)計(jì)靈活性。
[0015]5.系統(tǒng)出色的計(jì)算性能滿足圖像的本地實(shí)時(shí)處理需求,在非必需傳輸圖像的應(yīng)用場(chǎng)景中,可以通過Wireless HART接口實(shí)現(xiàn)處理結(jié)果的無(wú)線傳輸。
[0016]6.在必需傳輸圖像的應(yīng)用中,傳輸前對(duì)圖像進(jìn)行壓縮和預(yù)處理,可以有效減小通信負(fù)載,并通過WiFi實(shí)現(xiàn)圖像的無(wú)線傳輸。
[0017]7.將圖像處理算法定制加速器作為總線單元,處于與微處理器控制平面相獨(dú)立的數(shù)據(jù)平面,而在微處理器平面加載操作系統(tǒng)及用戶程序,可以在用戶層屏蔽底層復(fù)雜的算法加速技術(shù)細(xì)節(jié),確保了系統(tǒng)的用戶友好性。
【附圖說(shuō)明】
[0018]圖1是本發(fā)明基于SoC_FPGA的柔性智能機(jī)器視覺檢測(cè)系統(tǒng)硬件結(jié)構(gòu)框圖;
圖2是本發(fā)明基于SoC_FPGA的柔性智能機(jī)器視覺檢測(cè)系統(tǒng)的SoC_FPGA的內(nèi)部架構(gòu)框圖。
【具體實(shí)施方式】
[0019]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明了,下面結(jié)合【具體實(shí)施方式】并參照附圖,對(duì)本發(fā)明進(jìn)一步詳細(xì)說(shuō)明。應(yīng)該理解,這些描述只是示例性的,而并非要限制本發(fā)明的范圍。此外,在以下說(shuō)明中,省略了對(duì)公知結(jié)構(gòu)和技術(shù)的描述,以避免不必要地混淆本發(fā)明的概念。
[0020]實(shí)施例:
如圖1所示,系統(tǒng)主要由中央處理單元,電源模塊,時(shí)鐘模塊,調(diào)試接口,LEDs,按鍵,圖像傳感器,存儲(chǔ)系統(tǒng),功率監(jiān)視器,I/O及傳輸模塊組成。其中中央處理單元SoC_FPGA內(nèi)部主要有HPS (hard processor system)和FPGA兩部分組成,存儲(chǔ)系統(tǒng)包括存儲(chǔ)圖像數(shù)據(jù)的DDR3及存儲(chǔ)程序的Flash,接口模塊除了通用的usb2,uart,can,i2c等低速接口外,還包括PCIe等高速接口及用戶自定義接口 ;傳輸模塊包括Ethernetjireless HART及WiFi模塊。
[0021]SoC_FPGA是一種新型高集成度SoC,其不僅集成了 ARM硬核處理器和FPGA架構(gòu),同時(shí)還集成了 DSP,周邊設(shè)備和接口等,SoC內(nèi)部不同模塊通過BUS互聯(lián)。系統(tǒng)在圖像的采集環(huán)節(jié),可以使用嵌入式在FPGA架構(gòu)中的可編程邏輯和DRAM控制器設(shè)計(jì)圖像采集模塊,實(shí)現(xiàn)圖像的實(shí)時(shí)高速采集與存儲(chǔ);在圖像處理環(huán)節(jié),SoC_FPGA中的高速數(shù)字信號(hào)處理模塊的算術(shù)性能要遠(yuǎn)遠(yuǎn)高于微處理器和DSP芯片組合所能達(dá)到的水平,可以使用嵌入在FPGA架構(gòu)中的可編程邏輯、DSP模塊以及RAM模塊設(shè)計(jì)圖像處理運(yùn)算的定制加速器;在頂層設(shè)計(jì)環(huán)節(jié),可以把這些加速器設(shè)計(jì)用作微處理器總線單元,通過總線與ARM微處理器互聯(lián),在微處理器上加載嵌入式操作系統(tǒng)和用戶軟件,進(jìn)行系統(tǒng)資源的調(diào)度與管理,從而實(shí)現(xiàn)用戶友好性。
[0022]如圖2所示,系統(tǒng)的功能實(shí)現(xiàn)可以分為嵌入式軟件實(shí)現(xiàn)和數(shù)字邏輯實(shí)現(xiàn)兩部分內(nèi)容。其中數(shù)字邏輯開發(fā)集中在FPGA部分,核心內(nèi)容是利用FPGA架構(gòu)中的可編程邏輯、DSP模塊以及RAM模塊實(shí)現(xiàn)圖像采集,圖像預(yù)處理,圖像算法定制加速器,圖像壓縮算法,這些模塊作為BUS單元掛載在AXI BUS上,ARM CPU可以通過LW HPS2FPGA及AXI BUS訪問這些數(shù)字邏輯模塊,從而實(shí)現(xiàn)復(fù)雜算法的硬件加速。操作系統(tǒng)和用戶程序開發(fā)在HPS部分進(jìn)行,首先在ARM CPU上加載嵌入式操作系統(tǒng),再在其上開發(fā)用戶接口,使得用戶可以在上層方便的調(diào)用FPGA部分的硬件加速模塊實(shí)現(xiàn)用戶圖像算法的硬件加速,使得定制算法加速器與用戶程序處于不同的相互獨(dú)立的數(shù)據(jù)層面,對(duì)用戶屏蔽底層復(fù)雜的算法硬件加速技術(shù)細(xì)節(jié),使得系統(tǒng)更加友好和易用。此外,系統(tǒng)除提供豐富的標(biāo)準(zhǔn)通信接口外,用戶還可以根據(jù)自己實(shí)際應(yīng)用需求通過IP復(fù)用技術(shù)重定義的通信接口,進(jìn)一步提高系統(tǒng)的設(shè)計(jì)靈活性。
[0023]應(yīng)當(dāng)理解的是,本發(fā)明的上述【具體實(shí)施方式】?jī)H僅用于示例性說(shuō)明或解釋本發(fā)明的原理,而不構(gòu)成對(duì)本發(fā)明的限制。因此,在不偏離本發(fā)明的精神和范圍的情況下所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。此外,本發(fā)明所附權(quán)利要求旨在涵蓋落入所附權(quán)利要求范圍和邊界、或者這種范圍和邊界的等同形式內(nèi)的全部變化和修改例。
【主權(quán)項(xiàng)】
1.一種基于SoC_FPGA的柔性智能機(jī)器視覺檢測(cè)系統(tǒng),其特征在于,以SoC_FPGA為中央處理單元,在SoC_FPGA上集成有電源模塊,時(shí)鐘模塊,圖像傳感器,存儲(chǔ)系統(tǒng),功率監(jiān)視器,I/O及傳輸模塊;所述SoC_FPGA包括HPS和FPGA兩部分,同時(shí)集成了 ARM硬核處理器、DSP和FPGA,F(xiàn)PGA架構(gòu)中的可編程邏輯和DRAM控制器構(gòu)成圖像采集模塊,用于圖像的采集與存儲(chǔ);FPGA架構(gòu)中的可編程邏輯、DSP模塊以及RAM模塊為圖像處理運(yùn)算的定制加速器;ARM硬核處理器加載嵌入式操作系統(tǒng)及用戶程序?qū)ο到y(tǒng)的硬件資源進(jìn)行管理。
2.根據(jù)權(quán)利要求1所述的基于SoC_FPGA的柔性智能機(jī)器視覺檢測(cè)系統(tǒng),其特征在于,利用IP復(fù)用技術(shù)重定義接口實(shí)現(xiàn)對(duì)不同通信接口的兼容。
3.根據(jù)權(quán)利要求1所述的基于SoC_FPGA的柔性智能機(jī)器視覺檢測(cè)系統(tǒng),其特征在于,F(xiàn)PGA架構(gòu)中的可編程邏輯、DSP模塊以及RAM模塊作為BUS單元掛載在AXI BUS上,ARM CPU可以通過LW HPS2FPGA及AXI BUS訪問,從而實(shí)現(xiàn)復(fù)雜算法的硬件加速。
4.根據(jù)權(quán)利要求3所述的基于SoC_FPGA的柔性智能機(jī)器視覺檢測(cè)系統(tǒng),其特征在于,將圖像采集與處理和用戶程序劃分在相互獨(dú)立的數(shù)據(jù)層面,用戶程序通過用戶接口程序調(diào)用硬件加速。
5.根據(jù)權(quán)利要求1所述的基于SoC_FPGA的柔性智能機(jī)器視覺檢測(cè)系統(tǒng),其特征在于,所述存儲(chǔ)系統(tǒng)包括存儲(chǔ)圖像數(shù)據(jù)的DDR3及存儲(chǔ)程序的Flash,I/O模塊包括usb2,uart,can,i2c,,PCIe及用戶自定義接口 ;傳輸模塊包括Ethernet,Wireless HART及WiFi模塊。
【專利摘要】本發(fā)明公開了一種基于SoC_FPGA的柔性智能機(jī)器視覺檢測(cè)系統(tǒng),以SoC_FPGA為中央處理單元,在SoC_FPGA上集成有電源模塊,時(shí)鐘模塊,圖像傳感器,存儲(chǔ)系統(tǒng),功率監(jiān)視器,I/O及傳輸模塊;所述SoC_FPGA包括HPS和FPGA兩部分,同時(shí)集成了ARM硬核處理器、DSP和FPGA,F(xiàn)PGA架構(gòu)中的可編程邏輯和DRAM控制器構(gòu)成圖像采集模塊,用于圖像的采集與存儲(chǔ);FPGA架構(gòu)中的可編程邏輯、DSP模塊以及RAM模塊為圖像處理運(yùn)算的定制加速器;ARM硬核處理器加載嵌入式操作系統(tǒng)及用戶程序?qū)ο到y(tǒng)的硬件資源進(jìn)行管理。實(shí)現(xiàn)了機(jī)器視覺系統(tǒng)的高集成度,成本低廉。
【IPC分類】G06T7-00, G06K9-00
【公開號(hào)】CN104835162
【申請(qǐng)?zhí)枴緾N201510236228
【發(fā)明人】李鵬飛, 祝敏, 趙俊濤
【申請(qǐng)人】李鵬飛
【公開日】2015年8月12日
【申請(qǐng)日】2015年5月12日