Explicit Exchanges: General
Original instructions
Introduction
Explicit exchanges are exchanges performed at the request of the user program by using the following functions:
These exchanges apply to a set of objects (status, commands, or parameters) of a single channel. Their parameter is an IODDT-type variable.
For a Quantum Device DDT-type variable, use:
For a Modicon M580 Device DDT-type variable, use:
NOTE: These objects are not essential to the programming of a specific-application function, but they do provide additional information (e.g.: terminal faulty, module missing, etc.) as well as additional commands for advanced programming of specific-application functions (for further information on application-specific explicit exchange objects, a chapter dedicated to language objects is featured in each specific-application manual).
NOTE: The following functions also perform explicit exchanges, their operation being specific to the specific-application concerned (parameters and management of the different exchanges).
The functions are detailed in each specific-application manual concerned, and a brief overview is provided in each library:
General principle for using explicit instructions
The illustration below shows the different types of explicit exchanges that can take place between the PLC processor and the module (or integrated interface):
Managing exchanges
It may prove beneficial during an explicit exchange to check its execution, so as to ensure, for example, that the data read is only taken into account once the exchange has been correctly performed.
For this, two types of information are available:
NOTE: You can’t send two explicit exchanges at the same time to the channels managed by the same Logical Node LN0 ch0&1; LN1 ch 2&3; LN2 ch 4&5; LN3 ch 6&7.The Logical Node can only process one request, the other request will generate an error.
The following diagram illustrates the principle for managing exchanges:
IODDT or %CHr.m.c logical channel
An IODDT associated with a %CHr.m.c channel or the representation of a %CHr.m.c channel is a general syntax for updating all objects of the same type associated with this channel or group of channels, by way of explicit instructions.
Example: READ_STS(IODDT_Var)or READ_STS(%CH1.2.3) (read status words of channel 3 of module 2 located in rack 1).
NOTE: For a group of channels, any channel of the group can be used, but the exchange will apply to all channels of the group (Analog and Discrete) READ_STS(%CH3.2.8)will have the same effect as READ_STS(%CH3.2.9).
Limit regarding the Fipio bus
The number of explicit exchange functions that can be activated simultaneously on the Fipio bus is limited to 24.
An exchange request addressed to the Fipio bus may take several cycles of the master task, thus making it necessary to manage the words of the exchange management parameters for all explicit variable exchanges.