How to Resolve 'Could Not Insert into Connection' Driver Wizard Errors in PCS 7 Upgrades

How to Resolve 'Could Not Insert into Connection' Driver Wizard Errors in PCS 7 Upgrades

In SIMATIC PCS 7 project migrations (such as upgrading from V6.1 or V7.x to V8.1/V8.2), the CFC compilation error 'Could not insert into connection between block.../QACC_MODE and block.../ACC_MODE' occurs because the Driver Wizard attempts to interconnect newly updated Basis Library driver blocks with legacy field device driver blocks whose interfaces lack the required accessibility pins. To resolve this error, delete all automatically generated '@Charts' in the CFC charts folder, perform a 'Clean Up' in the Block Types dialog to eliminate orphaned block types, update all device and Basis Library block types to their latest versions across the multiproject, and recompile CFC with 'Generate module drivers' enabled.

Table of Contents

Mechanism of the CFC Driver Wizard and @Charts

The SIMATIC PCS 7 Driver Wizard ('Generate module drivers') is an automated engineering engine executed during CFC compilation. When an engineer configures hardware I/O modules, PROFIBUS-DP field devices, or PROFINET nodes in HW Config and interconnects technological blocks (e.g., Pcs7AnIn, MotL, or vendor-specific blocks like Endress+Hauser PROMASS_83_DP) to hardware addresses, the Driver Wizard generates the diagnostic infrastructure automatically.

Function of @Charts

During compilation with 'Generate module drivers' selected:
1. The wizard inspects the hardware topology defined in HW Config.
2. It creates reserved, system-managed CFC charts named @(1), @(2), @(3), etc.
3. It instantiates diagnostic blocks from the PCS 7 Basis Library (e.g., MOD_, OB_BEGIN, DPWR_DAT, RACK, SUBNET).
4. It automatically generates internal signal interconnections between hardware diagnostic outputs and the technological channel driver blocks, including maintenance and accessibility mode handshakes (ACC_MODE, QACC_MODE).

Root Cause Analysis for QACC_MODE Connection Failures

When migrating projects across major PCS 7 releases (e.g., from PCS 7 V6.1 to V8.1), compilation frequently halts with errors such as:
'Could not insert into connection between block PROMASS_83_DP_2/QACC_MODE and block PROMASS_83_DP_1/ACC_MODE'

Upon manual inspection of the chart, the engineer finds ACC_MODE on one block, but QACC_MODE is completely absent from the referenced block.

The Underlying Migration Inconsistency

  • Interface Evolution Between Library Versions: In PCS 7 V6.1 and legacy Basis Libraries, device accessibility handshaking was either handled differently or used fewer pins. Modern PCS 7 versions (V8.0, V8.1, V8.2, V9.x) introduced standardized device lifecycle pins (ACC_MODE and QACC_MODE) across all modular DP/PA devices to support PCS 7 Maintenance Station asset monitoring.
  • Persistent Legacy @Charts: When an old project is imported, previously generated @Charts from V6.1 remain physically stored in the chart container. The compiler attempts to preserve existing wiring rather than regenerating from scratch, attempting to bridge pins between new Basis Library rules and old block structures.
  • Outdated Device Driver Blocks in Chart Instances: While standard Siemens blocks may have been updated in the master library, third-party field device blocks (such as Endress+Hauser Promass flowmeters) often remain un-updated in the project's offline block folder, leading to pin mismatches during wizard execution.

Step-by-Step Remediation Procedure

Follow this procedure to eliminate driver wizard compilation errors cleanly:

Step 1: Delete All Automatically Generated @Charts

  1. In SIMATIC Manager, open the AS component and navigate to the Charts folder in Component View or Plant View.
  2. Identify all charts whose names begin with @ (e.g., @(1), @(2), @Charts, @Driver_...).
  3. Select and delete all @ charts.
    (Note: System @Charts contain zero user logic; they are completely regenerated by the Driver Wizard during compilation).

Step 2: Clean Up the Block Types Directory

  1. Open any CFC chart in the project.
  2. Navigate to menu Options -> Block Types....
  3. In the 'Block types in the project' pane, click the Clean Up button.
  4. The system scans the project, identifies block types that are no longer instantiated in any user chart, and deletes them from the offline block container (bausteine).

