Infi90 System Tuning

Download as pdf or txt
Download as pdf or txt
You are on page 1of 7

INFI90 System Tuning

1 System load.

1.1 NPM processor load.


The processor load of a NPM can be read at block output 11 of the Primary module.
Use an IMCPM02 to read the block output (don't use a CIU or NCC, as the polling
mechanism causes considerable additional CPU load).

1.2 NPM memory utilization and Infinet load.


Memory utilization and Infinet load can be checked by INFI90 Service Engineers, using
special utilities in a CIU (preferably an INICI03 or IIMCP02). Latest BCS Based
Operator Interface Station software versions have Infinet Diagnostics Menus available
for the user. There is also a beta version Infinet Explorer with similar functionality.
A NPM with Memory Overflow (MOV) results in a few or more exception report tags
not being established (indicating Bad quality).

1.3 Modulebus or Controlway load.


Modulebus or Controlway load can be checked by INFI90 Service Engineers using a
special module (PBUG).

1.4 Module registers.


Most intelligent modules have various memory locations that contain diagnostic
information, error counters or post mortum dump information. This information can be
retrieved by INFI90 Service Engineers using a special module (PBUG).

2 Module Tuning.

2.1 Executive blocks.


It is recommended to have one Configuration Logic Document (CLD) per Controller
containing the default Executive blocks (FC81, FC82 block 15 and FC90 block 20).
This CLD is usefull for tuning and performance monitoring purposes.

2.2 Executive, FC81.


This functioncode has no usefull settings for the user.
Block output 12 indicates processor freetime in percent.

2.3 Segment Control, FC82.


One fixed FC82 is allways present at blockadres 15. A maximum of 8 segments can be
created by configuring 7 additional functioncodes 82. The blockaddress of the additional
functioncodes 82 is the start address of a new segment.
This functioncode is extremely usefull for optimum tuning of individual segments and it
has influence to the total system performance.
Segmenting is generally done when utilizing C or Basic programs.

INFI90 System Tuning page 1 of 7 13 januari 2009


UNPUBLISHED DOCUMENT, FOR INFORMATION ONLY
S2, Target period.
Time assigned to a segment. Segments must get a unique priority (S3).
Segments with a lower priority are executed in the idle time of higher priority segments.
In case of improper tuning of target times and priorities a situation can exist where
segments are not executed at all or will be finished only after multiple cycles.

Segment cycle times can be read by the blockoutputs of FC82.

Block N (first segment is block 15).


Total segment execution time of the previous cycle, including idle time. Idle time is
available for lower priority segments.

Block N+1 (first segment is block 16).


Current segment execution time, including the execution time of all higher priority
segments.
A continuous upramping time indicates the segment is not being executed.

Block N+2 (Processor utilization, first segment is block 17)


This blockoutput indicates the CPU utilization for this segment.

S3, Segment priority.


Segment priority, highest is 7 (theoreticaly 255 according to the Functioncode manual),
lowest is 0.
Execution of segments with equal priorities is unpredictable.

S4, Checkpoint period.


Important with redundant modules only, determines the number of cycles allowed to
checkpoint (synchronize dynamic data to-) the backup module. The checkpoint process
can be monitored at blockoutput N+3.
The formula to compute the time required to checkpoint the dynamic data is explained
in the Function Code Application Manual.

The target segment cycle time can be set less than 10 mSec but the Checkpoint period
(S4 of FC 82) must be adjusted upward such that the following condition is true:
S4 * S2 >= 20 mSec.

For the case where the Target Cycle Time is less than the actual Segment Execution
Time (Refer to S2 description in FC 82 to calculate this) such as is the case when S2 is
set to zero, the rule is: Actual Segment Execution Time * S4 > 20 mSec.

Block N+3 (first segment is block 18).


This blockputput indicates proper checkpointing of redundant modules. Idealy this
output should be 0.
A cyclic upramping output indicates the segment needs more time than specified in S4
(a slight cyclic upramp, up to e.g. 8 can be acceptable), configuring a higher value for S4
should solve this problem.
A continuous upramping output indicates checkpointing does not occur.

