探査ロボ(rev.3)解説ページ


第5回 落ちないように・・・~克服しろ!センサーと現実のギャップ~

2016/03/04 1:36 に Robo Kirarin が投稿   [ 2016/03/04 1:42 に更新しました ]


黒線のエリアを超えないように動くプログラムに挑戦だ!
うまく作らないとすぐに外に出ちゃうと言うとても難しい課題だぞ!
とりあえずライントレーサーの発想で実装してみたのがこちら
結果・・・即場外!
高速で場外にすっ飛んでいく機体の雄姿
何度も試したが黒線に斜めに突っ込むときは何とかなるけれどまっすぐ直撃したら認識しきれず場外に出てしまう。そんなプログラムになってしまったぞ!
こうなる最大の原因はライントレーサーが判定するのは線、今回のプログラムで判定しなくてはいけないのが領域で有るという点だ!
まずは下の図を見てもらいたい。

ライントレーサーの時には判定したいものとそうでないものの違いがハッキリとしているのに対し、領域の判定をするときはどちらも白!つまりいけない領域に入ってもロボットは気づくことが出来ないのだ

つまり突破口はこの場合ラインセンサーの示す情報を「領域内か領域外か」ではなく、「領域外に出る兆候」と見るところにあるのだ!
これが今回のROBOXが作ったプログラムの作例である!

////////////////////////////////////////////////////////////////////////////ワンポイントアドバイスその1!//////////////////////////////////////////////////////////////////////////////////////
ワープブロックを工夫してオリジナルブロックを作ろう!
特定の動きを多用したい時、何度も書くと面倒&変更したい時大変だと思っているそこの君!
ワープブロックをこんな感じに使って見てはいかが?

ワープブロック後にやりたい動作を入れて元の位置に戻るだけ!
こうするとあとはやらせたい動作が来るところにワープブロックを置くだけで複雑な動きをすることが出来るぞ。
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
ではいざ実践!

YouTube 動画


端的に言うと「ラインセンサーが反応したら0.5秒後退したのちに1秒回転するだけのプログラム」だね
原因がわかると意外と簡単。そんなプログラミングでした

第4回 シグナルブロックでデリバリー音楽隊

2016/02/20 4:42 に Robo Kirarin が投稿   [ 2016/02/23 9:27 に更新しました ]

今日は赤外線マトでもっとアドバンスなことに挑戦したい君必見な小ネタを紹介するぞ!
赤外線マトは以下の信号によって好きな音を出せるんだ
この表に合わせてプログラムを組んでみよう!
/////////////////////////////////////////////////////////////////////////////////ワンポイントアドバイスその1!///////////////////////////////////////////////////////////////////////////////////////////
信号一回分だけ待つには?
信号の送信間隔は混線を防ぐために約0.4秒単位で送ってるんだ。
(攻撃信号はもっと長いよ。その方がゲームが楽しいからね)
だから音を鳴らさない瞬間を作りたかったら信号1回分で0.4秒、2回分で0.7秒位がROBOX調べでは一番自然に聞こえる数値という結果になったよ

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////ワンポイントアドバイスその2!/////////////////////////////////////////////////////////////////////////////////////////////
入力待ちループ
走り続ける車を持ち上げてプログラムを書き込むのにうんざりしてない?
こんな時に役に立つのがこの入力待ちループだ!
このようにループを組めば特定の動作が来るまで次のブロックに行かずそこにとどまることが出来るぞ!
例えば今回の場合はアンコールブロックとしての役割!
他にもライントレースなどの場合はこのブロック構造を使って特定のボタンを押してから発進するようにすれば電源入れるだけで車が走り出すことは無いよね
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

それではいざ実践!!

YouTube 動画

これをうまく使いこなせば隣の部屋で発射した赤外線信号で自分の手元のマトから好きな音楽を鳴らしたり、色々な用途に応用出来るぞ!

第3回 イライラ棒に挑戦しよう!~ストップブロックの面白い使いかた~

2016/02/18 1:51 に Robo Kirarin が投稿   [ 2016/02/18 1:53 に更新しました ]

これが意外と難しい!ラインセンサーとストップブロックを使ったイライラ棒に挑戦だ!

左右端にラインセンサーを設置!
このラジコンのプログラムを作ってラインセンサーが反応するとストップブロックに行くようにするんだ
ストップブロックはその場でプログラムを終了してしまうブロックなんだ。
つまり両端どちらかのラインセンサーが反応したらこのロボットは動かなくなってしまうぞ!
////////////////////////////////////////////////////////////////////////////////////////////注意!//////////////////////////////////////////////////////////////////////////////////////////////////////////
必ずラインセンサーブロックはスタート直後に置くこと!
なぜ?→リモコンの判定後に置くと、もしラインセンサーが反応していてもリモコンを受信していたらそこで分岐してしまうからゲームオーバーにならないぞ
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
黒線に激突!あえなく撃沈!
開始直後のゲームオーバー・・・半分も越えられない雑魚提案者(※このあと他の人がクリアしました)
しきい値30だと乗り上げるだけでゲームオーバーだから20ぐらいの方が良いかも
テープで道をつくらなくても黒いオブジェクトなら設置するだけで障害物にできるからいろいろな遊びに応用できるぞ!
友達とクリアタイムを競ったりしてみては?


このような方法のほかにもストップブロックを使えば自由なゲームを作ることが出来るぞ!
君も自分流の遊び方を見つけてみよう!



第2回 マトの制作小話

2016/02/17 21:46 に Robo Kirarin が投稿   [ 2016/02/18 1:55 に更新しました ]


