OPC UA Bridge
Connect your simulation to real PLCs via the OPC UA bridge
OPC UA Bridge
Sim Assist connects to real PLCs and OPC UA servers through a lightweight bridge application that runs on your local machine or network.
How It Works
Browsers cannot connect to OPC UA servers directly (OPC UA uses binary TCP). The bridge translates between WebSocket (browser) and OPC UA (PLC):
Browser ←→ WebSocket ←→ OPC UA Bridge ←→ OPC UA Server ←→ PLCThe bridge runs as a standalone application on your PC or a machine on the same network as your PLC.
Download
Download the bridge for your platform:
- Windows (x64): OpcUaBridge.exe
No installation required — just download and run. No .NET runtime needed.
Getting Started
1. Start the bridge
Double-click OpcUaBridge.exe or run it from a terminal. You'll see an interactive prompt:
OPC UA Bridge v0.1.0
Bridge listening on http://localhost:4841
Commands:
connect [endpoint] Connect to OPC UA server
e.g. connect opc.tcp://192.168.1.10:4840
disconnect Disconnect from server
status Show connection status
browse [nodeId] Browse address space
read <nodeId> [...] Read node value(s)
write <nodeId> <val> Write value to node
discover [endpoint] Discover server endpoints
exit Shut down bridge
[disconnected]>2. Connect to your OPC UA server
Type connect followed by your OPC UA server's endpoint URL:
[disconnected]> connect opc.tcp://192.168.1.10:4840
Connecting to opc.tcp://192.168.1.10:4840...
Connected to opc.tcp://192.168.1.10:4840
[opc.tcp://192.168.1.10:4840]>3. Browse and test
You can browse the address space, read values, and write values directly from the CLI:
[opc.tcp://...]> browse
DeviceSet/ [ns=2;i=5001]
Server/ [i=2253]
[opc.tcp://...]> read ns=4;s=|var|PLC.Application.GVL.Temperature
ns=4;s=|var|PLC.Application.GVL.Temperature = 42.5 (Double, Good)
[opc.tcp://...]> write ns=4;s=|var|PLC.Application.GVL.SetPoint 100.0
OK (Good)4. Open Sim Assist
With the bridge running and connected, open your project in Sim Assist. The scene editor will automatically detect the bridge on http://localhost:4841 and connect via WebSocket for real-time data exchange.
Tag Mapping
Once the bridge is connected, you can map OPC UA tags to your simulation parameters:
- Open a scene in the editor.
- Select a component and open the Parameter Editor.
- Click the tag icon next to any parameter.
- The Variable Browser shows the OPC UA address space — browse and select the tag you want to map.
- The parameter is now linked to the OPC UA tag. Values sync bidirectionally during simulation.
Security
The bridge supports three OPC UA security modes:
| Mode | Description |
|---|---|
| None | No encryption — for development and local testing |
| Sign | Messages are signed for integrity |
| SignAndEncrypt | Full encryption — for production |
The bridge auto-generates a client certificate on first run. For secured connections, you may need to trust this certificate on your PLC's OPC UA server configuration.
Troubleshooting
Bridge won't connect
- Verify the endpoint URL and port (default OPC UA port is 4840).
- Check that the OPC UA server is running on the target device.
- Ensure no firewall blocks port 4840 between your PC and the PLC.
Certificate rejected
- Open your PLC's OPC UA server config and trust the Sim Assist certificate.
- Certificates are stored in
%LOCALAPPDATA%/OpcUaBridge/pki/.
Values not updating in Sim Assist
- Make sure the bridge is connected (check with
statuscommand). - Verify the tag is correctly mapped in the Parameter Editor.
- Check that the simulation is running (tags only sync during simulation).
Low performance warning in scene editor
- Your browser may be using integrated graphics instead of a dedicated GPU.
- Go to Windows Settings → Display → Graphics and set your browser to High Performance.