1. 引言 機器人視覺(jué)伺服系統是機器人領(lǐng)域中的重要研究方向,起源于80年代初,隨著(zhù)計算機技術(shù)、圖像處理技術(shù)、控制理論的發(fā)展,取得了很大進(jìn)步,有一些系統已投入使用。視覺(jué)伺服跟通常所說(shuō)的機器視覺(jué)有所不同,視覺(jué)伺服是利用機器視覺(jué)的原理,進(jìn)行圖像的自動(dòng)獲取分析,從直接得到的圖像處理反饋信息中,快速進(jìn)行圖像處理,在盡量短的時(shí)間內給出反饋信號,構成機器人的位置閉環(huán)控制,實(shí)現對機器人的控制。正是由于系統以實(shí)現某種控制為目的,所以視覺(jué)伺服系統中的圖像處理過(guò)程必須快速準確。本文主要針對機器人視覺(jué)伺服系統要求快速準確的特點(diǎn),為滿(mǎn)足項目研究的需要,討論研究了基于DSP的圖像反饋機器人視覺(jué)伺服技術(shù)。 2 . 系統工作原理及硬件構成 基于圖像的視覺(jué)伺服直接計算圖像誤差,產(chǎn)生控制信號,并變換到機器人運動(dòng)空間,驅動(dòng)機械手,完成伺服任務(wù)。該方法對標定誤差和空間模型誤差不敏感。 對于機器人視覺(jué)伺服系統,實(shí)時(shí)性問(wèn)題一直是一個(gè)難以解決的重要問(wèn)題。圖像采集速度較低以及圖像處理需要較長(cháng)時(shí)間會(huì )給系統帶來(lái)明顯的時(shí)滯;此外視覺(jué)信息的引入也明顯增大了系統的計算量。而圖像處理速度是影響視覺(jué)伺服系統實(shí)時(shí)性的主要瓶頸之一。 實(shí)時(shí)圖像處理設計的難點(diǎn)是如何在有限的時(shí)間內完成對大量圖像數據的處理。從人的視覺(jué)理論分析,只有圖像處理系統的處理速度達每秒25幀以上時(shí)才能達到實(shí)時(shí)的效果,即要求實(shí)時(shí)圖像處理系統必須在40ms內完成對一幀l圖像的運算處理,才能保證圖像的實(shí)時(shí)性。為了達到該處理速度,我們采用了基于DSP的圖像視覺(jué)伺服方式,其結構如圖1所示。 圖1 基于DSP的圖像反饋機器人視覺(jué)伺服結構圖 2.1 WTC6201PA板簡(jiǎn)介 本文選用了聞亭公司的WTC6201PA板,其板上硬件組成如圖2所示。 圖2 WTC6201PA板硬件組成 WTC6201PA板屬于EVM板中的一種,它采用了TI公司的DSP器件TMS320C6201芯片。TMS320C6201芯片的最高時(shí)鐘頻率為200MHZ,每個(gè)時(shí)鐘周期最多可以執行8條指令,從而實(shí)現16000MIPS的定點(diǎn)運算能力,它具有如下主要特點(diǎn): · 采用了修正的哈佛總線(xiàn)結構,獨立的程序總線(xiàn)、數據總線(xiàn)和DMA總線(xiàn)使得取指、讀寫(xiě)數據和DMA操作可以并行。 · 采用流水線(xiàn)處理,使兩個(gè)或多個(gè)不同的操作可以重疊執行,提高了程序執行速度。 · 具有高性能的外部存儲器擴展接口EMIF,可以直接與同步突發(fā)靜態(tài)存儲器SBSRAM、同步動(dòng)態(tài)存儲器SDRAM連接,用于大容量、高速存儲;還包括直接異步存儲器接口,可與靜態(tài)存儲器SRAM、只讀存儲器EPROM連接,用于小容量的數據存儲和程序存儲;芯片內部集成的64K程序存儲器可配置成CASHE,以提高程序執行效率。 · 16位主機口能夠和其它CPU的存儲區以及外圍電路進(jìn)行通信。且多通道DMA控制器可在沒(méi)有CPU參與的情況下完成映射存儲空間中的數據搬移,從而減輕CPU的工作量。 同時(shí)板上配置了高速同步存儲器SBSRAM(128K×32Bit)和SDRAM(4M×32bit),兩路A/D轉換器,大容量的FPGA器件和外部I/O接口,板上還提供了一個(gè)McBSP接口,兼容5V TTL電平,方便用戶(hù)與外部系統通信。WT6201PA板滿(mǎn)足PCI Local Bus Revision 2.1 協(xié)議,主機可訪(fǎng)問(wèn)DSP的所有資源,用戶(hù)可通過(guò)主機加載程序。WTC6201PA板提供了Win98和NT下的驅動(dòng)軟件及DSP的應用軟件(APIs),利用這個(gè)硬件平臺和底層軟件庫,用戶(hù)可以很容易的進(jìn)行軟件開(kāi)發(fā)。 2.2 系統硬件實(shí)現 我們選用了WTC6201PA板上的TMS320C6201芯片、FPGA、SBSRAM、SDRAM、雙口RAM、PCI總線(xiàn)、JTAG接口等硬件資源作為視覺(jué)圖像處理單元,和PC主控機、圖像采集卡、CCD攝像機和機器人控制系統組成系統,原理框圖如圖3所示。 圖3 系統原理框圖 系統工作過(guò)程如下: CCD攝像機輸出標準制式的全電視信號,其中包含著(zhù)圖像信號、復合同步信號、行、場(chǎng)消隱信號、槽脈沖和前后均衡脈沖等七種信號。本系統采用了北京大恒公司的DH-PCI-H圖像采集卡來(lái)實(shí)現視頻信號的預處理。CCD攝像機將視頻數據輸入到圖像采集卡,圖像采集卡按照設定的窗口位置、大小和方式采集視頻數據,采集的數據存儲在計算機的內存中。圖像傳輸由圖像卡控制的,無(wú)需CPU參與,圖像傳輸速度可達40MB/S。 設置圖像采集卡的采集方式是25幀/s連續采集,則采集一幀的時(shí)間為40ms,每一幀圖像由奇偶兩場(chǎng)組成,場(chǎng)頻為50HZ,即一場(chǎng)掃描時(shí)間為20ms。圖像采集大小為512×512像素,量化為8bit,256灰度級,則一幀圖像的數據量為512×512×8bit=256KB。圖像數據存儲方式為隔行存放,即奇、偶場(chǎng)的圖像數據交叉存放,組成一幀完整圖像函數。 C6201由BOOTMODE[4:0]設置芯片的自舉方式,加載過(guò)程采用主機(HPI)引導方式。外部主機通過(guò)主機口初始化CPU的存儲空間,主機完成所有的初始化后,將主機口控制寄存器中的DSPINT位設置為1,結束引導過(guò)程。CPU退出復位狀態(tài),開(kāi)始執行地址0處的指令。 系統上電后,主機經(jīng)HPI口對系統初始化,主要完成對各寄存器的設置,包括EMIF、中斷、DMA等相關(guān)的寄存器初始化操作等。主機向HPI控制寄存器的DSPINT位寫(xiě)1觸發(fā)DSP運行,系統進(jìn)入等待狀態(tài)。CCD攝像機實(shí)時(shí)采集圖像,經(jīng)圖像采集卡處理后存儲到主機內存。PC機內存緩沖區一幀存滿(mǎn),向DSP發(fā)中斷信號,DSP應答后,通過(guò)PCI總線(xiàn)將圖像數據從主機內存經(jīng)HPI口傳輸到WTC6201PA板片外SDRAM。DSP控制波門(mén)范圍內圖像數據以DMA方式傳輸到內部數據存儲器。由于DSP為指令結構處理芯片,具有可編程性好、可以處理大量復雜指令(由程序RAM地址空間的大小決定)等優(yōu)點(diǎn),但相對FPGA而言其處理速度比較慢;而FPGA為可編程邏輯器件,具有很強的細粒度并行處理和多級流水線(xiàn)處理能力,但其內部有限的邏輯資源使之不適合實(shí)現復雜邏輯運算。因此我們采用FPGA作為協(xié)處理器來(lái)完成底層操作,再由DSP完成高層操作,兩種操作可以采用流水線(xiàn)的方式并行運行,共同完成高速圖像處理。從FPGA到DSP之間的圖像數據傳輸使用雙端口RAM。處理完一幀圖像后,DSP向主機發(fā)信息,主機應答后,將圖像處理結果經(jīng)PCI總線(xiàn)傳輸至PC機內存,PC機再將位置偏差數據信號送至伺服控制系統,完成伺服任務(wù)。 3 圖像雅可比矩陣 對于圖像反饋機器人視覺(jué)伺服系統控制機構,圖像雅可比矩陣是很關(guān)鍵的,它描述了機器人空間中的運動(dòng)與圖像特征空間中的運動(dòng)之間的關(guān)系: 式 (2),(4)是圖像雅可比矩陣的兩種表示形式,是基于圖像反饋的視覺(jué)跟蹤研究的基礎。需要指出的是,為了確保得到唯一的圖像特征矢量,圖像特征空間維數應該大于或等于位姿空間維數(n≧m)。 計算圖像雅可比矩陣的方法有在線(xiàn)估計法、經(jīng)驗方法和學(xué)習方法。在線(xiàn)估計法通過(guò)動(dòng)態(tài)估算得到圖像雅可比矩陣;經(jīng)驗法可以通過(guò)標定或先驗模型知識得到圖像雅可比矩陣;學(xué)習方法主要可以利用離線(xiàn)示教和神經(jīng)網(wǎng)絡(luò )方法得到雅可比矩陣。 結論 本文分析了機器人視覺(jué)伺服系統的基本原理,并設計了基于TMS320C6201和可編程邏輯器件FPGA協(xié)處理結構的視覺(jué)系統,實(shí)現了圖像采集和圖像目標的實(shí)時(shí)處理。在實(shí)驗室中我們利用所設計的視覺(jué)系統構建了實(shí)驗平臺,通過(guò)實(shí)驗驗證了所設計的視覺(jué)系統滿(mǎn)足機器人視覺(jué)伺服系統的實(shí)時(shí)要求。 本文作者創(chuàng )新點(diǎn):對于機器人視覺(jué)伺服系統,實(shí)時(shí)性問(wèn)題一直是一個(gè)難以解決的重要問(wèn)題。本文創(chuàng )新采用TMS320C6201芯片來(lái)實(shí)現機器人視覺(jué)伺服的圖像處理,并采用FPGA協(xié)處理,提高了圖像處理速度,實(shí)驗驗證了所設計系統滿(mǎn)足機器人視覺(jué)伺服的實(shí)時(shí)要求,具有廣泛的工業(yè)應用前景。 |