基于S3C6410目標搜索飛行器的設計與研究
摘要:應用嵌入式技術(shù)、無(wú)線(xiàn)傳輸技術(shù)和圖像處理技術(shù),設計目標搜索飛行器,為防災救災提供技術(shù)服務(wù)。系統包括手持終端和飛行器,采用 ARM11架構的S3C6410微處理器,移植Linux操作系統。飛行器攜帶攝像頭采集圖像并壓縮,通過(guò)wifi傳輸到手持終端,在本地的TFT液晶屏顯示;同時(shí)手持終端向飛行器發(fā)送控制命令,飛行器根據命令控制自身的運動(dòng)和攝像頭的轉動(dòng)。實(shí)驗結果表明,采集的圖像清晰、命令執行及時(shí)可靠,能夠較好地完成目標探測、搜索等任務(wù)。
本文引用地址:http://dyxdggzs.com/article/201610/306134.htm關(guān)鍵詞:飛行器;目標搜索;無(wú)線(xiàn)通信;圖像采集
近年來(lái)大規模的災難、事故頻發(fā),對人類(lèi)的生命和財產(chǎn)造成極大危害,及時(shí)、有效地投入防災救災可大大降低災害損失,研究高效的救援搜索設備具有特別重要的意義。隨著(zhù)科技的進(jìn)步,新型技術(shù)成為救援的制勝法寶,尤其是飛行機器人技術(shù)。因具有靈活、重量輕、以及可深入危險區域工作等優(yōu)勢,搜索飛行器在災后救援工作中起著(zhù)越來(lái)越重要的作用,此類(lèi)飛行器需要具備穩定的運動(dòng)控制、采集多種環(huán)境信息、以及無(wú)線(xiàn)控制等功能??梢?jiàn),搜索飛行器需考慮完成的功能多、涉及技術(shù)廣、環(huán)境狀態(tài)不確定等因素,因此存在設計難、可擴展性差、缺少豐富的通訊能力、研究成本高等問(wèn)題。
針對以上問(wèn)題,文中根據飛行機器人系統的可擴展、可裁剪、以及互操作等特性,采用模塊化方法設計并實(shí)現一個(gè)飛行機器人原型系統.通過(guò)無(wú)線(xiàn)通信實(shí)現飛行器控制及數據傳輸,以完成目標探測、搜索以及安全監控等功能。
1 目標搜索飛行器系統設計
1.1 硬件體系結構
目標搜索飛行器須具備一定的飛行速度、低能耗、飛行穩定性、適應多樣的環(huán)境探測,以及有懸停、垂直升降升能力。其中,飛行移動(dòng)載體的結構簡(jiǎn)單,可省去復雜的機械設計,且運動(dòng)速度快,可減少目標搜索時(shí)間。為此,采用四輪旋翼飛行方式,增強飛行器的移動(dòng)能力。
目標搜索飛行器包括手持控制終端和飛行機器人兩部分,兩者之間通過(guò)wifi無(wú)線(xiàn)通信方式傳輸圖像和控制信息;飛行器利用攜帶的攝像頭采集圖像并進(jìn)行壓縮,通過(guò)wifi傳輸給手持終端,手持終端對接收到的圖像進(jìn)行解壓后在本地的TFT液晶屏顯示。用戶(hù)可根據顯示的圖像信息,利用可視化觸控界面向飛行器發(fā)送飛行控制命令,飛行器接收到控制
命令后進(jìn)行解析,然后據此命令調節電機驅動(dòng)電路,控制直流電機的轉動(dòng)、啟停,實(shí)現飛行器的前進(jìn)、轉向、升降、懸停等運動(dòng),同時(shí)飛行器的主處理器可控制攝像頭180°的轉動(dòng),以調整拍攝角度。語(yǔ)音模塊可以在飛行器搜索到目標信息后進(jìn)行報警提示。此外,飛行器上還帶有超聲測距、電子羅盤(pán)等傳感器,在飛行的過(guò)程中通過(guò)這些傳感器提供的信息自我調整飛行運動(dòng)。手持終端和飛行器主控制板采用ARM11架構的S3C6410微處理器作為控制核心,軟件上運行Linux 操作系統,主要完成無(wú)線(xiàn)數據收發(fā)、圖像數據處理、電機控制信號輸出等功能。飛行器硬件體系結構如圖1所示。

