Migración del posprocesador POST_BASE

Antes de la V11.0 disponíamos de la variable global POST_BASE como forma de aliviar algunas de las repeticiones inherentes a los postprocesadores para facilitar su gestión y organización. Esto pareció crear problemas a lo largo de los años, por lo que dejamos de brindar soporte.

Esta guía le ayudará a migrar desde algunos de los postprocesadores antiguos.

Postprocesadores predeterminados

Si no ha realizado ningún cambio en su posprocesador, puede encontrarlo nuevamente en la base de datos enviada por Vectric en el cuadro de diálogo Administración de posprocesador y simplemente hacer clic en "Personalizar" para agregarlo nuevamente a su carpeta My_PostP.

A los efectos de esta guía, demostraremos esto en el posprocesador Next Wave, pero las pautas aquí se pueden aplicar a cualquier posprocesador.

La base no necesita cambiar

En esta guía, veremos cómo reemplazar la declaración POST_BASE. Nunca tendremos que alterar el postprocesador base (al que se hace referencia en esa declaración), sino solo el postprocesador que contiene esa declaración. Siempre haga una copia de seguridad de su archivo primero.

Comprueba tu salida

¡Guarde algunas rutas de herramientas usando esta nueva publicación y verifique el resultado!

¿Qué es una publicación base?

En versiones anteriores del software era posible que un posprocesador tuviera un posprocesador base. El postprocesador base tenía secciones comunes. Entonces, cualquier otro posprocesador podría tomar este posprocesador como punto de partida, sobrescribiendo los bits necesarios. En este caso diríamos que este nuevo postprocesador heredó el postprocesador base.

Resumen de migración

Suponiendo un postprocesador Next_Wave_CNC_mm.pp que hereda los postprocesadores Next_Wave_CNC.pp :

La sintaxis de una declaración típica POST_BASE es POST_BASE = "Next_Wave_CNC.pp"

Dado que esto ya no es compatible, necesitaríamos reemplazar esta declaración con el contenido de Next_Wave_CNC.pp, eliminando cualquier duplicación del contenido copiado.

Ejemplo paso a paso

Nuevamente, asumiendo los postprocesadores Next Wave

Siguiente_Wave_CNC.pp

Tenemos Next_Wave_CNC.pp (postprocesador en pulgadas) con el contenido que contiene lo siguiente,


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]"

Siguiente_Wave_CNC_mm.pp

También tenemos Next_Wave_CNC_mm.pp que lo hereda como


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]"

Resumen de cambios

Nos gustaría cambiar el contenido de Next_Wave_CNC_mm.pp de modo que no tenga POST_BASE y no dependa del contenido de Next_Wave_CNC.pp.

Notarás que Next_Wave_CNC_mm.pp ha cambiado lo siguiente,

  1. POST_NAME
  2. UNITS
  3. LASER_SUPPORT
  4. Varias variables
  5. La sección HEADER

Tenemos que asegurarnos de que esas cosas se mantengan igual en el nuevo Next_Wave_CNC_mm.pp.

Pasos

Esto servirá como un conjunto aproximado de pasos sobre cómo abordar esto.

  1. Cree un nuevo archivo vacío (llamado Next_Wave_CNC_mm_2.pp, por ejemplo) y copie el contenido de Next_Wave_CNC.pp en él.
  2. Pase por el antiguo postprocesador heredero (Next_Wave_CNC_mm.pp) y copie/reemplace las variables y secciones.
  3. Por ejemplo, reemplace POST_NAME, UNITS y LASER_SUPPORT

Los inicios del nuevo postprocesador deberían verse así

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

Continúe y reemplace/agregue las variables (comenzando con VAR).

Reemplace la sección de inicio del ENCABEZADO.

Comprueba el resultado

Diferencia los contenidos de Next_Wave_CNC.pp y Next_Wave_CNC_mm_2.pp y deberías ver que las diferencias son esencialmente los contenidos de Next_Wave_CNC_mm.pp.

Elimine Next_Wave_CNC_mm.pp y cambie el nombre de Next_Wave_CNC_mm_2.pp a Next_Wave_CNC_mm.pp.

Comprueba tu salida

¡Guarde algunas rutas de herramientas usando esta nueva publicación y verifique el resultado!