fc2ブログ

2011-8 第4問 (2)

カルマンフィルタとは、誤差のある離散的な観測値から時間変化するシステムの現在の状態を推定する手法。システムの現在の観測値と1ステップ前の推定値から、システムの現在の状態の推定値と1ステップ先の予測値を与える反復型の予測を行う。
カルマンフィルタは各ステップごとに予測と更新の二つを行う。予測では前ステップの推定値から現在の推定状態を計算し、更新では現在の観測値を利用して推定値を補正してより正確な値に近づける。

2011-8 第4問 (1)

フィードバック制御は、連続動作するシステムにおいて、前回の入力に対する出力を入力要素の一つとすることで、より精密な出力を得る手法。制御を乱す外的要因(外乱)による影響を自動的に修正できるが、外乱による影響を検出してからでないと修正ができないという欠点が存在する。
フィードフォワード制御は、外乱による影響が現れる前に外乱を検知して修正を行う制御方式。対象となる外乱の影響を最小限にできるが、予期しない外乱に弱く、また一定の状態を維持するといったことができない。
そのため、通常はフィードバック制御とフィードフォワード制御を併用する。

2011-8 第3問 (5)

wx = hx - l3coshθ
wy = hy - l3sinhθ

なので、(wx, wy) ≠ (0, 0) のとき、
(3)で示した手続きによりθ1およびθ2を求めることができる。

このとき、θ3 = hθ - θ1 - θ2 より、
残りのθ3も求めることができる。

また、(wx, wy) = (0, 0)のとき、
θ1およびθ2は一意に決まらない。

2011-8 第3問 (4)

hθ = θ1 + θ2 + θ3
hx = wx + l3coshθ = l1cosθ1 + l2cos(θ1 + θ2) + l3cos(θ1 + θ2 + θ3)
hy = wy + l3sinhθ = l1sinθ1 + l2sin(θ1 + θ2) + l3sin(θ1 + θ2 + θ3)

2011-8 第3問 (3)

直線OWとX軸のなす角をθwとし、
lw = sqrt(wx2 + wy2)

余弦定理より、
l22 = l12 + lw2 - 2l1lwcos(θw - θ1)

加法定理より、
l22 = l12 + lw2 - 2l1cosθ1 * lwcosθw - 2l1sinθ1 * lwsinθw

関節Eの座標を(ex, ey)とすると、
l22 = l12 + lw2 - 2exwx - 2eywy
2eywy = l12 - l22 + lw2 - 2exwx

両辺を二乗して、
4ey2wy2 = (l12 - l22 + lw2)2 - 4exwx(l12 - l22 + lw2) + 4ex2wx2

ex2 + ey2 = l12なので、
4wy2l12 - 4ex2wy2 = (l12 - l22 + lw2)2 - 4exwx(l12 - l22 + lw2) + 4ex2wx2

exについて整理して、
4(wx2 + wy2)ex2 - 4wx(l12 - l22 + lw2)ex + (l12 - l22 + lw2)2 - 4wy2l12 = 0

wx2 + wy2 = lw2なので、
4lw2ex2 - 4wx(l12 - l22 + lw2)ex + (l12 - l22 + lw2)2 - 4wy2l12 = 0

この2次方程式の判別式をDxとすると、
Dx/16 = wx2(l12 - l22 + lw2)2 - lw2((l12 - l22 + lw2)2 - 4wy2l12)

展開して整理すると、
Dx/16 = (wx2 - lw2)(l12 - l22 + lw2)2 + 4wy2l12lw2 

wx2 - lw2 = - wy2なので、
Dx/16 = wy2(4l12lw2 - (l12 - l22 + lw2)2

因数分解して、
Dx/16 = wy2(l2 - l1 + lw)(l2 + l1 - lw)(l1 - l2 + lw)(l1 + l2 + lw)

l1 + l2 + lw > 0なので、Dx > 0となるのは
wy ≠ 0 かつ l1 + l2 > lw かつ l1 + lw > l2 かつ l2 + lw > l1のとき、
つまり、
WがX軸上に存在せず、三点OEWが一直線上に並ばないときである。

このとき、DをDx/16 = wy2Dとすると、
ex = (wx(l12 - l22 + lw2) ± wy * sqrt(D)) / 2lw2

ex2 + ey2 = l12より、
ex = (wx(l12 - l22 + lw2) + wy * sqrt(D)) / 2lw2 のとき ey = (wy(l12 - l22 + lw2) - wx * sqrt(D)) / 2lw2
ex = (wx(l12 - l22 + lw2) - wy * sqrt(D)) / 2lw2 のとき ey = (wy(l12 - l22 + lw2) + wx * sqrt(D)) / 2lw2

また、(wx, wy) ≠ (0, 0) で、関節WがX軸上に存在する場合、
ex = wx(l12 - l22 + lw2) / 2lw2 = (l12 - l22 + wx2) / 2wx
ey = ±wx * sqrt(D) / 2lw2 = ±sqrt(D) / 2wx

同様に、(wx, wy) ≠ (0, 0) で、関節WがY軸上に存在する場合、
ex = ±sqrt(D) / 2wy
ey = (l12 - l22 + wy2) / 2wy

また、(wx, wy) ≠ (0, 0)で、三点OEWが一直線上に並ぶ場合、
ex = wx(l12 - l22 + lw2) / 2lw2
ey = wy(l12 - l22 + lw2) / 2lw2

よって、(wx, wy) ≠ (0, 0) のとき、
θ1, θ2はこれらのex, eyを用いて、
θ1 = atan(ey, ex)
θ2 = atan(wy - ey, wx - ex) - θ1
と表せる。

また、(wx, wy) = (0, 0) のとき、
θ1, θ2は一意に決まらない。
プロフィール

phenan

Author:phenan
東大創造情報学専攻を受験予定の学生

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR