ABB Implementation

Modbus RTU for ABB

Serial communication protocol using binary encoding over RS-232/RS-485. Most widely used industrial protocol worldwide.

Type: Serial CommunicationSpeed: Up to 115.2 kbpsReleased: 1979Organization: Modbus Organization
115.2 kbps max
Bandwidth
247
Max Nodes
1200m (RS-485)
Max Distance
Yes
Real-Time

Protocol Overview

ABB AC500 PLCs use CM577-ETH or CM572-RS communication modules. Automation Builder (CODESYS-based) provides SysLibModbus library with MODBUSMASTER_RTU and MODBUSSLAVE_RTU function blocks.

When to Use Modbus RTU

Choose Modbus RTU for simple applications, legacy integrations, cost-sensitive projects, or when connecting basic I/O devices over short to medium distances.

ABB Hardware Requirements

Compatible Communication Modules

CM577-ETH (Ethernet + 2x serial)
CM572-RS (2x RS-232/485 isolated)
TB521-ETH (AC500-eCo built-in)
AI562 (S500 I/O with Modbus)
TB511-ETH (AC500-eCo V3)

Wiring Details

CM577-ETH COM1 RS-485: Terminal 1 (RxD/TxD+), 2 (RxD/TxD-), 5 (GND). Bridge JP1 for 2-wire RS-485.

Termination

Install jumper JP2 on CM577-ETH to enable 120Ω termination. Remove to disable. TB521-ETH has software-controlled termination.

ABB Software & Programming

Function Blocks & Instructions

MODBUSMASTER_RTU (SysLibModbus)
MODBUSSLAVE_RTU (SysLibModbus)
ClientRequest (IoDrvModbus)
ModbusRequest
MBus_ReadRegs wrapper

ABB Code Example

fbModbusMaster(
  config := modbusConfig,
  request := modbusRequest,
  xExecute := xExecute,
  pData := ADR(readBuffer),
  => xDone => xDone,
  => xError => xError,
  => eState => eState
);

ABB-Specific Implementation Notes

CODESYS-based platform with portable code. eState output provides detailed state machine status. Supports MODBUSFUNCTION enum for function code selection. Arrays are 0-indexed (Modbus 40001 = array[0]).

Technical Specifications

Physical Layer

  • Physical Layer: RS-232, RS-422, RS-485
  • Cable Type: RS-485 twisted pair, RS-232
  • Topology: Bus, Star, Tree
  • Power Over Cable: No

Data Layer

  • Data Link: Master/Slave
  • Encoding: Binary (RTU mode)
  • Error Detection: CRC-16
  • Frame Size: 256 bytes max

Performance

  • Scan Time: 10-100ms typical
  • Deterministic: Yes
  • Real-Time: Yes

Certification

  • Certification Required: No
  • License Cost: Free (open standard)
  • Version: Current

Advantages & Disadvantages

Advantages

  • Simple and easy to implement
  • Very low cost
  • Excellent industry support
  • Reliable in harsh environments
  • Minimal hardware requirements
  • Open standard
  • Wide device compatibility

Disadvantages

  • Limited speed (115.2 kbps max)
  • No built-in security
  • Master/slave only (no peer-to-peer)
  • Limited diagnostic capabilities
  • No standardized device profiles
  • Requires proper termination

Common Use Cases & Applications

Simple sensor and actuator networks
Building automation
Energy management systems
Water/wastewater treatment
Legacy equipment integration
Small to medium manufacturing lines

Industry Adoption

Adoption LevelVery High
Market Share30-40% of industrial protocols
Geographic PresenceWorldwide
Primary Industries
ManufacturingBuilding AutomationEnergyWater Treatment

Supported Message Types

Read Coils
Read Discrete Inputs
Read Holding Registers
Write Single Coil
Write Single Register
Write Multiple Registers