サーボワークス・パートプログラミング マニュアル - Soft Servo Systems, Inc.

サーボワークス・パートプログラミング
マニュアル
(MC‐
‐Quad、モーションプロ、
、モーションプロ、SWSDK)
)
、モーションプロ、
Version 1.2
サーボワークス・パートプログラミング・マニュアル
(MC‐Quad、モーションプロ、SWSDK)
ユーザーズガイド
日本語版
サーボワークス・パートプログラミング・マニュアル
(MC‐Quad、モーションプロ、SWSDK)
著作権:Soft Servo Systems, Inc.
日本語版版権:Soft Servo Systems, Inc.
本マニュアルの内容は、予告なく変更する場合があります。 株式会社ソフトサーボ社
は、本書の欠陥の結果生じるすべての障害について、一切の責任を負いかねます。
本マニュアル及びメディア(ソフトウエアを収納した媒体)に記載されている全ての情
報は、米国 Soft Servo Systems 社によって全ての権利が保存されています。
本マニュアルのどのような部分も、株式会社ソフトサーボ社からの文書による事前の許
可なく、電気的、機械的のどのような形式にも、またはどのような方法でも、他の言語
に書き換えたり翻訳、写真複写、レコーディングなどは、正常なソフトウエアの使用を
除き法律で禁じられています。
ServoWorks は、Soft Servo Systems 社の登録商標で、米国 Soft Servo Systems 社にラ
イセンスされています。MS, Microsoft, MS_DOS, Windows は米国 Microsoft
Corporation の登録商標です。他のすべての製品名は、一般にそれぞれの製造会社の登
録商標または商標です。
ServoWorks パートプログラミングマニュアル
目次
目
次
目 次.............................................................................................................................. i
第 1 章: サーボワークス・パートプログラミング言語の概要................................ 1-1
第 2 章: アドレスについて............................................................................................ 2-1
第 3 章: パートプログラムのフォーマット................................................................ 3-1
第 4 章: パートプログラミングの操作手順......................................................... 4-1
第 5 章: G コード(準備機能) ........................................................................... 5-1
第 6 章: Mコード(その他のコード)........................................................................ 6-1
第 7 章: スピンドル機能と S コード............................................................................ 7-1
第 8 章: Tool Functions and T Codes .............................................................................. 8-1
8.1 T コードについての概要 .................................................................................... 8-1
8.2 工具オフセット.................................................................................................... 8-1
i
ServoWorks パートプログラミングマニュアル
第 1 章: サーボワークス・パートプログラミング言語の概要
第1章
章: サーボワークス・パートプログラミング言語の概要
1.1
サーボワークス・パートプログラミング言語について
サーボワークス・パートプログラミング言語は F コード、G コード、M コード、N コード、
S コード、T コードなどで成り立っています。
最も一般的なコードは G コードで、それは“G コード”もしくは“G コード・パートプログ
ラミング”と呼ばれています。G コードは機械が正しい状態で情報を読み取り、それを実行
するための広範囲での準備機能を果たすコードです。つまり、G コードはシステムモードを
決定するものといえます。詳しくは第 3 章を参照してください。
M モードでは CNC マシンコントロールに関するその他の機能を決めます。このコードはオ
ン/オフ・スイッチのような働きがあります。詳しくは第 4 章を参照してください。
S コードはスピンドルスピード・コマンドを示します。詳しくは第 5 章を参照してください。
T コードはツールセレクション・コマンドを表します。詳しくは第 6 章を参照してください。
1.2
サーボワークス・パートプログラミング言語のコンポーネント
サーボワークスでの G コードシステムは“ワード”によって表されます。“ワード”はブ
ロックコードを構成するために重要なものです。ブロックコード(もしくはインストラクシ
ョン)は、1 ラインで 1 つのワードかそれ以上のワードを1グループとして扱います。
ワードはアドレスとその後に続く数字で表されます。アドレスはアドレスに続く数字の意味
を定義します。つまり、サーボワークスでは、数字の意味するものを決めるためにアドレス
を使うのです。サーボワークスで定められたアドレスのリストは第 2 章にて参照ください。
一般的なブロックコードはこのようにシーケンス番号で始まります。
コードのブロック構成
N100
G00
ワード
アドレス
X13.0
Z3.0
数字 – この値は距離や位置を定義します。またこれ
は物理的次元を表し、マシンユニットパラメーターの
倍数に翻訳されています。
1-1
ServoWorks パートプログラミングマニュアル
第 1 章: サーボワークス・パートプログラミング言語の概要
1.3 パートプログラミングの数字について
G コードでの X 軸、Z 軸のパラメータを伴う数字は、浮動小数点もしくは整数値で表されま
す。
浮動小数点は常にパラメータのための距離や位置を表す絶対値です。これらの値はミリメー
タかインチで表示できる物理ディメンションです。その設定はパートプログラムの G20 か
G21 でインチもしくはメートル法を用いて行うことができます。詳しくは第 3 章 3.9 を参照
してください。
整数値は以下の 2 つの方法のどちらかで表すことができます。それはサーボワークス・アプ
リケーションの“マシンユニットの整数プログラム”の設定によります。
1)
“マシンユニットの整数プログラム”パラメータが無効のときは、パートプロ
グラムの整数値は距離か位置を示す絶対値として扱われます(NC プログラムの
G20/21 の設定でミリメータかインチで表示できます)。
2) “マシンユニットの整数プログラム”が有効のときは、整数値はマシン
ユニット・パラメータの倍数として扱われます。サーボワークスでは
マシンユニットは最小の入力インクリメントとなっています(アクチ
ュエーターを動かすことのできる直線移動もしくは距離の最小単位の
ことです)。
詳しくは“サーボワークス VB パラメータ・マニュアル”を参照してください。次の図はサ
ーボワークス・パートプログラミング言語について上記の内容をまとめたものです。
データタイプ
整数プログラム無効時の
データ単位
整数プログラム有効時の
データ単位
整数
mm 又は inch
マシンユニットパラメーター設定
浮動点
mm 又は inch
mm 又は inch
例えば、マシンユニットの整数値が“0”のとき、すなわち無効のとき、“14”(ブロック
コードは“G00 X14 Y14.5”とする)は 14 ミリもしくは 14 インチを表し、“14.5”は 14.5
ミリもしくは 14.5 インチを表します。また、マシンユニットの整数値が“1”のとき、すな
わち有効のとき、“14”は 14 マシンユニットと解釈します。しかし、“14.5”は 14.5 ミリ
もしくはインチのままです。マシンユニットを 0.001 ミリにセットした場合は、“X14”は
0.014 ミリになります。これらの違いを理解することはとても重要です。
1-2
ServoWorks パートプログラミングマニュアル
第 1 章: サーボワークス・パートプログラミング言語の概要
1.4
コードブロックと重複パラメータ
それぞれのブロックが異なったラインにあることはとても重要です。同じラインに 2 つのブ
ロックをおく場合、それらは一緒になるということです。その基本的な考え方を間違った場
合には重大な問題になります。例えば、最初のブロックで A 地点から B 地点に移動し、2 番
目のブロックで B 地点から C 地点に動くというパラメータを組んだとします。しかし、そ
れら 2 つのブロックを同じラインにおいてしまったら、2 つ目のパラメータは無視されてし
まいます。その結果、A 地点から B 地点までの移動のみになってしまい、B 地点から C 地点
の移動はできなくなります。
パラメータは同じライン上で少なくとも 1 つ以上で構成されています。例えば、“N100
G00 X13.0 Z3.0 X2.0 X9.5”というパラメータの場合、最初の X パラメータ(X13.0)のみ
が使うことができて、他の X2.0 と X9.5 は無視されます。
最大ブロックコード数は 1 列に 85 文字までです。
1-3
ServoWorks パートプログラミングマニュアル
第 2 章: アドレスについて
第2章
章: アドレスについて
アドレスはそのアドレスに従う数の意味を表します。アドレスによっては 1 つ以上の意味を
持つ場合もあります。下表にそれぞれのアドレスの意味を記します。
アドレス
説明
A
アブソリュート又はインクリメンタル座標値指定
B
5 軸アブソリュート又はインクリメンタル座標値指定
C
6 軸アブソリュート又はインクリメンタル座標値指定
D
7 軸アブソリュート又はインクリメンタル座標値指定
E
8 軸アブソリュート又はインクリメンタル座標値指定
F
送り速度 (注意: 送り速度はモードであり、このコードによる送
り速度は新たな値が指定されるまで有効です。またそれぞれのブ
ロックごとに指定する必要はありません。)
G
予備機能(第 3 章: G コード (予備機能)参照)
I
1. X 軸用円弧中心修正機能
2. X 軸用スケーリング要素
3. 指数補間での螺旋角
J
1. Y 軸用円弧中心修正機能
2. Y 軸用スケーリング要素
3. 指数補間でのテーパー角
K
1. Z 軸用円弧中心修正機能
2. Z 軸用スケーリング要素
M
その他の機能 (第 4 章: M コード (その他の機能)参照)
N
ブロック/シーケンス番号
P
1.サブプログラム名呼び出し
2. ドウェル時間 (dwell time)
2-1
ServoWorks パートプログラミングマニュアル
第 2 章: アドレスについて
アドレス
説明
Q
1. 円運動誤差許容量
2. 指数補間の終点送り速度
R
1.円弧半径終点
2.サブプログラム繰り返し
S
スピンドル速度機能
T
工具機能 (第 5 章:工具機能と T コード参照)
X
X 軸アブソリュート又はインクリメンタル座標値指定
Y
Y 軸アブソリュート又はインクリメンタル座標値指定
Z
Z 軸アブソリュート又はインクリメンタル座標値指定
2-2
ServoWorks パートプログラミングマニュアル
第 3 章: パートプログラムのフォーマット
第3章
章: パートプログラムのフォーマット
3.1
パートプログラムの汎用フォーマット
プログラムはブロックコードで構成されており、通常プログラムナンバーで始まります。最
後は M02 か M30 で終わります。詳しくは第 4 章を参照してください。
コードのブロック
プログラム終了コード
%Program Title
N100 G00 X13.0 Z3.0
.
.
.
N500 G01 X4.0 Z5.0
M02
注意:
注意 サブプログラム・ネームを除いて、小文字は認識されません。ですので、サブプログ
ラム・ネーム以外のところに小文字が使われた場合は無視されます。
3.2
距離と速度のフォーマット
整数を使う場合はマシンユニットを表す場合に用い、それ以外の場合にはすべての数字には
小数点をつけなければなりません。マイナスの数字を用いる場合には、マイナスのサインを
数字の前においてください。(例:X-5.0)
3.3
ブロックデリート・コード
ブロックデリート・コードはパートプログラムの中に含まれ、プログラマーの方やその他編
集などを行う方に効果的です。ブロックデリート・コードはラインの最初の場所に“%”を
おくことによって認識されます。ブロックデリート・コード自体は実行されません。“%”
は G コード・ラインのコメントをすることになります。
ブロックデリート・コードはブロックコードとは別にしてください。ラインの最初を除いて、
“%”のおかれているラインのどれもがプログラムに影響することはありません。そして、
“%”の次のラインからプログラムは実行されます。そうでなければエラーが起こります。
ブロックデリート・コードの例:
% This is a block delete code
3-1
ServoWorks パートプログラミングマニュアル
第 3 章: パートプログラムのフォーマット
3.4
コメントコード
コメントコードはパートプログラムの中に含まれ、プログラマーの方やその他編集などを行
う方に効果的です。コメントコードでは G コードライン上でコメントを括弧の中に入れま
す。
コメントコードの例:
N01 G00 X0 Z0 (これはコメントコードです)
3.5
オプション・スキップモード
オプション・スキップモードは、オートモードでオプションスキップがオンになっていると
き、スキップされるコードです(実行するモードではありません)。ラインのはじめに、
“/”(フォワードスラッシュ)をおいてオプション・スキップモードをプログラムします。
3.6
使わないデータについて
パートプログラミング言語において、使わないデータはサーボワークスでは認識され
ません。そのようなコードは無視されます。
3-2
ServoWorks パートプログラミングマニュアル
第 4 章: パー
パートプログラミング
トプログラミングの操作手順
トプログラミング
の操作手順
第4章
章: パートプログラミングの操作手順
パートプログラミングの操作手順はサーボワークスがブロックコードをプロセスする手順に
従います。
説明
例
1
N 番号 (ブロック番号)
N1234
2
コメント文
(コメント文)
3
ブロック削除コード
“%”
4
サブプログラム呼び出し
M98
5
オプションスキップコード
“/”
6
G コードモード
G01, G90
7
補助コード
M08, S1000, T01
8
単発の G コード
G04, G53, G92, G54
9
動作コマンド
X100.0 Y100.0 F3000
4-1
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
第5章
章: G コード(準備機能)
5.1
モードとモーダル(modal)コマンド
G コードはグループにまとめられます。ほとんどのグループはモーダルグループですが、グ
ループ 00 はモーダルではありません。
モードは特定の役割を果たすものです。モーダルグループはモードに関する 2 つかそれ以上
のもので構成されています。モーダルグループでの1つのモードのみが 1 度に有効になりま
す。デフォルトモードは、他のモードがそのコードのなかでプログラムされていない場合、
モーダルグループのなかで自動的に実行されるモードのことです。
モーダルコードはモードをセットするコードのことです。そのモードは同じモーダルグルー
プから他のコードによってキャンセルされない限り有効です。多くの G コードはモーダル
です。F コードもまたモーダルで、速度に関してのものです。
例えば、モーダルグループ 01(移動の選択-selection of a movement system)は 4 つのモード
で構成されています[G00(位置決め)、G01(直線補間)、G02(円弧補間 CW)、G03(円
弧補間 CCW)]。モーダルグループ 01 では 4 つのモードのうち1つだけを 1 度に作動させ
ることが可能となります。G00 はデフォルトモードです。それゆえ、サーボワークス・アプ
リケーションは以下のコードを読み取ります。
X200. Z150. F200
サーボワークス・アプリケーションはこのブロックコードを位置決めモードを適用するため
に用います。それは、移動の選択のためのデフォルトモードだからです。
次のブロックコードの例は以下の通りです。
G01 X5.0 Z157
移動の選択は位置決めになります。すべてのポジションコマンドは、モーダルグループ 01
からの他のモードがプログラムされるまで、直線補間モードのままになります。
ノンモーダルコードは、プログラムされたブロックのためだけに有効です。つまり、1 回限
りのものです。そのあと、その機能は自動的に消えます。グループ 00 のすべての G コード
はノンモーダルです。
“G00 G90”のように、1 つ以上の G コードを 1 つのブロックなかでプログラムすることが
できます。しかし、それらは異なったグループからきたものです。もし、同じグループから
2 つ以上の G コードが1つのブロックコードにプログラムされた場合、最後の G コードが実
行され、それ以外の G コードはそのグループから除外されます。例えば、“G01 X10.0 G00
5-1
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
Y20.0”を考えてみた場合、X と Y は直線補間(G01)ではなく、早送り(G00)でプログラ
ムは実行されることになります。
5.2
Summary of G Codes
G コード
グループ
機能
G00
01
位置決め(早送り)
G01
01
直線補間
G02
01
円弧補間 / ヘリカル補間 CW
G03
01
円弧補間 / ヘリカル補間 CCW
G02.3
01
正指数補間
G03.3
01
負指数補間
G04
00
ドウェル
G05
00
動的推測輪郭制御オン/オフ
G08
00
動的推測輪郭制御オン/オフ
G17
02
XY 平面選択
G18
02
ZX 平面選択
G19
02
YZ 平面選択
G20
06
インチ入力
G21
06
ミリ入力
G28
00
リファレンス点への復帰
G29
00
リファレンス点からの復帰
G30
00
第2リファレンス点復帰
G31
00
スキップカッティング
G40
07
工具径補正キャンセル
5-2
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
G コード
グループ
機能
G41
07
右方工具径補正
G42
07
左方工具径補正
G43
08
工具長補正+
G44
08
工具長補正-
G40
08
工具長補正キャンセル
G50
11
スケーリングキャンセル
G51
11
スケーリング On
G50.1
22
プログラマブルミラーイメージ・キャンセル
G51.1
22
プログラマブルミラーイメージ
G53
00
機械座標系選択
G54
14
ワーク座標系1選択
G55
14
ワーク座標系2選択
G56
14
ワーク座標系 3 選択
G57
14
ワーク座標系 4 選択
G58
14
ワーク座標系 5 選択
G59
14
ワーク座標系 6 選択
G54.1
14
追加ワーク座標系選択
G61
15
イグザクトストップ・チェックモード
G64
15
切削モード
G64.1
15
輪郭切削モード
G65
00
カスタムマクロ呼び出し
5-3
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
G コード
グループ
機能
G66
12
カスタムマクロ・モーダル呼出し
G67
12
カスタムマクロ・モーダル呼出しキャンセル
G90
03
アブソリュート入力
G91
03
インクリメンタル入力
G92
00
座標系設定
G310
31
回転軸を含む線形補間送り速度
G311
31
回転軸を含まない線形補間送り速度
5-4
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3
G コードの詳細
以下の説明では、工具が動いているのであって、部品は動いていないということに注意して
ください。
5.3.1
位置決め / 早送り (補間なし)
(補間なし)(G00)
説明
G00 コマンドは工具の位置決めのために使われます。このコマンドは工具をワーク座標系の
特定の位置に移動させます。工具は特定の位置に到達するまで、早送り速度でそれぞれの軸
に沿って動きます。
X
線形補間モードを使っ
た経路
終点
始点
高速位置決めモードを使っ
た経路
Z
必要なフォーマット
G00 X Y Z A B C D E
G00 でよく使われるパラメータ
X-X 軸の座標値
Y-Y 軸の座標値
Z-Z 軸の座標値
A-A 軸の座標値
B-5軸の座標値
C-6軸の座標値
D-7軸の座標値
E-8軸の座標値
5-5
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
注意
これらの座標値は原点(part origin)もしくは現在の工具位置に関連したものになり、アブ
ソリュートかインクリメンタルになります。それは、G90 か G91 が実行されているかどうか
によります。
例
G00 X30.5 Y0.0 Z-5.0
警告
切削にはこのコードは用いないでください。点と点のルートが不確かなのと、工作機械業者
による、工作機械の早送り速度によるからです。
G00 に関連するサーボワークスアプリケーション・パラメータ
NC とマシンパラメータ(G00 が直線補間を行う)はどのように G00 が実行されているかに
影響します。G00 が直線補間を行うことが可能な場合は、G00 は最も早いスピードで直線補
間を実行します(このときのスピードはそれぞれの軸の早送り速度に制約されます)。G00
が直線補間を行うことができない場合は、G00 は直線補間なしで通常の早送り速度で実行さ
れます。
G00 に関連するその他の G コード
アブソリュート入力をする G90 とインクリメンタル入力をする G91 は特定する座標が絶対
(アブソリュート)座標(原点に関連するもの)か増分(インクリメンタル)座標(現在の
工具位置に関連するもの)として扱われます。
5-6
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3.2
直線補間(G01)
直線補間(
)
説明
G01 コマンドは、2つかそれ以上の軸上で工具を動かし、直線のルートをとるため
に使われます。このコマンドは工具を座標系の決められた位置に工具を動かします。複数軸
での移動は決められた速度で実行され、個々の軸の速度では実行されず、移動の方向におい
ての速度によります。CNC は 2 つの点の間の直線をキープするために、直線軌道を計算し、
複数のモータを同時に動かします。
X
特定の早送り速度で
線形補間モードを使
った経路
終点
始点
高速位置決めモードを使っ
た経路
Z
必要なフォーマット
G01 X Y Z A B C D E F
G01 でよく使われるパラメータ
X-X 軸の座標値
Y-Y 軸の座標値
Z-Z 軸の座標値
A-A 軸の座標値
注意:これらの座標値は原点(part origin)もしくは現在の工具
B-5軸の座標値
位置に関連したものになり、アブソリュートかインクリメンタ
C-6軸の座標値
ルになります。それは、G90 か G91 が実行されているかどうか
D-7軸の座標値
によります。
E-8軸の座標値
F-送り速度(直線上の移動)- 注意:個々の軸の速度は直線上の特定の速度で動かすため
に計算されます。
例
G01 X30.5 Z-5.0 F10
5-7
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
G01 に関連するその他の
に関連するその他の G コード
アブソリュート入力をする G90 とインクリメンタル入力をする G91 は特定する座標が絶対
(アブソリュート)座標(原点に関連するもの)か増分(インクリメンタル)座標(現在の
工具位置に関連するもの)として扱われます。
5.3.3
円弧補間(G02、
円弧補間(
、G03)
)
説明
G02、G03 コマンドは、2つかそれ以上の軸上で工具を動かし、円形のルートをとるために
使われます。G02 は右回り(時計回り)の円弧補間をとります。G03 は左回り(反時計回
り)の円弧補間です。これらのコマンドでは、座標系のなかで工具を特定の位置に動かすこ
とができます。複数軸の動きは特定の速度で対応できます。
工具の開始点(プラスかマイナスのサインも確認してください。)に関連するインクリメン
タル入力においての円弧の中心か、円弧の半径を特定する必要があります。
X
時計回りの円補間による経路
中心
X, Y ,Z パラメーターを指定
した終点
I
半径
始点
反時計回りの円補間による経路
K
Z
必要とされるフォーマット
G17
G02
X Y
G03
R
FQ
I J
G18
G02
Z X
G03
R
FQ
K I
G19
G02
Y Z
G03
R
FQ
J K
5-8
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
G02 と G03 でよく使われるパラメータ
X-X 軸の座標値
Y-Y 軸の座標値
Z-Z 軸の座標値
I-X 軸の円弧中心修飾
J-Y 軸の円弧中心修飾
K-Z 軸の円弧中心修飾
R-円半径指定
F-送り速度
Q-円運動でのエラー許容(ミリメータもしくはインチで)
注意
X、Y、Z-これらの座標値は原点(part origin)もしくは現在の工具位置に関連した
ものになり、アブソリュートかインクリメンタルになります。それは、G90 か G91 が実行さ
れているかどうかによります。
F-個々の軸の送り速度は、円弧上を動く特定の速度のために計算されます。
Q-送り速度が速すぎる場合、円運動が Q パラメータによって定められたエラー許容を超え
た場合、送り速度はストップしてしまいます。
R パラメータ(円半径指定)を決める場合は、I、J、K パラメータを指定することはできま
せん。そうしなければ、エラーが起こります。同様に、I、J、K パラメータを決めた場合は、
R パラメータを指定することはできません。
例
G18 G02 X30.5 Z-0.5 R10.5 F10 Q0.1
G18 G03 X21.0 Z-7 I17.0 K-3.0 F10 Q0.1
G02 と G03 に関連するその他の G コード
アブソリュート入力をする G90 とインクリメンタル入力をする G91 は特定する座標が絶対
(アブソリュート)座標(原点に関連するもの)か増分(インクリメンタル)座標(現在の
工具位置に関連するもの)として扱われます。
G17、G18、G19 コードは、どの面で動きがあるかを示すものです(順に XY、ZX、YZ 面)。
XY 面のために G17 を選んだ場合には、X と Y パラメータの代わりに X と Z パラメータを
伴う、G02 もしくは G03 コマンドを使います。そうしなければ、エラーが起こります。
5-9
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
XY, ZX, YZ 各平面での G02, G03
Y
X
Z
G03
G03
G02
G02
G02
Z
X
XY 平面
G03
ZX 平面
Y
YZ 平面
制限事項
円弧補間は 2 軸面でのみ行うことができます。つまり、3 軸以上での円弧補間はできません。
特記事項
円をプログラムするには、終点の座標はプログラムしないでください。もしくは、終点は始
点と同じであるということをプログラムしてください。そして、I、J、K の円弧中心修飾を
使って、円の中心を示してください。そうすれば、終点は始点と同じであると考えられ、そ
れが円であると認識されます。
下図のように、円の半径はプラスかマイナスで表示されます。プラスの半径は 180°かそれ
以下場合に用いられます。一方、マイナスは 180°かそれ以上の場合に適用されます。
警告
始点と同じ終点を指定し、R パラメータを使って円の半径を決めると、エラーが起こります。
R パラメータで半径を指定し、終点がその円上にない場合はエラーが起こります。それは、
終点と始点の距離が、指定された半径の 2 倍以上あるときにその様なエラーが発生します。
この場合、半径で示された円弧は 2 つの点をつなげるための十分な距離がないため、円弧を
配置するための中心点を計算することはできません。
5-10
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
X
負の円弧半径を使った場合の経
路(例 R –5.0)
正の円弧半径場合による経路
(例 R5.0)
中心
XYZ パラメーターによる終
点
半径
半径
始点
中心
Z
半径(R パラメータ
ーによって指定)
X
XYZ パラメーターによって指
定された終点
半径(R パラメータ
ーによって指定)
始点
Z
I、J、K パラメータを使って円の中心を指定し、X、Y、Z パラメータを使っての終点がその
円上にない場合は、円弧運動は実行されます。それは、終点に向かって直線動作で行われま
す。
5-11
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
X
IJK パラメーターによっ
て指定された中心
XYZ パラメーターによって指
定された終点
終点到達の際の線形移
動
I
始点
反時計回り円補間による経路
K
Z
5.3.4 ヘリカル補間(G02、
、G03)
)
ヘリカル補間(
説明
G02 と G03 コマンドは円弧補間だけでなく、ヘリカル補間にも使われます。ヘリカル補間で
は、工具をらせん状に動かします。2 軸の円弧補間を同時に動かすことによって、他の最大
2 軸までの直線補間を実行できます。
以下の 2 つの違いを除いて、ヘリカル補間コマンドは、円弧補間コマンドと同じ方法で行う
ことができます。
1)
他の 1 軸もしくは 2 軸のための座標値の追加
2)
2)F パラメータで示す送り速度はヘリカル・スパイラルの円弧上の送り速度
ではありません。例えば下図で示されるように、円弧の接線方向の速度が実際
の速度になります。それゆえ、ヘリカル・スパイラルの円弧上の速度は次のよ
うになります。
螺旋経路に沿った円弧の長さ
F x=-----------------------------接線に沿った円弧の長さ
詳しくは第 3 章 3.3 を参照ください。
5-12
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
Z
螺旋補間による経路
XZ 平面上での円補間による経路
(注意:F パラメーターによる送
り速度はここに射影されます)
X
必要とされるフォーマット
G17
G02
X Y
G03
R
I J
G18
G02 Z X
G03
R
K I
Y/A F
G19
G02
Y Z
G03
R
J K
X/A F
Z/A
F
ヘリカル補間の
ヘリカル補間
の G02 と G03 でよく使われるパラメータ
X-X 軸の座標値
Y-Y 軸の座標値
Z-Z 軸の座標値
I-X 軸の円弧中心修飾
J-Y 軸の円弧中心修飾
K-Z 軸の円弧中心修飾
R-円半径指定
F-送り速度
5-13
Z
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
注意
X、Y、Z-これらの座標値は原点(part origin)もしくは現在の工具位置に関連した
ものになり、アブソリュートかインクリメンタルになります。それは、G90 か G91 が実行さ
れているかどうかによります。
F-ヘリカル工具ルートではなく、円弧の接線方向の速度を示します。個々の軸の速度は、
円弧の接線方向の特定の速度のために計算されます。
R パラメータ(円半径指定)を決める場合は、I、J、K パラメータを指定することはできま
せん。そうしなければ、エラーが起こります。同様に、I、J、K パラメータを決めた場合は、
R パラメータを指定することはできません。
例
G18 G02 X30.5 Z-5.0 R10.5 20.0 F10
G19 G03 X21.0 Y-7 J17.0 K-3.0 Z20.0 A4.0 F10
5.3.5
ポジティブ(+)/
ネガティブ(―)指数関数補間(G02.3、
、G03.3)
ポジティブ(+) ネガティブ(―)指数関数補間(
説明
G02.3 と G03.3 コマンドは指数関数補間に使われます。それは、製品の回転が回転軸(A
軸)の移動に関して指数関数的に変化するものです。G02.3 はポジティブ指数関数補間、
G03.3 はネガティブ指数関数補間を指示します。これらのコマンドは一定のねじれ角を持つ
テーパ溝・マシニングを可能にする直線軸(A 軸)に関して、直線補間を組み入れます。
Z
∠J
∠3
∠2
∠1
X
A
∠1 = ∠2 = ∠3 = ∠I = 定螺旋角
5-14
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
X
∆X
A
∆A
必要とされるフォーマット
G02.3
G03.3
XYZIJKRFQ
G02.3 と G03.3 でよく使われるパラメータ
X-X 軸の終点座標値
Y-Y 軸の終点座標値
Z-Z 軸の終点座標値
I-角度 I を指定(前ページの図を参照)
J-角度 J を指定(前ページの図を参照)
R-指数関数補間の定数(下記の式を参照)
F-初期の速度(回転軸の速度を含む)
Q-終点速度(回転軸の速度を含む)
注意
X、Y、Z-これらの座標値は原点(part origin)もしくは現在の工具位置に関連した
ものになり、アブソリュートかインクリメンタルになります。それは、G90 か G91 が実行さ
れているかどうかによります。
速度は直線軸移動上の F と Q の間の補間によって変わります。
5-15
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
G02.3 と G03.3 に関する数式
θ
K
travel along the linear axis: X(θ)
=R x e – 1
travel along the rotary axis: A(θ)
= (– 1)
ω
x
1
tan(θ)
x
360
x
θ
2π
ポジティブ回転(G02.3)でω=0、ネガティブ回転(G03.3)でθ=0、θが弧度においての回
転角度の場合。
工具が直線 X 軸上の、X1から X2に移動する場合、回転軸に関して動いた角度は次のように
計算されます。
∆θ = K
x
ℓn
X2
x
tan(I) + 1 – ℓn X1 x tan(I) + 1
R
R
例
G02.3 X30.5 Y2.0 Z-5.0 I10.0 J30.0 R1.0 F20 Q10
G02.3 と G03.3 でよく使わ
でよく使われるその他の
れるその他の G コード
アブソリュート入力をする G90 とインクリメンタル入力をする G91 は特定する座標が絶対
(アブソリュート)座標(原点に関連するもの)か増分(インクリメンタル)座標(現在の
工具位置に関連するもの)として扱われます。
5.3.6 ドウェル(G04)
)
ドウェル(
説明
このコマンドはプログラム指令のなかで指定された時間だけ遅らせることができるものです。
パラメータによって指定された時間を次のブロックへ移る際、遅らせることができます。
G04 で考えられるパラメータ
P-小数点なしの時間(ミリセカンド)
X-小数点を含む時間(秒)
5-16
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
例
G04 P5000 (5 秒遅らせる)
G04 X3.0(3 秒遅らせる)
5.3.7 ダイナミック先読み輪郭制御(DALCC)オン
)オン/オフ(
、G08)
)
ダイナミック先読み輪郭制御(
)オン オフ(G05、
オフ(
説明
この先読み機能(DALCC)は高速、高精度加工のためにデザインされています。先読み機
能の重要な点は位置コマンド出力パルスを、従来の方法よりもより高度な処理能力で対処さ
せていることです。ですから、位置コマンドはより正確にプログラム経路に従います。
従来の方法での問題は、ブロックコマンドからの出力パルスはぎくしゃくした動きを避ける
ために、平滑化フィルタ(smoothing filter)を通さなければならないことでした。しかし平
滑化フィルタの欠点は、それぞれの軸上の位置コマンドの移動が調整なしでは遅れてしまう
ということでした。言い換えれば、補間が十分に行われなく、工具経路の軌道が正確さを欠
いているということです。
DALCC によって、CNC は移動の加減速をコマンドされた軌道に従ってできるようになりま
した。つまり、各軸の加減速は補間によって調整され動くことができます。それゆえ、位置
コマンドの正確さを損なう平滑化フィルタの必要性はなくなり、結果として、ぎくしゃくし
た動きがなくコマンドされた軌道を正確にたどることができ、最大の切削送り速度で各軸の
加減速を最適化することができます。
G05 と G08 で考えられるパラメータ
P-ダイナミック先読み輪郭制御オン / オフを指定するもの
例
G05 と G08 に関する有益な使い方の4つの方法を以下に挙げます。
G05 P10000
G05 P0
ダイナミック先読み輪郭制御をオンにする
ダイナミック先読み輪郭制御をオフにする
G08 P1
G08 P0
ダイナミック先読み輪郭制御をオンにする
ダイナミック先読み輪郭制御をオフにする
5-17
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
制限事項
・ G05 と G08 に関して上記の4つの使用法以外のものは無効です。
・ ダイナミック先読み輪郭制御がオンのとき、G01、G02、G03 モーションコマンドの
みが有効となります。
・ ダイナミック先読み輪郭制御がオンで G01、G02、G03 以外のコマンドがプログラム
された場合は、正しく作動しない場合があります。もしくは、プログラムをストッ
プさせてしまう原因になります。
・ ダイナミック先読み輪郭制御がオンの際、工具径補正(G41、G42)、スケーリング
(G51)、ミラーイメージ(G51.1)を使う必要はありません。
5.3.8 XY / ZX / YZ 平面指定(G17、
、G18、
、G19)
)
平面指定(
説明
G17、G18、G19 コマンドは、移動するための平面を決定するために使います。
G17:XY 平面
G18:ZX 平面
G19:YZ 平面
例
G17 G02 X5.2 Y-7.0 R3.3 F500
注意
4 軸以上のシステムでは、“X”は X 軸かもしくは X 軸と平行の他の軸を示します。“Y”
と“Z”軸も同様です。
G17、G18、G19 に関連する他の G コード
G17、G18、G19 コマンドは以下の G コードと一緒に使われます;G02 と G03、G02.3 と
G03.3
デフォルト
G17 は、G17、G18、G19 がなにもプログラムされていないときのデフォルトモードとなっ
ています。
5-18
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3.9
インチ / メトリック・データ入力(G20、
、G21)
)
メトリック・データ入力(
説明
G20 と G21 コマンドはインチ入力とメトリック入力の切り換えを行うことができます。
G20: 入力単位はインチです
G21: 入力単位はミリメータです。
G20 と G21 コマンドはプログラムのはじめによく使われます。すべてのコマンドはどちらか
の入力単位をもとにプログラムします。
制限事項
G20 と G21 コマンドは直線軸のみに適用されます。直線運動する軸で、それが、インチかメ
トリックであらわされる場合です。インチ法かメトリック法の選択は度数で表される回転軸
には影響しません。
デフォルト
G21 は G20 もしくは G21 がプログラムされていないときのデフォルトモードになっていま
す。
5-19
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3.10 ファレンス点への復帰 / リファレンス点からの復帰
リファレンス点からの復帰(
(G28、
、G29)
)
説明
G28 と G29 コマンドはリファレンス点への復帰、リファレンス点からの復帰のために使われ
ます。リファレンス点はサーボワークス・アプリケーションのなかにセットされています。
G28:リファレンス点への復帰
G29:リファレンス点からの復帰
G28 コマンドは始点(現在工具位置)から工具を復帰するのに使います。これはパラメータ
で指定された中間点を経由して行われます。
G29 コマンドはリファレンス点(現在工具位置)から目的の点へ工具を復帰するのに使いま
す。これは G28 コマンドで指定された中間点を経由して行われます。
X
補間点(G28 コマンドによ
るパラメーターによって指
定)
G28 コマンドによ
る経路
リファレンス点
始点
G28
X
補間点(G28 コマンドによ
るパラメーターによって指
定)
G29 コマンドによ
る経路
Z
リファレンス点
目標点(G29 コマンドによる
パラメーターによって指定)
Z
5-20
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
G28 と G29 で考えられるパラメータ
X-X 軸の座標値
Y-Y 軸の座標値
Z-Z 軸の座標値
A-A 軸の座標値
B-5 軸の座標値
C-6 軸の座標値
D-7 軸の座標値
E-8 軸の座標値
注意
X、Y、Z-これらの座標値は原点(part origin)もしくは現在の工具位置に関連した
ものになり、アブソリュートかインクリメンタルになります。それは、G90 か G91 が実行さ
れているかどうかによります。
G28 と G29 に関連するその他の G コード
アブソリュート入力をする G90 とインクリメンタル入力をする G91 は特定する座標が絶対
(アブソリュート)座標(原点に関連するもの)か増分(インクリメンタル)座標(現在の
工具位置に関連するもの)として扱われます。
5-21
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3.11 第2ファレンス点復帰(G30)
)
第2ファレンス点復帰(
説明
G30 コマンドは工具を始点から追加点(第 2 点)への復帰を行うものです。これは、パラメ
ータで示される座標の中間点を経由します。追加のリファレンス点はサーボワークス・アプ
リケーションでセットされます。
X
補間点(G30 コマンドによ
るパラメーターによって指
定)
G30 コマンドによ
る経路
追加 リファレ
ンス点
始点
G30 で考えられるパラメータ
G30
Z
X-X 軸の座標値
Y-Y 軸の座標値
Z-Z 軸の座標値
A-A 軸の座標値
B-5 軸の座標値
C-6 軸の座標値
D-7 軸の座標値
E-8 軸の座標値
P-どの追加リファレンス点かを指示する(P2、P3 など)。時に指示しない場合は P2 がデ
フォルトとなる。
注意
これらの座標値は原点(part origin)もしくは現在の工具位置に関連したものになり、アブ
ソリュートかインクリメンタルになります。それは、G90 か G91 が実行されているかどうか
によります。
例
G30 P3 X0.5 Z7.8
G29 X7.5 Z2.1
5-22
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
G30 に関連するその他の G コード
アブソリュート入力をする G90 とインクリメンタル入力をする G91 は特定する座標が絶対
(アブソリュート)座標(原点に関連するもの)か増分(インクリメンタル)座標(現在の
工具位置に関連するもの)として扱われます。
5-23
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3.12 スキップ機能(G31)
)
スキップ機能(
説明
直線補間のためのこのワンショットコマンドは、キャンセルもしくは遂行されないパートプ
ログラムにおいてのコマンドを指示します。これは、このコマンドが実行されている間に、
G6.6PLC 信号が変化するときに可能となります。G6.6PLC 信号が変化すると、コマンド実行
は終了し、パートプログラムの次のブロックがスタートします。
G01 コマンドのように G31 コマンドは 2 軸もしくはそれ以上で工具を動作させるために使い、
直線移動を行います。このコマンドはワーク系のなかで工具を特定の場所へ移動させます
(オプションスキップ・スイッチが作動しない限り)。複数軸の移動は決められた速度で行
われます。この速度というのは移動の速度であって、個々の軸の速度を表すものではありま
せん。CNC は 2 点間の直線経路をキープするために、直線軌道を計算し、複数のモータを
シンクロさせます。
必要とされるフォーマット
G31 X Y Z A B C D E F
G31 でよく使われるパラメータ
X-X 軸の座標値
Y-Y 軸の座標値
注意: これらの座標値はアブソリュートであった
Z-Z 軸の座標値
り、パート原点や使っている工具の位置の相対的な
A-A 軸の座標値
インクリメンタルになります。これは G90 や G91
B-5 軸の座標値
が使われているかどうかによります。
C-6 軸の座標値
D-7 軸の座標値
E-8 軸の座標値
F-送り速度(直線経路上の移動)
注意
X~E これらの座標値は原点(part origin)もしくは現在の工具位置に関連したものになり、
アブソリュートかインクリメンタルになります。それは、G90 か G91 が実行されているかど
うかによります。
F-個々の軸の速度は、直線経路の速度を出すために計算されます。
5-24
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
G6.6 PLC 信号の変更
例
X
G01,G31 による工具の移
動。G6.6PLC 信号による影
響はなし。
X
終点
20.0
20.0
終点
工具の動き
始点
始点
10.0
20.0 Z
G31 による工具の移動。G6.6PLC 信号
によって G31 の実行中に影響がある。
10.0
Blocks of Code with G01:
N10 G91 G01 X20.0 Z10.0;
N11 Z20.0;
20.0 Z
Blocks of Code with G31:
N10 G91 G31 X20.0 Z10.0;
N11 Z20.0;
制限事項
G31 は 1 ブロックのみに有効です。
G31 に関連するその他の G コード
アブソリュート入力をする G90 とインクリメンタル入力をする G91 は特定する座標が絶対
(アブソリュート)座標(原点に関連するもの)か増分(インクリメンタル)座標(現在の
工具位置に関連するもの)として扱われます。
5-25
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3.13 工具径補正(G40、
、G41、
、G42)
)
工具径補正(
説明
G40:工具径補正 (TRC) キャンセル
G41:工具径補正 (TRC) 左側
G42:工具径補正 (TRC) 右側
工具径補正 (TRC)は工具の長さを考慮することなく直接、部品の輪郭をプログラム
することができます。
制限事項
・ 先読みバッファ(100 ブロック)
・ 工具径補正 (TRC)モードでは、モーション(G00、G01、G02、G03)とノンモーシ
ョン機能(G04、M、S、B、Fコード)が選択できます。
・ 工具径補正 (TRC)モードの最初と最後のモーションでは、G02 と G03 は実行できま
せん。
・ スケーリング(G51)やミラーイメージ(G51.1)は、工具径補正 (TRC)モードがオ
ンの際は、使う必要はありません。
デフォルト
G40 は G40、G41、G42 がプログラムされていない場合のデフォルトモードです。
5-26
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3.14 工具長補正+/
、G44、
、G49)
)
工具長補正+ -、工具長補正キャンセル(G43、
-、工具長補正キャンセル(
説明
工具長補正は実際の工具位置と理論上の工具位置の違いを調整するものです。T コードがパ
ートプログラムで実行された際は、プログラム位置は工具位置オフセットにシフトします
(工具位置オフセットのためのそれぞれの実際の移動コマンドの補正とは対照的に)。
G43:工具長補正+
G44:工具長補正-
G49:工具長補正キャンセル
X
Z 軸上での工具長さ補間
理論的工具端位置(工具ノー
ズ未装着時)
実工具端位置
Z
G43 では、(アブソリュートコマンドはプログラムで指示される終点の座標系に加算されま
す(アブソリュートコマンド(G90)かインクリメンタルコマンド(G91)が有効かどうか
にかかわらず)。工具長オフセット値がマイナスの数字のときは、マイナスの数字を足して
いくことは工具をマイナスの方向に動かすという状況を引き起こします。
G44 では、工具長オフセット値はプログラムで指示される終点の座標系に減算されます(ア
ブソリュートコマンド(G90)かインクリメンタルコマンド(G91)が有効かどうかにかか
わらず)。工具長オフセット値がマイナスの数字のとき、そのマイナスの数字を減算するこ
とは、工具がプラスの方向に移動することを意味します。
5-27
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
工具長オフセットを指定するのに以下の3つの方法があります。
1)工具長オフセット A 型 -Z 軸方向の工具長補正
2)工具長オフセット B 型 -X、Y、Z 軸の工具長補正
3)工具長オフセット C 型 -使用可能な軸での工具長補正
必要とされるフォーマット
工具長オフセット A 型:
工具長オフセット B 型:
工具長オフセット C 型:
G43
G44
ZH
G17
G43
G44
ZH
G18
G43
G44
YH
G19
G43
G44
XH
G43
G44
αH
G43、
、G44 でよく使われるパラメータ
X-X 軸の工具長補正
Y-Y 軸の工具長補正
Z-Z 軸の工具長補正
α-軸の工具長補正
H-工具長オフセット値のアドレス(サーボワークス・アプリケーションのオフセットモー
ドにあります。)例えば、H1 は工具 1 番での工具長オフセット値のアドレスを指します。
例
G43 Z50.5 H3 (H3 が工具 3 番での 10.0 の工具長オフセット値に対応するとすれば、工具
の動きは、50.5+10.0=60.5 となります。)
特記事項
2 軸かそれ以上で工具長オフセットをプログラムするには、それぞれの軸にそ
れぞれのブロックコードを使用してください。
G18 G43 Y H1
G19 G43 X H5
5-28
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
注意
工具長オフセットキャンセルは以下の 2 つの方法でプログラムできます。
1)G49 ブロックコードをプログラムする(これはすべての軸においてオフセットをキ
ャンセルします)。
2)H0 とともに、G43 もしくは G44 ブロックコードをプログラムする(これは垂直面
の特定の軸のみにおいてオフセットをキャンセルします)。
警告
工具オフセット C 型では、オフセットをキャンセルするためには、必ず G49 と H0 を用いな
ければなりません。そうしなければ、アラームが起こります。
5-29
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3.15 スケーリング・キャンセル / スケーリング(
スケーリング(G50、
、G51)
)
説明
スケーリング機能は、すべての軸もしくは個々の軸においてスケールコマンドを行い、部品
を大きくしたり、小さくするものです。
G50:スケーリングキャンセル
G51:スケーリング
X
スケーリングの始点と中心
3
2
4
注意
X
工具移動の
順番
1
スケーリン
グを伴う終
点
5
スケーリングを伴う工具
移動(全ての軸に関して倍
率2)
スケーリングを伴
わない工具移動
Z
例 #1
3
X
スケーリング
の中心
2
スケーリン
グを伴う終
点
4
5
スケーリングを伴う工具移動(全ての
軸に関して倍率2)
1
始点
スケーリン
グを伴わな
い終点
スケーリングを伴わない工具移動
Z
例 #2
5-30
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
必要とされるフォーマット
必要とされるフォーマッ
ト
G51 X Y Z P
G50;
G51 X Y Z I J K;
G50;
G50 と G51 でよく使われるパラメータ
X-スケーリングの X 軸中心点のアブソリュート座標値
Y-スケーリングの Y 軸中心点のアブソリュート座標値
Z-スケーリングの Z 軸中心点のアブソリュート座標値
P-全軸でスケーリングの拡大率を指定(0.001-999.999)
I-X 軸でスケーリングの拡大率を指定(0.001-999.999)
J-Y 軸でスケーリングの拡大率を指定(0.001-999.999)
K-Z 軸でスケーリングの拡大率を指定(0.001-999.999)
注意
P パラメータ(全軸においての拡大率)を指定する場合は、I、J、K パラメータ(個々の軸
においての拡大率)を指定することはできません。従わない場合はエラーが起こります。同
様に、I、J、K パラメータを指定する場合は、P パラメータを指定することはできません。
例
G51 X10.0 Y10.0 Z10.0 P2.0
G50;
G51 X10.0 Y10.0 Z10.0 I2.0 J2.0 K1.0
G50;
制限事項
スケーリングがオンのときは、工具径補間(G41、G42)とミラーイメージ(G51.1)を使用
することはできません。
参照
・ コマンドのなかに I、J、K パラメータのうち全てではなくひとつでも含まれる場合
は、指定されていない拡大率は、G51 を前回使った際のセッティングのままになっ
ています。例えば、J パラメータを指定して、K パラメータを指定していない場合は
K パラメータは前回のセッティングのままになっていると思われます。
・ P、I、J、K パラメータのうち、どれもが指定されていない場合は、エラーが起こり
ます。
・ X、Y、Z パラメータがコマンドから削除された場合は、後続のコマンドをスケーリ
ングするために、G51 が指令した現在の位置が中心になります。
5-31
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
デフォルト
G50 は、G50 もしくは G51 がプログラムされていない場合、デフォルトモードになります。
5-32
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3.16 ミラーイメージキャンセル / ミラーイメージ(G50.1、
、G51.1)
)
ミラーイメージ(
説明
ミラーイメージ機能では、1 軸もしくはそれ以上でのミラーイメージのコマンドの実行を行
うことができます。これは、1 つ以上の部分が対称な部品の際に役立ちます。サブプログラ
ムで、全体部品の一部をプログラムするのみとなります。ミラーイメージ機能をオンにして、
1 回もしくはそれ以上サブプログラムを呼び出すことができます。
G50.1:ミラーイメージキャンセル
G51.1:ミラーイメージ
必要とされるフォーマット
G51.1 X Y Z
G50.1 X Y Z
注意
G50.1 では、ミラーイメージはパラメータとして含まれている軸のためだけにキャンセルさ
れます。
G50 と G51 でよく使われるパラメータ
注意: これらの座標値はアブソリュートであった
り、パート原点や使っている工具の位置の相対的
なインクリメンタルになります。これは G90 や
G91 が使われているかどうかによります。
X-ミラーイメージの X 軸中心点の座標値
Y-ミラーイメージの Y 軸中心点の座標値
Z-ミラーイメージの Z 軸中心点の座標値
注意
これらの座標値は原点(part origin)もしくは現在の工具位置に関連したものになり、アブ
ソリュートかインクリメンタルになります。それは、G90 か G91 が実行されているかどうか
によります。
5-33
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
例
以下の例は、ミラーイメージ機能の使い方を表すものです。これは、部品の一部分のための
サブプログラムを使い、部品において対象となる 2 軸をメインプログラムのなかのサブプロ
グラムを使って呼び出します。
図
X
軸対称の鏡像
80.0
2
70.0
23
3
1
4
60.0
5
6
40.0
27
7
13
20
14
12
8
19
15
18
17
11
10
10.0
0.0
0.0
26
終点
21
30.0
20.0
22
始点
50.0
24
25
9
10.0
20.0
16
30.0
40.0
5-34
50.0
60.0
70.0
80.0
Z
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
制限事項
工具系補間(G41、G42)とスケーリング(G51)はミラーイメージがオンの場合、使用す
ることはできません。
注意
G51.1 コマンドが1つのパラメータ(1 軸)で指令されるとき、回転方向は弧のコマンドの
ために反対になります。
G50.1 と G51.1 に関連するその他の G コード
アブソリュート入力をする G90 とインクリメンタル入力をする G91 は特定する座標が絶対
(アブソリュート)座標(原点に関連するもの)か増分(インクリメンタル)座標(現在の
工具位置に関連するもの)として扱われます。
デフォルト
G50.1 は G50.1 もしくは G51.1 がプログラムされていない場合の、デフォルトモードです。
5-35
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3.17 機械座標系選択(G53)
)
機械座標系選択(
説明
このコマンドが実行されるとき、1つのブロックコードのためだけに座標系は機械座標系に
セットされます。そして、工具はこれらの座標(機械原点に関して)に早送りで移動されま
す。それぞれ連続するブロックコードは、このブロックコードの前に有効であった座標系と
関係します。
G53 でよく使われるパラメータ
X-X 軸での座標値
Y-Y 軸での座標値
Z-Z 軸での座標値
A-A 軸での座標値
B-B 軸での座標値
C-C 軸での座標値
D-D 軸での座標値
E-E 軸での座標値
例
G53 X0.0 Y0.0 Z0.0
(これは工具を機械原点に戻すものです。)
5-36
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3.18 ワーク座標系選択(G54~
~G59)
)
ワーク座標系選択(
説明
これらのコードは、他のワークに対応する異なる座標系を選択するために使います。G54 か
ら G59 を用いて、最大6座標系を選択できます。
G54
G55
G56
G57
G58
G59
ワーク座標系#1
ワーク座標系#2
ワーク座標系#3
ワーク座標系#4
ワーク座標系#5
ワーク座標系#6
原点がワーク上に固定された部品をセットされるという方法で座標系を設定することによっ
て、ワークをシンプルにプログラムできます。G コードのサンプルブロックを使って、リフ
ァレンス点を移動させるだけで、異なる6つのワークを切ることができます。
G54~
~G59 でよく使わ
でよく使われるパラメータ
れるパラメータ
とくにありません。ワーク座標系の座標は、サーボワークス・アプリケーションのなかにあ
る、セッティングモードかコンフィギュレーションモードで行います。
例
X
図
ワーク座標
系#1
ワーク座標
系#2
ワーク座標
系#3
G54
G55
G56
ワーク座標
系#4
ワーク座標
系#5
ワーク座標
系#6
G57
G58
G59
Z
装置原点 (0.0000, 0.0000)
5-37
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
注意
G54 から G59 は異なる座標系を選択するために用います(設定するためではありません)。
これらの 6 つの座標系は、前もって座標系を選択するためにコードを設定する必要がありま
す。
どのサーボワークス・アプリケーションを使っているかにより、様々な方法でワーク座標系
を設定することができます。詳しくはユーザーマニュアルを参照下さい。
サーボワークス API を用いて作成したアプリケーションを使用する場合は、
“sssPresetWorkCoordinate”を使用することが可能です。
警告
・ G54 から G59 を用いるパートプログラムを実行する前に、工作機械のワーク座標系
設定をチェックしてください。
・ パラメータを含む G54、G55、G56、G57、G58、G59 を呼び出す場合は、それらは
無視されます。
・ G54~G59 のコードブロックはそれぞれ別のラインに、パラメータを含まずに表示さ
れるはずです。
5-38
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3.19 追加ワーク座標系選択(G54.1)
)
追加ワーク座標系選択(
説明
G54 から G59 で選択可能な 6 つの座標系に加えて、G54.1 では最大 58 の異なる追加ワーク
座標系を使い、選択することができます。
必要とされるフォーマット
G54.1 P
G54.1 でよく使われるパラメータ
P-選択したいワーク座標系の数(1 から 58 まで)
例
G54.1 P18
制限事項
MC‐Quad とモーションプロは G54.1 の機能はありません。
5-39
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3.20 イグザクトストップ・チェックモード / 切削モード(
切削モード(G61、
、G64)
)
説明
イグザクトストップ・チェックモードでは、すべての移動コマンド(G00、G01、G02、
G03)は工具の減速を終点で行います。そして、インポジションがチェックされた後に次の
ブロックが実行されます。切削モードは、主に G61(イグザクトストップ・チェックモー
ド)をキャンセルするために用いられます。切削モードでは、それぞれのブロックの終点で
インポジションチェックは行われません。そのかわりに、プログラム実行が自動的に次のブ
ロックで行われます。
G61:イグザクトストップ・チェックモード
G64:切削モード
例
G61 G01 X9.3 Z2.7 F500
注意
ワークのコーナーでのシャープな角を必要とする際には、イグザクトストップ・チェックモ
ードを使用してください。その他の時には、切削モードを使用してください。
デフォルト
G64 は、G61 もしくは G64 がプログラムされていないときのデフォルトモードです。
5-40
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3.21 連続切削モード(G64.1)
)
連続切削モード(
説明
連続切削モードでは、それぞれのブロックの終わりで、工具の減速やインポジションチェッ
クはありません。その代わりに、自動的に次のブロックでプログラム実行が行われます。
(G64 の切削モードに似ています。)
連続切削モードは、ハイスピードで細かな輪郭制御を行い、より正確な速度制御やスムーズ
なモーションを可能にする“ブロックロールオーバー”技術を用いています。
制限事項
G64.1 は、ダイナミック先読み輪郭制御はオンの場合のみ利用可能です。(詳しくは第 3 章
3.7 を参照してください。)ダイナミック先読み輪郭制御がオフの場合は、G64.1 は G64 と
同じように実行されます。
5-41
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3.22 カスタムマクロ呼び出し、カスタムマクロモーダル呼び出し、カスタム
マクロモーダルキャンセル(G65~
~67)
)
マクロモーダルキャンセル(
説明
カスタムマクロの使用は、カスタムマクロで変数を使えるというメリットを除いて、メイン
パートプログラムからのサブプログラムの呼び出しにとても似ています。これより、カスタ
ムマクロはサブプログラムより、何回も使いやすいということがいえます。例えば、カスタ
ムマクロ(カスタムマクロ指令とともに)を使用する場合は、ボルト穴のためにカスタムマ
クロを使い、そして指定する変数(独立変数)を変更するだけで他のプログラムを作動する
ことができます。ボルト穴をプログラムするために、サブプログラムを使用する場合は、そ
れぞれのサイズにしたがって異なるサブプログラムを作成しなければなりません。
カスタムマクロのフォーマットはサブプログラムのフォーマットと同様です。
0 Macro number;
·
·
body of
·
custom macro
·
·
M99;
カスタムマクロ呼び出しはワンショットコマンドで、G65 を使うとカスタムマクロが呼び出
されるものです。(しかし、マクロが繰り返される回数は L パラメータにより、1 回以上実
行されるかもしれません。)
モーダルカスタムマクロはモーダルコマンドです。それは、G66 を使って呼び出されるカス
タムマクロはその全体において、実行されます。(しかし、多くの場合、L パラメータは繰
り返すために、実行を指示します。)毎回、移動コマンドは実行されます。この繰り返され
る実行は、カスタムマクロモーダル呼び出しが G67 コマンドでキャンセルされるまで、続
きます。
詳しくはサーボワークスカスタムマクロプログラミングマニュアルを参照してください。
G65:カスタムマクロ呼び出し
G66:カスタムマクロモーダル呼び出し
G67:カスタムマクロモーダル飛び出しキャンセル
必要とされるフォーマット
G65
P L <argument assignment>
G66
5-42
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
G65~
~G67 で考えられるパラメータ
P-マクロナンバー
L-カスタムマクロの実行を繰り返す回数(デフォルト値は1)
これらの 2 つのパラメータに加えて、カスタムマクロを独立変数指令で呼び出すことができ
ます。これは、パラメータとしては考えません。
例
G65 P100 Z20.0 R2.5 F500
5-43
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3.23 アブソリュート / インクリメントプログラミング(G90、
、G91)
)
インクリメントプログラミング(
G90 と G91 コマンドは、機械にアブソリュート座標かインクリメンタル座標で移動を指令す
るかどうかを知らせるものです。
G90:アブソリュートプログラミング(パートオリジンに関するアブソリュート座標)
G91:インクリメンタルプログラミング(現在の工具位置に関するインクリメンタル座標)
例
下記の図のように、G01(直線補間)で始点から終点までの移動をプログラムすると仮定し
てみてください。
15.0
X
終点
14.0
11.0
始点
3.0
8.0
23.0
Z
このプログラムを G90 もしくは G91 でも組むことができます。
G90 G01 X14.0 Z23.0
もしくは
G91 G01 X15.0 Z11.0
デフォルト
G90 は、G90 もしくは G91 がプログラムされていない場合のデフォルトモードになっていま
す。
5-44
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3.24 座標系設定(G92)
)
座標系設定(
説明
G92 コマンドはワーク座標系のセットアップに使います。このコマンドでは、ワーク上の指
定された座標でゼロ地点をセットします。これは、プログラミングをシンプルにするもので、
ワークに関するすべてのコマンドは、機械オリジンに関係するというよりは、ワーク上の点
に関連しています。
G92 で考えられるパラメータ
X-X 軸での座標値
Y-Y 軸での座標値
Z-Z 軸での座標値
A-A 軸での座標値
B-5 軸での座標値
C-6 軸での座標値
D-7 軸での座標値
E-8 軸での座標値
例
G92 X5.6 Z8.2
X'
8.2
X
5.6
現在位置(ワーク座標系で
5.6, 8.2)
Z'
ワーク原点 (0.0000, 0.0000)
Z
装置原点
5-45
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
5.3.25 回転軸を考慮する又は考慮しない直線補間送り速度(
、G311)
)
回転軸を考慮する又は考慮しない直線補間送り速度(G310、
説明
G310 と G311 は指定された送り速度が回転軸を考慮するかしないかを指示するために使われ
るものです。
G310:回転軸を考慮する直線補間送り速度
G311:回転軸を考慮しない直線補間送り速度
例
A 軸は回転軸で、X、Y、Z じくは通常(ボールねじで動かされる直線テーブル)のもので
あると仮定してください。
G コードは、
G310;
G91 G01 X30.0 Y40.0 A50.0 F3000
とすると、各軸が下記のような速度で動きます。
X 軸速度 =
3000 x 30.0
2
2
30.0 + 40.0 + 50.0
Y軸速度 =
3000 x 40.0
= 1,272.8 (mm/min)
2
= 1,697.1 (mm/min)
30.02 + 40.02 + 50.02
Z軸速度 =
3000 x 50.0
2
2
30.0 + 40.0 + 50.0
= 2,121.3 (deg/min)
2
5-46
ServoWorks パートプログラミングマニュアル
第 5 章: G コード(準備機能)
一方で、この G コードは、
G311;
G91 G01 X30.0 Y40.0 A50.0 F3000
各軸を下記のような速度で動かします。
X軸速度 =
3000 x 30.0
2
30.0 + 40.0
= 1,800.0 (mm/min)
2
デフォルト
G310 は G310 もしくは G311 がプログラムされていない際のデフォルトモードになってます。
5-47
ServoWorks パートプログラミングマニュアル
第 6 章: Mコード(その他のコード)
第6章
章: Mコード(その他のコード)
2 つ以上の意味がある場合は複数表記されています。
M-Code
Description
M00
プログラム一時停止
M01
プログラムオプション停止
M02
プログラム終了
M30
プログラム終了および巻き戻し
M98
メインプログラムからのサブプログラムの呼び出し。(例:
M98 PTest_1 R3 は OTest_1.dat という同じフォルダー内の親
プログラムにあるサブプログラムを呼び出し、その後 3 回繰
り返します。)
M99
サブプログラムからメインプログラムへ戻る
注意
一般 M コードは、同じブロックで指定されたモーションが終了した後にプロセスされます。
それゆえ、M コードを最初に実行したい場合は、モーションを指令するブロックコード鳥も
前の異なるラインでそれを指令してください。
6-1
ServoWorks パートプログラミングマニュアル
第 7 章: スピンドル
スピンドル機能と
機能と S コード
第7章
章: スピンドル機能と
スピンドル機能と S コード
説明
S コードは、スピンドル速度(RPM)又は、定表面速度(工具とワークの相対速度)を指定す
る5桁のコードです。
必要とされるフォーマット
必要とされるフォーマット
シングルスピンドル又は、マルチスピンドルの第一スピンドル用: Sxxxxx
マルチスピンドル用: Sxx_yyyy
パラメータ
シングルスピンドル用:
xxxxx – spindle speed (integer)
マルチスピンドル用: xx – スピンドル番号 (1 ~ 16)
yyyyy – スピンドル速度 (整数)
例
S2000 (スピンドル #1 速度 2000 RPM に設定)
S2_1500
(スピンドル #2 速度 1500 RPM に設定)
制限
MC-Quad は、スピンドル機能をサポートしません
注意
S コードはバイナリ形式(F22 ~ F25)で PLC に送られます。
新しい S コードに関しては、1ショットのストロボ信号(F07.2)もまた SLC に送られます。
マルチスピンドルでは、スピンドル番号をスピンドル速度のパラメータの間にアンダースコ
ア印“_”を置きます。
サーボタイプスピンドルでは、S コードはスピンドルの回転を直接始動させます。
これに関しては、NC 工作機械パラメータの軸タイプを記述した、サーボワークス VB の参
考書を見てください。正のスピンドル速度は、スピンドルを時計回りに回し、負のスピンド
ル速度は反時計まわりにスピンドルを回すことを意味します。またスピンドル速度ゼロはス
ピンドルを停止させます。サーボワークス VB パラメーターマニュアルにある、スピンドル
の回転方向に関する適正な設定についての記述を確認ください。
7-1
ServoWorks パートプログラミングマニュアル
第 7 章: スピンドル
スピンドル機能と
機能と S コード
S コードに影響のある他のコード
•
M03 はスピンドルを時計回りに回転させます。(但しインバータータイプとシングルス
ピンドルについてのみ)
•
M04 はスピンドルを反時計回りに回転させます。(但しインバータータイプとシングル
スピンドルについてのみ)
•
M05 はスピンドルを停止させます。(但しインバータータイプとシングルスピンド
ルについてのみ)
7-2
ServoWorks パートプログラミングマニュアル
第 8 章: Tool Functions and T Codes
第8章
章: Tool Functions and T Codes
8.1 T コードについての概要
説明
T コードは工具を選び、それに関連するオフセットを設定するための3桁コードです。
必要とされるフォーマット
Txxx
パラメーター
xxx – 工具番号 (及びオフセット数) 1 ~ 256 (3桁)
注意
•
•
•
T0.は使用している工具のオフセット値をキャンセルするためのものです。
xxx の工具番号のみが PLC を通してバイナリフォーマットで送られます。(F26.0 ~ F26.7).
新しい工具番号に関しては、1ショットストロボ信号(F07.3)も PLC に送られます。
8.2 工具オフセット
サーボワークス工具オフセット補間表では、256 種のオフセットが表記されています。ここ
には以下のようなオフセットが含まれています:
•
•
•
•
幾何長さオフセット(直径または半径のプログラミング)
ウエア長さオフセット(直径または半径のプログラミング)
半径幾何オフセット
半径ウエアオフセット
工具オフセット番号を選んだ時、長さと半径のオフセット値は、対応する幾何オフセットと
ウエアオフセットそれぞれの和になります。
(オフセットデータ) = (幾何オフセット) + (ウエアオフセット)
工具半径オフセットは工具径補正(TRC)と G40, G41,G42 のどれかを使用したものにに相当し
ます。
8-1
ServoWorks パートプログラミングマニュアル
第 8 章: Tool Functions and T Codes
注意
•
T コードによる命令が出された時、相当する工具半径オフセットが有効になります。し
かし、工具長さオフセットは G43 又は G44 が有効になるまで有効にはなりません。そし
て、H コードは明示的(explicitly)であるといいます。(G43/G44/G49 参照)
•
モーションコマンドと共に T コードが同じラインでプログラムされている時、それらは
平行に処理されます。そして、この作業は新たな工具半径オフセットを使って処理され
ます。
例
N00100 T1 G00 X1.0 Y2.0
工具番号1の信号が PLC に送られます。そして工具半径オフセット1が有効になります。
同時に、動作“G00 X1.0 Y2.0”は工具半径オフセット1と共に実行されます。
上記コードは以下のものに相当します。
N00100 T1
N00110 G00 X1.0 Y2.0
8-2