何友奇1,蔣新華1,2,聶明星1,2
(1. 中南大學(xué) 信息科學(xué)與工程學(xué)院,湖南 長沙 410083; 2. 福建工程學(xué)院 信息科學(xué)與工程學(xué)院,福建 福州 350108)
摘要:為解決傳統(tǒng)搬運機器人采用無線電或紅外遙控方式可操控范圍較小的問題,在基于高速WiFi無線傳輸技術(shù)的基礎(chǔ)上,設(shè)計了一個結(jié)合自動尋跡與遠(yuǎn)程視頻監(jiān)控的6自由度機器人模型系統(tǒng)。該模型機器人通過高速WiFi實現(xiàn)指令下達(dá)及視頻監(jiān)控,并采用紅外反射方式識別地面預(yù)設(shè)黑色引導(dǎo)線實現(xiàn)自動尋跡,同時開發(fā)了機械臂動作記憶功能來自動完成指定的工作?,F(xiàn)場實驗測試結(jié)果驗證了本機器人系統(tǒng)的可行性。
關(guān)鍵詞:自動尋跡;遠(yuǎn)程視頻監(jiān)控;機器人;動作記憶
0引言
在當(dāng)今工業(yè)與信息的時代,自動化是社會追求的目標(biāo),而智能機器人則是實現(xiàn)自動化的主要途徑之一,其在生活和工業(yè)等各領(lǐng)域的應(yīng)用也越來越廣泛[1]。這其中搬運機器人發(fā)揮著重要的作用,主要代替人完成物體的夾取、運輸、擺放工作,可工作于人類無法進入或?qū)θ梭w有害的工作環(huán)境。傳統(tǒng)搬運機器人多采用無線電或者紅外的方式來進行遙控,可操控范圍較小,并且需要特定的控制器[2]。因此,本文設(shè)計了一種結(jié)合Wi-Fi無線控制的6自由度搬運機器人,可根據(jù)給定線路自動尋跡,并通過高速Wi-Fi網(wǎng)絡(luò)實現(xiàn)實時視頻圖像采集與傳輸,操作人員實時監(jiān)控、修正機器人的行進軌跡,并操作機械臂進行拾取搬運動作。
1總體設(shè)計
本系統(tǒng)采用主從式結(jié)構(gòu),主要由上位機控制端和機器人端構(gòu)成。上位機與機器人通過WiFi建立高速無線連接,機器人端的視頻數(shù)據(jù)以及傳感器數(shù)據(jù)通過Wi-Fi無線鏈路實時傳輸回上位機,同時上位機的指令也通過WiFi網(wǎng)絡(luò)傳輸?shù)絎iFi通信模塊,再通過通信模塊的串口發(fā)給STM32F103ZET6組成的主控系統(tǒng),由STM32F103ZET6分析接收到的指令并驅(qū)動直流電機、模擬舵機來完成最終的動作實現(xiàn),控制機器人的行為,實現(xiàn)交互式操作。在監(jiān)控過程中,操作員可根據(jù)現(xiàn)場情況隨時開啟或關(guān)閉機器人的自動循跡功能和6自由度機械臂動作記憶功能。在固定的工作場所開啟自動尋跡功能時,PC端監(jiān)控自動循跡執(zhí)行情況或在出現(xiàn)緊急情況時對其進行遙控。開啟機械臂動作記憶功能時,操作員通過上位機設(shè)定一系列動作后,機械臂便可以循環(huán)執(zhí)行這一系列動作。
2系統(tǒng)硬件設(shè)計
2.1機器人系統(tǒng)的硬件結(jié)構(gòu)
機器人端硬件結(jié)構(gòu)如圖1所示??刂破鞑捎酶咝阅?2位處理器STM32F103ZET6,最高工作頻率為72 MHz。視頻采集使用USB無驅(qū)攝像頭,電機驅(qū)動采用1片L298N驅(qū)動機器人左右主動輪的直流電機,Wi-Fi通信模塊支持OpenWrt,無線傳輸速率為150 Mb/s,負(fù)責(zé)接收上位機的指令并把攝像頭采集的圖像數(shù)據(jù)傳輸回上位機端。障礙物檢測模塊采用紅外光電開關(guān)E18-D80NK,檢測距離在3~80 cm之間可調(diào)。
2.2電源模塊
主電源采用12 V鋰電池,10 000 mAh大容量,最大輸出電流為6 A,具有短路保護。該電源經(jīng)DCDC降壓后可以輸出12 V、5 V和3.3 V電壓,可以為兩個直流電機、STM32F103ZET6控制系統(tǒng)和WiFi通信模塊供電。機械臂6路舵機耗電量大且負(fù)載時電流較大,因此采用航模鋰電池獨立電源,規(guī)格為20 C/1 500 mAh/7.4 V,最大輸出電流為30 A,經(jīng)過兩個大功率降壓二極管后輸出電壓為6 V左右,為6路舵機供電。
2.3路徑識別
路面信息檢測模塊采用價格低、體積小、數(shù)據(jù)處理簡便的紅外反射式光電傳感器[3],型號為TCRT5000,其檢測距離為1~2 cm;傳感器采用高發(fā)射功率紅外光電二極管和高靈敏度光電晶體管。
本設(shè)計采用7個紅外光電傳感器,呈一字等間距排列,相互間隔1.5 cm,離地高度為1 cm。經(jīng)實際測試,用于識別黑色引導(dǎo)線效果良好,各傳感器之間不會出現(xiàn)死區(qū),同時便于安裝,說明光電傳感器的數(shù)量合理,空間位置設(shè)置可行。由于紅外光電傳感器發(fā)出的是錐形的紅外光,為了提高路徑信息檢測的前瞻性,傳感器與地面有一定的傾角[4],傾角約為40°。圖2、圖3所示分別為傳感器發(fā)光示意圖和安裝示意圖。
TCRT5000的應(yīng)用電路如圖4所示。U1為電壓比較器LM324N,對信號進行整形。當(dāng)傳感器檢測到路面黑線時,光線大部分被吸收,反射很弱,光敏晶體管無法導(dǎo)通,OUT端輸出高電平;當(dāng)檢測到白色地面時,光線大部分被反射,光敏晶體管導(dǎo)通,OUT端為低電平,這樣就完成了白色背景下黑色引導(dǎo)線的檢測[5]。
傳感器輸出的微弱電信號經(jīng)傳感器信號處理電路調(diào)理后送入單片機,單片機對采集到的信號進行分析處理并做出邏輯判斷和尋跡控制決策后輸出兩路PWM 電機調(diào)速信號,PWM 信號再經(jīng)驅(qū)動電路后分別控制兩個主動輪上直流電機的轉(zhuǎn)速,最終實現(xiàn)控制小車行進方向和速度的功能[6]。
3軟件設(shè)計
3.1系統(tǒng)的軟件結(jié)構(gòu)
本系統(tǒng)的軟件結(jié)構(gòu)如圖5所示,系統(tǒng)軟件由上位機軟件、WiFi通信模塊程序和下位機程序三部分組成。WiFi通信模塊運行OpenWrt,這在刷機階段完成。OpenWrt提供了相關(guān)設(shè)備驅(qū)動,驅(qū)動無線模塊作為WiFi網(wǎng)絡(luò)熱點,提供上位機通信連接;同時WiFi模塊把攝像頭采集的圖像數(shù)據(jù)傳輸回上位機端。PC上位機端和WiFi通信模塊端之間通過自定的通信協(xié)議完成通信,上位機軟件通過高速WiFi控制車體和機械臂的行為,WiFi通信模塊接收上位機發(fā)來的指令,并通過串口發(fā)送給下位機程序,下位機程序?qū)⒖刂浦噶钸M行解釋并執(zhí)行,控制相應(yīng)部件執(zhí)行動作。
3.2上位機軟件設(shè)計
3.2.1軟件程序框圖
上位機軟件主要實現(xiàn)程序調(diào)試、視頻監(jiān)控、機器人行進及機械臂動作控制等功能。程序框圖如圖6所示。運行上位機軟件后,先判斷是否進行調(diào)試,如果進行調(diào)試的話,可以選擇串口方式或者WiFi的方式。調(diào)試完成后,連接路由器開啟攝像頭,再判斷是否開啟自動尋跡和開啟動作記憶。如果開啟了自動尋跡,則進入自動尋跡模式,機器人在行進過程中先檢測行進路線上是否有障礙。檢測到障礙時機器人會自動停止并關(guān)閉自動尋跡并返回信息給上位機,上位機端會提示有障礙,操作人員遙控機器人通過障礙使其回到軌跡,再根據(jù)情況判斷是否開啟自動尋跡,自動尋跡檢測到終點時機器人會自動停止。如果開啟了機械臂動作記憶,則通過遙控設(shè)定機械臂要完成的一系列動作,之后機械臂就可以自動地循環(huán)執(zhí)行動作。如果既沒有開啟自動尋跡功能也沒有開啟動作記憶,則進入遙控模式。操作人員在上位機端通過視頻監(jiān)控界面實時控制機器人行進、轉(zhuǎn)向與機械臂的動作,直至終點。在遙控過程中,可隨時開啟自動尋跡與機械臂動作記憶。
3.2.2視頻顯示的實現(xiàn)
主要使用的組件有Timer、Image和IdHTTP。WiFi通信模塊可以把USB攝像頭采集的圖像數(shù)據(jù)傳回地址為http://192.168.8.1:8083/?action=snapshot的網(wǎng)頁上,只要在定時器的OnTime事件處理過程中調(diào)用IdHTTP組件的get方法不斷地快速打開該網(wǎng)頁獲取圖片,再把該圖片轉(zhuǎn)化為內(nèi)存流顯示在Image組件上就可以實現(xiàn)目的。只要定時器的周期足夠短,獲取網(wǎng)頁內(nèi)容的速度足夠快(即圖片幀率足夠快),就能實現(xiàn)流暢的視頻效果。該Timer的屬性Interval設(shè)置為20,即每20 ms獲取圖片內(nèi)容并顯示,這樣畫面幀率達(dá)到50 fps,顯示效果足夠流暢。具體的定時器OnTime事件處理程序框圖如圖7所示。
3.3通信協(xié)議
通信協(xié)議是上位機與WiFi通信模塊連接的紐帶。上位機的指令采用數(shù)據(jù)包的格式,相比于單字符格式指令,數(shù)據(jù)包格式指令抗干擾性更強,指令傳輸正確率更高[7]。指令數(shù)據(jù)包由包頭、數(shù)據(jù)位加包尾構(gòu)成,沒有校驗位;包頭固定為0XFF,包尾固定為0XFF。上位機軟件連接WiFi通信模塊后,通過Socket發(fā)送指令包到WiFi通信模塊。WiFi通信模塊接收到指令數(shù)據(jù)包后通過串口發(fā)送給STM32F103ZET6控制器,STM32F103ZET6根據(jù)指令控制各模塊執(zhí)行相應(yīng)的動作。將6自由度的機械臂從下到上的6個舵機編號為1~6。具體的通信協(xié)議如表1所示。
3.4下位機軟件
下位機程序主要介紹自動尋跡的實現(xiàn)。機器人實現(xiàn)自動尋跡的流程圖如圖8所示。
圖8自動尋跡流程圖當(dāng)機器人位于白底黑線的路面上時,機器人的行進和轉(zhuǎn)向都由左右兩個直流驅(qū)動電機的轉(zhuǎn)速決定。左右兩個直流驅(qū)動電機的控制信號由STM32F103ZET6的PA6和PA7輸出。根據(jù)傳感器檢測的不同的路徑信息,這兩個端口可以輸出占空比不同的PWM方波,占空比越高直流電機的轉(zhuǎn)速越快[8]。通過分別控制左右兩個電機的轉(zhuǎn)速可以比較精確地控制機器人的行進速度和轉(zhuǎn)向大小。
本系統(tǒng)設(shè)置路徑引導(dǎo)黑線寬1 cm。一字排列的7個光電傳感器在STM32F103ZET6的PB0~PB6端口上可以形成不同的狀態(tài)字,代表不同的位置信息。如果PB0~PB6的某個端口輸入是高電平“1”,則表示對應(yīng)的光電傳感器檢測到黑色引導(dǎo)線[9]。開啟10 Hz時基中斷后,每0.1 s中斷一次,在中斷中讀取PB0~PB6的狀態(tài),完成傳感器信號掃描。根據(jù)PB0~PB6不同的狀態(tài),STM32F103ZET6控制PA6和PA7輸出占空比不同的PWM信號,控制機器人沿黑線行進和轉(zhuǎn)向,實現(xiàn)自動尋跡。具體的行進和轉(zhuǎn)向控制如表2所示,*表示此位可為“0”或者“1”。
4實驗和測試
4.1上位機視頻監(jiān)控范圍測試
4.1.1上位機監(jiān)控界面
上位機軟件采用Delphi 7開發(fā),監(jiān)控主窗口如圖9所示,由串口收發(fā)區(qū)、行進方向控制區(qū)、攝像頭視頻顯示區(qū)、TCP Socket收發(fā)區(qū)、機械臂控制區(qū)以及數(shù)據(jù)采集區(qū)組成。
4.1.2視頻監(jiān)控的距離測試
該測試用來測試WiFi連接下視頻監(jiān)控的有效距離,地點選在室外空曠地帶,分別測試模型機器人距離上位機10 m、20 m、30 m、40 m、60 m、80 m時,上位機端視頻監(jiān)控畫面的流暢度。流暢度分為3個等級:流暢、一般流暢、有卡頓。測試結(jié)果如表3所示。在30 m范圍內(nèi),視頻監(jiān)控畫面清晰流暢;40~60 m范圍內(nèi),視頻流暢度降低并出現(xiàn)卡頓;距離達(dá)到80 m時,WiFi連接已失效,視頻數(shù)據(jù)無法傳輸回上位機端。
4.2機器人自動尋跡測試
機器人自動尋跡測試實驗主要考察在不同輪廓路徑下路徑識別的準(zhǔn)確率。自動尋跡路徑測試場地如圖10所示,機器人出發(fā)點為A,經(jīng)過B、C、D、E、F、G,到達(dá)終點H。實驗測試分為6組,分別為:B→C直線路徑測試,B→C→D 90°左轉(zhuǎn)折線路徑測試,C→D→E 90°右轉(zhuǎn)折線路徑測試,十字交叉點E測試,E→F曲率較小曲線路徑測試,F(xiàn)→G→H曲率較大曲線路徑測試。
每組實驗分別測試20組,記錄成功次數(shù)和失敗次數(shù),結(jié)果如表4所示。多次尋跡實驗表明,當(dāng)尋線路經(jīng)為直線、90°折線及曲率較小的曲線時,機器人自動尋線的成功率為100%;當(dāng)尋線路徑為曲率較大的曲線時,機器人的尋線成功率降為90%。可見曲線的曲率會影響自動尋跡的成功率。
機器人自動尋跡的測試如圖11所示。
5結(jié)論
本文設(shè)計了一種結(jié)合WiFi無線控制的6自由度模型機器人,該模型機器人可根據(jù)給定線路自動尋跡,并通過高速WiFi網(wǎng)絡(luò)實現(xiàn)實時視頻圖像采集與傳輸。操作人員可實時監(jiān)控,修正機器人的行進軌跡,并控制機械臂進行拾取搬運動作,這些動作可在被記憶后自動執(zhí)行。測試表明,在空曠地帶時,40 m范圍內(nèi)視頻監(jiān)控畫面清晰流暢,對機器人的行進控制以及機械臂的動作控制都非常穩(wěn)定;機器人路徑識別的準(zhǔn)確率很高,自動尋跡達(dá)到預(yù)期效果。經(jīng)過進一步完善與改進,本文設(shè)計的模型機器人在服務(wù)業(yè)、工業(yè)自動化等領(lǐng)域具有重要的應(yīng)用價值。
參考文獻
?。?] 譚民,王碩.機器人技術(shù)研究進展[J].自動化學(xué)報,2013,39(7):963964.
?。?] 王田苗,淘永.我國工業(yè)機器人技術(shù)現(xiàn)狀與產(chǎn)業(yè)化發(fā)展戰(zhàn)略[J].機械工程學(xué)報,2014,50(9):23.
?。?] 時巧,李財,鄧淵,等.智能巡線小車的設(shè)計[J].微型機與應(yīng)用,2015,34(9):7880.
[4] 呂霞付,羅萍.基于光電傳感器的智能車自動尋跡系統(tǒng)設(shè)計[J].壓電與聲光,2011,33(6):941942.
?。?] 宋永獻,馬娟麗,賀乃寶,等. 基于TMS320F2812 的智能循跡小車控制系統(tǒng)設(shè)計[J].計算機測量與控制,2011,19(9):21282130.
?。?] 李新科,高潮,郭永彩,等.基于語音識別和紅外光電傳感器的自循跡智能小車設(shè)計[J].傳感器與微系統(tǒng),2011,30(12):106107.
[7] 向誠,謝峰粹.基于WiFi和Android的智能探測車設(shè)計[J].電子技術(shù)應(yīng)用,2013,39(12):8284.
?。?] 李波,楊衛(wèi),張文棟,等.一種智能小車自主尋/循跡系統(tǒng)設(shè)計[J].計算機測量與控制,2012,20(10):27982801.
[9] 寧慧英.基于光電傳感器的智能小車自動尋跡控制系統(tǒng)[J].儀表技術(shù)與傳感器,2012(1):108110.