Lookout Driver Objects - Custom INI File Settings
Overview
- National Instruments Lookout and the Industrial Automation OPC Servers (also known as Lookout Protocol Drivers) have numerous drivers for PLCs and other devices. These drivers are configured in Lookout or the IA OPC Servers software by choosing Object»Create or Object»Modify. Most of the options necessary to use these drivers are available through the menu options; however, other driver settings can be made through .ini file settings. These settings are typically for debugging purposes or for advanced uses. This article describes the possible .ini file settings for each driver.
Please Note: National Instruments does not recommend applying these INI settings for any driver. These settings should only be used if your device requires these settings. Do not use these settings if your driver operates properly without these configurations. Carefully review these INI settings and test the operation of the device before applying them permanently.
Table of Contents
General Rules for Applying object.ini Settings For Driver Objects
Most drivers follow some general rules for object.ini settings.- Filename: Normal driver object configuration is stored either internally or in an object.ini file. If the normal configuration does not create an object.ini file, it is optional. If you have an object.ini file, make sure that you distribute it with your application.
- Filelocation: When the object.ini file is used, it should be located in the same directory as the object.cbx file. Usually, that's the Lookout directory.
- Sectionname: In the object.ini file you specify the object parameters (ini key values) either globally for all objects in an ini section called [all], or specifically for an object with [ObjectName] as you named it in Lookout or IA OPC Servers (such as [Modbus1], as shown in the Modbus.ini File Settings Example below).
- Keyname: The object parameter is defined by its keyname and its value. The value could be numeric, string, or Boolean. Most drivers use either numeric or string parameters.
- Apply: Whenever you change the object.ini file manually, you must restart Lookout or IA OPC Servers to apply the new settings for the driver object.
General Description of Some object.ini Settings For Some Drivers
Some drivers have unique object parameters. Here is a list:
UpdateOutputs specifies how many poll requests pass before the driver rewrites all outputs to the device. For example, if UpdateOuptuts equals 10, then every tenth time the Modbus object receives a poll request, it writes all output values to the device. This ensures that the device is synchronized with Lookout. The default value is 100.
RefreshOutputs specifies whether or not the driver regularly rewrites all outputs every UpdateOuptuts poll requests. If RefreshOuptuts is equal to 1 (the default value), the driver output rewrite function is turned on. If RefreshOuptuts is equal to 0 (zero), the driver output rewrite function is turned off; no rewriting of output values occurs except when they change.
Note: Most driver objects always write all outputs whenever they first start, and whenever they recover from a communication failure.
DiagnosticFile or DiagnosticPath specifies a filename (including full path) or just the path to a file for a logfile of a non-serial port communication (for example, Ethernet) between Lookout and the device for troubleshooting. For example, DiagnosticPath=c:\temp\diag.txt. Refer to the table below for more details about each object.
Modbus.ini File Settings Example
An example modbus.ini file is shown here:
[all]
UpdateOutputs=200
RefreshOutputs=1
Protocol=RTU
[Modbus1]
RefreshOutputs=0
[Modubs5]
UpdateOutputs=10
RefreshOutputs=1
Protocol=ASCII
In this example, all Modbus objects except Modbus1 and Modbus5 update all their outputs every 200 polls. Modbus5 updates its outputs every 10 polls. Modbus1 doesn't update its outputs unless an output changes. Also, all Modbus objects except Modbus5 use the RTU protocol. Modbus5 always uses the ASCII protocol.
Table of Lookout Driver Object .ini Files
| Obejectname (.cbx) | Filename (.ini) | Sectionname | Keyname [=default value] | Description |
| allbrad.cbx | allbrad.ini | [PLC2] | UnprotectedWrite= | To disable an STS error reported by the Allen Bradley PLC when trying to write to protected registers on the PLC. It allows writing to protected registers. For example: [PLC2] Unprotected Write=yes |
| allbrad.ini | [KT] | TranslateLogical Address= | Converts logical address to physical (See DF1 protocol specification; Chapter: PLC-2 physical Addressing). For example: [KT] TranslateLogical Address=yes | |
| daniel.cbx | daniel.ini | [all]/[objname] | UpdateOutputs=100 | Sets the amount of polls to skip an output update. |
| daniel.ini | [all]/[objname] | RefreshOutputs=1 | Sets to refresh all outputs every UpdateOutput polls. | |
| daniel.ini | [all]/[objname] | SkipImmediatePoll=0 | Sets to poll immediately upon getting a connection. | |
| daniel.ini | [all]/[objname] | ConfirmPoll=0 | Sets to poll immediately to confirm writes. | |
| daniel.ini | [all]/[objname] | SkipPollBefore Write=0 | Sets to skip a read poll before write (could be TRUE, in case of ConfirmPoll TRUE). | |
| daniel.ini | [All] | MaxChannels=8 | Sets max number of paths that can be open. | |
| devnet.cbx | devnet.ini | [all] | StartupDelay=10 | Number of seconds to delay before first poll to device; default is 10 secs. For example: [all] StartupDelay=20 |
| fpoint.cbx | fpoint.ini | [objname] | FilterChAlarms=0 | Filters several alarms coming from the FieldPoint driver: FP module - channel status - Error message FP-AI-1xx - 1 - Out of range FP-AO-200 - 1 - Open Current Loop FP-AO-210 - 1 - Overcurrent Protection FP-DO-410 - 1 - Current Limited FP-TC-120 - 1 - Out of Range FP-RTD-122 - 1 - Out of Range FP-CTR-500 - 1 - Overflow since Last Read For example: [FieldPoint1] FilterChAlarms=1 |
| ge.cbx | ge.ini | [ge]/[objname] | OkToWriteUnchanged Values=0 | Specifies to perform block writes. For example: [GE1] OkToWrite Unchanged Values=1 |
| hitachie.cbx1 | hitachie.ini | [ethernet] | DiagnosticPath= | Creates a diagnostic file for Ethernet communication. For example: [ethernet] DiagnosticPath= c:\temp\ hitachiediag.txt |
| modbus.cbx | modbus.ini | [ethernet] | DiagnosticPath= | Creates a diagnostic file for Ethernet communication. For example: [ethernet] DiagnosticPath= c:\temp\ modbusdiag.txt |
| modbus.ini | [all]/[objname] | UpdateOutputs=100 | Sets the amount of polls to skip an output update. | |
| modbus.ini | [all]/[objname] | RefreshOutputs=1 | Sets to refresh all outputs every UpdateOutput polls. | |
| modbus.ini | [all]/[objname] | SkipImmediatePoll=0 | Sets to poll immediately upon getting a connection. | |
| modbus.ini | [all]/[objname] | AlwaysWrite=0 | Sets to always write redundant writes. | |
| modbus.ini | [all]/[objname] | OptimizeWrite=0 | Sets to write Coils/Register optimized. | |
| modbus.ini | [all]/[objname] | Protocol=RTU | Sets protocol mode; RTU or ASCII. For example: [Modbus1] Protocol=ASCII | |
| modbus.ini | [All] | MaxChannels=8 | Sets max number of paths that can be open. | |
| mtsbshi.cbx | mtsbshi.ini | [all]/[objname] | UpdateOutputs=100 | Sets the amount of polls to skip an output update. |
| mtsbshi.ini | [all]/[objname] | RefreshOutputs=1 | Sets to refresh all outputs every UpdateOutput polls. | |
| nif.cbx2 | lookout.ini | [Fieldbus] | AlarmPriority=0 | Alarm priority for Fieldbus objects. (default = 0) |
| optohost.cbx | optohost.ini | [Diagnostics] | TransactionFile= | Creates a diagnostic file for Ethernet communication. |
| optomist.cbx | optomist.ini | [all]/[objname] | UpdateWrites=0 | Sets to refresh all outputs every 100 polls. |
| s5as511.cbx2 | lookout.ini | [S5-AS511] | Diagnostics=0 | Turns on diagnostic recording functions in S5-AS511 driver. When activated, this option logs diagnostic information to the s5as511.dai file in the Lookout directory. =0 diagnostics are off (default) =1 diagnostics are on |
| s7_hmi.cbx2 | s7_hmi.ini | [COMx] x=1.. | MPIBaud=Auto | Specifies the speed at which the MPI Network is operating. These selections are possible. "187.5K", "Auto". For example: [COM2] MPIBaud=Auto HighestMPI=68 PanelMPI=34 |
| s7_hmi.ini | [COMx] x=1.. | HighestMPI=31 | The highest possible MPI address for any device on the network. The range for this setting is from 0 to 126; the default is 31. | |
| s7_hmi.ini | [COMx] x=1.. | PanelMPI= | The MPI address assigned to the hardware adapter that is being used to talk to the network. The range for this setting is from 0 to the HighestMPI setting. | |
| siemens.cbx | siemens.ini | [objname] | InitTimeout=2 | Sets the time that the application association will lock out other block's calls to funcs like tf_receive and tf_send; 1..10 seconds. For example: [PLC1] InitTimeout=3 |
| sixnet.cbx2 | lookout.ini | [Sixnet] | IOMAPAlarm Priority=5 | Priority of the "Unable to load Sixnet IOMAP library: iobase32.dll" alarm in Sixnet. (default = 5) |
| lookout.ini | ProjectAlarm Priority=5 | Priority of the "No Sixnet configuration currently loaded" alarm in Sixnet. (default = 5) | ||
| squared.cbx | squared.ini | [all] | Bit1Addressing | Sets bit addressing to 1-16 instead of 0-15. For example: [SquareD1] Bit1Addressing=1 |
| squared.ini | [ethernet] | DiagnosticFile= | Creates a diagnostic file for Ethernet communication. For example: [SquareD1] DiagnosticFile= c:\temp\ squareddiag.txt | |
| tesco.cbx | tesco.ini | [Diagnostics] | DiagnosticFile= | Creates a diagnostic file for Tesco communication. |
| tesco.ini | [Diagnostics] | Setpoint=0 | Turns on Setpoint logs for DiagnosticFile. | |
| tesco.ini | [Diagnostics] | GeneralComm=0 | Turns on GeneralComm logs for DiagnosticFile. | |
| tesco.ini | [All]/[objname] | SPDeviation=0 | A deviation for setpoint writes. | |
| tiway.cbx | lookout.ini | [Tiway] | DiagnosticFile= | Creates a diagnostic file for Tiway communication. For example: [Tiway] DiagnosticFile= c:\temp\ tiwaydiag.txt |
| lookout.ini2 | [Tiway]/[objname] | UpdateOutputs=100 | Sets to refresh all outputs every UpdateOutputs polls (=0 disables to refresh all outputs). | |
| lookout.ini | [objname] | ConfirmPoll=0 | Sets to do a confirm poll, in addition it will skip doing the poll before the write. | |
| tiway.ini | [PCAcardx] x=1..4 | BaseAddress= | Sets base address for the cards can be set anywhere from 0x8000 to 0xFF00 (DOS area: 0xA000..0xEF00) NOTE: BaseAddress and Irq are not required to be set in .ini because the driver searches automatically for it. However, if you set it in the .ini, the object uses those settings. It assumes that PCAcard1 has the lowest base address and so on. | |
| tiway.ini | [PCAcardx] x=1..4 | Irq= | Sets IRQ for the PC Adapter cards and can be anywhere from 1..15 (0=No IRQ). NOTE: BaseAddress and Irq are not required to be set in .ini because the driver searches automatically for it. However, if you set it in the .ini, the object uses those settings. | |
| tiway.ini3 | [SFx] x=1.. | macro-string | Configure Store and forward macros into Tiway structure (See SIEMENS TIWAY Host Adapter Card Manual). For example: [SF1] <C/V> <source-offset> <count> <msec> <dest-block> <dest-offset> | |
| tiway.ini3 | [UHA1COMx] x=1.. [PCAcardx] x=1.. | Optionxx=0xFFFF | Read Host Adapter command 30 (configure network manager) optional settings. Network manager configuration options ( 00 - 0E (00 unused)): xx=01..0E (See SIEMENS TIWAY Host Adapter Card Manual) | |
| vmax.cbx | vmax.ini | [ethernet] | DiagnosticPath= | Creates a diagnostic file for Ethernet communication. For example: [ethernet] DiagnosticPath= c:\temp\ vmaxdiag.txt |
Lookout driver objects with .ini settings set through Object>>Create or Object>>Modify in the software:
allbrad.cbx, fpoint.cbx, profidb.cbx, profil2.cbx, reliance.cbx, squared.cbx
Lookout driver objects without .ini settings:
advan.cbx, applicom.cbx, aquatrol.cbx, cutham.cbx, deltatau.cbx, dnp.cbx, fatek.cbx, fisher.cbx, hitachi.cbx, idec.cbx, ipascii.cbx, misucom.cbx, nif.cbx, omni.cbx, omron.cbx, optomux.cbx, pducer.cbx, philips.cbx, rck.cbx, scandata.cbx, simatics5.cbx (S5_3965), toshiba.cbx, wizdom.cbx
Table of Other Object .ini Files
| Object name (.cbx) | File name (.ini) | Section name | Keyname [=default value] | Description |
| animator.cbx | lookout .ini | [Custom Colors] | 0= … 15= … | Stores up to 16 custom colors for the Animator object. For example: [Custom Colors] 0=0x0000FF |
| hyper.cbx | lookout .ini | [System] | SkipTrend Warning=0 | Skips the warning dialog of the HyperTrend object when you add traces to it that the trace has to be enabled for logging. |
| hyper .ini | [HyperTrend] | MaxScrollRate =330 | Sets the max scroll rate from the .ini file (in milliseconds per pixel). Default is 0.33 s per ScrollPixels. | |
| hyper .ini | [HyperTrend] | ScrollPixels=8 | Sets the max number of pixels to scroll at a time (this affects the scroll rate also). | |
| hyper .ini | [objname] | ForceAsynch=0 | Sets to force the synchronous traces (discretes) to be drawn asynchronously (interpolated). | |
| pager.cbx | pager .ini | [objname] | DisableLog OffAck Check=0 | 1: Sets to disable verification of the log off ack. |
| pot.cbx2 | lookout .ini | [Pots]/[objname] | SnapDelay=2 | Sets snap delay setting for Pots (1..4200000 seconds). |
| lookout .ini | [Pots] | Mouse ButtonRepeat=1 | 1: User holds down the mouse button and the incr, decr buttons will make the Pot change values several times. 0: Can be used to disable this default behavior. | |
| recipe.cbx2 | lookout .ini | [Recipe] | objname. alarmpriority=8 | Alarm priority used by a Recipe object (default = 8). For example: [Recipe] Recipe1. alarmpriority=4 |
| sheet.cbx2 | lookout .ini | [DataPath] | objname= | Full path name for an individual spreadsheet (default is path to the Lookout data directory). |
| table.cbx2 | lookout .ini | [LocalTable] /[objname] | Delay=500 | Periodically post a DDE table with this frequency (measured in ms). (default = 500) |
| lookout .ini | [LocalTable] /[objname] | EchoCursor =1 | 0: only echo a cursor value if the cell the cursor is pointing to does not have a connection to it. 1: no echoes (default) | |
| lookout .ini | [LocalTable] /[objname] | PokeAllCells =0 | Sets to poke all cells. This setting exists to work around a possible bug in DDE. If in CF_TEXT mode (must be to work with Excel), you need to be sending the whole table in each DDE message. But Lookout does not, so this function pokes every cell instead of just the one that changed. PokeAllCells gets called instead of PokeCell if you have the .ini setting PokeAllCells=1. | |
| for all old 3.8 .cbx | lookout .ini | [System] | ShowObsolete =1 | Shows obsolete .cbx file in the Object Explorer (for example, nidaq.cbx and other 3.8 objects). Note: National Instruments recommends that you no longer use the old Lookout 3.8 objects. |
1 Lookout 5.1 or later is required for this setting.
2 You can find more information about this option in the Lookout Help.
3 Potentially not supported by third-party devices.
Related Links:
NI OPC Device Connectivity
Reader Comments | Submit a comment »
All at one place - great!
Thanks to VF.
- Swiss Biker - Jul 22, 2004
Legal
This tutorial (this "tutorial") was developed by National Instruments ("NI"). Although technical support of this tutorial may be made available by National Instruments, the content in this tutorial may not be completely tested and verified, and NI does not guarantee its quality in any way or that NI will continue to support this content with each new revision of related products and drivers. THIS TUTORIAL IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND AND SUBJECT TO CERTAIN RESTRICTIONS AS MORE SPECIFICALLY SET FORTH IN NI.COM'S TERMS OF USE (http://ni.com/legal/termsofuse/unitedstates/us/).
