RE: HLBL REF.

2001-07-09 Thread Jones, Charles R. (Chuck)

If the operators can interact with the process, I recommend putting GDEV
blocks to AUTO (then WAIT 2 seconds for the block to see it) right before
you use each one.  It is the only way to be sure that the GDEV will be in
the correct auto/manual state when you need it to be.  If you are going to
change state on several GDEVs, then you can put them all to AUTO followed by
only one WAIT statement. 

If you want to call the script that you have already written, then I am
going to have flex a few thoughts to remember how to do that.  Depending on
how you wrote the UNIX script, I believe that it may be a more efficient use
of resources to rewrite it in HLBL.  Is it a UNIX script, PERL, C code, or
--Heaven forbid-- JAVA?  (I am assuming UNIX.)  Does the script use Object
Manager calls or API calls?  

I'm curious now.  Does any one know if HLBL is the most efficient use of
resources in this case?  Does anyone know how to call an external script
from within HLBL?

Chuck Jones
Refinery Automation Technologist
A.E. Staley Mfg. Co. -- Lafayette South Plant
765.477.5324 - Office  | 765.420.4431- Pager

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
Sent: Monday, July 09, 2001 5:17 AM
To: Foxboro DCS Mail List
Subject: RE: HLBL REF.



Thanks for the input,

I have a script that places all GDEV blocks in auto. How would you use this
in HLBL. I would like to place all GDEV's in auto at the beginning of the
Sequence Logic.

thanks in advance
Ken Moore
NSCC

This e-mail and any files transmitted with it are confidential and intended
solely for the use of the individual or entity to whom they are addressed.
If you are not the intended recipient or the person responsible for
delivering the e-mail to the intended recipient, be advised that you have
received this e-mail in error, and that any use, dissemination, forwarding,
printing, or copying of this e-mail is strictly prohibited.  If you have
received this e-mail in error, please notify the TLNA HELPDESK at
800-404-2436 or e-mail [EMAIL PROTECTED]

---
This list is neither sponsored nor endorsed by the Foxboro Company. All 
postings from this list are the work of list subscribers and no warranty 
is made or implied as to the accuracy of any information disseminated 
through this medium. By subscribing to this list you agree to hold the 
list sponsor(s) blameless for any and all mishaps which might occur due to 
your application of information received from this mailing list.

To be removed from this list, send mail to 
[EMAIL PROTECTED] 
with unsubscribe foxboro in the Subject. Or, send any mail to
[EMAIL PROTECTED]




RE: OPC client for I/A?

2001-07-09 Thread Lemieux, Tom

Corey,

I believe Matrikon makes an OPC server that will talk to an AW51. 
Phone 780-448-1010
www.matrikon.com


Thanks Tom Lemieux
Process Systems Specialist
Alabama Pine Pulp
Phone334-743-8576
Fax 334-743-8295
Email  [EMAIL PROTECTED]

 -Original Message-
From:   Corey R Clingo [mailto:[EMAIL PROTECTED]] 
Sent:   Monday, July 09, 2001 11:05 AM
To: Foxboro DCS Mail List
Subject:OPC client for I/A?

Hello all,

I'm looking for a way(s) to get data from 3rd-party OPC servers into points
on
an I/A system.  I'd rather not buy an AW70, as we don't have any now and are
looking to do this as cheaply as possible, but I don't have a problem with
something running on a generic PC and talking to a 51-series box.

I've seen 3rd-party OPC servers for the I/A, but no clients.  The only
client
I've come across is the one from Foxboro, but that requires an AW70, as far
as I
can tell.

