廣西民族師范學院數理與電子信息工程學院 劉光曉 呂月芬 韋珍麗 張勝蓮 全釗鋒 吳樹添
目前是物聯網時代,需要大量的物流運送,送快遞也成為了物流的服務之一。我們利用raspberry pi4主控芯片開發(fā)設計了一個送快遞的機器人,該機器人可以在一定地域范圍內自動或者人工驅動送快遞。該機器人運用攝像頭和感應器可以看清路況,避開相對擁擠的人群,規(guī)劃出最佳的行走路線。在機器人身上有物品儲存箱存放快遞,另外安裝偏離路線和防攻擊報警系統,確??爝f安全送到目的地。
利用raspberry pi4主控芯片來設計機器人充當快遞員,主要是為了方便各個階層不同的人在某些方面運用機器人來提供幫助。對于行動不便的老年人或者職業(yè)特別忙的人員來說,可以利用快遞員機器人到相應的地點去取物品或者幫忙運送物品,方便又節(jié)省時間。本文對相對容易掌握并運用的raspberry pi4主控芯片進行了創(chuàng)意性的開發(fā),為初學設計快遞機器人的研究者提供了一定的理論參考價值。
本機器人充當快遞員需要運用各個方面的電子信息專業(yè)相關知識,去研究和測試機器人的功能和安全問題??爝f機器人需要實現的功能如下:它的行走和轉彎功能靈活;它的攝像頭模塊安裝后可以看清路況;它可以自行避開障礙物;在設定目標地點后,它可以規(guī)劃出最佳路線自動導航行走移動至目的地;它具備安全性能及路線偏移自動報警系統快遞機器人的功能方案設計如圖1所示。
圖1功能方案設計圖
該機器人需要一個raspberry pi4控制板,一個轉接板,轉接板插紅外接收頭和跳線帽等零件。構建出避障模塊,循跡模塊,超聲波模塊,攝像頭模塊和報警模塊。實現自動導航行走功能需要利用攝像頭模塊提取路況信息特征,結合避障模塊和超聲波模塊的信息通過主板綜合判斷后驅動循跡模塊自動導航行走。而實現人工驅動功能是用戶利用攝像頭模塊監(jiān)測路況,再對機器人的狀態(tài)進行人工操作。在自動導航行走功能或者人工驅動功能運行時都要調用到報警模塊,確保機器人的安全。
目前網絡技術發(fā)達,APP技術應用廣泛。已經存在攝像頭錄制視頻進行監(jiān)控的技術,也存在通過APP對機器發(fā)出指令的技術。由此可以得出,對機器人進行遠程控制已經具備了理論和實際操作技術的條件。有學者利用樹莓派成功制作出了云視頻流媒體的遠程監(jiān)控系統。借鑒這種方法,我們可以在對機器人進行遠程監(jiān)控的基礎上進行人工驅動控制,完成人工驅動功能。另外,還有學者利用樹莓派成功實現了車輛檢測識別的功能。把這種檢測識別的功能推廣化,對路況進行監(jiān)測。機器人就可以自動識別路況自主選擇最優(yōu)路線行走,完成自動導航行走的功能。在理論和技術上,本機器人都符合現實條件的要求,可以實現送快遞的基本功能。
通過讓攝像頭模塊和raspberry pi4控制板相連,在V4L2標準驅動下,機器人可以采集到路況的實時視頻。機器人通過圖像識別技術和傳感器技術,獲取路況信息數據,并根據信息特征做出相應動作完成自動導航功能。機器人獲取的視頻信息可以通過4G網絡技術上傳到網絡,經過網絡地址端口轉換,用戶可以在公網上監(jiān)測到機器人。也可以運用APP技術,在手機端監(jiān)測機器人完成人工驅動機器人的功能。
由于V4L2獲取的視頻數據非常大,且raspberry pi4主控芯片的性能有限。為此,在數據傳輸前我們需要進行壓縮處理,并改進處理數據的運算方式。我們可以選擇MPEG-4圖像的壓縮方式進行壓縮視頻圖像信息,當前的MPEG-4技術已經很成熟且壓縮比很高,大大減少了系統的延時時間,對播放設備的要求也較低。或者選擇H.264圖像的編碼方式,它可以獲得很高的畫面質量。為此,本文選擇利用mjpg?streamer應用程序來處理機器人獲取的視頻圖像,將JPEG文件通過網絡傳輸到所需的瀏覽器上進行遠程監(jiān)控。同時,我們可以直接選用C270羅技攝像頭來獲取視頻圖像信息,而且它里面自帶有一個麥克風使用起來非常方便。它的兼容性能非常強并且免驅動,通過它輸出的圖像格式為MJPEG格式。
為了讓機器人快速處理視頻數據,我們用raspberry pi4主控芯片和Movidius神經元計算棒作為計算數據的平臺。而對于路況目標的圖像識別處理我們應用到經過改進后的MobileNet+SSD計算公式。在此基礎上我們運用MSCOCO數據集和路況自定義的數據集,制作出適合路況應用的數據訓練集。機器人利用這種數據集進行訓練后,就可以得到很好的路況識別效果。本文利用MobileNet+SSD的算法明顯增強了網絡的準確度,還增加了圖像語義的提取特征來識別監(jiān)測出實時路況的特征。MobileNet利用的是深度級可分離卷積的計算方法,比經典卷積的方法進行的乘法運算次數更少。本文構造的SSD模型算法如式(1)和式(2)所示:
Ai:第i層特征向量;Bi:通過第i-1層特征向量進行非線性預算后的第i層特征向量;B1(Y):輸入的圖像Y進行非線性運算后的第1層的特征向量;H(?):所有中間結果集合后的最后輸出。
有學者成功設計了基于手機APP的互聯網遠程視頻監(jiān)控系統,在此基礎上我們可以在raspberry pi4主控芯片上建立流媒體視頻服務器,將獲取到的視頻圖像數據進行傳輸。通過4G通信技術連接到網絡上,使用私網穿越技術讓用戶可以利用手機或者電腦在公網上遠程監(jiān)控機器人所處的路況。我們可以選用SIMCOM 7100系列的4G LTE通信模塊,把視頻監(jiān)控系統連接到網絡上,就可以實現視頻圖像的遠程傳輸進行遠程監(jiān)控。我們讓4G通信模塊通過RX、TX兩個引腳與raspberry pi4主控芯片相連,結合云技術和嵌入式技術完成機器人的聯網設計。
機器人獲取到的視頻數據可以通過Socket編程的方式發(fā)送給用戶的手機,在應用軟件里顯示。用戶通過手機里的應用軟件可以給機器人發(fā)送指令,使機器人做出相應的動作。我們可以運用WebAPP技術來開發(fā)一個手機應用的軟件,讓該軟件可以兼容很多版本的平臺。但是,要想在公網上通過視頻遠程監(jiān)控機器人所處的路況信息,需要將內網的私有IP地址轉換成公網的IP地址才可以實現。
我們選用阿里云服務器,通過下面的方法讓公網和私網設備用間接性的連接方式進行通信。阿里云服務器為公網用戶提供了一個9090端口,給raspberry pi4主控芯片提供一個12345端口。通過這些條件我們可以在阿里云服務器上建立起一個反向代理服務器Nginx,將Nginx安裝到Linux系統里,然后執(zhí)行指令建立起隧道。讓raspberry pi4主控芯片利用SSH隧道技術搭建出一條反向隧道,把阿里云服務器的12345端口和raspberry pi4主控芯片的8080端口連接起來。公網用戶訪問阿里云服務器提供的9090端口后,請求數據信息就可以經過阿里云服務器的12345端口發(fā)送給raspberry pi4主控芯片的8080端口,實現數據信息之間的相互傳輸。隧道搭建成功后,阿里云服務器的端口會保持在監(jiān)聽的狀態(tài),要結束監(jiān)聽狀態(tài)必須人為地去刪除掉隧道。至此,機器人的網絡設計已經完成,用戶可以訪問到公網的網站服務并通過公網監(jiān)控到機器人獲取的路況信息。我們連接公網的設計如圖2所示。
圖2 連接公網的設計圖
通過raspberry pi4主控芯片利用傳感器技術和圖像識別技術,判斷機器人是否受到攻擊或者偏移正確行走路線,完成機器人自動報警功能。當傳感器技術或者圖像識別技術監(jiān)測到符合報警的條件時,機器人觸發(fā)蜂鳴器實現安全及偏移路線報警功能。
可以利用兩塊raspberry pi4主控芯片,分為主機部分和從機部分,通過WIFI功能把它們兩個相連。主機用來實現自動導航行走和人工驅動功能,從機用來實現安全及偏移路線報警功能。利用拓展主控芯片的方法可以為機器人實現更多的功能,提高機器人處理信息的速度和儲存信息的容量。也可以為機器人配備舵機和R2100多通道激光測距傳感器等零件,讓攝像頭可以實現360度的旋轉進行多方位的視頻監(jiān)控,提高機器人測距精確度進行避障,完成機器人的安全性能保護。當然也可以在視頻遠程監(jiān)控的基礎上,進行機器人的人工安全保護。
結語:該機器人把互聯網技術、通信技術、自動控制原理、微機原理、傳感器技術和計算機控制技術等理論知識相結合,初學者通過該快遞機器人可以學到較多的理論知識和實踐操作技能??梢越o機器人配備性能更強的硬件,對機器人的軟件進行升級優(yōu)化,讓機器人實現更多的需求功能。在未來的生活中物品流動量將增大,快遞機器人自身的優(yōu)勢將得到充分的利用。