全向輪底盤上安裝兩條磁感測器帶用於磁導軌尋跡
如簡圖所示,兩條與y直線相交的黑色線條我們認為是兩條磁檢測感測器帶
向量方法修正車體位置
定義軌道左為負向,軌道右為正向。感測器左檢測為負,右檢測為正;
定義底盤座標係為αβ,軌道座標係為xy,車體與軌道座標系的偏轉角度為θ;
設前感測器檢測為值為pf,後感測器檢測位置為pb,兩感測器距離為l,後感測器與機械人中心點的距離為s(如中心在兩感測器中間,s符號為負,如中心在後感測器後面,s符號為正)。中心點旋轉偏角為θ,橫向偏移為poff。
由幾何關係可得出θ = tan-1((pb-pf)/l)
poff = (-pb/tanθ-s)sinθ
然後通過轉換關係(諸如pid,模糊等方式)將θ 轉換為對應的底盤自旋速度vθ (注意正反轉符號),poff 轉換為對應的磁導軌x軸速度向量voff (注意voff
帶有方向),再分解為建立到車體上的αβ速度座標系voff sinθ 、voff cosθ 。
此外底盤還有沿磁導軌y軸方向的運動速度v,該速度同樣由建立到車體上的αβ速度座標系合成,vsinθ 、vcosθ
則傳遞到電機速度解算函式的速度引數
vβ = -voff sinθ + vcosθ
vα = -voff cosθ - vsinθ
vω = vθ
上面的分析只考慮了底盤實際位置的橫移與旋轉,沒有考慮當前畸變的速度方向的影響,對於車體沿導軌的主速度採用了直接修正的方式去處理,這裡忽略了乙個情況,速度不是瞬變的,車體受慣性仍會沿當前主速度方向運動,這樣即使修正了主速度向量與導軌y方向對齊,但原來偏離了θ'角度的主速度仍會影響車體運動。一般來說θ'會在0到θ之間,要具體求出需要獲取當前各個輪子的速度,然後通過座標換算反求。為了抵消這個原主速度的影響並簡化計算,我們可以在voff上再疊加乙個修正速度,這個速度受上乙個主速度大小和θ影響。
這樣新的voffsum =voff +kvlastsinθ
k為修正係數
這樣修正上面的傳遞到電機速度解算函式的速度引數
vβ = -voffsum sinθ + vcosθ
vα = -voffsum cosθ - vsinθ
vω = vθ
三輪全向輪底盤SLAM挖坑系列 虛擬牆
虛擬牆是在turtlebot2那裡調包出來修改的,主要在rviz上面布置一些虛擬的牆體,並加進去虛擬的雷射,好讓虛擬的牆體也擁有膨脹區域,機械人到達虛擬牆體能夠進行避障。1 安裝好yocs virtual sensor的包,這個包需要安裝比較多的依賴檔案 git clone sudo apt get...
從零開始搭建四輪全向底盤
從零開始搭建四輪全向底盤 機械狗不需要夢想 想搭底盤就自己動手誰便畫了乙個,自己選電機,自己選輪子,聯軸器,車架。電機選用的是步進電機 屌絲乙個 輪子為了滿足全向和低價的條件,選用的是78mm的全向輪 區別於麥克納姆輪 然後自己畫了乙個車架的,用的鋁板,在上面的打了好多螺紋孔為了後續搭第二層,出於機...