Migrazione del post-processore POST_BASE
Prima della versione V11.0, avevamo la variabile globale POST_BASE per alleviare alcune delle ripetizioni inerenti ai post-processori per semplificarne la gestione e l'organizzazione. Ciò sembrava creare problemi nel corso degli anni, quindi abbiamo smesso di supportarlo.
Questa guida aiuterà a migrare da alcuni dei vecchi post-processori.
Post-processori predefiniti
Se non hai apportato alcuna modifica al tuo post-processore, puoi ritrovarlo nel database spedito da Vectric nella finestra di dialogo Gestione post-processore e fare semplicemente clic su "Personalizza" per aggiungerlo nuovamente alla cartella My_PostP.
Ai fini di questa guida, lo dimostreremo sul post-processore Next Wave, ma le linee guida qui possono essere applicate a qualsiasi post-processore.
La base non ha bisogno di cambiare
In questa guida vedremo come sostituire l'istruzione POST_BASE. Non dovremo mai alterare il post-processore di base (a cui si fa riferimento in quella dichiarazione), ma solo il post-processore che contiene quella dichiarazione. Effettua sempre prima il backup del file.
Controlla il tuo risultato
Salva alcuni percorsi utensile utilizzando questo nuovo post e controlla l'output!
Cos'è un post base
Nelle versioni precedenti del software era possibile per un post-processore avere un post-processore di base. Il post-processore di base conteneva sezioni comuni. Quindi qualsiasi altro post-processore potrebbe prendere questo post-processore come punto di partenza, sovrascrivendo i bit necessari. In questo caso diremmo che questo nuovo post-processore ha ereditato il post-processore di base.
Riepilogo della migrazione
Supponendo un post-processore Next_Wave_CNC_mm.pp
che eredita i post-processori Next_Wave_CNC.pp
:
La sintassi di una tipica istruzione POST_BASE
è POST_BASE = "Next_Wave_CNC.pp"
Poiché questo non è più supportato, dovremmo sostituire questa istruzione con il contenuto di Next_Wave_CNC.pp
, rimuovendo qualsiasi duplicazione dal contenuto copiato.
Esempio passo dopo passo
Ancora una volta, presupponendo i post-processori Next Wave
Next_Wave_CNC.pp
Abbiamo Next_Wave_CNC.pp
(post-processore pollici) con il contenuto contenente quanto segue,
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
Abbiamo anche Next_Wave_CNC_mm.pp
che lo eredita come
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]"
Riepilogo delle modifiche
Vorremmo modificare il contenuto di Next_Wave_CNC_mm.pp
in modo tale che non abbia POST_BASE
e non dipenda dal contenuto di Next_Wave_CNC.pp
.
Noterai che Next_Wave_CNC_mm.pp
ha modificato quanto segue,
POST_NAME
UNITS
LASER_SUPPORT
- Varie variabili
- La sezione
HEADER
Dobbiamo garantire che queste cose rimangano le stesse nel nuovo Next_Wave_CNC_mm.pp
.
Passi
Questo servirà come una serie di passaggi approssimativi su come affrontare questo problema.
- Creare un nuovo file vuoto (chiamato Next_Wave_CNC_mm_2.pp, ad esempio) e copiare al suo interno il contenuto di Next_Wave_CNC.pp.
- Passare attraverso il vecchio post-processore ereditario (Next_Wave_CNC_mm.pp) e copiare/sostituire le variabili e le sezioni.
- Ad esempio, sostituisci POST_NAME, UNITS e LASER_SUPPORT
L'inizio del nuovo post-processore dovrebbe assomigliare a questo
POST_NAME = "Next Wave CNC (mm)(*.tap)"
FILE_EXTENSION = "tap"
UNITS = "MM"
DIRECT_OUTPUT = ""
SUBSTITUTE = "({)}"
LASER_SUPPORT = "YES"
Continua e sostituisci/aggiungi le variabili (iniziando con VAR
).
Sostituisci la sezione HEADER iniziale.
Controlla il risultato
Confronta i contenuti di Next_Wave_CNC.pp
e Next_Wave_CNC_mm_2.pp
e dovresti vedere che le differenze sono essenzialmente i contenuti di Next_Wave_CNC_mm.pp
.
Rimuovi Next_Wave_CNC_mm.pp
e rinomina Next_Wave_CNC_mm_2.pp
in Next_Wave_CNC_mm.pp
.
Controlla il tuo risultato
Salva alcuni percorsi utensile utilizzando questo nuovo post e controlla l'output!