The data is monitor-only and extreme robustness of the system is not
required
(if it were, I wouldn't be using OPC in the first place ;-).

Any pointers or, better yet, actual application experience in this area
would be
most helpful.

TIA,

Corey Clingo
Sr. Engineer
BASF Corporation



---
This list is neither sponsored nor endorsed by the Foxboro Company. All 
postings from this list are the work of list subscribers and no warranty 
is made or implied as to the accuracy of any information disseminated 
through this medium. By subscribing to this list you agree to hold the 
list sponsor(s) blameless for any and all mishaps which might occur due to 
your application of information received from this mailing list.

To be removed from this list, send mail to 
[EMAIL PROTECTED] 
with unsubscribe foxboro in the Subject. Or, send any mail to
[EMAIL PROTECTED]

---
This list is neither sponsored nor endorsed by the Foxboro Company. All 
postings from this list are the work of list subscribers and no warranty 
is made or implied as to the accuracy of any information disseminated 
through this medium. By subscribing to this list you agree to hold the 
list sponsor(s) blameless for any and all mishaps which might occur due to 
your application of information received from this mailing list.

To be removed from this list, send mail to 
[EMAIL PROTECTED] 
with unsubscribe foxboro in the Subject. Or, send any mail to
[EMAIL PROTECTED]




Re: OPC client for I/A?

2001-07-09 Thread Bakke, Richard A

Corey,
We are have been using the Matrikon OPC server for almost a year to make I/A
points (740 points so far) available to our mill info system, and to send a few
values back to I/A.  The Matrikon OPC server is running on an NT box and
communicates via ethernet to an AW51B to open FoxAPI lists.  It is working very
well.

The only slight issue I have is that they are not currently making use of the change
delta, so all the values are sent each time period (we are currently using 10 sec,
which is the max period).  We have been encouraging them to do this, though we have
not had any trouble with LAN loading to date.

Rich



Corey R Clingo wrote:

 Hello all,

 I'm looking for a way(s) to get data from 3rd-party OPC servers into points on
 an I/A system.  I'd rather not buy an AW70, as we don't have any now and are
 looking to do this as cheaply as possible, but I don't have a problem with
 something running on a generic PC and talking to a 51-series box.

 I've seen 3rd-party OPC servers for the I/A, but no clients.  The only client
 I've come across is the one from Foxboro, but that requires an AW70, as far as I
 can tell.

 The data is monitor-only and extreme robustness of the system is not required
 (if it were, I wouldn't be using OPC in the first place ;-).

 Any pointers or, better yet, actual application experience in this area would be
 most helpful.

 TIA,

 Corey Clingo
 Sr. Engineer
 BASF Corporation

 ---
 This list is neither sponsored nor endorsed by the Foxboro Company. All
 postings from this list are the work of list subscribers and no warranty
 is made or implied as to the accuracy of any information disseminated
 through this medium. By subscribing to this list you agree to hold the
 list sponsor(s) blameless for any and all mishaps which might occur due to
 your application of information received from this mailing list.

 To be removed from this list, send mail to
 [EMAIL PROTECTED]
 with unsubscribe foxboro in the Subject. Or, send any mail to
 [EMAIL PROTECTED]


---
This list is neither sponsored nor endorsed by the Foxboro Company. All 
postings from this list are the work of list subscribers and no warranty 
is made or implied as to the accuracy of any information disseminated 
through this medium. By subscribing to this list you agree to hold the 
list sponsor(s) blameless for any and all mishaps which might occur due to 
your application of information received from this mailing list.

To be removed from this list, send mail to 
[EMAIL PROTECTED] 
with unsubscribe foxboro in the Subject. Or, send any mail to
[EMAIL PROTECTED]




RE: HLBL REF.

2001-07-09 Thread Stear, Bo

What Alex did NOT mention although I feel he should have, is that using setpars should 
be avoided period.  There are other more graceful (omset class) methods that are not 
nearly as dangerous.

-Original Message-
From: Johnson, Alex (Foxboro) [mailto:[EMAIL PROTECTED]]
Sent: Monday, July 09, 2001 12:22 PM
To: Foxboro DCS Mail List
Subject: RE: HLBL REF.


Re: Sequence Block Resources

HLBL is slow. Each line of HLBL code is roughly equivalent to the CPU
requirements of an AIN block.

External references to CBPs in the same CP take even longer.



Re: Setting External OM Variables from within HLBL

HLBL allows OM variables (C:B.Ps and SVs) to be set directly using the
following syntax:

:variableName := value;

where 

variableName is a C:B.P name or a Shared Variable Name
value is the new value for the variable.

The leading colon is required. Two examples are:


:TOWER:OVRHD_LEVEL.SPT := 50.0;


:WP0001DMCMD := dmcmd applic /opt/prog/myScript $DMNAME ;


NAME := SN0001, DMCMD;
:'NAME' := dmcmd applic /opt/prog/myScript $DMNAME ;



This is documented in the appropriate manuals.


There are a couple of gotchas though:

1) If the variable being set is secured or missing, you will get an
operational error that will either cause an SBX to be fired or suspend the
block.
2) Each external reference suspends the execution of the HLBL code for one
block period if the target is outside the CP. If the target is inside the
CP, the call does not suspend the code, but it can take quite a long time.


