Effect of Activating and De-activating Devices on I/O %MW Memory Addresses
Original instructions
Introduction
Control Expert assigns a located address in %MW memory to each input and output variable for a remote device and local slave, when that device or slave is activated.
In addition, Control Expert removes from %MW memory each located variable address whenever the related device or slave is de-activated.
In each case, because of the ordered structure of I/O items in PLC memory, the activation and de-activation of a single device causes a rippling effect on the address locations of other I/O variables throughout the application.
Because activating and de-activating devices can cause substantial changes to located variable addresses, Schneider Electric recommends the following practices:
The Sample Network
The sample network is a part of the same physical network that has been the subject of our continuing configuration example, and includes:
Note that, when a new network is created, Control Expert presents three local slave nodes that can be activated and pre-assigns them device numbers 000, 001, and 002. By default, each local slave is not activated. Therefore, each local slave’s inputs and outputs are not initially assigned a %MW memory address.
The following example describes the effect of activating a local slave function after another remote device has already been configured and added to the network. In this ca
The sample Ethernet network has been configured as follows:
I/O Assignment Without an Activated Local Slave
When you click the Update application button in the Ethernet communication module Configuration page, with the local slave de-activated, Control Expert auto-generates a collection of variables in support of the application’s I/O items at the following instance locations:
Note the address locations of the remote EtherNet/IP device’s inputs (%MW17) and outputs (%MW117). As you will see, below, when the local slave is activated, these address locations will change.
I/O Assignment With an Activated Local Slave
The following example displays input and output variables for the same project. However, in this example the Active Configuration setting for the first local slave was set to Enabled in the local slave configuration page, before the input and output variables were created. As a result clicking the Update application button in the Ethernet communication module Configuration page generated the following collection of variables:
Notice how the address locations for the remote EtherNet/IP device have shifted:
This shift of %MW input and output memory address assignments occurs because the local slave was activated, and local slave I/O variables are placed in a located memory address position ahead of remote EtherNet/IP device I/O variables.
A similar shift of addresses would occur—with respect to both local slave and EtherNet/IP device I/O variable addresses—if a Modbus TCP remote device is activated. This is because Modbus TCP device I/O variables are places in a located memory address position ahead of both local slave and EtherNet/IP I/O variables.
As stated above, a way to avoid this shift of I/O memory addresses is to activate every local slave and remote device that your project may require, and then allow them to remain active. To later disable a device, use the appropriate control bits to toggle off every connection to that device.