ID : 7707
プログラミング例
Command-Slave機能で、ロボットを制御するプログラミングの一例を示します。
例として、6軸ロボットを開始位置から目標位置までPTP制御で絶対位置移動させるプログラムを作成します。
1
Command-Slave用の変数を用意します。
「GVLs」フォルダに作成したグローバル変数リストに、"eRC_AxesGroup" と "eRC_PosDensoRobot"型の変数を作成します。
この例では、各変数を配列で宣言しています。宣言方法は、お客様の任意で選択してください。
2
「POUs」フォルダに、「(MAIN)メインプログラム」、「(PositionData)位置データプログラム」、「(RobCtrl)ロボット制御プログラム」を作成します。
この例では、メインプログラムとロボット制御プログラムはLD (Ladder Diagram)、位置データプログラムはST (Structures Text)で作成しています。プログラミング言語は、お客様の任意で選択してください。
3
まず、メインプログラムをプログラミングします。
プログラムの先頭に、"MC_ReadAxesGroup" を配置します。
4
"MC_Initialize"を配置します。
5
エラーが発生した場合に備えて、"MC_Reset"を配置します。
入力変数"Execute"には、任意のグローバル変数を割り当ててください。
ロボットのモータをONするために、"MC_Reset"の後に"MC_Power"を配置します。
入力変数"Enable"には、任意のグローバル変数を割り当ててください。
また、下図のように、"MC_Reset" 完了時に"MC_Reset" の入力変数 "Execute"が リセットされるようにプログラムします。
同様に、エラー発生時に"MC_Power"の入力変数"Enable" がリセットされるようにプログラムします。
6
ロボットの開始位置と目標位置を指定するために、位置データプログラムを配置します。
位置データプログラムの内容は、STEP9で説明します。
7
ロボットの制御内容を指定するために、ロボット制御プログラムを配置します。
ロボット制御プログラムの内容は、STEP10で説明します。
8
プログラムの最後に"MC_WriteAxesGroup"を配置します。
9
次に、位置データプログラムをプログラミングします。
開始位置と目標位置を宣言します。
この例では、"Position[10]" を開始位置、"Position[11]" を目標位置として宣言しています。
10
最後に、ロボット制御プログラムをプログラミングします。
ロボットを開始位置に移動させるために、"MC_MoveAxisAbsolute"を配置します。
入力変数"Execute"には、任意のグローバル変数を指定してください。
入力変数"AxisPosition"には、STEP9で指定した開始位置を指定してください。
11
ロボットを目標位置に移動させるために、"MC_MoveAxisAbsolute"を配置します。
入力変数"Execute"には、任意のグローバル変数を割り当ててください。
入力変数"AxisPosition"には、STEP9で指定した目標位置を割り当ててください。
下図のように、出力変数"NextActionPermit"を次のFBの入力変数"Execute"に指定すると、ロボットを連続で動作することができます。
以上で、プログラムの作成は終了です。
ID : 7707