SoftPLC
 
Font size:      

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
Elements and their Allowed Sub-Elements
Element NameDescriptionSub Element(s)
SmartTLMTop most element, holds all other elementsbus*
busReferences and configures a communications channel which talks to racks.rack*
rackHolds 3, 4, 6, or 8 I/O modules.module*
moduleIdentifies 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.
outPresent 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.
CDMPresent 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.
hzAllowed 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.


Note
When using NexGen to edit the configuration file, its TLM specific configuration editor takes care of enforcing the rules of the configuration file.

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.

ElementAttributeValueRequired
SmartTLMdebug0, 1, or 2, meaning "enable none, some, or all debugging print statements"no, defaults to 0
hardwareType 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
rtLicenseSizeRuntime 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.
digInStartIs 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
digOutStartIs 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
busnumThe bus number, 0, 1, 2 or 3yes
racknumThe rack number, 0, 1 or 2.yes
slotsThe number of slots for the rack: 3, 4, 6, or 8.yes
moduleslotThe slot number, which starts at 1, with a range of 1-8yes
typeThe type of Tealware I/O module, picked from a menu from within NexGen.yes
inmapOne 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
outmapOne 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
hzwindowThe 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