はじめに
個人的な理由で機械人形の制御を手伝うことになりました。そして制御にサーボモータを使うことになりました。他にも選択肢があったかもしれませんが、とりあえず決定です。素人ながらにまとめてみました。
サーボモータとは、位置・速度を制御できるモーターである(wikipedia より)
いろいろな方式があるが、制御線からPWM(Pulse Width Modulation:パルス幅変調)で位置を決めモータを使用した。*連続回転サーボという位置ではなく速度で調整するモータもある。
パルス幅変調パルス波のデューティ比を変化させて変調する方法。(wikipedia より)
電車やエアコンなどモーター関係の速度や回転数の制御ではメジャーな方法。
アナログ方式とデジタル方式があるが。。。
アナログ方式 : 位置精度が悪いが安価 180度まで回転する。
デジタル方式 : 位置精度と保持力が高い 回転角が90度のものある。
メタルギアとプラスチックギア
プラスチックギアの方が安いけど、壊れやすいのでメタルギアのほうがいいです。
ついやってしまうが。。。
モータを手でゴリゴリ動かすと壊れる可能性あり、特に動作で保持中は注意。
- Q結局、どうやって使うの??
- A
信号線のパルス幅を指定して位置を決める。下記図参考。
とりあえず動かした時に作ったり、測定したデータ使ったモータはSG 90 と ASV-15
サーボモータのDuty比の角度に対する値をプロットしたメーカーのデータより計算。
サーボーテスターからのPWMの出力波形をオシロスコープで観測した結果
簡単ですが、サーボモータについてまとめてみました。
ラズベリーパイよりもarduinoなどで制御したほうがPWMの制御がうまくいき、余計なOSが大きい分なのかなと思いました。linuxを搭載しないラズベリーパイpicoでは改善されるとおもいます。制御はマイコンボードのほうが得意なのだと実感しました。






コメント