デバッグ
Epson RC+ 8.0は、ソースコードデバッグをサポートしています。プログラム中にブレークポイントの設定やステップ実行が可能です。また、タスクマネージャーでは、プログラムのポーズや継続、タスクの一時停止を行うことができます。
ブレークポイントの設定と解除
ブレークポイントを設定するファイルを開き、その行をクリックします。次のいずれかの方法でブレークポイントが設定できます。
行の左端にマウスを置くと、手のひらマークが表示されます。クリックすると、ブレークポイントアイコンに変わります。
[F9]キーを押します。
Epson RC+ 8.0メニュー - [実行] - [ブレークポイントの設定/解除]
ブレークポイントは、ブレークポイントを設定した行で、再び設定操作を行うと、解除されます。すべてのブレークポイントを解除するには、Epson RC+ 8.0メニュー - [実行] - [すべてのブレークポイントを解除]を選択します。
#defineなど#で始まる疑似命令、空白行、変数宣言行、コメント行にはブレークポイントは設定できません。
詳細は以下を参照してください。
ブレークポイントを設定した後、タスク実行行がブレークポイントに達した場合、タスクは停止します。タスク実行中にもブレークポイントを設定、解除できます。
ブレークポイントに達した場合、ブレークポイントのプログラムソース行を含むプログラムウィンドウを開き、黄色にハイライトします。[停止中タスク]メニューにタスク番号が表示されます。
複数のタスクがブレークポイントに達した場合、[停止中タスク]からすべてのタスクを確認できます。[停止中タスク]でタスクを切り替えると、ブレークポイントで停止した場所が表示されます。
[停止中タスク]から、タスク1を選択した場合:
[停止中タスク]から、タスク2を選択した場合:
プログラムのステップ実行
[実行]メニューには、3つのステップ実行があります。
- ステップインは、ステップが各行を通って実行します。また、Callステートメントで実行されているとき、ファンクション内でもステップします。
- ステップオーバーは、各行を通って実行しますが、Callステートメントにくると、ステートメントのファンクションは、完全に実行されます。
- Walkは、次の動作コマンドまで行を実行して、タスクを停止します。[セットアップ] - [システム設定] - [コントローラー] - [環境設定]で[I/O出力命令でWalk実行を停止]チェックボックスがチェックされている場合、次の出力コマンドまで実行して停止します。
ステップ実行するには、ブレークポイントを設定し、ブレークポイントに達するまで稼動するか、[Halt]ボタンで[タスクマネージャー]からタスクを停止します。
コールスタックの表示
タスクマネージャーからタスクを一時停止したあとや、ブレークポイントに到達したあとに、現在のタスクのコールスタックを調べることがあります。
詳細は以下を参照してください。
コールスタックを表示するには、Epson RC+ 8.0メニュー - [実行] - [コールスタック]を選択してください。次のようなコールスタックリストが表示されます。
コールスタックリストからファンクションをダブルクリックすると、プログラムウィンドウにファンクションが表示されます。コールスタック中の次にコールされているファンクションがある行にカーソルが移動します。次の例では、SingleCycle ファンクションが、Gripper Onステートメントを指し、"Gripper"が"SingleCycle"からコールされたことを示しています。
変数の表示
次のうちのどれか1つを行い変数の値を確認します。
タスクがHaltかブレークポイントで一時停止しているとき、変数名の上にマウスカーソルを移動し、変数の値を確認します。値は変数名の上のツールチップウィンドウに表示されます。
配列変数の場合はマウスカーソルで変数名と括弧をカーソルで選択し、マウスオーバーすることで表示できますが、要素番号が他の変数で指定されているときは表示されません。
Epson RC+ 8.0メニュー - [実行] - [変数の表示]を選択し、[変数モニター]ダイアログを表示します。このダイアログには、[グローバル変数], [バックアップ変数], [モジュール変数], [ローカル変数]のタブがあります。
変数モニターの詳細は以下を参照してください。
キーポイント
各変数のタブには、それぞれ最大600個まで表示できます。
[変更]チェックボックスをチェックして、変数の値を変更できます。[値]列に新しい値を入力します。次に、[設定]ボタンをクリックして変数を変更します。[変更]チェックボックスがチェックされていると、変数の値は自動的に更新されません。[更新]ボタンをクリックして、すべての値を更新します。
← Runウィンドウ オペレーターウィンドウ →