欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

機器人打滑的檢測方法和建圖方法及芯片與流程

文檔序號:12930083閱讀:987來源:國知局
機器人打滑的檢測方法和建圖方法及芯片與流程

本發(fā)明涉及機器人領(lǐng)域,具體涉及一種機器人打滑的檢測方法和建圖方法及芯片。



背景技術(shù):

智能掃地機器人在行進清掃的過程中,由于碰到障礙物或者行進在比較潮濕光滑的地面時,輪子容易打滑,此時,輪子上的里程計仍然會把輪子打滑轉(zhuǎn)動的距離計入行進的距離中,從而造成行進距離的誤差,使得機器人在建圖時會引入該誤差,導致構(gòu)建的地圖也存在誤差,地圖不準確。目前,有一種方式是通過比較機器人的驅(qū)動輪和從動輪的速度來判斷是否出現(xiàn)了打滑現(xiàn)象。但是,要獲得從動輪的速度,就需要額外在從動輪上安裝里程計,這樣就會增加機器人的成本。同時,由于從動輪的不可控性(比如懸空空轉(zhuǎn)),采用這種方式判斷機器人是否打滑,會存在誤判的情況,準確性不夠高。



技術(shù)實現(xiàn)要素:

為解決上述問題,本發(fā)明提供了一種機器人打滑的檢測方法和建圖方法及芯片,檢測的準確性相對較高,成本則相對較低。本發(fā)明的具體技術(shù)方案如下:

一種機器人打滑的檢測方法,包括如下步驟:

計算預設(shè)時間內(nèi)兩個驅(qū)動輪所產(chǎn)生的第一角度變化率;

計算陀螺儀在相同的所述預設(shè)時間內(nèi)所產(chǎn)生的第二角度變化率;

確定所述第一角度變化率與所述第二角度變化率的差值為第一差值;

確定所述第一角度變化率的最大誤差值;

確定角速度變化誤差率為所述第一差值與所述最大誤差值的比值;

判斷所述角速度變化誤差率是否大于或者等于預設(shè)值;

如果是,則確定機器人打滑;

如果否,則確定機器人沒有打滑。

進一步地,所述計算預設(shè)時間內(nèi)兩個驅(qū)動輪所產(chǎn)生的第一角度變化率,包括如下步驟:

計算所述兩個驅(qū)動輪在所述預設(shè)時間內(nèi)的行進距離差值;

確定所述兩個驅(qū)動輪之間的寬度;

確定所述兩個驅(qū)動輪在所述預設(shè)時間內(nèi)的行進角度值為所述行進距離差值與所述寬度的比值;

確定所述第一角度變化率為所述行進角度值與所述預設(shè)時間的比值。

進一步地,所述計算所述兩個驅(qū)動輪在所述預設(shè)時間內(nèi)的行進距離差值,包括如下步驟:

根據(jù)當前記錄時間點所檢測到的所述兩個驅(qū)動輪中的第一驅(qū)動輪所行進的第一當前行進距離,和上一記錄時間點所檢測到的第一驅(qū)動輪所行進的第一上一行進距離,計算得出第一驅(qū)動輪所行進的第一距離為所述第一當前行進距離與所述第一上一行進距離的差值;

根據(jù)所述當前記錄時間點所檢測到的所述兩個驅(qū)動輪中的第二驅(qū)動輪所行進的第二當前行進距離,和所述上一記錄時間點所檢測到的第二驅(qū)動輪所行進的第二上一行進距離,計算得出第二驅(qū)動輪所行進的第二距離為所述第二當前行進距離與所述第二上一行進距離的差值;

確定所述行進距離差值為所述第一距離與所述第二距離的差值;

其中,所述當前記錄時間點與所述上一記錄時間點之間的時間間隔為所述預設(shè)時間。

進一步地,所述計算陀螺儀在相同的所述預設(shè)時間內(nèi)所產(chǎn)生的第二角度變化率,包括如下步驟:

