S7-1512C PTO Pulse Train Output: Resolving Drive Fault Errors
Problem Overview
The SIMATIC CPU 1512C-1 PN is a compact controller with integrated digital and analog I/O and four onboard PTO (Pulse Train Output) channels. When commissioning a pulse-direction servo drive that accepts only PULSE and DIR signals (no PROFINET, no encoder, no PROFIdrive interface), engineers frequently encounter a persistent "Fault in the drive" indication in the TIA Portal commissioning panel. The fault cannot be acknowledged, no telegram is being exchanged, and the physical drive reports no error. The same configuration that works flawlessly on an S7-1200 PTO channel (1211C through 1217C) yields a stuck fault on the 1512C.
The root cause is not a hardware defect, a wiring error, or a faulty drive. It is a configuration mismatch: the technology object (TO) is set up as a PROFIdrive axis when it should be set up as a PTO axis. This article documents the affected hardware, the exact mechanism that produces the spurious "Fault in the drive" error, the correct configuration sequence, the verification procedure, and the engineering parameters required to operate a pulse-direction servo on the 1512C-1 PN.
Affected Hardware, Firmware, and Software
CPU Catalog Numbers
| Article Number | Description | Terminal Type |
|---|---|---|
| 6ES7512-1CK00-0AB0 | CPU 1512C-1 PN | Screw |
| 6ES7512-1CK01-0AB0 | CPU 1512C-1 PN (updated) | Screw |
| 6ES7512-1DK01-0AB0 | CPU 1512C-1 PN | Push-in |
Firmware Compatibility
| TIA Portal Version | Minimum Firmware | Recommended Firmware |
|---|---|---|
| V15.1 | V1.8 | V2.0 or later |
| V16 | V2.0 | V2.5 or later |
| V17 | V2.5 | V2.8 or later |
| V18 / V19 | V2.9 | V2.9.x (latest) |
The original report uses TIA Portal V15.1. The configuration procedure described in this article applies to V15.1 and later versions with minor dialog changes.
Onboard I/O Resources of CPU 1512C-1 PN
| Resource | Quantity | Notes |
|---|---|---|
| Digital inputs (24 V DC) | 16 | 4 HSC-capable |
| Digital outputs (24 V DC, 0.5 A) | 16 | 4 PTO-capable |
| Analog inputs | 5 | Voltage / current / RTD |
| Analog outputs | 2 | Voltage / current |
| PROFINET interfaces | 1 (2 ports) | Switched |
| Maximum PTO output frequency | 1 MHz per channel | HW-dependent |
| Motion control resources | 800 | Shared by axes, cams, encoders |
| Maximum number of axes | 32 | Includes encoder and PTO axes |
The four PTO-capable DQ channels form two PTO channel pairs. The default address assignment depends on the slot configuration; in a standalone CPU, PTO Channel 0 typically maps to the first two PTO-capable outputs of the onboard DQ area.
Reference Documentation
- S7-1500 Motion Control Function Manual
- S7-1500 Compact CPU System Manual
- STEP 7 V15.1 System Manual
- S7-1500C CPU 1512C-1 PN Equipment Manual
Root Cause: PROFIdrive Status Word Bit 3
The "Fault in the drive" indication in an S7-1500 motion control axis is generated from ZSW1 bit 3 (fault present) of the PROFIdrive status word. When the technology object is configured with PROFIdrive as the drive type, the PLC continuously exchanges Standard Telegram 3 (or another configured telegram) with the drive over PROFINET or PROFIBUS. The PLC reads ZSW1 from the drive and monitors bit 3:
- ZSW1 bit 3 = 0 → No fault, axis can be enabled
- ZSW1 bit 3 = 1 → Fault present, axis reports "Fault in the drive"
When the drive is a simple pulse-direction servo with no PROFINET interface, the PLC's PROFIdrive stack cannot establish the communication. The stack interprets the missing telegram response as a permanent fault state, and ZSW1 bit 3 remains effectively asserted from the PLC's perspective. The result is the latched "Fault in the drive" indication that cannot be acknowledged using standard tools.
Three symptoms confirm this root cause:
- Ready input is disabled (no drive-ready signal wired)
- No error input from the drive (no drive fault wired to a DI)
- Telegram 3 is visible in the technology object configuration with no physical PROFINET drive on the network
The fix is to change the drive type from PROFIdrive to PTO (Pulse Train Output) in the technology object. This removes the PROFIdrive communication path entirely, and the PLC no longer polls for a status word. The PTO output channels on the onboard DQ produce the pulse and direction signals directly, with no feedback path required.
Hardware Configuration: PTO Output Wiring
PTO Channel Pair Assignment
Each PTO axis uses one PTO channel pair (two digital outputs). The CPU 1512C-1 PN provides four PTO channel pairs in its onboard DQ area:
| PTO Channel | DQ Address (default) | Function (2-wire mode) |
|---|---|---|
| Channel 0 | DQ a+0 / a+2 | PULSE / DIR |
| Channel 1 | DQ a+4 / a+6 | PULSE / DIR |
| Channel 2 | DQ a+8 / a+10 | PULSE / DIR |
| Channel 3 | DQ a+12 / a+14 | PULSE / DIR |
where 'a' is the I/O start address of the onboard DQ area (default 0). For PTO Channel 0 in 2-wire pulse and direction mode, DQ a+0 carries the pulse train (CW step signal) and DQ a+2 carries the direction bit.
2-Wire Pulse and Direction Wiring
| PLC Output | Drive Input (typical) | Signal Level |
|---|---|---|
| DQ a+0 | PULSE+ / STEP+ / CW+ | 24 V push-pull, 100 kHz - 1 MHz |
| DQ a+2 | DIR+ / CCW+ | 24 V push-pull, logic level |
| 0 V (M terminal) | PULSE- / DIR- / Common | 0 V reference |
Verify the drive input type (sink/source/differential) before connecting. Most modern servo drives accept 24 V single-ended inputs. For drives requiring RS-422 differential inputs, install an external line driver (AM26LS31, SN75174, or equivalent) between the PLC and the drive.
Drive Enable Signal
Most servo drives require a dedicated Servo ON (SON) input that must be energized to enable the drive power stage. Wire this input to a free digital output (either onboard DQ not used for PTO, or a DO on an output module). Control the output in the user program before and after calling MC_Power:
// Set drive enable before MC_Power
"DO_ServoEnable" := bAxisEnabled;
MC_Power(Axis := "Axis_1", Enable := bAxisEnabled, EnableMode := TRUE);
Shielded Cable Specification
| Parameter | Specification |
|---|---|
| Cable type | Twisted pair, shielded |
| Conductor | 24 AWG minimum for 24 V signals |
| Capacitance | < 60 pF/m |
| Maximum length | 10 m at 1 MHz, 50 m at 100 kHz |
| Shield grounding | Both ends, 360-degree bond at cable glands |
Technology Object Configuration: Step-by-Step
The following sequence configures a positioning axis for a pulse-direction servo drive. The same procedure applies to a speed axis with the appropriate parameter changes.
Step 1: Enable the PTO Channel in Device Configuration
- Open the project in TIA Portal.
- Double-click the CPU 1512C-1 PN in the device view.
- Navigate to Properties > Digital outputs.
- Click the first PTO channel (Channel 0).
- Set Operating mode to "PTO (Pulse Train Output)".
- Set Output mode to "Pulse and direction" (2-wire).
- Set the Maximum output frequency (default 100 kHz, range 1 Hz - 1 MHz).
- Apply the changes.
Step 2: Create the Technology Object
- In the project tree, expand the CPU folder.
- Right-click Technology objects > Add new object.
- Select Positioning axis or Speed axis.
- Assign a name (e.g., Axis_1, Axis_PulseServo).
- Click OK.
- The TO opens in the configuration editor.
Step 3: Configure Basic Parameters
| Parameter | Value | Notes |
|---|---|---|
| Axis name | Axis_1 | Used in user program references |
| Unit system | mm / inch / pulse / degree | Select matching mechanics |
| Axis type | Linear / Rotary | Linear for positioning, rotary for speed |
| Modulo | Disabled / Enabled | Enabled for rotary applications |
Step 4: Configure the Drive
- Navigate to Hardware interface > Drive in the TO configuration tree.
- Set Drive type to PTO (Pulse Train Output).
- The PROFIdrive-specific fields (telegram, PROFIdrive address) disappear.
- Select the PTO output channel from the dropdown (e.g., PTO Channel 0).
- Set the direction logic: Positive direction = HIGH or LOW based on drive requirements.
- Enter the maximum speed of the drive in pulses/second (or equivalent).
- Enter the reference speed and maximum velocity in the application unit.
Step 5: Configure the Encoder (Optional)
For a pulse-direction drive without encoder feedback, the encoder connection must be set to "None".
- Navigate to Hardware interface > Encoder.
- Set Encoder type to "No encoder" or "None".
- The axis operates in open-loop mode.
Open-loop positioning relies on the mechanical system to provide repeatable positioning. Acceptable for applications with limited travel, lead screws, and external end-of-travel sensors. Not acceptable for high-precision applications.
Step 6: Configure Limits and Dynamics
| Parameter | Typical Value | Description |
|---|---|---|
| Maximum velocity | 50-100% of drive rated speed | Hard limit for all motion |
| Maximum acceleration | Application-dependent | Limits MC_MoveAbsolute / MC_MoveRelative |
| Maximum jerk | Application-dependent | Limits MC_MoveAbsolute with jerk limiting |
| Positioning tolerance | 0.1 - 1.0 mm | In-position window for open-loop |
| SW limit positive | Application-defined | Software positive limit |
| SW limit negative | Application-defined | Software negative limit |
| HW limit positive | DI address | Optional hardware limit input |
| HW limit negative | DI address | Optional hardware limit input |
Step 7: Configure Drive Enable
- Navigate to Extended parameters > Drive enable.
- Map a tag to control the drive enable output (e.g., "Axis_1".DriveEnable).
- Use the PLC tag table to assign the tag to a DO output (e.g., Q0.0).
- Or, set the drive enable output directly in the user program before MC_Power.
Step 8: Compile and Download
- Right-click the CPU > Compile > Hardware and software (rebuild all).
- Resolve any compilation errors. Common issues: missing PTO channel assignment, mismatched unit systems, encoder configured but no encoder hardware.
- Connect to the CPU and download the project.
- Go online and open the TO commissioning panel.
Why Telegram 3 Causes the Fault
Telegram 3 Structure
Telegram 3 is the Siemens Standard Position Telegram used for PROFIdrive positioning. It contains 2 PZD words from PLC to drive and 5 PZD words from drive to PLC:
| Direction | Word | Name | Description |
|---|---|---|---|
| PLC → Drive | PZD1 | STW1 | Control Word 1 |
| PLC → Drive | PZD2 | NSOLL_B | Position setpoint (32-bit) |
| Drive → PLC | PZD1 | ZSW1 | Status Word 1 (contains fault bit) |
| Drive → PLC | PZD2 | NIST_B | Position actual value (32-bit) |
| Drive → PLC | PZD3 | Additional feedback | Vendor-specific |
| Drive → PLC | PZD4 | Additional feedback | Vendor-specific |
| Drive → PLC | PZD5 | Additional feedback | Vendor-specific |
ZSW1 bit 3 (Fault present) is monitored continuously by the PLC. If the telegram is not received (drive not on PROFINET), the PLC cannot confirm a non-fault state and latches the "Fault in the drive" indication.
Removing Telegram 3 from the Configuration
- Open the technology object configuration.
- Navigate to Hardware interface > Drive.
- Change Drive type from "PROFIdrive" to "PTO (Pulse Train Output)".
- Compile and download.
After this change, the Telegram field disappears, and the axis no longer polls for a PROFIdrive status word. The "Fault in the drive" error will no longer appear when the drive is correctly configured as a pulse-direction device.
Verification and Commissioning
Online Commissioning Procedure
- Connect TIA Portal to the CPU via PROFINET.
- Click Go online.
- Open the technology object (e.g., Axis_1) in the project tree.
- Click Commissioning in the toolbar.
- The commissioning panel opens with the following indicators:
- Error: should be inactive
- Warning: may be active for non-critical conditions
- Axis state: should show "Ready to enable" or similar
- Drive ready: not applicable for PTO
- Click Enable to enable the axis.
- Use the Jog buttons to test motion in positive and negative directions.
- Monitor the pulse and direction signals with an oscilloscope or logic analyzer at the drive terminals.
Verification Checklist
| Check | Expected Result |
|---|---|
| "Fault in the drive" in commissioning panel | Not present |
| Axis status word bit 0 (Enabled) | TRUE after MC_Power |
| Axis status word bit 1 (Error) | FALSE |
| MC_Power status output | 7 (axis enabled and ready) |
| MC_MoveJog motion | Axis moves at commanded velocity |
| PULSE output at drive | Pulse train at commanded frequency |
| DIR output at drive | HIGH for positive, LOW for negative |
| Servo ON signal at drive | Active during motion |
| Drive LED status | Enabled / Run (no fault) |
Status Word Reference (PTO Axis)
| Bit | Name | Description | Applicable to PTO |
|---|---|---|---|
| 0 | Enabled | Axis is enabled | Yes |
| 1 | Error | Axis has an error | Yes |
| 2 | Warning | Axis has a warning | Yes |
| 3 | HomePosition | Axis is at home position | Yes |
| 4 | InPosition | Axis is at target position | Yes |
| 5 | Standstill | Axis is at standstill | Yes |
| 6 | Acceleration | Axis is accelerating | Yes |
| 7 | Deceleration | Axis is decelerating | Yes |
| 8 | ConstantVelocity | Axis is at constant velocity | Yes |
| 9 | CommandExecuting | Motion command is active | Yes |
| 10 | DriveReady | Drive is ready (PROFIdrive) | No |
| 11 | FollowingError | Following error (encoder required) | No |
Common Error Codes and Resolutions
Motion Control Error IDs
| Error Code | Meaning | Resolution |
|---|---|---|
| 16#8001 | Axis not enabled | Call MC_Power.Enable = TRUE before motion commands |
| 16#8002 | Axis already enabled | Disable with MC_Power.Enable = FALSE, then re-enable |
| 16#8003 | Drive error (PROFIdrive ZSW1.3) | Change drive type to PTO for non-PROFIdrive drives |
| 16#8004 | Encoder error | Check encoder wiring, set encoder to None if not used |
| 16#8005 | Following error | Increase tolerance, reduce velocity, check mechanics |
| 16#8006 | Configuration error | Recompile TO, check parameters |
| 16#8007 | SW limit switch reached | Reduce target position, check limits |
| 16#8008 | HW limit switch reached | Move axis in opposite direction, check DI wiring |
| 16#8009 | Command not allowed in current state | Stop axis, wait for standstill, issue new command |
| 16#800A | Invalid velocity parameter | Check velocity limits in TO configuration |
| 16#800B | Invalid acceleration parameter | Check acceleration limits in TO configuration |
| 16#800C | Invalid deceleration parameter | Check deceleration limits in TO configuration |
| 16#800D | Invalid jerk parameter | Check jerk configuration |
| 16#800E | Invalid position parameter | Check position limits and target value |
| 16#800F | Invalid direction | Check SW/HW limit switches |
| 16#8010 | Command table error | Check command table configuration |
| 16#8011 | Axis not homed | Execute MC_Home before absolute positioning |
| 16#8012 | Axis not configured | Recompile and download TO |
Specific Diagnosis for "Fault in the Drive"
- Open the technology object configuration.
- Navigate to Hardware interface > Drive.
- Confirm Drive type is set to PTO or Stepper.
- If PROFIdrive is selected, change it to PTO and recompile.
- Go online and check the commissioning panel for the error.
- Monitor AxisName.ErrorWord in a watch table to see the specific error code.
- Use MC_ReadAxisError to retrieve the error code programmatically.
Troubleshooting Matrix
| Symptom | Likely Cause | Resolution |
|---|---|---|
| "Fault in the drive" persists with no telegram | Drive type still PROFIdrive | Change drive type to PTO in TO configuration |
| Axis does not enable despite no error | Drive enable output not set | Set DO for Servo ON in user program before MC_Power |
| Axis enables but does not move | PTO channel not enabled in device config | Enable PTO channel in CPU Properties > Digital outputs |
| Axis moves in one direction only | Direction output inverted or not wired | Check wiring, invert direction logic in TO |
| Pulse frequency too low for required speed | Maximum PTO frequency set too low | Increase PTO max frequency to 1 MHz |
| Position accuracy poor in open-loop | No encoder feedback | Add encoder or accept open-loop accuracy for this application |
| Axis errors during acceleration | Acceleration limit too high | Reduce acceleration in TO limits |
| Axis errors at high speed | Drive cannot reach commanded speed | Reduce max velocity to drive rated speed |
| Telegram field still visible in TO config | Drive type not changed to PTO | Change drive type from PROFIdrive to PTO |
| "No axis data" warning in project tree | TO not yet created | Add new technology object via Add New Object |
| PTO channel disabled in device config | Default channel is disabled | Enable PTO channel in Properties > Digital outputs |
| Drive not responding to pulses | Pulse voltage level mismatch | Verify drive input spec (5V/24V/differential) |
| Motion stutters or pulses are uneven | Excessive cable capacitance or EMI | Use shielded cable, reduce cable length, install line driver |
| Axis position drifts over time | Open-loop operation, no encoder | Implement homing routine and use external sensors |
Drive Connection Type Comparison
| Feature | PROFIdrive | PTO | Stepper | Analog |
|---|---|---|---|---|
| Communication | PROFINET / PROFIBUS | Digital output | Digital output | Analog output |
| Feedback | PROFIdrive status word | None (open-loop) | None (open-loop) | Optional analog |
| Telegram | Required (1, 2, 3, 5, 7, 9) | Not used | Not used | Not used |
| Position accuracy | High (encoder feedback) | Low (open-loop) | Low (open-loop) | Medium |
| Max frequency | Drive-dependent | 1 MHz (1512C) | 1 MHz (1512C) | N/A |
| Drive enable | Control word bit | External DO | External DO | AQ > 0 |
| Typical use | High-performance servos | Simple servos, steppers | Stepper motors | VFDs, hydraulic servos |
| Configuration complexity | High | Low | Low | Medium |
| Fault reporting | ZSW1 bit 3 | None (drive-specific) | None (drive-specific) | None (drive-specific) |
Sample User Program (SCL)
// Axis control for pulse-direction servo
// Tags: bStart (BOOL), bStop (BOOL), rTargetPos (REAL), bAxisError (BOOL)
// Drive enable and MC_Power
IF "bStart" AND NOT "bAxisError" THEN
"Axis_1".DriveEnable := TRUE; // Set drive enable DO
MC_Power(
Axis := "Axis_1",
Enable := TRUE,
EnableMode := TRUE // TRUE = enable drive
Migration Notes: S7-1200 to S7-1500C
Engineers familiar with PTO on S7-1200 CPUs (1211C through 1217C) should note these differences when migrating to the 1512C-1 PN:
| Feature | S7-1200 PTO | S7-1500C PTO |
|---|---|---|
| PTO channels | 2-4 (CPU-dependent) | 4 |
| Maximum frequency | 100 kHz (1 MHz on 1217C) | 1 MHz |
| Configuration entry | Device config > PTO properties | Device config > DO > Channel operating mode |
| Axis configuration | Axis configuration editor | Technology Object (TO) |
| Drive type options | PTO only | PTO, Stepper, PROFIdrive, Analog |
| Default drive type | PTO | PROFIdrive (must be changed) |
| User blocks | MC_Power, MC_MoveAbsolute, etc. | MC_Power, MC_MoveAbsolute, etc. (same) |
The most significant difference is the default drive type. On S7-1200 PTO, the axis is implicitly PTO. On S7-1500C, the default drive type when creating a new TO is PROFIdrive, which causes the "Fault in the drive" error for pulse-direction drives. Always verify the drive type after creating a new TO on the 1512C-1 PN.
Best Practices for PTO Operation
Hardware Best Practices
- Use shielded twisted-pair cable for PTO signal wiring
- Keep PTO cables under 3 meters for reliable 1 MHz operation
- Install RS-422 line drivers for cable runs over 10 meters
- Provide a separate 24 V DC supply for the drive to isolate ground loops
- Add pull-down resistors (2.2 kΩ to 4.7 kΩ) on direction output if the drive requires defined logic levels when PLC is in STOP
- Verify drive input voltage levels match the 1512C DQ output (24 V DC, 0.5 A)
- Install flyback diodes on any relay coils connected to the same 24 V supply
- Use proper EMC practices: cable glands, 360-degree shield bonding, separate cable trays for power and signal
Software Best Practices
- Call MC_Power with Enable = TRUE before any motion command
- Use MC_MoveJog for manual testing before automatic sequences
- Implement position verification with external sensors for open-loop applications
- Monitor the axis status word continuously in the user program
- Implement error handling for all motion commands using Error and ErrorID outputs
- Use MC_Reset to acknowledge axis errors before re-enabling
- Limit maximum velocity and acceleration to drive specifications (consult drive datasheet)
- Test motion in jog mode first, then small relative moves, then absolute moves
- Document the axis configuration including all parameter values
- Save the project with a versioned naming scheme
Firmware Update Procedure
If the PTO configuration is not appearing or the behavior is inconsistent, update the CPU firmware:
- Connect to the CPU online in TIA Portal.
- Navigate to Online > Accessible devices.
- Select the CPU 1512C-1 PN in the list.
- Right-click > Update firmware.
- Select the firmware file (downloaded from Siemens SiePortal as a *.upd file).
- Follow the update wizard. The CPU will be in STOP mode during the update.
- Cycle power to the CPU after the update completes.
- Re-download the project to the CPU.
- Go online and verify the configuration.
Diagnostic Resources in TIA Portal
Watch Table for Axis Monitoring
Create a watch table with the following tags for real-time axis monitoring:
| Tag | Type | Description |
|---|---|---|
| Axis_1.StatusWord | DWORD | Axis status word |
| Axis_1.ErrorWord | WORD | Axis error code |
| Axis_1.ActualPosition | LREAL | Current axis position |
| Axis_1.ActualVelocity | LREAL | Current axis velocity |
| Axis_1.TargetPosition | LREAL | Current command target |
| Axis_1.DriveEnable | BOOL | Drive enable output |
Trace Recording
Use the TIA Portal Trace function to record axis behavior over time:
- Navigate to Traces in the project tree.
- Create a new trace configuration.
- Add the following signals:
- Axis_1.ActualPosition
- Axis_1.ActualVelocity
- Axis_1.StatusWord
- Drive enable DO
- Set the recording duration (e.g., 10 seconds).
- Trigger the trace from a user program or manually.
- Analyze the recorded data to verify motion profile and timing.
FAQ
Why does the S7-1512C-1 PN show "Fault in the drive" even when no drive is physically connected?
The "Fault in the drive" error is generated from the PROFIdrive status word bit 3 (fault present). When the technology object is configured with PROFIdrive as the drive type, the PLC continuously polls the drive for the status word. If no PROFINET connection exists (because the drive has no PROFINET interface), the PLC cannot confirm a non-fault state and latches the fault. Switch the drive type to PTO (Pulse Train Output) in the technology object to remove the PROFIdrive polling.
Can I use a pulse-direction servo drive with the S7-1512C-1 PN onboard PTO outputs?
Yes. Configure the axis technology object with drive type "PTO (Pulse Train Output)" and select the 2-wire pulse-and-direction mode in the device configuration. The drive enable signal (Servo ON) must be provided as a separate digital output controlled by the user program before calling MC_Power.
How many PTO axes can be configured on a CPU 1512C-1 PN?
The CPU 1512C-1 PN has four PTO-capable digital output channels, allowing up to four PTO axes. Each PTO axis uses two DQ channels (one for pulse, one for direction). The total number of axes including encoder-based and PROFIdrive axes is limited to 32 motion control resources.
Do I need a PROFIdrive telegram for PTO operation on the 1512C?
No. PROFIdrive telegrams are only required for drives with PROFINET or PROFIBUS interfaces that support the PROFIdrive profile. For PTO operation with a pulse-direction drive, no telegram is configured. The PLC generates pulse and direction signals directly on the onboard DQ channels without any communication path to the drive.
What is the maximum pulse frequency for PTO on the 1512C-1 PN?
The maximum PTO output frequency on the CPU 1512C-1 PN is 1 MHz per channel, configurable in 1 Hz increments. The actual achievable frequency at the drive depends on the cable length, cable capacitance, and the drive input specifications. For cable runs under 3 meters, 1 MHz is typically achievable. For longer runs, reduce the maximum frequency or install an RS-422 line driver.
Why does my PTO axis enable but not produce any motion?
Verify the following in order: (1) The PTO channel is enabled in the device configuration (Properties > Digital outputs > Channel 0 = PTO mode). (2) The pulse and direction outputs are wired to the correct drive input terminals. (3) The Servo ON (drive enable) signal is active. (4) The drive is powered and not in a fault state (check drive LEDs or display). (5) A motion command (MC_MoveJog or MC_MoveAbsolute) is being executed with Execute = TRUE. Use an oscilloscope or logic analyzer to confirm pulse signals are present at the drive input terminals.
How do I acknowledge a drive fault on a PTO axis?
Use the MC_Reset function block to acknowledge axis errors. For PROFIdrive drives, the fault is acknowledged via the control word. For PTO drives, the fault is acknowledged by calling MC_Reset after the underlying condition is resolved (e.g., drive enable restored, hardware limit switches not active, position within software limits). Monitor the Error and ErrorID outputs of MC_Reset to confirm the reset was successful.
Can I mix PTO and PROFIdrive axes on the same CPU 1512C-1 PN?
Yes, as long as the total number of axes does not exceed the available motion control resources (32 maximum) and the four PTO channels are not over-assigned. The drive type is configured per axis technology object, allowing a mix of PTO, stepper, analog, and PROFIdrive axes in the same project. For example, two PTO axes and one PROFINET-connected PROFIdrive axis can coexist on a single 1512C-1 PN.