The former issue is difficult to handle properly if one has several external
references in the code since they will all fire the same SBX and you will
probably want different handling for each case. Personally, I do not use
this approach. I prefer to use a program like cpShell and send it messages
from SENDCONF (see below).


The second issue causes subtle problems in the code. I had one customer call
because his emergency shutdown logic took 10s to execute and it was only 20
lines of code. The problem was that he did not know about the suspension of
execution on an external reference. Since his block ran every 0.5 seconds
though, 10s to execute the code was as good as he could expect.

There is no workaround for this delay other than to not use external
references, i.e., connect the targets to the output of the block. Of course,
that can lead to conflicts with the operator if the operator needs to set
the same targets.



Re: Executing Scripts and Programs from a Sequence Block

There was a long discussion on how to run scripts on demand. The options
boil down to:


*   Using the external reference capability of HLBL to set the DMCMD
global of a DM/FV instance
*   Using SENDMSG or SENDCONF to send a message to a program that will
execute the command.


There are issues with the first approach related to error handling, i.e.,
what happens and how do you handle it if the DMCMD variable does not exist
or someone overrides your command before it can be executed. These are
actually quite difficult to handle.


The latter approach is much more controllable. The SENDCONF command has a
timer. It suspends execution of the sequence block and sets the SUSPND
parameter. When the SUSPND parameter is reset or the timer expires, the
sequence block awakes. If it awakes because of a timeout, the flow of
control goes to a particular part of your logic associated with exactly that
failure. If it awakes because the SUSPND parameter is reset, the flow of
control moves to the next line.


Sadly, we do not ship such an application with the standard system. However,
you can get a copy of one by ordering cpShell. This is a VAS-IT item which
means that it is sold as reusable application engineering. It is licensed on
a per unit basis where we trust you to have a reasonable process unit.


To order, tell your account rep that you want:


Part No: VAS-IT
Description: cpShell for Solaris
Order Type: ZZPB or ZZPR 
Item Tag: cpShell for Solaris
Special Shipping Instructions: Contact Ruby Chapman in Houston to fill the
cpShell order.
Delivery: 4 to 8 weeks ARO.
List Price (US): 2,200 USD


I'll send you the manual separately.


I'm sure that there are others with similar products.



Regards,


Alex Johnson
10707 Haddington
Houston, TX 77043
713.722.2859 (office)
713.722.2700 (switchboard)
713.932.0222 (fax)
[EMAIL PROTECTED] mailto:[EMAIL PROTECTED] 


-Original Message-
From:   Jones, Charles R. (Chuck) [SMTP:[EMAIL PROTECTED]]
Sent:   Monday, July 09, 2001 8:59 AM
To: 'Foxboro DCS Mail List'
Subject:RE: HLBL REF.

If the operators can interact with the process, I recommend putting
GDEV
blocks to AUTO (then WAIT 2 seconds for the block to see it) right
before
you use each one.  It is the only way to be sure that the GDEV will
be in
the correct auto/manual state when you need it to be.  If you are
going to
change state on several 

RE: HLBL REF.

2001-07-09 Thread Johnson, Alex (Foxboro)

Okay, I'll say it.