1.2 目標搜索功能模型
在目標探測、搜索過(guò)程中,涉及的控制操作較多,各功能模塊間的調用關(guān)系較復雜。為此,采用的UML進(jìn)行模型分析,完成應用程序功能模型設計,建立系統操作用例圖(Use—Case)。系統被抽象為操作員、飛行器和手持終端3部分,操作員通過(guò)操縱手持控制終端與飛行器進(jìn)行對話(huà)。軟件的應用程序功能模型如圖2所示。

飛行器系統主要完成以下功能:
1)命令接收:接收控制終端的指令。指令分為基本指令和電機控制命令。前者控制電機驅動(dòng)板輸出;后者控制機器人基本行為,例如開(kāi)始采集、停止采集等。
2)數據發(fā)送:將采集到的數據通過(guò)無(wú)線(xiàn)網(wǎng)卡發(fā)送給手持式控制終端。
3)信息采集:傳感器探測包括圖像、障礙物距離以及運行方向等信息。
4)語(yǔ)音播報:飛行器搜索到目標時(shí)進(jìn)行語(yǔ)音報警動(dòng)作。
5)運動(dòng)控制:實(shí)現前進(jìn),轉向,升降,啟停等基本功能。
2 系統實(shí)現
2.1 電源
為了使移動(dòng)機器人運動(dòng)方便,必須自帶電源。其中,飛行器控制電路采用5 V直流供電,電機驅動(dòng)部分則需要12V直流供電,為了減少控制電路受到電機運動(dòng)的干擾,采用獨立供電方式。主控制板功率消耗較小,通過(guò)LDO芯片AMS1117、LM4040B、XC6206P122等來(lái)實(shí)現3.3 V、3.0 V及1.2 V電壓轉換;而電機板功率消耗較大,為了提高使用效率,通過(guò)開(kāi)關(guān)電源LM2576實(shí)現5 V電壓輸出。電源轉換電路如圖3所示。

2.2 電機驅動(dòng)
電機驅動(dòng)電路由H橋和光電隔離電路兩部分組成,采用4片LMD18200H橋芯片實(shí)現飛行器的四路直流電機控制。為提高抗干擾性,主控芯片與電機驅動(dòng)放大電路之間通過(guò)光電耦合器實(shí)現隔離。S3C6410從GPIO輸出控制信號,經(jīng)低速光耦TLP521光電隔離后輸出給LMD18200,控制電機的啟停;由于S3C6410的PWM輸出信號頻率較高,采用高速光耦6N137實(shí)現信號隔離,控制電機的運轉速度。電機驅動(dòng)電路如圖4所示。

2.3 無(wú)線(xiàn)傳輸
無(wú)線(xiàn)通信模塊采用的是基于RT2571/RT73芯片的54MUSB無(wú)線(xiàn)網(wǎng)卡,符合IEEE 802.11b和IEEE 802.11g標準。手持控制終端和飛行器之間采用對等式(Ad—Hoc)的方式進(jìn)行
通信,配置雙方的無(wú)線(xiàn)網(wǎng)卡的工作模式為對等式模式,在Linux操作系統下采用socket套接字建立TCP連接,實(shí)現圖像和命令信息的交互。
主處理器通過(guò)USB端口控制無(wú)線(xiàn)模塊的數據收發(fā)。無(wú)線(xiàn)傳輸模塊主要完成兩個(gè)任務(wù):1)手持式終端向飛行器發(fā)送控制命令;2)飛行器回傳圖像數據至手持終端。飛行器系統的軟件設計采用了多任務(wù)并發(fā)方式執行,飛行器系統無(wú)線(xiàn)數據傳輸、處理的過(guò)程如下:
1)發(fā)送流程:手持控制終端的QT界面獲取操作人員的按鍵信息,并通過(guò)共享內存將按鍵值傳給控制命令發(fā)送進(jìn)程,該進(jìn)程通過(guò)socket套接字,將命令信息發(fā)送給現場(chǎng)機器人的控制命令接收子進(jìn)程,該進(jìn)程對命令進(jìn)行解析,通過(guò)調整四路PWM輸出占空比,從而控制飛行器的運行。
2)接收流程:現場(chǎng)機器人的圖像采集子進(jìn)程將采集到的圖像進(jìn)行壓縮后通過(guò)socket套接字發(fā)送至手持控制終端,由圖像接收子進(jìn)程接收并對圖像信息進(jìn)行解壓等處理,然后在本地液晶屏上進(jìn)行顯示。無(wú)線(xiàn)傳輸的軟件工作框架如圖5所示。

