2010年3月末で仕事が終わりになり時間ができたので、3才の孫(男の子)が遊べるおもちゃを作ることにした。動くものに限ると思いあれこれ検討した結果、以前息子用に買ってあったレゴのマインドストームを使うことに決めた。制御は自作することにしてネットでCPUの調査を行い、昔ながらのDIPのパッケージが自作向きなのでPICを使うことにした。 いくつかおもちゃを作成し、自分用のメモを作っておくことにしたがついでなのでブログを作成して公開することにした。 写真と動画を見て笑っていただきたい。 なお、1ページで表示できなくなってきたので、以前のものを見る場合は、このページの最後の「前の投稿」をクリックしてください。
2010年7月19日月曜日
3.0 偽バイク
バイクをつくろうと思いネットでレゴテクニックのバイク(Lego Technic 8291)を購入してあったし、逆立ち2輪車が行き詰ったので、気分転換にバイクを作ることにした。まず説明書通りにダートバイクとチョッパーを作ってみたが、チェーンもついていたりしてけっこう気分が出ているし、手で動かすとエンジンのピストンが動く、など面白い。孫はダートバイクのほうが気に入ったようで、動かしてみたりして遊んでいた。
バイクを立たせることができるかに挑戦する。車輪をモーターで動かし、ハンドルもモーターで動くように車体を作った。ハンドルを切るとボディの重心が左右に移動するので、これでバランスが取れないか試してみる。センサーは逆立ちと同じ超音波を使用。ハンドルを切ると重心が移動するように前輪を作ってみたが、ハンドルを切るとボディが左右に傾くことが発覚、しかも普通に作ると重心の移動と傾きが逆向きになる。重心の移動と傾きが同じ方向になるように前輪を調整してみたが、バイクらしくない形になってしまう。
しかたなく、ハンドルを固定して錘を左右に動かしてバランスをとってみようとした。メカをシンプルにするため、錘を歯車に取り付けて円運動で錘を動かしたところ、錘が左右だけでなく上下に動くので錘の動きがスムーズでなくうまくいかない。
こちらも行き詰ってしまったが、せっかくバイクのボディを作ったので、これを走らせることにした。倒れないように補助輪をつけたので偽バイクとなってしまったが、、、。
コントロールはパナソニックの古いDVDレコーダのリモコンを使うことにした。ネットでリモコンのデータフォーマットを探してみたところすぐに見つかった。次にリモコンの信号を受信する受光素子を探してみたところ、ロームの製品で受光素子とアンプなどが一体になっており、38KHzのキャリアも取り除いてくれてデータがシリアルで出力されるものがあるのを発見。マルツで販売していることもわかり、すぐに調達してきた。
受光素子をボディに取り付ける基板を作成し、ソフトの開発にかかる。今回はやればできることが分かっているので安心して進められた。
ソフトウエア:
メインループでリモコンの信号をチェックし、入力が変化したら処理を行う。リーダー部検出、データ検出、エンドマーク検出を行い、エンドマークが検出されたらデータのコードにしたがって処理を行う。
コントロール:
上下のカーソルキーで前進・後退、決定ボタンで停止、再生ボタンでスピードアップ、停止ボタンでスピードダウンを行う。
左右のカーソルキーでハンドルを左右に動かす。モーターが回り続けないよう、約100msでモーターを停止させる。
孫の反応:
バイクを置いてあるのを見つけると、「バイクやろう」と言ってリモコンを持って動かしている。あまり感動している様子は見えないので、他のしかけも考える必要がありそう。
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