西北民族大學電氣工程學院 薛樂樂
STM32是為了滿足高性能、低成本、低功耗等的要求而專門設計的一種ARM Cortex-M3內核。不同于其他系列的單片機,STM32系列的存儲器容量更大,這樣能夠解決后期因需要外部連接硬件模塊過多、各模塊間通信復雜而導致的代碼較長致使編譯出錯的問題。除此之外,此系列單片機的優(yōu)化功能較好,性能和引腳數(shù)量都能夠滿足用戶需求。在軟件編程方面,STM32系列采用庫函數(shù)調用的方式即可實現(xiàn)相應的功能,使用簡單易于上手。
對于智能排爆小車的設計,可以分為四個部分:移動裝置、機械手、其他輔助裝置、控制機構。
移動裝置,或者我們稱之為行走方式,就是使小車能夠移動的裝置。常見的移動或行走機構有傳統(tǒng)輪胎式、履帶傳動式和混合式。傳統(tǒng)的輪胎式在實際應用中又因地形或天氣不同有不同的種類和應用,如越野胎、雨胎等,且使用的輪胎的數(shù)量也因應用環(huán)境不同而存在差異。傳統(tǒng)的輪胎式優(yōu)點是移動速度快、靈敏。
對于履帶傳動式,它不如傳統(tǒng)輪胎那樣移動迅速,但是它的應用也非常廣泛。通常人們需要排除障礙物或者危險物的作業(yè)地點的環(huán)境是較為惡劣的,在極端的條件下傳統(tǒng)輪胎就失去了用武之地,此時,履帶傳動可以很好地解決這一問題。對于野外的沙地、山路、階梯等較復雜的地形,履帶都能夠順利通過。
混合式即輪胎外面加裝履帶,不需要時可將履帶拆下。在這里我們采用的是履帶式的傳動機構。
機械手是整個小車的設計中最為重要的部分,它擔任著排除障礙物或危險物的角色,正是機械手的作業(yè)代替了人類在危險環(huán)境中的作業(yè)。
機械手有不同的自由度之分,為了使機械手能夠更加靈活地運動,在這里我們采用多自由度的機械手。所謂自由度,即機械手各個運動部件在三維空間坐標軸上所具有的獨立運動的數(shù)量。如一個自由度,指由一個直線運動來構成直線或者由一個旋轉運動來構成曲線。兩個自由度,指由兩個直線運動構成平面,或者由一個直線運動加上另外一個在直線運動所在的平面內的旋轉運動構成平面,或者由一個直線運動加上另外一個不在這條直線運動所在的平面內的旋轉運動構成圓柱曲面。
為了在空間上到達任意一個點,通常需要3個運動軸,但是為了將一個物件送達指定的目標位置時仍需要3個運動軸。因此,為了同時滿足以上兩種要求,一個機械手至少都需要6個運動軸,其中3個是位置自由度,另外3個是姿勢自由度。
假如用機械手來模擬仿真人類的手的話,那么舵機就相當于支撐著這只手的手臂、胳膊。舵機在各個領域的控制工程中都有很多應用,其最早是出現(xiàn)于航模運動中,通過調節(jié)發(fā)動機以及各個控制舵面來實現(xiàn)調整航模的運動。除此之外,在船模控制尾舵和車模中轉向的控制等都是較為常見的應用。舵機的工作原理為,當控制電路板接收到來自信號線的控制信號時,電機轉動,并且此時電機的轉動帶動一系列的齒輪組,當減速后傳送至輸出舵盤。
為了使小車的功能更加全面、性能更加完善,并且能夠使之更好地在高危險度的環(huán)境中作業(yè),在小車頂部我們加裝一個攝像頭,其作用是用來采集周圍環(huán)境中的實時圖像信息以幫助人類確定障礙物或危險物的準確位置。
對于具體的攝像頭模塊,采用基于STM32單片機的OV7670攝像頭,此攝像頭屬于CMOS器件并且自身帶有標準的SCCB接口。除此之外,此款攝像頭能夠兼容IIC接口。另外,其內置的器件主要有感光序列、時序發(fā)生器、AD轉換器、數(shù)字信號處理器、模擬信號處理裝置等。
攝像頭的工作流程為:首先光照射到感光陣列,由感光陣列產生電荷,這些電荷會被送到具體的模擬信號的處理裝置或者處理單元中,之后再經由AD轉換器將此信號轉換為數(shù)字信號。因為計算機無法直接對采集到的模擬信號進行相應的處理,所以需要一個轉換器用來將模擬信號轉換為相對應的計算機能夠識別并進行處理的數(shù)字信號。然后將數(shù)字信號輸入進DSP中進行處理,即實現(xiàn)插值到RGB信號,最后再將信號輸出到屏幕上。
目前市面上的OV7670模塊可分為兩種:一種是帶FIF0芯片的,另一種是不帶FIF0芯片的,其原理圖分別如下。
圖2.3.1 不帶FIFO的攝像頭
圖2.3.2 帶FIF0的攝像頭
兩種攝像頭的適用范圍為:
不帶FIF0的攝像頭的用法相對簡單且較直接,但是在實際應用的過程中實現(xiàn)起來可能較困難。主要原因是,大多數(shù)的CMOS芯片的時鐘速度都可以達到24M,這對于一般的單片機的I/O口速度來說基本上無法達到,其中對于STM32的I/0口速度來說,寄存器要比庫函數(shù)的速度快。據檢測,使用庫函數(shù)時I/O口的速度為2.5MHz,然而當使用寄存器時I/0口的速度大約為8MHz,很明顯速度相差較大。
對于帶FIF0的攝像頭來說,由于多了這個器件作為數(shù)據緩沖的部件,會使得數(shù)據采集過程變得更加簡便,對用戶來說只需要關心數(shù)據的讀取即可,而不用對采集過程做更深的理解。
控制結構本設計主要采用無線通信的方式,即Wi-Fi模塊或者藍牙模塊,在這里我們采用Wi-Fi模塊。
2.4.1 無線局域網與Wi-Fi
無線局域網(Wireless LAN),英文縮寫為WLAN,指的是在不適用任何的導線或者傳輸電纜連接的局域網,是使用無線電波作為數(shù)據傳送的媒介,其傳送距離一般只有幾十米。無線局域網的主干網路通常使用的是有線電纜,無線局域網用于通過一個或多個無線接取器接入無線局域網?,F(xiàn)在的無線局域網普遍采用的是IEEE定義的802.11系列標準。
Wi-Fi是Wi-Fi聯(lián)盟制造商的商標作為產品的品牌認證,是一個創(chuàng)建于IEEE 802.11標準的無線局域網技術。
2.4.2 Wi-Fi控制方式的實現(xiàn)
本設計采用Wi-Fi來控制小車,即以Wi-Fi作為傳輸數(shù)據信道,可以通過手機、PAD和電腦等具備Wi-Fi的終端進行控制,并且可以將機器人的攝像頭采集到的視頻顯示在控制端屏幕上。
TCP通信的概念:中文釋義傳輸控制協(xié)議,英文原義為Transmission Control Protocol,該協(xié)議主要是用于在主機間建立一個虛擬連接,以實現(xiàn)高可靠性的數(shù)據包交換。該協(xié)議傳輸模式中在將數(shù)據包成功發(fā)送給目標計算機后,TCP會要求發(fā)送一個確認:如果再某個時限內沒有收到確認,那么TCP將重新發(fā)送數(shù)據包。另外,在傳輸?shù)倪^程中,如果接收到無序、丟失以及被破壞的數(shù)據包,TCP還可以負責恢復。在本設計中使用TCP協(xié)議是因為此協(xié)議是一種可靠、安全的通信方式。假如在通信過程中出現(xiàn)某些斷續(xù)傳輸時,該次傳輸仍不會丟失數(shù)據包,這完全依賴著TCP的安全性。
單片機的概念:單片機系統(tǒng)也屬于一種最簡單的小電腦系統(tǒng),但是它的頻率很低,不適合進行大數(shù)據的運算,它的主要功能是通過控制其輸出引腳(I/O口)的電平高低,從而讓電機驅動芯片驅動電機正轉或者反轉,實現(xiàn)機器人的前進、后退。
單片機的引腳的輸出電流很小,我們可以使用它點亮LED燈,但是用它驅動較大的車體是不太現(xiàn)實的,所以這里采用一個驅動芯片來增大驅動的功率,進而驅動電機運轉,換句話說,單片機是用引腳電平的方式告知驅動模塊。若需要機器人進行轉彎時,需要控制左右兩邊的電機的不同轉速來實現(xiàn)不同方向的轉彎。簡而言之,只需要使一邊的電機轉速快,另一邊的轉速慢,就可以使小車向轉速慢的一邊轉,同理,可以實現(xiàn)不同方向的轉彎。
我們把跑在單片機系統(tǒng)里面的程序稱之為下位機,這個程序的作用就是接受來自上位機的指令,并進行解碼分析,了解用戶發(fā)出的是何種動作,然后讓單片機芯片的指定引腳進行高低電平的賦值。
Wi-Fi智能小車指令傳輸?shù)脑韴D如下:
圖 2.4.1 智能小車機器人原理框圖
Wi-Fi控制下視頻傳輸?shù)脑恚簲z像頭通過USB數(shù)據線和Wi-Fi模塊進行連接,Wi-Fi模塊又通過Wi-Fi信道與PC端或移動端的設備進行通信,這樣就能夠實現(xiàn)通過人為地操控PC端或移動端的相關軟件,來控制小車的移動或者機械手旋轉、夾持、拆除等運動。
隨著人們對危險環(huán)境中作業(yè)減少傷亡的需求,智能排爆小車的設計能夠較好地符合人們各個方面的要求,因此,本設計有著廣闊的應用前景,本設計的開發(fā)也具有重要的實際意義。
[1]李鋒.反恐排爆機器人遙操作及其智能輔助系統(tǒng)設計[J].上海交通大學,2012(07).
[2]鐘國梁.排爆機器人運動控制系統(tǒng)的研究與實現(xiàn)[J].華南理工大學,2009(S2).