鐘宇明 , 余 江 , 陳衍藝 , 鄭詠文 , 賴壯炯
(1.廣東海洋大學機械工程學院,廣東 湛江 524088;2.廣東海洋大學深藍智能機電產品創新團隊,廣東 湛江 524088;3.廣東海洋大學電子與信息工程學院,廣東 湛江 524088)
在當今高校校園內,飲食配送服務已經成為學生生活中不可忽視的重要議題。隨著大學校園面積的擴大,學生宿舍區與餐廳之間的距離越來越遠,學生在用餐時間內不得不花費大量時間和精力往返于宿舍和餐廳之間。這種現象不僅浪費了學生寶貴的學習和休息時間,也對學生的生活質量造成了一定的影響。另外,在惡劣天氣條件下,校園飲食配送服務常常面臨種種困擾。傳統的人工配送在極端天氣下難以順利進行,這既影響了學生的飲食安排,也增加了校園管理的難度。盡管市場上已經存在一些配送機器人,但普遍存在著自身質量重、造價高、配送數量有限等問題,無法滿足高校校園內多單配送的需求。目前雖然有“萬小餓”這樣專門針對城市和辦公寫字樓的配送機器人,但是其自身質量較重且造價高昂,每次只能送3 單外賣,不適合在校園里完成一次多單的配送任務[1]。
為了解決這一問題,本研究提出了一種新型的智能飲食配送機器人方案。旨在充分利用先進的技術手段,通過設計一種智能送餐機器人,以分擔短距離的送餐任務或與送餐員接力運送[2],從而為學校提供更加便捷、高效、安全的餐食配送服務,提升校園生活的便利性和舒適度。
本機器人的主體結構主要由前擋板、后擋板、側擋板、橫杠條、排水板、底板、第二層支撐板、紅外光電傳感器、前置支架、前置支架固定件、攝像頭、電機、電機支架、車輪組成,機器人主體結構如圖1 所示。機器人主體結構包括兩塊側擋板,上端具有凹槽,用于固定橫杠條和取餐結構。側擋板上部中部有凹槽,用于安裝排水板,以保護機器人內部控制元件不被雨水侵壞。排水板傾斜安裝,起到有效排水的作用。機器人四周配有紅外光電傳感器,前部傳感器安裝在前置支架上,前擋板有空洞供傳感器檢測障礙物。前置支架可調節夾角并用螺栓固定,攝像頭位于前擋板上,用于捕捉周圍圖像信息。底部有四個電機,各有電機支架固定在底板上。機器人主體內有支撐架,用于放置電子元件,充分利用內部空間。

圖1 機器人主體結構
該智能配送機器人的硬件系統要求包括STM32單片機模塊、自主設計的PCB 電路、激光測距模塊、北斗定位模塊、攝像頭、紅外傳感器等。系統需具備高性能、低功耗、穩定性強等特點,確保在校園環境下穩定運行。
自主設計的PCB 電路板主要集成了主控STM32單片機、電源模塊、電機驅動模塊以及傳感器和上位機的供電與信號傳輸模塊。
電源模塊的核心為MP2236 芯片,是一款高頻同步整流降壓開關變換器,通過調整其前饋電容至22 μF 可得到模塊的最佳輸出電壓[3]。在運動控制方面,機器人采用BTN7971B 驅動芯片,其優越的電機控制性能和高效率,可以確保機器人平穩、精準運動。該芯片具有卓越的功率轉換效率和溫度穩定性,可為機器人系統提供可靠動力支持,確保高效運作。直流電機驅動模塊原理(部分)如圖2 所示。

圖2 直流電機驅動模塊原理(部分)
機器人采用ATGM332D 定位模塊,支持北斗和GPS 等多種衛星導航系統。該模塊通過測量已知空間位置的衛星到機器人接收機的距離和角度,綜合衛星數據計算機器人具體位置。此外,通過串口連接可查看定位數據,包括定位時間、緯度、經度、高度和所用衛星數等。
機器人的主要傳感器為分布在機體外部各處的紅外光電傳感器。該類型傳感器是一種集發射與接收于一體的紅外光漫反射式光電傳感器[4],5 V 供電,最大檢測距離為80 cm,受可見光影響較小,通過發射和接收紅外光線檢測物體存在,并向上位機輸出信號。同時,搭載VL53L0X 激光測距模塊,該脈沖式激光測距的原理和過程是測距儀器發射出的激光經被測物體反射后由接收端接收回射激光,測距儀器記錄激光往返時間[5]。測距范圍為30 mm~2 000 mm,采用脈沖式激光測距原理。機器人采用連續測量模式,實現連續測距并在每次測量結束后自動執行下一次測量任務。
定位功能主要由ATGM332D 定位模塊實現,同時,機器人上搭載一塊LCD 顯示屏用于顯示相關定位信息。在啟動定位程序前,控制系統首先打開串口,實時接收由ATGM332D 定位模塊循環發送的數據幀,按需求使用strstr 函數從中選取字段(定位數據),以此獲得相關信息并顯示在LCD屏上。
根據NMEA-0183 協議,定位模塊共循環發送GPGGA、GPGSA、GPGSV、GPGLL、GPRMC 以及GPVTG 這6 種數據幀,其分別代表不同信息,如表1所示。