根據(jù)當前記錄時間點陀螺儀所檢測到的當前角度,和上一記錄時間點陀螺儀所檢測到的上一角度,計算得出變化角度為所述當前角度與所述上一角度的差值;

確定所述第二角度變化率為所述變化角度和所述預設(shè)時間的比值;

其中,所述當前記錄時間點與所述上一記錄時間點之間的時間間隔為所述預設(shè)時間。

進一步地,所述確定所述第一角度變化率的最大誤差值,包括如下步驟:

確定所述驅(qū)動輪的最大誤差率;

確定所述最大誤差值為所述第一角度變化率與所述最大誤差率的乘積;

其中,所述最大誤差率通過實驗測試得出。

進一步地,所述判斷所述角速度變化誤差率是否大于或者等于預設(shè)值,還包括如下步驟:

根據(jù)連續(xù)n次所確定的所述角速度變化誤差率,判斷每次確定的所述角速度變化誤差率是否都大于或者等于預設(shè)值;

如果每次確定的所述角速度變化誤差率都大于或者等于預設(shè)值,則判斷結(jié)果為是;

如果有一次確定的所述角速度變化誤差率小于預設(shè)值,則判斷結(jié)果為是否;

其中,所述n為大于或者等于2的自然數(shù)。

進一步地,所述預設(shè)值為1。

進一步地,所述預設(shè)時間為10毫秒。

一種機器人的建圖方法,包括如下步驟:

基于上述的機器人打滑的檢測方法,確定機器人打滑時的位置點所在的柵格單元;

標示所述柵格單元為打滑單元。

一種芯片,用于存儲程序,所述程序用于控制機器人執(zhí)行上述的建圖方法。

本發(fā)明通過利用機器人現(xiàn)有的驅(qū)動輪上的里程計、機體內(nèi)的陀螺儀和處理器,來檢測并計算得出兩個驅(qū)動輪在預設(shè)時間內(nèi)所產(chǎn)生的第一角度變化率,陀螺儀在相同的所述預設(shè)時間內(nèi)所產(chǎn)生的第二角度變化率,從而確定了機器人的角速度變化誤差率,最后通過判斷該角速度變化誤差率是否大于或等于預設(shè)值來確定機器人是否打滑。這種機器人打滑的檢測方法和基于該檢測的結(jié)果進行地圖的構(gòu)建,成本相對較低。同時,采用里程計和陀螺儀結(jié)合進行檢測判斷的方式,準確性較高,所構(gòu)建的地圖也比較準確。同理,相應的芯片的性能也會相對較高。

附圖說明

圖1為本發(fā)明所述的機器人結(jié)構(gòu)示意圖。

圖2為本發(fā)明所述的機器人打滑的檢測方法的流程圖。

圖3為本發(fā)明所述的機器人打滑檢測的系統(tǒng)框圖。

圖4為本發(fā)明所述的行進角度值的分析示意圖。

具體實施方式

下面結(jié)合附圖對本發(fā)明的具體實施方式作進一步說明:

掃地機器人,又稱自動打掃機、智能吸塵器等,是智能家用電器的一種,能憑借一定的人工智能,自動在房間內(nèi)完成地板清理工作。一般采用刷掃和真空方式,將地面雜物先吸納進入自身的垃圾收納盒,從而完成地面清理的功能。一般來說,將完成清掃、吸塵、擦地工作的機器人,也統(tǒng)一歸為掃地機器人。掃地機器人的機體10為無線機器,以圓盤型為主。使用充電電池運作,操作方式為遙控或是機器上的操作面板。一般能設(shè)定時間預約打掃,自行充電。機體10上設(shè)有各種傳感器,可檢測行進距離、行進角度、機身狀態(tài)和障礙物等,如碰到墻壁或其他障礙物,會自行轉(zhuǎn)彎,并依不同的設(shè)定,而走不同的路線,有規(guī)劃地清掃地區(qū)。

