レーザー用にポストプロセッサを適合

はじめに

レーザーモジュールにより、新規の工具タイプが工具データベースと新規のレーザー特定方法の両方でレーザーを表せるようになりました。

レーザーモジュールは、レーザー工具と工具経路に対して独立した記録と変数を提供します。

これらの出力は従来のルーターコントロールから分けられているため、多くのマシンとコントローラでは、ルーターまたはレーザー工具経路でシームレスに作業するための単一のポストプロセッサの作成が可能なはずです。しかし、使用するマシンの実際の構成が工具経路タイプにより確実に変更されることを確認してください。

レーザーモジュールでは旧式のポストプロセッサは正しく作動しません。

多くの変換キット製造元が、レーザーモジュールのリリース前にVectricのポストプロセッサを提供していました。そのような製造元は、輪郭加工などの一部のルーター工具経路方法がレーザーベッドと併用可能になる回避策を使用していました。本ページに記載されている追加機能に対する明示的なサポートなしで作成されたポストプロセッサは、正しく作動しません。

従来のポストプロセッサでレーザー工具経路をサポートするには、一般的には4つの領域の修正が必要です。

  • 新規レーザー方法に使用される新規のPOWER変数のサポートを追加します。
  • 使用するマシンとコントローラに対してレーザー工具経路を正しくフォーマットするために、新規のレーザー特定ポストプロセッサブロックを追加します。
  • 既存のポストプロセッサブロックを修正し、独立した電源とレーザー特定動作が確実に行われるようにします。
  • フラグを追加し、当該ポストがレーザー工具経路方法をサポートすることをVectricのソフトウェアに通達します。

各領域は後ほど順を追って説明します。また、GRBL gcodeコントローラを使用したサンプルも提供されています。これらのサンプルでは、Vectricのソフトウェアとデフォルトで提供されているgrbl(mmとinch)ポストプロセッサを使用しています。

POWER変数

Vectricのソフトウェアは、レーザー工具経路の電源設定を1から100%の範囲で出力します。使用する特定のコントローラに対し、この設定のフォーマット方法を示すために新規変数の追加が必要です。またこの機会に、生パーセンテージ値を使用するコントローラに必要な数値範囲にスケールします。

サンプル

GRBLベースのコントローラでは、レーザーの電源設定は、通常gcode主軸速度コントロールコマンドの「S」にエイリアスされます。レーザーモードでは、コントローラは代わりにレーザーの電源を調整して主軸速度コントロールの変更に対応します。コントローラ内でも設定可能ですが、最大予測「S」値のデフォルト設定(またはレーザー電源)は1000です。

そのためGRBLでは、POWER変数がgcode「S」コマンドになるようにフォーマットする必要があります。また、出力値を10の係数でスケールし、(デフォルトの1から100ではなく)1から1000 の範囲になるようにします。

ポストプロセッサの変数エントリは以下のようになります。

VAR POWER = [P|C|S|1.0|10.0]

このエントリをシンプルに説明と、「工具経路からのPOWER出力は、変数[P]がある後続のポスト定義ファイルのいかなる場所でも使用されるべき。しかし、POWER値変更(C)としてのみコマンドを出力するべき。工具経路出力の[P]変数の場所をコマンド「S」(S)で置換する。電源値は小数点(1.0)のない整数としてフォーマットされるべきで、デフォルトから10の係数で乗算されるべき。」となります。

新規レーザーポストプロセッサブロック

レーザーコントロールを許容するために、ポストプロセッサで新規ポストプロセッサブロックが利用可能です。以下のようになります。

  • JET_TOOL_ON - 工具経路がレーザーをオンにする必要があるたびに出力します。
  • JET_TOOL_POWER - 工具経路がレーザーの電源を変更する必要があるたびに出力します。
  • JET_TOOL_OFF - 工具経路がレーザーをオフにする必要があるたびに出力します。

サンプル

GRBLのサンプルでは、3つの新規ブロックタイプを追加しました。レーザーをオンにするために、GRBLはgcode M4コマンドを使用します。 通常では、これは回転方向用に使用されますが、レーザーサポートではGRBLに再利用されます。これにより、必要とする電源値を提供するために、先に[P]として定義されたPOWER変数を利用することができます。そのためJET_TOOL_ONブロックは以下のようになります。

+---------------------------------------------------

+ ジェットがオンになるとコマンドが出力される

+---------------------------------------------------

begin JET_TOOL_ON

"M4[P]"

レーザーをオフにするには、GRBLはgcode M5コマンドを使用します。

+---------------------------------------------------

+ ジェットがオフになるコマンドが出力される

+---------------------------------------------------

begin JET_TOOL_OFF

"M5"

最後に、GRBL用に電源自体を設定するには、電源を出力します。

+---------------------------------------------------

+ ジェット電源が変更されるとコマンドが出力される

+---------------------------------------------------

begin JET_TOOL_POWER

"[P]"

既存ブロックを修正

送り動作の実行時に電源を出力する場合があります。これを実行するには、[P]を含めるようにFEED_MOVEブロックを更新します。

これは、異なる全タイプの送り動作に必要です。

また、レーザーがオンの場合に、切り込み動作の発生も回避する必要があります。従来の切削またはルート加工では、切り込み動作の前にスピンドルがオンになる必要があります。しかし、レーザーでは適切なZレベルへの移動が済んでからオンにならなければなりません。これは各工具経路セグメントの開始で「焦げ」として明らかに問題となります。これらの要求事項を正しく分割するために、切り込み動作またはその他のブロックタイプ(ヘッダーなどに含まれている場合がある)からスピンドルの全コマンドを削除し、これらを明示的な SPINDLE_ON & PLUNGE_MOVEブロックにする必要があります。

これにより、当該動作が正しいシーケンスでレーザー以外の工具経路方法のみに行われるようになります。

サンプル

GRBLでは、これは送り動作のステートメントの最後に追加するだけで実行可能です。

+---------------------------------------------------

+ 送り動作用にコマンド出力

+---------------------------------------------------

begin FEED_MOVE

"G1[X][Y][Z][P]"

POWER変数は変更(C)時のみに出力されるため、一定電源の送り動作の出力では、初期の可変のみの電源コマンドが含まれます。一部のコントローラでは、プロセス可能なコマンド数が工具経路速度の制限要因となります。特にレーザーイメージでは、可能な限り不要なコマンドを送信しないことで多少軽減することができます。

個別のGRBLスピンドルと切込みコントロールでは、ブロックは以下のようになります。

+---------------------------------------------------

+ ヘッダーがスピンドルをオンにするとコマンドを出力

+---------------------------------------------------

begin SPINDLE_ON

"[S]M3"

+---------------------------------------------------

+ プランジ動作用コマンド出力

+---------------------------------------------------

begin PLUNGE_MOVE

"G1[X][Y][Z][F]"

ルーターまたはミルのコントロールにGRBLがM3を使用する点に留意します。また、ランプ動作のサポートには、切り込み動作にXとYでマシンを移動する性能が必要です。

ポストプロセッサをレーザー可能として明示的にマーキング

最後に、ポストプロセッサがソフトウェア内でレーザーポストプロセッサとして選択可能になるように、新規グローバルファイルステートメントLASER_SUPPORT="YES"の追加が必要です。これは、作成者によるテストが完了した後で、一般的な利用を目的としたポストプロセッサに追加されます。

サンプル

LASER_SUPPORT = "YES"