INFI90 System Tuning page 2 of 7 13 januari 2009


UNPUBLISHED DOCUMENT, FOR INFORMATION ONLY
S7, Minimum exception report time.
Exception reports will be generated not faster than than the specified time.
This minimum time is used to filter out fast variations and minimize Infinet data.
Generally the default time of 1 second is sufficient.

S8, Maximum exception report time.


An Exception report will be generated at least with frequencies of the specified time.
The default time of 1 minute is sufficient for smaller systems.
For larger systems the default value in combination with a large number of exception
reports can cause heavy load for the NPM.

It is to be advised to raise the Maximum exception report time for every segment and
make the number unique for the complete PCU, with a lowest setting of 5 minutes (300
seconds).

S13, Controlway of Modulebus I/O period.


The frequency of the Controlway or Modulebus task is set in S2 of functioncode 90
(block 20).
S13 Of functioncode 82 indicates how often Controlway or Modulebus I/O should occur
for this segment.
Preferable this value must have a 4:1 ratio with S2 of FC90 (FC82 S13 = 4* FC90 S2),
at minimum it should be equal.

2.4 Extended Executive, FC90.


S2 is important in combination with FC82.

S2, Base Controlway of Modulebus I/O period.


Frequency of the Controlway or Modulebus I/O task.
To be set not faster than the target period of the highest priority segment.
Preferably to be set equal to the largest segment cycle time.

S3, Redundancy flag.


Set S3 to 1 in case of Redundant Controllers, this allows the Online Configuration
Utility of Composer to work properly.

2.5 Writes to NVM.


The number of NVM writes should be kept below 20 writes per second.
Examples of NVM writes are a mode- or setpoint change of a Manual/Auto station
(FC80) or entering a value into a Remote Manual Set Constant (FC68). This can be an
operator action, or being initiated by a C program, Batch program or host computer.
The best solution is to modify the program or configuration to throttle the NVM
writes, keeping them below 20 writes per second.
When too many NVM writes take place the backup Controller resets and recopies the
primary Controller's entire configuration. This causes a temporary module status alarm
on the console (primary Controller reports backup status is BAD). The bottom LED
(8) goes out on the backup Controller while it recopies the primary's configuration.
Soon LED 8 comes back on and it is once again a hot backup.
When this situation occurs the Redundancy NVM overrun status byte (RNO) is
latched as well.

INFI90 System Tuning page 3 of 7 13 januari 2009


UNPUBLISHED DOCUMENT, FOR INFORMATION ONLY
3 Settings of the NPM.

3.1 Exception Report Pollrate.

The frequency the NPM scans for exeption reports is set with dipswitch SW4 (Infinet
mode):

SW4-5 SW4-6 Polls/seconde

0 0 1
0 1 2
1 0 4
1 1 8

It is to be advised to set the pollrate to 1 unless specific needs arise. Fast pollrates
combined with a large number of exeptionreports can cause heavy load for the NPM.

4 N90STA Status tags.


For all intelligent modules in the system, status tags (N90STA) for the Human System
Interface should be configured.
Status tags can be defined as follows:

Module type Loop PCU Module Block


OIS/MCS L P 2 0
CIU/NCC L P 2 0
Controller L P M 0
NPM 0 L P 0 0
NPM 1 L P 1 0
IIT L P 0 0

L = Infinet Ring adres


P = Node adres
M = Module adres, unless fixed

For redundant controllers one status tag should exist, for the primary module address
only (situations with a status tag for both primary and backup controller can cause
Controlway errors).
For redundant NPM’s two status tags should exist, one for each module (module address
0 and module address 1).
For the IIT only one tag should exist, for the local side of the Bridge only.

Human System Interfaces must be properly configured to generate System Alarms


related to these tags.
Operations personal must be instructed to properly interpret and follow up such System
Alarms.

INFI90 System Tuning page 4 of 7 13 januari 2009


