CPU 315T Motion Control: S7 Technology for Saw Synchronization

David Krause17 min read
Motion ControlSiemensTutorial / How-to
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

CPU 315T Motion Control: S7 Technology for Saw Synchronization

Overview of Industrial Motion Control

Motion control is a sub-field of automation that encompasses the systems and sub-systems responsible for moving parts of machines in a controlled manner. In industrial automation, motion control typically refers to accurate position, velocity, and torque capabilities operating in either open-loop or closed-loop modes. The discipline unifies mechanical engineering, power electronics, control theory, and PLC software into a single coherent engineering domain. The AutomationDirect motion-control product category groups servo drives, stepper drives, motors, gearboxes, and integrated stages under a common procurement framework, illustrating how the field is structured commercially and functionally.

For automation engineers transitioning from discrete PLC logic (ladder, FBD, STL) to synchronized motion applications, the learning curve involves three distinct axes:

  1. Hardware domain: Motors (servo, stepper, asynchronous), drives (frequency converters, servo amplifiers), feedback devices (incremental encoders, absolute encoders, resolvers), and mechanical transmission (gearboxes, couplings, ballscrews, rack-and-pinion).
  2. Control-technique domain: Open-loop vs. closed-loop, PID tuning, feed-forward control, electronic cam profiles, electronic gearing, trajectory generation, and jerk limitation.
  3. Signal-conditioning domain: Discrete digital I/O, analog ±10 V setpoints, fieldbus communication (PROFIBUS, PROFINET), and drive-to-controller protocols (PROFIdrive, SINAMICS telegrams).

The diagonal saw in a chipboard production line is a classic synchronized (or "flying") cutting application. The saw carriage must maintain a position-velocity relationship with the moving board: it accelerates to match the conveyor velocity, dwells in phase during the cut, decelerates back to a home position, and repeats. This requires not only a standard PLC but a technology CPU with native motion objects — in the Siemens portfolio, the CPU 315T family of SIMATIC S7-300 controllers.

SIMATIC S7-300 CPU 315T Hardware

The CPU 315T (order number 6ES7315-6TH13-0AB0 for the latest hardware revision as of firmware V3.1, and 6ES7315-6TG10-0AB0 for the earlier revision) is a Technology CPU within the SIMATIC S7-300 family. The "T" suffix identifies it as a controller with integrated motion-control functionality, removing the need for an external FM (Function Module) such as the FM 350-1 counter module or the FM 352 cam controller.

Parameter Value
Work memory (integrated) 384 KB code + data combined
Bit-operations execution time 0.05 µs
Word-operations execution time 0.09 µs
Fixed-point arithmetic 0.12 µs
Floating-point arithmetic 0.45 µs
Integrated digital I/O None (technology CPU)
Communication interfaces 1 × MPI/DP combined (X1); 1 × PROFIBUS DP (X2)
Maximum axis count (S7 Technology V4.2+) 8 positioning / 8 synchronous / 8 camming
Number of cam points per cam track up to 1,000 (profile-dependent)
Drive-side telegram PROFIdrive V3/V4: Standard 1, 2, 3, 4, 5, 6, 7, 9; Siemens-specific 81, 82, 83, 105, 106
Required S7 Technology version V4.2 SP3 or higher for STEP 7 V5.5; integrated into TIA Portal V13 SP1+
Front connector 40-pin, separate order
Power supply 24 V DC via PS 305 or PS 307
Operating temperature 0 °C to +60 °C horizontal; 0 °C to +40 °C vertical mounting
Important: The CPU 315T communicates with SINAMICS S120 (or legacy SIMOVERT MASTERDRIVES) servo drives over PROFIBUS DP using the PROFIdrive profile. The drive telegram (Standard Telegram 3 or 5 are common for positioning; Siemens-specific Telegram 105 or 106 is required for synchronous operation with the S7 Technology axis objects) must match on both the CPU side and the drive side.

S7 Technology Software Package

S7 Technology is an optional software package that extends the standard STEP 7 / TIA Portal environment with motion-control programming objects. The package is licensed and activated per CPU; a CPU 315T without an S7 Technology license cannot run technology objects. The package introduces the following technology objects (TOs):

Technology Object Purpose Typical Application
TO SpeedAxis Open-loop / closed-loop speed control Conveyor drives, fans, pumps
TO PositioningAxis Absolute / relative positioning with profile generator Indexing tables, single-axis pick-and-place
TO SynchronousAxis Synchronized motion following a master axis via a gearing ratio Ratio-controlled conveyors, draw lines
TO CamTrack Mechanical cam replacement via electronic cam profile Cross-cutters, flying shears, packaging machines
TO Cam (single) Single electronic cam Pick-and-place with non-linear profile
TO ExternalEncoder Virtual master derived from an external encoder Conveyor line tracking, registration control
TO MeasuringInput Touch-probe / probe evaluation Length measurement, print-mark registration
TO PIDController PID controller with auto-tuning Tension control, dancer position, temperature

