Siemens NX Post Builder for MillTap 700 SINUMERIK 840D sl

David Krause13 min read
Other TopicSiemensTechnical Reference
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Siemens NX Post Builder for DMG Mori MillTap 700 (SINUMERIK 840D sl) and the Brother SPEEDIO Alternative

Selecting a vertical machining center for a prototype job shop forces a converging set of trade-offs: control architecture, post-processor development cost, four-axis indexing support, distributor support depth, and lifecycle reliability. This reference evaluates the DMG Mori MillTap 700 with SINUMERIK 840D sl Operate against the Brother SPEEDIO platform running the Brother CNC-D00 control, with a working workflow for Siemens NX Post Builder development in either direction.

Scope note. This article is restricted to documented configuration, public SINUMERIK and Brother control reference material, and NX Post Builder template behaviour. Field experience cited is reproduced only as operational guidance, not as a controlled benchmark.

Project Framing: Prototype Shop Constraints

A short-run prototype shop building parts from alloy steel and pre-hardened tool steel up to roughly 400 Brinell has a different calculus than a production cell. The constraints that drive the post-processor and control decision are:

  • Taper class. A 30-taper VMC supports the bulk of the part envelope; a 40-taper VMC is reserved for larger workpieces that graduate off the prototype cell once volume rises.
  • Workholding density. Most parts are small and nest efficiently on a fourth-axis trunnion, so the control must support 3+1 indexing without forcing five-axis kinematic definitions on every setup.
  • CAM environment. NX is the single source for design and manufacturing. A post that does not map cleanly into NX Post Builder is a recurring tax, not a one-off cost.
  • Support responsiveness. The shop is isolated; downtime becomes a single point of failure for the prototype schedule.
  • Resale optionality. The controller is justified to the budget only if the equipment can be absorbed back into the existing business or liquidated if the project stalls.

Control Platform Comparison: SINUMERIK 840D sl vs Brother CNC-D00

The two controllers are not feature-for-feature substitutes. The table below captures the documented differences relevant to a single-machine prototype shop running NX.

Attribute SINUMERIK 840D sl Operate (MillTap 700) Brother CNC-D00 (SPEEDIO)
Manufacturer Siemens AG, Motion Control / CNC Brother Industries, Ltd., Machinery & Solution Company
HMI Operate, multi-channel, 3D-viewer, animated elements Brother SPEEDIO HMI, panel-based, conversational plus G-code
Look-ahead / Block buffering Up to 1000 blocks, configurable via MD parameters High-speed block look-ahead, length tuned per machine
4-axis indexing Supported via rotary axis definitions, swivel data set, CYCLE800 Supported via standard 4th-axis (A or B) configuration in machine parameters
Conversational programming ShopMill / ShopTurn cycles, programGUIDE Brother conversational cycles integrated in HMI
Post compatibility Native Siemens POSTBUILD for NX plus SINUMERIK posts in Post Builder library Standard Fanuc-compatible G-code with Brother-specific M-codes; third-party or in-house NX post required
Distributor / service (North America) DMG MORI USA direct plus regional factory reps Yamazen Inc., direct channel for SPEEDIO
Field-proven controller base Large installed base across multiple machine builders Large installed base in Asia, growing North American base

The pragmatic reading: SINUMERIK is a control you can configure deeply, but the configuration effort lives on the post side and on machine data. The Brother control trades configurability for a tightly integrated, single-vendor package where machine and control come from the same engineering team.

NX Post Builder Architecture for SINUMERIK 840D sl

NX Post Builder ships with a library of post templates indexed by control. The SINUMERIK 840D sl family is represented by the siemens_840d_sl template, with sub-variants for mill-turn and three-axis mills. The MillTap 700 ships with a vendor-specific post that DMG Mori maintains, but building a shop-specific post on top of the Siemens template gives the engineer full control over the code that the machine will execute.

Template selection

  1. Open NX, then Manufacturing → Post Builder.
  2. Select New Post and choose the siemens_840d_sl template closest to the kinematic model. For the MillTap 700 three-axis-plus-indexing configuration, use the three-axis mill template.
  3. Set the post name to match the machine label, e.g. MILLTAP_700_840DSL_3X1A.
  4. Define machine units (metric), NC mode (3-axis), and the rotary axis as a positioning axis only for 3+1 work.

