プログラムによる自動操作


 IRACSはプログラムで自動運転を行う事ができます。  プログラムは簡単なコマンドの組み合わせにより自分で作成する事ができます。
 プログラムの作成を行うにはツールバーのアイコンを押してください。下図の画面に切り替わります。
 コントローラが接続されていない場合は、シミュレーション操作でプログラムを実行する事ができます。



 IRACSをはじめて動かした時はサンプルプログラムを読み込んでいますので新しいプログラムを作成する場合はで現在読み込んでいるプログラムを消してください。
 画面の左端の縦のツールバーで動作を定義するコマンドを追加してプログラムを作っていきます。  追加されたコマンドはから順に実行されていきます。  は位置を指定するコマンドで車をその位置に移動させてカメラで検出した車の位置がその付近に来るまでプログラムの動作を止めます。
 例えばカメラの中央で車を止めたい場合はこのコマンドに続いて車を停止するコマンドを続けます。
 ツールバーのアイコンを押すとカーソル(緑枠)が示すコマンドの後に入れられます。画面のコマンドをクリックするとカーソルが切り替えられます。


・コマンドの一覧

  自動運転開始
 このコマンドIRACSが自動的に作成するので削除したり変更する事はできません。

  タイマーの設定
 セットした時間、プログラムが止まり、時間が経過したら次のコマンドに移ります。

  車制御コマンド
 車の前進、後進、停止を行います。ターボを指定するとスピードを上げて前進または後進します。
 前進と後進は移動距離が指定できます。指定した距離(ドット数)を移動したら次のコマンドに移ります。距離を指定しない(0を指定)場合は車の制御した直後に次のコマンドに移ります。

  ハンドル制御コマンド
 車の左折、右折、直進を行います。旋回を指定すると車はその場で旋回します。旋回を指定した時は旋回する回転数を指定してください。
 旋回を指定しない時は左折または右折するときの角度が指定できます。車が指定した角度の方向が変わったら移動したら次のコマンドに移ります。角度や回転数を指定しない(0を指定)場合は車の制御した直後に次のコマンドに移ります。

  車位置の設定
 車は指定した位置に移動します(範囲外の場合を除く)。車がその位置の付近に来たら次のコマンドに移ります。位置の設定はカメラの中央など決められた位置の他、画面上の任意の位置を設定する事ができます。

  繰返しの設定
 繰り返す回数を設定する事ができます。指定した分の繰返しが終わったら次のコマンドに移ります。

  サウンド制御コマンド
 サウンドを鳴らしたり止めたりします。サウンドの種類はサンプルをいくつか用意していますが、自分のサウンドファイルを定義する事ができます。  2つ以上のサウンドを同時に再生する事ができます。

  ボール認識の設定
 画像認識でボールの位置を検出して車をボールの追従や回避を開始したり終了します。車がその位置の付近に来たら次のコマンドに移ります。(設定によっては直ちに次のコマンドに移る事ができます)

  自動運転終了
 自動運転を終了します。このコマンドは最後のコマンドの後にしか追加できません。


・タイマーの設定 

 新規にこのコマンドを追加したり編集すると下記のダイアログが表示されます。タイマーの時間を秒と1/10秒(100ミリ秒)で設定してください。
 タイマーには自動運転開始と同時に動き出すものとプログラムの途中で動き出すものの2種類があります。
 先頭にある場合は、自動運転開始と同時に動き出します。  他のコマンドに続く場合は、そのコマンドが終了した後でタイマーが動き出します。


・車制御コマンド 

 新規にこのコマンドを追加したり編集すると下記のダイアログが表示されます。車の制御をラジオボタンで設定してください。
 ターボをチェックするとスピードを上げて前進または後進します。
 距離を定義すると定義した距離を移動しないと次のコマンドには移りません。  距離はレイアウトの座標の単位で指定します。(レイアウトの大きさは640×480)
 距離に0を指定すると車の制御をした後、直ちに次のコマンドに移ります。


・ハンドル制御コマンド 

 新規にこのコマンドを追加したり編集すると下記のダイアログが表示されます。ハンドルの制御をラジオボタンで設定してください。
 旋回をチェックするとハンドルを切り続けてその場で旋回します。

 旋回を指定した時は旋回する回転数を指定してください。車が指定した回転数旋回したら移動したら次のコマンドに移ります。
 旋回を指定しない時は左折または右折するときの角度が指定できます。車が指定した角度の方向が変わったら移動したら次のコマンドに移ります。角度や回転数を指定しない(0を指定)場合は車の制御した直後に次のコマンドに移ります。