My advice is do not use setpars on a running system. It is intended as an
application engineering support tool, e.g., to put CP's in simulation mode.


There are some places where its use can be considered to be appropriate,
e.g., setting some parameters like Computer Control timers, but they are
pretty few and far between. Many of these special cases can be dealt with
using the ICC Driver Task which at least checks for other configurators
being used on the target station.



Regards,


Alex Johnson
10707 Haddington
Houston, TX 77043
713.722.2859 (office)
713.722.2700 (switchboard)
713.932.0222 (fax)
[EMAIL PROTECTED] mailto:[EMAIL PROTECTED] 


-Original Message-
From:   Stear, Bo [SMTP:[EMAIL PROTECTED]]
Sent:   Monday, July 09, 2001 10:33 AM
To: 'Foxboro DCS Mail List'
Subject:RE: HLBL REF.

What Alex did NOT mention although I feel he should have, is that
using setpars should be avoided period.  There are other more graceful
(omset class) methods that are not nearly as dangerous.

-Original Message-
From: Johnson, Alex (Foxboro) [mailto:[EMAIL PROTECTED]]
Sent: Monday, July 09, 2001 12:22 PM
To: Foxboro DCS Mail List
Subject: RE: HLBL REF.


Re: Sequence Block Resources

HLBL is slow. Each line of HLBL code is roughly equivalent to the
CPU
requirements of an AIN block.

External references to CBPs in the same CP take even longer.



Re: Setting External OM Variables from within HLBL

HLBL allows OM variables (C:B.Ps and SVs) to be set directly using
the
following syntax:

:variableName := value;

where 

variableName is a C:B.P name or a Shared Variable Name
value is the new value for the variable.

The leading colon is required. Two examples are:


:TOWER:OVRHD_LEVEL.SPT := 50.0;


:WP0001DMCMD := dmcmd applic /opt/prog/myScript $DMNAME ;


NAME := SN0001, DMCMD;
:'NAME' := dmcmd applic /opt/prog/myScript $DMNAME ;



This is documented in the appropriate manuals.


There are a couple of gotchas though:

1) If the variable being set is secured or missing, you will get an
operational error that will either cause an SBX to be fired or
suspend the
block.
2) Each external reference suspends the execution of the HLBL code
for one
block period if the target is outside the CP. If the target is
inside the
CP, the call does not suspend the code, but it can take quite a long
time.


The former issue is difficult to handle properly if one has several
external
references in the code since they will all fire the same SBX and you
will
probably want different handling for each case. Personally, I do not
use
this approach. I prefer to use a program like cpShell and send it
messages
from SENDCONF (see below).


The second issue causes subtle problems in the code. I had one
customer call
because his emergency shutdown logic took 10s to execute and it was
only 20
lines of code. The problem was that he did not know about the
suspension of
execution on an external reference. Since his block ran every 0.5
seconds
though, 10s to execute the code was as good as he could expect.

There is no workaround for this delay other than to not use external
references, i.e., connect the targets to the output of the block. Of
course,
that can lead to conflicts with the operator if the operator needs
to set
the same targets.



Re: Executing Scripts and Programs from a Sequence Block

There was a long discussion on how to run scripts on demand. The
options
boil down to:


*   Using the external reference capability of HLBL to set the
DMCMD
global of a DM/FV instance
*   Using SENDMSG or SENDCONF to send a message to a program
that will
execute the command.


There are issues with the first approach related to error handling,
i.e.,
what happens and how do you handle it if the DMCMD variable does not
exist
or someone overrides your command before it can be executed. These
are
actually quite difficult to handle.


The latter approach is much more controllable. The SENDCONF command
has a
timer. It suspends execution of the sequence block and sets the
SUSPND
parameter. When the SUSPND parameter is reset or the timer expires,
the
sequence block awakes. If it awakes because of a timeout, the flow
of
control goes to a particular part of your logic associated with
exactly that
failure. If it awakes because the SUSPND parameter is reset, the
flow of
control moves to the next line.


Sadly, we do not ship such an application with the standard system.

