寝れない!そんな夜に思う。

やっぱり、DDRのカウンタの分解能が全然足らない。10msecで切った場合に、速度が10段階程度しかないっていうのは問題だろう。現状のカウンタの分解能はEnd2Endで1800。bit数にして11bit(2048)以下である。こんなものを制御するのは本当に可能なのか?
そもそもの問題があるような気がしてならない。
(以下は不安定系の制御を理解していないodawaraの意見ですから聞き流すのが吉でしょう)原理的にカウンタの分解能がよくないDDR機構(Direct Drive Robot arm)で速度を後退差分から求めているのがおかしい。改善案を挙げてみる。
では、単純に1/10の減速機構を入れてみよう。単純にカウンタの分解能は10倍である。現状、センタからエンドが900程度だから、これが9000となるわけだ。同様に1/5で4500。1/2なら1800(これだと感覚的に厳しいか)Dがきめ細かく効いてくるだろうことが予測できる。
もっと現実的な案を挙げてみよう。速度の算出をカウンタの後退差分ではなく、角加速度計から求めてはどうだろう?今まで"カウンタの分解能"+"20msecの遅れ"があった速度算出アルゴリズムが一気に改善すると思うのだが。
最終的には、今のまま手を入れないならば、PID制御をやっている限り、Pは上げられない、つまり速度は上げられない、という結論になると思います。これは現象として説明可能でしょう。
あ、でも、非線形成分を打ち消すとどうなるのかな?Dが細かくなるから、止まる気もするな。非線形制御はよくわかりません。