Subはサブルーチンの略である。サブルーチンとは、二つ以上の重複した部分が存在する場合に必要な部分を呼び出すことによってプログラムのステップ数を最小化するプロセスのことである。
-
斗山ロボティクスのロボットは、サブコマンドと対応するサブパラグラフを呼び出すCallSubコマンドを提供する。
-
SubコマンドはPythonで定義されているように機能する。
注釈
-
サブパラグラフはMainパラグラフの先頭MainSubと、Mainパラグラフの末尾EndMainSubに追加する必要がある。
-
繰り返しに加えて、Subコマンドはメイン段落を単純化するためにも使用される。Subコマンドを利用することで、メイン段落のどのタスクが現在実行されているかを直感的に識別できる。
-
サブコマンドを使用すると、サブパラグラフ単体テストが可能になる。
ロボットグリッパーのグリップ動作とリリース動作を実行するためにSubコマンドを使用するサンプルは以下のとおりである。
-
Main段落の行は、タスクプログラムを最初の行から順番に実行する。
-
コールサブによって呼び出されたサブ(A)に移動
-
サンプル
-
プログラム:Gripサブルーチンを呼び出す。
-
ロボット(Robot):動きがない
-
-
-
Sub(A)が実行される。全てのサブ段落行は順番に実行され、メイン段落に戻り、次の行が実行される。
-
サンプル
-
プログラム:Gripサブルーチン行を順番に実行する。Setコマンドを使用して、Output[1]をOnに、Output[2]をOffに設定する。
-
ロボット(Robot):ロボットグリッパーはグリップ動作を実行する。
-
-
-
コールサブによって呼び出されたサブ(B)に移動
-
サンプル
-
プログラム:Releaseサブルーチンを呼び出す。
-
ロボット(Robot):動きがない
-
-
-
Sub(B)が実行される。全てのサブ段落行は順番に実行され、メイン段落に戻り、次の行が実行される。
-
サンプル
-
プログラム:Gripサブルーチン行を順番に実行する。Setコマンドを使用して、Output[1]をオフに、Output[2]をオンに設定する。
-
ロボット(Robot):ロボットグリッパーがリリース動作を実行する。
-
-
サブコマンドを追加
-
タスクエディターモジュールの右側のコマンドメニューのフロー制御セクションで、サブコマンドを追加する。
-
サブルーチン名を入力する。
CallSubコマンドを追加
-
タスクエディタモジュールの右側のコマンドメニューのフロー制御セクションで、サブコマンドを呼び出し
-
サブコマンドで登録したサブルーチン名を選択する。
注釈
-
タスクプログラムの行数が増えると、サブルーチンを見つけるのが難しくなることがある。このような場合は、CallSubコマンドのプロパティで選択したサブルーチンに移動(Go to Selected Subroutine)をタッチして、対応するSubコマンドラインにフォーカスを移動する。