For a diagonal saw application in chipboard production, the relevant TOs are typically:

  • TO ExternalEncoder (or a real TO SpeedAxis): the board-conveyor encoder acts as the master axis.
  • TO SynchronousAxis: the saw carriage drive is geared to the master.
  • TO CamTrack: defines the position-velocity profile of the saw during the cut cycle (acceleration, dwell at cutting speed, deceleration, return to home).

The S7 Technology user documentation, configuration limits, and firmware dependencies are documented on the Siemens Industry Online Support portal under entry classes for "S7-300 Technology" and "SIMATIC S7 Technology / T-CPU".

Flying-Shear Kinematics of a Diagonal Saw

A diagonal saw cuts the moving chipboard at a fixed angle (typically 45° for square-edge board, or 60° / 30° for bevel cuts). To cut without stopping the line, the saw-blade carriage moves in synchronism with the conveyor for the duration of the cut, then retracts to its home position to wait for the next board.

The motion cycle is described by a cam profile against a master axis position. A canonical profile has five segments:

  1. Standstill: saw at home position, conveyor moves board into the cutting zone.
  2. Acceleration segment: saw accelerates from v_saw = 0 to v_saw = v_conveyor.
  3. Synchronous (cut) segment: saw velocity equals conveyor velocity; position offset represents the cut length.
  4. Deceleration segment: saw decelerates and reverses direction.
  5. Return segment: saw returns to home position at higher velocity.

Mathematically, the saw position s_saw(t) and the master position s_master(t) are related by the cam profile:

s_saw = f(s_master)

where f is defined piecewise over the master range [0, L_cycle]. The first derivative of f is the velocity ratio:

v_saw / v_master = f'(s_master)

For the synchronous (cut) segment, f'(s_master) = 1 exactly. During acceleration and deceleration, the profile must be jerk-limited to avoid mechanical shock and to stay within drive torque limits.

Cut-length verification: If the conveyor velocity is v_c (m/s) and the time spent in the synchronous segment is t_sync (s), then:

L_cut = v_c · t_sync · cos(θ)

where θ is the saw-blade angle relative to the conveyor direction. For a 45° diagonal cut:

L_cut ≈ 0.707 · v_c · t_sync

For a 30 m/min line (v_c = 0.5 m/s) and a 200 ms synchronous window, the cut length at 45° is:

L_cut = 0.5 · 0.200 · cos(45°) = 0.5 · 0.200 · 0.7071 = 0.0707 m ≈ 71 mm

This is the order of magnitude expected for a chipboard edge cut. Longer boards require multiple synchronized segments or a slower line speed. The S7 Technology cam editor will compute the master advance automatically from these geometric inputs.

Project Hardware Configuration

Step 1: Mount the S7-300 rail and power supply.

Install the PS 307 (6ES7307-1EA01-0AA0, 5 A) or PS 305 (6ES7305-1BA80-0AA0, 2 A) on the leftmost slot. Connect 120/230 V AC mains to L1/N/PE and route 24 V DC to the CPU and the I/O modules.

Step 2: Insert the CPU 315T.

Place the CPU in slot 1 of the rack (slot 1 in S7-300 numbering convention). Attach the front connector (40-pin) for the integrated I/O if used, and connect the PROFIBUS DP cable to the X2 (DP) port.

Step 3: Add digital I/O modules.

Typical saw-line I/O includes:

  • SM 321 DI 16 × DC24V (6ES7321-1BH02-0AA0) for saw-home sensor, cut-completed signal, guard-door switches.
  • SM 322 DO 16 × DC24V / 0.5 A (6ES7322-1BH01-0AA0) for hydraulic-valve control, saw-motor contactor, lubrication pump.

Step 4: Configure the SINAMICS S120 drive.

Wire the SINAMICS S120 CU310-2 DP control unit to the same PROFIBUS DP network. Set the PROFIBUS address (typically 4–6 for the saw drive, 3 for the conveyor drive). Configure the drive objects in STARTER or SINAMICS StartDrive:

  • Telegram 105 or 106 (Siemens-specific for S7 Technology synchronized axes) must be selected on the drive side.
  • The encoder interface (DRIVE-CLiQ or PROFIdrive) must be active.
  • The position-controller cycle (p0115[0]) must match the IPO cycle of the CPU 315T (typically 4 ms for S7 Technology).

