摘要:為實現(xiàn)機器魚比賽中魚體的自主信號采集與處理、自動探測前方目標及實現(xiàn)水下自主避障等控制功能,文中設(shè)計了基于數(shù)字信號處理器TMS320DM355" title="TMS320DM355">TMS320DM355、水下攝像機KM-273CW以及SAA7111A" title="SAA7111A">SAA7111A增強型視頻輸入處理器等構(gòu)成的可實現(xiàn)魚體自主避障功能的水下機器" title="水下機器">水下機器魚控制系統(tǒng)。該系統(tǒng)還具有信息傳輸功能,可以將水下的環(huán)境數(shù)據(jù)傳輸?shù)桨渡?,以利于觀察人員研究水下環(huán)境。
關(guān)鍵詞:自主運動控制" title="自主運動控制">自主運動控制;水下視頻采集" title="水下視頻采集">水下視頻采集;水下機器;TMS320DM355;SAA7111A
0 引言
在傳統(tǒng)的機器魚比賽中,魚體的運動控制功能是依靠比賽場地上方的攝像頭采集數(shù)據(jù),然后將其發(fā)向主機,由主機完成數(shù)據(jù)的處理,并將結(jié)果發(fā)給魚體內(nèi)部的處理器,從而完成避障等運動控制功能。但這種方案存在諸多問題,首先,不能體現(xiàn)魚體運動和控制的自主性;其次,采集數(shù)據(jù)時占用了主機的資源,同時主機發(fā)給魚體的信號也較容易受外界信號的干擾;最后,對于水下機器魚的現(xiàn)實實用性較差。綜合以上,本文設(shè)計了一種改進方案,即在魚體內(nèi)部嵌入可應(yīng)用于水下的攝像頭KM-273CW,通過采集視頻信號,并經(jīng)過視頻輸入處理器SAA7111A的處理,將模擬視頻信號轉(zhuǎn)化為數(shù)字信號,并送入TMS320DM355中進行分析處理,之后根據(jù)處理的結(jié)果調(diào)用程序去實現(xiàn)魚體的自主避障及其他運動功能,從而實現(xiàn)魚體的自主運動控制。
1 TMS320DM355芯片介紹
TMS320DM355數(shù)字媒體處理器最大的特色就是有專用的視頻圖像子系統(tǒng)VPSS,用于處理視頻數(shù)據(jù),其視頻處理子系統(tǒng)VPSS包括視頻前端輸入接口VPFE和視頻末端輸出接口VPBE,視頻前端輸入接口用于接收外部傳感器或視頻譯碼器等輸入的圖像信息,視頻末端輸出接口輸出圖像到顯示屏顯示。其中視頻前端輸入(VPFE)接口是由CCD控制器,硬件圖像信號處理器-圖像通道IP-IPE模塊,自動曝光/白平衡/聚焦模塊H3A和寄存器組成。CCD控制器可與視頻解碼器、CMOS傳感器或電荷耦合裝置連接;IPIPE是實時硬件圖形處理器,用于實時圖像處理,它把從CMOS/CCD得到的原始圖形轉(zhuǎn)換為國際電信聯(lián)盟ITU數(shù)字視頻標準BT.60I/BT.656的8/16位數(shù)字YCbCr4:2:2。視頻解碼器以54.MHz的速率進行D/A轉(zhuǎn)換,提供NTSC/PAL等格式的視頻或音頻輸出。同時該器件還具有8/16位YCC到18位RGB666數(shù)字輸出;ITU數(shù)字視頻標準BT.
601/BT.656的8/16位數(shù)字YCbCr4:2:2。通過緩存邏輯與TMS320DM355的DDR2/mDDR片上控制器相連,便于訪問存儲器,向存儲器存儲由攝像頭采集并經(jīng)VPFE處理的圖像信息,并將存儲的圖像信息通過VPBE輸出到顯示設(shè)備,因此可以很好的實現(xiàn)視頻信號的接收、處理與輸出。
系統(tǒng)的結(jié)構(gòu)框圖如圖1所示,由于本系統(tǒng)設(shè)計的是可自主運動的水器魚,視頻信號轉(zhuǎn)換模塊采用的是視頻輸入處理器,即用視頻A/D轉(zhuǎn)換芯片來完成視頻信號到數(shù)字信號的轉(zhuǎn)換,方便后面的數(shù)字信號處理器進行分析、處理和控制。數(shù)字信號處理模塊的核心芯片是TMS320DM355。通過它可以將視頻信號轉(zhuǎn)換模塊送入的數(shù)字信息進行分析和處理。被控運動裝置模塊即是機器魚內(nèi)部的各個電機與舵機。通過接受數(shù)字信號處理模塊的各種控制信號完成機器魚的水下自主運動。信號傳輸、轉(zhuǎn)換及顯示模塊通過無線電傳輸系統(tǒng)將數(shù)字信號傳輸?shù)桨渡系慕邮苎b置,通過信號轉(zhuǎn)換將水底的信息在主機上顯示,使岸上的觀察者也能了解機器魚水下運動的情況。
2 系統(tǒng)硬件設(shè)計
系統(tǒng)硬件總體連接框圖如圖2所示。其中CCD視頻圖像采集部分采用的器件是深圳凱目銳電子有限公司生產(chǎn)的可應(yīng)用于水下的攝像頭KM-273CW,它的適應(yīng)環(huán)境包括:水下工程,科研,水下機器人等。在本系統(tǒng)的設(shè)計中,由于該攝像頭體積較小,呈長筒狀,因而完全可以讓該攝像頭嵌入機器魚的體內(nèi),充當魚的眼睛。
視頻信號A/D轉(zhuǎn)換部分采用的器件是Philips公司生產(chǎn)的SAA7111A增強型視頻輸入處理器。該芯片的優(yōu)點在于集A/D轉(zhuǎn)換與解碼功能于一身且支持多制式解碼,且內(nèi)部含有I2C接口,可簡潔的通過I2C總線對其工作方式進行設(shè)定。
在本系統(tǒng)中,主控芯片TMS320DM355通過I2C接口與SAA7111A的雙向數(shù)據(jù)線SDA和時鐘線SCL連接,對SAA7111A的工作方式進行設(shè)置,并向其發(fā)送地址碼和控制量,控制SAA7111A完成視頻的轉(zhuǎn)換,并將轉(zhuǎn)換后的信息通過雙向數(shù)據(jù)線SDA串行讀入,然后進行分析、處理,并產(chǎn)生各種控制信息。
TMS320DM355處理完采集的數(shù)字信號后產(chǎn)生適合的控制信號來控制舵機和電機,從而完成機器魚的自主運動。同時TMS320DM355又可以將處理后的數(shù)字信號通過無線電發(fā)送轉(zhuǎn)置發(fā)送到岸上的主機。
3 系統(tǒng)的軟件設(shè)計
對該系統(tǒng)的軟件設(shè)計流程如圖3所示。在本系統(tǒng)的軟件設(shè)計中,系統(tǒng)上電初始化DSP,通過軟件模擬I2C總線時序,向SAA7111A發(fā)送寫信號,設(shè)置SAA7111A的工作方式,具體流程為:DSP發(fā)出一個SAA7111A的地址(0xBA或0xBS),并表明寫操作,等待SAA7111A響應(yīng),DSP接收到SAA7111的響應(yīng)后,再發(fā)出要配置寄存器的地址,等待SAA7111A響應(yīng),并在接收到SAA7111A的響應(yīng)后,發(fā)送要配置的數(shù)據(jù),之后等待SAA7111A響應(yīng),接受SAA7111A的響應(yīng),發(fā)送停止位后,結(jié)束一次配置。設(shè)定其工作寄存器,使其輸入的視頻格式為PAL式,且設(shè)定輸出的數(shù)據(jù)流為8bit。之后DSP發(fā)送開始采集信號及對SAA7111A的控制信號。開始采集視頻信號并實現(xiàn)A/D轉(zhuǎn)換。當一幀數(shù)據(jù)寫入幀緩存后,DSP即產(chǎn)生中斷,先關(guān)閉SAA7111A的視頻輸出,然后對采集的信號進行分析處理。處理完后根據(jù)結(jié)果產(chǎn)生各種控制信號控制機器魚中的各種電機和舵機,具體做法就是通過控制輸入到各個電機和舵機的控制信號的占空比實現(xiàn)電機轉(zhuǎn)速和舵機角度的控制,從而實現(xiàn)機器魚游動方向和速度的控制,實現(xiàn)機器魚的自主運動。當DSP完成控制命令后就控制SAA7111A,并重新發(fā)送開始采集命令,繼續(xù)采集下一幀。
4 結(jié)束語
本系統(tǒng)設(shè)計將圖像采集與識別、運動控制集成到一個系統(tǒng)中,能很好實現(xiàn)圖像的快速采集、存儲及數(shù)據(jù)處理功能,也實現(xiàn)了魚體的自主運動控制,即使對于高分辨率要求的魚體游動的前方數(shù)據(jù)(如障礙物等)也起到很好的采集與處理的功能。若將該系統(tǒng)配上更為優(yōu)化的程序,可以實現(xiàn)魚在水體情況較為復(fù)雜的環(huán)境下的自主運動。若再配合無線收發(fā)裝置便可將魚體在水下采集的數(shù)據(jù)發(fā)給地面處理機,供研究人員分析,那么這樣的機器魚就可以應(yīng)用到實際工程中了。