Critical Program & Tool Path defaults

  • sequence_numbering: enabled, increment 5, to leave headroom for hand-edits.
  • block_numbering: enable N word for SINUMERIK readability; some operators prefer : for compactness.
  • max_circular_radius: 0 to allow full helical interpolation; set non-zero only when commanding line-arc transitions for surface finish quality.
  • output_mode: 3-axis + rotary positioning.
  • coolant_codes: map NX FLOOD, MIST, THRU to SINUMERIK M-codes M8 / M7 / M71 as appropriate.

Custom command mapping

The MillTap 700 exposes a small set of shop cycles through SINUMERIK. The post can call them as TCL procedures to keep the G-code readable:

tcl
proc MOM_rapid_move { } {
  MOM_output_literal "G0 X\$mom_pos(0) Y\$mom_pos(1) Z\$mom_pos(2)"
}
proc MOM_index_axis { } {
  MOM_output_literal "ROT A\$mom_pos(3)"
}

Where ROT A is the documented SINUMERIK keyword for rotary axis positioning and A matches the MillTap 700 trunnion axis label. Operators verify the axis name against the machine's channel configuration before running the program.

NX Post Builder Architecture for Brother CNC-D00

The Brother SPEEDIO controller accepts a Fanuc-compatible G-code dialect with a set of Brother-specific M-codes. There is no first-party Brother-branded post inside NX Post Builder, which is why shops building for SPEEDIO typically start from the fanuc_3axis template and patch the machine-specific surface area. The two areas that always need attention:

  1. Tool change macro. SPEEDIO uses an ATC macro triggered by M6; some older posts emit a Fanuc-style tool preamble that needs to be replaced with the Brother equivalent.
  2. Fourth-axis command. SPEEDIO labels the rotary axis A (or B, depending on the trunnion builder) and uses standard G0 A<angle> positioning. This maps cleanly onto the Fanuc template, so 3+1 indexing requires no custom TCL.

Post Builder settings to verify

  • rotary_axis_definition: declare the rotary as a positioning (not contouring) axis when the job is 3+1 only.
  • tool_change_type: manual call to the Brother ATC macro, not the generic Fanuc four-line preamble.
  • program_number: prefix with O as required; SPEEDIO rejects 5-digit program numbers without the O.

The post-development effort for Brother is therefore lower for the 3+1 case but requires the engineer to validate every tool-change and coolant emission against the actual machine, since the template only approximates Brother behaviour.

4-Axis Indexing (3+1) Post Workflow

For parts that nest on a rotary trunnion, the engineer needs a workflow that handles index moves without forcing five-axis kinematics on every operation. The steps below apply to either controller with minor modifications.

Step 1: Operation-level indexing strategy

In NX Manufacturing, mark each operation that should execute at a fixed rotary position as Indexing rather than Multi-axis. This keeps the toolpath evaluator in three-axis mode and prevents unwanted tool-vector commands from being emitted.

Step 2: Index table construction

Build a fixture in NX with a circular pattern of part positions. The post reads the rotary angle from the fixture and emits a single positioning move at the start of each operation:

tcl
proc MOM_index_axis { } {
  global mom_pos
  MOM_output_literal "G53 G0 A\$mom_pos(3)"
  MOM_output_literal "G54"
}

The G53 prefix cancels any active work offsets before the rotary move, which is important for SINUMERIK where a work offset in the rotary axis will fault the move.

Step 3: Tool length compensation across indexes

Tool length compensation is applied along the spindle axis, which does not change with rotary position. The post therefore only needs to apply G43 H# after a tool change, not after an index move.

Step 4: Verify with machine simulation

Use NX machine simulation with the correct kinematics file before any code reaches the shop floor. Confirm:

  • Spindle clears the trunnion at every index angle.
  • No collision with workholding clamps at any index.
  • Tool-change position is reachable from every indexed location without overtravel.

Material and Cutting Parameter Considerations

Tool steel up to ~400 Brinell and alloy steel in the same range impose constraints that flow into the post as comments and operator prompts:

Material Hardness Operation focus Recommended tool path strategy Post relevance
Alloy steel ~280–400 HB Drilling, finishing Constant engagement adapter, trochoidal roughing if material removal is required Comment block per op with starting parameters
Tool steel (pre-hardened) ~400 HB Finishing Light radial engagement, high RPM, coated carbide or ceramic Suppress chip-break cycles; emit chip-clearance dwell in long drills

Post-level technique: emit a header comment that lists the tool, the recommended starting cutting speed (vc), and the programmed feed per tooth. Operators in the prototype cell need this because they often set the spindle speed manually when running a part for the first time.

tcl
proc MOM_tool_change { } {
  global mom_tool_name mom_tool_diameter
  MOM_output_literal "(TOOL: \$mom_tool_name DIA=\$mom_tool_diameter)"
}

Side-by-Side Selection Matrix

Criterion MillTap 700 / SINUMERIK 840D sl Brother SPEEDIO / CNC-D00
Post development effort Higher first time; template-driven, scalable Lower for 3+1; manual validation per machine
NX Post Builder support First-party template in NX Third-party or in-house from Fanuc template
Control uniformity across a multi-machine shop High — widely supported by builders Low — Brother-only installed base
Conversational programming for one-off parts ShopMill cycles, programGUIDE Brother conversational, fast for setup
North American field service DMG MORI factory rep network Yamazen direct, factory-trained technicians
Operator learning curve Steeper; benefits from existing Siemens experience Shorter; designed for short-training onboarding
Resale value Generally liquid; brand-agnostic control Liquid in the SPEEDIO segment; brand-specific
4-axis indexing ergonomics CYCLE800 / swivel data set; powerful but verbose Single-line A-positioning; minimal overhead

Post Development Workflow: Step-by-Step

The workflow below is control-agnostic and applies to either machine; the differences are called out in the comments.

  1. Define machine kinematics. Export the kinematic model from the builder's official documentation. For the MillTap 700 this is in the SINUMERIK machine data file. For SPEEDIO it is in the parameter sheet shipped with the machine.
  2. Open NX Post Builder. Choose the appropriate base template.
  3. Map tool change and ATC. Verify against the actual M-code list — do not rely on the template defaults.
  4. Map coolant codes. Eight common coolant codes need to be confirmed against the machine builder's reference.
  5. Define program header. Include program name, post version, controller, machine serial, date.
  6. Define program footer. Safe retract, spindle off, coolant off, M30.
  7. Generate test code. Use a known fixture and known tools.
  8. Run the program in dry-run on the controller. SINUMERIK: use the program control: dry run feed function. SPEEDIO: use the dry-run switch.
  9. Cut air. Run the program above the table with the spindle at zero RPM to verify motion.
  10. Cut first part. Operate with reduced feed override (25%) and an operator at the ready stop.

Verification and Acceptance Test

Acceptance is a structured gate, not a single event. Run each item and record the result.

Verification Pass criterion Tooling
Dry run, no spindle All axes traverse without alarm or overtravel None
Single-block step-through Every block executes; no skipped motion None
Tool length comp applied Z-axis offset matches gauge length Tool presetter or test bar
Index moves Each indexed position within ±0.02° of commanded angle Index probe or test indicator
First article Feature dimensions within drawing tolerance CMM or manual gauges
Surface finish on tool steel Spec or better on first article Profilometer or comparator

Troubleshooting Matrix

Symptom Likely cause Post or controller side Fix
Alarm on rotary move Work offset active in rotary axis (SINUMERIK) Post Emit G53 before A positioning
Tool change in wrong position Fanuc template preamble not replaced for Brother ATC Post Override MOM_tool_change with Brother macro call
Block look-ahead saturation at high feed Block count exceeds controller buffer Post Reduce line-arc line count, or split program
Compensation direction reversed G41/G42 emitted in wrong cutter side direction Post Verify NX operation direction matches controller compensation convention
First article out of tolerance at indexed position Index angle commanded but trunnion not clamped Machine setup Confirm pneumatic/hydraulic clamp signal in machine parameters
Coolant turns on but no flow M-code mapped but flood pump not enabled in machine data Machine data Enable coolant in MD for the channel
Rotary commanded in wrong unit (deg vs inch) Post units mismatch with machine units Post Set post units to deg, not inch, for rotary moves