・車位置の設定 
 新規にこのコマンドを追加したり編集すると下記のダイアログが表示されます。車の移動点をラジオボタンで設定してください。

 カメラ中央またはユーザ定義に設定した場合は、車は自動制御により指定した位置に向かいます。
 コース範囲外を設定した場合はコース範囲の設定コマンドで設定したコースの範囲の外に出ると次のコマンドに移ります。  カメラ範囲外を設定した場合は、カメラのフレームの外に出ると次のコマンドに移ります。  これらの場合はこのコマンドの前に車を前進または後進させておく必要があります。
 カメラ中央を設定した場合は、車は自動制御によりカメラ中央に向かい、その付近に近づくと次のコマンドに移ります。
 ユーザ定義を指定するとX座標とY座標が直接レイアウト単位で指定できます。(レイアウトの大きさは640×480)  レイアウト参照ボタンを押すとカメラ画像またはレイアウト画面に切り替わるので設定する位置に追従指標(チーズ)をマウスで移動(ドラッグアンドドロップ)してください。  追従指標(チーズ)のマウス操作は追従指標による操作と同じです。
 位置が決定したらOKボタンを押してください。(ダブルクリックを押すとOKボタンを押さなくても位置を決定できます)


 ユーザ定義を設定した場合は、車は自動制御によりその位置に向かい、その付近に近づくと次のコマンドに移ります。
 なおカメラ中央またはユーザ定義で設定した場合はそこを完全に通過しなくても付近に近づけば次のコマンドに移ります。


・繰返しの設定 
 新規にこのコマンドを追加したり編集すると下記のダイアログが表示されます。繰返しの回数を設定してください。

 続いてリンク先を指定してください。戻りたいコマンドをマウスでクリックします。  リンク先はリンクの変更コマンドでも変更できます。  リンク先が定義されていないとこのコマンドは無効になります。


・サウンドの設定 
 新規にこのコマンドを追加したり編集すると下記のダイアログが表示されます。サウンドの再生または停止とサウンド番号を設定してください。

 繰返し再生を指定するとそのサウンドファイルの再生を繰り返します。  再生は再生が終わると自動的に停止します。  サウンド番号は定義してあるサウンドの数まで指定できます。  なお定義できるサウンドの数は最大100ファイルまでです。
 サウンド設定ボタンを押すとサウンドファイルの設定ができます。番号とファイルの対応はこのボタンを押して確認してください。
 サウンド設定ではサウンドファイルをテスト再生する事ができます。このボタンで追加したサウンド番号も指定できます。
 再生中に他のサウンドを再生すると音を重ねて再生する事ができます。重ねたくない場合は停止で前のサウンドを止めておいてください。

・ボール認識の設定 
 新規にこのコマンドを追加したり編集すると下記のダイアログが表示されます。認識した位置に対する車の制御をラジオボタンで設定してください。


 このコマンドを使うには予め
認識画像の学習によって対象となる画像を学習させておく必要があります。
 ボール追従開始に設定した場合は、車は自動制御により認識した画像に向かいます。
 ボール回避開始に設定した場合は、車は自動制御により認識した画像から回避します。
 ボール認識終了に設定した場合は、車は認識画像の追従や回避を終了します。

 追従開始や回避開始の場合、位置検出にチェックをすると次のコマンドには次の条件で移ります。
 ボール追従の場合は車が画像認識枠の中に入った時に次のコマンドに移ります。
 ボール回避の場合は車が回避開始距離の2倍の位置まで遠ざかった時に次のコマンドに移ります。
 位置検出にチェックがないと直ちに次のコマンドに移りますが追従や回避は続行します。
 ボール追従や回避はプログラムが終了するまで続行しますので途中で止める場合はボール認識終了コマンドを実行してください。
 追従中に回避開始したり回避中に追従開始した場合は認識画像に対する制御は新しいものに切り換えられます。

 回避開始距離は回避を開始する距離をレイアウト単位で指定できます。(レイアウトの大きさは640×480)
 画像認識枠の中心と車の位置がこの距離より小さくなった時に車は画像認識枠と逆方向に進行します。
 画像認識枠の中心と車の位置がこの距離の2倍距離より大きくなった時に車は停止します。


