一種創(chuàng)建環(huán)境場景全局坐標方法及系統(tǒng)的制作方法
【技術領域】
[0001]本發(fā)明屬于機器人構建地圖技術領域,尤其涉及一種創(chuàng)建環(huán)境場景全局坐標方法及系統(tǒng)。
【背景技術】
[0002]激光測距儀通過激光掃描測得環(huán)境表面對應點到測量位置的距離,通過對距離和角度可以得到對應點相對激光測距儀的坐標。但激光測距儀的檢測范圍并不是360度,受其掃描范圍的限制,每次掃描都只能獲取場景的一部分數據,為得到場景全局坐標,需要在不同的角度對環(huán)境場景進行掃描。激光掃描儀每次掃描的數據都是環(huán)境場景相對于該掃描位置的局部坐標值,即在不同的掃描位置得到的數據并不在同一個坐標系下?,F(xiàn)有技術需要將不同掃描位置掃描到的數據點集進行匹配來獲得場景全局坐標,計算量較大且不夠準確。
【發(fā)明內容】
[0003]本發(fā)明實施例在于提供一種創(chuàng)建環(huán)境場景全局坐標方法,以解決現(xiàn)有技術在創(chuàng)建場景全局坐標時計算量較大且不夠準確的問題。
[0004]本發(fā)明實施例的第一方面,提供一種創(chuàng)建環(huán)境場景全局坐標方法,應用于包含激光測距儀和機器人的系統(tǒng),所述激光測距儀搭載在所述機器人上,所述方法包括:
[0005]通過所述激光測距儀采集所述機器人在行駛過程中外部環(huán)境相對于所述機器人的局部坐標數據;
[0006]獲取所述機器人的行駛速度和偏移角度,根據所述行駛速度和偏移角度將所述局部坐標數據轉換為全局坐標數據;
[0007]根據所述全局坐標數據創(chuàng)建所述外部環(huán)境的地圖信息。
[0008]本發(fā)明實施例的第二方面,提供一種創(chuàng)建環(huán)境場景全局坐標系統(tǒng),所述系統(tǒng)包括:
[0009]激光測距儀以及機器人,所述激光測距儀搭載在所述機器人上;
[0010]數據采集模塊,用于通過所述激光測距儀采集所述機器人在行駛過程中外部環(huán)境相對于所述機器人的局部坐標數據;
[0011]數據轉換模塊,用于獲取所述機器人的行駛速度和偏移角度,根據所述行駛速度和偏移角度將所述局部坐標數據轉換為全局坐標數據;
[0012]數據處理模塊,用于根據所述全局坐標數據創(chuàng)建所述外部環(huán)境的地圖信息。
[0013]本發(fā)明實施例與現(xiàn)有技術相比存在的有益效果是:本發(fā)明實施例將機器人作為激光測距儀的載體,通過機器人的行使使激光測距儀能夠更全面采集外部環(huán)境的局部坐標數據,并根據機器人的行駛速度和偏移角度將所述局部坐標數據轉換為全局坐標數據,使得數據結果更全面、精確,可以準確的再現(xiàn)二維環(huán)境場景。而且本發(fā)明實施例實現(xiàn)簡單,對硬件要求較低,從而有利于降低產品成本,具有較強的易用性和實用性。
【附圖說明】
[0014]為了更清楚地說明本發(fā)明實施例中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
[0015]圖1是本發(fā)明第一實施例提供的創(chuàng)建環(huán)境場景全局坐標方法所適用的應用場景圖;
[0016]圖2是本發(fā)明第一實施例提供的機器人的示意圖;
[0017]圖3是本發(fā)明第二實施例提供的創(chuàng)建環(huán)境場景全局坐標方法的實現(xiàn)流程圖;
[0018]圖4是本發(fā)明第二實施例提供的機器人行使過程中的示意圖;
[0019]圖5是本發(fā)明第二實施例提供的機器人行使過程中的另一示意圖;
[0020]圖6是本發(fā)明第三實施例提供的創(chuàng)建環(huán)境場景全局坐標系統(tǒng)的組成結構圖。
【具體實施方式】
[0021]為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下結合附圖及實施例,對本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0022]為了說明本發(fā)明所述的技術方案,下面通過具體實施例來進行說明。
[0023]實施例一:
[0024]圖1示出了第一實施例提供的創(chuàng)建環(huán)境場景全局坐標方法所適用的應用場景,為了便于說明,僅示出了與本發(fā)明實施例相關的部分。
[0025]如圖1所示,該應用場景包括激光測距儀1、機器人2以及處理器3,所述激光測距儀I搭載在所述機器人2上,具體的可以是搭載在所述機器人2的擴展板上。示例性的,所述機器人2還配置有兩個前輪、后獨輪、無線網絡模塊及Iinux操作系統(tǒng)等。
[0026]本實施例在啟動機器人2后,設置所述機器人的直行速度、轉彎時的速度(當直線行駛時設置兩個前輪的速度相同;當轉彎時設置兩個前輪中內圈車輪速度為外圈車輪速度的一半)以及初始行駛方向。示例性的,如圖2所示,以機器人2啟動位置作為坐標原點,初始行駛方向為y軸,兩個前輪之間的距離為d,激光測距儀I的掃描角度為(-30°,120° )。
[0027]為了更全面采集外部環(huán)境的數據,將機器人2作為激光測距儀I的載體,通過所述激光測距儀I采集所述機器人2在行駛過程中外部環(huán)境相對于所述機器人2的局部坐標數據。其中,所述激光測距儀I采用非接觸的方式測量預定范圍(5.6m,240°的范圍)內的物體尺寸和位置。
[0028]在本實施例中,處理器3向機器人2發(fā)送控制指令,所述控制指令包含機器人2的行駛方向、行駛速度等,機器人2在接收到所述處理器3發(fā)送的控制指令后,根據所述控制指令中的行駛方向、行駛速度進行行駛。激光測距儀I采集所述機器人2在行駛過程中外部環(huán)境相對于所述機器人2的局部坐標數據,并將所述局部坐標數據發(fā)送給所述機器人2進行存儲,機器人2根據自身的行駛速度和偏移角度將所述局部坐標數據轉換為全局坐標數據,并在所述全局坐標數據達到預設閾值時,所述機器人2暫停N秒(N為大于或等于I的整數),并在暫停的過程中將所述全局坐標數據發(fā)送給所述處理器3,具體的可以是根據TCP/IP協(xié)議將所述全局坐標數據發(fā)送給所述處理器3。
[0029]機器人2在將當前存儲的全局坐標數據發(fā)送給處理器3后,繼續(xù)行駛,循環(huán)執(zhí)行上述數據采集、數據轉換以及數據發(fā)送等步驟,直到所需的外部環(huán)境數據全部采集完或者機器人2接收到處理器3發(fā)送的停止后,激光測距儀I停止數據的采集。處理器3根據接收到的全部的全局坐標數據通過matlab等可視化軟件創(chuàng)建所述外部環(huán)境的地圖信息,以還原外部的二維環(huán)境場景。
[0030]本發(fā)明實施例實現(xiàn)簡單,對硬件要求較低,具有較高的靈活性。而且數據采集全面、準確,使得外部的二維環(huán)境場景可以準確再現(xiàn)。
[0031]實施例二:
[0032]圖3示出了第二實施例提供的創(chuàng)建環(huán)境場景全局坐標方法的實現(xiàn)流程,該方法可應用于圖1所示的應用場景,該方法過程詳述如下:
[0033]在步驟S301中,通過激光測距儀采集機器人在行駛過程中外部環(huán)境相對于所述機器人的局部坐標數據。
[0034]在本實施例中,所述激光測距儀搭載在所述機器人上,具體的可以是搭載在所述機器人的擴展板上。將機器人作為激光測距儀I的載體,通過所述激光測距儀采集所述機器人在行駛過程中外部環(huán)境相對于所述機器人的局部坐標數據。其中,所述激光測距儀采用非接觸的方式測量預定范圍(5.6m,240°的范圍)內的物體尺寸和位置。
[0035]在本實施例中,所述激光測距儀一次掃描682個點,從(-30°,120° )逐個掃描,得到的點再通過角度計算,得到坐標點,公式如下:
[0036]激光測距儀每根線的角度值為:
[0037]angle=(i_(LRF_DATA_NB/2.0-1024/4.0))*360.0/1024.0 ;
[0038]所述682個點中第i點坐標為:
[0039]x=kb_lrf_DistanceData[i]*cos(angle*M_PI/180.0);
[0040]y=kb_lrf_DistanceData[i]*sin(angle*M_PI/180.0);
[0041]其中,kb_lrf_DistanceData[i]是所述激光測距儀到預定范圍內物體的距離,LRF_DATA_NB 值為 682,M_PI 值是 3.14。
[0042]在步驟S302中,獲取所述機器人的行駛速度和偏移角度,根據所述行駛速度和偏移角度將所述局部坐標數據轉換為全局坐標數據。
[0043]具體的是,當所述機器人沿設置的初始方向(例如y軸,如圖4所示)行駛時,激光測距儀掃描范圍變化,激光測距儀每根線的角度不變,X軸坐標的值不變,y軸坐標值發(fā)生變化,轉換到全局坐標數據中第i點坐標為:
[0044]x=kb_lrf_DistanceData[i] X cos (angle XM_PI/180.0);
[0045]y=ch_y+kb_lrf_DistanceData[i] X sin (angle XM_PI/180.0);
[0046]其中,angle=(i_(LRF_DATA_NB/2.0-1024/4.0))X360.0/1024.0,LRF_DATA_NB值為682,ch_y是所述機器人移動的距離(可根據行駛的時間和設置的直行速度獲得),kb_lrf_DistanceData[i]是所述激光測距儀到預定范圍內物體的距離,M_PI為3.14。
[0047]當所述機器人向右轉彎到達(x2,y2)(如圖5所示)時,激光測距儀角度變化為:angle=(1-(LRF_DATA_NB/2.0-1024/4.0))*360.0