如圖1所示,本發(fā)明所述機器人包括如下結(jié)構(gòu):帶有第一驅(qū)動輪20和第二驅(qū)動輪30的能夠自主行進的機器人機體10,機器人內(nèi)部裝置有慣性傳感器,包括加速度計和陀螺儀40等,第一驅(qū)動輪20和第二驅(qū)動輪30上設(shè)有用于檢測驅(qū)動輪的行進距離的里程計60(一般是碼盤),以及能夠處理相關(guān)傳感器的參數(shù),并能夠輸出控制信號到執(zhí)行部件的處理器50。

如圖2所示,機器人打滑的檢測方法,包括如下步驟:計算預設(shè)時間內(nèi)兩個驅(qū)動輪所產(chǎn)生的第一角度變化率;計算陀螺儀40在相同的所述預設(shè)時間內(nèi)所產(chǎn)生的第二角度變化率;確定所述第一角度變化率與所述第二角度變化率的差值為第一差值;確定所述第一角度變化率的最大誤差值;確定角速度變化誤差率為所述第一差值與所述最大誤差值的比值;判斷所述角速度變化誤差率是否大于或者等于預設(shè)值;如果是,則確定機器人打滑;如果否,則確定機器人沒有打滑。本發(fā)明所述的檢測方法,通過利用機器人現(xiàn)有的驅(qū)動輪上的里程計60、機體10內(nèi)的陀螺儀40和處理器50(如圖3所示),來檢測并計算得出兩個驅(qū)動輪在預設(shè)時間內(nèi)所產(chǎn)生的第一角度變化率,陀螺儀40在相同的所述預設(shè)時間內(nèi)所產(chǎn)生的第二角度變化率,從而確定了機器人的角速度變化誤差率,最后通過判斷該角速度變化誤差率是否大于或等于預設(shè)值來確定機器人是否打滑。這種機器人打滑的檢測方法,成本相對較低。同時,采用里程計60和陀螺儀40結(jié)合進行檢測判斷的方式,準確性較高。當檢測到機器人是在打滑,則可以記錄打滑數(shù)據(jù),并對機器人的行進數(shù)據(jù)進行修正,從而避免打滑對機器人行進準確性的影響。

優(yōu)選的,所述計算預設(shè)時間內(nèi)兩個驅(qū)動輪所產(chǎn)生的第一角度變化率,包括如下步驟:計算所述兩個驅(qū)動輪在所述預設(shè)時間內(nèi)的行進距離差值;確定所述兩個驅(qū)動輪之間的寬度;確定所述兩個驅(qū)動輪在所述預設(shè)時間內(nèi)的行進角度值為所述行進距離差值與所述寬度的比值;確定所述第一角度變化率為所述行進角度值與所述預設(shè)時間的比值。如圖4所示,如果機器人打滑,則兩個驅(qū)動輪所行進的距離可能不一樣(比如一個驅(qū)動輪打滑,另一個不打滑,或者兩個驅(qū)動輪與地面的摩擦力不一樣等等,這些都會導致驅(qū)動輪打滑產(chǎn)生的輪子轉(zhuǎn)動的圈數(shù)也不一樣,即兩個驅(qū)動輪所行進的距離不一樣),使得機器人會產(chǎn)生一個微小的偏轉(zhuǎn),從而會產(chǎn)生一個微小的弧形的行進軌跡。但是為了便于說明,如圖4所示,將采用直線的形式表示第一驅(qū)動輪20和第二驅(qū)動輪30的行進軌跡,由此產(chǎn)生的誤差在可預期范圍內(nèi)。圖4中,通過里程計60檢測到第一驅(qū)動輪20在預設(shè)時間t內(nèi)行進的距離為l,通過里程計60檢測到第二驅(qū)動輪30在預設(shè)時間內(nèi)行進的距離為r,所以,處理器50在接收到里程計60的檢測數(shù)據(jù)后,計算得出兩個驅(qū)動輪在所述預設(shè)時間內(nèi)的行進距離差值為△l。由于兩個驅(qū)動輪之間的寬度為w,所以計算得出兩個驅(qū)動輪在所述預設(shè)時間內(nèi)的行進角度值為a,a=△l/w,最終,計算得出第一角度變化率為p,p=a/t=△l/(w*t)。通過這種小角度的檢測方法,得出的每個預設(shè)時間段內(nèi)的角度變化率,有利于后續(xù)的角度誤差變化率的計算,能夠提高最終判斷機器人是否打滑的準確性。

