7 DO(30)=MO(30) OR DI(27)
4.6 シーケンスプログラム仕様
項●目 内 容
命 令 否定(NOT)、論理積(AND)、論理和(OR)
入出力 ロボット言語と同じ MEMO
第 8 章
ロボット言語一覧
ロボット言語一覧表の見方 ・・・・・・・・・・・・・・・・・・ 8-1
アルファベット順 ・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-3
機能別 ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-8
関数:アルファベット順 ・・・・・・・・・・・・・・・・・・・ 8-15
関数:機能別 ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-18
1 1 ABS ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-20
2 2 ABSINIT / ABSINIT2 ・・・・・・・・・・・・・・・ 8-21
3 3 ABSRPOS / ABSRPOS2 ・・・・・・・・・・・ 8-23
4 4 ABSRST ・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-24
5 5 ACCEL / ACCEL2 ・・・・・・・・・・・・・・・・・ 8-25
6 6 ARCH / ARCH2 ・・・・・・・・・・・・・・・・・・・ 8-26
7 7 ARMCND / ARMCND2 ・・・・・・・・・・・・・ 8-28
8 8 ARMTYPE / ARMTYPE2 ・・・・・・・・・・・ 8-29
9 9 ATN / ATN2 ・・・・・・・・・・・・・・・・・・・・・・・ 8-30
11 11 ASPEED / ASPEED2 ・・・・・・・・・・・・・・・ 8-31
11 11 AXWGHT / AXWGHT2 ・・・・・・・・・・・・・ 8-32
12 12 CALL ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-33
13 13 CHANGE / CHANGE2 ・・・・・・・・・・・・・・ 8-34
14 14 CHGPRI ・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-35
15 15 CHR$ ・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-36
16 16 COS ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-37
17 17 CURTRQ / CURTRQ2 ・・・・・・・・・・・・・・ 8-37
18 18 CUT ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-38
19 19 DATE$ ・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-39
21 21 DECEL / DECEL2 ・・・・・・・・・・・・・・・・・ 8-40
21 21 DECLARE ・・・・・・・・・・・・・・・・・・・・・・・・ 8-41
22 22 DEF FN ・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-43
23 23 DEGRAD ・・・・・・・・・・・・・・・・・・・・・・・・・ 8-44
24 24 DELAY ・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-45
25 25 DI ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-46
26 26 DIST ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-47
27 27 DIM ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-48
28 28 DO ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-49
29 29 DRIVE / DRIVE2 ・・・・・・・・・・・・・・・・・・・ 8-50
31 31 DRIVEI / DRIVEI2 ・・・・・・・・・・・・・・・・・ 8-58
31 31 END SELECT ・・・・・・・・・・・・・・・・・・・・・ 8-63
32 32 END SUB ・・・・・・・・・・・・・・・・・・・・・・・・・ 8-64
33 33 ERR / ERL ・・・・・・・・・・・・・・・・・・・・・・・・ 8-65
34 34 EXIT FOR ・・・・・・・・・・・・・・・・・・・・・・・・ 8-66
35 35 EXIT SUB ・・・・・・・・・・・・・・・・・・・・・・・・ 8-67
36 36 EXIT TASK ・・・・・・・・・・・・・・・・・・・・・・・ 8-68
37 37 FOR 〜 NEXT ・・・・・・・・・・・・・・・・・・・・・ 8-69
38 38 GOSUB 〜 RETURN ・・・・・・・・・・・・・・・ 8-70
39 39 GOTO ・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-71
41 41 HALT ・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-72
41 41 HAND / HAND2 ・・・・・・・・・・・・・・・・・・・ 8-73
42 42 HOLD ・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-78
43 43 IF ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-79
44 44 INPUT ・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-81
45 45 INT ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-82
46 46 JTOXY / JTOXY2 ・・・・・・・・・・・・・・・・・・ 8-83
47 47 LABEL 文 ・・・・・・・・・・・・・・・・・・・・・・・・・ 8-84
52 52 LO ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-91
53 53 LOCx ・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-92
54 54 LSHIFT ・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-93
55 55 MCHREF / MCHREF2 ・・・・・・・・・・・・・・ 8-94
56 56 MID$ ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-95
57 57 MO ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-96
58 58 MOVE / MOVE2 ・・・・・・・・・・・・・・・・・・・ 8-97
59 59 MOVEI / MOVEI2 ・・・・・・・・・・・・・・・・・ 8-113
61 61 OFFLINE ・・・・・・・・・・・・・・・・・・・・・・・・ 8-118
61 61 ORD ・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-119
62 62 ON ERROR GOTO ・・・・・・・・・・・・・・・ 8-120
63 63 ON 〜 GOSUB ・・・・・・・・・・・・・・・・・・・ 8-121
64 64 ON 〜 GOTO ・・・・・・・・・・・・・・・・・・・・ 8-122
65 65 ONLINE ・・・・・・・・・・・・・・・・・・・・・・・・・ 8-123
66 66 ORGORD / ORGORD2 ・・・・・・・・・・・・ 8-124
67 67 ORIGIN ・・・・・・・・・・・・・・・・・・・・・・・・・ 8-125
68 68 OUT ・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-126
69 69 OUTPOS / OUTPOS2 ・・・・・・・・・・・・・ 8-127
71 71 PATH ・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-129
71 71 PATH END ・・・・・・・・・・・・・・・・・・・・・・ 8-135
72 72 PATH SET ・・・・・・・・・・・・・・・・・・・・・・・ 8-136
73 73 PATH START ・・・・・・・・・・・・・・・・・・・・ 8-138
74 74 PDEF ・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-139
75 75 PMOVE / PMOVE2 ・・・・・・・・・・・・・・・ 8-140
76 76 Pn ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-144
77 77 PPNT ・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-146
78 78 PRINT ・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-147
79 79 RADDEG ・・・・・・・・・・・・・・・・・・・・・・・・ 8-148
81 81 REM ・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-149
81 81 RESET ・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-150
82 82 RESTART ・・・・・・・・・・・・・・・・・・・・・・・ 8-151
83 83 RESUME ・・・・・・・・・・・・・・・・・・・・・・・・ 8-152
84 84 RETURN ・・・・・・・・・・・・・・・・・・・・・・・・ 8-153
85 85 RIGHT$ ・・・・・・・・・・・・・・・・・・・・・・・・・ 8-154
86 86 RIGHTY / RIGHTY2 ・・・・・・・・・・・・・・・ 8-155
87 87 RSHIFT ・・・・・・・・・・・・・・・・・・・・・・・・・ 8-156
88 88 Sn ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-157
89 89 SELECT CASE ・・・・・・・・・・・・・・・・・・・ 8-158
91 91 SEND ・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-159
91 91 SERVO / SERVO2 ・・・・・・・・・・・・・・・・ 8-161
92 92 SET ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-162
93 93 SHARED ・・・・・・・・・・・・・・・・・・・・・・・・ 8-163
94 94 SHIFT / SHIFT2 ・・・・・・・・・・・・・・・・・・ 8-164
95 95 SIN ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-165
96 96 SO ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-166
97 97 SPEED / SPEED2 ・・・・・・・・・・・・・・・・ 8-167
98 98 START ・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-168
99 99 STR$ ・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-169
111 111 SQR ・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-170
111 111 SUB 〜 END SUB ・・・・・・・・・・・・・・・・・ 8-171
112 112 SUSPEND ・・・・・・・・・・・・・・・・・・・・・・・ 8-173
113 113 SWI ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-174
114 114 TAN ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-175
115 115 TCOUNTER ・・・・・・・・・・・・・・・・・・・・・ 8-176
116 116 TIME$ ・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-177
117 117 TIMER ・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-178
118 118 TO ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-179
119 119 TOLE / TOLE2 ・・・・・・・・・・・・・・・・・・・ 8-180
111 111 TORQUE / TORQUE2 ・・・・・・・・・・・・・ 8-181
111 111 TRQSTS / TRQSTS2 ・・・・・・・・・・・・・・ 8-183
112 112 TRQTIME / TRQTIME2 ・・・・・・・・・・・・ 8-184
113 113 VAL ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-186
114 114 WAIT ・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-187
115 115 WAIT ARM / WAIT ARM2 ・・・・・・・・・・ 8-188
116 116 WEIGHT/WEIGHT2 ・・・・・・・・・・・・・・・ 8-189
117 117 WEND ・・・・・・・・・・・・・・・・・・・・・・・・・・ 8-190
118 118 WHERE / WHERE2 ・・・・・・・・・・・・・・・ 8-191
119 119 WHILE 〜 WEND ・・・・・・・・・・・・・・・・・ 8-192
8 9 10 11 12 13 14 15
ロボット言語一覧表の見方 ● 8-1
ロボット言語一覧表の見方
以下にロボット言語一覧表の見方を説明します。
(1) (2) (3) (4) (5)
| | | | |
No. 機能 条件 ダイレクト 種類
DIM 27 配列変数の名前と要素数を宣言する 6 × 命令
(1) No.
それぞれのロボット言語について詳しく書かれている項目番号を表します。
27 DIM
配列変数を宣言する
形式
DIM <配列指定>[,<配列指定>,...]
配列指定
<名称>[ % ](<定数>[,<定数>[,<定数>]])
! $
値 <定数> ・・・・・・・・・・・・・・・・・・ 配列の添字:0〜32,767の正の整数
意味 直接配列変数の名前と要素数を宣言します。配列の添字は最大3次元まで使用でき ます。","(コンマ)で区切ることによって1行に複数の配列を宣言できます。
・ 配列の添字は、0〜指定した値まで、合計<定数>+1個となります。
・ 配列の各次元の大きさによっては、"メモリフル"のエラーが発生します。
SAMPLE
DIM A%(10)・・・・・・・・・・・・・・・・・・・・・・・・ 整数型の配列変数A%(0)〜A%(10)を定義する
(要素数11)
DIM B(2,3,4)・・・・・・・・・・・・・・・・・・・・・ 実 数 型 の 配 列 変 数B(0,0,0) 〜B(2,3,4) を定義する(要素数60)
DIM C%(2,2),D!(10)・・・・・・・・・・・ 整数型の配列C%(0,0)〜C%(2,2)と実数型 の配列D!(0)〜D!(10)を定義する MEMO
"No."欄の例 No.
(2) 機能
ロボット言語の機能を説明します。
(3) 条件
実行可能な条件を示します。
条件1:ダイレクトコマンドとオンラインコマンドでも実行可能な命令。
条件2: 条件1 に加えて、タスク1(メインタスク)のみで実行可能な命令。
条件3:条件1 に加えて、ダイレクトコマンドとオンラインコマンドでは一部実行でき
ないオペランドのある命令。
条件4:条件1 に加えて、位置決め完了後に実行される命令。
条件5: MOVE L、MOVE C はダイレクトコマンドとオンラインコマンドで実行可能。
ただし、位置決め完了してから実行される。
なお、STOPON オプションはダイレクトコマンドとオンラインコマンドでは実 行できない。
条件6:ダイレクトコマンドとオンラインコマンドで実行不可能な命令。
ロボット言語のうち命令と関数の両方で使用できるものに関して、命令と関数で実行可能 な条件が異なる場合があります。
その場合は、命令と関数それぞれの条件を/で区切って表します。
例えば、命令として使用する場合の条件が4で、かつ、関数としては条件のない場合は、“4/-”
と表します。
8 9 10 11 12 13 14 15
(4) ダイレクト
この項目が“○”の場合、ダイレクトコマンドおよびオンラインコマンドの両方で使用 できます。
・ダイレクトコマンドとは、自動モードにおいてプログラミングボックスから直接コマンドを 入力して、一時的に動作させることです。詳しくは、コントローラのマニュアルを参照して ください。
(5) 種類
ロボット言語の種類を、“命令”または“関数”で示します。
命令と関数の両方で使用できる場合は、“命令/関数”と表記します。
MEMO
8 9 10 11 12 13 14 15
アルファベット順 ● 8-3
アルファベット順
No. 命令 機能 条件 ダイレクト 種類
A
1 ABS 指定された値の絶対値を求める - - 関数
2 ABSINIT メイングループの指定された軸の現在位置をリセッ
トする
4 ○ 命令
2 ABSINIT2 サブグループの指定された軸の現在位置をリセット
する
4 ○ 命令
3 ABSRPOS メイングループの指定された軸のマシンリファレン
ス値を求める(原点復帰方式がマーク方式の場合の み有効)
- - 関数
3 ABSRPOS2 サブグループの指定された軸のマシンリファレンス
値を求める(原点復帰方式がマーク方式の場合のみ 有効)
- - 関数
4 ABSRST ロボットのアブソリュートモータ軸原点復帰動作を
実行する
4 ○ 命令
5 ACCEL メイングループの加速度係数パラメータを設定/取得
する
4/- ○ 命令/関数
5 ACCEL2 サブグループの加速度係数パラメータを設定/取得
する
4/- ○ 命令/関数 6 ARCH メイングループのアーチ位置パラメータを設定/取得
する
4/- ○ 命令/関数
6 ARCH2 サブグループのアーチ位置パラメータを設定/取得
する
4/- ○ 命令/関数
7 ARMCND メインロボットの現在のアームの状態を取得する - - 関数
7 ARMCND2 サブロボットの現在のアームの状態を取得する - - 関数
8 ARMTYPE メインロボットの現在の手系の設定を取得する - - 関数
8 ARMTYPE2 サブロボットの現在の手系の設定を取得する - - 関数
10 ASPEED メイングループの自動移動速度を変更する 4 ○ 命令
10 ASPEED2 サブグループの自動移動速度を変更する 4 ○ 命令
9 ATN 指定された値の逆正接値を求める - - 関数
9 ATN2 指定されたX-Y座標の逆正接値を求める - - 関数
11 AXWGHT メイングループの軸先端質量パラメータを設定/取得
する
4/- ○ 命令/関数
11 AXWGHT2 サブグループの軸先端質量パラメータを設定/取得
する
4/- ○ 命令/関数
C
12 CALL 他のプログラムの実行する 6 × 命令
13 CHANGE メインロボットのハンドの切り替えを行う 4 ○ 命令
13 CHANGE2 サブロボットのハンドの切り替えを行う 4 ○ 命令
14 CHGPRI 指定されたタスクの優先順位を変更する 6 × 命令
15 CHR$ 指定したキャラクタコードを持つ文字を求める - - 関数
16 COS 指定された値の余弦値を求める - - 関数
17 CURTRQ メイングループの指定された軸の現在トルク値を取
得する
- × 関数
17 CURTRQ2 サブグループの指定された軸の現在トルク値を取得
する
- × 関数
18 CUT 実行中または一時停止中の他のタスクを強制終了する 6 × 命令
8 9 10 11 12 13 14 15
No. 命令 機能 条件 ダイレクト 種類
D
19 DATE$ 日付を"yy/mm/dd" の形式の文字列で求める - - 関数
20 DECEL メイングループの減速比率パラメータを設定/取得
する
4/- ○ 命令/関数
20 DECEL2 サブグループの減速比率パラメータを設定/取得する 4/- ○ 命令/関数
23 DEGRAD 値をラジアンに変換する(↔ RADDEG) - - 関数
24 DELAY 指定された時間(単位ms)だけ待つ 6 × 命令
27 DIM 配列変数の名前と要素数を宣言する 6 × 命令
26 DIST 指定される2 点間の距離を求める - - 関数 28 DO 指定された値をDOポートに出力する 1 ○ 命令
29 DRIVE メイングループを軸単位で絶対位置移動する 4 ○ 命令
29 DRIVE (Tオプション付きの場合)軸単位の絶対移動命令を
実行する
4 ○ 命令
29 DRIVE2 サブグループを軸単位で絶対位置移動する 4 ○ 命令
30 DRIVEI メイングループを軸単位で相対位置移動する 4 ○ 命令
30 DRIVEI2 サブグループを軸単位で相対位置移動する 4 ○ 命令
E
33 ERL エラー発生行番号を与える - - 関数
33 ERR エラー発生時のエラーコード番号を与える - - 関数
34 EXIT FOR FOR文〜NEXT文のループを強制的に終了する 6 × 命令
36 EXIT TASK 実行している自分自身のタスクを終了する 6 × 命令
F
37 FOR〜NEXT 繰り返しを制御する指定値になるまで、FOR文の 次からNEXT文までを繰り返し実行する
6 × 命令
G
38 GOSUB〜 RETURN
GOSUB文で指定されるラベルのサブルーチンに
ジャンプし、サブルーチンを実行する
6 × 命令
39 GOTO ラベルで指定される行に無条件ジャンプする 6 × 命令
H
40 HALT プログラムを停止し、かつ、リセットする 6 × 命令 41 HAND メインロボットのハンドの定義をする 4 ○ 命令
41 HAND2 サブロボットのハンドの定義をする 4 ○ 命令
42 HOLD プログラムを一時停止する 6 × 命令
I
43 IF 条件によって制御の流れを分岐する 6 × 命令
44 INPUT プログラミングボックスから指定した変数に値を代
入する
1 ○ 命令
45 INT 値の小数点以下を切り捨てた整数値を得る - - 関数
J
46 JTOXY 関節座標データをメイングループの直交座標データ
に変換する(↔ XYTOJ)
- - 関数
46 JTOXY2 関節座標データをサブグループの直交座標データに - - 関数
8 9 10 11 12 13 14 15
アルファベット順 ● 8-5
No. 命令 機能 条件 ダイレクト 種類
49 LEFTY2 サブロボットの手系を左手系に設定する 4 ○ 命令
50 LEN 指定した文字列の長さ(バイト数)を得る - - 関数
51 LET 指定された代入文を実行する 1 ○ 命令
52 LO 指定された値をLOポートに出力し、軸移動の禁止 や解除を行う
1 ○ 命令
53 LOCx ポイントデータまたはシフトデータを軸単位で設定
/取得する
- - 命令/関数
54 LSHIFT 値を指定したビット数だけ左にシフトさせる
(↔ RSHIFT)
- - 関数
M
55 MCHREF メイングループ軸の原点復帰動作およびアブソサー
チ動作のマシンリファレンスを求める
- - 関数
55 MCHREF2 サブグループ軸の原点復帰動作およびアブソサーチ
動作のマシンリファレンスを求める
- - 関数
56 MID$ 指定した文字列中から任意の長さの文字列を抜き出す - - 関数 57 MO 指定された値をMOポートに出力する 1 ○ 命令 58 MOVE メイングループのロボットの全軸を絶対移動する 5 ○ 命令
58 MOVE2 サブグループのロボットの全軸を絶対移動する 5 ○ 命令
59 MOVEI メインロボットの全軸を相対移動する 4 ○ 命令
59 MOVEI2 サブロボットの全軸を相対移動する 4 ○ 命令
O
60 OFFLINE 指定した通信ポートをオフラインモードに設定する 1 ○ 命令
62 ON ERROR GOTO
プログラムを停止せずにラベルで示されるエラー処 理ルーチンへジャンプまたは、エラーメッセージを 表示して、プログラムの実行を停止する
6 × 命令
63 ON〜GOSUB 条件によって、GOSUB文で指定される各ラベルのサ
ブルーチンにジャンプし、サブルーチンを実行する
6 × 命令
64 ON〜GOTO 条件によって、ラベルで指定される各行にジャンプ する
6 × 命令
65 ONLINE 指定した通信ポートをオンラインモードに設定する 1 ○ 命令
61 ORD 指定した文字列の最初の文字のキャラクタコードを 得る
- - 関数
66 ORGORD メイングループの原点復帰動作およびアブソサーチ
動作を行う軸順序パラメータを設定/取得する
4/- ○ 命令/関数
66 ORGORD2 サブグループの原点復帰動作およびアブソサーチ動
作を行う軸順序パラメータを設定/取得する
4/- ○ 命令/関数
67 ORIGIN インクリメンタル仕様の軸の原点復帰動作を実行する 4 ○ 命令
68 OUT 指定された出力ポートのビットをオンして命令文を 終了する
6 × 命令
69 OUTPOS メイングループのアウト有効位置パラメータを設定
/取得する
4/- ○ 命令/関数
69 OUTPOS2 サブグループのアウト有効位置パラメータを設定/
取得する
4/- ○ 命令/関数
P
70 PATH PATH移動経路を設定する 6 × 命令
71 PATH END PATH移動の経路設定を終了する 6 × 命令
72 PATH SET PATH移動の経路設定を開始する 6 × 命令
73 PATH START PATH移動を開始する 6 × 命令
74 PDEF パレット移動命令を実行するためのパレットを定義 する
1 ○ 命令