我正在研究機器人項目的一些軌跡生成。它在步態週期內上下移動機器人的軀幹。在MATLAB中創建2點(緩動)之間的S曲線
當我改變軀幹的設定值時,我使用linspace()
在當前位置和所需位置之間創建一條直線。不過,我想減輕線的開始和結束。我想要創建一個S曲線,以防止線路開始和結束時的衝擊。
我曾看過使用sigmoid函數sigmf(x,[a c])
,但我不知道依賴關係是a
和c
變量關於2點之間的距離。
如何使用MATLAB在2點之間生成平滑的S曲線以緩解線的端點?
實施例:
我有2點:y = 0.9
和y = 0.3
。我需要創建一個S曲線開始於x=0
,並結束於x=1000
x軸永遠是0
和1000
之間的Y軸總是會內[0 1]
或[1 0]
查看我的回答。對於兩個未知常數a和c,有兩個方程。爲了讓它們在(x1,y1)和(x2,y2)之間平滑過渡,解決這個問題很容易。 – duffymo