PamaglaweUser and project guide
Configuration · Communication

Communication & PLCs – configure connections step by step

Understand simulation, driver selection and device profiles. Configure Modbus TCP, Siemens S7, and OPC UA, then verify your first value.

Help ID REF-COMMUNICATION

1. Simulation or a PLC connection?

A symbol name, a PLC address and an active connection are different things. The PLC table describes signals. The selected driver determines how PamaGlawe reads and writes their values.

ModeWhat happens?
Simulation onlyNo external PLC connection is made. Displays and inputs use local simulation values.
Driver with a local test serverThe driver communicates with a test server on the same computer. 127.0.0.1 means this computer.
Driver with a PLCThe driver reads and writes the configured device. The IP address, profile and signal addresses must match that PLC.

2. Select a driver and prepare the project

The basic workflow is the same for Modbus TCP, Siemens S7 / Moka7 and OPC UA: select a driver, load matching signals, adjust connection settings and check a value. The screenshots illustrate this workflow using Modbus TCP. Addresses and device parameters depend on the selected driver. The screenshots show the German interface.

Application and project settings, with driver selection near the bottom. The screenshot still has “No communication driver – simulation only” selected.
  1. Save the project under its own name. Communication examples are provided in the project folder.
  2. In an edition with drivers enabled, open Settings → Communication drivers and make one selection: Modbus TCP direct, Siemens S7 / Moka7, OPC UA or simulation only.
  3. Open the PLC table. For an exercise, import a matching CSV from Kommunikation/Beispiele:
    01-Modbus-TCP, 02-Siemens-S7-Moka7 or 03-OPC-UA.
  4. Select a symbol belonging to the desired device. On the right, check Driver for PLC / device and apply any change. Its assignment must match the project selection.
  5. Open and configure the relevant device profile using Modbus, S7 or OPC-UA.
Select the driver matching your target device. Modbus TCP direct is shown as an example; configuration for Siemens S7 / Moka7 and OPC UA starts in the same place.

Practice with a local simulator: Use Simulators … to assign the test server matching your driver. See Configure the simulator for your driver. This step is unnecessary when connecting to an existing PLC.

The three example folders are alternatives for different drivers. Import only the appropriate variant for your first test. See the PLC table guide for CSV columns and validation.

Adjust signals: In the PLC table, Edit table opens the table editor. Double-click a cell to edit its symbol, address, data type or IP address / Endpoint. Use the horizontal scrollbar to reach additional columns. After importing a CSV, check the imported connection settings in particular. See how to use Edit table.

3. Distinguish device profiles from signals

Device profile: connectionTable entry: individual signal
IP address or endpoint and connection parametersSymbol name and actual address or NodeId
Driver-specific: port/unit ID, rack/slot or OPC UA securityData type, length and unit
Polling or publishing interval and timeoutRead/write access, description and simulation value

A device profile applies to the selected device and its symbols. Give different devices distinct names. Changing a profile therefore affects more than the currently selected table row.

Saving: Apply confirms dialog changes in the open project. Then use Save project (Ctrl+S). Saving a separate CSV does not replace saving the project.

4. Configure Modbus TCP direct

  1. Select a device symbol in the PLC table and open Modbus.
  2. Enter the server's IP address / hostname, TCP port and Unit ID. Common defaults of 502 and 1 do not guarantee the correct configuration for your device.
  3. Check the default polling interval and timeout in milliseconds. Allowed ranges are 100–60000 ms for polling and 250–60000 ms for timeout.
  4. For 32-bit values, set 32-bit byte order and word order to match the device register description.
  5. Choose Test connection and read the result. This checks for a Modbus TCP response; subsequently verify the address and type against a known value.
  6. Apply and save the project.

Register address, register type, function code, data type and access belong to each symbol. PamaGlawe supports FC01–FC04 for reading and FC05, FC06, FC15 and FC16 for writing.

Start with a known 16-bit register from the matching template, such as a UINT16 setpoint. Document addresses such as 40001 and protocol offsets are different notations. Check the register description instead of automatically adding or subtracting 1.

If the connection is online but a 32-bit value is implausible, first check its data type and byte/word order. A successful connection test does not establish that a process value is correct.

5. Configure Siemens S7 / Moka7

  1. Select an S7 symbol and open S7 on the right.
  2. Set the IP address and CPU family. Match rack, slot, connection type and polling interval to the controller or local S7 test server.
  3. Check absolute addresses in the PLC table: for example M0.0 for a memory bit, MB2 for a byte, DB1.DBW0 for a word and DB1.DBD4 for a 32-bit area.
  4. Match the data type to the PLC variable. A DBD address alone does not determine whether its contents are an integer or REAL.
  5. Apply, save the project and compare a known value in play mode.

This driver uses classic absolute S7 access. An S7-1200/1500 must permit the required access; optimized data blocks and protected or encrypted access methods cannot simply be read as absolute DB addresses. Access configuration must match the intended installation.

