Submachine definition in the machine schemas

Submachine is a list of parameters for the <tool holder, workpiece holder> pair. This is especially topical for complex machines with multiple spindles, multiple places for the workpiece, etc.

Submachine definition example
<SubMachines>
<SCArray>
<SubMachine>
<!--Main spindle-->
<ToolNode>AxisX</ToolNode>
<WrkNode>MainSpindle</WrkNode>
<XAxisID>AxisX</XAxisID>
<YAxisID>AxisY</YAxisID>
<ZAxisID>AxisZ</ZAxisID>
<ToolAxisID>AxisT</ToolAxisID>
<OriginG54BaseNode>Schema</OriginG54BaseNode>
<OriginG54>
<Rotation>
<Convention>FixedXYZ</Convention>
<R1>180</R1>
<R2>0</R2>
<R3>0</R3>
</Rotation>
</OriginG54>
<ApproachRule>Z(10);C;X;Z;</ApproachRule>
<ReturnRule>Z(10);X;Z</ReturnRule>
</SubMachine>
...
</SCArray>
</SubMachines>
  • ToolNode is a common parent node for all tool holders that belong to the sub-machine

  • WrkNode is a common parent node for all workpiece holders that belong to the sub-machine

  • XAxisID, YAxisID, ZAxisID - the axes that are responsible for the motion along X,Y,Z.

  • ToolAxisID - the ID of the turret axis if it exists.

  • OriginG54BaseNode - the ID of the axis where the workpiece coordinate system (WCS) is attached

  • OriginG54 - additional transformation for the WCS. For example it allows to overturn the Z-axis in the counter spindle

  • ApproachRule, ReturnRule - the default rules that will be used to build the approaches or returns.


If no submachine is declared in the schema, then any tool holder can be used with any workpiece holder. It's done for the compatibility with the schemas developed for the previous versions of SprutCAM X.

For example, for the MTM turn-milling machine with two turrets and two spindles the following submachines can be defined:

  1. <Upper turret, main spindle>

  2. <Upper turret, counter spindle> if Upper turret is able to work with the counter spindle

  3. <Lower turret, main spindle> if lower turret is able to work with the main spindle

  4. <Lower turret, counter spindle>

  5. <Main spindle, counter spindle> for the takeover from the main spindle to the counter spindle

  6. <Counter spindle, main spindle> for the takeover from the counter spindle to the main spindle

SprutCAM X does not allow to choose the tool holder in the operation if it can not be used with the current workpiece holder (there is no submachine for given pair, but there are other submachines).

The examples of the submachines declaration are available in the schemas "Index G160" and "Hanwha 32" that are included into the standard package.