ポストプロセッサ POST_BASE の移行

V11.0 より前では、ポストプロセッサーに特有の繰り返しの一部を軽減して管理と編成を容易にする方法として、POST_BASE グローバル変数がありました。これは長年にわたって問題を引き起こしているようだったので、サポートを中止しました。

このガイドは、一部の古いポストプロセッサからの移行に役立ちます。

デフォルトのポストプロセッサ

ポストプロセッサーに何も変更を加えていない場合は、[ポストプロセッサー管理] ダイアログの Vectric 出荷データベースでポストプロセッサーを再度見つけて、[カスタマイズ] をクリックするだけで My_PostP フォルダーに再度追加できます。

このガイドでは、Next Wave ポストプロセッサーでこれを説明しますが、ここでのガイドラインはどのポストプロセッサーにも適用できます。

ベースは変える必要がない

このガイドでは、POST_BASE ステートメントを置き換える方法を説明します。基本ポストプロセッサ (そのステートメントで参照されている) を変更する必要はなく、そのステートメントを含むポストプロセッサのみを変更する必要があります。 必ず最初にファイルをバックアップしてください。

出力を確認してください

この新しい投稿を使用していくつかのツールパスを保存し、出力を確認してください。

ベースポストとは

ソフトウェアの以前のバージョンでは、ポストプロセッサがベース ポストプロセッサを持つことが可能でした。基本ポストプロセッサには共通セクションがありました。その後、他のポストプロセッサがこのポストプロセッサを開始点として使用し、必要なビットを上書きする可能性があります。この場合、この新しいポストプロセッサが基本ポストプロセッサを継承したと言えます。

移行の概要

Next_Wave_CNC.pp ポストプロセッサを継承するポストプロセッサ Next_Wave_CNC_mm.pp を想定します。

一般的な POST_BASE ステートメントの構文は、POST_BASE = "Next_Wave_CNC.pp" です。

これはサポートされなくなったため、このステートメントを Next_Wave_CNC.ppの内容に置き換えて、コピーされた内容から重複を削除する必要があります。

段階的な例

繰り返しますが、Next Wave ポストプロセッサーを想定しています。

Next_Wave_CNC.pp

我々は持っています Next_Wave_CNC.pp (インチ ポストプロセッサ) 以下の内容を含む、


POST_NAME = "Next Wave CNC (inch)(*.tap)"
FILE_EXTENSION = "tap"
UNITS = "INCHES"
DIRECT_OUTPUT = ""
SUBSTITUTE = "({)}"
LASER_SUPPORT = "YES"
+------------------------------------------------
+ Line terminating characters
+------------------------------------------------
LINE_ENDING = "[13][10]"
+------------------------------------------------
+ Block numbering
+------------------------------------------------
LINE_NUMBER_START = 0
LINE_NUMBER_INCREMENT = 10
LINE_NUMBER_MAXIMUM = 999999
+================================================
+
+ Formating for variables
+
+================================================
VAR LINE_NUMBER = [N|A|N|1.0]
VAR POWER = [P|A| S|1.0|10]
VAR SPINDLE_SPEED = [S|A|S|1.0]
VAR CUT_RATE = [FC|A|F|1.1]
VAR PLUNGE_RATE = [FP|A|F|1.1]
VAR X_POSITION = [X|A| X|1.4]
VAR Y_POSITION = [Y|A| Y|1.4]
VAR Z_POSITION = [Z|A| Z|1.4]
VAR ARC_CENTRE_I_INC_POSITION = [I|A| I|1.4]
VAR ARC_CENTRE_J_INC_POSITION = [J|A| J|1.4]
VAR X_HOME_POSITION = [XH|A| X|1.4]
VAR Y_HOME_POSITION = [YH|A| Y|1.4]
VAR Z_HOME_POSITION = [ZH|A| Z|1.4]
VAR DWELL_TIME = [DWELL|A|P|1.2]
+================================================
+
+ Block definitions for toolpath output
+
+================================================
+---------------------------------------------------
+ Commands output at the start of the file
+---------------------------------------------------
begin HEADER
"( [TP_FILENAME] )"
"( File created: [DATE] - [TIME])"
"( for Next Wave Automation from Vectric )"
"( Material Size)"
"( X= [XLENGTH], Y= [YLENGTH], Z= [ZLENGTH])"
"( Z Origin for Material = [Z_ORIGIN])"
"( XY Origin for Material = [XY_ORIGIN])"
"( XY Origin Position = X:[X_ORIGIN_POS], Y:[Y_ORIGIN_POS])"
"( Home Position)"
"( X = [XH] Y = [YH] Z = [ZH])"
"( Safe Z = [SAFEZ])"
"([FILE_NOTES])"
"(Toolpaths used in this file:)"
"([TOOLPATHS_OUTPUT])"
"(Tool used in this file: )"
"([TOOLS_USED])"
"([TOOLNAME])"
"(|---------------------------------------)"
"(| Toolpath:- '[TOOLPATH_NAME]' )"
"(|---------------------------------------)"
"G90"
"G20"
"[FC]"