・編集操作
 コマンドを編集する場合は、対象となるコマンドをマウスで選択(緑のカーソルで表示)しておきます。  コマンドを選択しない状態にするにはマウスでプログラム表示画面の背景の部分をマウスでクリックします。
 編集コマンドはメニュバーの編集メニュで編集コマンドを実行するかコマンド画面でマウス右ボタンクリックをしてポップアップメニュを表示してコマンドを実行します。


 ・コマンドの追加/挿入
  プログラム画面のコマンドを選択した状態でコマンドツールバーのアイコンをクリックするとそのコマンドが選択しているコマンドの後に追加されます。 選択しているコマンドの後にコマンドが続いている場合はその間にコマンドが挿入されます。
  アラームコマンドは他のコマンドの後に追加する事ができないためコマンドが選択されていても必ず行の先頭に置かれます。
  タイマーコマンドは他のコマンドの後に追加する事も先頭に置くこともできます。先頭に置くにはコマンドを選択していない状態でコマンドツールバーのアイコンをクリックします。
  アラームコマンドとタイマーコマンド以外のコマンドは先頭に置く事ができないので必ず先行するコマンドを選択しておく必要があります。

 ・コマンドの編集
  プログラム画面のコマンドを選択した状態で編集コマンドを実行するとコマンドを追加した時に表示された編集ダイアログでコマンドの設定を変更する事ができます。
  プログラム画面のコマンドをダブルクリックしても編集ダイアログを開く事ができます。

 ・コマンドの削除
  プログラム画面のコマンドを選択した状態で削除コマンドを実行するとそのコマンドが削除されます。 先頭のコマンドを削除する場合はそのコマンドに続く全てのコマンドが削除されます。 なお自動運転開始のコマンドは削除する事はできません。

 ・コマンドの移動
  プログラム画面のコマンドを選択した状態で次に移動コマンドまたは前に移動コマンドを実行するとそのコマンドの順序を変更する事ができます。
先頭のコマンドを削除する場合はそのコマンドに続く全てのコマンドが削除されます。 なお自動運転開始のコマンドは削除する事はできません。

 ・コマンドのリンク
  最後のコマンド(先頭のコマンドを除いてそれに続くコマンドがないもの)は他のコマンドにリンクする事ができます。リンクするとそのコマンドが終了した後、リンク先のコマンドに制御が移ります。 リンクはプログラムを繰り返して実行させる場合に使います。
  リンクするにはまずリンクするコマンド(最後のコマンド)を選択しておきます。 次にリンク先のコマンドをクリックします。

  リンクされているコマンドは、リンク先を変更したりリンクを削除したりする事ができます。
  リンク先を変更するにはリンクされているコマンドを選択しておき、リンクコマンド(ポップアップメニュはリンク変更)を実行します。 次に新しいリンク先のコマンドをクリックします。
  リンクを削除するにはリンクされているコマンドを選択しておき、リンク削除コマンドを実行します。


・プログラムの保存と読込み
 プログラムの保存でプログラムを保存しておくと次回からはIRACSの起動時にプログラムファイルが読み込まれプログラムを実行する事ができます。  プログラムを保存する場合はファイルメニュのプログラムの保存コマンドを実行します。
 保存した他のプログラムを読み込む場合はファイルメニュのプログラムファイルを開くコマンドを実行します。
 IRACSで提供されるサンプルプログラムを読み込む場合はファイルメニュのサンプルプログラムを開くコマンドを実行します。
 サンプルプログラムはIRACSのプログラム作成の参考にしてください。


・サウンドの設定
 サウンドの設定は設定メニュのサウンド設定コマンドかサウンドコマンドを追加編集するダイアログのサウンド設定ボタンで行います。

 このコマンドを実行すると右のダイアログが表示されます。  追加ボタンを押しサウンドファイルを指定してください。サウンドファイルの種類はWAVEファイル(PCM音声データ)またはMIDIファイルです。
 MP3のようなエンコードされたサウンドファイルはサポートしていませんのでWAVEファイルに変換してから設定してください。
 なお設定されたファイルが消された場合は自動運転やシミュレーションの実行時にエラーとなりますのであらかじめ適当なNATOC用のディレクトリに集めておいてください。
 テスト再生ボタンはリストで選択したサウンドファイルを再生して確認する事ができます。上下に移動ボタンでサウンド番号を変更するためにリストの順番が変えられます



 自動プログラムを動かした時の動画です。
 上記のリンクをクリックするとYouTubeに接続します。

目次に戻る