優(yōu)選的,所述計算所述兩個驅(qū)動輪在所述預設(shè)時間內(nèi)的行進距離差值,包括如下步驟:根據(jù)當前記錄時間點所檢測到的所述兩個驅(qū)動輪中的第一驅(qū)動輪20所行進的第一當前行進距離,和上一記錄時間點所檢測到的第一驅(qū)動輪20所行進的第一上一行進距離,計算得出第一驅(qū)動輪20所行進的第一距離為所述第一當前行進距離與所述第一上一行進距離的差值;根據(jù)所述當前記錄時間點所檢測到的所述兩個驅(qū)動輪中的第二驅(qū)動輪30所行進的第二當前行進距離,和所述上一記錄時間點所檢測到的第二驅(qū)動輪30所行進的第二上一行進距離,計算得出第二驅(qū)動輪30所行進的第二距離為所述第二當前行進距離與所述第二上一行進距離的差值;確定所述行進距離差值為所述第一距離與所述第二距離的差值。其中,所述當前記錄時間點與所述上一記錄時間點之間的時間間隔為所述預設(shè)時間。通過對每個記錄時間點所檢測到的行進距離進行分析比較,可以得出不同時間段內(nèi)兩個驅(qū)動輪的行進距離差值,為不同時間段內(nèi)的角度變化率提供計算數(shù)據(jù),保證后續(xù)計算角度變化率的準確性。

優(yōu)選的,所述計算陀螺儀40在相同的所述預設(shè)時間內(nèi)所產(chǎn)生的第二角度變化率,包括如下步驟:根據(jù)當前記錄時間點陀螺儀40所檢測到的當前角度,和上一記錄時間點陀螺儀40所檢測到的上一角度,計算得出變化角度為所述當前角度與所述上一角度的差值;確定所述第二角度變化率為所述變化角度和所述預設(shè)時間的比值。其中,所述當前記錄時間點與所述上一記錄時間點之間的時間間隔為所述預設(shè)時間。由于陀螺儀40在角度檢測方面具有較高的準確性,所以,利用機器人內(nèi)部已設(shè)有的陀螺儀40的檢測數(shù)據(jù)計算得出的角度變化率,準確性較高。同時,通過與上述相對應的記錄時間點進行數(shù)據(jù)檢測,可以進行準確的數(shù)據(jù)對比,避免由于對比數(shù)據(jù)出錯而造成的后續(xù)的角度誤差變化率的計算出錯,保證了機器人打滑判斷的準確性。

優(yōu)選的,所述確定所述第一角度變化率的最大誤差值,包括如下步驟:確定所述驅(qū)動輪的最大誤差率;確定所述最大誤差值為所述第一角度變化率與所述最大誤差率的乘積。由于兩個驅(qū)動輪在物理結(jié)構(gòu)上本身會存在誤差,對于相同的物理結(jié)構(gòu),所產(chǎn)生的誤差率非常接近,所以,所述最大誤差率可以通過實驗測試得出最大值,也可以從所測試的多組數(shù)據(jù)中取平均值作為最大誤差率。通過引入最大誤差率來確定第一角度變化率的最大誤差值,可以為后續(xù)的數(shù)據(jù)處理提供準確的依據(jù),避免直接引用有誤差的數(shù)據(jù)所導致的誤判的情況出現(xiàn),提高判斷機器人是否打滑的準確性。

