1. Overview: The MotSpdCL Bidirectional Default in PCS 7
The MotSpdCL block from the PCS 7 Advanced Process Library (APL) is engineered for variable-speed drives (VSD/VFD) that must be operated in both forward and reverse. When the same Process Tag Type (PTT) is reused for a one-way load such as a single-rotation pump, fan, or extruder, the operator faceplate and the runtime control logic both expose a reverse command that has no physical meaning. This produces two visible defects in the OS:
- The faceplate renders a Reverse button that the drive hardware cannot honor, so an operator click on it results in no movement and a spurious alarm cascade.
- The block icon shows both Forward and Reverse status indicators even though only one direction is wired in the field.
Two paths are available to adapt the standard PTT to a unidirectional service without writing a new block from scratch:
- Disable the reverse command at the OS layer by clearing OS_Perm bit 6, and wire the Rbk input correctly so the speed readback is stable.
- Replace MotSpdCL with the lighter MS_DIR block from the PCS 7 block library for SIRIUS motor starters, which is single-direction by design.
This reference covers the CFC wiring, the OS permission bits, the readback logic, the WinCC faceplate edits, and the commissioning checks required for either approach.
2. Prerequisites
- PCS 7 V8.2 SP1 or later (V9.0/V9.1 recommended for current APL revision). The APL blocks described here are valid for the standard PTT library supplied with these versions.
- SIMATIC Manager with CFC/SFC editor licensed, or PCS 7 Engineering in the TIA Portal (the block library ships identically across both).
- WinCC Explorer / Graphics Designer with faceplate editing rights on the project server.
- For the SIRIUS path: PCS 7 block library for SIRIUS 3RA6/3RB22/3RW44 motor starters, see the Programming and Operating Manual for the PCS 7 block library for SIRIUS.
- The drive must be configured (SINAMICS G120/G130, MICROMASTER, or third-party VFD) with one fixed rotation sense and a single enable wiring path.
3. Solution Comparison: MotSpdCL Modification vs. MS_DIR Block
| Criterion | Option A: MotSpdCL with OS_Perm and CFC patching | Option B: MS_DIR from SIRIUS library | Option C: Full faceplate rewrite |
|---|---|---|---|
| Engineering effort | Low (10–20 min per instance type) | Low (block swap + re-instance) | High (WinCC graphics designer) |
| Effect on PTT | Reusable, single PTT | New PTT required (MS_DIR_PT) | Reusable, but per-faceplate work |
| Speed setpoint / readback | Full support (SpdSet, Rbk wired) | No speed input (digital only) | Full support |
| Reverse faceplate element | Greyed out via OS_Perm | Not present in faceplate | Removed by graphic edit |
| Suitable for VFD | Yes (recommended) | No (intended for DOL/reversing starters) | Yes |
| OS_Perm bits affected | Bit 6 (Reverse start) | Not applicable | Not applicable |
| Maintenance burden | None on block, only on PTT | Two PTTs to maintain | Custom faceplate; upgrade-painful |
Use Option A for VFD-driven unidirectional motors where you still want speed control and a standard PTT. Use Option B when the load is direct-on-line and the SIRIUS starter library is already loaded. Use Option C only when a corporate faceplate standard mandates removal of the reverse glyph.
4. Option A: Disable Reverse in MotSpdCL via OS_Perm Bit 6
The MotSpdCL block exposes a 16-bit word OS_Perm at input I/OS_Perm. Each bit is an operator authorization gate. According to the APL online help, bit assignments relevant to motor direction are:
| Bit | Function | Unidirectional value |
|---|---|---|
| 0 | Operator may issue Stop | 1 |
| 1 | Operator may issue Start (forward) | 1 |
| 2 | Operator may issue Manual mode | 1 |
| 3 | Operator may issue Auto mode | 1 |
| 4 | Operator may acknowledge faults | 1 |
| 5 | Operator may set speed setpoint | 1 |
| 6 | Operator may start the motor in reverse | 0 |
| 7–15 | Reserved / application-specific | 0 |
On the MotSpdCL instance in the CFC chart, connect OS_Perm to a word constant or a CFC constant block whose value is the integer 0x003F (decimal 63). This sets bits 0–5 to 1 (Stop, Fwd start, Manual, Auto, Ack, Spd) and clears bit 6 (Reverse). The reverse button is greyed out in runtime; no graphic edit is required.
// Suggested constant block configuration
OS_Perm := W#16#003F; // bits 0..5 enabled, bit 6 = 0 disables Reverse
Bit 6 may also be driven dynamically by an authority level or area selection block; for a hard one-way application a static constant is cleaner.
5. Option B: MS_DIR from the SIRIUS PCS 7 Block Library
For DOL (direct-on-line) single-direction motors driven by SIRIUS 3RA6/3RB22/3RW44 starters, the dedicated block is MS_DIR (Motor Starter Direction – one way). From the linked manual:
"The MS_DIR block can be used to start the motor in one direction of rotation, either in Manual operation LOCAL, Auto, or Manual mode." — PCS 7 block library for SIRIUS, Programming and Operating Manual
The companion block MS_REV is the two-direction variant and is not needed for this application. To use MS_DIR:
- Install the SIRIUS PCS 7 block library add-on into the master data library.
- Drag the MS_DIR block from the library to the unit chart in the CFC editor.
- Wire the digital feedback (
FbkRun) from the SIRIUS starter to the block input. - Wire the starter command output to the starter's control input on the ET 200SP / SIMOCODE / SIRIUS module.
- Generate the corresponding faceplate via the PTT wizard; the new faceplate has no reverse element by default.
MS_DIR is intentionally simpler than MotSpdCL: it has no setpoint, no speed input, and no readback of process speed. If your drive is a true VFD and you need speed control and ramped setpoint, stay with MotSpdCL and use Option A.
6. Readback (Rbk) Wiring When No Speed Feedback Exists
MotSpdCL expects an engineering-unit speed readback on input Rbk. If the drive is configured without an analog speed signal (for example a starter with only digital run feedback) the loop can become unstable or the block will generate SP_Rbk deviation alarms. Three approaches are valid:
| Approach | Wiring rule | When to use |
|---|---|---|
| A. Direct tie | Connect SP_Out directly to Rbk through a small tracking logic. |
No field speed sensor; drive is open-loop V/Hz. |
| B. Simulated feedback | Compute Rbk = SP_Out * 1.0 in a CALCU block (gain = 1). | Same as A, when noise on SP_Out would make a direct wire dither. |
| C. Real feedback | Wire a 0–10 V or 4–20 mA tachometer signal scaled to engineering units. | Closed-loop speed regulation is required. |
The recommended Sel_R-style pattern from field practice is:
// Rbk tracking logic - keeps readback equal to setpoint
// when the motor is running, zero when stopped
IF (FbkRun = 1) THEN
Rbk := SP_Out;
ELSE
Rbk := 0.0;
END_IF;
This pattern prevents the deviation alarm and removes the floating-zero behavior of the loop integrator when the motor is OFF. Place the logic in a small CFC chart or an FB instance attached to the PTT.
7. CFC Implementation Checklist for MotSpdCL Unidirectional
- Open the chart containing the MotSpdCL instance and confirm
Modeis at the expected value (typically 1 = Auto, 2 = Manual, 3 = Out of Service). - On
SP_Ext, wire the external setpoint (interlocking, cascade, or fixed value). - On
SpdSet, wire the operator setpoint from the faceplate (ifOS_Permbit 5 is enabled). - Set
OS_PermtoW#16#003Fas described in section 4. - On
Intlock, wire the start-permit chain; this is independent of direction and is mandatory in PCS 7. - On
Rbk, apply the pattern from section 6 (track SP_Out when FbkRun=1, else 0). - On
FbkRun, wire the digital run feedback from the drive I/O module. - On
FbkFwd, hard-wire a constant 1 if the drive is electrically fixed to the forward sense (this is what makes the block treat the start as a forward start regardless of operator input). - Compile the chart, then run the OS server compile and download.
FbkFwd := 1 is what makes the single-direction semantic unambiguous to MotSpdCL. The block's internal direction state is updated from the feedback, not from the operator command. Without this tie, the block can fall into an undefined direction state when the start command is processed before feedback has been read back.8. WinCC Faceplate Edits (Option C)
If corporate standards require that the reverse glyph be removed entirely (not just greyed out), edit the @PG_MotSpdCL faceplate copy in the Graphics Designer.
- Open WinCC Explorer and navigate to the project library.
- Locate @PG_MotSpdCL.pdl, copy it to a new name such as @PG_MotSpdCL_1D.pdl to avoid being overwritten by the next PCS 7 upgrade.
- Open the copy in Graphics Designer; identify the Reverse command button (typically the second dynamic button in the command row).
- Delete the button or set its Visible property to 0 in the property dialog.
- Update the block icon in @PG_MotSpdCl.pdl to remove the reverse direction indicator (small green triangle pointing left).
- Save the file; recompile the OS. The original PTT that references the default faceplate must be re-pointed to the new @PG_ file, or a new PTT (e.g. MotSpdCL_1D) must be generated and used for new instances.
9. Commissioning and Verification
| Step | Test | Expected result |
|---|---|---|
| 9.1 | Open the faceplate in runtime, confirm reverse button. | Button is greyed out (Option A) or absent (Option B/C). |
| 9.2 | Issue a forward start from the faceplate. | Motor runs; FbkRun = 1; Rbk tracks SP_Out; no alarms. |
| 9.3 | Click the reverse button. | No command accepted; no movement; no false alarm. |
| 9.4 | Issue a stop from the faceplate. | Motor stops; Rbk returns to 0; deviation alarm clears. |
| 9.5 | Disconnect the field FbkRun while running. | Block raises motor-running-loss alarm; faceplate shows fault state. |
| 9.6 | Force a new setpoint via SpdSet. | Setpoint visible in faceplate; drive follows; no SP_Rbk deviation alarm. |
| 9.7 | Cycle Intlock (0 → 1 → 0). | Start is inhibited when Intlock=0; fault flag set when command was active. |
10. Troubleshooting Matrix
| Symptom in OS | Likely cause | Corrective action |
|---|---|---|
| Reverse button active and starts motor | OS_Perm bit 6 not cleared | Re-check OS_Perm constant on the instance; reload CFC. |
| SP_Rbk deviation alarm at start | Rbk not wired, or wired to fixed zero | Apply the Rbk tracking pattern from section 6. |
| Block icon shows reverse indicator without reverse being pressed | FbkFwd not tied to 1 | Wire a constant 1 to FbkFwd; the block then interprets feedback as forward. |
| Faceplate still shows reverse after OS_Perm fix | OS server not recompiled | Run OS server compile, restart WinCC runtime. |
| Edited faceplate vanished after PCS 7 upgrade | @PG_ file overwritten by standard library | Re-deploy the custom @PG_ file from version control. |
| New instances of PTT still show reverse | New PTT created from default template | Re-generate PTT from the edited master; check PTT inheritance. |
| MS_DIR: no speed indication in faceplate | Expected – MS_DIR is digital only | Use MotSpdCL if speed display is required. |
11. Notes on Block Library Versions
MotSpdCL has been part of the APL since PCS 7 V6.0 and is maintained in every subsequent release. The exact instance DB size, the I/O signature, and the faceplate version are release-dependent. Always verify the Revision field in the block's properties dialog against the PCS 7 release notes. The SIRIUS MS_DIR/MS_REV blocks are part of a separate add-on library and are released in cycles independent of the main APL; the manual referenced in section 5 is the current authoritative source for pin assignments and runtime behavior.
12. Related Standards and References
The wiring patterns and interlocking rules in this article are consistent with the safety and process-control principles described in IEC 61131-3 (PLC programming languages) and IEC 62443 (industrial network security, relevant when the drive is on PROFINET). PCS 7 installations in safety-relevant plants must also satisfy the requirements of IEC 61508 / IEC 61511 for the protection layer that MotSpdCL's Intlock chain implements; this is a verification step to be performed by the plant's safety engineer, not a property of the block itself.
How do I disable the reverse command in a MotSpdCL faceplate without recompiling the faceplate?
Connect a CFC constant with value W#16#003F (decimal 63) to the OS_Perm input of MotSpdCL. This clears bit 6 and the operator's reverse button becomes greyed out at runtime without any graphic change.
What is the difference between MotSpdCL and MS_DIR from the SIRIUS library?
MotSpdCL is a bidirectional variable-speed motor block from the main APL with setpoint and readback I/O. MS_DIR from the PCS 7 block library for SIRIUS is single-direction by design and has no speed setpoint — it is intended for direct-on-line motor starters, not VFDs.
How should the Rbk input be wired if there is no real speed feedback?
Implement a small tracking logic: when FbkRun = 1 set Rbk = SP_Out, otherwise set Rbk = 0. This prevents SP_Rbk deviation alarms and stabilizes the loop integrator while the motor is OFF.
Why does the block icon show a reverse indicator even when reverse is disabled?
The block direction state is updated from the FbkFwd and FbkRev feedbacks, not from the operator command. Hard-wire FbkFwd to a constant 1 on a unidirectional drive so the block permanently treats the running state as forward and the reverse indicator stays cleared.
Will my custom faceplate edits survive a PCS 7 upgrade?
No. Edited @PG_ files are overwritten when the APL or PCS 7 master data is reinstalled. Keep all custom @PG_ files in version control and re-apply them after every upgrade. If upgrade safety is required, prefer the OS_Perm approach (Option A) over faceplate edits (Option C).
Can I use a single PTT for both bidirectional and unidirectional motors?
Yes, if the PTT carries the OS_Perm constant. Instances that require reverse operation are wired with OS_Perm = W#16#007F; instances that must not accept reverse are wired with W#16#003F. The faceplate, block, and I/O list remain identical.