Wednesday 25 March 2009

Project manage your models

As ControlDraw has been used over the years by people working on large projects, there has of course been a spotlight on the progress of the development of the models. As a result of this there are now many facilities in CD to track and manage progress. For example the ability to set the Review status of diagrams, and to lock them when key milestones are achieved, the backup archive, the Reviewer and the compare functions. So, here quickly are the main functions that you should use for project managing your models.

First, backups and issues
Backing up is more than just a matter of not losing your models, it is a way of taking a snapshot of a model that can be used for comparison later.







Handling Review Meetings

Before - Backup (or better raise the Issue) and save the backup in an archive (ControlDraw makes this very easy)- then review the archive, do not develop the model in a review meeting. If you want to develop the model in a meeting call it a development meeting. And backup before.


After - use reviewer to compare before and after

Next , Diagram Review Status
Each diagram in a model has a review status, which you set from the diagram details or the list of diagrams in >Database >Views
You can use these to establish the progress on each diagram.
It is also good practise to lock diagram once they have been approved, issued for implementation and so on. As well as preventing accidental change to a diagram, locking them enables the finest level of version control whereby you can unlock a diagram, edit it, and then record the changes along with the reason for them.





Automatically Filling Instance Fields

It is possible to set up rules that ControlDraw uses to automatically populate instance data.
This can be done in two primary ways, Symbol Data values and Special Defaults
Special Defaults are entries that are made into the Default value when defining the fields in the
Data Designer
Options are:
!Left PTag # Use the left #letters of the Symbol Tagname
!Left UserText # Use the left #letters of the Symbol User Text
!Caption Use the Symbol Caption
!AltCaption Use the Symbol AltCaption
!Inherit Obtain the value from the same named field in the parent instance
!Script Calculate a tag using a
tagging script. This can use complex rules to work out a string value to enter
Symbol Data values are values set in in the Symbol Details - these set the value in the same named field in the symbol instances, overriding an other settings such as the Default value
This shows how it all works, click to enlarge




Monday 23 March 2009

Recipe to Equipment Linking




An EPE (Equipment Procedural Element) is a an object whose class has the Type set as Procedural that is contained on a diagram where the diagram class Has the Type set as Normal.

If the EPE is also shown on a diagram whose class has the Type set as Procedural eg Recipe Procedure, Unit Procedure, Operation or Phase then it is deduced that it is a Referred or Shared EPE

An RPE (Recipe Procedural Element) is a an object whose class has the Type set as Procedural that is contained on a diagram where the diagram class Has the Type set as Procedural 

If the EPE is directly referred to by using a SymbolClone or a SymbolCopy special object in the Recipe Procedure and it's Descendants then it is shown as (Referred)
If the EPE is not directly referred to but is the parent of an EPE that is also the child of an EPE on an equipment diagram then is is shown as (# Sharing) where # is the number of equipment diagrams that have the EPE.

State Based Control

There is a new White Paper on ControlGlobal.com called "The Benefits of State Based Control" written by David A. Huffman from ABB
Walt Boyes calls it a "very important white paper". It is quite good and I recommend readers, specially those working in the Continuous process industries, to download it. You have to register with ControlGlobal to get it, but that is worth doing anyway.
The paper does not claim that SBC is new, and indeed it is not. In fact SBC - or something very similar, has been the basis for a lot of ControlDraw models since CD was first introduced, in the mid 90's, and that itself was based on previous paper based ways of specifying State Based Control.
And in turn these models were often then implemented using SBC, and on a variety of systems.
The paper also suggest that implementing SBC is something that ABB with it's 800ax system has removed barriers to. That may be so, but the paper is short on details. Interestingly one of the systems that CD models have been used to spcify (and frequently) is Sattline, now owned by ABB themselves. A little known fact is that 800ax is a direct descendant of Sattline, a system that can probably claim to have been the first object oriented DCS, it has been around since the 90's.

Friday 6 March 2009

Equipment v Recipe in ControlDraw

When I first had ControlDraw working properly, soon after the introduction of Version 2 and the object structure that exists to this day I dithered about whether there should be a separate Class for Equipment phases (etc) Object and Recipe Phases. I decided not to, as I found that the only difference was in their owners (in ControlDraw that is the Parent object that links to the Phase diagram,).

So, if you have a phase in a Recipe procedure that is not also in an equipment item then it must be a procedural phase, if it does exist in the equipment then it is an equipment phase. If in both then it is still an equipment phase, but is referenced by the corresponding Recipe Procedure phase.