Daba - when you say "connections", do you mean a communication connection to the remote rack, or physical wiring connection? If the former, what's the nature of the connection? Is it by rack, module, or what?
Think of a "connection" as a single communication channel that allows data to be passed between modules..
All modules use one or more "connections" to maintain communications between themselves and the "owner" of the connection.
For example, and the simplest case, an I/O module is required for the application......
1. System is powered-up, Controller does its self-tests....
2. Controller attempts to establish a "connection" with each I/O module specified in the application "IO Configuration" tree.
3. Module is queried for its type, and revision, the controller checks that it meets the "Electronic Keying" criteria in the IO Configuration.
4. (Assuming E.K. successful) - Controller downloads the module's Configuration tag to the module.
5. If the module accepts the configuration tag (it checks it is valid), then the "connection" is established, and the module and controller can communicate with each other using Produced/Consummed data transfer.
Once connection is established, the I/O module is referred to as being "owned" by that controller.
When all required modules have their connections established, the I/O LED goes steady green, and everything is healthy.
If the "connection" gets lost, for any reason, the module throws away its configuration data, and the connection is terminated. A controller must re-download a configuration to re-establish the connection.
Output modules (and that means
any I/O module with outputs) can only have one owner, for obvious reasons. Any attempt by another controller on the network to establish a connection to an "owned" output module will be rejected by the module.
Input modules, on the other hand, can be "shared" between controllers, i.e. have multiple owners. For this to occur, the downloaded configuration tags must be identical, or the module would not know how to behave. If multiple ownership is in operation for a module, then it will continue to produce data for controllers to consume if at least one owner is still present.
To conserve the number of connections used by I/O modules, it is possible (and by default) to use "Rack Optimisation" for
digital IO modules in remote chassis. Basically this give the remote chassis' communications adapter the responsibility of collating the I/O tags to/from the IO modules into two single tags that are exchanged with the controller. Foe example, if a 17-slot chassis full of digital I/O modules was not configured for "rack optimisation", it would use 16 "connections" with owner-controllers. If rack optimisation is used, then it only uses 1 "connection". Analog modules cannot use the "rack optimisation" scheme, and will always 1 (extra) connection for each analog module.