Delta Servo E3-L Modbus Communication with Siemens Smart PLC

Integrating Delta ASDA-E3-L servo drives with Siemens Smart PLC via Modbus RTU is a common requirement in modern industrial automation. This guide provides a clear, practical approach to configuring the communication, setting parameters, and reading/writing data for motion control applications.

Understanding the Communication Setup

The Delta ASDA-E3-L series supports Modbus RTU over RS-485, making it compatible with a wide range of PLCs, including the Siemens Smart series. The key is to match the communication parameters on both devices and map the servo registers correctly. Typically, the servo acts as a Modbus slave, and the PLC is the master. The default communication settings for the servo are often 9600 bps, 8 data bits, 1 stop bit, no parity, but these can be adjusted via parameters.

Essential Servo Parameter Settings

Before establishing communication, certain parameters must be configured in the servo drive. The table below summarizes the critical parameters for Modbus control mode, based on typical application requirements.

Parameter Description Setting Value Operation
P1-01 Control Mode 02 (Speed mode) Write via keypad or Modbus
P2-11 DI2 Function 14 (Servo On)
P0-17 Status Register 1 7
P0-18 Status Register 2 54
P0-19 Status Register 3 0

These parameters set the drive to speed control mode and configure the digital input DI2 for servo enable. The status registers define which data is mapped to Modbus holding registers for monitoring.

Modbus Register Mapping for Monitoring

To read real-time data from the servo, the PLC must access specific Modbus addresses. The following parameters are commonly monitored:

Parameter Description Modbus Address (Holding Register) Operation
P0-09 Actual Speed 0x0009 Read (Function 03)
P0-10 Torque 0x000A
P0-11 Encoder Position 0x000B

Note that the Modbus address is typically the parameter number in hexadecimal. For example, P0-09 corresponds to holding register 40009 (or 0x0009 offset). Always refer to the servo manual for exact mapping, as some drives use different base addresses.

Writing Commands to the Servo

To control the servo, the PLC writes to specific registers. Common write operations include enabling the servo, setting speed, and changing direction.

Parameter Description Modbus Address Operation
P2-10 Servo On (SON) 0x020A Write (Function 06 or 16)
P2-12 Command Reverse 0x020C
P1-09 Speed Command 0x0109

For example, to start the servo, write a value of 1 to P2-10. To set a speed of 1000 rpm, write 1000 to P1-09 (assuming the unit is rpm). The command reverse register (P2-12) can be toggled to change direction.

Siemens Smart PLC Modbus Programming Tips

When using a Siemens Smart PLC (e.g., S7-200 Smart), the Modbus RTU library makes implementation straightforward. Use the MBUS_CTRL instruction to initialize the port, and MBUS_MSG to send read/write requests. Ensure the baud rate, parity, and slave ID match the servo settings. The slave ID is usually set in servo parameter P3-00 (default 1).

A typical sequence in the PLC program would be:

  • Initialize Modbus with MBUS_CTRL, setting Mode to 1, Baud to 9600, Parity to 0.
  • Use a timer or first scan bit to trigger a read of status registers (e.g., speed, torque).
  • On demand, write to P2-10 to enable the servo, then write speed command to P1-09.
  • Monitor communication status bits for errors and retry if necessary.

Important: Always verify the register addresses from the official Delta ASDA-E3-L manual. Some parameters may have different Modbus offsets depending on firmware version. Additionally, ensure proper termination and biasing on the RS-485 network to avoid communication errors.

Troubleshooting Common Issues

If communication fails, check the following:

  • Wiring: RS-485 A and B lines not swapped, proper grounding.
  • Parameter P3-00: Slave ID matches PLC request.
  • Parameter P3-01: Baud rate (0: 4800, 1: 9600, 2: 19200, etc.).
  • Parameter P3-02: Communication protocol (set to Modbus RTU, usually 0 or 1).
  • PLC program: correct function code (03 for read, 06 for single write).
  • Servo drive must be in ready state (not faulted) to respond.

Using a Modbus scanner tool can help isolate whether the issue is on the servo or PLC side. Many engineers also find it helpful to start with simple read commands before attempting writes.

Practical Application Example

Consider a conveyor system where the speed needs to be adjusted based on a sensor input. The Smart PLC reads the sensor, calculates the required speed, and sends a Modbus write to P1-09. Simultaneously, it reads P0-09 to confirm the actual speed and P0-10 to monitor torque for overload protection. This closed-loop control ensures reliable operation.

By mastering these Modbus configurations, you can integrate Delta servo drives into a wide range of automation systems, reducing wiring and enabling flexible control strategies. The E3-L series, with its built-in Modbus support, is a cost-effective choice for many motion applications.

For further learning, download sample Siemens Smart PLC programs that demonstrate these concepts. Experimenting with actual hardware is the best way to solidify your understanding of servo communication.

Similar Posts