表1 數據幀信息
該機器人主要使用代表定位信息的GPGGA 數據幀。對于單一GPGGA 數據幀,除去幀頭外共含有15 個字段,分別代表各種定位數據,包括世界時間(UTC)、經度、緯度、高度等[6]。其中,不同字段之間由逗號相隔,因此可使用逗號作為標記符,通過統計逗號出現的次數,獲取相關順序的字段,并在程序上通過strstr 函數進行查找與選取,得到相應的定位數據,如:GPGGA 數據幀的第二與第四字段分別為緯度與經度數據[7],通過strstr 函數查找“2”和“4”即可獲得機器人當前經緯度信息。但定位模塊會受到衛星信號強弱的影響,信號較弱時容易發出錯誤的定位信息,此時引入GPRMC 數據幀,利用strstr 函數查找其第二字段,若字段中含有“V”字符,則判定本次數據為無效數據。該機器人實現定位功能的相關程序流程如圖3所示。

圖3 定位程序流程
在實現導航功能前,控制系統中會預先設置多條固定的配送路徑,由負責配送的工作人員進行選擇。其中每條預設路徑包含多個路徑節點,分布在道路的十字路口、轉彎處、直行處以及宿舍樓門前,每個節點都有各自的坐標,包含高度以及經緯度,同時,所有的路徑節點會按照固定順序進行排列。以廣東海洋大學湖光校區的西區學生公寓為例,預設路徑如圖4所示。

圖4 預設路徑
在機器人到達當前路徑節點后,控制系統通過定位系統中獲取的定位信息與下一路徑節點的坐標值進行比較,獲得經緯度預設值和實際值之間的偏差值,然后通過兩個偏差值得出轉向角度,再對數值進行取整,控制機器人兩側電機按照一定延時反轉,在轉向達到相應角度后,執行直行程序。偏差值與轉向角度關系如式(1)所示:
式中,θ為確定轉向角度,X為緯度偏差值,Y為經度偏差值。
控制系統每隔3 s 進行一次角度修正,而在機器人直行過程中,會利用攝像頭以及分布在機體各處的傳感器進行緊急避障,包括剎車和避讓等,避開行人、行車和各種障礙物,然后再重新進行一次角度修正。與使用激光雷達或者視覺建模進行定位相比,該定位方式可以減少數據處理量,同時降低控制算法復雜性,在保證滿足定位需求的同時可大大降低開發成本[8]。
該設計的視覺識別系統包括一個360°旋轉的攝像頭、樹莓派4B 微型電腦板和內部運行的OpenCV。在配送任務執行過程中,攝像頭持續捕獲周圍環境的圖像信息,樹莓派4B 使用OpenCV 庫對圖像進行識別和分析。識別得到的環境圖像數據被傳遞給下位機的STM32 單片機,實現對障礙物的精準識別。機器人圖形識別與數據分析思路如圖5所示。

圖5 機器人圖形識別與數據分析思路
該機器人使用的OpenCV 數字圖像處理技術可以很方便地對圖像進行采集、底層處理,為周圍物體的識別和取件時的人臉識別功能提供高質量的圖像[9]。該機器人具備的人臉識別功能,是先利用攝像頭進行視頻采集,轉換成靜態幀信號;對每一幀利用OpenCV 進行圖片預處理,然后進行人臉檢測,識別人臉位置,得到邊框數據;將待比對的圖像進行特征提取以及人臉庫的預提取,用于之后的比對[10]。人臉識別功能不僅提高了機器人的身份認證準確性和識別效率,還增強了機器人送餐過程的安全性。
機器人的圖像數據傳輸和處理主要依賴樹莓派4B微型電腦板。樹莓派4B可編寫和運行代碼,是嵌入式深度學習的理想平臺[11]。它負責收集、計算、分析攝像頭和傳感器的識別數據,確定障礙物的大小和位置,并通過串口通信將檢測結果傳遞給下位機STM32單片機,控制系統依此實現機器人的避障功能。
在面對坡路時,機器人電機的固定功率輸出可能導致動力分配不合理,使機器人無法正常上下坡,甚至失控溜車。這是因為地球引力在運動方向上會對機器人造成影響。針對上述情況,本設計基于PWM控制方式,引入了PID 算法。PWM 通過改變占空比來控制電機轉速,在上坡時增加電機電壓以加速上升,在下坡時降低電機電壓,利用電機的牽引力減速下行。通過調節PID 參數,實現機器人在坡路和平路上的勻速行駛,且設計的PID 控制算法通過仿真模型進行了驗證。機器人PID 控制算法的仿真模型如圖6所示。

圖6 PID 控制算法仿真模型
該機器人使用的是位置式PID 算法,PID 的本質就是非線性的控制,在機器人的應用中一般表現在單片機的控制上,這是一種進行過量化的過程,對于運行軌跡偏差不斷采樣并進行量的控制。因此本質上也是數字控制的一種[12],其基本數學公式如式(2)所示。
式中,u(t)是算法的輸出信號,e(t)是偏差值,Kp是比例增益參數,Ki是積分增益參數,Kd是微分增益參數。
積分增益的作用在于消除系統的靜態誤差,使系統能夠逐漸趨近目標值并最終消除穩態誤差。其大小影響著積分的速度和效果,過大的積分增益可能導致系統振蕩。另外,積分增益還有助于減小系統的動態誤差,提高系統的調節速度,從而減少超調和振蕩。
本文介紹了一款專為高校校園內飲食配送服務設計的智能配送機器人,該機器人具備室外工作能力,主體結構防雨,儲物結構能保護和保溫食品,硬件性能穩定可靠。為解決實際問題,采用固定路徑和路徑節點的自主導航系統,確保機器人按預定路徑精準配送。同時,引入攝像頭和樹莓派微型電腦,結合OpenCV 庫實現智能感知和判斷,避免障礙物碰撞,提高配送精準度。在處理機器人上下坡平衡問題時,引入PID 算法進行精確控制,確保機器人在各種坡度上穩定通過,保障配送過程的安全性和穩定性。