Step 5: HW Config in STEP 7 / TIA Portal.

In HW Config (STEP 7 V5.5) or the device configuration view (TIA Portal), add the CPU 315T to the rack. In the CPU properties, enable the "Technology" option. Open the S7 Technology configuration editor and add the technology objects.

Configuring Technology Objects

The configuration of a TO PositioningAxis or SynchronousAxis requires the following parameters:

Configuration group Parameter (selection) Meaning
Basic parameters AxisName, AxisType, UnitOfMeasure Identification and engineering units (mm, m, °)
Drive assignment DriveType (SINAMICS S120), TelegramType (105) Communication to the drive
Encoder assignment EncoderType, Resolution, GearRatio Feedback signal conditioning
Mechanical system LoadGearRatio, PositionTolerance, HomingMode Mechanical coupling and homing sequence
Limits MaxVelocity, MaxAcceleration, MaxDeceleration, MaxJerk Trajectory constraints (must match drive capability)
Position monitoring PositioningTolerance, FollowingErrorTolerance Fault trigger thresholds
Homing HomingMode (active / passive, reference cam, zero mark) Reference-point definition
Dynamic parameters AccelerationProfile (trapezoidal / jerk-limited), JerkTime Smoothness vs. cycle-time trade-off

For the saw carriage, the critical limits are:

  • MaxVelocity: 1.5–2.0 m/s (typical for light-weight saws on chipboard lines)
  • MaxAcceleration: 10–15 m/s²
  • MaxJerk: 50–100 m/s³ (limits mechanical stress on the carriage frame)
  • FollowingErrorTolerance: 2–5 mm (must be tight enough to prevent blade breakage on transient deceleration)

Programming the Saw Cycle

The saw cycle is implemented by manipulating the SynchronousAxis or CamTrack TO via the S7 Technology FB / FC library. The key function blocks are:

  • MC_Power (FB 801): Enables the axis controller and clears the drive enable.
  • MC_Home (FB 802): References the axis to a known mechanical position.
  • MC_MoveVelocity (FB 803): Commands a velocity setpoint.
  • MC_MoveAbsolute (FB 804): Commanded positioning to an absolute target.
  • MC_GearIn (FB 805): Activates synchronous operation with a master axis and a gearing ratio.
  • MC_CamIn (FB 806): Activates camming with a selected cam profile.
  • MC_Halt (FB 807): Stops the axis with configured deceleration.
  • MC_Reset (FB 808): Acknowledges technology faults.

A typical OB 1 (cyclic) call sequence for the saw:


CALL "MC_Power" , DB_SawPower
  Axis := "TO_SawAxis"
  Enable := "DB_Cycle".bEnable
  StopMode := 1        // emergency-stop ramp
  → Status, Busy, Error

CALL "MC_Home" , DB_SawHome
  Axis := "TO_SawAxis"
  Execute := "DB_Cycle".bHomeRequest
  Position := 0.0
  HomingMode := 3      // active homing: reference cam + zero mark
  → Done, Error

CALL "MC_GearIn" , DB_SawGear
  Master := "TO_ConveyorAxis"
  Slave := "TO_SawAxis"
  Execute := "DB_Cycle".bSyncRequest
  RatioNumerator := 1.0
  RatioDenominator := 1.0
  Acceleration := 10.0
  Deceleration := 10.0
  → InGear, Error

When synchronization is established (InGear = TRUE), the cam profile is engaged:


CALL "MC_CamIn" , DB_SawCam
  Master := "TO_ConveyorAxis"
  Slave := "TO_SawAxis"
  Execute := "DB_Cycle".bCamRequest
  Cam := "TO_SawCamTrack"
  MasterStart := "DB_Cycle".rMasterStart
  MasterOffset := 0.0
  SlaveOffset := 0.0
  MasterScaling := 1.0
  SlaveScaling := 1.0
  → InSync, EndOfProfile, Error

The cam profile itself is generated with the S7 Technology cam editor (graphical interface in STEP 7 / TIA Portal) or imported as an array of (master position, slave position) interpolation points. Interpolation methods supported include linear interpolation, cubic spline, and polynomial (Bezier) segments.

Commissioning and Verification

Commissioning is performed in six sequential phases. Do not skip phases; each phase has its own acceptance criteria.

Phase 1 — Static check (powered off).

Verify wiring against the schematic. Check PROFIBUS termination: the terminating resistor is ON at the last node only, typically 220 Ω plus the active terminator with 390 Ω × 2. Inspect shield bonding — both ends of the PROFIBUS shield should be clamped to grounded busbars to guarantee EMC immunity in the industrial environment of a chipboard line.

