こんにちは。プログラミング クラブ ネットワーク : PCN の原です。
暑い夏休みがスタートしましたね。先日告知したPCN 子供プログラミング コンテストも始まりました。みなさんの"熱い"作品をお待ちしております。応募締め切りは9月3日(日)です。
この連載で作ったpaprikaを使った作品も、もちろんコンテストの対象です(兄弟機 ソビーゴも!)。今回完成させるpaprikaと手旗ゲームをするとか、音楽ならしてダンスさせるとか。こうして例を書いてる大人の僕では思いつかないようなアイデアが実現された作品を、お待ちしています。
ちなみに過去、IchigoJamで作ったロボット・ロボットカーやレゴEV3の応募はありましたが、paprikaは、まだです。今なら、一番を狙えるかも!?
paprikaを完成させよう
さあいよいよpaprika工作完成の回です!
前々回作ったボディと前回作った足回りで、paprikaを構成する2大パーツは完成しました。それにIchigoJam・MapleSyrupをドッキングさせてpaprikaを完成させて、IchigoJam BASIC プログラミングで動かすところまでを進めましょう。
MapleSyrupの準備 (説明書 ページ15。めやす時間 : 10分)
最初にIchigoJamの準備をします。paprikaに同梱されている拡張ボード「MapleSyrup」を合体します。MapleSyrupとは、paprikaの足回りのモーター制御機能をもったモータードライバと呼ばれる電子回路です。これを使うと、IchigoJamからは直接流せない大きな電気を、モーターに流すことが出来るようになります。
MapleSyrupをIchigoJamの上に、亀の子のように載せましょう。MapleSyrupの多数のピンが、すべてIchigoJam上の黒ソケットに一致するように合わせて、ゆっくり、真っ直ぐに押し込みます。押し混み具合としては、写真のように、ビデオコネクタの上に、少し隙間が空いている程度まで入れればOKです。
合体できたらMapleSyrupのジャンパーピン(小指の先ぐらいの四角い黒いパーツ)設定を3箇所行います。まず、付属のジャンパーピンをJ1に取り付けます。次に、J2・J3にあるジャンパーピンを、2-3側(大きなCN3コネクタ側)にセットします。
J1にジャンパーピンをセットすると、paprika電池ボックスからIchigoJam本体にも電源を供給するようになり、paprikaの自律動作が可能になります(代わりに今まで接続していた、マイクロUSB経由の接続を行う時には、J1のジャンパーピンを外す必要があります)。J2・J3のジャンパーピンを2-3側にセットすると、CN5のモーター制御コネクタが使えるようになります(代わりに4つあるサーボモーターの内、2CN6, CN9の2つが使えなくなります)。MapleSyrupに同梱のマニュアルも確認しておきましょう。 なおIchigoJam Tを使う場合には、MapleSyrup同梱のゴム製PS/2端子の保護シートを貼り付ける必要はありません。
ドッキング(説明書 ページ15, 16。めやす時間 : 20分)
さて、いよいよすべてをドッキングさせましょう。説明書にそって、足回りを仕上げて本体をドッキング(この時、電池ボックスに電池を4本いれておくと、後から開けずに進められるので良いかもしれません。電池を入れるときは、電源スイッチがOFFであるか、確認をお忘れなく)。
そして次に、IchigoJam+MapleSyrupを、paprikaの背中にのせます。
次は配線です。Paprikaから出ている、各種配線をMapleSyrupに挿していきます。ちょっと難関なのは、電池ボックスの配線。オレンジ色の出っ張りを下に押しながら、配線を穴の奥まで差し込んで、オレンジ色の出っ張りを離すと固定されます。上手く固定されていれば、引っ張っても線が抜けません。
各種配線も終えて、くるっと前を向かせれば、ついに完成です!!
うまく出来ましたね。お疲れ様でした!!
paprikaを動かす準備と確認
はやる気持ちを抑えながら、動かすための確認を行っていきます。
まず大事なのは、paprikaが不意に動いても大丈夫な広い場所の確保。テーブルの上では落下の危険性もありますので、慣れないうちは、床で動かすと良いかと思います(踏まないように気をつけましょう~)。
次に、paprikaを動かすプログラムを入力するために、キーボードとディスプレイをpaprika上のIchigoJamに繋ぎましょう。これまでと違う点は、電源+マイクロUSBを「つながない」点です。「MapleSyrupの準備」で、paprikaの電池ボックスから電気をとる設定にしているためです。
次に、paprikaの電池ボックスの電源スイッチをONにします。ONにすると、MapleSyrupのLEDが点灯することで確認ができます。2つのLEDが明るく光っていればOKです(1つしか点かない場合は、前述「MapleSyrupの準備」のJ1設定を再度確認してください)。なんか暗いなーって時には、電池が消耗して力が出ていない場合がありますので確認してくださいね(公式オススメは充電式の単3電池)。
最後に、IchigoJamの電源スイッチをスライドしてONしましょう。画面にいつも通りのメッセージが表示されればOKです。
この段階ではpaprikaは、何も動かないのが正常です。なにか問題があった場合は、後述の「トラブルシューティング」を確認してみてください。
paprikaを動かそう! (説明書 ページ18)
では、初めてのpaprikaプログラミングです。まずは左ウデを前後に動かしてみましょう。新しい命令 「PWM」 を使います。前、真ん中、後ろの順番に動かします。
うまく動きましたか? 右ウデも同じように動かせますのでやってみてください(前と後ろを表す数値が逆になります)。ウデを動かす時のポイントは、ウデに使っているサーボモーターの特性を考えること。サーボモーターは指定した角度まで回転する仕組みなので、PWM3,145 の命令をして一度その位置に動くと、その後、同じ PWM3,145 を何度実行してもウデの位置は変わりません。また、180度までが可動範囲なので、ぐるりと一周回すことはしませんよ。
次にpaprikaを移動させてみましょう。移動させる前に必ず覚えてもらいたいのが「F7」キーです。移動を始めると、机から落ちる! とか物にぶつかる! ことにも遭遇。そんな時に「F7」キーを押せば、paprikaは移動を停止してくれるのです。
まずは「F7」キーを押してみましょう。画面にはOUT0と表示されます。この命令によって、paprikaは移動を停止するのです。
では、いつでも止められるようになったので、前に動かしてみましょう。止めたくなったら「F7」キーですよ。
上手く行ったら、旋回させてみましょう。キャタピラをもつpaprika、デコボコしたところでも元気に走り抜けてくれ頼もしいです。
安全に遊ぶための6つの約束 (付属資料)
さて、paprikaで遊び終えた時は、IchigoJamの電源をOFFにして、その後、電池ボックスの電源スイッチをOFFにする順番で、電源を切りましょう。MapleSyrupのLEDが全部消えたら、OKです。LEDが点いたままだと、命令を待ち続けて電池がなくなっちゃいます。
今後も安全に遊ぶために、paprikaに付属のA4資料「安全に遊ぶための6つの約束(注意事項)」を、再度確認しておきましょう。
次回は、paprikaを動かすプログラムを書いてみましょう!
トラブルシューティング
ここまで紹介した操作が、何かうまくいかない。という時には、次のような点を確認してみてください。paprika付属の説明書も参考になると思います。
・電池ボックスの電源スイッチをONにしても、MapleSyrupのLEDがひとつも光らない →電池が4本正しく入っているか、新しい電池を使っているかを確認 →電池ボックスからMapleSyrupへの白黒配線が固定されているか確認
・電池ボックスの電源スイッチをONにしても、MapleSyrupのLEDがひとつしか光らない
→MapleSyrupのジャンパーピンJ1がセットされているかを確認
・IchigoJamの電源スイッチをONにしても、画面になにも表示されない
→IchigoJamとディスプレイの間のビデオケーブルの接続を確認
→IchigoJamとMapleSyrupのドッキングを確認。浮いていないか、刺さっていない金属線がないか
・IchigoJamの電源を入れていないのに、勝手にpaprikaが動き出す
→IchigoJamとMapleSyrupのドッキングを確認。浮いていないか、刺さっていない金属線がないか
→MapleSyrupのジャンパーピンの設定を確認。3つ。
・IchigoJamでpaprikaを動かす命令を出したが、反応しない・少ししか動かかない
→MapleSyrup上のLEDの明るさを確認。明るさが少ない場合は、電池を交換
・ウデが前後ではなく、上下に動く
→ウデを取り付けた時に調整が出来ていない可能性。説明書のページ6,7を再度確認して、サーボホーンの位置を調整する。ちなみに、この連載の第9回[http://news.mynavi.jp/series/primerofprogramming/009/] でも調整方法を紹介しています。
挑戦してみよう
paprikaやソビーゴはダンボールでできたロボットなので、オリジナルの機体に仕上げることができます。少しアレンジや、デコレーションをしてみて、自分だけのpaprikaにしてみましょう。
まとめ
・MapleSyrupは、paprikaのモーターを動かすための拡張ボード
・ウデを動かす命令は PWM。これでウデに内蔵したサーボモーターを制御
・paprikaを移動させる命令は OUT。これで足回りのモーターを制御
・移動を止めたい時の命令は OUT 0。「F7」キーを押しても止まります
挑戦してみよう (前回の答え)
キャタピラを順番に目で追ってみましょう。つなぎ目が分からないぐらいキッチリつながっていれば大丈夫です。抜けているピンなどがあれば、都度直してあげてください。
著者紹介
原 秀一(はら ひでかず)
サーバー・ネットワークが得意なWebシステム系のITプロフェッショナル。福井工業高等専門学校 電子情報工学科、福井大学 情報工学科を卒業。学生時代はプログラミングから逃げ腰だったが、クラウド時代になり35歳から本格的にプログラミングを再開。IchigoJam等を用いたプログラミングを広める団体PCN(プログラミング クラブ ネットワーク)を友人と共に主宰し、主にアフリカ担当としても活動中。