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