赤外線マトは第3回で初めて登場したギミックだ!
本体から発射できる赤外線コードに反応して様々なアクションを行うことが出来るぞ
製作メンバーのお気に入りはルーレットと自動作曲だ
ルーレットはLEDの状態をシャッフルして信号を止めてルーレットストップ!全部光らせると・・・な機能
自動作曲はマイコンが即興で音楽を奏でてくれるぞ!
検証1.どれぐらいの距離届くの?
太陽光などの外部からの赤外線量にもよるけれど屋内なら10m以上届かせることが出来るみたいだ
ROBOX調べでは夜の屋内で約20m離れていても受信することも出来たぞ。
検証2.マト当てがしたいけど受信感度が高すぎてマト当てにならない。マト当てをするにはどうすればいい?
この機械は遠隔操作に重点を置いた分かなり赤外線が当たりやすい設計になっているんだ。もしマト当てで狙いをつけて赤外線を当てたいときにはマトの方に目隠しを付けて赤外線が当たりにくいように工夫すればしっかり狙って当てないと命中しないように出来るぞ
















小ネタ1.没機能が存在する
1ボタンと7ボタンをONにした信号をマトに送ってみよう!
「ジキジキチッ!」って音が鳴ると思うけどこの音、実は元々ジャマー信号を受けた時の音として使われていたんだ。元々「見失った敵を探しているときの音」をモチーフにしていたけれど「ジジジジジジって鳴らした方がジャマーっぽいよね」という話になりこの音声はお蔵入り。でも使わないのはもったいないからこっそりと今回のマトの中に収録されているんだ。
実はLEDのイルミネーションパターンの没機能がもう一つ有るんだけど見つけられるかな?特殊機能枠(7ボタンON)に入ってて系3つのボタンをONにするものの中にあるぞ!
モチーフは「波」。制作者曰く引いては打ち寄せる波の動きをLEDで再現したという動きだけど纏めた僕が何の動きか分からず勝手に没にしてしまったと言う経緯を持つ曰く付の機能だ(ああ罪深い!)
(ちなみに第プログラミング回で行ったアップデートでこっそり波感アップしたからもう僕にも波ってわかる動きになってるぞ)
小ネタ2.使われていない謎のマイコン
実はマイコンを実装してしまった今もう見ることはできないんだけどこのマイコンの内側にはもう一つマイコンを付けるスペースが有るんだ
これはリモコンに使われているATtiny13というマイコンを使うか、LPC1114というtiny13より高性能なマイコンを使うかという議論になったから、どちらでも作れるようにとこのような構造にしたんだ。
結局書き込みピンが出ている分アップデートでより多くの機能に対応できて、高性能だから面白い機能をたくさん載せることが出来るLPC1114にしようという話でまとまって今のマトの形になったんだよ。

第1回 リモコン製作小話

2016/02/17 2:22 に Robo Kirarin が投稿   [ 2016/02/17 3:42 に更新しました ]

今回はもの作り教室に来てくれてありがとう!
このたびはカスタム探査ロボrev.3解説ページと称してこのキットで出来るよりハイレベルな遊び方や小ネタを紹介していきたいと思い、このページを開設させていただきました。
第一回はリモコンの製作小話!このキットのリモコンを作るにかけての小ネタを紹介していきたいと思います。
今年度3回に渡ってもの作り教室を行う過程で、リモコンも少しずつバージョンアップを重ねて来たんだ。
一番の課題はやはりこのサイズで作ること!
機能を拡張したい!もう他の部品を乗せるスペースは無いけれど電池ボックスにぴったり収まるこのサイズだけは譲れない!
という問題を解決するために毎回ボタンを検出する方法を変えたりアップグレードを繰り返してきたんだ。

小ネタ1.実は幻の没モデルがある
実はこの3モデルの前に開発したリモコンが有るけれど角がとがってて危険、ボタン同士が離れすぎていて同時押ししにくい、カスタムコードの設定を行うのにドライバーが必要など、まだまだ快適に使うことが出来ないと判断してもう一回作り直したという経緯があるんだ。
第1回のリモコンの左下がrev 1.0ではなくrev 1.2と書いてあるのはその名残。
当時は部品を実装したものもあったけど今回は基板しか見つからなかったからその画像を公開!!
小ネタ2.第3回リモコンにはデバッグモードが存在する
互いにシューティングバトルをしたり、マトを動かしたり色々な遊び方をしてもらったと思うけど実はリモコンの出している信号と本体が出している信号は基本的には同じものなんだ。
今回は4つの0と1を操作して赤外線の受信先を設定してもらったと思うけれど、実は名前を決める0と1がもう一つあってそれをONにすれば機体の撃つ赤外線と同じものをリモコンから出すことが出来るようになるんだ。
普通の方法ではリモコンは4つまでしか設定できなくて、5つ目のビットは常に0になっているんだけれど、僕らがデバッグするために作った特殊モードが有ってこのコマンドを使えばリモコンから機体にジャマ-信号を送ったりマトを操作することが出来るようになるぞ。















小ネタ3.第2回のリモコンは第3回の機体でも使える
第1回から第2回にかけて通信のやり方を変えてしまったから、第1回のリモコンは第2回で使うことが出来なかったけど、第2回と第3回の通信コードは同じだから第3回のリモコンで第2回の機体を、第2回のリモコンで第3回の機体を動かすことが出来るんだ。
ただ、上で紹介したデバッグモードは第3回リモコンで初めて作られたものだから第2回ですることはできないよ。

1-5 of 5