手持控制終端作為客戶(hù)端向現場(chǎng)飛行器服務(wù)器發(fā)送控制命令,所以要延時(shí)等待現場(chǎng)飛行器服務(wù)器的建立,當傳輸控制命令的C/S模式建立完成后,飛行器要作為客戶(hù)端向手持控制終端發(fā)送圖像信息,就必須延時(shí)等待手持式控制終端服務(wù)器的建立,等待傳輸圖像信息的C/S模式建立,手持控制終端的套接字流程如圖6(a) 所示,現場(chǎng)機器人的套接字流程如圖6(b)所示。

2.4 圖像采集
遠距離搜索和探測目標時(shí),通過(guò)監測圖像判別是否搜索到目標,采用CMOS圖像傳感器OV6620實(shí)現圖像采集。主處理器通過(guò)I2C接口初始化OV6620設置,外部中斷接口連接芯片的場(chǎng)中斷信號及行中斷信號,8位數據端采集圖像數據。圖像數據的采集主要由場(chǎng)中斷VSYNC信號標記一幅圖像開(kāi)始,行中斷信號HREF標記一幅圖像的每行的開(kāi)始,信號PCLK則代表了每個(gè)像素點(diǎn)的時(shí)序。配置OV6620的為RGB565圖像輸出格式,根據液晶顯示640*480采集圖像數據,需要60萬(wàn)Byte RAM空間。
基于A(yíng)RM平臺的圖像采集模塊的軟件部分采用的是基于S3C6410硬件平臺的V4L2視頻驅動(dòng)開(kāi)發(fā),V4L2子系統包括用戶(hù)態(tài),內核和硬件3個(gè)部分。用戶(hù)空間負責為應用程序提供訪(fǎng)問(wèn)設備的接口,Video_core負責屏蔽底層硬件的差異,為應用程序提供統一的設備接口,Video驅動(dòng)負責具體設備的初始化,配置不同型號的攝像頭的采集過(guò)程。

V4L2為L(cháng)inux下的視頻設備程序提供了一套接口規范,采用流水線(xiàn)的工作方式,遵循打開(kāi)視頻設備,設置格式,申請內存,處理數據,關(guān)閉設備的 Linux字符驅動(dòng)設計方式。L inux下OV6620攝像頭驅動(dòng)屬于字符類(lèi)設備,它能夠像字節流一樣被訪(fǎng)問(wèn),且只能夠順序讀寫(xiě),OV6620攝像頭的驅動(dòng)流程如圖7所示,系統首先加載驅動(dòng)模塊,匹配OV6620硬件設備,向系統中注冊字符設備,通過(guò)I2C初始化攝像頭寄存器,并分配相應的內存空間,開(kāi)始采集發(fā)送圖像,完成后釋放相應的資源。
3 結束語(yǔ)
實(shí)驗表明,以模塊化目標搜索飛行器實(shí)驗平臺在實(shí)驗環(huán)境中可以較好地完成目標搜索任務(wù)。整個(gè)系統采用半自主控制方式,飛行器自主導航,采集環(huán)境、目標圖像信息,傳輸至控制終端??刂平K端依此進(jìn)行決策,決定飛行器的運動(dòng)控制,最終完成探測、搜索目標等功能,保證了搜索區域的覆蓋,實(shí)現了有效、快速的探測、搜索功能。
評論