#! /usr/bin/php HSMWorksPostProcessor | Biomimetics and Dextrous Manipulation Lab
Biomimetics and Dextrous Manipulation Lab



Custom Post Processor for HSMWorks

This page provides some documentation for a custom post processor for use in HSMWorks with the shared BDML & LentinkLab CNC machine (Haas OM-2A).

The post processor is modified from the standard "haas" post processor provided in HSMWorks. In particular, the following improvements have been made:

  1. The machine goes to a custom "home position" during tool changes. This makes it safer to machine tall workpieces.
  2. The post processor now supports the 4th axis (A-axis). The post processor will lock the 4th axis during 3-axis operations and will unlock the 4th axis during simultaneous 4-axis operations.
  3. For simultaneous 4-axis machining, the post processor uses inverse time feed mode to ensure that the rotary axis is synchronized with the linear axes. It uses normal feed mode (units per minute) in 3 axis programs or in sections of 4-axis programs that only use the linear axes.
  4. The post-processor has the following new user-defined Properties, which can be modified in HSMWorks in the Post Process window:

Post Process window
useCustomToolChange = Yes / No
Yes (default): Immediately before each tool change, the machine will rapid retract up to the Z home position, then rapid to the X and Y home position. After each tool change the machine will rapid retract up to the Z home position again before moving in X and Y to the start of the next cut.
No: The machine moves to machine zero in Z before performing tool changes (this may cause a crash if the part is tall).
useFourthAxis = Yes / No
Yes: Enables the 4th axis.
No (default): Disables the 4th axis and suppresses all lock and unlock commands. The post processor will throw an error if your program uses the 4th axis.
machineDefinition = <filepath>
This is the location of the Machine Configuration file, which contains the 4th axis parameters and the home position coordinates (see next section).

Machine Configuration File

Machine Configuration window

The home position coordinates are defined in the machine configuration file. To modify the machine configuration, edit the Job in the CAMManager and select New machine. The machine configuration window will appear. Press Load and select BDML LentinkLab Haas OM-2A.machine, and then select Post.

The home position is currently set to (X,Y,Z) = (-12,0,2.2139), which is the top left rear corner of the machine's workspace. This will move the spindle all the way up and move the workpiece all the way to the right and the front before a tool change occurs. If you want to change these coordinates, save the changes in the machine configuration file.

Note: If you get the error Failed to save machine configuration, it is caused by a permissions issue. As a workaround, you can save the machine configuration to the Desktop and then move it back into the folder C:\Program Files\HSMWorks\machines using Windows Explorer.

It is not necessary to select the machine configuration file in the Job in HSMWorks. The post processor will automatically select the machine configuration file.


To use the custom post processor, download the post processor file and the machine configuration file here:

BDML LentinkLab Haas OM-2A.zip

These files need to be placed at the following locations:

C:\Program Files\HSMWorks\posts\BDML LentinkLab Haas OM-2A.CPS
C:\Program Files\HSMWorks\machines\BDML LentinkLab Haas OM-2A.machine

Note: Both of these files reference each other using hard-coded paths, so they won't work if they are not installed to these locations. If for some reason you need to use different locations, edit both files in a text editor so that they refer to each other correctly.

Page last modified on May 24, 2014, at 12:13 PM