Difference between revisions of "Path Post"

From FreeCAD Documentation
Jump to navigation Jump to search
(Marked this version for translation)
m (moved templates out of translation tags)
 
(6 intermediate revisions by 2 users not shown)
Line 6: Line 6:
 
|[[Path_ExportTemplate|Export Template]]
 
|[[Path_ExportTemplate|Export Template]]
 
|[[Path_Workbench|Path]]
 
|[[Path_Workbench|Path]]
|IconL=Path-Job.png
+
|IconL=Path_Job.svg
|IconC=Path-Workbench.svg
+
|IconC=Workbench_Path.svg
|IconR=Path-ExportTemplate.png
+
|IconR=Path_ExportTemplate.svg
 
}}
 
}}
  
Line 15: Line 15:
 
|Name=Path PostProcess
 
|Name=Path PostProcess
 
|Workbenches=[[Path Workbench|Path]]
 
|Workbenches=[[Path Workbench|Path]]
|MenuLocation=Path → Post Process|Shortcut=P,P
+
|MenuLocation=Path → Post Process
 +
|Shortcut={{KEY|P}} {{KEY|P}}
 
|SeeAlso=
 
|SeeAlso=
 
}}
 
}}
Line 22: Line 23:
  
 
<!--T:3-->
 
<!--T:3-->
The {{Button|[[Image:Path_PostProcess.png|16px]] [[Path_Post|Post Process]]}} command exports the selected {{Button|[[Image:Path_Job.png|16px]] [[Path_Job|Path Job]]}} to a G-code file.
+
The {{Button|[[Image:Path_PostProcess.svg|16px]] [[Path_Post|Post Process]]}} command exports the selected {{Button|[[Image:Path_Job.svg|16px]] [[Path_Job|Path Job]]}} to a G-code file.
  
 
<!--T:8-->
 
<!--T:8-->
Line 71: Line 72:
  
 
<!--T:5-->
 
<!--T:5-->
# Select the {{Button|[[Image:Path_Job.png|16px]] [[Path_Job|Path Job]]}} you wish to export
+
# Select the {{Button|[[Image:Path_Job.svg|16px]] [[Path_Job|Path Job]]}} you wish to export
# Press the {{Button|[[Image:Path PostProcess.png|24px]]}} button, or use {{KEY|Path}} → {{KEY|[[Image:Path PostProcess.png|24px]] [[Path Post|Post Process]]}} from the top menu. Another option: use the default keyboard shortcut associated with this command.
+
# Invoke the command using several methods:
 +
#* Pressing the {{Button|[[Image:Path_PostProcess.svg|24px]]}} button in the toolbar.
 +
#* Using the {{KEY|P}} then {{KEY|P}} keyboard shortcut.
 +
#* Using the {{KEY|Path}} → {{KEY|[[Image:Path_PostProcess.svg|24px]] [[Path Post|Post Process]]}} entry from the top menu.  
 
# Confirm the '''Output File''' name and directory
 
# Confirm the '''Output File''' name and directory
  
Line 113: Line 117:
 
*comparams
 
*comparams
 
*dynapath
 
*dynapath
*grbl
+
*grbl, including support for bCNC header blocks using Job output argument --bcnc
 
*[http://linuxcnc.org/docs/html/gcode/g-code.html#gcode:g17-g19.1 linuxcnc]  
 
*[http://linuxcnc.org/docs/html/gcode/g-code.html#gcode:g17-g19.1 linuxcnc]  
 
*opensbp
 
*opensbp
Line 128: Line 132:
 
|[[Path_ExportTemplate|Export Template]]
 
|[[Path_ExportTemplate|Export Template]]
 
|[[Path_Workbench|Path]]
 
|[[Path_Workbench|Path]]
|IconL=Path-Job.png
+
|IconL=Path_Job.svg
|IconC=Path-Workbench.svg
+
|IconC=Workbench_Path.svg
|IconR=Path-ExportTemplate.png
+
|IconR=Path_ExportTemplate.svg
 
}}
 
}}
  
<!--T:24-->
 
{{Path_Tools_navi}}
 
 
<!--T:25-->
 
{{Userdocnavi}}
 
  
 
</translate>
 
</translate>
 
{{clear}}
 