UNPUBLISHED DOCUMENT, FOR INFORMATION ONLY
5 Jumpers.

5.1 Controlway B enable jumper.


Current controller modules and NPM's do have a Jumper (J5), to enable the redundant
Controlway (B).
In older NETWORK90 systems the same trace was used for -30 VDC power. J5 should
be set to isolate Controlway B when used in these older systems.

The default (safe) position of J5 is to isolate Controlway B.


In newer systems the default (isolated) setting results in 'Controlway B errors' for the
module it self and/or any module reading data from that module.

In some occaisions the improper setting of J5 can result in total loss of Controlway
communication.

5.2 Infinet Termination jumpers.


Infinet Termination- Units and Modules do have jumpers for proper termination of the
communication cables used (coax or twinax). Improper termination can cause
communication failures.

6 ROM Checksum.
Set all Infinet communication modules to enable the ROM checksum routine:

NPM SW4-1 = 0
NIS SW3-2 = 1

INFI90 System Tuning page 5 of 7 13 januari 2009


UNPUBLISHED DOCUMENT, FOR INFORMATION ONLY
7 Remote I/O.

As many Remote I/O firmware issues exist, it is mandatory to use proper firmware
combinations for the Controller, RIO modules and Analog Input slaves (preferably
upgrade to latest versions).

7.1 Block address sequence.


Remote I/O block address sequence must be as follows:
FC146 at lowest address, followed by FC147 finally followed by the I/O Slave
definition functioncodes. Mentioned Functioncodes to be configured with subsequent
blockaddresses without blockaddress gaps. Functioncodes of one Remote I/O group
must reside in the same segment.

7.2 Remote Master Processor cycle time.


The cycle time of the Remote Master Processor (located near the controller) can be
checked at block output N+2 of FC146.

7.3 Remote Slave Processor cycle time.


The cycle time of the Remote Slave Processor (located near the I/O slaves) can be
checked by INFI90 Service Engineers at its blockoutput 15.

7.4 Controller cycle time.


The controller cycle time (FC82, S2) depends on the Remote I/O cycle times:
a Determine the cycle time necessary for the Remote I/O:
(cycle time RMP + cycle time RSP) * 2
b Check the cycle time necessary for the functioncodes, via FC82 N+1 (for first
segment: block 16).
c Tune FC82 S2 to a value greater than the greatest of a or b.

Proper tuning of the Modulebus I/O period (see 2.4), the Maximum exception report
time and Checkpoint period (see 2.3) are crucial for a reliable Remote I/O connection as
well.
Finally check the Module free time (block 12) to be at least 30%.

7.5 Remote I/O Termination jumpers.


Remote I/O Termination- Units and Modules do have jumpers for proper termination of
the communication cable (termination only on end nodes). Improper termination can
cause communication failures.

INFI90 System Tuning page 6 of 7 13 januari 2009


UNPUBLISHED DOCUMENT, FOR INFORMATION ONLY
8 S800 I/O.

It is mandatory to use proper firmware combinations for the BRC and the IOR
(preferably upgrade to latest versions).

8.1 Block address sequence.

Block address of FC227 should be lower than the FC228. Block address of the
FC228 should be lower than the I/O channels ( FC222 thru FC225 + FC229).
The FC222 thru 225 must be daisy chained. The first I/O block connected to
FC228 represents channel one, the second block in that chain represents channel
2, …….

While you can skip a channel when actually wiring the I/O, you must represent all
channels up to the last channel used for the module. Example: digital input. Field
wiring skips channel 3. However, channel 4 is landed. To successfully get the
data from channel 4 into the controller, the configuration must include 4 FC224
daisy chained to represent channel 1,2,3, and 4.

The FC227, all FC228 associated to that FC227, and all channel function codes
( FC222, 223, 224, 225, 226, 229 ) associated to that FC227 must be in the same
segment.

INFI90 System Tuning page 7 of 7 13 januari 2009


UNPUBLISHED DOCUMENT, FOR INFORMATION ONLY

You might also like