RE: HLBL REF

2001-07-09 Thread Fitzgerrell Kevin

Ken,

To efficiently set the appropriate state of a number of blocks at the
same time I use a calc or logic block.  I trigger the calc block with a
boolean input that can be pulsed from a display (momentary contact) or
from sequence logic.  The calc block uses an appropriate OSP to toggle
on and off a boolean output to which the the AUTSW of the target blocks
is connected.  The same block can also pulse the appropriate REMSW or
LOCSW when setting the state of control blocks.

This approach is, I feel, more efficient than setting the state of each
block from within sequence logic, and easier to maintain and
troubleshoot than UNIX level scripts.  It is also re-usable.  As long
as attention is paid to what blocks are connected to which logic, the
state change logic can be shared by multiple sequence logic blocks and
buttons on operator graphics.  The calc block can have multiple
triggers for a variety of desired states.

Regards,

Kevin FitzGerrell


 --- [EMAIL PROTECTED] wrote:  
 Thanks for the input,
 
 I have a script that places all GDEV blocks in auto. How would you
 use this
 in HLBL. I would like to place all GDEV's in auto at the beginning of
 the
 Sequence Logic.
 
 thanks in advance
 Ken Moore
 NSCC
 




---
This list is neither sponsored nor endorsed by the Foxboro Company. All 
postings from this list are the work of list subscribers and no warranty 
is made or implied as to the accuracy of any information disseminated 
through this medium. By subscribing to this list you agree to hold the 
list sponsor(s) blameless for any and all mishaps which might occur due to 
your application of information received from this mailing list.

To be removed from this list, send mail to 
[EMAIL PROTECTED] 
with unsubscribe foxboro in the Subject. Or, send any mail to
[EMAIL PROTECTED]




RE: HLBL REF.

2001-07-09 Thread Ken . E . Moore


After speaking with our former application engineer, I agree that the
setpars is not what we want to do.
We currently only use the setpars tool after an unusual event, it is not
used on a routine basis, the display
with the call button is not nomally accessible.

Do you recommend running a checkpoint after every use of the setpars tool?


Ken Moore
NSCC




Johnson, Alex (Foxboro) [EMAIL PROTECTED]
@lists.TheCassandraProject.org on 07/09/2001 13:23:44

Please respond to Foxboro DCS Mail List
  [EMAIL PROTECTED]

Sent by:  [EMAIL PROTECTED]


To:   Foxboro DCS Mail List [EMAIL PROTECTED]
cc:
Subject:  RE: HLBL REF.


Setpars is a pretty powerful tool. I hope you are very careful with its
use.
It will make changes to the CP that are not reflected in the checkpoint
file
or the workfile.


Regards,


Alex Johnson
10707 Haddington
Houston, TX 77043
713.722.2859 (office)
713.722.2700 (switchboard)
713.932.0222 (fax)
[EMAIL PROTECTED] mailto:[EMAIL PROTECTED]


 -Original Message-
 From: [EMAIL PROTECTED] [SMTP:[EMAIL PROTECTED]]
 Sent: Monday, July 09, 2001 9:52 AM
 To:  Foxboro DCS Mail List
 Subject:  RE: HLBL REF.


 It is a Unix script, currently called via a foxview button , I would
like
 to include this in the sequence logic if possible.
 The script utilizes  the setpars  tool found in
/opt/fox/bin/tools.



 Ken Moore
 NSCC




 Jones, Charles R. (Chuck) [EMAIL PROTECTED]
 @lists.TheCassandraProject.org on 07/09/2001 11:59:08

 Please respond to Foxboro DCS Mail List
   [EMAIL PROTECTED]

 Sent by:  [EMAIL PROTECTED]


 To:   'Foxboro DCS Mail List'
[EMAIL PROTECTED]
 cc:
 Subject:  RE: HLBL REF.


 If the operators can interact with the process, I recommend putting
GDEV
 blocks to AUTO (then WAIT 2 seconds for the block to see it) right
before
 you use each one.  It is the only way to be sure that the GDEV will