{{clear}}
 +
 +
{{Path_Tools_navi{{#translation:}}}}
 +
 +
{{Userdocnavi{{#translation:}}}}

Latest revision as of 05:16, 20 February 2020

Other languages:
Deutsch • ‎English • ‎français • ‎italiano • ‎română • ‎русский
Arrow-left.svg Previous: Path Job.svg Job

Path PostProcess.svg Path PostProcess

Menu location
Path → Post Process
Workbenches
Path
Default shortcut
P P
Introduced in version
-
See also


Description

The Path PostProcess.svg Post Process command exports the selected Path Job.svg Path Job to a G-code file.

Each CNC Controller speaks a specific G-Code dialect, requiring a Dialect-correct Postprocessor to translate the final output from the agnostic internal FreeCAD G-Code dialect.

Typical functions of the Postprocessor include

  • Using a correct Job output G-Code file extension.
  • Selecting the G-Code commands. CNC controllers typically support a subset of available G-Code commands. The super-set of G-Code commands contains powerful and specialized commands that otherwise must be processed using multiple simpler commands. Postprocessors are written to select the best G-Code for an Operation, available on the target.
  • Formatting the G-Code syntax by reordering the Feed, X, Y, Z, A, and B inputs, and the precision.
  • Inserting a Pre-amble to set units, units format, Work plane, coordinate system, etc...
  • Inserting a Post-amble to park the machine, stop it, process any arguments.
  • Inserting Tool changes, or suppressing them between subsequent operations using the same tool.
  • Formatting the Feed and Speed rate information to revolutions per minute, or per second.
  • Formatting Function Call Naming and Calling.

Postprocessor Customization

Note: Several provided Postprocessors generate suitable code for many CNC controllers, or can be used as templates for modification

Postprocessors contain configuration flags and are designed to be tuned by adding G-Codes and M-Codes to provided definitions for:

  • Machine initialization
  • Job finalization
  • Tool-Changes
  • Cooling on /off
  • Etc...


Postprocessors use FreeCAD's internal G-Code dialect in conjunction with the Postprocessor configuration definitions, to generate Dialect-Correct G-Code for target machines. This allows the Path workbench to generate correct G-Code to target various CNC machine controllers by invoking different Postprocessors.

CNC Machine Controller types include:

  • CNC mills
  • CNC lathes
  • 3D Printers
  • DragKnife Cutters
  • Laser Cutters
  • Engravers
  • Plasma Torch Cutters
  • Wire Benders
  • EDM Cutters
  • Etc...

If only one CNC machine is used, or if all CNC machines share a common Postprocesor, the Path workbench would need to include only a single Postprocessor. If a single Postprocessor is inadequate to output G-Code for all target CNC controllers, then multiple Postprocessors must be installed.

Usage

  1. Select the Path Job.svg Path Job you wish to export
  2. Invoke the command using several methods:
    • Pressing the Path PostProcess.svg button in the toolbar.
    • Using the P then P keyboard shortcut.
    • Using the PathPath PostProcess.svg Post Process entry from the top menu.
  3. Confirm the Output File name and directory

Options

Output file and Postprocessor properties can be set in the Job, at any time, prior to invoking the Postprocessor.


The provided Postprocessors are written with comments indicating areas containing Flags, Configuration Variables, and Sections of G-Codes and M-Codes that are to be used by the Postprocessor to configure the output.

Typical Configuration True/False Flags include:

  • OUTPUT_COMMENTS (True = Allow, False = Suppress), Used to insert Text Comments in the output G-Code file.
  • OUTPUT_HEADER (True = Allow, False = Suppress), Used to insert Text Headers in the output G-Code file.
  • OUTPUT_LINE_NUMBERS (True = Allow, False = Suppress), Used to insert Line Numbers in the output G-Code file.
  • SHOW_EDITOR (True = Allow, False = Suppress), Used to show the output G-Code in a Pop-up window when invoking the Postprocessor.
  • MODAL (True = Allow, False = Suppress), Used to reduce the number of output G-Code lines by stripping Mode information when the Mode is not changing.

Typical Configuration Variables include:

  • LINENR (Line Number), Used to Set the Line Number index.
  • UNITS (G20 or G21), Used to explicitly communicate to the target CNC controller what Units to use to interpret the final output file.
  • MACHINE_NAME (Name of Target CNC Mill), Used to Insert a machine name label in the final output file.
  • PRECISION, Used to Set the number of digits to include after the decimal place in final output file

Typical Configuration Sections include:

  • PREAMBLE (Code configuration inserted at beginning of the Job)
  • POSTAMBLE (Code configuration appended to the Job, providing for parking the machine, etc...)
  • TOOL_CHANGE (Code inserted with each tool change in the Job)

The EditPreferences...PathJob Preferences tabDefaultsPath is used to set the default Postprocessor selected on Job creation. This allows Path workbench to be configured to only display desired Postprocessors, and to set a default.

Included Postprocessors are saved in the FreeCAD.Mod.Path.Pathscripts.Post by default:

  • centroid
  • comparams
  • dynapath
  • grbl, including support for bCNC header blocks using Job output argument --bcnc
  • linuxcnc
  • opensbp
  • phillips
  • rml
  • smoothie

Limitations

  • Do not use the FileExport menu for export to G-code, it will produce damaged G-code!
Arrow-left.svg Previous: Path Job.svg Job