段英杰 霍新宇 王惠潔 盧洪武



摘 要:在礦井、火災、震災反恐等特殊環境下,人類一般無法第一時間到達現場,研制一款機器人代替人類探測并將圖像、視頻信息快速回傳意義重大。WiFi是一種無線局域網聯網技術,憑借組網方便、易于擴展等特點,有著廣泛的應用前景。文中將二者結合,設計了以WiFi為數據傳輸載體,實現實時視頻傳輸及控制的機器人系統。
關鍵詞:WiFi;機器人;傳感器;無線數據傳輸
中圖分類號:TP242 文獻標識碼:A 文章編號:2095-1302(2016)05-00-02
0 引 言
在安防現場、礦井勘測、應急救援等特殊環境中,需要將現場檢測到的圖像信息及時傳遞至監控指揮中心,由于大部分視頻監控設備移動性差以及部分監控現場存在風險性等原因,致使很多情況下實時移動監控難以實現[1]。本文將Android開發與OpenWrt系統開發相結合,設計基于WiFi的智能視頻監控遙控機器人,可通過手機實時收看現場圖像并發送控制指令,遙控機器人的運動,第一時間掌握所需要的全部視頻圖像信息,并可現場錄像隨時拍照[2]。
1 系統總體設計
WiFi視頻回傳機器人由履帶車體、無線路由器、攝像頭及云臺、核心控制板、機械臂及上下位機控制軟件等構成[3]。總體設計思想是把無線路由器通過刷入開源的Openwrt系統,使之成為一個運行于Linux系統的小電腦,利用WiFi的高速無線通信能力將符合H.264標準的圖像壓縮信號回傳到手機或電腦上位機上顯示,并通過上位機發送控制指令,遙控機器人的運動。系統框圖如圖1所示。
圖1 系統框圖
2 系統的硬件設計
系統硬件由車體部分、路由器、攝像頭及云臺、核心控制板、機械臂等構成,其中核心控制板主控芯片采用MSP430F149,MSP430系列單片機是16位的RISC架構單片機,125 ns指令周期,相較于傳統的51單片機,數據吞吐量更大[4]。MSP430系列單片機擁有豐富的外設和接口,USART串行接口能夠完成與WiFi模塊的通信,16位定時器具有捕獲/比較功能,方便產生多路舵機控制信號和帶死區控制的PWM電機調速信號[5]。電路部分主要包括電源模塊、電機驅動、舵機驅動、下載串口、單片機電路、紅外壁障、車燈控制以及數據通信接口等,將電機驅動、穩壓、紅外等集成到一起,減少PCB面積,降低成本。
2.1 車體部分
WiFi機器人以坦克模型作為底盤,采用履帶式,此方式抓地能力強,可以輕松越過矮小障礙,并且具有速度快、噪音低等優點。我們在機器人上安裝了4自由度機械臂,可以前后左右上下六個方向完成各種復雜動作,排除前進障礙。車身裝配2個12 V/120轉直流電機,電池組電源12 V,可多個并聯使用,為機器人提供持久動力。
2.2 攝像頭及云臺
自由度攝像頭云臺水平旋轉角度為±85度,俯仰旋轉角度為-10度~+75度。攝像頭采用30萬像素的高速工業攝像頭模塊,適合動態拍攝,其接口采用USB通信協議,回傳的視頻圖像清晰,滿足設計需要。云臺由2個MG995數字舵機及其他輔助材料構成,下位機接收到控制命令,控制這兩個舵機完成攝像頭上下左右四個方向的轉動,擴大視野范圍。
2.3 WiFi(路由)模塊
WiFi模塊采用搭載高通AR9331芯片的普通無線路由器刷入開源的Openwrt系統,成為一個運行Linux系統的小電腦,主要實現視頻采集、數據傳輸、轉發等功能。該模塊符合國際標準的802.11 b/g/n協議,采用DSSS、OFDM、BPSK、QPSK、CCK和QAM基帶調制技術,能自適應路由器等設備的無線熱點,最大連接速率可達150 Mb/s。天線將傳輸線上傳播的導行波變換為在自由空間中傳輸的電磁波(發射)以及相反變換(接收)[6]。
2.4 電機、舵機驅動模塊
電機驅動模塊采用BTN7960B,它是一個完全集成的高電流半橋,因此采用兩片構成全橋實現電機的正反轉。BTN7960B提供了一個保護高電流PWM電機驅動器的成本優化解決方案,并且占用非常小的電路板空間。電源開關采用垂直MOS技術,確保最佳狀態阻力。圖2所示為BTN7960B與單片機組成的H電機驅動單元。
圖2 電機驅動電路
機械臂部位安裝MG995舵機,其內部使用空心杯電機,金屬齒輪,雙滾珠軸承,最大扭矩為13 kg,能夠滿足機械臂的要求。舵機驅動電路使用LM2596ADJ開關型穩壓芯片,能夠穩定輸出3 A的負載電流,其輸出電壓可調到6 V左右,最大不能超過6.5 V。該器件集成頻率補償和固定頻率發生器,允許我們使用更小尺寸的濾波器件,極大地簡化了電源電路設計[7]。同時,3 A的大電流能夠滿足多個舵機同時工作的電流需求,減少舵機間的電源干擾。在電路設計中,我們還使用了多個濾波電容,在輸入端增加了濾波電感,進一步提高電源的穩定性。云臺舵機選用輝盛SG90舵機,響應快,其重量僅為9 g,適合云臺使用。
3 系統的軟件設計
軟件部分是機器人智能化的體現,它控制機器人所有的運行狀態,主要包括主程序設計、運動控制軟件設計、無線WiFi路由器的刷機改造、無線WiFi路由器與單片機通信協議及軟件設計、基于安卓的智能手機客戶端控制軟件設計等[8]。軟件系統體系結構如圖3所示。
3.1 通信協議
通信協議是連接上位機與下位機的紐帶,由于單字符通信方式干擾較大,故采用數據包格式傳送指令,包頭用OXFF,包尾用OXFF,無校驗位。部分協議規定如表1所列。
3.2 上位機
上位機是發送指令的部分,它向路由器發送視頻請求,路由端的視頻處理程序會把獲取的USB攝像頭視頻傳回上位機進行解碼并顯示。
備注:電機動作指令由于各人的接線方式不同,可能指令與動作不對應,只需要在上位機指令設置中調整指令位置即可
上位機的編寫通過TCP/UDP等通信方式,用Socket連接把數據發送到路由端[8],本設計采用Client模式,路由端是服務器模式,無需轉發操作,直接連接WiFi機器人即可操控。客戶端軟件是基于安卓系統的App,通過修改網絡開源碼的通信協議部分代碼重新編譯開發而成,再整合安卓App和底層驅動程序構建機器人軟件控制系統,實現對整個機器人的實時控制[9]。上位機界面如圖4所示。
圖4 操作終端
3.3 下位機
跑在單片機系統的程序稱為下位機,在Keil5用C語言編寫下位機程序,包括初始化、外部中斷、定時器中斷、串口中斷、PWM中斷、AD中斷等[10],其作用是接收來自上位機的數據,并根據通信協議解碼分析,判斷上位機發出的是何種動作,再為單片機芯片指定引腳賦高低電平,從而實現控制舵機使攝像頭云臺旋轉及機械手臂轉動、電機轉向、紅外壁障、車燈控制、拍照等功能。
4 結 語
本文對基于安卓App遙控,以WiFi為視頻傳輸媒介的機器人的結構設計及工作原理進行了闡述,經過實際調試運行,WiFi Robot的實際控制距離能達到10 m。WiFi機器人具有實時視頻傳輸、人工自主控制、紅外壁障等功能,而且采用WiFi自發射直接和手機通信,無需依賴公共通信網,特別適合無網絡覆蓋的災難救援現場及偏遠地區的反恐偵察使用。
參考文獻
[1]王宇陽,楊奕,韓志.基于Android設備的WiFi智能監控機器人設計[J].計算機與數字工程,2014,42(12):2410-2414.
[2]劉啟彬.煤礦救援機器人軟件系統研究[D].西安:西安科技大學,2009.
[3]張學武,何玉鈞.基于WiFi的遠程視頻傳輸智能機器人設計[J].電子科技,2013,26(2):4-7.
[4]沈建華,楊艷琴.MSP430系列16位超低功耗單片機原理與實踐[M].北京:北京航空航天大學出版社,2008.
[5]李自珍,郭寶安.MSP430系統應用結構設計與選型[J].單片機與嵌人式系統應用,2007,7(7):11-13.
[6]李楊.WiFi技術原理及應用研究[J].科技信息,2010(6):241.
[7]邱關源,羅先覺.電路(第五版)[M].北京:高等教育出版社,2006.
[8]曾彥淞,王忠民,王晨.基于WiFi的移動機器人視頻監控系統[J].西安郵電學院學報,2012,17(4):87-91.
[9]擺云.基于Android開放平臺和無線通信網絡的實時音視頻傳輸系統設計與實現[D].蘭州:蘭州大學,2012.
[10]郭天祥.新概念51單片機C語言教程[M].北京:電子工業出版社,2009.