Step 3: Update Block Types from Current Master Libraries

  1. In the same Block Types dialog (Options -> Block Types...):
    * Under 'Block types in the library', select the current PCS 7 Basis Library V8.1 (or matching version).
    * Select all Basis Library blocks (MOD_, OB_, OR_M_, etc.) and click New Version.
  2. If third-party device drivers are used (e.g., PROMASS_83_DP):
    * Open the vendor's updated PCS 7 device library (e.g., Endress+Hauser DeviceCare / PCS 7 Library).
    * Select the latest device driver block types and click New Version to update all chart instances across the multiproject.
  3. Confirm the update prompt and verify that all chart instances reflect the updated block interface.

Step 4: Recompile CFC with Module Driver Generation

  1. In CFC Editor, select Chart -> Compile -> Chart as Program.
  2. Select the compilation scope:
    * Entire Program
    * Check Generate module drivers.
  3. Click OK.
  4. The Driver Wizard creates fresh @Charts, matches the modern ACC_MODE / QACC_MODE pins correctly, and finishes with zero errors.

Driver Wizard Block Type and Library Version Matrix

The following table outlines the diagnostic block components, library origins, and critical interface signals managed by the PCS 7 Driver Wizard:

Block TypeLibrary SourceFunction in SystemKey Interface PinsUpgrade Action RequiredMOD_D16 / MOD_D32PCS 7 Basis LibraryDigital Module DiagnosticsQUALITY, QMODF, ACC_MODEUpdate via Block Types -> New VersionMOD_HA8 / MOD_PAPCS 7 Basis LibraryHART / PA Field DiagnosticsDXCHG, MS, QACC_MODEUpdate via Block Types -> New VersionOB_BEGIN / OB_ENDPCS 7 Basis LibraryCPU Cycle and OB ManagementSTART_UP, CPU_DIAGUpdate via Block Types -> New VersionVendor Field DriversThird-Party Device LibraryDP/PA Device InterfacingACC_MODE, QACC_MODE, V_FLOWImport latest vendor library and update@(x) System ChartsAuto-generated by WizardHosts diagnostic block networkInternal wiringDelete prior to recompilation

Always verify that vendor GSD files in HW Config match the installed block library versions.

Verification

To verify that the Driver Wizard has executed successfully:
1. Ensure the CFC compilation log reports: 0 Errors, 0 Warnings (or benign information warnings only).
2. Open the newly generated @(1) chart in CFC Editor and inspect the connection between the vendor device block and the Basis Library module driver.
3. Verify that the connection between QACC_MODE and ACC_MODE is established with valid signal lines.
4. Download the compiled program (Changes only or Entire program in CPU STOP if offline blocks changed) to the automation station.
5. In CFC Editor, activate Test Mode and verify that the module driver blocks report valid diagnostic status (QUALITY := 16#80).

Limitations and Operational Precautions

  • Updating block types via 'New Version' in CFC modifies the offline block interfaces; this typically requires a full AS program download in CPU STOP mode if structural pin offsets change.
  • Never place user application logic or manual interconnections inside @Charts, as any future CFC compilation with module driver generation will overwrite or delete them.
  • If migrating from PCS 7 V6.x, ensure that the S7-400 CPU firmware supports the modern Basis Library diagnostics (firmware V5.3 or higher recommended).
  • Always back up the multiproject (File -> Archive) before executing 'Clean Up' or 'New Version' updates.

Engineer FAQ

Why did deleting @Charts resolve the connection error?

Deleting @Charts forces the Driver Wizard to discard obsolete internal connection maps from the previous PCS 7 version and build a completely fresh diagnostic chart network using current block interfaces.

What does the ACC_MODE pin do on PCS 7 driver blocks?

ACC_MODE (Access Mode) and QACC_MODE coordinate device accessibility and maintenance status between the physical fieldbus driver and the PCS 7 Maintenance Station asset faceplates.

Can I compile CFC without generating module drivers to avoid the error?

Compiling without 'Generate module drivers' will bypass the error, but the technological blocks will lose all hardware I/O and diagnostic connections, leaving the process variables dead (Bad Quality).

Technical References

Related Articles

Related Tags

  • Generate_Module_Drivers
  • CFC_Compilation
  • Basis_Library
  • PCS7_Upgrade
  • Driver_Wizard
6 respuestas