MATLABコース:MATLABシンボリック計算10.1ロボットアームの可視化タスク5に関する質問
1 view (last 30 days)
Show older comments
Kei Yamamoto
on 27 Apr 2020
Commented: Kei Yamamoto
on 28 Apr 2020
上記コースにおけるタスク5では、以下のような記載があります
タスクより小さいアームの範囲を可視化するには、 theta2を 0 に設定して fx と fy をプロットします。 hold on と hold off を使用して、このプロットを現在のプロットに追加します。
一方で、ヒントおよび解答には
ヒント
theta1 には必ず 0 を使用し、 theta2 は変更せず theta2 のままにします。プロットの作成前に hold onを使用し、作成後に hold off を使用します。
Task 5
hold on
fplot(fx(0,theta2),fy(0,theta2))
hold off
と記載されています。ヒントおよび解答から、本来theta1に0を代入するのが適当だと考えられますが、タスクにはtheta2を0に設定してと書いてあります。
これは、タスクに間違いがあるのでしょうか、それとも自分に何か理解不足があるのでしょうか?
ここで質問するのが適当か分からなかったのですが、よろしくお願いします。
0 Comments
Accepted Answer
Hiroumi Mita
on 28 Apr 2020
この練習は、SCARA型ロボット 2リンク(長さL1,L2) リンクの回転角theta1,theta2を想定します。
Task2では、以下のようにロボットアームの先端の座標式を表記します。
x=L2*cos(theta1+theta2)+L1*cos(theta1)
y=L2*sin(theta1+theta2)+L1*sin(theta1)
Task3では、以下のようにロボットアームの先端座標x,yをtheta1,theta2の,関数として定義します。
fx(theta1,theta2) = subs(x,[L1 L2],[4 2])
fy(theta1,theta2) = subs(y,[L1 L2],[4 2])
Task4では、theta2=0とすることで、2リンクは、L1+l2=6の長さの1リンクとなり、その可動範囲は
半径6の円であることが示されます。
fplot(fx(theta1,0),fy(theta1,0))
axis equal
Task5では、リンク1を固定した状態でリンク2を回し、その可動範囲を赤で書きます。
hold on
fplot(fx(0,theta2),fy(0,theta2))
hold off
Task6では、z=0平面(xy平面)において、ロボットアームの先端の到達可能範囲を描写します。
さて、以上から、まさに、ご指摘の通りです。
>>本来theta1に0を代入するのが適当だ
これは、タイプミスですので修正するようにします。
ご連絡ありがとうございます。
More Answers (0)
See Also
Categories
Find more on コード生成 in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!