前回まで
前回はロボットのソフトウェアをステートマシンとして実装しました。しかし、サーボが小刻みに震えるハンチングに悩まされることとなりました。
ガタツキを抑える
ハンチングを引き起こす原因は色々考えられます。そもそもサーボモータのトルクが足りていない、固定部が振動してしまうなどが考えられます。そこでいくつか対策を講じます。
まずはサーボモータを高トルクのものに取り替えます。幸いにも現在利用しているサーボモータSG90には同一寸法のSG92Rという高トルク版があります。(図1)
これまでこのロボットにはSG90とSG92Rを両方利用していました。より負荷がかかるであろう足首の2つのサーボをSG92Rにしていましたが、残りの3つもSG90からSG92Rにしてしまいます。
次に頭全体の揺れを抑えるパーツを取り付けます。図2のようなパーツを作りました。
このパーツをロボットに取り付けると…
こんな感じになります。(図3)
これで今までより頭全体が振動してしまう現象を抑えられます。あまりピッタリにしすぎず、摩擦による負荷がほとんどない程度に接触しています。
これで実際に歩かせてみると…
こんな感じでハンチングを起こすことはとりあえずなくなりました!しかし全体的に振動しがちなので、そのあたりは改善が必要ですね。
電源について考える
さて次に考えるのは電源です。前回の記事では3.7Vの電池一本でも動作していました。ただどうにもスッキリしないので、きっちり5V供給できるようにします。
現在利用しているのは14500リチウムイオンバッテリーです(図4)。これを2本搭載することを考えます。2本直列につなぐと3.7V x 2で7.4V見込めるはずです。
この7.4Vを5Vに変換してサーボモータとRaspberry Pi Picoに電源供給しようと思います。そのために降圧型DC-DCコンバータを用意しました。(図5)
この記事の執筆タイミングでは私が購入したときと全く同じメーカーのものは在庫切れになっていますが、このあたりが同等のものになるかと思います。
実際にテストしてみます。7.4Vから5V出力に変換してみます。(図6)
出力電圧を調整するにはボリュームのつまみを回します(図7)。レビューにもいくつか書かれていたのですが思っている以上に回さないとなかなか反映されませんでした。最初壊れているのかと思いましたが(笑)回し続けているうちに徐々に調整ができました。
あとは電池とロボットの回路の間に接続してあげれば完了です。(図8)
こうして電源も無事完成しました。次回はより複雑な動作の作成やセンサの搭載を目指します。