Resolving SIMIT and NX Mechatronics Concept Designer (MCD) Signal Exchange Coupling Errors
In virtual commissioning systems coupling Siemens NX Mechatronics Concept Designer (MCD 1926 or higher) with SIMIT V10.2 via shared memory or OPC UA, signal exchange errors occurring during signal transfer are caused by opening the NX part file in lightweight mode, solver time-step mismatches, or signal data type collisions. When an NX CAD assembly (.prt) is loaded in lightweight mode, kinematic and physics properties are not fully mapped into memory, causing the SIMIT MCD plugin to abort the handshake. To resolve, open the NX model using the 'Fully Loaded' option in Assembly Load Options, match SIMIT signal data types (BOOL, REAL, INT) exactly to MCD physics signals, and synchronize SIMIT's simulation macro cycle (e.g., 10 ms) with the NX MCD physics solver step size.
Table of Contents
- Executive Summary
- Architecture and Fundamental Mechanics
- Step-by-Step Implementation Procedure
- Verification
- Limitations and Operational Precautions
- Engineer FAQ
- Technical References
- Related Articles
- Related Tags
Executive Summary
Virtual commissioning combining multi-physics 3D simulation with automation control logic enables high-fidelity validation of material handling, packaging, and robotics systems. When coupling Siemens NX Mechatronics Concept Designer (MCD) with SIMIT V10.2 and S7-PLCSIM Advanced, engineers frequently encounter communication errors when initiating signal exchange: SIMIT displays an unhandled communication exception or fails to read position and velocity feedback from MCD. This technical article analyzes the shared memory coupling mechanics between NX MCD and SIMIT, explains why CAD lightweight representation breaks kinematic signal mapping, and provides the step-by-step remediation procedure.
Architecture and Fundamental Mechanics
The co-simulation architecture connecting NX Mechatronics Concept Designer and SIMIT relies on high-speed inter-process communication (IPC):
1. The SIMIT-MCD Shared Memory Coupling Interface:
- SIMIT communicates with NX MCD via a dedicated C++ shared memory plugin (SimitMcdCoupling.dll) loaded inside the NX process.
- Signals defined in NX MCD (rigid bodies, collision bodies, position controls, speed sensors) are exposed as input and output tags in SIMIT's coupling table.
2. CAD Lightweight Loading vs Kinematic Representation:
- In Siemens NX, large mechanical assemblies default to 'Lightweight' representation to conserve graphics memory and accelerate CAD rendering.
- In lightweight mode, solid bodies and facet models are rendered, but detailed mathematical surface geometry, kinematic constraints, and physics collision matrices are not loaded into active RAM.
- When SIMIT initiates signal polling, the MCD plugin attempts to query the physical joint positions of lightweight components. The query fails, triggering a communication fault dialog in SIMIT.
3. Solver Time Synchronization and Macro-Step Alignment:
- NX MCD utilizes a discrete physics engine (e.g., Bullet or PhysX) that advances physical movement in fixed discrete steps (e.g., 10 ms).
- SIMIT advances its simulation kernel in macro steps (e.g., 10 ms or 100 ms).
- If the physics time step does not divide evenly into the SIMIT cycle time, buffer overruns or data race conditions corrupt signal exchange frames.
Step-by-Step Implementation Procedure
-
Configure NX Assembly Load Options to 'Fully Load':
a. Launch Siemens NX.
b. Prior to opening the assembly, selectFile -> Open -> Assembly Load Options.
c. Under 'Part Versions', select Fully Load (do not select 'Use Lightweight Representations').
d. Under 'Scope', select All Components.
e. Click 'Save as Default' and open the mechatronic assembly.prtfile. -
Verify Kinematic and Physics Properties in NX MCD:
a. Open the Mechatronics Concept Designer navigator in NX.
b. Inspect the physics tree: verify that all rigid bodies, collision bodies, and sliding/hinge joints report healthy status.
c. In the MCD toolbar, click 'Play' locally inside NX to verify kinematic motion executes cleanly without collision errors before connecting to SIMIT. -
Match Signal Data Types in SIMIT Coupling Editor:
a. Open SIMIT V10.2 and navigate to 'Couplings -> MCD Coupling'.
b. Click 'Import Signals from MCD' to synchronize the signal table.
c. Inspect data types: ensure digital signals (e.g., limit switches, optical sensors) are strictly typed as BOOL.
d. Ensure analog positions, velocities, and torque parameters are strictly typed as REAL (Float32) or LREAL (Float64). -
Synchronize Solver Step Sizes and Cycle Times:
a. In NX MCD, openPhysics Preferences.
b. Set the 'Time Step' to 10 ms (0.010 s).
c. In SIMIT, openSimulation Settings.
d. Set the 'Base Cycle' to 10 ms to ensure 1:1 synchronization between the SIMIT kernel and the NX physics engine. -
Initiate Co-Simulation Sequence:
a. Put NX MCD into 'Listening' or ready mode.
b. In SIMIT, click the yellow 'Play' button to start simulation.
c. Verify that position signals from MCD update dynamically in SIMIT charts without communication timeout alerts.
Verification
- In SIMIT V10.2, open the MCD coupling monitor: verify the status indicator displays 'Connected' with 0 signal read/write errors.
- In NX MCD 3D viewport, observe the physical mechanism: confirm that motor commands dispatched from SIMIT (or PLCSIM Advanced) induce smooth mechanical motion.
- Verify that virtual limit switches close in SIMIT when the 3D mechanism reaches its physical travel limits.
Limitations and Operational Precautions
Complex 3D geometries with thousands of collision facets can introduce CPU bottlenecks. Use lightweight collision primitives (boxes, cylinders, convex hulls) rather than precise facet mesh collisions to maintain real-time performance.
Engineer FAQ
Why does opening NX parts in lightweight mode cause SIMIT errors?
Lightweight mode suppresses kinematic and physics data structures in RAM, causing SIMIT's coupling plugin to fail when reading joint properties.
What is the recommended physics time step in NX MCD for SIMIT?
A time step of 10 ms (0.010 s) aligned with SIMIT's base simulation cycle is recommended for stable co-simulation.
Can SIMIT co-simulate with NX MCD and S7-PLCSIM Advanced simultaneously?
Yes. SIMIT acts as the central simulation hub, exchanging I/O signals with PLCSIM Advanced while exchanging kinematic positions with NX MCD.
What license is required in SIMIT to connect to NX MCD?
SIMIT Ultimate or SIMIT Professional with the Mechatronics Concept Designer coupling license.
How do I update signals in SIMIT when the NX CAD model changes?
Reopen the MCD Coupling in SIMIT and execute 'Import Signals' to synchronize modified or newly added tags.
Technical References
- Siemens NX Mechatronics Concept Designer User Guide
- SIMATIC SIMIT Simulation Platform V10.2 Operating Manual
- Siemens Industry Online Support Entry 109779320 (SIMIT Virtual Commissioning Guidelines)
Related Articles
- SIMIT V10.2 Features, Simulation Architecture, and Demo Mode Constraints
- Migrating Virtual Commissioning Models and Virtual Controller Workflows to SIMIT V10.2
- Simulating SINAMICS Control Unit Telegram 390 in SIMIT
Related Tags
- NX MCD
- SIMIT V10.2
- Virtual Commissioning
- Mechatronics
- Shared Memory
- PLCSIM Advanced