Do not copy rack and slot settings from an unrelated example. The correct IP address is insufficient if connection parameters or the DB structure differ.

6. Configure OPC UA

  1. Select a symbol belonging to the OPC UA device and open OPC-UA.
  2. Enter the complete endpoint URL, including any path. An example local test-server URL is opc.tcp://127.0.0.1:4840/jvizion. Use the URL actually offered by the server.
  3. Select the server's Security Policy and Message Security Mode. The dialog offers None, Basic256Sha256 and Aes128Sha256RsaOaep, with modes None, Sign and SignAndEncrypt. The server must support the combination.
  4. Enter a username and password if required. An empty username means anonymous access; this works only if the server permits it.
  5. Check the publishing interval and timeout, apply and save the project.
  6. Enter the actual NodeId in the address column, for example ns=2;s=Machine1.Tank1.Level. The namespace and identifier must come from the target server; the variable's display name is insufficient.

The connection uses the local OPC UA bridge, which must be available in the application package.

The profile stores credentials in the project. Handle project files accordingly and omit passwords from support screenshots. Automatic acceptance of unknown server certificates is marked as a development option; configure certificates and trust lists deliberately for installations.

The server also enforces read and write permissions. Marking a symbol writable cannot override a server-side restriction.

7. Configure the simulator for your driver

For exercises with a local test server, the controls work the same way for all three drivers. Under Settings → Simulators …, assign a separate simulator to each driver. The assignment is saved with the project.

  1. In Driver, select the driver your project will use: Modbus TCP direct, Siemens S7 / Moka7 or OPC UA.
  2. Use Select to choose the executable of the matching installed simulator.
  3. Enter the startup arguments required by that simulator.
  4. If needed, enable Start automatically when opening the project and before Play.
  5. Set the minimum startup time and readiness TCP port to suit the simulator. Port 0 disables the port check.
  6. Choose Apply, then Save project (Ctrl+S).

Example screenshots: Modbus TCP

The following screenshot shows the shared settings dialog with a Modbus configuration. For S7 or OPC UA, select that driver and its simulator instead. The executable, startup arguments and port must match the simulator; the values shown here are not universal defaults.

Example configuration for the local Modbus test server: automatic startup enabled, --autostart argument, minimum startup time 1500 ms and readiness TCP port 502. The executable must point to the simulator actually installed.

After startup, check readiness in the selected test server. Its interface also depends on the driver. The Modbus example below shows the loaded signals and connection settings.

Modbus test server with the example table loaded: ONLINE at 127.0.0.1, port 502 and unit ID 1. “Clients: 0” means no client was connected when the screenshot was taken. ONLINE confirms that the server is running, not that PamaGlawe is connected.

Check the IP address: If the test server runs on the same computer as PamaGlawe, 127.0.0.1 refers to that computer. For a PLC or server on another computer, use its actual address. Under PLC table → Edit table, check the imported signals’ IP address or endpoint against the device profile. For OPC UA, also check the port and path in the complete endpoint URL.

A running test server does not establish a successful driver connection. Compare a known value as described in Read and write the first value. For exercises without a communication driver, local simulation values and the virtual PLC are sufficient.

8. Read and write the first value

  1. Insert a numeric display and use the symbol picker to assign a known signal.
  2. Press F5 for play mode. Compare the display with the test server or PLC.
  3. Change the source value and check that the display follows. This distinguishes a live reading from an unchanged initial value.
  4. For a write test, use a designated test variable and assign it to a value input. Access settings and role permissions must permit writing.
  5. Enter and confirm a value. Check the result at the target and after readback. A briefly displayed input alone does not prove a successful write.

A status object helps monitor the connection. Last-known values may remain visible after communication is lost; an unchanged number does not prove a current connection. Observe the object's validity indication and whether it permits input.

9. Troubleshoot the connection

ObservationNext check
Driver selection is missingCheck the demo edition and available application features. Importing a table does not activate a driver.
Every value of one device is missingCheck the IP address first: is 127.0.0.1 from the template still entered? Use Edit table to compare the IP/endpoint with the target device and device profile. Then check the project driver, device assignment and server readiness.
Only one signal is missingCheck that signal’s address/NodeId, type, length and read permission.
Modbus is online but values are implausibleCompare register addressing and byte/word order against a known value.
S7 connection or DB access failsCheck CPU family, rack/slot, absolute address and access permitted by the PLC.
OPC UA reports a session or certificate problemCheck endpoint, security combination, login and certificate trust.
Reading works but writing failsCheck symbol write access, project role and target permissions, then compare readback.
Simulator starts but values remain offlineCompare server port and profile. Check process startup separately from driver communication.

For support, include help ID REF-COMMUNICATION, application version, selected driver, exact error message and the affected table entry. Omit passwords.

Image view
Application and project settings