リモート接続による拡張プログラムの実行方法
2014年11月3日
2014年11月16日改訂


 今回はリモート接続を使ってロビのプログラムを実行する方法を解説します。

 ロビボイスプレイヤーの直接命令機能は音声による操作ではなくリモート接続で直接ロビを動かすことができます。
 しかし認識語をベースにしているため既存のプログラム名に実行するプログラムを割り当てる必要があります。



 音声認識ボードで認識された認識語番号に基づいてロビのプログラムで認識語に対応するプログラムに振り分けています。



 直接命令機能はロビボイスプレイヤーで認識語番号をSDカードのログファイルに書き込んだものをロビのプログラムで同様に処理します。

 ロビの認識語は1〜276まで定義されています。
 拡張プログラムはその番号を900以上に割り付けています。
 既にロビボイスプレイヤーでは901がリモート接続、902がログ採取、903がログ再生に割り付けています。

プログラム番号登録

 まずロビボイスプレイヤーのデータにプログラム番号を登録します。
 ロビボイスプレイヤーのNinshiki.csvというファイルに登録します。

 MicroSoftのExcelがインストールされているパソコンではこのファイルを開くとExcelが立ち上がります。





 サーボログ再生の後に行を挿入します。
 認識語にプログラム名を入力します。
 これはロビボイスプレイヤーで表示されるプログラム名で実際のプログラム名と一致しなくても構いません。

 読みはロビボイスプレイヤーで表示される順番のために入力します。
 数字なので一般の認識語の読み(ひらがな)より前なので最初の方に表示されます。

 ファイル名とIDはこのプログラムに割り当てる番号で911以上を指定してください。(901〜910はリモート接続用プログラムとして予約されています)

 時間はデータとして使用しませんが一応0を指定してください。
 種類は-1を指定してください。
 自動禁止に1を指定してください。(一覧再生で対象から外します)
 直接命令に1を指定してください。(ロビボイスプレイヤーのラジオボタンを直接命令にした時にリストに現れる)

 データが書き終わったら保存してExcelを終了します。
 なおロビボイスプレイヤーを実行する時にこのデータが開かれているとロビボイスプレイヤーがエラーなります。



 Excelで保存する時上記のダイアログが表示された場合は「はい」を答えてください。
 Excelがインストールされていない場合はメモ帳でもこのファイルを編集する事ができます。



 ラジオボタンを特別なモードの直接命令(リモート接続)に切替えると一覧にプログラム名が表示されます。

拡張プログラムの追加

 ロビのプログラムが拡張プログラムを実行するように拡張プログラム.RM4が実行するプログラムをコールする部分を追加します。
 メモ帳で拡張プログラム.txtを開きます。
 このファイルはロビプログラムの直接命令フォルダーに含まれます。



 ログ再生のブロックをコピー&ペーストでコピーします。



 ブロック名を追加するプログラム名(センサーテスト)に変更します。
 比較するプログラム番号をロビボイスプレイヤーに登録したID番号(911)に変更します。
 実行するプログラムファイル名(センサーテスト.RM4)を変更します。
 前のブロックのジャンプ先を追加したブロック名(センサーテスト)に変更します。

 ロビモーションエディタのジャンプアドレスの調整で拡張プログラム.txtを拡張プログラム.RM4に変換します。



 拡張プログラム.RM4とセンサーテスト.RM4をロビのSDカードに転送するとロビボイスプレイヤーで拡張したプログラムを動かす事ができます。

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


 サンプルで使ったセンサーテストプログラムを動かした動画です。

     

 ソースコードはこちらになります。

 ロビモーションエディタのジャンプアドレスの調整でロビプログラムに変換してください。

 またはこちらのRM4形式のものを直接お使いください。
 既存のプログラムと置き換えるとリモート接続でなくて音声認識で動かす事ができます。

目次に戻る