2足歩行ロボット 先ずは作ってみた
レゴでサーボモータをつなぎ、以前の記事に書いたmicro:bitの一体化モジュールで制御する2足歩行ロボットを作ってみました。できるだけ作りやすいメカニズムにするため、4軸制御(体を傾け、交互に軸足で回転して進む)をベースとし、サーボ制御信号は2系統としました。
下は、試作ロボット第1号です。頭に大きな制御部があり、重心が高くなっています。これで動かせるかどうか、試しに作ってみました。
機材と組み立て
制御部分は、micro:bit+拡張ボード他で作った一体化モジュールを使いました。このブログの「micro:bit+モータードライバ+電池 Scratchでも使える一体化モジュールを作ってみました」という記事に書いてあります。黄色の破線の下にリチウム電池が入っており、3.7Vでmicro:bitとモーターを動かしています。今回はScratchで動かしています。
本体部分は、サーボモーター4個をレゴでつないで作りました。2枚上の写真から分かるように、足元の2個のサーボモータにはタイヤが付いていて、残り2個はそれぞれ黄色のビームを傾け、体重移動を行います。
サーボモータは下の写真に示すGeekServo(というのでしょうか?)を使いました。Banggoodなどから購入できます。
制御方法
下は本体部分です。2個のサーボモータはタイヤを回し、残り2個はそれぞれ黄色のビームを傾け、体重移動を行います。先ず体を傾けある程度傾斜すると横に並べた2本の黄色のビームのために片方が浮き上がります。そのときに軸足になったタイヤ側のサーボモータが回転して脚を前に出します。その後傾斜を逆にして反対側の脚を前に出す動作を繰り返します。その際、タイヤ側の2個のサーボには同じ制御信号が伝わり、黄色のビームを動かすサーボモータにも同じ制御信号が与えられます。その理由は、プログラムを楽にしたかったことと、一体化モジュールにサーボ用の出力信号が2系統しか用意されていなかったこともあります(4系統にするには線を増やせばよいだけではりますが)。
プログラミングは、今回は、Scratch3で行いました。下は、そのプログラムです。左傾、左回り、右傾、右回りを繰り返すようにしてあります。なお、重心が高く不安定なため、パラメータはいくつか変更してあります。
下は上のプログラムで動かした様子です。
この後、重心を下げて安定化し、更に前後左右動かせるようにしようと思っています。