王 佳 鐘開洋 韋興德 詹曉晨 趙嘉賓 程志敏 曾智稟 葉健洪 何士悅
(佛山科學(xué)技術(shù)學(xué)院,廣東 佛山528000)
隨著機(jī)器人領(lǐng)域的發(fā)展和人民生活的需求日益提高,生產(chǎn)工業(yè)化正在向生產(chǎn)智能過度,因此工業(yè)智能機(jī)器人的發(fā)展需求越來越大。
由于ROS 系統(tǒng)的分散式消息機(jī)制,各模塊多線程分布式獨(dú)立工作,可根據(jù)需求將軟件功能獨(dú)立應(yīng)用于各個(gè)模塊的控制,具有非常高的靈活度,是應(yīng)用于低功耗工業(yè)智能化的不二之選。而現(xiàn)有AGV 小車結(jié)構(gòu)尚有不合理之處,造成各個(gè)組件的安裝位置不夠理想,難以進(jìn)行設(shè)備升級(jí)和替換,也難以進(jìn)行故障檢修和功能擴(kuò)展,往往會(huì)對(duì)其智能化程度造成一定限制。
本文的目的在于提供一種樹莓派3b+ 主控板下的智能AGV 運(yùn)輸小車的框架原理與實(shí)現(xiàn)方案,其便于進(jìn)行設(shè)備升級(jí)和替換,也便于故障檢修和功能擴(kuò)展,智能化程度高。
構(gòu)成小車的硬件系統(tǒng)包括主控板RaspberryPi3B+,8400mAH 帶充電器的鋰電池,步進(jìn)電機(jī),STM32 電機(jī)驅(qū)動(dòng)板,激光雷達(dá)RPLIDAR A1 用于使用SLAM 導(dǎo)航,OpenMV 攝像頭模塊,紅外掃描儀,無線網(wǎng)卡,SD 卡接口,16G SD 卡,串口線智能密碼鎖模塊,盒子儲(chǔ)物箱,小車底板以及車輪、螺絲釘、銅柱、杜邦線若干用于構(gòu)造車體。主控板RaspberryPi3B+自帶以太網(wǎng)模塊,以太網(wǎng)接口。系統(tǒng)框圖和功能框圖如圖1、圖2。

圖1 系統(tǒng)框圖
當(dāng)APP 進(jìn)入主界面時(shí),會(huì)顯示小車的位置和攝像頭的監(jiān)控。通過“密碼鎖設(shè)置”功能改變儲(chǔ)物箱的智能鎖的密碼;通過“SLAM定點(diǎn)導(dǎo)航”在APP 界面設(shè)置相對(duì)位置的定點(diǎn)導(dǎo)航,通過紅外掃描儀避開障礙物;通過“手動(dòng)方向控制”來自由操控小車運(yùn)動(dòng)。
主要功能實(shí)現(xiàn)為APP 發(fā)送指令給主控板,從而主控板控制各個(gè)步進(jìn)電機(jī)運(yùn)動(dòng),雷達(dá)和攝像頭作為實(shí)時(shí)監(jiān)控,把信號(hào)傳輸給主控板,主控板再把數(shù)據(jù)處理后傳給以太網(wǎng)模塊,再通過無線網(wǎng)卡將數(shù)據(jù)傳送到手機(jī)APP,實(shí)時(shí)獲取數(shù)據(jù)后,又可以繼續(xù)通過APP 發(fā)送指令給主控板;其次,可以在主控板執(zhí)行APP 的指令中,通過APP 的中斷鍵,終止指令,主控板會(huì)發(fā)送停止信息給電機(jī)驅(qū)動(dòng)模塊。

圖2 功能框圖
智能鎖可通過51 單片機(jī)串口控制舵機(jī)實(shí)現(xiàn),其輸入密碼部分可用數(shù)字電路結(jié)構(gòu)和獨(dú)立按鍵組成。可以在APP 設(shè)置密碼,通過網(wǎng)絡(luò)傳輸給主控板,主控板將數(shù)據(jù)傳給51 單片機(jī)。當(dāng)在鎖上輸入密碼,51 單片機(jī)獲取并處理,再根據(jù)密碼正確與否通過串口線控制舵機(jī)運(yùn)動(dòng)。

圖3 智能鎖設(shè)計(jì)
電子鎖與51 單片機(jī)系統(tǒng)通過串口通信,采用4 根串口線,分別為VCC、GND、TXD、RXD。同理,51 系統(tǒng)也需要引出4 根串口線與主控板相互傳輸數(shù)據(jù)。
核心部件主控板藏于車身內(nèi)部;電機(jī)驅(qū)動(dòng)模塊置于底盤;為了保證小車的避障功能,將紅外掃描儀安裝在車體前;攝像頭成像與雷達(dá)掃描都應(yīng)該在車身上方,其中雷達(dá)掃描范圍大,置于頂端,攝像頭置于雷達(dá)下,避免相互干擾;儲(chǔ)物箱置于車身后,底盤上,通過51 系統(tǒng)引出4 根串口線與主控板進(jìn)行串口通信。
OpenMV 是一個(gè)開源,低成本,功能強(qiáng)大的攝像頭模塊。以STM32F767CPU 為核心,集成了OV7725 攝像頭芯片,集成了各種高效的算法,提供Python 編程接口,對(duì)于自帶python 編程環(huán)境的RaspberryPi3B+有非常高的適用性。攝像頭直接成像,并將視頻信號(hào)實(shí)時(shí)傳到給主控板,主控板處理并壓縮后,通過以太網(wǎng)模塊傳輸APP。
ROS 系統(tǒng)下,通過激光雷達(dá)可以使用SLAM(即時(shí)定位與地圖創(chuàng)建)來完成定點(diǎn)導(dǎo)航。雷達(dá)與主控板組成嵌入式系統(tǒng),實(shí)時(shí)將掃描數(shù)據(jù)傳輸?shù)街骺匕澹骺匕逶龠M(jìn)行處理壓縮,利用以太網(wǎng)模塊傳輸給APP,并繪制地圖及定位信息。
Android 系統(tǒng)是一個(gè)開源的操作系統(tǒng),采用Android 系統(tǒng)開發(fā)APP 便于二次開發(fā)以及應(yīng)用程序的維護(hù);其次,Android 操作系統(tǒng)有更多免費(fèi)開源的開發(fā)環(huán)境,如:Android Studio + SDK;Eclipse + ADT + SDK;IntelliJ IDEA + SDK;這里建議使用Eclipse + ADT + SDK,將手機(jī)作為上位機(jī),嵌入式系統(tǒng)作為下位機(jī),有助于直觀地觀察編譯效果,做各種測(cè)試。
本設(shè)計(jì)主要以嵌入式技術(shù)為主,講述了一種結(jié)合ROS 系統(tǒng)、單片機(jī)、激光雷達(dá)、攝像頭、智能鎖等設(shè)備的智能AGV 小車,結(jié)合物聯(lián)網(wǎng)技術(shù),使用手機(jī)APP 控制,極大地加強(qiáng)使用的便利性,促進(jìn)智能機(jī)器人水平的提高,滿足更多生活和工業(yè)上的需求。