Next_Wave_CNC_mm.pp

私たちも持っています Next_Wave_CNC_mm.pp それを次のように継承します


POST_NAME = "Next Wave CNC (mm)(*.tap)"
POST_BASE = "Next_Wave_CNC.pp"
UNITS = "MM"
LASER_SUPPORT = "YES"
+================================================
+
+ Formating for variables
+
+================================================
VAR LINE_NUMBER = [N|A|N|1.0]
VAR POWER = [P|A| S|1.0|10]
VAR SPINDLE_SPEED = [S|A|S|1.0]
VAR CUT_RATE = [FC|A|F|1.1]
VAR PLUNGE_RATE = [FP|A|F|1.1]
VAR X_POSITION = [X|A| X|1.3]
VAR Y_POSITION = [Y|A| Y|1.3]
VAR Z_POSITION = [Z|A| Z|1.3]
VAR ARC_CENTRE_I_INC_POSITION = [I|A| I|1.3]
VAR ARC_CENTRE_J_INC_POSITION = [J|A| J|1.3]
VAR X_HOME_POSITION = [XH|A| X|1.3]
VAR Y_HOME_POSITION = [YH|A| Y|1.3]
VAR Z_HOME_POSITION = [ZH|A| Z|1.3]
VAR DWELL_TIME = [DWELL|A|P|1.2]
+================================================
+
+ Block definitions for toolpath output
+
+================================================
+---------------------------------------------------
+ Commands output at the start of the file
+---------------------------------------------------
begin HEADER
"( [TP_FILENAME] )"
"( File created: [DATE] - [TIME])"
"( for Next Wave Automation from Vectric )"
"( Material Size)"
"( X= [XLENGTH], Y= [YLENGTH], Z= [ZLENGTH])"
"( Z Origin for Material = [Z_ORIGIN])"
"( XY Origin for Material = [XY_ORIGIN])"
"( XY Origin Position = X:[X_ORIGIN_POS], Y:[Y_ORIGIN_POS])"
"( Home Position)"
"( X = [XH] Y = [YH] Z = [ZH])"
"( Safe Z = [SAFEZ])"
"([FILE_NOTES])"
"(Toolpaths used in this file:)"
"([TOOLPATHS_OUTPUT])"
"(Tool used in this file: )"
"([TOOLS_USED])"
"([TOOLNAME])"
"(|---------------------------------------)"
"(| Toolpath:- '[TOOLPATH_NAME]' )"
"(|---------------------------------------)"
"G90"
"G21"
"[FC]"

変更の概要

Next_Wave_CNC_mm.pp の内容を、 POST_BASE を持たず、 Next_Wave_CNC.ppの内容に依存しないように変更したいと思います。

Next_Wave_CNC_mm.pp が次のように変更されていることがわかります。

  1. POST_NAME
  2. UNITS
  3. LASER_SUPPORT
  4. さまざまな変数
  5. HEADER セクション

これらのことが新しい Next_Wave_CNC_mm.ppでも同じに保たれるようにする必要があります。

ステップ

これは、これにアプローチする方法の大まかな手順として機能します。

  1. 新しい空のファイル (たとえば、Next_Wave_CNC_mm_2.pp という名前) を作成し、Next_Wave_CNC.pp の内容をそのファイルにコピーします。
  2. 継承している古いポストプロセッサ (Next_Wave_CNC_mm.pp) を実行し、変数とセクションをコピー/置換します。
  3. たとえば、POST_NAME、UNITS、LASER_SUPPORT を置き換えます。

新しいポストプロセッサの始まりは次のようになります。

POST_NAME = "Next Wave CNC (mm)(*.tap)"
FILE_EXTENSION = "tap"
UNITS = "MM"
DIRECT_OUTPUT = ""
SUBSTITUTE = "({)}"
LASER_SUPPORT = "YES"

続けて変数を置換/追加します ( VARから始まります)。

begin HEADER セクションを置き換えます。

結果を確認する

Next_Wave_CNC.ppNext_Wave_CNC_mm_2.pp の内容を比較すると、その違いは本質的に Next_Wave_CNC_mm.ppの内容であることがわかります。

Next_Wave_CNC_mm.pp を削除し、名前を Next_Wave_CNC_mm_2.pp から Next_Wave_CNC_mm.ppに変更します。

出力を確認してください

この新しい投稿を使用していくつかのツールパスを保存し、出力を確認してください。