主页
产品
应用案例
新闻动态
购买渠道
下载与支持
关于我们
生态合作
联系我们
主页
产品
新闻动态
购买渠道
下载与支持
关于我们
加入我们
联系我们
  • 中文|
  • Eng
  • 关于电机里程计 你都了解清楚了吗?

     

    機(jī)器人想要實(shí)現(xiàn)智能行走,必須依靠自主定位導(dǎo)航技術(shù),自主定位導(dǎo)航包括定位、建圖與路徑規(guī)劃等。在思嵐提供的自主定位導(dǎo)航解決方案中,主要是通過(guò)激光雷達(dá)里程計(jì)的數(shù)據(jù)來(lái)進(jìn)行定位。雖然激光雷達(dá)在一定范圍內(nèi)會(huì)糾正里程計(jì)的誤差,但在某些特殊環(huán)境下(如激光雷達(dá)掃描的有效點(diǎn)較少時(shí)),里程計(jì)的準(zhǔn)備度還是會(huì)影響定位的效果。因此,對(duì)于需要自主定位導(dǎo)航的機(jī)器人而言,電機(jī)里程計(jì)的精準(zhǔn)度,對(duì)機(jī)器人的定位精度也起到了關(guān)鍵作用。

    電機(jī)里程計(jì)

    SDP Mini 里程計(jì)

     

    里程計(jì)的選擇不容忽視

    為了保證里程計(jì)的使用效果,選擇合適的里程計(jì)也是至關(guān)重要的,目前,常用的機(jī)器人底盤(pán)電機(jī)編碼器按實(shí)現(xiàn)原理來(lái)分類,包括光電編碼器及霍爾編碼器;按照其編碼方式分類,包括增量型和絕對(duì)型。
    對(duì)于基于slamware的機(jī)器人底盤(pán)來(lái)說(shuō),里程計(jì)的分辨率需要在1mm以下,且總誤差最多不能超過(guò)5%,如果超過(guò)此數(shù)值,機(jī)器人將無(wú)法正常實(shí)現(xiàn)定位導(dǎo)航的功能。因此,無(wú)論選擇哪種編碼器,必須要達(dá)到其精度的要求??梢詤⒖家韵屡袛喙剑?br /> (2π/每轉(zhuǎn)編碼器脈沖數(shù))×輪子半徑≤0.001米  注:輪子半徑單位為米

     

    系統(tǒng)電機(jī)應(yīng)答流程

    電機(jī)里程計(jì)系統(tǒng)電機(jī)應(yīng)答流程

    (以兩輪差動(dòng)電機(jī)為例)

     

    SLAMWARE Core 每間隔delta時(shí)間,會(huì)向底盤(pán)發(fā)送左右輪的速度,向前為正,向后為負(fù),即SET_BASE_MOTOR(0x40)。底盤(pán)會(huì)回復(fù)此時(shí)的左右輪里程計(jì)的累計(jì)值,即GET_BASE_MOTOR_DATA(0x31)。

    請(qǐng)注意,無(wú)論輪子向前運(yùn)動(dòng)或向后運(yùn)動(dòng),里程計(jì)的度數(shù)均遞增,因?yàn)镾LAMWARE Core在下發(fā)速度時(shí),已經(jīng)區(qū)分了向前還是向后。

    SLAMWARE Core發(fā)送SET_BASE_MOTOR的請(qǐng)求報(bào)文為, 速度的單位為mm/s:

    里程計(jì)代碼示例詳見(jiàn):

    https://wiki.slamtec.com/pages/viewpage.action?pageId=1016369

    那么,對(duì)于里程計(jì)而言,我們?cè)撊绾闻袛嗥涠ㄎ粩?shù)據(jù)是否準(zhǔn)確呢?下面,就要借助可擴(kuò)展的機(jī)器人管理與開(kāi)發(fā)應(yīng)用軟件:Robo Studio

     Robo Studio

    首先,先將準(zhǔn)備工作做好:

    在調(diào)試之前,請(qǐng)找到一處合適測(cè)試的區(qū)域,該區(qū)域需有清晰的邊界,比如,矩形的空房間。安裝好Robo Studio,并連接上機(jī)器人(如SDP Mini)。Robo Studio下載鏈接及在線文檔可至思嵐官網(wǎng)下載安裝。

     

    利用Robo Studio調(diào)試?yán)锍逃?jì)準(zhǔn)確度測(cè)試方法:

    1.將機(jī)器人控制到離一面直墻若干米的位置,面朝直墻,如下圖所示。

     將機(jī)器人控制到離一面直墻若干米的位置,面朝直墻,如下圖所示。

    2.將之前建好的地圖清除掉,點(diǎn)擊清空地圖,此時(shí),機(jī)器人當(dāng)前的區(qū)域會(huì)重建。當(dāng)前區(qū)域重建好之后,可以點(diǎn)擊暫停建圖,停止地圖更新。 最后,可以將暫停定位開(kāi)啟,開(kāi)啟后,將關(guān)閉激光定位,僅用里程計(jì)的數(shù)據(jù)來(lái)定位。

    最后,可以將暫停定位開(kāi)啟,開(kāi)啟后,將關(guān)閉激光定位,僅用里程計(jì)的數(shù)據(jù)來(lái)定位。

    3.控制機(jī)器人向前朝墻運(yùn)動(dòng),觀察激光點(diǎn)是否和墻重合,如果和墻重合,證明里程計(jì)較為準(zhǔn)確;

    如果激光點(diǎn)超出墻,證明底盤(pán)上報(bào)的里程計(jì)數(shù)據(jù)要大于實(shí)際運(yùn)動(dòng)的距離,里程計(jì)偏大。

    如果激光點(diǎn)在墻之內(nèi),證明底盤(pán)上報(bào)的里程計(jì)數(shù)據(jù)要小于實(shí)際運(yùn)動(dòng)的距離,里程計(jì)偏小。

    如果激光點(diǎn)和墻重合,可以繼續(xù)控制機(jī)器人倒退,左右轉(zhuǎn)動(dòng),看看激光點(diǎn)是否和周圍環(huán)境匹配;

     

    相應(yīng)的,以SDP mini為例,里程計(jì)的測(cè)試效果如下:

    1.里程計(jì)數(shù)據(jù)正常(SDP mini 底盤(pán)固件中ODOMETER_EST_PULSE_PER_METER 為原始值)

    2.里程計(jì)數(shù)據(jù)偏大(SDP mini 底盤(pán)固件中ODOMETER_EST_PULSE_PER_METER 小于原始值),視頻中效果為里程計(jì)偏大較多的情況。

    3.里程計(jì)數(shù)據(jù)偏小(SDP mini 底盤(pán)固件中ODOMETER_EST_PULSE_PER_METER 大于原始值),視頻中效果為里程計(jì)偏小較多的情況。

    關(guān)鍵字:电机里程计

    top