be in
 the correct auto/manual state when you need it to be.  If you are
going to
 change state on several GDEVs, then you can put them all to AUTO
followed
 by
 only one WAIT statement.

 If you want to call the script that you have already written, then I
am
 going to have flex a few thoughts to remember how to do that.
Depending on
 how you wrote the UNIX script, I believe that it may be a more
efficient
 use
 of resources to rewrite it in HLBL.  Is it a UNIX script, PERL, C
code, or
 --Heaven forbid-- JAVA?  (I am assuming UNIX.)  Does the script use
Object
 Manager calls or API calls?

 I'm curious now.  Does any one know if HLBL is the most efficient
use of
 resources in this case?  Does anyone know how to call an external
script
 from within HLBL?

 Chuck Jones
 Refinery Automation Technologist
 A.E. Staley Mfg. Co. -- Lafayette South Plant
 765.477.5324 - Office  | 765.420.4431- Pager

 -Original Message-
 From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
 Sent: Monday, July 09, 2001 5:17 AM
 To: Foxboro DCS Mail List
 Subject: RE: HLBL REF.



 Thanks for the input,

 I have a script that places all GDEV blocks in auto. How would you
use this
 in HLBL. I would like to place all GDEV's in auto at the beginning
of the
 Sequence Logic.

 thanks in advance
 Ken Moore
 NSCC

 This e-mail and any files transmitted with it are confidential and
intended
 solely for the use of the individual or entity to whom they are
addressed.
 If you are not the intended recipient or the person responsible for
 delivering the e-mail to the intended recipient, be advised that you
have
 received this e-mail in error, and that any use, dissemination,
forwarding,
 printing, or copying of this e-mail is strictly prohibited.  If you
have
 received this e-mail in error, please notify the TLNA HELPDESK at
 800-404-2436 or e-mail [EMAIL PROTECTED]


---
 This list is neither sponsored nor endorsed by the Foxboro Company.
All
 postings from this list are the work of list subscribers and no
warranty
 is made or implied as to the accuracy of any information
disseminated
 through this medium. By subscribing to this list you agree to hold
the
 list sponsor(s) blameless for any and all mishaps which might occur
due to
 your application of information received from this mailing list.

 To be removed from this list, send mail to
 [EMAIL PROTECTED]
 with unsubscribe foxboro in the Subject. Or, send any mail to
 [EMAIL PROTECTED]




 IMPORTANT NOTICE:
 This email is confidential, may be legally privileged, and is for
the
 intended recipient only.  Access, disclosure, copying, distribution,
or
 reliance on any of it by anyone else is prohibited and may be a
criminal
 offence.  Please delete if obtained in error and email confirmation
to 

RE: HLBL REF.

2001-07-09 Thread Johnson, Alex (Foxboro)

Depends on what you are trying to do. If you want to the change to survive a
reboot, it must be reflected in the checkpoint file.

What are you doing that requires the use of setpars?


Regards,


Alex Johnson
10707 Haddington
Houston, TX 77043
713.722.2859 (office)
713.722.2700 (switchboard)
713.932.0222 (fax)
[EMAIL PROTECTED] mailto:[EMAIL PROTECTED] 


-Original Message-
From:   [EMAIL PROTECTED] [SMTP:[EMAIL PROTECTED]]
Sent:   Monday, July 09, 2001 4:29 PM
To: Foxboro DCS Mail List
Subject:RE: HLBL REF.


After speaking with our former application engineer, I agree that
the
setpars is not what we want to do.
We currently only use the setpars tool after an unusual event, it
is not
used on a routine basis, the display
with the call button is not nomally accessible.

Do you recommend running a checkpoint after every use of the setpars
tool?


Ken Moore
NSCC




Johnson, Alex (Foxboro) [EMAIL PROTECTED]
@lists.TheCassandraProject.org on 07/09/2001 13:23:44

Please respond to Foxboro DCS Mail List
  [EMAIL PROTECTED]

Sent by:  [EMAIL PROTECTED]


