Trinketで模型用モータを回す(3)
前回に引き続き、RCサーボモータを動かしてみたいと思います。今回もフタバのS3003モータを動かすので、繋ぎ方やTrinketのためのAdafruit_SoftServoについては前回を参照してください。
今回は、RCサーボをボリュームで動かしてみたいと思います。ボリュームは以前の記事で使ったものです。ボリュームを回転させると、分圧された電圧に応じてサーボモータの角度を変えてみたい訳です。
回路は以下のような感じ。まぁ、シンプルですね。
回路図には書き忘れていますが、ボリューム抵抗は10kΩを使っています。Trinketの3V出力に片側を繋いで、反対側はGND、分圧出力を#2ピンに接続しますので、実際、1kΩくらいから100kΩくらいまでだったら特に問題ないはずです。(100Ωでもいけますが、ちょっと電流が大きくなるのでUSBのバス供給電流にあまり優しくないですね)
次は、プログラムですが、今回はこんな感じです。
analogyRead()でボリュームの分圧値を読み取って、これを0〜180°にmap()を使って変換しています。後は、変換後の値をmyServo1.write()で書き出すだけですね。それ以外は、前回とほとんど同じじゃないかな。
こんな感じで用意したプログラムをTrinketに焼いて、動作させた羅こんな感じです。
あんまり精度が良くない感じですが、とりあえず動いたと言った感じでしょうか。
今日はここまで。