Phase 2 — Drive commissioning (drive powered, PLC in stop).

With STARTER or SINAMICS StartDrive, perform the motor identification routine. The drive will run a self-tuning sequence: p1910 = 1 for motor-data identification (static), then p1960 = 1 for speed-controller optimization (rotating). Verify that the drive reports zero following error at standstill and at constant velocity.

Phase 3 — Axis commissioning (PLC in run, drive enabled).

Open the S7 Technology axis control panel (online → axis → "Commissioning" / "Control Panel"). Test the axis in jog mode: move ±10 mm at 10 % velocity, then ±100 mm at 50 % velocity. Verify that:

  • The drive follows the setpoint within < 2 mm following error.
  • The actual position matches the displayed position on the HMI.
  • The homing sequence references correctly (active homing via reference cam + zero mark).

Phase 4 — Synchronization test (no board present).

Command a MC_GearIn at ratio 1:1 and verify that the slave velocity matches the master velocity within the tolerance window. Then engage a no-cut cam profile (saw stays at home) and verify that the cam is properly synchronized: the slave position is exactly the slave value of the cam at the current master position.

Phase 5 — Dry-cut test (synchronous operation, saw motor OFF).

Run the line at 10 % of production speed with the saw-blade motor de-energized. The carriage should synchronize, dwell at the cut position for the programmed window, retract to home, and repeat at the cycle period. Verify:

  • Position oscilloscope in the S7 Technology trace: actual position tracks setpoint within tolerance.
  • No following-error alarms.
  • Hydraulic / pneumatic pressure stable.
  • Cut-cycle period matches the calculated L_cut / v_c.

Phase 6 — Production cut (full speed, blade engaged).

Engage the saw motor and proceed to full production speed. The first 5–10 cuts must be inspected for cut quality. If the cut shows a leading-edge tear or trailing-edge nick, adjust the cam profile to compensate for the master-encoder lag.

Fault Diagnosis and Error Codes

The S7 Technology system reports errors via:

  1. The Error output of each FB (e.g., MC_MoveAbsolute.Error = TRUE means a fault has occurred on the associated TO).
  2. The TO error word (<TO>.ErrorWord) which contains bit-coded error categories.
  3. The technology fault buffer in the CPU diagnostics buffer (visible in STEP 7 / TIA Portal online → diagnostics).
