AB KTx RIO TLM
  SoftPLC    Font size:      

Driver Initialization

Driver Initialization is a special phase of operation that happens only under either of two special circumstances, described below.

During driver initialization, the SoftPLC KTx driver uses the AUTOCONFIGURE feature of the KTx card to temporarily set the KTx's scan list. In other words, the KTX will attempt to find all powered up and communicating adapters on the I/O link. Partial rack configurations are also automatically recognized in this process.

After the temporary list of all adapters is obtained via the KTx AUTOCONFIGURE feature, then two additional checks are done by KTX.TLM:

  1. Check that all PhysicalAddrs in KTX.LST may be serviced by an RIO adapter which is known to be present. If some needed adapter is missing, then the entire SoftPLC will not be able to enter RUN mode. (The [INPUTS] and [OUTPUTS] sections of KTX.LST determine which adapters are "needed". If you wish to not use an adapter, then you should comment out or delete those blocks in KTX.LST that reference the PhysicalAddrs that fall under the domain of that adapter. Or you can reduce the NumWords in a block.)
  2. Check that all adapters found are actually fulfilling some function with respect to the PhysicalAddrs in KTX.LST. Any unused but available adapters are removed from the scan list and will be ignored by the KTx card and SoftPLC.

The KTX.LST file is read, parsed, and the above driver initialization procedure happens under either of these two conditions:

  1. During a SoftPLC REM/PROG to REM/PROG mode change, with no intervening mode. You can cause this to happen with TOPDOC, and our support group refers to this as double clutching the system.
  2. When the KTx driver is initialized during SoftPLC start up, i.e. when SoftPLC is first loaded into memory. This means that the I/O racks need to be powered up no later than the SoftPLC computer is, otherwise you will have to invoke condition 1) just above.

Therefore, to add a new rack to the I/O link, the user must change KTX.LST, then change SoftPLC's mode from REM/PROG to REM/PROG, or shut down and then restart SoftPLC.

Note
Inhibiting racks is not supported by setting "rack inhibit" bits in the datatable. It was felt that this cost too much CPU time for a feature that can be accomplished in a better way. Instead, you must remove all the blocks from the KTX.LST file that have PhysicalAddrs that fall under the domain of the undesired adapter(s).