To:   Foxboro DCS Mail List [EMAIL PROTECTED]
cc:
Subject:  RE: HLBL REF.


Setpars is a pretty powerful tool. I hope you are very careful with
its
use.
It will make changes to the CP that are not reflected in the
checkpoint
file
or the workfile.


Regards,


Alex Johnson
10707 Haddington
Houston, TX 77043
713.722.2859 (office)
713.722.2700 (switchboard)
713.932.0222 (fax)
[EMAIL PROTECTED] mailto:[EMAIL PROTECTED]


 -Original Message-
 From: [EMAIL PROTECTED]
[SMTP:[EMAIL PROTECTED]]
 Sent: Monday, July 09, 2001 9:52 AM
 To:  Foxboro DCS Mail List
 Subject:  RE: HLBL REF.


 It is a Unix script, currently called via a foxview button , I
would
like
 to include this in the sequence logic if possible.
 The script utilizes  the setpars  tool found in
/opt/fox/bin/tools.



 Ken Moore
 NSCC




 Jones, Charles R. (Chuck) [EMAIL PROTECTED]
 @lists.TheCassandraProject.org on 07/09/2001 11:59:08

 Please respond to Foxboro DCS Mail List
   [EMAIL PROTECTED]

 Sent by:  [EMAIL PROTECTED]


 To:   'Foxboro DCS Mail List'
[EMAIL PROTECTED]
 cc:
 Subject:  RE: HLBL REF.


 If the operators can interact with the process, I recommend
putting
GDEV
 blocks to AUTO (then WAIT 2 seconds for the block to see it)
right
before
 you use each one.  It is the only way to be sure that the GDEV
will
be in
 the correct auto/manual state when you need it to be.  If you
are
going to
 change state on several GDEVs, then you can put them all to
AUTO
followed
 by
 only one WAIT statement.

 If you want to call the script that you have already written,
then I
am
 going to have flex a few thoughts to remember how to do that.
Depending on
 how you wrote the UNIX script, I believe that it may be a more
efficient
 use
 of resources to rewrite it in HLBL.  Is it a UNIX script, PERL,
C
code, or
 --Heaven forbid-- JAVA?  (I am assuming UNIX.)  Does the script
use
Object
 Manager calls or API calls?

 I'm curious now.  Does any one know if HLBL is the most
efficient
use of
 resources in this case?  Does anyone know how to call an
external
script
 from within HLBL?

 Chuck Jones
 Refinery Automation Technologist
 A.E. Staley Mfg. Co. -- Lafayette South Plant
 765.477.5324 - Office  | 765.420.4431- Pager

 -Original Message-
 From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
 Sent: Monday, July 09, 2001 5:17 AM
 To: Foxboro DCS Mail List
 Subject: RE: HLBL REF.



 Thanks for the input,

 I have a script that places all GDEV blocks in auto. How would
you
use this
 in HLBL. I would like to place all GDEV's in auto at the
beginning
of the
 Sequence Logic.

 thanks in advance
 Ken Moore
 NSCC

 This e-mail and any files transmitted with it are confidential
and
intended
 solely for the use of the individual or entity to whom they are
addressed.
 If you are not the intended recipient or the person 

Synchronization (was RE: HLBL REF.)

2001-07-09 Thread kevin . fitzgerrell


Corey,

It is critical that the CSA database, the station volume workfile and the
checkpoint file stay synchronized.  Because parameters are constantly
changing on the CP, it is normal that the setable parameters in the CP will
not match the other files, although the non-settable parameters must match.

There are several things that can cause a problem between CP, CSA, station
workfile and checkpoint file.  Some of these include:
1) Power failure or system reboot during ICC session
2) Improper exit from ICC
3) Tape restore
4) setpars
5) CSA tools
6) ICC use with severe station overloading
Other causes probably exist.  Corruption of CSA, work file or checkpoint
file is possible too.  Of the list above, #1 is the one I have seen most
often.  Typically, an ICC session is left open and is still open when the
computer or xterminal it is running on is rebooted (before checkpoint).
Tape restore of an AP or AW is a tricky one.  If changes have been made in
ICC since the tape you are restoring from was made, and if no current
SaveAlls exist, you will probably need to restore from tape, reboot the CP
(to checkpoint file from tape) and re-create the changes in ICC made after
the tape.