優(yōu)選的,所述判斷所述角速度變化誤差率是否大于或者等于預設(shè)值,還包括如下步驟:根據(jù)連續(xù)n次所確定的所述角速度變化誤差率,判斷每次確定的所述角速度變化誤差率是否都大于或者等于預設(shè)值;如果每次確定的所述角速度變化誤差率都大于或者等于預設(shè)值,則判斷結(jié)果為是;如果有一次確定的所述角速度變化誤差率小于預設(shè)值,則判斷結(jié)果為是否。由于機器人行進的路面情況很復雜,而不同的路面情況又會對機器人的檢測結(jié)果產(chǎn)生不同的影響,所以,僅依靠一次數(shù)據(jù)的檢測和判斷,就確定機器人是否打滑,會存在誤判的情況。應該進行連續(xù)多次的檢測,并對多次的檢測結(jié)果進行分析,只有都滿足的情況下,才能確定是否打滑,這樣得出的結(jié)果才具有更高的準確性。其中,所述n可以根據(jù)具體的情況進行相應的設(shè)置,優(yōu)選的,設(shè)置為大于或者等于2的自然數(shù),最優(yōu)的,設(shè)置為5次,太少了達不到準確的效果,太多了又會浪費計算資源。

優(yōu)選的,確定角速度變化誤差率為所述第一差值與所述最大誤差值的比值。由于每次的第一角度變化率不一樣,得出的最大誤差值也不一樣,也就是說每次的最大誤差值是動態(tài)變化的,如果采用固定的絕對數(shù)值為參考進行判斷,得出的結(jié)果會有較大誤差。本發(fā)明的方法采用的是對比的方式,根據(jù)對比的比值進行判斷,可以得出更準確的結(jié)果。

優(yōu)選的,所述預設(shè)值為1,這樣可以準確地界定第一差值和最大誤差值的關(guān)系,從而根據(jù)對比結(jié)果有效地判斷出機器人是否處于打滑狀態(tài)。

優(yōu)選的,所述預設(shè)時間為10毫秒,當然,也可以不同需求,設(shè)置為其它數(shù)值。設(shè)置為10毫秒是比較合適的,如果時間太長,會影響檢測結(jié)果,時間太短,對傳感器和處理器50的性能要求又會太高。

本發(fā)明所述的機器人的建圖方法,包括如下步驟:基于上述的機器人打滑的檢測方法,確定機器人打滑時的位置點所在的柵格單元;標示所述柵格單元為打滑單元。由于機器人在柵格地圖的構(gòu)建中,需要根據(jù)檢測的情況對柵格單元進行對應的標示,比如,在檢測到障礙物時,把檢測到障礙物的位置點所在的柵格單元標示為障礙單元;在檢測到懸崖時,把檢測到懸崖的位置點所在的柵格單元標示為懸崖單元。由于現(xiàn)有技術(shù)無法準確地檢測到機器人是否打滑,所以,無法準確地對打滑的柵格單元進行標示,導致后續(xù)機器人在依據(jù)該柵格地圖進行導航的過程中,導航進入該打滑區(qū)域,使得行進效率降低,導航效果較差。通過本發(fā)明所述的建圖方法,可以準確地標示出打滑的柵格單元,所構(gòu)建的地圖準確性較高,在后續(xù)的導航過程中,機器人可以避開該打滑區(qū)域,從而提高機器人的行進效率和導航效果。

本發(fā)明所述的芯片,用于存儲程序,所述程序用于控制機器人執(zhí)行上述的建圖方法。由于所述芯片具有較高的建圖準確性,所以,提高了芯片的性能。

以上實施例僅為充分公開而非限制本發(fā)明,凡基于本發(fā)明的創(chuàng)作主旨、未經(jīng)創(chuàng)造性勞動的等效技術(shù)特征的替換,應當視為本申請揭露的范圍。

當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
永和县| 临安市| 安顺市| 香港 | 和硕县| 东乌| 逊克县| 平乐县| 大城县| 铅山县| 乃东县| 固安县| 阳信县| 肥西县| 无棣县| 常熟市| 修武县| 漳浦县| 徐水县| 建平县| 屯昌县| 资讯 | 汤原县| 大厂| 滁州市| 印江| 寿阳县| 定结县| 吉林市| 马边| 乾安县| 鞍山市| 垫江县| 伊宁市| 余庆县| 含山县| 邵阳县| 德清县| 湄潭县| 无为县| 舟山市|