サーボを10ms制御周期で動作させてみる
すいません m(_ _)m、本記事はブログ引越時に書式が崩れました。順次修正中です。
単体テストOK!
部品実装(さすがに32ch分あると、それなりに大変でした)も完了したので、汎用マイコンテスト基板を使ってまずは信号テストの入出力テスト。これまた32ch分あるので結構大変。結果は良好です。サーボ信号の保護抵抗用に1kΩ(ちょっと大きすぎたか?)を入れたので、妙にLEDが暗かったりしますが、スイッチをぱちぱちしながらLEDがチカチカするのを見るのは楽しいです。
写真を見て、あれ?と思われた方もいるかと思いますが、LEDが2個点灯しているのがミソです。パターンを見て気づいている方もいるかもしれませんが、このボードは、「16chは20msで、あとの16chは10msでサーボ制御信号を出す」ためのボードです。
そのため、ATmega128のタイマ1、3(それぞれPWMを3本ずつ出力できる)をフルに使ってドライブします。以前のROBO-ONEで、走りをやっていたときに、なんとなく、10msだったらもうちょっとうまく動きそうな気がしたので、今回は、10msで試してみようと思っています。
10msでの動作テスト
さっそく、プログラムを作成し(なんだかんだと一週間かかりましたけど)、手持ちの各社サーボをフル動員させてチェックしてみました。なんだか結線が大変な事になっていますが、まあ、接続するものも多いのでやむを得ません。
気になる結果ですが、どのサーボにしてもスペック外なので、参考値ということでお願いします。そんなわけで、伏字で行きます。写真から察してください(^_^;。順番は、写真の上の方からです。
- H社ロボットサーボ(雑誌の付録)
問題なく動作。でも、この写真のように動作させていると、HSR-8498HBを動かしたときに、JRサーボがわずかにぴくぴくします。 - P社J社系小型サーボ
問題なく動作。 - J社標準サイズサーボ
問題なく動作。 - G社安くてトルクのあるアナログサーボ
電源を入れると激しく振動。しないときもあるけど。サーボ指示値を変えているうちに、パタっとまともな動作になります。 - K社6V仕様の某ロボットキットに採用されているサーボ
問題なく動作。しかし、20msで制御しているときと比べると、制御音がうるさいです。 - P社J社系標準サイズサーボ(V社設計のロボットキットにも…)
問題なく動作。 - G社安くてメタルギアな小型サーボ
問題なく動作。でも15msぐらいが一番トルクがでる、というウワサもあり、アナログサーボが故、トルクへの影響が出ているかどうか?というあたりが心配。
RoboShellのCPLDのサイクルを8→4にすれば、実現できそうな気がします。
早いところ、RTLも公開するようにします。