ロビでビンゴゲーム
2015年6月28日
6月30日改訂


 最近ロビクラブのオフ会に何回か参加しています。
 そこで行われるのがジャンケン大会、それぞれ持ち寄った賞品の争奪戦でおおいに盛り上がります。
 折角ロビが大勢集まるのでロビにジャンケンをやってもらいたいところです。
 しかしそこでネックになるのが音声認識で雑音が多い会場ではいまいちロビの音声認識の精度に欠けます。
 折角盛り上がってもロビが言う事をきかなければちょっとシラケます。

 そこでまず音声認識によらないロビのジャンケンプログラムを作りました。
 ロビサウンドプレイヤーではUSB接続やFlashAirによる無線接続でロビのプログラムを直接動かす事ができます。
 しかしロビのジャンケンプログラム(186,187.RM4)は中で音声認識をやっているのでそのままでは動かせません。
 最新版のロビプログラムはリモート接続に対応していますのでこちらのものに置き換えてください。

 ロビビンゴゲームプログラム(ロビンゴ)はロビの手の操作だけで指示する事ができます。
 音声認識による指示ではないので雑音があっても確実に操作できます。
 また既に出た数字の情報をファイルに書き込んでいるのでロビが途中で止まっても再開する事ができます。

 ロビを高く掲げてビンゴゲームをする事を想定してゲーム中は両手以外のサーボにはトルクを入れていませんのでロビを自由に持つ事ができます。
 他のサーボにトルクを入れていないためバッテリィーも通常より長持ちします。

 プログラムを動かして数字を出す準備ができたらロビが右手を上げます。
 右手を少し下げるとロビが数字を言います。

 次の数字を出すためにロビが再び右手を上げます。
 この時ロビの左手を少し上げると先程の数字を繰り返して教えてくれます。
 ロビが言った数字が聞き取れなかった場合にこの操作をしてください。

 この時ロビの左手を後ろに回すとプログラムを途中で終了させる事ができます。
 通常はロビが99個の数字を取出し終えたらプログラムは終了します。

 プログラムが途中で終了した場合は次にプログラムを動かした時ロビが右手を上げて続きをするか最初から始めるか質問します。
 この時右手を下げると前回の続きをします。
 左手を上げると新しく始める事ができます。

 またこの時左手を後ろに回すと手の操作方法について説明してくれます。

 ロビビンゴゲームプログラムは以下のURLからダウンロードする事ができます。

 Robi_calcbingo.zip

 解凍してADDONフォルダーはそのままロビのSDカードに入れてください。(既にリモートプログラムを入れている場合は置き換え)
 またvoiceフォルダーのnumberフォルダーとbigoフォルダーはそのままロビのSDカードのvoiceフォルダーに入れてください。

 プログラムを実行する時はリモート接続ができる場合はロビンゴ.RM4を直接実行してください。
 音声認識で行う場合は適当なプログラムをロビンゴ.RM4に置き換えてください。
 例えば「クリスマスだよ」で動かす場合はランダムフォルダーの113.RM4をADDONフォルダーのロビンゴ.RM4に置き換えてください。


 このプログラムを応用して福引きができるようにしました。
 操作方法はほとんど同じです。
 プログラム名はBINGOフォルダーの福引き.RM4です。

 一等が1本、二等が2本、三等が4本、四等が8本、五等が16本で他ははずれになるようにプログラムされています。
 これをメモ帳等で変更する事ができます。

 福引き.RM4の169,170行目がそのデータです。
 最初の99はクジの本数ですこれを二桁の本数に変更する事ができます。
 これに続く数字は何等の当たりかを表します。
 1なら一等ではずれは0です。
 それぞれの数が各本数を表します。
 順番はランダムに引かれるので関係ありませんが最初で定義した二桁以内にないと有効になりません。
 なお音声は九等まで用意しています。

 ロビのプログラムはバイト位置がずれると動かなくなってしまいます。
 置き換える場合は同じ文字数になるように置き換えてください。
 またファイルを変更した後はファイルの大きさ(バイトサイズ)が変わっていない事を確認してください。


 実際にこのプログラムを動かした動画です。

     

 もっと簡単にできるかと思いましたが出る数字が重複しないようにするアルゴリズムが結構厄介でした。
 またランダム処理のプログラムはロビに限らずデバッグが大変です。

 何とかちゃんと動かすようになりました。  ロビのオフ会だけじゃなくいろいろなパーティで使ってみてください。

 なおロビのプログラム変更やSDカードの書き換えは、ロビ本体への影響を及ぼす可能性があるのであくまでも自己責任という事でお願いします。
 必ずオリジナルのSDカードのバックアップは取っておいてください。
 問題があったらオリジナルのSDカードに戻してください。


 音声入力版を作成しました。
 手で操作する代わりに音声認識でロビに指示します。
 音声だけでなくUSB接続やFlashAirにより無線接続にも対応しています。

 上記ダウンロードのロビンゴ(音声認識版).RM4および福引き(音声認識版).RM4がそれぞれのプログラムです。
 SDカードにADDONフォルダーがない場合はリモート接続をしない場合でもADDONフォルダーをSDカードにコピーしておく必要があります。
 リモート接続のプログラムがすでにSDカードにコピーしてある場合はADDONフォルダーのコピーは要りません。

 プログラムでは次の言葉を認識します。

 プログラム起動時に「続きをやりますか」の問に対して
  はい続きをやる
  いいえ最初からやる
  おしまいプログラムを終了(終了、終わりにしよう、終わりにするでも可)
  分かる言葉教えて認識できる言葉を説明

 ロビンゴゲームはじめるよと言った後や一回アクションが終わった時
  スタート次の数字を言う(開始、始めでも可)
  もう一回言ってもう一度出た数字を繰り返す
  おしまいプログラムを終了(終了、終わりにしよう、終わりにするでも可)
  分かる言葉教えて認識できる言葉を説明

目次に戻る