亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于SLAM的校園配送AGV地圖構(gòu)建及路徑規(guī)劃研究*

        2023-02-24 05:20:28朱偉枝謝娟烘盧子榮
        機電工程技術(shù) 2023年1期
        關(guān)鍵詞:建圖小車規(guī)劃

        朱偉枝,謝娟烘,盧子榮

        (廣東理工學院,廣東肇慶 526100)

        0 引言

        隨著科技的發(fā)展,無接觸配送、無人配送等多個熱門詞匯開始進入我們的視線[1]。無人配送是指物品流通環(huán)節(jié)中沒有或是少量人工參與,用機器替代人工或者人機協(xié)作的配送方式,達到提高效率、減少成本的目的。無人配送方式需求場景眾多,包括快遞、外賣、B2C零售、商超便利、生鮮宅配、餐館/KTV配送、C2C配送需求等,為生產(chǎn)生活需求提供了相當大的便利性[2]。在國內(nèi)外疫情防控形勢依然嚴峻的情況下,無人配送無疑是最安全、最有效率的一種配送方式,在未來將成為主流趨勢。

        在無人配送方面,國內(nèi)外都做了許多研究與實踐。Nasri等[3]討論了在不確定交通條件下,如何優(yōu)化無人駕駛車輛的路線和速度。張明雨[4]利用代價地圖的cost信息來構(gòu)建狀態(tài)空間,結(jié)合Q-earning算法以達到修改全局路徑實現(xiàn)機器人的動態(tài)導(dǎo)航。2018年,阿里菜鳥物流無人車實現(xiàn)了支持用戶掃碼和刷臉功能。2021年,美團發(fā)布了新一代自研L4級別無人駕駛車,并投入到了買菜服務(wù)配送中。

        在當今大學校園里,學生人數(shù)眾多,學??梢哉f是傳染病突發(fā)公共事件的高發(fā)場所[5]?;诖?,本文提供一種校園AGV(Automated Guided Vehicle)地圖構(gòu)建及路徑規(guī)劃設(shè)計方案。AGV是一輛自動導(dǎo)引運輸車,其搭載的激光雷達會實時掃描周邊環(huán)境,采集周圍的環(huán)境信息,對環(huán)境監(jiān)測信息發(fā)出反應(yīng),識別移動與非移動信號,從而映射到AGV系統(tǒng)的傳動機構(gòu),實現(xiàn)避障,并根據(jù)設(shè)定地點進行路線規(guī)劃及導(dǎo)航。

        1 AGV小車總體設(shè)計

        1.1 控制部分

        小車的控制部分由一塊樹莓派4B作為主控,Ardui?no作為編碼電機控制器。在樹莓派4B上燒錄好Ubuntu系統(tǒng),并安裝ROS機器人操作平臺。電腦可通過樹莓派上的藍牙和WiFi串口上傳或下載相關(guān)驅(qū)動和數(shù)據(jù),通過Rviz觀察SLAM建圖情況并監(jiān)控小車實時動態(tài)。Arduino通過電腦端的Arduino IDE將編碼電機的驅(qū)動程序下載下來,并通過USB線及相應(yīng)串口通信驅(qū)動連接至樹莓派。

        1.2 動力部分

        小車的動力部分由一對12 V帶編碼器的有刷直流電機、一套34∶1的齒輪減速器、一對輪胎、一個導(dǎo)向輪以及一塊12 V蓄電池組成。小車通過Arduino可以接收到電機上的編碼器傳達的傳動數(shù)據(jù),通過齒輪減速箱可以有效地放大扭矩。

        1.3 雷達部分

        小車搭載的激光雷達型號是思嵐RPLIDAR A1,采用激光三角測距技術(shù),掃描頻率5.5 Hz,采樣頻率8 k/s,掃描范圍最遠12 m,測距核心順時針旋轉(zhuǎn),可實現(xiàn)對周圍環(huán)境的360°掃描測距檢測,從而獲得周圍環(huán)境的輪廓圖[6]。該激光雷達對ROS系統(tǒng)具有良好的整合適配性,讓機器人能更快速、精確地建圖。

        2 基于SLAM的全局地圖掃描

        2.1 定位導(dǎo)航

        定位導(dǎo)航包括定位、建圖和路徑規(guī)劃。定位和建圖通常由SLAM(Simultaneous Localization and Mapping)來實現(xiàn),而路徑規(guī)劃則是根據(jù)現(xiàn)有的地圖,在點與點之間計算好最優(yōu)路線[7]。SLAM和運動規(guī)劃是AGV的兩個核心技術(shù),SLAM技術(shù)可以得到稀疏的定位地圖,結(jié)合后處理可以得到稠密的三維點云地圖[8]。此時再將其轉(zhuǎn)化為柵格化地圖,AGV就可以在這個地圖的基礎(chǔ)上,結(jié)合傳感器獲取外部環(huán)境信息進行運動規(guī)劃,找到一條適合自身行走的最佳路徑。

        2.2 基于LOAM算法的地圖構(gòu)建

        2.2.1 特征提取

        LOAM(Lidar Odometry and Mapping)算法[9]的兩個核心模塊為特征提取(Lidar Registration)和里程計解算(Odometry and Mapping)。本文提取的兩種特征分別為平面點和邊緣點。提取特征點的常用方法有3種:特征向量法、直方圖法和旋轉(zhuǎn)圖像法。然而,雖然這些方法能夠準確地覆蓋一幀的大部分信息,但是由于計算量大,很難用于激光SLAM的相鄰幀匹配,因此本文引用曲率計算方法,公式如下:

        式中:c為計算得到的曲率;k為一次掃描周期;L為雷達當前坐標系;i為第k次掃描點云的第i個點;為第k次掃描點云中的第i個點在雷達當前坐標系L中的位置向量;S為點前后指定數(shù)量的點,具體在實際代碼中實現(xiàn)就是計算前后5個點。

        經(jīng)計算后,選取曲率特別大、平滑度高的特征點作為邊緣點,曲率特別小、平滑度低的特征點作為平面點。

        2.2.2 特征匹配

        提取特征點后,采用scan-to-scan方法對連續(xù)特征幀進行匹配,并建立誤差模型。由于每個特征點都會隨著雷達的運動而改變,因此本文為了方便處理,將所有的特征點都重投影到每一幀的初始時刻,從而獲得對應(yīng)的姿態(tài)變換信息。本文采用點到線的距離以及點到面的距離計算方法分別構(gòu)造邊緣點以及平面點的約束公式。

        邊緣點約束公式:

        平面點約束公式:

        式中:k為一次掃描周期;為第k次掃描點云中的第i個點在雷達當前坐標系L中的位置向量;為經(jīng)過旋轉(zhuǎn)和平移后的位置向量。

        優(yōu)化式(2)和(3),列出第k+1次掃描點云中的第i個點在雷達當前坐標系L中的位置向量和變化后之間的關(guān)系為:

        經(jīng)過運動補償后為:

        式中:R是滿足羅德里格斯變換的旋轉(zhuǎn)矩陣;是k+1幀中第i點相對于t k+1時刻的平移。

        R變換得:

        式中:T L k+1是k+1幀起始時刻點在雷達坐標系中的平移,即:

        設(shè)函數(shù):

        采用列文伯格-馬夸特法(LM)算法求解,迭代過程為:

        式中:J為雅可比矩陣。

        將上述式子不斷匹配求解,直到收斂,可以獲得雷達坐標系L下的結(jié)果,實現(xiàn)相鄰幀之間的變換。而為了定位和建圖,還需要轉(zhuǎn)化到全局地圖坐標系W下。本文在環(huán)境建圖中采用map-to-map方式匹配,并運用PCA主成分思想提取點云中的邊緣點和平面點,再結(jié)合式(2)和(3),利用LM法來求解。

        3 路徑規(guī)劃

        3.1 全局路徑規(guī)劃

        全局路徑規(guī)劃[10]主要有三種基本算法:貪婪算法、Dijkstra算法和A*算法[11]。貪婪算法在規(guī)劃路徑時尋找的是離目標節(jié)點最近的節(jié)點作為下一次搜索的起點,但不能保證能找到最優(yōu)路徑。Dijkstra算法考慮的是當前節(jié)點與其周圍節(jié)點之間的距離,遍歷完所有節(jié)點才可以找到最優(yōu)路徑。而A*算法是結(jié)合了貪婪算法和Dijkstra算法的思想,綜合了兩種算法的優(yōu)點,是目前應(yīng)用最廣泛的路徑規(guī)劃算法之一[12]。

        A*算法是一種典型的啟發(fā)式搜索算法,用路徑優(yōu)劣評價公式表示:

        式中:f(n)為節(jié)點n的估價函數(shù);g(n)為初始節(jié)點到當前節(jié)點n的實際代價;h(n)為從節(jié)點n到目標節(jié)點最佳路徑的估計代價。

        算法基本實現(xiàn)過程:從起始點開始計算其每一個子節(jié)點的f(n)值,從中選擇f(n)值最小的子節(jié)點作為搜索的下一點,往復(fù)迭代,直到下一子節(jié)點為目標節(jié)點[13]。

        3.2 局部路徑規(guī)劃

        AGV在獲得目的地信息后,已經(jīng)通過全局路徑規(guī)劃獲得一條最優(yōu)路徑,但是環(huán)境一旦發(fā)生變化,未及時更新地圖時,AGV就未必能做出相應(yīng)的行動策略。因此,為了應(yīng)對突發(fā)事件,需要AGV能夠?qū)崟r獲取環(huán)境障礙物的信息,即局部路徑規(guī)劃[14],以提高對環(huán)境的適應(yīng)能力。本文采用動態(tài)窗口法(Dynamic Window Approach,DWA)[15]來實現(xiàn)AGV的局部路徑規(guī)劃。

        DWA算法的原理是在線速度v和角速度ω構(gòu)成的速度空間(v,ω)中不斷采樣,模擬AGV在采樣得到的速度下的運動軌跡,并針對這些軌跡進行評價,從而選取最優(yōu)的軌跡來驅(qū)動AGV運動。

        4 實驗與測試

        4.1 上位機算法裝載與調(diào)試

        本文所采用的算法分別為LOAM-Slam建圖算法、A*全局路徑規(guī)劃算法和DWA局部避障算法。其中,A*算法和DWA算法已經(jīng)集成在ROS功能包中,因此只需要搭建LOAM算法并完成算法切換。

        本文選用的系統(tǒng)與依賴庫的搭配是Ubuntu 20.04+ROS+PCL1.12.1編譯器+Ceres依賴庫,其中,PCL1.12.1編譯器和Ceres依賴庫都是開源社區(qū)的C++庫。PCL用于在AGV掃描建圖中編譯平滑的映射數(shù)據(jù),Ceres用于解決地圖建模時的大型復(fù)雜的優(yōu)化問題,兩者相輔相成,適合在大型開放場景中進行地圖掃描與建模,并能夠在較低的功耗中實現(xiàn)算法。

        當配置好系統(tǒng)環(huán)境,并下載安裝好Ceres依賴庫和LOAM算法之后,還需要配置重定向測試文件。測試文件Bag由LOAM算法社區(qū)提供,可以實現(xiàn)無實體小車的模擬場景測試。

        運行LOAM時,通過roslaunch命令啟動雷達進行掃描。在地圖創(chuàng)建完成后,退出終端命令窗,系統(tǒng)會自動將4個代表地圖不同數(shù)據(jù)的pcd文件保存在/tmp目錄下,而每次重啟系統(tǒng),/tmp目錄下的文件都會被清空。因此在退出系統(tǒng)前,要注意在Rviz中將Map Cloud勾選,才能在測試包運行完畢暫停后,將最終的地圖掃描數(shù)據(jù)保存到PCL編譯器目錄下層。

        4.2 Gazebo環(huán)境搭建

        Gazebo是ROS系統(tǒng)中的一個動態(tài)環(huán)境模擬軟件,通常用來測試在復(fù)雜環(huán)境下的多機器人協(xié)同運作實驗。Ga?zebo提供了高保真的物理引擎測試環(huán)境,以及一整套的傳感器模型,能夠無限貼近現(xiàn)實地模擬出機器人在實際場景中的運作方式。

        如圖1所示,采集一張某高校的衛(wèi)星俯瞰圖,并勾勒標注好需要進行測試的主要配送道路。在Gazebo中打開場景繪制器,根據(jù)衛(wèi)星俯瞰圖勾勒出的輪廓,在場景繪制器中使用Wall工具繪制出需要測試的封閉道路并保存場景。如圖2所示,在相應(yīng)的輪廓線條上雙擊編輯每堵Wall的參數(shù),并對每堵不同高度位置的Wall進行填色以作區(qū)分。

        圖1 某高校主要配送道路的衛(wèi)星俯瞰圖

        圖2 繪制墻面效果

        在搭建完仿真環(huán)境后,將模擬的小車放入地圖當中,小車可以是Gazebo仿真庫提供的模型,也可以是通過建模外部導(dǎo)入的Urdf模型。本次選用Gazebo仿真庫的模型小車,并在其上添加激光雷達、相機等傳感器,如圖3所示。在Gazebo終端不關(guān)閉的情況下,再開啟一個終端來打開Rviz可視化界面。配置LOAM算法后,將雷達和深度相機的傳感關(guān)系建立,在Rviz界面中將地圖添加進去。當小車加載完后,通過巡邏整張地圖進行建圖。通過LOAM算法優(yōu)化并進行灰化處理后的地圖模型如圖4所示。

        圖3 小車模型導(dǎo)入

        圖4 地圖構(gòu)建

        在建完地圖模型后,通過roscore命令切換出2DSlam來運行A*和DWA算法。通過plan_node.cpp函數(shù)構(gòu)建好Global全局環(huán)境變量,運行后的效果如圖5所示,為配送道路某轉(zhuǎn)角處的路徑處理。同理,在A*算法的基礎(chǔ)上,切換至DWA動態(tài)窗口算法后,小車對路徑的選擇會明顯更加謹慎。由于沒有回環(huán)檢測,對噪點的過濾效果也不如前者,但是在局部避障方面,DWA算法因為評分機制的存在,能夠讓其在近距離內(nèi)有效的測算出移動障礙物的相對位姿并及時優(yōu)化路徑來避開。

        4.3 室內(nèi)場景模擬

        AGV小車的開啟步驟與在Gazebo環(huán)境下配置流程大致相同。在正式開啟前,需要啟動安裝在工作環(huán)境中的激光雷達ROS驅(qū)動,并發(fā)出tf,以轉(zhuǎn)換Arduino端發(fā)送過來的車輪里程計中的坐標系信息。而APM駕駛儀是與Arduino直連的,可以在樹莓派上通過COMP串口通信獲取數(shù)據(jù)。完成以上流程后,就可以編輯啟動文件來開啟AGV小車了。圖6所示為室內(nèi)環(huán)境下AGV小車模擬實際場景的定位導(dǎo)航及運動規(guī)劃效果。

        5 結(jié)束語

        本文提供了一種可適用于校園AGV配送的定位導(dǎo)航設(shè)計方案,就該方案展開了地圖構(gòu)建和路徑規(guī)劃兩大步驟的研究。地圖構(gòu)建部分采用基于LOAM的算法,將復(fù)雜的SLAM問題分為高頻的運動估計和低頻的環(huán)境建圖。在運動估計中通過曲率計算提取平面點和邊緣點兩種特征,再采用scan-to-scan方式對連續(xù)特征幀進行匹配,并建立誤差模型。在環(huán)境建圖中采用map-to-map方式匹配,運用PCA主成分思想提取點云中的特征點,再利用LM法來求解。路徑規(guī)劃部分先采用A*算法獲得一條最優(yōu)的全局路徑規(guī)劃路徑,再采用DWA算法對局部進行規(guī)劃,以提高對環(huán)境的適應(yīng)能力。實驗證明,本文搭建的AGV配送小車能夠滿足在校園環(huán)境多種不同模擬場景中的定位導(dǎo)航需求,為校園AGV配送系統(tǒng)的設(shè)計及相關(guān)產(chǎn)業(yè)的發(fā)展提供了一定的技術(shù)支持。

        猜你喜歡
        建圖小車規(guī)劃
        視覺同步定位與建圖中特征點匹配算法優(yōu)化
        大車拉小車
        快樂語文(2020年36期)2021-01-14 01:10:32
        自制小車來比賽
        科學大眾(2020年17期)2020-10-27 02:49:02
        基于三輪全向機器人的室內(nèi)建圖與導(dǎo)航
        電子制作(2019年10期)2019-06-17 11:45:06
        一種基于多傳感融合的室內(nèi)建圖和定位算法
        劉老師想開小車
        文苑(2018年22期)2018-11-19 02:54:18
        兩輪自平衡小車的設(shè)計與實現(xiàn)
        電子制作(2018年8期)2018-06-26 06:43:02
        規(guī)劃引領(lǐng)把握未來
        快遞業(yè)十三五規(guī)劃發(fā)布
        商周刊(2017年5期)2017-08-22 03:35:26
        機器人室內(nèi)語義建圖中的場所感知方法綜述
        自動化學報(2017年4期)2017-06-15 20:28:55
        国产成人精品午夜福利免费APP| 亚洲国产美女精品久久久久∴| 99国产精品无码| 精品久久久无码人妻中文字幕豆芽 | 蜜桃视频在线在线观看| 国产真实一区二区三区| 丰满熟女高潮毛茸茸欧洲视频| 女人做爰高潮呻吟17分钟| 国产精品主播视频| av福利资源在线观看| 日本老熟妇五十路一区二区三区 | 中文字幕av素人专区| 丰满人妻一区二区三区免费视频| 99re热这里只有精品最新| 尤物蜜芽福利国产污在线观看| 在线观看的a站免费完整版 | 91久久大香伊蕉在人线国产| 国产精品综合一区久久| 特级精品毛片免费观看| 五月天综合在线| 性感人妻av在线播放| 日本一区二区视频免费在线看| 粉嫩虎白女毛片人体| 久久精品日韩av无码| 国产三级在线观看性色av | 超级乱淫片国语对白免费视频| 国产国语亲子伦亲子| 欧美巨大xxxx做受中文字幕| 久久精品国产亚洲AV古装片| 日本不卡视频一区二区| 一进一出一爽又粗又大| 91网站在线看| 日韩亚洲一区二区三区在线| 欧美村妇激情内射| 欧美国产日产一区二区| 亚洲素人日韩av中文字幕| 国产精选自拍视频网站| 亚洲欧美日韩成人高清在线一区| 日韩AV无码免费二三区| 中文字幕一区二区网站 | 永久免费av无码网站性色av|