A couple of items that may not be obvious:
1) Upload only updates settable parameters from CP to workfile.  Assumption
probably is that non-settable parameters shouldn't need to be updated from
CP.
2) A SaveAll is not made from the CP but from the workfile.  If setpars is
used to change a non-settable parameter on the CP, a SaveAll won't reflect
that change even after an upload.

Tools are available for troubleshooting mismatches:
Select views parameters in CP.
iccprt views parameters in workfile.
dbvu views parameters in checkpoint file (-t option, needs checkpoint file,
map file and image file).
CSA_save exports an ascii copy of the CSA database.

Regards,

Kevin FitzGerrell
Systems Engineer
Foxboro New Zealand

Tel:  +64 (9) 573 7690
Fax:  +64 (9) 573 7691


   
  
Corey R Clingo 
  
[EMAIL PROTECTED]  To: Foxboro DCS Mail List 
[EMAIL PROTECTED]   
Sent by: cc:   
  
[EMAIL PROTECTED]Subject: RE: HLBL REF.
  
oject.org 
  
   
  
   
  
07/10/01 11:17 AM  
  
Please respond to Foxboro 
  
DCS Mail List 
  
   
  
   
  




OK, you've gone and confused me now (don't get the big head; it's not that
hard
to do ;-).

I am kind of new to I/A, and this whole checkpoint/workfile/CP's memory
thing
has me asking a lot of questions, to say the least.  I had thought that the
checkpoint at least was a direct copy of the CP's memory, but from what you
say
below this is not the case.  (Emotional state on discovering this
deleted...)

Sois there anything else supplied by Foxvensys that can make changes to
the
CP's memory that cannot be duplicated on-disk?

Corey Clingo
Sr. Engineer
BASF Corporation







Ken,

As others have stated, extreme caution should be taken when using setpars.

Anytime setpars is used for bulk changes it should be followed by an upload
and then a checkpoint (if you want the changes to be there in the event of
a reboot), because setpars makes active changes in the CP only, not in the
workfile or checkpoint file.
 setpars -- makes active change in CP
 upload -- updates settable parameters in CP to station workfile
 checkpoint -- builds new checkpoint file based on station workfile
One of the big dangers in using setpars is that it can change 

GC Analyzer Control

2001-07-09 Thread Loupe, Rory (RJ)

I am converting some old Foxboro SMS control schemes to run on I/A.  There
is some code that does validity, rate of change and time-out checking on
some GC data.  If the GC data is good the code does PID control with this
data (in the code itself, not through a PID block).  The analyzer has a
cycle time of 15 minutes and sets a boolean flag true for 60 seconds on a
fresh update.

I am trying to determine if I should stick with code from the SMS and
convert it to HLBL or use standard I/A blocks to accomplish the same thing.
My idea for I/A is to do validity, rate of change and time-out checking via
a CALC block.  Do the pid control via a PIDA block and on invalid GC data
put the block in manual and alarm.  Part of the problem with this approach
is tuning the PIDA block.  I have done an extensive step test and have come
up with tuning parameters (with a large reset time).  The testing of this
PIDA seems to be doing a good job, but the GC update time has me concerned
about timing issues.

Could someone suggest a solution to GC control on I/A?

Thanks,
Rory

---
This list is neither sponsored nor endorsed by the Foxboro Company. All 
postings from this list are the work of list subscribers and no warranty 
is made or implied as to the accuracy of any information disseminated 
through this medium. By subscribing to this list you agree to hold the 
list sponsor(s) blameless for any and all mishaps which might occur due to 
your application of information received from this mailing list.

To be removed from this list, send mail to 
[EMAIL PROTECTED] 
with unsubscribe foxboro in the Subject. Or, send any mail to
[EMAIL PROTECTED]