Question:
How does the I/O tag writing process work in Elipse E3?
Solution:
First of all, there are two possible modes for I/O tag writing in Elipse E3: synchronous writes and asynchronous writes.
To set it up, firstly you’ll have to access the Driver’s WriteSyncMode property; this property establishes how the writes will be sent to the I/O Server. The available values for this property are:
- 0 – wsmDefault: Synchronous mode (default).
- 1 – wsmSync: Synchronous mode (manual).
- 2 – wsmAsyncUnconfirmed: Asynchronous mode.
Likewise, you can choose the write types in the parameters of Write and WriteEx methods, via scripts. When you write a value in a setpoint on a screen, the write type will be the same as the one configured in WriteSyncMode.
Both synchronous and asynchronous writes will happen right after the interaction taking place at the moment (read or write); neither type will wait for a driver’s complete scan cycle (read cycle). In both cases, the operation time (sending data and receiving feedback from the driver) is the same.
For asynchronous writes (unconfirmed), the E3Run will send the value to the I/O Server and not wait for any return; in this type of write, the system assumes the script has always been succesful. Soon after, the application is immediately released for following its established course of action.
On the other hand, for synchronous writes (confirmed), the E3Run will send the value to the I/O Server and then wait for the device’s return to confirm its value and release the application. This is the default option for the I/O driver, and it will be applied to the application automatically if no other option is selected.