0
0
Scada-systemsHow-ToBeginner · 4 min read

How to Connect RTU to SCADA: Step-by-Step Guide

To connect an RTU to a SCADA system, configure the RTU communication settings to match the SCADA master station, typically using protocols like Modbus or DNP3. Establish a network link (serial or Ethernet), set the correct IP address or COM port, and configure the SCADA software to poll or receive data from the RTU.
📐

Syntax

The basic syntax to configure an RTU connection involves setting communication parameters such as protocol, IP address or serial port, baud rate, and slave ID. The SCADA master must be configured to match these settings for successful communication.

  • Protocol: Communication protocol like Modbus TCP, Modbus RTU, or DNP3.
  • IP Address / COM Port: Network address for Ethernet or serial port name for serial connections.
  • Baud Rate: Speed of serial communication (e.g., 9600 bps).
  • Slave ID: Unique identifier of the RTU device on the network.
ini
[RTU Configuration]
protocol = "Modbus TCP"
ip_address = "192.168.1.100"
port = 502
slave_id = 1

[SCADA Master Configuration]
protocol = "Modbus TCP"
rtu_ip = "192.168.1.100"
port = 502
slave_id = 1
💻

Example

This example shows how to configure a Modbus TCP RTU and connect it to a SCADA master using Python with the pymodbus library to simulate communication.

python
from pymodbus.client.sync import ModbusTcpClient

# RTU (slave) IP and port
rtu_ip = '192.168.1.100'
rtu_port = 502

# Create Modbus TCP client to connect to RTU
client = ModbusTcpClient(rtu_ip, port=rtu_port)

# Connect to RTU
connection = client.connect()
print(f"Connection successful: {connection}")

# Read holding registers starting at address 0, count 2
result = client.read_holding_registers(0, 2, unit=1)
if not result.isError():
    print(f"Register values: {result.registers}")
else:
    print("Failed to read registers")

# Close connection
client.close()
Output
Connection successful: True Register values: [value1, value2]
⚠️

Common Pitfalls

  • Mismatched Protocols: Using different protocols on RTU and SCADA causes no communication.
  • Incorrect IP or COM Port: Wrong network address or serial port prevents connection.
  • Baud Rate Mismatch: Serial communication fails if baud rates differ.
  • Firewall Blocking: Network firewalls may block RTU ports.
  • Wrong Slave ID: SCADA must use the correct RTU slave ID.
ini
Wrong way:
protocol = "Modbus RTU"
ip_address = "192.168.1.100"  # IP used with serial protocol

Right way:
protocol = "Modbus TCP"
ip_address = "192.168.1.100"  # IP used with TCP protocol
📊

Quick Reference

ParameterDescriptionTypical Values
ProtocolCommunication protocol usedModbus TCP, Modbus RTU, DNP3
IP Address / COM PortNetwork or serial port address192.168.1.100 / COM3
Port / Baud RateTCP port or serial speed502 / 9600 bps
Slave IDUnique RTU identifier1, 2, 3...
Polling IntervalHow often SCADA polls RTU1-10 seconds

Key Takeaways

Match RTU and SCADA communication protocols exactly for connection.
Configure network or serial settings correctly including IP, port, and baud rate.
Use the correct slave ID to identify the RTU device on the network.
Check firewall and network settings to allow communication ports.
Test connection with simple read commands before full deployment.