Error / Code Cause Remediation
Following error during synchronization Slave cannot catch up to master due to insufficient acceleration Reduce line speed, raise MaxAcceleration, check for mechanical binding
Encoder failure (SINAMICS F31117) Encoder cable breakage or contamination Inspect DRIVE-CLiQ connector, replace encoder cable, run p0437
PROFIBUS communication failure (SINAMICS F08501) Bus interruption, incorrect telegram selection Check connector, verify telegram 105 / 106 selected on both CPU and drive
Axis enable missing (TO error 16#8001) MC_Power not called or drive enable absent Call MC_Power in OB 1, verify drive enable (STW1 bit 0)
Homing error (TO error 16#8002) Reference cam not detected, wrong homing mode Check sensor wiring, verify homing mode matches mechanical layout
Positioning tolerance exceeded (TO error 16#8401) Setpoint velocity too high or load inertia too large Reduce MaxVelocity, tune speed / position controller gains (Kp, Tn)
Cam profile undefined (TO error 16#8602) Cam points outside master range or undefined interpolation segment Re-check cam definition, ensure end point matches start point
CPU 315T STOP due to technology fault OB 85 / OB 121 missing or technology alarm unacknowledged Install OB 85, OB 121; acknowledge technology alarms in OB 1

Always diagnose the lowest-numbered error first; cascade errors often mask the root cause. The complete list of S7 Technology error codes is documented in the S7 Technology function manual on the Siemens Industry Online Support portal.

Learning Path and Recommended Sequence

For an automation engineer familiar with S7-300 / S7-400 programming but new to motion control, the recommended progression is:

  1. Foundational theory: Read the Siemens "SIMATIC S7-300 Technology Functions" manual on the Siemens Industry Online Support portal for the conceptual overview of technology objects, profile generation, and synchronization. Review the Wikipedia overview of motion control for a vendor-neutral framework, and the AutomationDirect motion-control catalog for hardware taxonomy.
  2. Single-axis positioning: Build a bench test with a CPU 315T, a SINAMICS S120 starter kit, and a small servo motor. Configure a TO PositioningAxis and practice MC_MoveAbsolute commands.
  3. Gearing: Add a second axis (virtual or real) as a master, configure a TO SynchronousAxis on the slave, and verify ratio changes with MC_GearIn.
  4. Camming: Create a simple cam with the S7 Technology cam editor and verify synchronization with the control-panel trace.
  5. Production-aligned practice: Apply the techniques to your diagonal saw: model the production cycle, define the cam profile, integrate with your existing S7-300 PLC code, and commission with the dry-cut procedure above.

Throughout, the S7 Technology control panel (online → TO → control panel) is the best diagnostic tool: it shows the actual-vs.-setpoint trajectory in real time and lets you jog the axis without writing PLC code.

Integration with the Existing S7-300 Program

Since the existing chipboard line already uses an S7-300 application, the motion-control extension can be added without rewriting the legacy logic. The recommended pattern is:

  1. Add a new logic block (FB 200, "SawSynchronization") that contains the MC_Power / MC_Home / MC_CamIn calls.
  2. The existing OB 1 calls FB 200 unconditionally; FB 200 internally manages state via a state machine (IDLE → HOMING → READY → SYNCHRONIZING → CUTTING → RETURNING → READY).
  3. The HMI tags of FB 200's instance DB are added to the existing HMI project for operator visibility.

This separation keeps the legacy logic (conveyor control, saw-motor contactor, lubrication) untouched and adds the motion layer as a clearly bounded enhancement. The same separation applies if migrating to a successor platform such as the S7-1500T CPU family, where the S7-1500T Motion Control V5+ environment replaces the S7 Technology package.

Safety Considerations

Warning: Motion control on a saw line carries severe mechanical hazards. The following safety practices are mandatory.
  • All access to the cutting zone must be interlocked; the saw must be disabled (via MC_Power with StopMode = 0 and the drive STW1 enable cleared) when any guard is open.
  • The category-1 / category-3 stop circuits (per ISO 13849-1) must be implemented in the SINAMICS drive using the Safe Torque Off (STO) inputs on the CU310-2. Do not rely solely on the PLC MC_Power block, which is a software stop and not safety-rated.
  • The Safe Stop 1 (SS1) function with SLS (Safely-Limited Speed) should be used for the saw carriage during operator intervention.
  • Hydraulic accumulators must be depressurized and verified before maintenance.

The CPU 315T itself does not provide SIL-rated safety functions; safety is implemented in the SINAMICS S120 integrated safety (or in a separate F-CPU such as the CPU 315F-2 DP for higher SIL levels per IEC 61508). For combined motion and safety on a single CPU, the successor part number is the CPU 317TF-2 DP.

FAQ

What is the difference between a CPU 315T and a CPU 315F-2 DP?

The CPU 315T is a technology CPU with integrated motion-control (S7 Technology) functionality but no fail-safe (F) capability. The CPU 315F-2 DP is a fail-safe CPU (SIL 2 / SIL 3 per IEC 61508) without the integrated motion objects. For combined motion and safety, consider the CPU 317TF-2 DP which combines both feature sets.

Can I use the CPU 315T with TIA Portal, or only with STEP 7 V5.5?

Both are supported. The CPU 315T (6ES7315-6TH13-0AB0) is supported in STEP 7 V5.5 with S7 Technology V4.2 SP3 (or later) and in TIA Portal V13 SP1 (or later) with S7 Technology V4.2 SP3. New projects should target TIA Portal because S7 Technology V5.x is the terminal version for the CPU 315T; the successor is the S7-1500T CPU family with S7-1500T Motion Control.

How many synchronized axes can one CPU 315T control?

Up to 8 positioning axes, 8 synchronous axes, and 8 camming axes can be configured on a single CPU 315T (with S7 Technology V4.2 or later). The actual number depends on the IPO cycle: at the default 4 ms cycle, all 8 axes of each type can be served simultaneously. Reducing the IPO cycle below 2 ms reduces the maximum axis count.

What drive telegram should I select for synchronized operation?

Use Siemens-specific telegram 105 (4 words of setpoint, 4 words of actual values) or telegram 106 (extension for additional torque / diagnostic data). Standard PROFIdrive telegram 3 supports positioning but not the S7 Technology synchronous-axis extension. The selection must match on both the CPU side (HW Config / TIA Portal device configuration → drive assignment) and on the drive side (STARTER / StartDrive → communication → telegram configuration).

Why does my saw carriage overshoot during synchronization engagement?

Overshoot on MC_GearIn engagement is typically caused by insufficient ramp-time specification, mechanical backlash, or controller gain mismatch. Increase the Acceleration and Deceleration parameters on the gear-in call, then re-tune the position controller (Kp, Tn) of the slave drive. If the issue persists, engage gearing at a lower line speed first and ramp up after InGear = TRUE is stable for at least one full master cycle.

Back to blog