Re: The history of "M&Y"

Team "M&Y" and "花鳥風月"
the soliloquy of the father
毎日更新!

CoSpace Rescue 2015 のプログラミングをしてみた その8

2016-01-10 | RoboCup2016

CoSpace Rescue は、オブジェクトを収集し、収集箱に入れる・・・こんな単純なゲームです。

もし、オブジェクトを収集しても、ロボットに搭載できるのは最大6個までです。

ロボットに搭載したオブジェクトをオレンジ色の収集箱に入れると、また6個のオブジェクトを収集できるようになります。

だから・・・オブジェクトの収集、収取箱に入れる を効率良く繰り返すことが高得点につながります。

 

で、普通に考えると、左右のカラーセンサーがオレンジ色になったら収集箱に入ったと判断して、「Deposit」の動作をさせます。

CoSpace Rescue のヒント集である CoSpace Rescue Flashcaed - 4 Feb 2015.pdf にも同様のやり方が書かれています。

 

 

勿論、私もそのようにしていました。

(していました・・・と、過去形で書いたのは、現在はしていないからです。)

 

このやり方でやると・・・

収取箱に入れる(Deposit)ことができないことがあります。

うまくいかない時には・・・せっかく、6個のオブジェクトを収集(搭載)して、ロボットが収集箱に入り、格納(Deposit) の動作をしても、持っているオブジェクトがクリアされません。(勿論、得点も増えません) しかも、Deposit に失敗したことが、プログラム側から判らないので、ロボットは、「搭載したオブジェクトは全て降ろして、身軽になった・・・さあ、新たなオブジェクトを探すぞ!」と意気揚々と収集を再開するのですが・・・せっかく見つけたオブジェクトを取集できなくて、全くの無駄な時間を過ごすことになります。 LoadObjects 変数は、実際に搭載しているオブジェクトの数とは関係なく 0 クリアされてしまいます。 実際に搭載しているオブジェクトの数や種類を示すシステム変数を公開してくれれば良いのに・・・

 

話が、長くなりましたが・・・

しつこく書きますが、収集箱に入ってオブジェクトを格納しようとしても格納できない(Depositに失敗する)場合があるということです。

これには、いくつかのパターンがあり

ロボットが収取箱に入って停止すると

①画面右上の動作ログに  Depsiting・・・ と2行表示されて格納される(Deposit 成功)

②画面右上の動作ログに  Depsiting・・・ と2行表示されたのに格納されない(Deposit 失敗)

③画面右上の動作ログに  Depsiting・・・ と1行だけ表示されて格納されない(Deposit 失敗)

④画面右上の動作ログに  Depsiting・・・ が表示されない(Deposit 失敗)

の4種類があります。

いずれも、収集箱を出ると、LoadObjects 変数は 0 にクリアされているので、プログラム側からは格納に成功したのか失敗したのかは判断できません。

 

で・・・この誤検知(②~④の状態)をどうやって回避するか・・・いろいろやってみたのですが、そう簡単ではありませんでした。要は、プログラム(ロボット)は、左右のカラーセンサーがオレンジだと判断したのに、CsBotは「収集箱に入っていない」と判断している訳です。もう、最初は「CsBotはバカだなぁ」とか、「シンガポールに連絡して文句を言おうか・・・」などと考えていました。

でも、文句を言わなくて良かったです。(笑)

結局、②~④はきちんと左右のカラーセンサーがオレンジ色の上で停止していない・・・ということのようです。

LoadObject の変数は、プログラムから FindObject を発行すれば値が増えて、 Deposit を発行すれば値が0になる・・・単純にそのような動きでした。だから、オブジェクトの無いところでも値が増えて、収集箱でないところでも0になります。

じゃあ、どうすればよいか・・・単純にロボットを完全にオレンジの領域に入れれば、文句なく CsBot が収集箱に格納したと判断してくれます。

 

さて、どうしますかねぇ・・・(笑)

 

要は、収集箱の(最低)30cm×30cmの領域にロボットが完全に入っていれば CsBot も文句を言わずに、格納してくれます。じゃあ、どうやって、ロボットを完全にオレンジ色の領域にいれるのか・・・

これも、発想の転換が必要かと・・・レスキューラインの考えよりもレスキューメイズの方が近いかも・・・(普通にCoSpace Rescue のプログラムの常識なのかもしれませんが)自分自身で思いついた時には「なんだ、こんな単純なことか・・・」と笑っちゃいました。

(Stage2限定ですが・・・)

コメント (4)
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

分解・・・してみた

2016-01-10 | ブログ

先日、ヤフオクで手に入れた古い時計を分解してみました。

 

まず、全体の写真です。

 

 

文字盤のアップ

長針と短針を外すのですが・・・これまでに見たこともない形状です。ピンで留めてあるようなので、ピンを外します。

 

 

長針と短針が外れました。

 

 

今度は文字盤を取り外します。

 

 

文字盤を外すと、ムーブメントが出てきました。

 

 

振り子室の様子・・・精工舎と書かれています。

 

 

ムーブメントを取り出して、油を注します。

 

 

ムーブメントの裏側です。

 

 

さて、油を注したら元に戻します。

心なしか・・・コチコチ音が静かになりました。

まだまだ使えそうです。

文字盤だけ、いつか自分で作成して取り換えたいです。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする