Overview: PLC-Based Motion vs Dedicated Motion Controllers
The choice between a SIMATIC S7-1500 (or ET200SP CPU) and an external dedicated motion controller such as a Delta Tau PMAC or ABB NextMove is one of the most common architectural decisions in modern machine building. Both families can position single axes, run coordinated multi-axis motion, and execute cam profiles, but the engineering trade-offs differ significantly.
SIMATIC controllers integrate motion into a general-purpose PLC environment, where logic, safety, HMI, and motion share the same engineering framework (TIA Portal), the same PROFINET network, and the same cycle. External motion controllers are purpose-built for high-bandwidth, deterministic axis control, and they typically outpace a PLC on update rate, axis density, and path-accuracy metrics.
For a greenfield design where the machine is a positioning table, indexing conveyor, or palletizer, the S7-1500 with the SINAMICS V90, S210, or S120 drive family is usually the lowest-cost, lowest-risk choice. For high-speed packaging, CNC machining, multi-axis gantries with electronic gearing, or retrofits of machines built around a PMAC, the dedicated motion controller retains clear advantages.
Architectural Differences Between PLC and External Motion Controllers
A SIMATIC S7-1500 executes motion control as Technology Objects (TOs) running in the PLC's priority-class OB. The TO is configured in TIA Portal (TO_PositioningAxis, TO_SynchronousAxis, TO_ExternalEncoder, TO_Cam, TO_CamTrack) and driven via PLCopen-compliant function blocks: MC_Power, MC_MoveAbsolute, MC_MoveRelative, MC_MoveVelocity, MC_Halt, MC_Reset, MC_GearIn, MC_CamIn. The position controller runs at the configured servo cycle (typically 1 ms to 4 ms for S7-1500) and is closed through PROFINET IRT (Isochronous Real Time) to the drive.
An external motion controller such as PMAC (Delta Tau, now Omron) or NextMove (ABB / Baldor legacy) is a separate processor on the machine. It receives the command setpoints from the PLC over discrete I/O, ±10 V analog, or fieldbus, and it closes the position loop locally at a much higher update rate. The PLC becomes a supervisory controller rather than the loop closer.
The practical consequence is bandwidth. The PLC's motion loop is limited by the PROFINET IRT cycle and the position-controller cycle of the CPU. The PMAC's servo loop runs independently of the PLC scan, with cycle times measured in tens of microseconds rather than milliseconds.
S7-1500 and ET200SP Motion Control Capabilities
The S7-1500 automation system and the ET200SP CPU family share the same motion runtime. Axis counts, telegram types, and TO blocks are identical; the ET200SP CPU simply moves the controller into a distributed station closer to the drives on the PROFINET line. Per the official SIMATIC S7-1500 / ET 200MP manual collection, both lines are designed to be combined inside a single TIA Portal project.
Key motion specifications for the S7-1500 line (refer to the manual collection and the individual CPU data sheets for confirmed values):
- Position controller cycle: 1 ms (minimum), configurable in 1 ms steps up to the OB servo cycle.
- Max axes per S7-1500 CPU: up to 128 real axes depending on CPU type and firmware (CPU 1515-2 PN supports 60 real axes; CPU 1518-4 PN/DP supports up to 128). Confirm against the specific CPU's "Motion Control" data sheet.
- Communication: PROFINET IO with IRT, PROFIdrive profile (telegrams 1, 3, 5, 7, 9, 102, 105, 106) and PROFIsafe on the same network.
- Programming: PLCopen Motion Control blocks in LAD, FBD, or SCL via TIA Portal V16 or later.
- Cam profiles: piecewise-linear or polynomial, with on-the-fly cam switching.
- Safety: PROFIsafe integrated via SINAMICS S120 / S210 extended functions; STO, SS1, SS2, SOS, SLS, SDI, SLP available without external safety relay.
The ET200SP CPU (e.g., CPU 1510SP-1 PN, CPU 1512SP-1 PN, CPU 1515SP PC) brings the same runtime into the distributed I/O station. This is useful when the control cabinet is far from the drives, or when the machine has a modular topology where each station is a self-contained subsystem.
Delta Tau PMAC Family: Architecture and Capabilities
The Delta Tau PMAC (Programmable Multi-Axis Controller) is the de-facto standard for high-end motion and CNC retrofit work. It is now sold under Omron as the CK3E, CK3M, and CK5M families, but the PMAC architecture remains. The controller is a DSP-based processor running the PMAC firmware, which closes servo loops, executes motion programs (kinematic routines called "motion programs" written in a Pascal-like syntax), and serves the host PLC.
Key PMAC characteristics:
- Servo update rate: 2 kHz to 10 kHz per axis depending on CK3M configuration (servo clock down to ~50 µs).
- Axis count: up to 256 axes per CK3M card in some configurations, with multi-card expansion.
- Feedback: incremental encoder, absolute SSI/BiSS, EnDat 2.2, sin/cos resolver; high-resolution analog or digital feedback up to 40 M counts/s.
- Programming: motion programs with kinematic transforms (XY table, gantry, hexapod), PLC programs in structured text-like syntax, I/O servers over Ethernet.
- Communication with the host: Ethernet (TCP/IP, EtherCAT slave), serial RS-232/422, or shared-memory dual-port RAM.
The PMAC's strength is its tight coupling between kinematic math and axis loop closure. CNC tool-path interpolation, electronic camming with on-the-fly ratio changes, and complex multi-axis transformations are its native use cases.
ABB NextMove Family: Integrated Drive-Motion Controllers
The ABB NextMove line (inheritor of the Baldor NextMove product, also sold as B&R X20 controllers with motion blocks) integrates a motion controller and a servo drive in a single chassis. The result is a hybrid architecture: the NextMove e100 / e1000 / e150 runs the MINT motion language locally at high update rate, and the supervisory PLC sends commands over Modbus TCP, EtherCAT, or CANopen.
Notable features:
- Local motion programs in MINT (multi-tasking BASIC-like language with motion extensions).
- Built-in amplifier stages (typically 3 A to 15 A continuous per axis in the e100; higher in the e150).
- Trajectory planner on-board; host PLC offloaded from closed-loop work.
- EtherCAT slave for distributed I/O.
- Legacy ±10 V analog and step/direction for direct retrofit of older drives.
The NextMove is often the easiest drop-in replacement when a legacy machine already uses a discrete-I/O, ±10 V setpoint architecture with a separate motion controller. The host PLC sends an enable bit and a target position; the NextMove handles ramping, position control, and fault handling internally.
Cycle Time and Loop Bandwidth Comparison
The decisive metric in motion control is the closed-loop bandwidth, which is governed by the position-controller update rate and the current-controller update rate in the drive.
| Parameter | S7-1500 / ET200SP CPU | PMAC (CK3M) | NextMove e100/e150 |
|---|---|---|---|
| Servo / position controller cycle | 1 ms minimum (PROFINET IRT) | 50 µs to 250 µs (servo clock) | 250 µs to 1 ms (MINT loop) |
| Current controller cycle | 31.25 µs / 62.5 µs / 125 µs (drive-side, SINAMICS) | Drive-dependent; typically 50 µs with external drive | Integrated, 31.25 µs to 125 µs |
| Axes per controller | Up to 128 (CPU 1518-4 PN/DP, see datasheet) | Up to 256 per card | 1 to 8 typical |
| Trajectory planner | In CPU, OB servo cycle | On-board, kinematic transforms | On-board, MINT |
| Cam / gearing | Yes, MC_CamIn, MC_GearIn | Yes, plus splines | Yes, MINT CAM tables |
| Engineering environment | TIA Portal (Siemens) | Power PMAC IDE / Pewin32 | Mint WorkBench |
An order-of-magnitude difference in cycle time is meaningful when the application has tight tolerance for following error, high mechanical resonance, or aggressive acceleration. For a typical packaging line running at 1 m/s with 50 ms cycle on a 100 mm stroke, an S7-1500 is fully adequate. For a CNC machining spindle where surface finish depends on loop bandwidth, a PMAC is the standard solution.
Drive Pairing and Motor Compatibility Considerations
Modern drives are increasingly tuned to a specific motor family at the factory. The drive's commissioning wizard selects a motor from a database and pre-loads motor-specific parameters: stator resistance, leakage inductance, torque constant, thermal time constant, encoder offset, pole-pair count. Selecting a "foreign" motor manually is technically possible but rarely efficient.
- For the SIMATIC environment, the lowest-friction pairing is SINAMICS V90 + SIMOTICS 1FK7 / 1FT7 / 1FL6 (low inertia) for the V90, or SINAMICS S120 + 1FK7 / 1FT7 / 1PH8 for high-end servo. The motor is selected directly in TIA Portal and downloaded to the drive.
- SINAMICS V60 is a legacy pulse-train servo amplifier that pairs with a specific Chinese-made motor (sold as a kit). It communicates with the PLC over ±10 V analog or pulse-train, not PROFINET, and is a fit only for very simple point-to-point positioning.
- Cross-brand motor-to-drive pairing is documented in the SINAMICS configuration manuals, but the typical caveats are: encoder type compatibility (TTL, 1 Vpp, EnDat, SSI), resolver vs encoder wiring, and resolver pole-pair count which is sometimes misstated in third-party documentation.
- When the legacy motor is a Baldor / ABB servo, the cheapest path is to keep the original drive and add the NextMove as the new motion controller, rather than retune a SINAMICS to the Baldor motor.
Application Fit: When to Choose Each Architecture
Use the following decision matrix as a starting point:
| Application | Recommended controller | Rationale |
|---|---|---|
| Single-axis positioning, packaging line, palletizer | S7-1500 / ET200SP | Integration with safety, HMI, and PLC logic in one project |
| Coordinated 2 to 8 axes with camming | S7-1500 / ET200SP | MC_CamIn, MC_GearIn handle up to 32 axes with PROFINET IRT |
| Gear-cutting, CNC machining center | PMAC (CK3M) | Kinematic transforms, tight loop bandwidth, path accuracy |
| Multi-axis gantry with electronic line shaft | PMAC or S7-1500 | Depends on tolerance; S7-1500 for >1 mm tolerance, PMAC for <0.1 mm |
| Modular machine with distributed drives | ET200SP CPU | Place controller in same station as drives; reduce PROFINET hops |
| Retrofit of legacy ±10 V / pulse-train system | NextMove e100/e150 | Hybrid drive-motion controller is a clean drop-in |
| High-speed flying cut-off, electronic cam with profile in motion | PMAC or NextMove | Update rate below 1 ms is required |
| Machine with extensive safety (PROFIsafe, SLS, SLP) | S7-1500 + SINAMICS S210/S120 | PROFIsafe integrated through drive telegram 30 |
Migration from Legacy Motion Controllers: Engineering Workflow
When migrating an existing machine from a PMAC or NextMove to an S7-1500 (or vice versa), the engineering workflow follows a predictable sequence:
- Capture the existing motion program. For PMAC, save the kinematic transforms, coordinate-system definitions, and motion programs (.pmc files). For NextMove, export MINT tasks and CAM tables.
- Document axis assignments. List each axis with its drive address (PROFINET device name, telegram), motor type, encoder type, gear ratio, and mechanical limits (soft limits, E-stop limits).
- Map PROFIdrive telegrams. For S7-1500 to SINAMICS, use Standard Telegram 5 (32-bit position + 32-bit speed) or Siemens Telegram 105/106 (with DSC — Dynamic Servo Control) for the highest-performance path.
- Configure Technology Objects. In TIA Portal, create one TO_PositioningAxis or TO_SynchronousAxis per real axis. Set the position-controller cycle to match the drive's current-controller cycle (1 ms is the safe default).
- Rewire setpoint path. Replace ±10 V or pulse-train wiring with PROFINET. Add a PROFINET switch if the drive count exceeds the CPU's integrated ports (e.g., CPU 1515-2 PN has two ports; use a managed switch for additional drives).
-
Validate with a single-axis commissioning test. Before coordinating axes, run
MC_MoveAbsoluteon each axis with a reduced velocity and verify following error stays below the configured tolerance. -
Recreate coordination logic. Replace PMAC motion programs with TIA Portal SCL or LAD calls to
MC_GearIn,MC_CamIn,MC_Phasing. Cam profiles are typically imported as CSV into the TO_Cam editor. - Validate safety functions. Re-establish PROFIsafe slots for STO, SS1, and any SLS limits. Verify drive-side safety parameter sets via the SINAMICS Startdrive commissioning tool.
Specifications Comparison Table
| Specification | S7-1500 / ET200SP | PMAC (CK3M) | NextMove e100/e150 |
|---|---|---|---|
| Manufacturer | Siemens | Omron (formerly Delta Tau) | ABB / Baldor legacy |
| Engineering tool | TIA Portal (V16+) | Power PMAC IDE | Mint WorkBench |
| Programming language | LAD / FBD / SCL / STL | Motion programs (Pascal-like) + PLC scripts | MINT (BASIC-like) |
| Max axes | Up to 128 (CPU 1518-4 PN/DP, datasheet-dependent) | Up to 256 per card | 1 to 8 typical |
| Communication to PLC | Internal (same CPU) / PROFINET to partner controller | Ethernet / EtherCAT / RS-232 / shared RAM | Modbus TCP / EtherCAT / CANopen / discrete |
| Communication to drive | PROFINET IRT with PROFIdrive | ±10 V analog, pulse-train, EtherCAT, serial | Integrated amplifier, ±10 V, step/direction |
| Safety | PROFIsafe integrated (drive-side via telegram 30) | External safety PLC | External safety PLC; STO on some models |
| Kinematic transforms | Limited (cam, gearing) | Native (XY table, gantry, hexapod, robotic) | Limited (gearing, cam) |
| Typical cycle time | 1 ms | 50 µs to 250 µs | 250 µs to 1 ms |
| Cost class | Mid (CPU + drive stack) | High (CK3M card + accessories) | Mid-High (integrated unit) |
Troubleshooting Matrix: PLC vs External Motion Controllers
| Symptom | S7-1500 / ET200SP cause | External controller cause |
|---|---|---|
| Following error exceeds tolerance | Position controller cycle too long, Kp / Tn mis-tuned, mechanical resonance | Servo clock set above drive capability, encoder noise, load inertia mismatch |
| Axis oscillation at standstill | Drive-side current controller gains too high; check SINAMICS Startdrive auto-tuning | PMAC Ixx30 / Ixx31 not configured for closed-loop, or encoder feedback polarity inverted |
| Cam slave loses phase during master accel | MC_CamIn master scaling not applied, or TO_SynchronousAxis interpolation cycle mismatch | NextMove CAM table resolution too coarse; MINT task under-prioritized |
| PROFINET IRT loss of synchronism (Diagnostic interrupt 0x001B) | Excessive network load, IRT top-down topology broken, mixed IRT/RT devices on same subnet | N/A (external controller not on PROFINET IRT) |
| PROFIdrive fault F07902 (drive-side) | Encoder signal loss, motor temperature sensor tripped, I²t model exceedance | Same; also check resolver-excitation cable for PMAC-driven systems |
| Motion block times out (MC_MoveAbsolute Done=false) | PositionControllerNotActive, encoder not ready, or brake test pending | Drive enable missing, e-stop interlock open, motion program interrupted |
| Following error proportional to velocity | Kv (velocity pre-gain) set too low on drive side | PMAC Ixx30 / Ixx69 proportional gain too low; velocity feedforward not enabled |
Field-Proven Best Practices
- Match cycles. The position-controller cycle in TIA Portal must be a multiple of the current-controller cycle in the drive. For SINAMICS V90 and S210, use 1 ms position cycle on a 62.5 µs current cycle.
- Use DSC for high-dynamic axes. Dynamic Servo Control (Siemens Telegram 105/106) closes the velocity loop in the drive instead of in the PLC. This reduces following error on the S7-1500 by a factor of two to four at high acceleration. Enable DSC in the TO configuration.
- Keep the application centered on TO_Cam, not on raw SCL. The Cam editor in TIA Portal handles interpolation, scaling, and on-the-fly switching. A 1000-point cam can be downloaded in <200 ms with no recompilation.
- Plan the kinematic transform on PMAC carefully. PMAC's strength is its transform layer (e.g., a 6-axis hexapod, an XY table with one rotary axis). Re-implementing that in PLCopen is possible but tedious and usually not worth the engineering cost.
- Buy drive-motor pairs from one vendor. Cross-vendor pairing of a non-OEM motor with a non-OEM drive works but consumes commissioning time. Unless the existing motor is high-value (rare on machines <5 kW), replacing both is cheaper.
- Confirm axis limits on the CPU datasheet. Do not assume "up to 128 axes" applies to every S7-1500 CPU. Each CPU has a documented maximum; refer to the CPU-specific data sheet and the TIA Portal hardware catalog.
What is the main difference between an S7-1500 motion controller and a PMAC?
The S7-1500 closes the position loop inside the PLC at a 1 ms cycle (minimum) over PROFINET IRT, while the PMAC closes the loop on its own DSP at 50 µs to 250 µs. The S7-1500 integrates logic, safety, HMI, and motion in one TIA Portal project; the PMAC excels at high-bandwidth, kinematic-heavy applications like CNC and multi-axis gantries.
How many axes can an S7-1500 control?
Up to 128 real axes on the largest CPUs (e.g., CPU 1518-4 PN/DP), but the practical maximum depends on the CPU model. The CPU 1515-2 PN supports around 60 real axes; smaller CPUs support fewer. Always check the CPU-specific data sheet and the TIA Portal hardware catalog.
Is the ET200SP CPU capable of the same motion control as the S7-1500?
Yes. The ET200SP CPU runs the same motion firmware as the S7-1500, supports the same Technology Objects and PLCopen blocks, and uses the same PROFINET IRT path to the drives. The difference is physical placement: the ET200SP CPU lives inside a distributed I/O station close to the drives.
Can I replace a PMAC with an S7-1500 without changing the drives?
Often yes, if the drives speak PROFINET IRT with PROFIdrive and the application does not require sub-1 ms loop bandwidth. SINAMICS drives support this directly; third-party drives require a PROFINET option card or a gateway. For sub-1 ms applications (CNC, high-speed packaging), keep the PMAC.
What is Dynamic Servo Control (DSC) and when should I use it?
DSC closes the velocity loop in the drive instead of in the PLC, using Siemens Telegram 105/106 instead of Standard Telegram 5. Enable DSC for high-acceleration axes (>5 m/s²) or where the following error budget is tight. It reduces S7-1500 CPU load and improves tracking by 2x to 4x at high velocity.
What is the difference between the NextMove and a SINAMICS V90?
The NextMove integrates a motion controller and a servo amplifier in one chassis and runs MINT motion programs locally. The V90 is a stand-alone servo amplifier with no on-board motion controller — it requires an external PLC (such as an S7-1200 or S7-1500) to send position commands, typically over PROFINET or pulse-train.
When is a dedicated motion controller the right choice over an S7-1500?
Choose a PMAC or NextMove when the application requires sub-millisecond loop bandwidth, complex kinematic transforms (e.g., 5-axis CNC, hexapod, robotics), or when retrofitting a machine whose drives are pulse-train or ±10 V analog and a direct drop-in is the lowest-risk path.