The PLC and robot simulations run separately, so changing an S7-1500 output does not automatically change the virtual robot state. A complete pre-commissioning test is possible when both simulators share a compatible communication path or a third-party cell simulator bridges the PLC model to configurable robot I/O. Treat a direct PLCSIM Advanced-to-RoboGuide link as an interface-validation task: the installed products must expose a mutually supported connection.
Symptom interpretation
The term virtual commissioning here means executing the PLC program against a simulated robot and cell model before operating the physical station. It tests the control interface, sequences, interlocks, recovery logic, and selected mechanical interactions.
Three symptoms identify different integration problems:
| Observed symptom | Likely boundary | Diagnostic action |
|---|---|---|
| Both simulations run, but no signals move between them | No communication channel or incompatible interfaces | List the protocols and connection modes exposed by each installed simulator. |
| Values arrive, but commands or acknowledgements are wrong | I/O mapping, data type, polarity, or ownership mismatch | Compare every communicated item against a signal contract. |
| The handshake works, but motion or collision behavior is unrealistic | Robot or cell-model fidelity | Verify controller behavior, frames, tooling, geometry, and motion assumptions separately from PLC communications. |
If RoboGuide-specific controller behavior is mandatory, keep RoboGuide in the architecture and find a compatible interface or bridge. If the goal is PLC sequence validation rather than exact Fanuc controller emulation, a cell simulator with its own configurable robot controller can provide the required I/O behavior.
Communication mechanism
PLC and robot simulators are independent runtime systems. Integration requires one runtime to publish commands, another to publish status, and a communication layer to transfer those values. Product names alone do not create this path.
The interface contract should define each item once: direction, data type, active polarity, owner, startup value, and the transition that clears it. Typical functional roles include program selection, start request, stop request, permission to enter an area, robot busy, program active, complete, faulted, and at-home status. These are role descriptions, not prescribed Fanuc or Siemens identifiers.
Cyclic updates also create timing behavior. The PLC scan, communications update, robot-controller cycle, and cell-model update run independently. Use maintained requests and acknowledged state transitions for significant commands; a one-cycle pulse can disappear between update domains. Assign one writer to every command or status item so the bridge and simulators do not overwrite each other.
A simulator connection does not validate the physical safety function. Emergency stops, protective devices, safety-rated logic, safe robot functions, wiring, stopping performance, and risk-reduction measures still require their specified hardware validation.
Architecture selection
| Architecture | Use it when | Known capability or decision gate |
|---|---|---|
| Siemens PLC simulation connected to Fanuc RoboGuide | Testing must retain RoboGuide and its representation of the Fanuc controller | Proceed only after identifying a mutually supported interface in the installed configurations. A direct connection method is not defined here. |
| PLCSIM Advanced connected to ProtoTwin | PLC sequence and cell interaction can be tested with an integrated simulated robot controller | ProtoTwin can connect to PLCSIM Advanced using S7, OPC UA, or Modbus. Its robot controller exposes configurable I/O for triggering programs and returning status. |
| Physical S7-1500 connected to ProtoTwin | The actual PLC must control a virtual cell | The same stated connection options are S7, OPC UA, or Modbus. Isolate outputs that could affect real equipment. |
| Emulate3D | A commercial virtual-commissioning platform fits the project workflow | It is a capable candidate, with software cost as a project consideration. Confirm the required PLC and robot interfaces before selection. |
| Visual Components | A separate cell-simulation platform is acceptable | Treat it as a candidate until the required S7-1500 simulator and Fanuc integration paths are demonstrated. |
ProtoTwin can simulate a robot when the required CAD is available. That route substitutes its integrated robot controller for RoboGuide, so it validates the configured I/O contract and cell sequence rather than every RoboGuide- or Fanuc-specific behavior.
Integration procedure
- Define the acceptance boundary. List which results must come from the PLC program, the robot controller, and the mechanical model. Mark any test that specifically requires RoboGuide behavior.
-
Inventory the installed interfaces. In the Siemens and robot simulation configurations, record the exposed connection type, endpoint settings, supported data representations, and access restrictions. For the ProtoTwin route, choose among the stated
S7,OPC UA, andModbusoptions according to the PLC endpoint being used. - Create the signal contract. Put every command and status in a table with its PLC source or destination, robot-side mapping, type, polarity, owner, initial state, and reset condition. Separate ordinary control I/O from safety-related signals.
- Configure the PLC endpoint. Start the Siemens simulation, load the production-intent control logic, and expose only the data required by the selected communication method. When using a physical S7-1500, prevent the test from energizing unintended real outputs.
- Configure the robot side. In RoboGuide, use only an interface supported by both endpoints or by the selected bridge. In ProtoTwin, map its configurable robot-controller I/O to PLC commands and status, then associate command states with the required simulated robot programs.
- Build the cell model. Import or construct the robot, tool, fixtures, parts, sensors, and operating zones needed by the acceptance tests. Model only geometry and behavior that can change a control decision.
- Run the sequence deliberately. Begin from known inactive commands and known robot status. Apply one command at a time, observe both sides of the mapping, and then test automatic sequencing, blocked conditions, faults, resets, and restarts.
Verification readings
- Check 1: Communication state. Expect the PLC endpoint and simulator or bridge to remain connected while values are monitored. Repeated connection loss indicates an endpoint, access, or transport problem rather than a sequence defect.
- Check 2: Point-to-point mapping. Change each test signal at its owning endpoint. Expect exactly one intended destination item to change, with the documented type and polarity; unrelated items must remain unchanged.
- Check 3: Command persistence. Hold a command until its acknowledgement is observed. Expect the robot-side request to remain visible across asynchronous update cycles without duplicate program starts.
- Check 4: Sequence handshake. Issue one permitted start. Expect an ordered progression from request through active or busy status to completion, followed by the reset states defined in the signal contract.
- Check 5: Interlock rejection. Remove one required permission and issue the same command. Expect motion or program execution to remain blocked while the PLC reports the designed blocked state.
- Check 6: Recovery. Introduce a modeled fault, clear it, and execute the defined reset path. Expect commands, acknowledgements, and sequence state to return to their documented restart condition without forcing internal state.
Recurring integration pitfalls
The most common error is selecting software before proving interface compatibility. A platform may simulate the PLC or robot successfully while exposing no usable connection to the other runtime. Demonstrate one command and one returned status before building the full cell.
Another wrong practice is mapping addresses without a signal contract. Reversed ownership, active-low signals, different data types, and stale startup values can imitate PLC or robot logic faults. Monitor the transmitted value at the source, through the bridge, and at the destination to locate the failing boundary.
Do not use transient pulses for cross-simulator events unless the receiving runtime demonstrably captures them. Maintained request-and-acknowledge logic tolerates independent update cycles and produces diagnosable state.
Mechanical animation is not controller fidelity. An integrated robot model can prove that PLC interlocks and program requests operate, but it does not establish that a Fanuc program, controller option, frame, or recovery behavior will match RoboGuide. Keep those items in a separate RoboGuide acceptance list when they matter.
Finally, a successful virtual cell does not prove field wiring, device polarity, network installation, safety performance, or physical stopping behavior. Preserve commissioning tests for every boundary replaced by simulation.
FAQ
How do I connect an S7-1500 simulation to a virtual robot?
Select a common interface and map a bidirectional I/O contract. One documented route connects PLCSIM Advanced to ProtoTwin through S7, OPC UA, or Modbus; a RoboGuide route requires an interface shared by RoboGuide and the Siemens endpoint or a compatible bridge.
How do I decide between RoboGuide and an integrated robot simulator?
Use RoboGuide when the test depends on Fanuc-specific controller or program behavior. Use an integrated robot controller when the acceptance target is PLC sequencing, configurable robot I/O, interlocks, and cell-level interaction.
How do I prove the virtual PLC and robot handshake works?
Test every mapped item for direction, polarity, type, startup state, and ownership; then run permitted, blocked, faulted, reset, and restart cases. For the final verification step, remove one required permission and expect the robot program to remain blocked while the PLC displays the designed blocked state.