どうも、ラジコンサーボは指令通りに動かなくて2足やってられないとおもっていました。
前回、足の軌道を開始点と終着点で関数で補完しようということを展開して、
動画も上げた気がしますが部員の方々は必要性が理解できてないようなのでより具体的に、いかに搭載したのかについて下記します。
まず今回利用された関数の形について議論します。
0~piまでです。
0から1に遷移します。
最初と最後は速度0になります。なのでオーバーシュートなどは回避できるようになります。
これをどう使うかですが、まずは何も考えないで目標値までゆっくり動かしたりします。
0~piというのは単に目標までの時間の単にとして利用するだけなのでどうでもいいです。
でゆっくり1~20までpiで移動するときは
こうなる。開始時も終了時も速度一致。
なんでこれがいやなのかと言うと、急に動き出して急にとまるからである。
誰でもわかると思いますが、自転車こぎ出して走り出した時も止まる時もトップスピードなんて漫画の世界だけですね。
で問題はこれに上の関数をかけます。掛け算。すると
三種類全部表示してます。
1~20は偏差分である0~19について処理してます。
これはどうなるかというと、わかりますね。
掛けただけで、開始値と終了値はおんなじですが途中の経路が変わります。
これの傾きを見ます(普通は第一次導関数を見ますけども、おんなじです)。
はじめはゆるやかーな、斜めです。で途中から直線だった時の傾きぐらいになります(実際はそれより早くなる瞬間がありますね。)でも、開始時の速度を緩やかに動かすことがねらいなので・・・。
ここでみんな「おいちょっとまて」と思う。終了値の速度は?と思う。
だがしかし、1~20~1と動かしたい場合が多いのではないだろうか。
つまり1~20~1(0~pi/2~pi)ということ。
う~ん。あきた。
[0回]
PR