データグローブを作る
ロボットハンドを作る際、参考資料として様々なものを調べている中でぷらぎあさんがロボットハンドを動かしている動画を見つけました。
見てくださいこの滑らかな動き、応答性の高さ、追従精度!
この動画を見たとき、これが自分の目指す理想のロボットハンドだ!と感動したのを覚えています。
この時はデータグローブという言葉も知らないまま、自分もロボットハンドを自分の手に連動できるようにしようと決意しました。
ぷらぎあさんはリープモーションというセンサーで手の動きを測定していましたが、高校生が簡単に手を出せる値段ではありません。他に手段はないかと色々探したところ、曲げセンサーという曲がるほどに抵抗値が変化する特性があり、マイコンで簡単に曲げ具合を測定できるセンサーを見つけました。しかし、これも5本そろえると1万円を超えてしまうので他に方法がないかを調べていると、なんと自作している人がいました。
これならば材料費の数千円で5本以上作れるのでこれで行くことにしました。
また、ロボットハンドから有線で手袋が生えてくるのはダサいし、動かしにくいと思ったので無線化することに。
無線通信は部室に転がっていた一方通行型の無線通信モジュールをつかいました。
曲げセンサー
まず曲げセンサーを自作してみました。
こちらのブログを参考に作りました。これが思っていたよりしっかり曲げ具合を測定できていました。もちろん自作なので精度は悪いし、圧力がかかると反応してしまうし、個体差はひどいし、指を反らしても反応してしまうような代物でしたが、個人で使うだけならば十分な性能を持った曲げセンサーができました。これを手袋の指の背中側に固定し、回路に接続してデータグローブができました。
回路
次に曲げセンサーの値をマイコンで測定するための回路を作りました。
曲げセンサーの抵抗値をテスターで測り、同じくらいの抵抗を図のように接続して完成です。
無線
曲げセンサーの値はarduinoのanalogRead()で測定して、実際の曲げ具合から0~180°に変換します。この値を無線でロボットハンドに送信するプログラムを書きました。
部室に転がっていた無線通信モジュールは315MHzのもので、このブログを参考に書きました。この通信方式は一方向通信で、さらにせいぜい5バイトのデータを送信するだけだったので通信は案外安定していた。電波が届く範囲は数mだが、安いのでお勧め。
とりあえずこれでデータグローブは完成した。実際に通信が成功するまでにまあまあ時間はかかったが、これで自分の手と同期して動かすことが可能になった。
これで動かしてみると想像以上に面白かった。自分の手で操作できることがこんなにも楽しいとは思っていなかったので、これで全身を動かしてみたいと考えています。(資金と時間不足)
ちなみに部活の顧問の先生の前でロボットハンドを動かしていたら、手を握ったタイミングで中指のサーボモーターが壊れて、先生に中指を立ててしまうというアクシデントがあったことは秘密だ。
Discussion
コメントはまだありません。
ログインするとコメントできます!