這學習過程跌跌撞撞,尤其是cos、sin等等角度與象限整合的矩陣運算,真令人頭昏腦漲的搞不清楚,實在沮喪~~
還好,從Google search中找到前人的智慧與分享,終於打通任督二脈,趕快記下來!!
先分享Spider robot在3軸旋轉的動作,好有趣~
這是我手寫的旋轉矩陣,
先分享Spider robot在3軸旋轉的動作,好有趣~
《這個版本身體與腳會分開,做的不是很好》
《修正版》
這是我手寫的旋轉矩陣,
首先,找到用LibreOffice可以輸入數學公式。
在Writer中點選「插入/物件/公式」後,
輸入數學式子原始碼:
left [ matrix{(X_2-X_1)#(Y_2-Y_1)#(Z_2-Z_1)##(X_3-X_2)#(Y_3-Y_2)#(Z_3-Z_2)##(X_1-X_3)#(Y_1-Y_3)#(Z_1-Z_3)} right] left ( matrix{ X##Y##Z} right) = left ( matrix{ L_1^2-L_2^2+R_2^2-R_1^2##L_2^2-L_3^2 +R_3^2-R_2^2##L_3^2-L_1^2 +R_1^2-R_3^2} right)
呵呵,就出現這個矩陣,就是我要的!!
那就寫個旋轉矩陣試試,對X/Y/Z軸旋轉矩陣為-
其中,我卡在對Y軸旋轉的矩陣好幾天,後來在可汗學院找到這課程,如同打開神秘大門,讃!Rotation in R3 around the x-axis
然後,把這3個矩陣整合成為3D旋轉矩陣!
我竟然可以做出這矩陣,太帥了!!
source code如下:
left [ matrix{X_1##Y_1##Z_1} right] = [R_x*R_y*R_z]left[ matrix{X##Y##Z}right ] = left[ matrix{cos%beta#0#sin%beta##sin%alpha Sin%beta#cos%alpha#-sin%alpha cos%beta##-cos%alpha Sin%beta#sin%alpha#cos%alpha cos%beta}right ]left [ matrix{ cos%gamma#-sin%gamma#0##sin%gamma#cos%gamma#0##0#0#1} right] left[ matrix{X##Y##Z}right] newline %= left[ matrix{cos%beta cos%gamma#-cos%beta sin%gamma#sin%beta##sin%alpha sin%beta cos%gamma+cos%alpha sin%gamma#-sin%alpha sin%beta sin%gamma+cos%alpha cos%gamma# -sin%alpha cos%beta##-cos%alpha sin%beta cos%gamma + sin%alpha sin%gamma#cos%alpha sin%beta sin%gamma+sin%alpha cos%gamma#cos%alpha cos%beta}right ]left[ matrix{X##Y##Z}right ]
參考資料:
Hi Regishsu,我也正在做四足,现在正在设计外形和找合适的算法,你背后屏幕上的模拟软件是什么?还有视频里面XY旋转是不是有误?
回覆刪除用Vpython寫的。
刪除不確定你說XY旋轉的問題,open source here - http://www.instructables.com/id/vPython-Spider-Robot-simulator/
Hi Regis. Do you have plans to publish models modified for MG90s servos?
回覆刪除Hello, I 've wonder whether the Ry(Beta) is incorrect because i saw on wikipedia that the Ry(beta) is different
回覆刪除