ロボット ロジックコマンド - if と dofile コマンドの使用方法
FAIRINO 協働ロボットで使用する「if(条件分岐)コマンド」と「dofile(他プログラム呼び出し)コマンド」の概要を紹介します。
IO入力による条件分岐や別プログラムをサブルーチンとして実行する方法を学ぶことで、より柔軟なロジック制御 を実現できます。
※日本語環境で視聴する場合は、YouTube の字幕機能を有効にしてご覧ください。
本動画では、ロボット制御プログラムにおける論理コマンドとして、if(条件分岐) と dofile(別プログラム呼び出し) の使用方法を解説します。
センサー入力を判断材料にする場合や、複雑なプログラムをサブルーチン化して再利用する場合に役立ちます。
1.if(条件分岐)コマンド
・入力 IO(DI1 / DI2 など) を判定条件にして、特定のポイントへジャンプさせる例を紹介。
・たとえば、D1 が True(オン)なら P1、D2 が True なら P2 へ移動。
・プログラム内に if コマンドを追加後、必要に応じてプログラム順序をドラッグ&ドロップや上下ボタンで調整。
・さらに、変数を使った条件分岐も可能。例:変数の値を取得し、規定回数を超えたら別ルートへ進む 等。
2.プログラム例 - Always Loop + if
・IO入力がオンになるまでループを続ける、もしくは条件成立でポイントを選択して移動させるなど、柔軟なロジックが組める。
・デモでは P1 → P2 → P3 へ順次移動しつつ、D1 / D2 の押下に応じて動きを切り替える様子を確認。
3.dofile(サブルーチン呼び出し)コマンド
・メインプログラム(main1) から、別途作成したプログラム(test1)をまるごと呼び出す。
・「dofile モジュール」選択 → 呼び出したいプログラムを指定 → 第1階層(First Level)や第2階層(Second Level)など、ネスト状況に合わせて設定。
・大規模プログラムをサブルーチンとして分割することで保守性や再利用性が向上。
4.実行とデバッグ
・自動モードに切り替えてプログラムを走らせると、サブルーチン内の命令がステップごとに実行される。
・手動モードに戻してプログラムを停止・編集し、コマンドの順序やオプションを見直す。
・条件分岐の判定タイミングや IO の状態を確認しながらデバッグを進めることで、意図したロジック制御を実現。