[音樂]
[音樂]
各位同學,大家好!歡迎收看機器人學(一)的線上課程,我是林沛群
今天我們繼續軌跡規劃這個部分的内容,那在上一次的課程 裡面,我們教了各位同學如何用
cubic polynomial 的方式來規劃軌跡 等於說也就是利用三次多項式的方式來規劃軌跡
那因爲它本身是三次的多項式,所以我們所規劃出來的軌跡 基本上都是曲綫的,并沒有直綫的綫段
那但是我們真實在使用手臂的時候,或者說甚至我們人的手在操作的時候 我們常常需要手去走一個直綫的軌跡,所以我們今天要教各位
同學的就是一個能夠產生直綫軌跡的方法 那我們現在可以看到說,假設說我們手的軌跡在空間中是很多
段的直綫,如果每個直綫不是在同一個方向上面 我們的直綫跟直綫之間就會有一個很劇烈的轉折
雖然軌跡本身是連續的,那各位同學也可以發現說在那個轉折點的瞬間
我們需要有很大的加速度,來讓我們本來的運動方向改變
所以等於說這在機器人上是一個不太好的軌跡,因爲真實系統上面 馬達有一定的出力,我們可能沒有辦法在瞬間就產生一個劇烈的改變
所以在這個章節我們所要教的,就是如何在我們所需要的
直綫軌跡的規劃之上,另外再導入所謂的 二次的多項式的方式,讓直綫段跟直綫段的軌跡之間
能夠以二次的曲綫去做一個連接,讓軌跡比較圓滑一點 那我們現在就來看這個投影片上的這個
圖形,我們現在就先假設一個最簡單的狀況,假設它一開始 的位置是在
θ0,它還在時間 t0 的時候,它位置在 θ0
那一開始是靜止的,所以等於說等於說我們一開始在這個 t0 時間之前它的位置都沒有改變
那我們假設說我們在某個時間 tf,就是説最後 final 的這個時間點
我們希望這個軌跡,或者說這個轉軸這個自由度動到了 θf 這個位置
然後又保持靜止,那如果說我們中間要以直綫的方式跑上來 各位同學可以看到說,我今天從
t0 到 tf,等於說是以綫性增加的方式跑上來 那軌跡就會從
θ0,慢慢跑到 θf 那在中間這個軌跡是直綫的,那頭尾也是
也是直綫的,那各位同學可以發現說,中間這有一個轉折點 那因爲等於說這個轉折點從這個圖形來看,我們也可以發現說
我們一開始的速度是 0,對不對,我們說速度是軌跡的微分嘛,那我們一開始
速度是 0,但是在我們這個移動的過程,因爲它是時間對未知的
關係,然後它是直綫,所以我們知道說它中間是一個等速度的運動 那就代表說,我們在 t0
的這個時間點,要從速度是 0,瞬間 變成某個速度,所以就知道說中間這個轉折點加速度要趨近於無限大
所以這就是一個,像剛剛講的這不是一個很好的一個軌跡的設計 那我們現在想做的方式就像剛講的,我們今天就在這個轉折點附近
導入一個二次的方程式,就等於說 中間有一個等加速的運動,那可以讓我們從靜止的狀態
經過一個等加速,讓它拉到某個速度之後 然後再等速往前跑,然後到了快接近終點的時候,再一個
等減速的運動,讓它的速度降下來,然後就會讓它慢慢地到靜止
那從這個新的軌跡來看,我們就知道說它基本上
雖然說頭尾跟中間都是三段的直綫,可是中間的轉折部分就有被圓滑化
所以這就等於說,我們就可以看到說在這樣的設計之下,它就符合我們所謂的 smooth
方式的定義,就等於說它自己的位置跟速度上,它都是連續的
那我們等一下就來慢慢看說,這個要怎麽去做進一步的延伸。
那我們現在就來看說 我們今天如何在一個頭尾是速度是
0 中間原本是規劃一個直綫段等速軌跡
的這個設定上面,來加上頭尾的二次項去做一個圓滑,那我們現在等於說
我們原本的軌跡是這裡的藍綫的部分,可以看到說頭尾速度是 0,中間是
直綫,我們改良之後的軌跡是中間的變成 是綠綫的部分,等於說時間從
t0 等於 0 開始 到時間所謂的 tb,是一個二次
多項式的軌跡,就是我這裡畫出直道的這一段,然後從 tb
到對面的 tf-tb 的這一段是 我們的直綫段,就等於說是等速段,是直綫軌跡
那最後一段也是一樣是保留,一樣 tb 的時間長度的這一段
是一個二次的緩減速的軌跡,那我們這樣的設計等於說 是目前是屬於比較簡單的方式,讓它頭尾是有一點對稱的性質
然後中間保留是直綫等速的運動,那這個是在時間上面的設定 等於說我們從
t0 到 tb 是 二次多項式,tb 到 tf-tb
是一次多項式 所謂的直綫段,從 tf-tb
到 tf 是二次多項式 那在這三段裡面,它的角度就從
θ0 到 θb θb 到,這裡是其實是上面的這個是
θf-θb 中間的這一小段應該跟下面的 θb-θ0
的中間這一段是一樣的 那從這個,因爲是一個對稱的軌跡來看
那我們就知道說,假設我們今天在這個時間的終點,所謂的 th
的位置,就定義成 tf/2,那 t0=0 嘛 所以 tf
是時間的中間點,那它會所到達的 位置,因爲頭尾的軌跡是對稱的,所以它會所到達的位置
也剛好會是 θ0 跟 θf 的一半,剛好也會在中點
那這是我們現在初始的設定,是先寫成這樣子,那我們現在就來仔細看說
這幾段軌跡的方程式要怎麽把它產生出來 首先我們來看直綫的部分
那因爲在直綫的這個段落,它本身是綫性的,對不對,等於說 它在
tb 的時候在 θb,然後在 tf-tb 的時候 它是在,它是在
下面上面的這個點,那我們現在可以 其實從一半的角度來抓就可以了,因爲等於說這是一個
直綫的綫段,所以我們直接是用 y 軸上面,它跑了
Δθ 去除上橫軸時間軸上跑了 Δt,就會是它的速度嘛
所以各位同學可以看到說,我們的速度 θ dot 就等於分子是 θh-θb
就等於說我們的 Δθ 是這樣子,除上分母是 th-tb
所以等於說分母是 Δt,是時間,等於說這個就是我們的
我們在等速段的速度大小,那這裡等於說衹是一個簡單的符號表示說它是 也可以想成說它是在
tb 的這個時間點,就要到達了這個速度,那當然說後面整段都一樣,所以等於說
你可以曉得下標是 tb th,或 tf-tb 都可以,它等於說整段都是同一個速度
那這是等速的部分,那我們現在來看 二次多項式,所謂的等加速的部分
那在二次多項式裡面,我們就先看前面 我們知道說二次多項式,這是在國高中
的物理就學過了嘛,等於說我們今天如果是一個等加速運動的話 我們的軌跡方程式就是這樣子,對不對,等於說之前說
d=d0+v0t +1/2at²,在國高中常常這樣講,那我們現在就把它寫成是
θ 的方式來表達 所以我們的 θt 本身就會等於 θ0,初始的角度
加上 θ0 dot 乘上 t,就要來加上這個
一開始有初始速度所產生的位移量,經過時間 t 之後,產生的位移量
那還有是等加速的部分,所以它是 1/2θ double dot
然後再乘上 t²,就等於說這是我們整段的 θt 的軌跡
那這是位移的,那速度也跟之前一樣,就等於說 v= v0+at
嘛,之前是這樣講,那在這裡就變成是 θ dot 就等於 θ0 dot,加上 θ
double dot t 就等於說中間 θ0 dot 就是我們的,θ double dot 就是我們的
a 所以這是我們的二次項的速度式 那我們這裡有一個條件可以代入的是說
我們今天二次項,在跑到這個二次項的 最後的一個時間點,所謂的
tb 的時候,它應該會要 存在著某個速度,那這個速度根據上面這個公式
替代 tb 進去之後,我們就發現說它就會得到 θ
double dot 乘上 tb,因爲一開始的速度是 0,所以這個 θ0 dot
在我們的這個 case下面它等於 0,所以我們的 θ dot 在 tb 的這個時間點,
它就會等於 θ dot tb,那這個 θ dot tb
是從 二次所謂的等加速的式子算出來的,那各位同學也發現說,
剛剛的 θ dot tb 是從一次式的位置去算出來,
那如果說我們今天一次式跟二次式的轉換過程中,我們希望 它是 smooth
的,這代表說它這兩個速度要相同,这样等于说才會說我們到了時間 tb
之後, 已經到了某個速度,然後之後接到一次式的線段,它得保持這個速度往下跑,
所以等于说我們現在要做的事情,就是把第一個式子跟第二個式子 去做一個等號的動作,做這個等號的動作之後,我們
就可以進行進一步的去求解說,我們的加速度應該要多少。
好,那這個就是像剛剛講的,這是我們今天 2 跟
1 相等了之後, 我們就會左側的這個 θ double
dot 乘上 tb 這個是由等加速的式子來的。
那它等於 θ dot tb,那在那 等速線段的式子是這個,剛剛也講了
θ 去減 tb,抱歉 θh-θb 除上 th-tb,好,這個是
等速部分的速度,那等速部分的速度,我們今天再把 θh
跟 th 換成我們原本的已知條件,就等於說我們原本已知條件是頭尾的
角度跟頭尾的時間,把它換過來之後,再做一個整理, 那最後我們這個方程式,我們就可以去求解。
我們最後可以寫成像這樣子,所以它等於說是可以把它寫成是一個 t 的二次方程式。
那 t 的二次方程式,它裏面的前面的系數 就有 θ double
dot 然後有 θ θ double dot 跟 θf 減
θ0 就是等於說有角度跟角加速度的條件,
那我們今天在這個二次多項式之下,我們就可以去求解出來說, 我們今天
tb 應該是什麼?就等於說我們可以算出說,
我們在某個加速度的條件之下,大概需要多少的時間? 我們可以把二次式跟一次式去做一個圓滑的一個切換。
所以我們這裡就解出了一個 tb 出來,就解出了一個 tb 出來,那今天這個解出來的
tb,由於它是二次式去求解出來的,它有一個根號, 就代表說它本身裏面是有一個判別式。
那我們也知道說如果判別式裏面是負的數字, 那這個判別式開根號之後,就會讓我們有一個虛部,那有一個虛部的話,這等於說這個
tb 是時間, 在物理上就有點不太能夠做個對應,所以等於說我們今天就發現說,今天這個時間
跟它的加速度是有一些特定的關係,我們的時間才求解的出來。
那我們現在就來看像這樣子,就是像剛剛講的
我們希望判別式裏面要是正數或是零,我們才算得出這個 tb
來, 那判別式裏面的這個東西,它如果要是正的
間接代表了我的加速度有一個下限值, 就等於說我的 θ double
dot 有一個下限值,但它必須比 四倍的所要移動的角度除上時間的平方要大,
所以等於說今天這個關係式是像下面這樣寫的,等於說我們的 θ double dot 會有一個下限,
我們等一下會來解釋說這個是怎麼來的?各位同學可以先仔細想一下這一頁說,我們一路- 上的過程
想做的就是說,我今天在有某個加速度的狀況下面, 我可以求出一個
tb,那這個 tb 求出來之後, 可以讓我的軌跡從一開始的二次
等於說從靜止開始慢慢加速到某個速度之後,在 tb 的這個時間點
切換為一次的軌跡,然後就等於說它就以保持的這個速度往前跑, 然後這個
tb 算出來的這個二次跟一次的軌跡,可以確保說它的速度在這個轉折點是相同的, 所以軌跡就會是圓滑的。
那我們也知道說這個代表說我們系統要有一定程度的
加速度,我們才有辦法去做這個圓滑的轉換,那我們現在就來看說這個加速度的這個條件
要怎麼去更進一步的從幾何,或是從代數的角度去做一個判別?