Field-Proven Caveats

Caveat — MillTap 700 reliability. Several operators with production experience report that the MillTap 700's reputation in their shops is mixed compared with the broader DMG Mori line. Validate the specific serial number's service history and warranty terms with the regional factory rep before committing the prototype shop's schedule to it.
Caveat — Post ownership. When the post is developed in-house or by a third party on behalf of the shop, the engineer should retain the post source code in version control (Git, Subversion). DMG Mori and Yamazen typically ship a compiled post without source. Without source, every controller update risks breaking the post.
Caveat — Spindle taper. A 30-taper spindle limits tool shank diameter and stick-out. For pre-hardened tool steel at 400 Brinell, prefer shrink-fit holders with short projection and coated carbide inserts over weldon-flange holders to keep chatter under control.

Cross-Reference: Standards to Verify Against

For shops that need to align their post with international NC programming conventions, the relevant published standards are:

  • ISO 6983-1 — G-code programming language baseline.
  • ISO 3592 — NC programming language structure.
  • ISO 4343 — APT-style source language elements.

SINUMERIK and Brother both extend ISO 6983 with proprietary cycles; the post should declare its conformance level so that downstream tooling (DNC, ERP integration) can interpret the output consistently.

Recommended Decision Path

  1. If the shop already runs multiple Siemens-controlled machines, the MillTap 700 with a properly developed NX post preserves control uniformity and reduces operator-training overhead — provided the specific machine's reliability record is acceptable.
  2. If the prototype cell will operate as an isolated island with a single machine, the Brother SPEEDIO lowers post-development overhead, simplifies training, and concentrates support through one distributor channel (Yamazen).
  3. For 4-axis (3+1) prototype work with frequent tool changes and short setup windows, the SPEEDIO's faster tool change and integrated conversational cycles translate directly into operator minutes saved per part.
  4. For deep configurability, advanced kinematic cycles, and a multi-machine future, SINUMERIK is the more scalable platform — at the cost of higher first-time post effort.

What is the correct NX Post Builder template for the DMG Mori MillTap 700?

Start from the siemens_840d_sl three-axis mill template. The MillTap 700 ships with a DMG Mori-maintained vendor post; rebuild the shop post on top of the Siemens template to retain ownership of the source TCL and to keep the post under version control. Validate the trunnion axis label (A in most configurations) against the machine's channel configuration before running production code.

Does the Brother SPEEDIO have a first-party NX Post Builder template?

No first-party Brother-branded template ships with NX Post Builder. Most shops start from the fanuc_3axis template and patch the tool-change macro, the rotary axis naming, and the program-number format. The 3+1 indexing workflow requires no custom TCL because SPEEDIO accepts standard G0 A<angle> positioning.

How should the post emit a 4-axis index move for SINUMERIK 840D sl?

Emit the move with G53 to suppress any active work offset, then the rotary command such as G0 A<angle>, then re-apply the active work offset. Example: G53 G0 A90.0 followed by G54. Without the G53 prefix, the move can fault on machines with a work offset active in the rotary axis.

Which controller is easier for an operator who has only run Fanuc?

The Brother CNC-D00 is closer in syntax and ergonomics to a Fanuc-style control, so an operator with Fanuc experience adapts in a single shift. SINUMERIK Operate requires retraining because the HMI model, cycle structure, and work-offset handling differ. For a one-machine prototype shop staffed by Fanuc-trained operators, Brother is the lower-friction path.

How is post-processor maintenance handled across controller firmware updates?

Retain the post source (TCL files) in version control. When the controller firmware changes — for example, SINUMERIK 840D sl version increments — regenerate the post from source, run the dry-run test, then run the first-article test before resuming production. The same workflow applies to SPEEDIO when Brother issues a parameter or firmware update. Never deploy a compiled post whose source cannot be re-edited.

Back to blog