A. COMPOUND/BLOCK NAMES DATABASES

There are so many blocks in our I/A systems, that any time they complain about a problem with certain block, I am almost certainly lost. I decided to write scripts to create ascii file databases for each system so I can search and find information relative to any compound/block/cp.

These ascii file databases might be opened by Microsoft Excel (or any other spreadsheet program), where you can play/manipulate/sort them any way you want, and print reports for your pals, if necessary.

Run the script once in a while to have the database updated. You might also put the script in your crontab, so the ascii file database would be updated periodically.

As you might know, the control databases reside in several places of an I/A system. Here you have a control db refresher:

Resides in directory /opt/fox/csa (50/51) or /usr/fox/csa (20), on the CSA host.
This CSA host might be the same as the CP host, but not necessarily.
The information here is used to approve or not the creation/deletion of a new compound/block in the system.
This database has only Compound/Block names, and block types, for each CP/Gateway in the system.
It does not have information about any parameter.
This data can be viewed using CSA utilities like csa_save.

Reside mainly in directory /opt/fox/ciocfg/CP of the host (AP/AW) of the CP.
These files have parameters information for Compound and Blocks.
The main file is: cplbug.wf, in addition to the xxx.O files for each compound.
You can access these files with: Integrated Control Configurator, ICC API Utilities (like iccprt), or FoxCae.

Reside in directory /usr/fox/sp/files, on the CP/GW host.
This is like a compiled version of the ICC files, created whenever you exit from the Control Configurator.
There is only one file per CP: DBcplbug.UC, and it is used whenever you reboot a CP. It contains the data that is going to be loaded on CP's memory. These files can be viewed with the dbvu utility.

This database is accesed whenever you use: Select display, omget/omset, getpars/setpars.

Under normal conditions the 4 databases should match, however there are situations where they are not equal.
I have created scripts that using standard Foxboro/Unix commands, extract information from these 4 databases.

This graphic: csa.gif summarizes all CSA and ICC files and their relationships, including my scripts:

The four scripts are:

A1

get_csa

Extracts CSA databases for all CP/GW in the system.

A2

get_icc

Extracts ICC databases for all CP/GW in the system.

A3

get_dbv

Extracts Checkpoint file db for local CP/GWs (hosted by this AP).

A4

get_cp

Extracts CP memory db for all CP/GW in the system.

The corresponding ascii output files have the following fields, separated by spaces:

get_csa

CP

Compound

Block

Block_Type

get_icc

CP

Compound

Block

Block_Type

get_dbv

CP

Compound

Block

get_cp

CP

Compound

Block

Block_Type

Description

The quickest and my favorite is the last one, that gives me in a few seconds even the block description. Just remember that all your CPs must be online.

The scripts: get_csa, get_cp will create in addition to the ascii database, another ascii file (PLANT.sum) with Summary information: Blocks/CP, Number of each block types (total and percentage), etc

To download an script just click on its name (underlined). Once you have it on screen, click on "File", then "Save As...", type as Filename its name (without extension), change "Save as type .." to: Plain Text (.txt), and finally click on "Save". The file will not have the special HTML characters and can be safely run on any AP/AW after transferring it.


SAMPLES:

PLANT.csa (using: get_csa) :
TCCP01   TCENCL_STAT1  TCEN06_STAT   CIN
TCCP01   TC_TRICON     IOMAIN        CIN
TCCP01   TC_TRICON     TMRFLT        CIN
TCCP02   TC1C1103B     11FC040       PID
TCCP02   TC1C1103B     11FT040       AIN
TCCP02   TC1C1103B     11FY040       AOUT
TCCP02   TC1C1103B     11LC020       PID
TCCP02   TC1C1103B     11LT020       AIN
TCCP02   TC1C1103B     11LY020       AOUT
TCCP02   TC1DI         11H001A       COUT
TCCP02   TC1DI         11HX001       CALC
TCCP02   TC1DI         11LAH902      CIN


PLANT.cp (using: get_cp):
TCCP01 TCENCL_STAT1 TCEN06_STAT  CIN     ENCLOSURE TCEN06 STATUS
TCCP01 TC_TRICON    IOMAIN       CIN     IO COM BUS OR MAINPROCESSOR FLT
TCCP01 TC_TRICON    TMRFLT       CIN     TMR SYSTEM COMMON TROUBLE ALARM
TCCP02 TCCP02_STA   STATION      STA
TCCP02 TC1C1103B    11FT040      AIN     STRIPPING STEAM TO C-1103B
TCCP02 TC1C1103B    11FC040      PID     STRIPPING STEAM TO C-1103B
TCCP02 TC1C1103B    11FY040      AOUT    STRIPPING STEAM TO C-1103B
TCCP02 TC1C1103B    11LT020      AIN     C-1103B BOTTOM STRIPPER
TCCP02 TC1C1103B    11LC020      PID     C-1103B BOTTOM STRIPPER
TCCP02 TC1C1103B    11LY020      AOUT    C-1103B BOTTOM STRIPPER
TCCP02 TC1F1102B    11FT033      AIN     DECOKING AIR F1102B COIL 1


PLANT.sum (using: get_cp or get_csa):
Plant statistics for: Mon Oct 27 11:56:36 GMT 1997
Total blocks = 2001
==============================================
TCCP01  blocks =      408       ( 20 %)
TCCP02  blocks =      363       ( 18 %)
TCCP03  blocks =      372       ( 18 %)
TCCP04  blocks =      492       ( 24 %)
TCCP05  blocks =      260       ( 12 %)
TCCP06  blocks =      106       ( 5 %)
==============================================
AIN     blocks =      912       ( 45 %)
AOUT    blocks =      188       ( 9 %)
CALC    blocks =       18       ( 0 %)
CIN     blocks =      307       ( 15 %)
COUT    blocks =      110       ( 5 %)
ECB1    blocks =      113       ( 5 %)
ECB2    blocks =       61       ( 3 %)
ECB5    blocks =       40       ( 1 %)
ECBP    blocks =        6       ( 0 %)
IND     blocks =        3       ( 0 %)
MCIN    blocks =        4       ( 0 %)
MOVLV   blocks =        4       ( 0 %)
PID     blocks =      198       ( 9 %)
PIDA    blocks =        8       ( 0 %)
RATIO   blocks =       18       ( 0 %)
REALM   blocks =        3       ( 0 %)
SIGSEL  blocks =        1       ( 0 %)
STA     blocks =        6       ( 0 %)
SWCH    blocks =       13       ( 0 %)

"A1. get_cmpd"

This script will get all the compound names from ALL the CPs and GWs on the system. Useful when you want to know just the compound names for different purposes. A summary report is included at the end.



Index - Home


This page hosted by
Get your own Free Home Page