Configuration Basics
Smart Configuration File
The configuration file is a XML text file and is best edited with the dedicated editor built into TOPDOC NexGen, but may also be edited with any text editor.
Configuration Elements
This TLM is configured using a special configuration editor which is built into TOPDOC NexGen. The configuration file is XML text, is hierarchical with the following XML eelements. Elements are listed below with one of the following characters appended. The appendage is used to indicate howmany times the element may occur in any given context. The appended character and its meaning is as follows:
- ? Question Mark => Optional (zero or one)
- * Asterisk => Zero or more
- + Plus Sign => One or more
- None (no suffix) => exactly once
Element Name | Description | Sub Element(s) |
---|---|---|
SmartTLM | Top most element, holds all other elements | bus* |
bus | References and configures a communications channel which talks to racks. | rack* |
rack | Holds 3, 4, 6, or 8 I/O modules. | module* |
module | Identifies a I/O module by its slot position within a rack, and its module type. | in? out? CDM? hz? |
in | Present only for input modules, identifies where in the SoftPLC datatable the module's input scan data will be placed. For digital input modules this must be in the I: section of the datatable. | |
out | Present only for output modules, identifies where in the SoftPLC datatable the module's output scan data will come from. For digital output modules this must be from the O: section of the datatable. | |
CDM | Present only for intelligent modules, identifies a block of single shot inline configuration data that the TLM will download to the module for configuration purposes on any transition to a RUN mode. | |
hz | Allowed only on HSC11 high speed counter modules, and when present enables the TLM to calculate a frequency for each of the 3 module channels via the HZ ladder instruction. |
Here is a sample screen from the configuration editor showing a few of the elements from the above table. Notice how they are arranged hierarchically and that each element can "contain" other elements. (The rules of containment are given in the table Elements and their Allowed Sub-Elements.)
In the above panel, the element name is at the far left of each tree row. To the right of the element name, still within the tree row, is a list of attributes. That element's attributes are elaborated on within the table at the far right of the panel. That table is dynamic (depends on the selected element), and has one row for each attribute. The following section has a table listing all the allowed attributes for each element type.
Attributes of Elements
The table below gives the allowed XML attributes which may be attached to each XML element in the configuration file. Only these attributes may be attached to the corresponding element.
Element | Attribute | Value | Required |
---|---|---|---|
SmartTLM | debug | 0, 1, or 2, meaning "enable none, some, or all debugging print statements" | no, defaults to 0 |
hardware | Type of connectivity to the Tealware I/O: 'localPorts' or 'backplane3'. One architecture provides only 3 slots on a single bus (backplane3), and the other provides 3 racks on each of 4 buses (localPorts). See here. | yes | |
rtLicenseSize | Runtime license size: LT, 1K, 2K, or 8K, and pertains to the I/O capacity of the runtime license. Setting this correctly allows the editor help you stay within limits that are imposed by the runtime software later when it loads the configuration file. | yes | |
watchdog | The Tealware I/O modules each have a watchdog timer in them. The watchdog setting is a value sent to all of them on a transition to RUN mode that controls how long to wait during a quiet time before a module is to turn off its outputs. Range: 1-14 deci-seconds. Additionally the special value 0xf0 means do not use the watchdog. | yes, e.g. 7 equates to 7/10ths of a second. | |
digInStart | Is used to establish the starting I: address used during the allocation of input image table required by digital input modules. This controls both a) the manual (module at a time new entry) allocation and b) the full configuration auto allocation which is available by selecting the top most element and calling up the popup menu with a right click. | yes | |
digOutStart | Is used to establish the starting O: address used during the allocation of output image table required by digital output modules. This controls both a) the manual (module at a time new entry) allocation and b) the full configuration auto allocation which is available by selecting the top most element and calling up the popup menu with a right click. | yes | |
regInStart | Is used to establish the datatable file for all analog input data. The word component must be zero, but any available N: file may be used. The word element for any analog or intelligent input module is then calculated by using the associated in element's 'map' attribute as a word offset. For example, if regInStart is N17:0, and a module's <in map="14">, then the module's analog data will be moved into a block starting at N17:14 during the I/O scan. | yes | |
regOutStart | Is used to establish the datatable file for all analog output data. The word component must be zero, but any available N: file may be used. The word element for any analog or intelligent output module is then calculated by using the associated out element's 'map' attribute as a word offset. For example, if regOutStart is N7:0, and a module's <out map="14">, then the module's analog data will be sourced from a block starting at N7:14 during the I/O scan. | yes | |
bus | num | The bus number, 0, 1, 2 or 3 | yes |
rack | num | The rack number, 0, 1 or 2. | yes |
slots | The number of slots for the rack: 3, 4, 6, or 8. | yes | |
module | slot | The slot number, which starts at 1, with a range of 1-8 | yes |
type | The type of Tealware I/O module, picked from a menu from within NexGen. | yes | |
in | map | One of two kinds of datatable references, either absolute or relative. The absolute form is an actual datatable address and is used for digital input modules. The relative form is a zero based offset from the absolute starting address given by element SmartTLM's regInStart, and is used for non-digital input modules. | required and present only for input modules |
out | map | One of two kinds of datatable references, either absolute or relative. The absolute form is an actual datatable address and is used for digital output modules. The relative form is a zero based offset from the absolute starting address given by element SmartTLM's regOutStart, and is used for non-digital output modules. | required and present only for output modules |
hz | window | The number of samples to use in a sliding window filter, 2-4096. Frequency is calculated by subtracting the oldest count sample from the newest count sample and dividing by the elapsed time between the two samples. The oldest sample is disposed of when the newest sample is inserted into the sliding window. The sample rate is established by how often the HZ ladder instruction is energized for this module. | yes |