一種機器人基於ROS和GPS的室內外無縫定位方法和定位系統與流程
2023-11-07 11:35:43 1
本發明屬於機器人定位技術領域,特別是涉及一種機器人基於ROS和GPS的室內外無縫定位方法和定位系統。
背景技術:
移動機器人是一種可在複雜環境下工作,具有自規劃、自組織、自適應能力的機器人,具有行動快捷、工作效率高、結構簡單、可控性強、安全性好等優勢,目前在國內外正在被廣泛的應用。
在移動機器人相關技術研究中,導航技術屬於其核心技術,也是實現智能化和自主移動的關鍵技術。目前常見的導航方式有電磁導航、慣性導航、視覺導航、無線導航、衛星導航、傳感器數據導航等等。
無線導航:如專利號201510709583.X公開的一種室內機器人定位系統,所述定位系統包括定位模塊、工控機模塊、PLC模塊和移動模塊,其中:所述定位模塊包括RFID讀寫器、RFID標籤、無線網絡和機器人,所述RFID標籤作為定位參考點,所述RFID標籤等距地鋪滿整個機器人運動平面,所述RFID讀寫器置於所述機器人底部,並與所述無線網絡相連,所述無線網絡作為通信載體,所述RFID標籤接收距離20cm內的RFID讀寫器發來的射頻信息,經過調製、解碼進行判斷,將存儲的位置信息發出去,實現反饋,所述RFID讀寫器接收反饋信息並將之傳遞給所述工控機模塊。
傳感數據導航:如專利號201510784502.2公開的一種機器人的地圖創建及定位方法,所述包括以下步驟,S1:機器人採集傳感器數據;S2:機器人將傳感器數據通過無線網絡發送至雲端伺服器;S3:雲端伺服器根據接收到的傳感器數據創建地圖及生成機器人定位信息;S4:雲端伺服器將地圖信息及定位信息通過無線網絡發送至機器人和用戶終端。
對於以上傳統的導航方式或多或少存在著一些弊端,電磁導航靈活性差,定位不準確,智能性不高且大面積磁條鋪設維護成本高。
衛星導航多用於機器人的室外導航,然而機器人在室內時,因為沒有GPS信號不能定位,主要依靠室內導航技術,但是室內導航技術進入到室外後便不再適用,因而機器人從室內行走到室外或從室外行走到定內,將無法準確獲取機器人的位置。
技術實現要素:
本發明的目的就在於克服現有技術的不足,提供了一種機器人基於ROS和GPS的室內外無縫定位方法和定位系統,本發明實現了機器人從室內到室外或從室外到室內都能無縫切換導航模式,即實現了機器人從室內到室外或從室外到室內導航的無縫拼接,機器人室內導航模式與室外的GPS導航模式的無縫切換,以獲取機器人行走在室內或室外的位置,以對機器人行走進行路徑規劃,定位準確,不會出現機器人位置丟失等的情況。
為了實現上述目的,本發明提供了一種機器人基於ROS和GPS的室內外無縫定位方法,包括如下步驟:
步驟一、微型主機內安裝ROS作業系統,利用ROS作業系統配合點雲算法把採集到的攝像頭環境數據生成二維點雲數據,並利用gmapping框架和粒子濾波算法進行局部優化建立室內導航地圖和由室內向室外延伸一段距離的室外導航地圖,由室內導航地圖和室外導航地圖組成二維導航地圖,並將二維導航地圖保存至微型主機內;
步驟二、由室外到室內的入口處張貼ar_marker,利用攝像頭掃描ar_marker,以獲取ar_marker的ID信息和相對於機器人的姿態信息,同時設定ar_marker在二維導航地圖中的坐標並保存至微型主機內;
步驟三、機器人在室內行走時通過室內導航地圖獲取機器人在室內的位置;
步驟四、機器人由室內行走到室外導航地圖範圍內時,通過室外導航地圖獲取機器人在此範圍內的位置同時在室外導航地圖範圍內能保證室內導航模式切換到室外的GPS模式,使得機器人行走在室外導航地圖範圍外時,通過GPS獲取機器人在室外的位置;
步驟五、機器人由室外行走到室內時,通過攝像頭掃描入口處張貼的ar_marker,識別ar_marker並從微型主機內調取ar_marker的姿態信息和ar_marker在二維導航地圖中的坐標;
步驟六、將ar_marker在二維導航地圖中的坐標初始化為機器人的初始化坐標,並由室外的GPS模式切換到室內導航模式,使得機器人進入室內後通過室內導航地圖獲取機器人在室內的位置。
進一步地,在步驟三中,機器人在室內行走過程中,微型主機的ROS作業系統將攝像頭採集到的室內環境中的物體信息轉換成三維點雲數據,再轉化成二維點雲數據,以得到攝像頭相對於物體的距離,當攝像頭相對於物體的距離在障礙物範圍內時,通過微處理器改變底座上驅動電機的PWM以控制機器人減速行駛並轉向繞開障礙物。
進一步地,在步驟三中,機器人在室內行走過程中,碰撞檢測單元檢測攝像頭掃描不到的區域是否有低障礙物,紅外懸空檢測單元檢測路面是否有深坑,碰撞檢測單元和紅外懸空檢測單元分別將檢測數據通過微處理器發送給微型主機,微型主機內的ROS作業系統根據檢測數據繞開障礙物。
進一步地,在步驟四中,機器人由室內行走到室外導航地圖範圍內時,微型主機發送請求與機器人上的GPS單元建立通訊,同時在室內導航地圖延伸到室外的範圍內能保證微型主機與GPS單元建立通訊,以將室內導航模式切換到室外的GPS模式,GPS單元獲取定位數據,微型主機接收GPS單元發送的定位數據。
進一步地,在室外建立區域基準站,區域基準站上的GPS接收器接收GPS數據,區域基準站上的微控制單元根據GPS數據和區域基準站的經緯度坐標偏差計算定位修正數,並將定位修正數發送給伺服器,伺服器將定位修正數同步發送給微型主機,微型主機根據GPS單元接收的GPS數據結合定位修正數,以定位機器人在室外的位置。
進一步地,在步驟四中,機器人在室外行走過程中,微型主機的ROS作業系統將攝像頭採集到的室外環境中的物體信息轉換成三維點雲數據,以得到攝像頭相對於空間三維物體的距離,當攝像頭相對於空間三維物體的距離在障礙物範圍內時,通過微處理器改變底座上驅動電機的PWM以控制機器人減速行駛並轉向繞開障礙物。
進一步地,在步驟四中,機器人在室外行走過程中,碰撞檢測單元檢測攝像頭掃描不到的低空障礙物,紅外懸空檢測單元檢測路面是否有深坑,碰撞檢測單元和紅外懸空檢測單元分別將檢測數據通過微處理器發送給微型主機,微型主機內的ROS作業系統根據檢測數據繞開障礙物。
本發明還提供了一種採用所述室內外無縫定位方法的定位系統,包括安裝於機器人上的微型主機、攝像頭和GPS單元,以及安裝於機器人底座上的驅動電機、微處理器、紅外懸空檢測單元和碰撞檢測單元,所述微型主機分別與所述攝像頭、GPS單元和微處理器相連接,所述微處理器分別與所述驅動電機、紅外懸空檢測單元和碰撞檢測單元相連接。
進一步地,所述定位系統還包括區域基準站和伺服器,所述區域基準站上設置有包括GPS接收器和微控制單元,所述GPS接收器與所述微控制單元相連接,所述微控制單無與所述伺服器網絡通訊,所述伺服器與所述微型主機網絡通訊。
與現有技術相比,本發明的有益效果:
1、本發明的機器人從室內行走到室外時,通過室內導航地圖延伸到室外導航地圖的範圍內能確保機器人從室內導航模式切換到室外的GPS模式,以實現機器人從室內到室外導航模式的無縫切換。而當機器人從室外行走到定內時,通過入口處的ar_marker對機器人位置初始化,以重新定位機器人進入室內時的起始位置,保證了機器人不會從室外到室內丟失自己的位置,同時保障重新回到室內能準確的進行室內導航。
2、本發明在室外建立有區域基準站,通過區域基準站上的GPS接收器接收GPS數據,以通過微控制單元根據GPS數據和區域基準站的經緯度坐標偏差計算定位修正數,並將定位修正數發送給伺服器,伺服器將定位修正數同步發送給微型主機,微型主機根據GPS單元接收的GPS數據結合定位修正數,以定位機器人在室外的位置,從而大大提高了機器人在室外的定位精度,以實現更好的室外定位。
3、本發明通過攝像頭結合紅外懸空檢測單元和碰撞檢測單元實現了機器人室內行走和室外行走過程中,機器人有效壁障的功能,提高了機器人行走過程中的安全性。
附圖說明
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本發明實施例的流程圖。
具體實施方式
下面結合附圖對發明進一步說明,但不用來限制本發明的範圍。
實施例
如圖1所示,本發明提供的一種機器人基於ROS和GPS的室內外無縫定位方法,包括如下步驟:
步驟一、微型主機內安裝ROS作業系統,利用ROS作業系統配合點雲算法把採集到的攝像頭環境數據生成二維點雲數據,並利用gmapping框架和粒子濾波算法進行局部優化建立室內導航地圖和由室內向室外延伸一段距離的室外導航地圖,由室內導航地圖和室外導航地圖組成二維導航地圖,並將二維導航地圖保存至微型主機內;
步驟二、由室外到室內的入口處張貼ar_marker,利用攝像頭掃描ar_marker,以獲取ar_marker的ID信息和相對於機器人的姿態信息,同時設定ar_marker在二維導航地圖中的坐標並保存至微型主機內;
步驟三、機器人在室內行走時通過室內導航地圖獲取機器人在室內的位置;
步驟四、機器人由室內行走到室外導航地圖範圍內時,通過室外導航地圖獲取機器人在此範圍內的位置同時在室外導航地圖範圍內能保證室內導航模式切換到室外的GPS模式,使得機器人行走在室外導航地圖範圍外時,通過GPS獲取機器人在室外的位置;
步驟五、機器人由室外行走到室內時,通過攝像頭掃描入口處張貼的ar_marker,識別ar_marker並從微型主機內調取ar_marker的姿態信息和ar_marker在二維導航地圖中的坐標;
步驟六、將ar_marker在二維導航地圖中的坐標初始化為機器人的初始化坐標,並由室外的GPS模式切換到室內導航模式,使得機器人進入室內後通過室內導航地圖獲取機器人在室內的位置。
在步驟三中,機器人在室內行走過程中,微型主機的ROS作業系統將攝像頭採集到的室內環境中的物體信息轉換成三維點雲數據,再轉化成二維點雲數據,以得到攝像頭相對於物體的距離,當攝像頭相對於物體的距離在障礙物範圍內時,通過微處理器改變底座上驅動電機的PWM以控制機器人減速行駛並轉向繞開障礙物。
在步驟三中,機器人在室內行走過程中,碰撞檢測單元檢測攝像頭掃描不到的區域是否有低障礙物,紅外懸空檢測單元檢測路面是否有深坑,碰撞檢測單元和紅外懸空檢測單元分別將檢測數據通過微處理器發送給微型主機,微型主機內的ROS作業系統根據檢測數據繞開障礙物。
在步驟四中,機器人由室內行走到室外導航地圖範圍內時,微型主機發送請求與機器人上的GPS單元建立通訊,同時在室內導航地圖延伸到室外的範圍內能保證微型主機與GPS單元建立通訊,以將室內導航模式切換到室外的GPS模式,GPS單元獲取定位數據,微型主機接收GPS單元發送的定位數據。
在室外建立區域基準站,區域基準站上的GPS接收器接收GPS數據,區域基準站上的微控制單元根據GPS數據和區域基準站的經緯度坐標偏差計算定位修正數,並將定位修正數發送給伺服器,伺服器將定位修正數同步發送給微型主機,微型主機根據GPS單元接收的GPS數據結合定位修正數,以定位機器人在室外的位置。
在步驟四中,機器人在室外行走過程中,微型主機的ROS作業系統將攝像頭採集到的室外環境中的物體信息轉換成三維點雲數據,以得到攝像頭相對於空間三維物體的距離,當攝像頭相對於空間三維物體的距離在障礙物範圍內時,通過微處理器改變底座上驅動電機的PWM以控制機器人減速行駛並轉向繞開障礙物。
在步驟四中,機器人在室外行走過程中,碰撞檢測單元檢測攝像頭掃描不到的低空障礙物,紅外懸空檢測單元檢測路面是否有深坑,碰撞檢測單元和紅外懸空檢測單元分別將檢測數據通過微處理器發送給微型主機,微型主機內的ROS作業系統根據檢測數據繞開障礙物。
本發明還提供了一種採用所述室內外無縫定位方法的定位系統,包括安裝於機器人上的微型主機、攝像頭和GPS單元,以及安裝於機器人底座上的驅動電機、微處理器、紅外懸空檢測單元和碰撞檢測單元,所述微型主機分別與所述攝像頭、GPS單元和微處理器相連接,所述微處理器分別與所述驅動電機、紅外懸空檢測單元和碰撞檢測單元相連接。
本發明的所述定位系統還包括區域基準站和伺服器,所述區域基準站上設置有包括GPS接收器和微控制單元,所述GPS接收器與所述微控制單元相連接,所述微控制單無與所述伺服器網絡通訊,所述伺服器與所述微型主機網絡通訊。
本發明的機器人從室內行走到室外時,通過室內導航地圖延伸到室外導航地圖的範圍內能確保機器人從室內導航模式切換到室外的GPS模式,以實現機器人從室內到室外導航模式的無縫切換。而當機器人從室外行走到定內時,通過入口處的ar_marker對機器人位置初始化,以重新定位機器人進入室內時的起始位置,保證了機器人不會從室外到室內丟失自己的位置,同時保障重新回到室內能準確的進行室內導航。
本發明在室外建立有區域基準站,通過區域基準站上的GPS接收器接收GPS數據,以通過微控制單元根據GPS數據和區域基準站的經緯度坐標偏差計算定位修正數,並將定位修正數發送給伺服器,伺服器將定位修正數同步發送給微型主機,微型主機根據GPS單元接收的GPS數據結合定位修正數,以定位機器人在室外的位置,從而大大提高了機器人在室外的定位精度,以實現更好的室外定位。
本發明通過攝像頭結合紅外懸空檢測單元和碰撞檢測單元實現了機器人室內行走和室外行走過程中,機器人有效壁障的功能,提高了機器人行走過程中的安全性。
以上顯示和描述了本發明的基本原理、主要特徵和本發明的優點。本行業的技術人員應該了解,本發明不受上述實施例的限制,上述實施例和說明書中描述的只是說明本發明的原理,在不脫離本發明精神和範圍的前提下本發明還會有各種變化和改進,這些變化和改進都落入要求保護的本發明範圍內。本發明要求保護範圍由所附的權利要求書及其等同物界定。