Professional Documents
Culture Documents
ControlDraw Manual.
p1
ControlDraw Ltd
ControlDraw Manual
Table of Contents
Overview Introduction About the Help Diagrams and Symbols Hierarchies and Models Classes Symbols Words and Text Pictures Specifications Reference models Version Controls The Database Matrices Tag Naming Update Policy Support Printing Diagrams Signals and Connections Child Links Polymorphic Diagrams Associated Matrices SFC / Grafcet Phase PFC Procedure Function Chart SAMA Diagrams Logic Diagram Process Flow Diagram - PFD Process Flow Diagam (P & I D) Unit Diagram Equipment Module Diagram State Transition Forms Forms By Function Login Form Tip of the Day The Main Screen The Main Toolbar The Diagram Mode Toolbar Diagram List and Toolbar The Diagram Window The Page Text form Project Details Project Words Project Options Project Users View The Palette Page Browser The Outline form Symbol Controls Tag Balloons Text Control Tool Link Page Selector
p2
ControlDraw Ltd
7 7 8 8 9 10 10 11 12 12 13 14 15 15 16 17 17 17 18 18 19 19 21 21 22 22 23 24 24 26 27 27 27 28 29 29 30 30 31 31 32 33 34 34 35 35 36 37 38 39 40 41 42
ControlDraw Manual
Connection Controls Group controls Symbol Details Form Diagram Details Form Paste Properties Data Design Classes and Data Build Data Views Favorites Object and Instance Data Show Symbol Data Compare and Import Data Query Design form Shared Instance Query Builder The File Manager Tools Utilities Fonts Form Signal Styles Line Styles form Line Edit Form Arrows Matrix form Matrix Types Matrix State Rows Matrix Columns tab Run Mode controls State Matrix Run Controls The History view Compare models form Compare Form Tree Signal dynamics Picture Selector Shape Selector Paste Special Database Tagging and Numbering Custom Tagging Diagram Sorter Model Review Configure Rules Model Review Heirarchy Re-assign Links Form Global Find and Replace Registration Sequence Numbering About Publishing and Backing up View text only List View Find Symbols Embedded Picture Manager Global Find and Replace Set States Symbols Calculation symbols Tagging Scripts Data Management Understanding the ControlDraw Database
p3
ControlDraw Ltd
42 43 44 45 46 46 47 48 49 49 50 50 51 52 53 54 55 56 57 57 57 58 60 61 61 62 63 63 64 65 65 65 66 67 68 69 70 71 72 73 74 74 75 75 76 77 78 79 79 80 81 82 83 83 84 84
ControlDraw Manual
Objects and Instances Data rich models Object Tags RealTag Using SQL with ControlDraw models Data Entry and Display Methods Symbol Data Dynamics and Simulation Dynamic Simulation Run Mode Symbol Scripting Symbol dynamic types Scripting Symbol Wizard Signal Dynamics Set Symbol Selector AutoSFC What Happens in Run Mode Procedures Procedure Charts How to Start a Model Create Diagrams Edit Diagrams Make Connections Drop objects into connections Swap two symbols on a diagram Paste Special Import as Pages and Symbols Import a Matrix Importing Diagrams from Another Model Publish a revision Draw using a P&ID Rapid Model building In at the Deep End Navigate the model Change the Diagram Order Build and update the Data tables Create Recipe and Link their Procedures to Equipment Control Linking Recipe Procedures to Equipment Procedures RTF Editor RTF editor Form Guidelines Getting Started Creating Diagrams Guidelines for Diagrams General Modeling Guidelines Numbering systems S88 Models Publishing and Making Backups Managing ControlDraw Files S88 Modeling Guidelines Tips and Tricks Don't Cut and Paste, Move Reference LICENSE AGREEMENT Licences - Types, Updates and Renewals Special Symbols
p4
ControlDraw Ltd
85 86 87 87 88 88 88 89 89 89 90 92 92 93 94 94 95 95 95 96 96 97 98 98 99 100 100 100 101 102 102 103 103 104 104 104 104 105 106 106 107 107 107 107 108 108 109 109 110 110 111 112 112 112 113 114
ControlDraw Manual
Menus File Menu Edit Menu Navigate Menu View Menu Show Menu Tools Menu Database Menu Model Menu Window Menu Help Menu Menu Guide Sample Models ControlDraw Origins Conversion from Controldraw1 to ControlDraw2 Conversion from Controldraw1 to ControlDraw3 Quick Keys Text edit keys Import / Export Data Automatically Filling Instance Fields Number Automatically Sometimes Asked Questions Multi-User and Single User Modes Updating Models Reference model Updating Test Sheets Variant Tagnames External Tag Undo Changes Clipboard support Class Settings Complete Update Shrinking a model. Emergency Recovery Importing Pictures from another model Importing from another model Microsoft LDBView Error Messages Adding Text Lists to diagrams User Query Special Objects Clones Cross Referencing Options Defer Symbol Links display PFC Options Recipe Defer Functions Descended object linker Autoname connections Signal States Dynamics Diagram background Simulation AutoGenerate Scripts Process Flow Diagrams Piping and Instrument Diagrams Split Tagnames SAMA Model Review Reference Page 1 checks
p5
ControlDraw Ltd
116 116 117 117 117 118 118 118 118 119 119 120 120 121 122 123 123 124 124 124 125 125 126 127 127 128 128 129 129 129 130 130 131 131 133 133 134 134 135 135 136 137 138 139 139 141 142 142 143 143 143 144 145 145 145 145
ControlDraw Manual
Model Advisor Parent <> Class Object Class <> Symbol Class Classes in Parents Not allowed in Page Class Non Included Parent Classes Model File Structure Lost References Clones and Cross References Number Root and Number Exclude Hierarchical Tags Messages Cannot find Reference Model Missing Referenced Child diagrams SFC Draw Sequential Function Charts Overview Basic Step and Transition structure Chart Arrangement Options Chart Editing Start a Chart Add a Step Add Selection branch Add/Extend Parallel Step Deleting Parts of a Chart Arranging charts by dragging Links Arranging charts with Right Clicks Dragging between Steps Copying, Cutting and Pasting Logical consistency Recursive Links
146 146 146 146 147 147 147 147 147 147 148 148 148 149 149 149 150 150 151 152 153 153 154 155 155 156 156 156 156 157 158 158
p6
ControlDraw Ltd
ControlDraw Manual
Introduction
ControlDraw is a diagram processor. It provides drawing tools, text handling functions and an integrated database for the design, specification and documentation of Process Control Systems. With ControlDraw, hundreds of diagrams can be related each other through hierarchical links. Diagrams become reusable objects in a model of a process. ControlDraw provides the means to add data to the objects on the diagram s, for example instrument details or equipment parameters for each instance of each object on a diagram. All of the model is kept in one database file. ControlDraw is a database so all this data is available for use in other packages - for example to generate a database of instruments, or to build an Input output List or SCADA database derived from the drawings of the controlled process, or to create diagrams and statistics that you can use in documents such as management reports or presentations during the project. With ControlDraw you can: Draw diagrams by dragging and dropping sym bols and connecting them together. Note that these diagrams can be rich in data, so that they are meaningful, not just pictures. Build Models - hierarchically linked diagrams which you can 'drill down' from a high level overview to the smallest level of detail. Produce Specifications for any component in the model Interactively build state matrix tables to define the dynamic behaviour of objects in your model Draw a diagram once and then create multiple instances of the data associated with the diagram. Use Dynamic Simulation to illustrate and test your model Build libraries of re-usable modules or objects by using a Reference model. Store everything your project needs in a database that is tightly integrated with the diagrams. Keep a precise record of all changes as you develop the model through the Version Controls Create S88 Designs for Equipment Control of Units, Equipment Modules and Control Modules Define S88 Equipment Independent Recipes Link your S88 Recipes to the Equipment at the Phase, Operation or Unit Procedure Level ControlDraw provide a comprehensive and customisable database. It also includes a built in word processor, in the Project Overview, the Project Description and the Class and Diagram Descriptions where you can enter unlimited formatted RTF text. Sample models are provided, to illustrate modelling and also as a basis for reusable objects for your application The companion Print and Review programme provides tools for printing models and for recording comments during model development. Click to see the Forms you use to operate ControlDraw Learn about the Sample Models www.urswriter.com is web site that provides information on specifying Process Control Systems
This Manual has been produced in part with ControlDraw itself, and a ControlDraw model contains the master copies of all diagrams used in this manual. Fast-Help is used order to be able to generate the online, offline and old style help, and the manual from one source. -o-
ControlDraw Manual
This is the Help file for ControlDraw 3 1 This help file is relevant to ControlDraw version 3.6.1193 , but If you find any deficiencies please email comments@controldraw.co.uk 2 Most of the documentation effort goes into this Help file, the Manual, the Start templates and the Samples. In case of updates you may find additional help in >Help >Version >History 3 4 You can use Use the Browse buttons above right to the read chapters of the help file. The page you are reading is the page after the main contents Use Search to obtain a detailed alphabetically sorted list of contents
ControlDraw is designed to support ongoing development and indeed is often updated and improved. When you receive a new version, the changes from the last version are listed by using Help Version History Are there any features you would like to add and do you have any General comments? And PLEASE report any bugs you find. Please let us know by email to support@controldraw.co.uk Also please check the Version history and the Known Issues page before reporting a problem.
The connections to a symbol have a number of properties: They may have direction (They flow from an output of one Symbol to an Input of another) Each connection has a Signal Type, such as analog or digital. Inputs may only connect to one Source Outputs may connect to many Destinations The connections between Symbols must be compatible - for example an Analog output must connect to an Analog Input Connections can be modified using the Connections Control Panel Like symbols, diagrams have properties, many of which are similar or identical. In fact a diagram can be viewed as symbol, which is a container for other symbols, and a diagram has similar modeling properties to a symbol. ControlDraw includes symbols and styles for the following types of diagram. Type Grafcet / Sequential function charts(SFC) SAMA Loops Typical Use Sequential Logic, Modulating Control schemes p8
ControlDraw Ltd
ControlDraw Manual
Logic Ladder Procedure Function Charts (PFC) Process Flow State Transition System Flowchart diagrams Entity Relationship Equipment Module
On/Off Control, Interlock Logic On/Off Control, Interlock Logic S88 Recipe Procedures Small schematic diagrams of the controlled plant Unit State logic Control system network diagrams Software Design Systems Analysis, Software Design S88 Equipment Module graphics and states
ControlDraw is not limited to this set of diagrams, since you can create your own sym bols to use as you wish, and you can define your own Drawing Types. You can also mix the types in one page. In fact Control Draw makes no distinction between the diagram types - they are just a convenient way of selecting the set of symbols you want to put into a diagram. The easiest way of seeing the available standard symbols is to use the Symbols Palette. Using the Model Validation functions, the class of a page can be used to determine the class of objects that are allowed on the page. See also Special Symbols -o-
Jump Links
ControlDraw does not restrict your model to a hierarchical structure however, you can use it as well to produce flat models. And even to combine the two Links do not need to be parent child, jump links proved a way of linking diagrams to be able to follow through a process or to see relevant information that is defined on another page. Hierarchical models support Instances flat models do not. You can also define polymorphic diagrams to show generic objects which have variants in each instance. p9
ControlDraw Ltd
ControlDraw Manual
ControlDraw includes model menu options which can be used to configure and validate a m odel. Data in a model can be divided into sections such as Process Cells or Units by using Streams Please note Model templates can be developed on a specific basis for individual clients. -o-
Classes
All ControlDraw diagrams and symbols are given a class. Class identifies the type of information a page or symbol represents and is significant in models, and the database. A number of classes, heavily influenced by S88.01, are provided with the standard Control Draw library. You can see and modify the classes from the Data Views form. The class of a diagram is set when you first create a diagram, but can be changed in the Diagram Details The class of an object is established originally by the Symbol that is first dropped onto a drawing, but can be changed in the Symbol Controls. Each Class has a large number of properties, described in the section Class Settings. Class is used for: Determining what data should be stored for the object and instances associated with a symbol Establishing validation rules for the model Setting hierarchical tag numbering rules Setting Test Sheet options Determining the drawing right click quick draw options The Class of an object or page is an important aspect of a model, and so ControlDraw supports many additional features to help to manage the classes. A toolbar button toggles the display of the classes of each object on the diagrams. Model rules that check the consistency of diagrams and links are based on the classes. Sequential Function chart numbering and dynamics are based on the classes Class names must be unique. In order for data to be stored with classes they must be Included in Tables in the Data Design
-o-
Symbols
Symbol are objects which are connected to each other by Signals. A Symbol represents an Action, an Event, a State, a Physical item or a Processing function - or your own idea. Symbols have a number of properties: Those which identify the symbol Tagname Object tags User text Those which affect their Appearance: Picture Colours Size and Position Text settings - format Those which affect their position in Models Link page Link Type Class Control Draw includes a large set of standard symbols. These can be dragged from the symbols palette onto a diagram and of course copied and pasted. When a new symbol is added to a diagram the symbol gets the values for the following attributes from p10
ControlDraw Ltd
ControlDraw Manual
the palette: Class Fill colours Text style Text alignment Border style Shape Picture Then you may alter the.position, the size and all attributes of the symbol using the Symbol Controls The Symbol details form provides a view of an object and it's connections. The Symbol Dynamics form allows you to enter and test the object expression, and to set the dynamic appearance of a symbol. Multi selection You can select several symbols by clicking them with the mouse by clicking them whilst simultaneously holding down the the shift or control key. Then you can change any or all of the properties of the selected objects or connections with a few mouse click See also Special Symbols -o-
ControlDraw Manual
a suitable tag naming scheme ControlDraw can (in future) automatically derive these tagnames from the model and your tagging schemes logic. Drawing Objects also have two Captions field. These provides extra 32 Ch text properties for each object. It can be entered from the Data Views or the View text only forms. This could be used for example to define a Step message for each step in an SFC.
-o-
Pictures
Diagrams are not pictures, but they often contain them. A Symbol can contain a picture. The picture that is used for a Symbol is initially determined by the object you select to put on a drawing. However, you can change this to any other picture or to one of many shapes. Use the Picture Selector to select a picture. ControlDraw provides a large collection of useful pictures in the Pictures Folders, if you need other ones then you can copy them from another application or create your own using the Windows Paintbrush program or any drawing package that can create Windows graphics files (bitmaps, gifs, metafiles, jpg files, icons) You can also obtain the Symbol Factory which includes a wide range of professionaly designed pictures that are also compatible with several SCADA package. See www.reichard.com Paste Special includes Paste Picture into selected Object. If you have just one symbol selected then you can paste a picture into it. As soon As you select a picture file or paste one in it is stored In the ControlDraw file. You can change the Standard, User, and dynamic picture paths when you are in the picture browser. If you open the picture browser to change an Object picture you can change the Standard or User picture path. If you browse For a dynamic picture from the Object expressions form you can change the dynamic path. Note - If Embed pictures is Set (As per default) In File Properties Options then you can freely change directories and browse for any picture from anywhere On your PC. You can make the picture in a symbol the Child Page Diagram (or Icon if one has been set) by checking "Use Child Diagram" In the symbol Details. ControlDraw stores a copy of each picture that is used in a model within the ControlDraw file. If you delete objects from a model their associated pictures are not deleted, since they may be needed by another object. Also pasting pictures in can produce excessive files sizes. The Embedded Picture Manager can be used to resolve this. -o-
Specifications
ControlDraw is intended to be used for writing specifications for Process Control systems. Control systems have many diverse and complex aspects, and specifying them can involve many things. So of course it can produce many types of specifications. Requirements Specifications Functional Specifications Control System Software Specifications Instrument Specifications Validation Specifications Specifications have no value if you cannot test whether or not they have been achieved. An provided that the specification was for a meaurable thing then a Spec written in CD should be able to generate all the measurable values you need for the 'tick box' test record. And a container that can alos hold the necessary words and templates The makeup of all specifications comprises some or all of the following elements in the model: Words p12
ControlDraw Ltd
ControlDraw Manual
-o-
Reference models
Reference models are modular standards. They do most of the hard work of ensuring standard designs are followed. A model can be linked to a reference model in the Project Details form. When linking an area model to a reference model : The referenced diagrams and matrices are imported into the Area model The Area model classes classes, queries etc are synchronised to the reference model Subsequently, changes in the reference model are automatically reflected in the area model. The use of reference models enables large projects to be spit into several area models, and one reference model With a reference model you can manage a distributed project with a collection of separate ControlDraw 'area' models files and a single ControlDraw 'reference' models. The reference model contains the definitions of the Classes and shared modules, such as valves, motors, and generic mechanisms. Each model then contains a pointer to the reference m odel (in project options) so that shared pages get their diagrams and matrices from the reference model. In addition, all queries and pctures defined in a reference model are imported to the area model
When an Area model has a reference model and you open the model you are prompted to update the model from the reference model. This checks versions of the diagrams and updates newer ones. Referenced diagrams have links to a diagram in the reference model. The link is made by selecting 'use reference page' in the diagram details form and then selecting from the list. These links are by page ID, so if you change the order of the pages in the reference model there is no problem, the links retain their integrity. When you make an external reference to a page then the page is replaced by a copy of the page in the reference model. This is done by copying the objects from the reference model to the current model. p13
ControlDraw Ltd
ControlDraw Manual
This ensures that the related data is stored in the current model and that the current model retains it's integrity should it lose it's links with the reference model. When you open the page it is also checked against the reference model and updated if the reference model page has been updated. If you make a page link to a reference model but then deselect use reference page, the page then becomes a normal page in the model, which you can edit. NOTES Another way to add a referenced diagram is to import it using the File Manager. If a model has ever been used as a Reference model then a tab appears in Project Properties, 'Area Models'. This lists all the files that have ever been synchronised with the model. You can clear this list and then it will be rebuild one at a time when you synchronise an area model. A reference diagram can contain links to other diagrams in the reference model. This means that these diagrams should in general also be referenced in the area model. When you run a complete Synchronisation this can be done automatically. When synchronising referenced diagrams and the diagram has a child and that diagram is not is the model, as well as removing the link, ControlDraw now warns that it has done so and lists the m issing child pages. SetSymbol and CheckSymbol special objects that are in a Reference model do not work in the area model. Workaround. Since these symbols do not instantiate, there is no loss if data. Look at the reference model instead. Exclude reference diagrams when printing and print the reference model separately. How it works Each Diagram, Symbol and Martrix in a model has a unique ID, and can also have a Reference ID which is used to point to the relevant diagram or object in the reference model. In addition they also have a reference version which is the version of the referenced object when last synchronised. A similar technique is used for classes When an area model is synchronised the referenced diagrams are copied from the reference model to the area model. The version numbers are used to detect whether the classes, referenced diagrams and objects have changed and need updating. See also Reference model Updating
-o-
Version Controls
A considerable range of version management and tracking options are provided automatically by ControlDraw ControlDraw also provides a Publishing facility whereby you can raise the Issue of a model and then archive it for subsequent comparisons. The Version History form provides a view on the history of changes and easy access to the Compare form.
Model Version
Each Control Draw file has an overall version number. This is automatically incremented each time the file is opened for editing, then changed then closed. Note - this means that if you open and close a file several times during an editing session, the version will increment several times.
Issue Number
A ControlDraw file has an Issue number, having two parts, Major and Minor. The Major Issue is a number and Minor Issue is a letter, so a model has an Issue like 2C. Issue is printed on all printouts. Diagram and Object Version Numbers ControlDraw keeps a Version number for each diagram. This is the version number of the model when the last change was made. It is incremented once each time a new user edits the model.
p14
ControlDraw Ltd
ControlDraw Manual
Control Draw keeps track of the users of the system. When starting ControlDraw you are prompted to enter your name. This name is then stored with each diagram or object that you create or edit. The same applies to individual symbols and database records
Comparing Models
ControlDraw provides a compare facility with which you can see all the differences between two models
The Database
A ControlDraw model is an Access database. ControlDraw2 models are Access 97, CD3 uses Access2000, but can still edit CD2 (Access 97) Models. The model is populated with records automatically as you draw diagrams, and then can then be enriched with further data with a few clicks in the the Database forms, and of course some data entry. This contains the diagrams, the matrices and everything else. The Instances table records all of the occurrences of a particular Generic Symbol. This procreates the parent_child relationships in a drawing file to produce a record for all of the Parent children paths. The Instances table provides the interface to the real world of instrumentation and operators and system testing. For example you can generate lists of all of the points in a system as a test schedule. See also Understanding the ControlDraw Database And Data Designer -o-
Matrices
Control Draw provides extensive support for the generation, editing and saving of Matrix tables, for example Equipment State Matrices. Matrices can be used in many ways. For example to define the states of a module, or to map the procedural elements in your model into the physical elements. A matrix has Rows and Columns that can be derived from objects on the pages of a m odel, or manually entered. You can select which objects are included from the Columns and Rows Tabs in the matrix form. You can also manually add new rows and columns. You can set the cells of a matrix using interactive State matrix run controls form. Matrices can be printed independantly, or they can be place on a diagram by using the Special Object Symbols matrix type. If placed on a diagram the matrix reflects the current variantPolymorphicDiagrams The rows and columns for an empty matrix can be generated from objects on a drawing.
p15
ControlDraw Ltd
ControlDraw Manual
Matrix cells can show the dynamic states of the connected objects in drop down lists. Typically the Columns are Control Modules on an Equipment module page and the Rows are the states on the page but many more configurations are possible. When showing a matrix, if a tag name of a symbol that is used in a row or column has changed ControlDraw prompts and optionally changes the Row or column header to match the diagram tagname. Matrices can be used in many ways. For example to map the procedural elements in your model into the physical elements. You can select which diagram objects are included from the Cols/Rows Tab in the matrix form. You can also manually add new rows and columns The rows and columns that are connected to symbols in the model are highlighted by colouring the background of their tagnames. Green indicates that the tagname has not changed, yellow indicates the object is present but has a different tagname, and white indicates that the row or column is disconnected You can also re-connect symbols or change the symbol to which a row or column is connected. This is done by using the edit menu, or right clicking. and choosing Row Symbol or Column Symbol. You can also use this to find what page the symbol is one, or its class. You must first select a single column or row by clicking the column or row header to enable the Row or Column Symbol menus
Each matrix is stored in an Access table named tblMx# where # is an automatically assigned number which means that the column names should follow Access field naming rules. object-naming rules They can include any combination of letters, numbers, spaces, and special characters except a period (.), an exclamation point (!), an accent grave (`), and brackets ([ ]). Note that you also can't use leading spaces or control characters (ASCII values 0 to 31). -o-
Tag Naming
Each object in the system is identified by a collection of tagnames. All tagnames are optional. The more you use them the more powerfull the model and the more structure you need.
These are The Symbol Tag This is the tagname as it appears for each symbol on a diagram. t Note that some text positioning allows for splitting the tag name as is often seen on P&I Diagrams The Instance Tag Instance tagname provide a means of identifying each instance of the objects in a m odel An S88 oriented structure might be p16
ControlDraw Ltd
ControlDraw Manual
Area.Unit.Equipment Module.Control Module. See also RealTags The Object Tag See Object Tags Page Tags do not have to be unique even on one diagram. Object Tag have to be unique, Globally, so one object tag can only exist in one Class. See also Tagging and Numbering -o-
Update Policy
ControlDraw software is intended to improve continuously. There are frequent updates and these are made available to all licensed users. The updates are made available when a new feature has been added or improved - these releases are rolled up with bug fixes. Reverse and forward compatibility between versions and models is maintained over a 1 year reverse period and 3 year forward. That means that a model can be edited with a 1 year old version of the software and with the current version of the software in 3 years time. Please note however that an older version of the software will not support newer features, and a model that has been created with a newer version and then edited with an old version may not retain settings that were created with a newer version. At some point it may be that a new version is released that does not maintain reverse compatibility, so Previous versions of the software may not work with models edited with the new version. If that happens: ControlDraw will inform users in advance, typically via statem ents on the Web site. ControlDraw will continue to maintain the last version for licensed customers. In this case maintain means fix bugs, and this will only be done for 15 months after the release of the new version See also complete update
-o-
Support
You can obtain free support by email for ControlDraw for one year after registration or as covered by your support contract You can email any questions/suggestions to: questions@controldraw.co.uk Please visit our web site where the latest updates are available to licensed users www.controldraw.co.uk -o-
Printing
Everything in ControlDraw can be printed. This is done with a separate program, Print and Review. (New help file and manual on the way) There are a number of printing options that you can select to determine the content of your project publication. These are set from the Print Layout options form.Here you can choose: The fields of data in the model that you want to print What text to print What diagrams to print What matrices to print p17
ControlDraw Ltd
ControlDraw Manual
What data to print In addition there are several options that control how each section is printed, and page breaks.
-o-
p18
ControlDraw Ltd
ControlDraw Manual
-o-
Child Links
Symbols on a diagram can be linked to other diagrams as parents. Child pages are diagram which are linked to a parent Symbol. Symbols on Child diagram may themselves have further diagram underneath them. One child diagram may belong to several parents. This is done by attaching the parent symbols to the particular diagram - this uses no extra file space and provides Control Draw with the ability to subsequently count and populate the database with all instances of the Symbols objects. Thus, for example, if an object such as a Control Module occurs many times, the Control Module need be drawn once only. The presence of a child diagram under a symbol is indicated by a rectangle next to the sym bol, and a number (the child diagram number). Note - in fact a page is just the same whether it is a child or not. It is only the child property of symbol in a page that makes a child page instance exist. Setting the parent child link This can be done at various time with Control Draw. It is possible to draw all the pages and then link them with the Link page selector , or to create each new child page from the Link page selector The line colour and style of the child highlight box are set in the Preferences Optionally the actual child drawing name can also be displayed, by selecting View Child Name from the menus It is possible to nest drawings under drawings almost indefinitely, subject to overall Windows memory limitations. However, the Control Draw is limited to 8 levels in certain functions such as the D atabase instance class fields. It is highly recommended that you do not exceed this number of levels in your drawings
-o-
Polymorphic Diagrams
Each diagram has a 'Polymorphic' property. This is optional, it is set in the Diagram Details form. When set then a Selector panel appears at the top left of the diagram. As you select a variant it is shown on the diagram window,in both ControlDraw and the Reviewer.
Polymorphic diagrams are diagrams that have Variants - diagrams that do not have all the contents of the master version or that have different tagnames. An exclusion variant of a diagram is a subset of the master diagram, a Tagname variant uses different names for the objects. The two variant types can be mixed in one variant on a diagram, but a single symbol is either excluded or has a different tagname. Parts of the contents of the master diagram can be switched off in a Variant. For example some of the equipment modules in a Unit may not exist in a particular instance of the Unit. You can define a diagram Variant to show this. This means that you can draw a 'superset' diagram that covers all the alternative configurations of the particular type of object that you are drawing and then define via Variant tables the alternative versions of the unt. Also a symbol can have a different tagname in a variant. Variants cascade into the database build functions. p19
ControlDraw Ltd
ControlDraw Manual
In the parent objects of a Polymorphic diagram you can select which variant of the diagram to use. If you select a Child diagram that is polymorphic then ControlDraw prompts with a list of the page variants. You have to enter the variant number that you wish to use, or 0 to use the master, which has no objects excluded.
When in Tagnames mode, you can use "." to hide the Tag and child link, or "," to hide just the child link, so you can create a variant without all the clutter of links and tagnames, for example for Graphics. The list in variant tagnames shows these by colour. You can use Variants Special Symbols to display all the settings on the diagram
-o-
Associated Matrices
p20
ControlDraw Ltd
ControlDraw Manual
A ControlDraw diagram can be associated with a matrix in one of two ways The First is the Page matrix - each row of this matrix contains dynamic values of selected diagram symbols. The Second is the Set State matrix. this is used by the Special Object, SetMxState. This is a special sort of Transition for use in Grafcet and PFC Phase diagrams. When this object is dropped onto a diagram or double clicked, you are prompted with a list of the states in the Set State matrix that is associated with the page. Typically you would use this when drawing an equipment phase diagram. You build the Equipment module and then animate it, or at least create a state object or a row in the Equipm ent module matrix. Then you can make the steps of a sequence set the EM into EM states by picking from a list. These associations are set in the Diagram Details -o-
p21
ControlDraw Ltd
ControlDraw Manual
These greatly speed up SFC development. Right Clicking a step in an SFC shows a SFC item in the right click popup menu. In the SFC sub menu you can "Insert Step/Trans Below "- this adds a step and transition between the selected step and it's subsquent transition, and moves the subsequent steps and transitions down to make room. "Insert Branch Step" - this adds a branched step and transition "Delete Step and Preceding trans" removes the step and it's preceeding transition. If no page set state matrix is selected the next menu shows "No Page Set State Matrix, Click to set one" Otherwise the menu shows "Set State Matrix step" with a tick if the step is a set state type one. Clicking then prompts "Change this to a Set State Step?" or "Change this to a Normal Step?" "Sequence Numbering" calls up the Sequence Numbering form
-o-
-o-
SAMA Diagrams
p22
ControlDraw Ltd
ControlDraw Manual
SAMA diagrams are used to represent control loops and logic The standard presents symbols and a diagramming format for use in representing, primarily, control loops. SAMA types in ControlDraw do not strictly follow the standard, but it could by adding new symbols, some are provided in the sample models They are similar to Function Block Diagrams
-o-
Logic Diagram
Logic diagrams show typically logic using symbols for boolean operators such as AND, OR etc In ControlDraw such diagrams can be run in simulation mode to test the logic.
p23
ControlDraw Ltd
ControlDraw Manual
-o-
Using a matrix
-o-
p24
ControlDraw Ltd
ControlDraw Manual
This is another type, in this case using typical P&ID symbols but showing something that P&ID's never do - the states of the equipment and their settings.
Most Real P&ID's are much more intricate and have many things shown on them that are not important in the context of controlling and operating the plant, for example contruction details, pipe codes, vessle nozzle sizes and so on. And they cover a larger part of the process, for example one may contain the physical equipment for one or more units and resources. They have their place, but when it comes to a modularity they are too big. They are also too big for operating graphics - you need a huge screen for a start. And within one typical P&ID there will be several Equipment modules, Control Modules etc and little apart from notes about the functionality. One typical P&ID translates to 5 or more ControlDraw process flow type diagrams (20 may only require 50 or less). ControlDraw also supports higher level Process Flow diagrams that are more like Process Flowsheets, they show only the major equipment items that are often on one P&ID.
p25
ControlDraw Ltd
ControlDraw Manual
-o-
Unit Diagram
This is a type of diagram that represents an S88 unit, it's Equipment modules, Control Modules and the phases it can run. Symbols are explained in the S88Reference.cnd model.
-o-
ControlDraw Manual
allowed) the phases it can run. Symbols are explained in the S88Reference.cnd model.
-o-
-o-
Forms By Function
p27
ControlDraw Ltd
ControlDraw Manual
Database Forms
Data Designer allows you to define data to store beyond that which is shown on a diagram. Classes and Data Build provides tools to populate the database Data Views provides tools several tabular views of the data in the model. Show Symbol Data shows the data stored with a particular symbol and it's instances. Database Tagging and Numbering automatically sets Tagnames and Instance 'Real Tag's for the objects in the model Object Specifications shows the Object and Instance data associated symbol on a diagram.
Revision management
Publish and Backup Raise a revision or make day to day backups, as this also compacts the morel Compare Show the difference between models
Maintenance
About This shows the version of the program and the user data. The File manager maintain your models and import from one model to another. Model Review provides several ways of looking at the structure of your model and some correction facilities p28
ControlDraw Ltd
ControlDraw Manual
Tools Utilities Set the default modes, by removing unused pictures and connection points etc Embedded Picture Manager Shrink embedded pictures, delete unused ones and create rotated versions. Diagram Sorter Re-order all the diagrams in a model by various methods Registration How to obtain a license. Global Find and Replace
-o-
Login Form
When you start ControlDraw you have to provide a user name. This is then used to track the developers of the model. Each object (diagram, symbol, data design record, matrix) records the name of the user who first created it and last edited it. See also Version Controls The first time the user name defaults to your Windows Logon name but then remembers the last entry. You can choose to start in the file manager or reload the last project. Simple Menus This provides a reduced set of menus and functions for beginners and stops some messages. Show Training Tips Causes informative messages to be shown as the user works with ControlDraw
-o-
ControlDraw Manual
-o-
Window styles
Using the window Menu there is a choice of Multiple and Single window styles. In Single Style (Default): ControlDraw fixes the list of diagrams on the left of the workspace, and sizes the diagram to fit the space between the list and the right hand side of the workspace When this is selected you only have to click once on the list to open a diagram. If you do not select this then you m ay have several diagram opens at once, this is useful for working on a collection of sim ilar or related diagrams In Multiple Style You can open many diagrams at the same time. Diagrams appear in the same position they did last time -o-
ControlDraw Manual
-o-
You can move single symbols or groups with the cursor keys. Hold down shift and a cursor key to move the objects in larger steps. With a single object hold down Ctrl and a cursor key to change the size of the object. Note - Escape hides the Symbol Toolbox if it is showing Note Creation Mode is set by clicking the Drag to Create Note button, then afer you drag across the diagram you can enter the tagname and text.
-o-
ControlDraw Manual
You can open up a number of diagram pages in the model by double clicking in the page list or by clicking the Open Button When you add a new page from the List of pages it is inserted after the current page and it adopts the class of the current page. If running multi user and another person is also editing the model then you can only insert at the end and you cannot delete diagrams. Click an area for hepl
The form has a right click menu Replicate Diagram makes a copy of the currently selected diagram Synch Referenced Diagrams Prompts to synch all or only changed diagrams. Synch Referenced from here Synchronise diagram starting with the current diagram, so for example if you have Synchronised diagram up to 50, then stopped, you can continue from diagram 50. Find Diagram This does a forward search for diagrams whose name includes the string you enter. If a diagram is both locked and referenced this is shown in the list of diagrams by having the relevant colours in the first and second columns. Also if a diagram is read only it is now shown 100% size and not scrolled, if not read-only the last zoom and scroll are used. See also the Diagram sorter which provides a more powerful way of setting the order of the diagrams -o-
p32
ControlDraw Ltd
ControlDraw Manual
Shortcuts You can move single symbols or groups with the cursor keys. Hold down shift and a cursor key to move the objects in larger steps. Note - presss Escape to hide the symbol controls first With a single object hold down Ctrl and a cursor key to change the size of the object. You can swap two symbols by dragging one onto another. If the symbols are of a different class, start dragging then hold down shift before dropping. -o-
p33
ControlDraw Ltd
ControlDraw Manual
-o-
Project Details
This form provides a number of tabs to select different aspects. Click on the screen shot for m ore information.
Base model is the version number of the Default ControlDraw model when the model was created. If this is less than that of the current start database then when you open the model you are only prompted to ask if the model should be updated. Watermark is printed diagonally across the page when printing with the reviewer. You can select or de-select a Reference model from this form. -o-
Project Words
In the Overview and Detailed words tabs there is a field where you can enter unlimited formatted RTF text. This provides two documentation areas. these can be printed when selected in the print options form. These areas are stored in the ControlDraw model as RTF and can be edited in place or by using the RTF Editor. You can either edit the text in Situe as shown below or you can click RTF Editor button to open the text in the built in word processor. You can copy and paste the text to and from your word processor, with limitations (no tables).
p34
ControlDraw Ltd
ControlDraw Manual
-o-
Project Options
This is where you can select a reference mode You can also set many settings that determine the appearance of diagrams etc See also Cross Referencing Clones and PFC Options
Note Some optional settings, such as Show Clones can now be set for each diagram. The Page Details form now has a new tab Page Settings where you can set them -o-
p35
ControlDraw Ltd
ControlDraw Manual
Note A diagram is flagged as open or closed in the model itself. If the program is unexpectedly terminated then a page may appear to be open when it is not. To recover from this a command is available from the Users tab of the project options to reset the page open flags. This is rarely needed. -o-
The Palette
The Palette Form is a library of objects that you can use in your diagrams by dragging and dropping In a way it is just a short-cut - once you have placed a symbol from the palette on a diagram then the original is almost irrelevant. But CD maintains a pointer to the original symbol. Drag Mode (not yet on picture) With Drag Mode on you do not have to drag from the palette for each symbol, you just select one in the palette and then when you drag on the diagram the selected symbol is placed where you dragged. If the symbol has a picture it is sized to the palette settings otherwise it is sized to match the area you dragged in.
ControlDraw Manual
Whilst this is possible (using the menu's in the Palette) this is not recommended at present (a future revision may allow this.) The reason is that the Palette, which is stored in cdPallette.mdb, gets updated with some new releases of ControlDraw and so if you changed it then a new release would lose your new symbols. However it is no problem. Just create a model, then make a symbol that has the properties that you want. Then you can run two instances of ControlDraw and copy and paste between them. In fact you can use such a model as a reference model as well. Take a look at Milkshake3.cnd or MPPH3.cnd sample models and you will find a diagram called Standard Symbols, at the end of the list of diagrams. These are defined in the reference model (S88Reference.cnd) for those projects. You can in fact change the palette in Tools Utilities so you could copy the standard one and point to your copy, and then change it. See also Special Symbols and Number Automatically
-o-
Page Browser
You can now force the diagams when doing a complete rebuild to show or hide the classes, object tags and captions, overriding the settings for each page. (new buttons not yet on image below) Printing - prints the diagrams at the size you have selected in the drop down list, previewing first.
p37
ControlDraw Ltd
ControlDraw Manual
Reference diagrams are now shown with a green border in the Page Browser. View Zoom Scale Drop Down list Sets the size of the thumbnail images Drag to change Order You can select a single diagram or a contiguous group and drag to change the page order Right Click a Diagram To view full size, or to open or delete a page. Rebuild When using the Reviewer ControlDraw uses Cached images of the diagrams. Some actions, such as global changes may require that the image be loaded and redraw. Page Browser Rebuild forces all the diagrams to redraw by opening each page redrawing and then closing. Sometimes this may be necessary after you have made global changes but not opened and closed every page. It also puts all diagrams to 100% unscrolled
-o-
p38
ControlDraw Ltd
ControlDraw Manual
-o-
Symbol Controls
When a symbol is clicked an the Object Controls are On. See also Symbol Details You have complete control over the position of text that is associated with each object. If you just select one of the nine standard positions then ControlDraw will work out the positions You can select text positioning mode from the diagram mode tolbar and then drag and drop the text to anywhere you like. It is generally not recommended to have objects that have no tagname but do have user text. The only time this should be used is for notes, when the text is inside the symbol.
p39
ControlDraw Ltd
ControlDraw Manual
Notes on Text sizing The Size to content on the Object Control panel works as follows If there is a picture in the object then the object is sized to the picture If the tag and text are inside the object then the object is sized for the tagname and the user text. If the text is user positioned the button has no effect There is an option in Tools Utilities to control the text sizing - "Text Height Correction" and "Text Width Correction". These values (in twips) are the amount by which to increase the size of text boxes beyond that needed on the screen to account for scaling differences with printers that could cause some of the text to be hidden. If you find that parts of text are missing then increase the values. See also Tag Balloons See also Text edit keys
-o-
Tag Balloons
You can set the tagname to appear separately from the object in a variety of shapes. You can then drag the tagname to position it relative to the object. Tag balloons are auto sized and split the first letters before the number part and the remainder. Tag balloons are set from the object controls, using the menu from the bottom right button or by Ctrl-T. (Replicate copy object and instance data has been moved to the object controls menu) When you use a balloon tag the symbol text is then set to the right of the balloon and auto sizes, but will stop autosizing if you manually set the text position. The position of the tag balloon is stored relative to the object so you can use Copy and Paste Object properties to set other tag balloons the same - just click the Appearance button in Paste Object properties. p40
ControlDraw Ltd
ControlDraw Manual
-o-
When you have selected a symbol then the double text toolbar appears. You have to choose whether to apply the changes to the Tag or the User text.
p41
ControlDraw Ltd
ControlDraw Manual
-o-
-o-
Connection Controls
Connections in ControlDraw are represented on the page as a line connecting two symbols, however they are much more than just lines they are Signals. When you move a symbol the line moves to keep its connection to a sym bol. You can choose the Connections style for each connection. Signals define the initial way these connections are drawn. Each signal is assigned a Line style, arrows and a connection routing method from the Signals Form
p42
ControlDraw Ltd
ControlDraw Manual
You can change these appearance aspects after you have created a connection, using the Connections Toolbox, but the signal remains the same unless you change it using the Symbols form. Two connected symbol can be on separate diagrams. If this is the case a Connection pointer is automatically created, containing the text Symbol Tagname / Connectionname and 'On Page' Page no. NOTE - In order to select and move connection points you must have selected the right mode - see Drawing Modes You can move connection ends by dragging them with the mouse. If you move the end of an auto-routed connection, then ControlDraw calculates a new route depending on the side of the object and the position along that side If an auto routed connection is changed by dragging and dropping the points in the line (not those at the ends,) ControlDraw automatically registers the link as a manual polyline connection. With a manual link the position of the points can be individually moved, except that end points still must be on one side of or inside the object they connect to. You can delete points in a manual connection by dragging one and dropping it on an adjacent one. You can add points to a manual connection by dragging one of the points that is half-way along a segment
In dynamic mode, signals can carry data from one object to another and may have their appearance determined by the value of a signal. Signal have a data type. Vertical - Horiz -Vertical and similar types, these now longer revert to manual if you edit them. And you can drag the corners and the entire segment moves. Another new Style, "Auto Route avoiding objects"
-o-
Group controls
This form appears when you select more than one symbol You can use it to set the properties, such as appearance or class, of many symbols with a few clicks. Pressing delete when the group toolbar is shown deletes all selected objects. Undo from the main toolbar restores them Tiip: Press excape to close the form and then the Left/Right/Up/Down keys move the entire group, and holding down shift at the same time increases the movement by a factor of 10
p43
ControlDraw Ltd
ControlDraw Manual
When using the Group form to space evenly in the vertical plane the size, the user text is accounted for, improving for example SFC steps and transitions where the text is outside the object. The form also includes a menu, Arrange in Rows or Columns This simply puts the selected symbols in rows and columns. The spacing is set to the widest and tallest symbol plus a bit and the with the top left set to the leftmost symbol and the topmost symbol . You are prompted for the number of rows or columns, with a default that makes the number of rows and columns about equal. You are also prompted for the order. Centre all connections If the group includes connection links, this will place all the connection points at the mid point of the side they are on. Change Clones to Masters and Change Clones Normal If there are any clones in the group you can make them the master, making the existing master into a clone, or make them normal, so disconnecting from the existing master Hide and Unhide All Text Affect the User Text visibility Create/Link Child Diagrams This will create child links to pages that have the same name as the selected symbol, and if necessary creating new pages. This is much faster than using the Select Link form. Change Class to You can now set the class of objects from a popup menu for Included and Non included classes.
-o-
ControlDraw Manual
-o-
p45
ControlDraw Ltd
ControlDraw Manual
-o-
-o-
Data Design
When a model is first created the database is minimal. You have to use Build the Tables in the Data Design form below. This creates all the tables and queries that are need for a data rich model. The Fields tab is where you define the data to be associated with objects and instances
p46
ControlDraw Ltd
ControlDraw Manual
Build the tables Update the database tables to the design. The Numbering and Rules tab is where you can define rules for each class Note - the standard ControlDraw reference model has a good collection of rules and field that you can us
The check box 'Extend Parent' makes a class transparent so objects with that class create no instances and any child instances ignore the object thus making them tag as it they are on the sam e page as the object. Note - if this is set then all other options are greyed out as they will have no effect See also Test Sheets -o-
p47
ControlDraw Ltd
ControlDraw Manual
Note - in general hierarchical tags are not required provided good RealTag rules are established. Using hierarchical tags increases the model size.
-o-
Data Views
This form provides views of the data in the model, and some views that cross reference objects in the model. You choose which data you want to view or change with the tab selector. In general you can click a column header to sort by that column. In some views can use the Filter by selection button to reduce the displayed data to just that where the column contains the same value as the last cell you click on before filtering. Double clicking on a diagram number opens that diagram.
You can use the Filter by selection button to reduce the displayed data to just that where the column contains the same value as the last cell you click on before filtering. Tab ObjectTags Instances Connections by Page All Connections Effect Lists all the ObjectTags in the model. Displays all the Instances in the model with their RealTags and External Tag Lists all the Connections page by page in the model Lists all the Connections in the model p48
ControlDraw Ltd
ControlDraw Manual
Objects and Symbols Queries Diagrams Calculations and Set Symbols Set Matrix Steps Clone XRef Inherited Fields
Summarises Generic Objects and Page Tagnames More views including user defined queries, counts and summaries List all the diagrams, you can also set their Locks and Review status all at once Shows the Locations for Calculations and Set States Symbols This lists all the Set Matrix Steps and the diagrams they are on. Shows a table of all clones identifying the Page containing the master and the pages containing the clones See the dependencies - the fields that are set by values Inherited from their parent instances
-o-
Some come as standard with the master database. Any Favourites in a reference model are imported when the model is synchronised. And you can add your own using the Query Design form, which appears when you click New or Edit -o-
You can in DataDesign define Special Default values for the fields, these are explained in Automatically Filling Instance Fields You can select a number of rows by dragging and then fill the field with a string of value. Add %n for a incrementing fill of n characters Add /m for start at one after m entries, \m for increment after m entries Start with [Hex] for hex, [Oct] for Octal The fill format is remembered for each column heading p49
ControlDraw Ltd
ControlDraw Manual
Examples c%1\8 One digit number, Increment after 8 - eg 8 channel PLC IO Card [Hex]%2/16 Two digit number, Increment each, hex number - eg 16 channel PLC IO channels
-o-
Provide you have navigated down to the symbol from the first page by selecting symbols and going down to the child (double clicking,choosing View Child, using the Page Down key or clicking the link page number all do this) then the data for the single instance is shown. If you navigated to the page another way then ControlDraw shows all the possible instances.
-o-
ControlDraw Manual
which fields to import the data from. Imports are recorded in the model history
-o-
p51
ControlDraw Ltd
ControlDraw Manual
An example is
Note When editing a query in an area model that is from a reference model you are prompted. -o-
ControlDraw Manual
Add ClassName puts the name of the class as the first colum n.
-o-
p53
ControlDraw Ltd
ControlDraw Manual
-o-
Tools Utilities
This form lets you Choose single or multiuser mode Set the default drawing modes Name diagram pages as Page or Figure or whatever Choose the location of the palette database Choose the position of the Page Text Window Copy the class and signal settings to or from the defaults to the current model. Import the class and signal settings from another model To Set the default drawing modes associated with the three mode buttons: Click one of the master mode buttons(the three on the left and then set the appropriate Draw options buttons then click Save.
p54
ControlDraw Ltd
ControlDraw Manual
There is an option to control the text sizing - "Text Height Correction" and "Text Width Correction". These values (in twips) are the amount by which to increase the size of text boxes beyond that needed on the screen to account for scaling differences with printers that could cause some of the text to be hidden. If you find that parts of text are missing then increase the values. Also, symbols with no tag but some user text were not autosizing . ControlDraw carries out checks on the integrity of a model when opening or selecting in the File manager. Specifically it now checks that all the table fields, queries and relationships in the model are up to date with the latest structure. This can be switched off by deselecting "Check Model Structure on Opening" in Tools Utilities, but this is not recommended. -o-
Fonts Form
ControlDraw allows many fonts to be used. All fonts used in diagrams and tables must be defined in styles, a number are provided, and you can add as many styles as you like. Each type of object is initially set to it's default font. Certain fonts are predefined in the default ControlDraw model, and certain font numbers are always used. For example style number 1 is always used to provide the font for a new symbols tagnames and style 4 is initially used to provide the font for the user text. You can add to these from the font styles form, and you can change a Font by clicking on the font button or the colour button, or by typing values into the list.
p55
ControlDraw Ltd
ControlDraw Manual
-o-
Signal Styles
The Signals form is where the default connection properties for signals are set. See also Line Styles Form and the Arrows Form When a connection is first created, it's appearance is that defined for the Signal type for the new connection. The Signal for a new connection is dependent on how that connection was created. If it was made by Linking connection points then the signal is the "Iam" signal for the output at the origin of the connection. If the connection was made by Dragging from one symbol to another then the signal is the default signal for the class of the symbol at the origin of the connection, as defined in the Class Table.
-o-
ControlDraw Manual
Here you can select and define lines styles for connections and symbol borders. You can use the Line Editor to change the style, colour and widths of lines. Unfortunately you can only have dotted line styles with single width lines.
-o-
-o-
Arrows
All connections may have an arrow at each end and in the middle of each segment. A range of arrow styles is provided. They are selected using the Arrows form. You can select with the mouse or by Ctrl_Up/Down to choose the arrow style and Ctrl_Left/Right to select start, middle or end arrows Double Click or enter selects the chose combination, Escape cancels selection.
p57
ControlDraw Ltd
ControlDraw Manual
Example Lines
-o-
Matrix form
ControlDraw matrices are small tables that are typically used to represent the state behaviour of diagrams. These tables contain rows and columns that can be linked to symbols in ControlDraw diagrams and cells that show the required state of a symbol. Matrices can be shown on diagrams with the MatrixColour special symbol Please note - Matrices can also be used to contain data that has been pasted into a model (or even linked into a model) from as database such as InTools, see Imported Matrices See also Matrix Types When showing a matrix, if a tag name of a symbol that is used in a row or column has changed ControlDraw prompts and optionally changes the dynamic type of a Symbol you can transpose twice to re-establish the column types. A button on the Matrix form, Dereference matrix appears if the matrix is from the reference model. When dereferencing a diagram it's matrix is also dereferenced >View > Matrix Data Table >Matrix as Boolean (or Boolean Comma Sep or Integer, Hex or Octal) This provides a list of the values of the rows in the matrix the required format along with the mapping of the bits to the device settings. This assists with the generation of the bit mapping code and data for efficiently programming equipment state matrices in, for example PLC's. Comma Sep causes the boolean table to be separated by commas for each device setting Use Dynamics When this is on, (default) the matrix cells show the state names of their connected symbols in a drop down list, as shown here When this is off you see the underlying data. This is very useful, for example it can make it quicker to fill in large matrices. Colours The colour by value checkbox provides you with the ability to change the colours of cells p58
ControlDraw Ltd
ControlDraw Manual
according to their values. For example if you have an equipment state matrix where the cells correspond to the open and close or run and stop then you can make those cells green for the running or open state and red for the stopped or closed state of the individual items. The colours are set from the Colours tab. Each colour applies to a cell value. At present this is limited to less than 0 (True), 0,1,to 15 and > 15
In the matrix form, when the Check Connections checkbow is set, the rows and columns that are connected to symbols in the model are highlighted by colouring the background of their tagnames. Again, the colours are set from the Colours tab. You can also reconnect symbols or change the symbol to which a row or column is connected. This is done by using the edit menu, or right clicking. and choosing Row Symbol or Column Symbol. You can also use this to find what page the symbol is one, or its class. You must first select a single column or row by clicking the column or row header to enable the Row or Column Symbol menus You can set the font for each matrix from the Matrix form or the symbol controls The Matrices remember their Row heights as well as the column widths You can select several rows and size them all by then resizing one row. The fit to Width button only sizes the selected columns The size and fonts is also used in Special Matrix objects on diagrams, and, optionally in the Printer and Reviewer. The Matrix information Row and Col Link tab shows the connected symbols and allow you to add to them
You can find out all the places where a SetState step in an SFC references a matrix in the Set States tab, and the states that are not referenced p59
ControlDraw Ltd
ControlDraw Manual
The Matrix information tab includes list boxes that show the pages that the matrix is referenced by. The Used By list shows all the diagrams that have the current matrix in their Default Matrix field and the Set State list shows all the diagrams that have the current matrix in their Set State State field. Double click a row to open the diagram.
-o-
Matrix Types
With ControlDraw, matrix row and columns can be linked to symbols on diagrams Up to ControlDraw version 3.3, When a column was connected to a symbol, the column data type and the cell states in the column reflected the dynamics of the connected symbol. This has been improved to better support other types of matrix, such as those that require a few states but a long list of settings, and in addition for setting the symbols contained in a symbols child diagram. Version 3.4 introduced new matrix types. Note - when creating a new matrix you are asked whether it shold be Type 0 or 1, but you can always change later by transposing the matrix 0 Look up Col This is the original type where the column data type (if selected by Use sym bol dynamic type in the Columns tab when the column was added) and the cell states in any cell in the colum n reflect the dynamics of the symbol connected to the column. 1 Look up Row This is like the original type but transposed. The cell states in a cell in the row reflect the dynamics of the symbol connected to the row. All column data types are text. Allow Childs Here the you can create a row or column for a child of a symbol, for example the alarm attributes of a measurement, eg FT123.AHH. This facilitates matrices that go down into the the objects on diagrams that individual symbols have parent links to. p60
ControlDraw Ltd
ControlDraw Manual
-o-
-o-
p61
ControlDraw Ltd
ControlDraw Manual
-o-
ControlDraw Manual
You can save the current state of symbols on a diagram into to a row in a matrix. And you can set the state of the symbols from a row in a matrix. A matrix is associated with a diagram when you first use the form or if you set it up in the page details. Click on Save State to save the dynamic values of the symbols on a diagram into a row of a matrix, and to replay the matrix settings back into a diagram. The form is displayed by clicking on the snapshot button in the main toolbar when a diagram is in Run mode. Apply by Selecting When set the page is set to the state as soon as the state is selected. When not set then you can set the associated Matrix state with the Set button and also copy the current state the selected one.
Each Control Draw file has an overall version number. This is automatically incremented each time the file is opened for editing, then changed then closed. Note - this means that if you open and close a file several times during an editing session, the version will increment several times. Issue Number A ControlDraw file has an Issue number, having two parts, Major and Minor. The Major Issue is a number and Minor Issue is a letter, so a model has an Issue like 2C. When you select Minor issue the numeric part is incremented. When you select Major issue the Letter is incremented. and the numeric part is reset to 1 Each Issue or Backup is recorded in the model history. If a previously archived model still exists you can Compare it with the current You can use Reset Version Data to set the version of all the diagrams, pages and matrices in a model back to Zero p63
ControlDraw Ltd
ControlDraw Manual
The Version History tab shows all the records in the history and you can select items that should be stored You can choose to include: Database Builds Database Populated Link Re-Assignments Page Imports Page Order Changes Pages Added Pages Deleted
-o-
-o-
ControlDraw Manual
-o-
Signal dynamics
The Signal dynamics Form lets you control the dynamic appearance of the connections when running diagrams dynamically.
-o-
Picture Selector
This form is used to select a picture to show in a symbol, or to choose not to show one. It shows thumbnail s of the pictures that are available in the model or in the picture paths. ControlDraw stores copies of all the Symbol pictures in the model, provided Embed Pictures has been selected in the Project Options. this is the default, but de-select this option then the pictures are taken p65
ControlDraw Ltd
ControlDraw Manual
from the paths you have defined also in the Project Options form each time the diagram is drawn. Whe embedded, these pictures are stored with a name, that of the original picture file, or if the pictures were pasted into the model with a name like Paste######NN where ######NN is the date plus a sequential number. Each picture must have a unique name in one model (or set including a reference model) The image that is used for a Symbol is initially determined by the object you select to put on a drawing. However, you can change this to any other picture or to one of many shapes. You can easily create your own picture using the Windows Paintbrush program or any drawing package that can create Windows graphics files (bitmaps, gif's, metafiles, jpg files, icons) Paste Special includes Paste Picture into selected Object and paste as new object. If you have just one symbol selected then you can paste a picture into it. You can change the Standard, User, and dynamic picture paths when you are in the picture browser. If you open the picture browser to change an Object picture you can change the Standard or User picture path. If you browse For a dynamic picture from the Object expressions form you can change the dynamic path. Note - If Embed pictures is Set (As per default) In File Properties Options then you can freely change directories and browse for any picture from anywhere On your PC. As soon As you select a picture file it is stored In the ControlDraw file. You can also make the picture in a symbol the Child Page Diagram by checking "Use Child Diagram" In the symbol Details. Tip - an easy way to make a small image with Paintbrush is to use the Edit Copy function - this will create a Bitmap out of the selected area - see Windows Paintbrush Help for further details. Another Paintbrush tip is to set the image attributes to 1 pixel wide and high before pasting, then the bitmap sizes to the image that you pasted. This is very useful when editing ControlDraw pictures. See also Embedded Picture Manager
-o-
Shape Selector
Some shapes but not all can be rotated Shapes do not apply to obects that contain a picture You can select two shapes. After you select the first shape hold down Ctrl and select second shape. The second shape is then overlaid on the first shape, so you can have Diamonds in Circles and other compound shapes. You can also have a double line in a symbol. This combined with the Split tag text placement provides for tags that look very much like those on typical P&IDs.
p66
ControlDraw Ltd
ControlDraw Manual
-o-
Paste Special
This provides the means to copy pictures, text, groups of objects and tables of data from another Windows program into a ControlDraw model. You can also paste copied objects from the open model as clones. If pasting as symbols, you choose what type of symbol the new object(s) should be pasted as using the drop down list in the Paste Special form. If you have a list of objects in the clipboard and select Text in Rows, Paste Special shows the list in a grid and you can choose to paste them as Symbols in Rows or in Columns or as a matrix. If you choose columns then the objects are pasted in columns so that each column fits the available vertical space on the diagram If you want the columns to have more objects then you need to increase the height of the diagram before pasting. Pasting in rows is similar except the rows are sized to the horizontal space on the diagram. If there are more objects than will fit the page the page is expanded vertically if you pasted in Rows, and horizontally if you pasted in Columns If you have just one symbol selected then you can paste a picture into it or turn it into a clone If the data in the clipboard is formatted correctly you can use Paste Special Import as Pages and Symbols
p67
ControlDraw Ltd
ControlDraw Manual
-o-
Object Tag Rules The rules set the object tag as follows Do nothing The Object tag is not changed Default ObjectTag The Object tag is set to the value in Default ObjectTag for the class * Child page name The Object tag is set to the name of an objects Child page Drawing Symbol Tagname ObjectTag is set to the same as the tag on the diagram Drawing Tag Stripped of numbers Drawing tag skipping numbers at the end Class Name Uses the class as the object tag. * Default ObjectTag+Drawing Tag Stripped of numbers Default Object Tag + Drawing Tag Stripped of numbers Child Variant Name The Object tag is set to the value in Default ObjectTag for the class * One per symbol The Object tag is set the abbreviated class name followed by the Symbol ID p68
ControlDraw Ltd
ControlDraw Manual
Child Page Name/Variant Name Gets the name from the child diagram and it's variant Note- if this exceeds 32 chrs it will be truncated. *These settings only result in one object tag for the class
Instance RealTag Rule and External tag Rule These rules set the Real Tag or the External Tag as follows No Tag Tag is set blank Serial Number Sequential number ObjectTag and Serial Number Sequentially number based on the object Tagname ParentTag dot PageTag The Tagname of the parent object Dot the Tagname on the diagram ParentTag The name of the Parent object ParentTag dot PageTag dot Child The Tagname of the grand parent object Dot parent object Dot Tagname on the diagram Root Tag dot ChildTag with Exclusions The Tagname starts with the tag of the lowest Root Class (eg Unit) and includes all the subordinate hierarchy except those where Number Exclude is true Short Hierarchical Tags This sets the RealTag to shortened versions of the hierarchical tag. Each part if reduced in length to the length defined in the (new) ShortTagLen in the Class properties Root Tag dot ChildTag dot Child The Tagname starts with the tag of the topmost Root Class (eg Unit) and includes all the subordinate hierarchy Captions hierarchy sets the RealTag to the Captions version of the hierarchical tag. TagLetsDotRootNumDotTagNum Puts the tagname letter part at the begining of the tag and the tagname number after the unit number part of the tag. Custom Tagging A user definable system. each part (the whole page tag) of the full hierarchical tag can be included in full, excluded or parsed into the number part, the string part or a slice of the page tag. And you can change the order of the component parts of a Custom RealTag, so that for example, the Letters of the primary element precede the Unit number. Tagging Script A user definable system using VB Scripts to get a tag based on each part of the full hierarchical tag -o-
Custom Tagging
With Custom tagging you can define the construction of RealTags and External Tags based on your selections of the contents of each tagname in the hierarchy of an instance. This is used for example to generate tagnames that match typical P&ID tags. They work by parsing the tagnames into parts and then joining selected parts in any order. See also Tagging Scripts - these are more flexible and powerful, but run slower.
p69
ControlDraw Ltd
ControlDraw Manual
Custom Rule Strings RootTag: The tagname of the symbol at the lowest level of the hierarchy whose class is a root EndTag: The tagname of the symbol at the end of the hierarchy For the rest, the number selects the level in the hierarchy Tag Part splitting: NumberPart - the first numeric part of the - tag eg 123 in UN123A NonNumberPart - the first non numeric part of the - tag eg UN in UN123A TextSliceMid :Start#:Len# - Characters as fixed position eg - TextSliceMid:5:1 returns B in "F12ABC", LastLetters - the last letters found after a number, eg B in FT01B :-: puts a - between sections, :-: puts a space etc -o-
Diagram Sorter
The Diagram Sorter, under the Tools menu provides an the fastest way to set the order of the diagram s in a model, and to delete diagrams. A table shows all the pages in the model, their class, whether they are unique (only one instance) and (in the Root column) the Diagram number of the first Parent symbol. These are just for guidance. Reordering is done by selecting a sort option - this creates a new sequence of numbers into the Order column. You can also manually type numbers in. You can preview the new order by choosing the New order option. Sorting does not actually take place until you click the 'Sort Now' button
Sort by Class In this case diagrams are sorted by their class names then Page name Sort by ClassSort In this case diagrams are sorted so that they are in Class Sort order - this is defined in the Classes and p70
ControlDraw Ltd
ControlDraw Manual
Data build form, and only displayed in this form. Hierarchy Sort When this is selected, page ordering follows the hierarchy of the model. If a class has a KeepwithParent setting and you use Hierarchy with keeps then diagram s with the class come next after their parent diagram. Peer child diagrams are sorted according to the LoopID and then the class sort. The 'Unique with parent' and 'Only Unique with parent' sub options determine how the class rules are interpreted. If 'Unique with parent' is selected then a diagram is always placed after it's parent page if is the only child of the parent page or it's class has KeepwithParent true. If 'Only Unique with parent' is selected then a diagram is only placed after it's parent page if is the only child of the parent page. Mark Orphans and Delete now Mark Orphans will set the delete column check box for all diagrams that have no parent or link jumps to them. Delete now will delete all diagrams that have the delete column checked. You may need to repeat this several times to remove all orphans Referenced at Start/End You can put Referenced diagrams at the end or start (ie starting on page 2.) Note - You cannot change the position of the first diagram with the diagram sorter, as this would destroy all instance data. If you really want to change the first diagram use the Diagram List -o-
Model Review
The ability to set classes and to make parent links from symbols to pages makes it easy to quickly build a model. However you can also build models without them being consistent. For example you may have added diagrams or objects without setting their classes. Model review provides the means to check and to a degree automatically make the model consistent It is loaded through the menu >Model >Review in the main menu Tabs select different type of review criteria. Note - in general if you see a page number in Model Review you can double click it to open the diagram. (See also Model Advisor) Parent Class <> Child Shows all objects whose class is different from that of it's child diagram. Generally you would not want that, although there may be exceptions. You can correct these by dragging a Child Class cell to a Parent class cell in the same Row and visa versa to change classes. You are prompted first. Or you can make all Parent Symbol Classes match their child pages with the All Parents to Child button Not allowed in Page Class Shows all objects whose class is not allowed on the class of diagram it is on, according to the Model Rules that you set in Configure Rules Object Class <> Symbol Class Shows all objects whose class is different from the class of the generic object. See Object Tags Orphan Pages Shows all diagrams that have no parent or jump links to them. Page Links Provides a means to see quickly what parent symbols each page. Model Hierarchy See Model Review Hierarchy Non Included Parent Classes Provides a way to find if there are parent objects with classes that do not populate the object and instance tables. Generally you would not want that, although there may be exceptions. You should you link a symbol to a page by a jump link if the link is not intended to produce objects and instances, for example to expand on an explanatory note. Fix Connections It is possible to change connection signals at one end only, so yuo may get the situation that the ends p71
ControlDraw Ltd
ControlDraw Manual
do not match. This will show such casesw and allow you to fix them. Duplicate Tagnames If tagnames for objects that are intended to produce objects and instances duplicated then it will not be possible to generate unique RealTags for them. This will quickly find the obvious case of having the same tag more than one on a diagram. In addition, >Model >Highlight Duplicate Tagnames shows a red line to all objects with the sam e tagname as the one under the mouse. Only objects whose class creates instances are included. Classes in their Parents This will find structural errors such as having a Unit contain a Unit Duplicate Tag in Parent This will find cases where a tagname exists at a higher level in the hierarchy, wich may also prevent RealTag from being unique Lost References Some special objects such as Calculations, SetStates and Clones contain references to others. If you have deleted the original object then the special object will become invalid. Most times you are prompted before deleting objects that have references to them but sometimes this can happen. Lost references also checks all User Queries that are on diagram Class Contents This shows counts of the objects in each class, how many levels down the hierarchy they are and how many there are in each top level (ie the page where you started the review or the first page depending on what you chose) class. It is a useful view on the complexity of a model. (Another view on complexity is provided as a standard Query)
-o-
Configure Rules
This form provides a mean to determine the classes of symbols that are allowed on each diagram according to the class of the diagram. This does not stop you from making diagram that have disallowed classes of symbol on them, but it does provide the means to check, via the model review form, whether there are any symbols that should not be there. Furthermore, if you set your palette to Select by Model Rules then only those p72
ControlDraw Ltd
ControlDraw Manual
-o-
-o-
ControlDraw Manual
If you find that you have two diagrams that can be combined into one you may need to Re Assign the child page Links. This form makes that possible. Normally this is not required though because Page Importing general prevents duplicate.
For example if you append a model that contains a second set of drivers that were not the same as your original ones then you may get duplicated. You can then use this to m ake the imported symbols use the original driver pages before then deleting the surplus pages. Click Twice on the Pages that are linked to list first on the diagram that you want to keep then the other one and then ReAssign.
-o-
p74
ControlDraw Ltd
ControlDraw Manual
-o-
Registration
See Also Licences - Types, Updates and Renewals This is how to obtain a license. Note - if your license has expired and you then install a new version the Registration form opens automatically. If you do not have your order number to hand just put a very short message, or your company name or project name
-o-
Sequence Numbering
Tools Sequence Numbering With this you can: Set the order that the objects will be printed out in Test Tables. Number Sequence Steps and Transitions The changes are previewed on the diagram before you commit them, which is done on closing the form. The Sequential numbering style numbers objects by working through each branch before doing the next branch, the branches are selected according to the order they were made in. The Count increases at each new object. The count then overrides the Tagname sorting in the objects on test sheet tables. The Sequential numbering by position style numbers objects in a similar way, but when a branch is found it works through the branches left to right or top to bottom. With Number before Branching the numbers at a branch are assigned before the branches are calculated SFC numbering is the only option that can change the Tagnames on a diagram. With SFC numbering the Count increases at every transition and the subsequent step has the same number. The SFC numbering style supports one level of parallel branching. Steps within branches are numbered A-B where A is the preceding transition number and b increments from left to right across the branch. The new number is substituted for the old number in the original tagname, so S03_Stepname becomes S##_Step name where ## is the automatically computed number. The old number is the first numbers (including "-") in the original tagname. In order to be recognised as a Step the Class TestTableType should be Step (or the class number 55, the default PhaseOp Step) Similarly for transitions.
p75
ControlDraw Ltd
ControlDraw Manual
Setting Normal
Effect on test sheet table Table is derived from the Instance Table for the class, and is in the order of the sequence numbers on the diagram. The table is derived just from the objects on the diagram, and parsed into rows for each line of text in the UserText for the transition. When included on a test sheet table then the table is derived just from the objects on the diagram, and parsed into rows When included on a test sheet table then the table is derived just from the objects on the diagram, and parsed into rows
Numbering The diagram objects are not visibly changed, however the test table is in the order of the sequence numbers The step number increments before each transition, and the numeric part of the tagname is replaced with the step number. The step number is the same as the preceding transition, and the numeric part of the tagname is replaced with the step number. The step number increments and the numeric part of the tagname is replaced with the step number.
Transition
Step
Trans_Step
-o-
About
This form shows the version of the program and the user data.
p76
ControlDraw Ltd
ControlDraw Manual
-o-
Publishing
ControlDraw provides a Publishing facility whereby you can raise the Issue of a model and then archive it for subsequent comparisons. Publishing a CD project is a means of archiving and then setting Issue information in one go. It is accessed from the Files menu or the History form You can also use for day to day backups, as this also compacts the morel The Publish Function, accessed from the File menu or the history view, does the following: Compresses the file and copies it to the Archive Path and sets it to read only. ControlDraw prompts with a file name like Modelname.cnd### where ### is the model version number. You should accept the proposed filename, only changing it if you are using the publish facilities to make a copy with a new name, should you wish to do that. (This might be when starting a new project and making an archive of source material) Records in the History table in the model where the archived copy was made for subsequent comparisons to be made. Increments the Issue number.Increments the Issue number. You can also use the Publish form to just make a back up without incrementing the issue number The Major Issue and Minor Issue option selector lets you choose whether to increment the Major or Minor Issue from the last time you published. The model (and not just the archive) is compacted in the backup/publish process.
p77
ControlDraw Ltd
ControlDraw Manual
-o-
Captions can be up to 128 characters and can be positioned and sized by dragging and dropping. Note that Alternate and Regular captions cannot be shown at the same time (they can be listed in View Text Only) and must be the same size and position. The caption is initially positioned above the symbol.
p78
ControlDraw Ltd
ControlDraw Manual
-o-
List View
This shows the objects on a diagram in list form, where you can select/deselect, change tagnam es, delete, undelete, and also change the front-back order of the symbols on the current diagram. You can select and deselect symbols so when you go back to the diagram they are selected. Note - even if an object has been deleted and there were subsequent actions so that Undo would not undelete the object, the object can be recovered until the diagram is closed. The zOrder is the front to back order. Highest numbers at the front.
Find Symbols
When you select Edit Find in Model (Ctrl-G) the find form appears. You can search the model for strings in tags, user text and variant tags using wildcard expressions You can also add the class and picture to the search
p79
ControlDraw Ltd
ControlDraw Manual
p80
ControlDraw Ltd
ControlDraw Manual
Shrink button - all pictures that would be smaller are converted, for for example JPG might be converted to GIF. Recommendation - always start by converting to JPG since the quality loss is less. When you click Shrink you have a choise of Test only - this will scan the pictures and advise how much will be saved. You can also export the picutures in the model to a folder -o-
p81
ControlDraw Ltd
ControlDraw Manual
Preview When you click on an item in the tree view of filtered symbols it is displayed here. Saved Symbol Image displayed here. This is the last symbol that was selected when the camera button in the Symbol Toolbox was clicked -o-
p82
ControlDraw Ltd
ControlDraw Manual
Calculation symbols
Calculation Symbols are special objects with which you can define calculations. They can be used for calculations that refer to symbols by Tagname. The Calculation form is shown when you double click a Calculation Symbols. Once saved, where the text matches a Tagname in the model then that will change if the Tagname changes.
A calculation can be treated as an Expression or a Function. An Expression returns a single value for each line, for example 1 + 1 would return 2. (note - a transition should only have one line) Functions can set symbols in the model - the results are shown in the variable table You can make any symbol a calculation symbol by settings it's ObjectTag to '_Calculation' With SFC steps and transitions you can do this with the right click menu. If there is more than one symbol that matches a word in the text then the priority for finding them is, First look on the page that contains the symbol, then look in the entire model, in the order of the diagrams. Tagnames cannot contain more than two spaces and must be at least 2 characters Tag Dot ChildTag is also supported. The Check button colours the text to indicate operators and Tagnames that exist. If a Tagname is on the same page as the Calculation it is underlined. It also build the list of variables, taking the value from the symbol. The Test button runs the logic, either as an Expression or a Function. With Expression the evaluation runs each line independently and Displays the Result, otherwise the entire calculation is run. You can enter values for testing with. These are then saved with the symbol and become the value of the symbol when running a diagram, and are restored in the value column in the variables table when you next open the calculation. Where there is Tag Dot ChildTag such as XV01.Open the compound tag get the value from the child symbol. An example might be where you want a calculated transition. En expression of (Val1 > SP1 AND Val2 > SP2) OR Override could be used If Val1, SP1, Val2 and Override are objects on the page the simulation should work. It should even work if they are on other pages and you are running multi page. Note - Calculation Symbols are not designed for working with the symbols inputs and outputs, do this in Symbol Scripts.
-o-
Tagging Scripts
With Tagging Scripts you can build a Calculated tag based on the parts of the full Heirarchical Tagname The script is a Visual Basic so you can use complex expressions, using Program Logic such as Case Statements, string functions etc Tagging Scripts can apply to the RealTag and the External Tag when the Tagging Script rule is selected in Custom Tagging. Tagging Scripts return the CalcTag in the script p83
ControlDraw Ltd
ControlDraw Manual
You can refer to the parts of each level of the full Heirarchical Tagname FirstTag - the Top level tag LastTag - the bottom level tag RootTag - the lowest level tag part whose class is a number root RootPrefix - The letters before any number in the RootTag RootNum - The number in the RootTag TagPart# TagPrefix# TagNum# work similarly where # is the level in the heirarchy with 0 at the lowest level. Similarly you can use the captions and classes of the object hierarchy You can also get the name of the parent Instance Real or External tags using ParentRealTag and ParentExtTag There is also a calculation editor that shows when you click the button in Custom Tagging. This provides drag and drop for tag parts and a sm all collection of function - but you can use any VBS code. Tagging Scripts can include the current value so you can leave existing values unchanged using IF CurrentTagValue ="" THEN 'code for new entries ELSE CalcTag = CurrentTagValue END IF
-o-
ControlDraw Manual
below.
You can customise this part of the database to add any fields that you want using the Data Designer Form See also Objects and Instances You can also store data with each diagram object, see Symbol data Some tables are related only to matrices *The list of Matrices @ The matrices themselves each use a table The Model also has queries (which are automatically built by ControlDraw) for each class of object and Instance. these are Named qryClassNNObjects and qryClassNNInstances where NN is the Class number. @The fields in these tables are entirely created specifically in the model. *The fields in these tables are permanently fixed by ControlDraw #These tables can be customised You can open it in Access if you want to. Do not update older models to a newer Microsoft Access version, let ControlDraw do that, for Access97 (ControlDraw2) models -o-
p85
ControlDraw Ltd
ControlDraw Manual
-o-
ControlDraw Manual
model. For example to assign the IO to controllers. The database in an Access database, which can be opened from or linked to from outside Control Draw so you can use your expertise in Access to further enhance you model. -o-
Object Tags
What do object tags do? Object Tags allow symbols and their Instances to be grouped into types within their class. Class Sub Type might be a better name, or SubClass. They provide a means to sub divide the data associated with a class and to make the data that is common to types of objects store with the type rather than each instance, so that the data is entered and stored once, making a more efficient database. Another way of looking at this is to see a class as containing any number of 'generic objects', and instances of those objects. If in Data Design, the field 'Apply to Instance' is not set then when ControlDraw builds the data tables, the field is stored with the Object Tag. So this data becomes Type data applying to the 'generic objects' Are object tags needed? It is not essential to use them at all, and for simpler models they do not add much. However, they are required by the database structure. It is recommended that the object tag rule be set to Text Value unless there is a need to store such type data. This will make sure that only one object tag is created for the class. How many object tags? Object Tags are created by scanning all the symbols on all the pages in the model and adding a record for each unique object tag that is found with a symbol whose class is included. Special Symbols are excluded. So the total number is at least as many as there are included classes. And any of the objects in a class have different object tags then more. NOTE - Object Tags must be unique - even across classes. So it is best to have a rule starting with the SymbolDefault Tag for the class, as this is always unique How are object tags assigned? In general they are automatically assigned using a rule for the class defined in Data Design or Database Tagging and Numbering. They can be manually entered if the rule permits. >Edit >Select Similar >Object tag With this you can select all the objects on the current page that have the same object tag. this is useful for reviewing the model and for making changes to all the objects of the sam e type, for example, you could then make them all the parent of the same object. Examples Measurement Analog Class This class is typically used for Transmitters, Flow, Level, Pressure etc. By using the Page Tag stripped of numbers rule with a model containing FT01, FT02 etc and PT01, PT02 etc two objects are created, FT and PT so you have an object record for each measurement type -o-
RealTags
Each instance can have a RealTag. This is a compound tagname made from the tagnames of objects in the hierarchy of sym bols according the RealTag rule defined for the class. RealTags must be unique. You can set them using different rules for each class or define your own with Tagging Scripts and Custom Tagging See also Database Tagging and Numbering and Hierarchical Tags p87
ControlDraw Ltd
ControlDraw Manual
-o-
Symbol Data
With the Data tab in the Symbol Details form or from Database Show Symbol Data, you can store a collection of data with each symbol. To show this data on a diagram set the Display checkbox.
If a symbol has symbol data that has the same name as a field in the instances or objects for the class of the symbol then when building objects and instances, the value of the instance (or object) data is set to the symbol data value. The fields are also coloured in the Symbol Data tab of the Symbol Details form. p88
ControlDraw Ltd
ControlDraw Manual
Another special object, SymdolData2, shows the data for that symbol and whether it is in the instance or object tables. There is also Special Objects PageData - this shows all the Symbol data for a diagram in a single list PageData CrossTabTagCol and PageData CrossTabTagRow form tabulated lists from the data -o-
Dynamic Simulation
ControlDraw symbols can be given a formula to relate outputs with to inputs. The values of outputs are sent through the connections to the inputs to which they connect. In addition the object itself has a value - this is then used to animate the object. The Symbol Dynamics form provides a drag and drop interface for defining the objects script and testing it. When a page is in run mode or static run mode then each symbol executes the logic, clicking a Symbol calls up the Dynamics Popup Menu. If the diagram contains steps and transitions then AutoSFC functions are executed so the the SFC can Run with no code. If a page has an associated matrix you can use the matrix in simulations to store and replay the states of those objects on the diagram that form columns in the matrix. This provides unlimited simulation capabilities. Symbol code is programmed in VBScript. Copy to clipboard in the Run form can be used to get a copy of this VBS programme into the clipboard. It is possible to introduce script errors, see Simulation Error Handling for a guide to removing the errors
Global Variables
You can create Global Variables that apply anywhere by declaring them in the Globals Tab of the Symbol Scripting form
Displaying Dynamics
ControlDraw Objects can display their dynamic state in a run mode diagram. A drop down list in the Symbol Type Tab on the Dynamics form allows selection of None Select picture Display Value Height to value Width to Value Highlight if True Display State Name And combinations The selection depends on the Symbol Dynamic Type When you give a symbol Dynamic States using it's Child Page states then these are now ordered according to their layout, working Top to bottom and then Left to Right. See also What Happens in Run Mode See also Calculation Symbols -o-
Run Mode
Run Mode provides a means of simulating real time behaviour of symbols and developing and testing the diagrams. Run Mode is toggled on or off from the main toolbar. p89
ControlDraw Ltd
ControlDraw Manual
The dynamics of Diagram Objects (such as steps in State Transition diagrams) can set entire objects to their states and input-output calculations can set values. When a ControlDraw page is in run mode: The objects have a different right click menu. The Run Mode Control form is shown. Provided the page is not in Static run mode, the following sequence is performed periodically, at the rate determined by the Simulation Timer setting on the main toolbar. By default this is two seconds. The values of all Symbol inputs are updated from their input connections Each Symbol performs the calculation that has been defined in the Sym bol Dynamics form The values of all outputs are passed through their connections to the downstream Symbol inputs When you click a Symbol a popup list relevant to the Dynamics of the object appears If the object is multi state then a list of the possible states of the object is popped up and you can set the object to any of it's states or enter a value for single data type symbols. See also AutoSFC You can take a snapshot of a collection of object states and save them in a State Matrix, and you can then reload the state from the state matrix run form. In order for a symbols script to be valid the following conditions apply: Al the inputs and outputs of a symbol must have unique names. You can use auto-naming to achive this. The script must be valid There is a test function in the Run form. This causes each symbol that has any dynamics in turn to be highlighted in red, tested and then, if it does not fail, changed to green. This is a good way to test page dynamics and find out which symbols have expressions and if any of them have an error. By default this is run the first time you run a page, but it can be switched off by deselecting Run on Startup in the Run form. See also What Happens in Run Mode -o-
Symbol Scripting
Simulation
With ControlDraw you can animate the diagrams by giving objects and connections dynamic properties Objects can be programmed in VBScript to calculate their outputs from their inputs. You can trace the flows of material through a Process Diagram, data flows through a logic diagram etc
Variables
A CD2 object can support a number of variables: IO Variables are the inputs and outputs of the object Any Input that is derived from an object's output that in turn gets it's values from preceding objects is read only. It may be written during the execution of the expression, however it will be subsequently overwritten by the preceding objects output. The outputs are related to the inputs by the expression you enter You can also use local variables within the objects expression. these are not saved between executions of the object expression. If you need to save a variable make it an output or declare it with a Dim statement at the start of the script And you can use the tagnames of objects on the diagram the symbol is on by enclosing them in {braces}- these are listed in the menu You can make a CD object that can drive the other objects on a page to a defined state number from a Matrix. The Expression editor includes a button to make the states of a symbol the same as the rows in a matrix. You can then within a symbols script set the states all of the symbols corresponding to the columns of a matrix to the state given in Row n by using the command. GetRowState(n) Note - the signal type does nothing in scripts, all variables are set as variant type. he Simulation language is Microsoft Visual Basic Scripting. p90
ControlDraw Ltd
ControlDraw Manual
There is Script Editor a button to open the formula in a Script editor. ControlDraw includes the freeware Koan VBScript editor, but you can use any other editor by selecting it from the utilities form. Using the Script editor provides: Visual Basic syntax colouring for (.VBS) Bookmarks Find / Replace Undo / Redo Note that after you enter the Script Editor, you must shut it down to return to ControlDraw The Link and States Wizard makes it easy to create common types of dynamics Global tab : Here you can declare variables and enter code so that Variables can be created that apply to all symbols. You can even set objects so that you could for example manipulate Excel from within ControlDraw In the Globals Tab you can include Dim statements to create Global Variables (these apply across m ore than one page) and also Functions and Subroutines that you can call from your Symbol Script. See the Dynamics demo for examples. See also What Happens in Run Mode
p91
ControlDraw Ltd
ControlDraw Manual
-o-
-o-
p92
ControlDraw Ltd
ControlDraw Manual
-o-
Signal Dynamics
You can apply dynamics to each type of signal. If a signal type has dynamic states then the signal is set to the style associated with the types of signal - you set this using the Signal Dynamics form. This is invoked by clicking the Signal Dynamics button in the signals form. You can copy the dynamics from one signal type to another. First you must delete all the states of the signal, then the Copy Button appears. A list of signal types is shown, and an index number, which you must enter to select the signal to copy from .
-o-
ControlDraw Manual
SetSymbols and CheckSymbols are Special Objects that refer to other symbol states They are set up in this form
The matrix row button converts a matrix row into individual settings, making a row in the symbols for each column in the matrix. -o-
AutoSFC
Automatic Run mode behaviour of SFC and State transition diagrams. In AutoSFC mode the chart logic works thru the states and transitions using the connections in the diagram and standard SFC rules. Steps are activated when a preceding Step is active and the transition between the steps is true. Active Steps are set to - TheValue = True and should do things when TheValue is true. Transitions should evaluate a condition and set TheValue Note - The scripts for these functions are autogenerated by Calculation, Symbol State and Set Matrix objects. ControlDraw decides whether each object is a Step or a Transition as follows Transition definition An object whose class has the Trans setting in Test Sheet Render type or from the standard ControlDraw pallete SFC transition Step definition An object whose class has the Step setting in Test Sheet Render type or from the standard ControlDraw pallete SFC Step Starts, Parallel branches are also recognised but only by their Palette index, ie the Palette object number that was set when dragged and dropped (You can still change it using Paste poperties/ Right click run mode menu options - these are enabled in response to the selected object Force Transition - Causes the SFC to move onto the step after the transition, regardless of the transition's Value Force Active or Force Inactive - Toggle the Active status of the selected step Reset all Transitions. If you have manually set the transitions this resets them without changing the active steps. Reset in the Run form resets the entire chart, deacting all the states and switches the transitions off p94
ControlDraw Ltd
ControlDraw Manual
(although code may switch them on later) AutoSFC is on by default but can be switched off in the run form or in project options. -o-
VBS Dictionary objects - these are data arrays that map to the symbols on the diagram into the script using the unique id of the diagram object. The Symbol and matrix scripts are translated by by changing names to their dictionary values Each Symbol becomes an entry in Dictionary ObjVals eg TheValue maps to ObjVals("Obj+Symbol ID") Each Symbol input or output becomes an entry in Dictionary Params ("Sig+Connection point ID") Each Connection becomes an entry in Dictionary LinkStates ("Lnk+Connection ID") For SFC's: Each Step becomes an entry in Dictionary dicTokens ("tok+Symbol ID") Each Transition becomes an entry in Dictionary dicTransitions ("tra+Symbol ID") Each Transition becomes an entry in Dictionary dicSFCBranches ("bra+Symbol ID") Note - For SFC Steps, the code is only executed when the step is active -o-
Procedure Charts
>View >Procedure Charts There are many ways of using Procedure Charts. The original intent was to provide a means of producing a step table of the procedural elements mapped to their equipment. And this is exactly what you can do. In the URSWriter (where the charts first started) that is all you can do with them at present. Procedure charts are tables that have Pages as columns and object tagnames in the cells. For example if a Unit has three operations that it can perform, and the Unit diagram has these operations as objects on the unit diagram then the procedure editor can provide a list of operations to run on each step. In edit mode it provides a drop down list to select the operation to run on each step. However, with ControlDraw, there are other things you can do with them. They provide a quick way of defining for example Unit States mapped into child Equipment states. Procedures charts are very much easier to produce than PFCs, or even state matrices. You can select what goes in the cells for a given column as either RCP/UP/OP or by class. If you select the procedural objects then those that appear in the drop downs when you click a cell are the objects on the diagram whose class type is Step-Trans. By default ControlDraw models set this for those objects that behave as if they have both a step and a transition, for example phases, operations and unit procedures. This same property by the way is what makes the PFC right menu functions recognise them. p95
ControlDraw Ltd
ControlDraw Manual
Procedure charts have no way of showing synchronisation between equipment, however there is a workaround means of adding notes. Create a diagram for step notes and then give them a class such as MemoryString.
At present procedure charts do not have any dynamic functionality and cannot be used for simulations. -o-
Start a Model
OK, you have to write a complete specification for a project. You need to: List, specify and procure all the instruments Define all the control loops Define all the Procedural Logic Define all the Safety Logic List and allocate the Control System IO. Get the end user to agree with all the user interface aspects Deliver quality, auditable documents to your customer Of course you could start by purchasing an introductory model from ControlDraw Ltd. We can introduce you to the product by modeling your process and delivering the promise of ControlDraw. But if you want to do it yourself, you can use a ControlDraw Start Template as a starting point, and the examples as references. You can even import parts of the samples into your application. And this is a good place to start in getting into CD quickly but in some depth. If you really do not want to spend a few minutes then go to In at the Deep End. If you do do that then please revisit the sample files occasionally. When you start a new model, CD offers to start with a template. Templates are small CD models that include sample objects and 'To Do' notes to guide you through the production of a model. Some start models also includes starting points for the instance and object databases. Note - Since the start models are standard CD files, this means that you can design your own start models for use as project standards. This is recommended rather than standardising the palette. You choose a template and enter the project details with the Template Selection form
p96
ControlDraw Ltd
ControlDraw Manual
-o-
Create Diagrams
When you first start a diagram, it is empty. You can then use a predefined template or just draw the diagram by drag and drop from the Palette To use a predefined type Right Click You can choose from various types of diagram.
Contents Notes When you create a diagram from empty using the Right Click menu, it also sets the diagram class and type - which otherwise you have to set in the diagram details form You can also insert a predefined template from the Collections tab in the Palette , even when the diagram is not empty. This does not affect the page class -o-
Edit Diagrams
p97
ControlDraw Ltd
ControlDraw Manual
Adding symbols to a diagram Use drag and drop from the Palette Copy from other symbols. These can be on another page or from another model. (you can run two instances of ControlDraw and copy from one and paste in the other.) To add notes you can select Note Creation Mode
Make connections between symbols Drop objects into connecting lines -o-
Make Connections
There are 3 ways of making connections 1 Connecting predefined points In this case you must select Line mode. When you move the mouse over a symbol, all of it's predefined connection points appear. Click on one of these and then as you move the mouse the connections for other symbols are made visible. Provided they are compatible you can make the connection. 2 Add New from one end This starts the same as when connecting predefined points however you can then click on a symbol and make a new connection to match the one you have started. ControlDraw will prompt to make sure this is what you want to do. 3 Drag from centre to centre of symbols In this case, a new connection is made. this adopts the default signal for the class of the symbol at the origin of the connection, as defined in the Class Table. Note With methods 1 and 2 you can also connect from a symbol on one diagram to a symbol on another. Open two diagrams and you can start from a connection point for a symbol on the first diagram and end on a symbol in the second diagram. You must be in multi window style to do this. See also Signals and Connections, Drop objects into connections and Connection Controls
p98
ControlDraw Ltd
ControlDraw Manual
-o-
p99
ControlDraw Ltd
ControlDraw Manual
-o-
-o-
-o-
Import a Matrix
p100
ControlDraw Ltd
ControlDraw Manual
-o-
ControlDraw Manual
When importing a diagram any associated Matrix can also be imported. The Import Associated Matrices check box on the File Management form determines whether the matrix in the source model is also imported. Provided all the symbols that are referenced in the original matrix are on the same diagram then the linking between rows and columns in the matrix and symbols on the diagram is retained in the imported matrix. At present, if your matrix is not associated with a page or if a row or column references a symbols on a pages other than the one that is associated with the diagram you are importing then the row or column will become disconnected. If you do find that you have duplicates after an import then Re-Assign links, available from the Tools menu, allows you to change all the links from symbols to diagrams in one go. For example if you append a model that contains a second set of drivers then you can use this to make the imported symbols use the original driver pages before then deleting the surplus pages. The Re-Assign Links form in the model menu now has an option to sort by page name so that if you have for example imported another model that also contains the same driver pages then provided they are named the same (eg On/Off Valve with ZSO) the diagrams are listed one after the other. -o-
Publish a revision
Who is it for? See The Publish Function, accessed from the File menu or the history view -o-
ControlDraw Manual
-o-
p103
ControlDraw Ltd
ControlDraw Manual
Do you have a specification from your client? OK, import it into one of ControlDraws RTF text fields.Perhaps the project details. Run the RTF Editor to edit the File Wordy bits You can spend time building completely new pages or you can use the ones in the sample models and then modify them to your requirements Or start with a template - providing a start model with helpful notes and predefined classes and diagrams -o-
ControlDraw Manual
At no point in ControlDraw do you have to link it to the equipment. But if the Recipe is to use automated functions in the Equipment (ie EPE's such as Phases ) then the Recipe should show how this happens. With ControlDraw you can link your S88 Recipes to the Equipment at the Phase, Operation or Unit Procedure Level You can do this as follows: For the Recipe Formula parameters such as the Set Points, Material Quantities etc use Descended Object Links to link the master recipe value to the Parameter in the Phase that actually Sets it. (> Tools >Custom Tools >Defer Functions can make use of this to help extract data for Batch Managers) For the Procedure, you can use 'SymbolCopy' Special symbols for the Equipment Procedural Element that the Recipe Procedural Element uses, and/or Link the Recipe Procedure Phase to the Child Diagram for the EPE ControlDraw can can do this as you draw! in Project >Options >XRef and PFC Options >When Adding PFC Steps Prompt to use existing Equipment Procedural Entities When this option is set and you add a step to a PFC diagram by Right Clicking a step then your are asked "Use existing Equipm ent Procedural Element?". If you answer Yes then all the EPE Child Pages are listed and you can pick one from them. Then the new step will be a parent of the same EPE and have the same name. "When Adding Equipm ent Procedural Elements, use SymbolCopy" In this case the EPEs are listed even where they do not have child diagram s and the new step is made as a SymbolCopy. This provides a closer link to the Equipm ent Control. Note- the souce object must have approprate connection pointS for the added EPE to connect into the chart A standard User Query, Equipm entProceduralElements lists all operations and phases that are on Unit and Equipment Module diagrams (Actually those on diagrams for classes that have the CanAcquire flag set) See Linking Recipe Procedures to Equipment Procedures for a diagram explaining this
-o-
The Recipe EPE Requirements Special Symbol produces a list of all of the Procedural Elements (typically Phases and Operations) on Equipment Diagrams (typically Units and EM's) that are referred to by the p105
ControlDraw Ltd
ControlDraw Manual
Procedure on the diagram. The Recipe Equipment Requirements Special Symbol show just the equipment without the EPE's 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. -o-
p106
ControlDraw Ltd
ControlDraw Manual
-o-
Getting Started
When you start ControlDraw you are presented with the Login Form. Here you can choose Simple Menus, which is recommended for novice users. The first time that you run ControlDraw this is set by default. However this hides some menu options and is only intended for a short period of use. Creating a Diagram Create a new model using a template -o-
Creating a Diagram
When you first start a diagram, it is empty. You can then use a predefined template or just draw the diagram by drag and drop To use a predefined type Right Click
ControlDraw Manual
-o-
Hierarchical Models
The first page is the Root. Only objects that are descended from objects on the first pages are included in the Instance tables. So at it is essential that page 1 is the top of the hierarchy. Do not have unnecessary levels. For example a page one that has one object called Procedural Model and one called Physical model. You can easily have a number of each type of object on page one. Use Class and data build frequently, from day one. Do not worry about redoing it later. Only start populating the Class Generic and Instance tables when you have firm information. Once you have, you can still regenerate the tables, but it is slower. See also S88 Modelling Guidelines -o-
Numbering systems
Try to keep instantiated tag names short. Remember that not so long ago printers were limited to 80 characters across a page! The limit on a page tag is 32 characters For a 'RealTag' it is 128 characters For a hierarchical tag it is 255 characters For an External tag it is 50 characters With 16ch tag names the Real Tag the limit is 5 levels. And the hierarchical limit is 15 levels. (The InstanceID, which is the actual limit is 200, so the maximum number of levels is 40 or so. The RealTag tagging will fail first, so you will need to reduce the levels if you use long very long tags) For objects that are not instantiated (for example notes) there is no reason to limit the tag length below this number. For Instantiated objects the shorter the tag name in the object and it's parents the shorter it's Unique Instance tag will be. See also Database Tagging and Numbering Custom Tagging Tagging Scripts -o-
S88 Models
p108
ControlDraw Ltd
ControlDraw Manual
-o-
ControlDraw Manual
ControlDraw Manual
This is a typical design decision. Most batch manager support either approach. In ControlDraw you can choose for yourself whether to instantiate the operations in the Units or in the Recipes. Phases nearly always belong to Units or Equipment Modules Most batch managers assume the phase logic is in the Controller, be it PLC or DCS. And so Phases should be instantiated in the Units or Equipment Modules, not in the Unit Procedures. The Units should have Parent links whereas the Unit Procedures should have Jump Links (IE referenced by rather than owned by.) Note however that you may have phases in the batch manager that are not in the Controller, these are generally called soft phases. Observations from commercial procucts From DeltaV Batch Control Software Spec "Delta-V's Batch control software provides full analog, discrete and sequencing control within a single Delta-V controller. In addition, Phase Logic Modules make creation of multi-state phases integrated with recipe management and execution a breeze. ... The Phase Logic Module, included with the Batch controller, manages multiple states of a batch phase. The Batch Executive handles phase co-ordination and communication with basic control functions processed in the M3 or M5 controller." IE the Phase control is part of the Controller, Not the Batch Manager This is why I put the phases in the Units, specifically under the units in the Physical model. The Unit procedure is part of the Recipe. Phases do not care what recipe they are working with. From Wonderware InBatch spec "Equipment Processing Capabilities: Units that have the same processing capabilities are in the same Process Class. Each Process Class, and therefore each unit in the Process Class, has processing capabilities that are defined by Phases. Each Process Phase defines a process action, such as: mix, heat, cool, cook and agitate." IE the Phase capabilities of the Unit determine the Unit Class, And so instantiating the phases in the Unit diagrams ensures that you can easily identify the Unit Classes. Furthermore the method means that recipes are generic. You can even make a matrix to define specific recipes -o-
ControlDraw Manual
tip is to set the image attributes to 1 pixel wide and high before pasting, then the bitmap sizes to the image that you pasted. This is very useful when editing ControlDraw pictures. Use Sequence numbering You can use Tools Sequence numbering to automatically number the steps and transitions in SFC and PFC diagrams. In order for this to work, the Class of the Steps and transitions should have an appropriate setting for the Test Sheet Render Type: field in the Data Designer. Note - this field was first introduced to determine how to represent different classes on test sheets, but has grown to be even more useful than that. Dont Cut and Paste - Move
LICENSE AGREEMENT
See also Licences - Types, Updates and Renewals Please note - if you do not have a prior agreement with ControlDraw Ltd, you may not use sequential sessions with the ControlDraw evaluation license on commercial projects. Neither may you use ControlDraw evaluation licenses to increase the number of people working on a commercial model. This is a legal License Agreement between you and ControlDraw Ltd. Carefully read all the terms and conditions of this agreement prior to using ControlDraw 2. By using this product, you are agreeing to be bound by the following terms and conditions: 1.OWNERSHIP p112
ControlDraw Ltd
ControlDraw Manual
ControlDraw (the "SOFTWARE") and accompanying written materials are owned by ControlDraw Ltd (the "LICENSOR") and are protected by copyright law and international treaties. 2. LICENSE FOR EVALUATION VERSION When you install a copy of the SOFTWARE without providing the appropriate license (which may be contained in a file obtained from ControlDraw Ltd, or previously a "Key number"), the SOFTWARE will be installed as an Evaluation Version. When you use an Evaluation version, you may be prompted by a the ControlDraw About box explaining that you are using an Evaluation Version of the SOFTWARE. You may use the Evaluation Version of the SOFTWARE for evaluation purposes for 45 days. You may copy and distribute it freely as long as all the files in the package, including the sample files are distributed with it and no changes or additions of any kind are made to the original package. You may not use sequential sessions with the evaluation license to use ControlDraw on commercial projects.
3.FULL LICENSE To get a full license of the SOFTWARE you have to order a full license of the SOFTWARE. If you pay the license fee and if you agree to the terms of this agreement, the LICENSOR grants to you a license to: - use the SOFTWARE on a single terminal connected to a single computer by one person at a time. - have the right to a technical support vial Email for a period of 12 months or whatever other period has been agreed from the date of purchase of the license. - have the right, during the support period to download from LICENSOR's Internet site all releases of the SOFTWARE, without having to pay any additional fees. Licenses for the SOFTWARE are issued to individuals, even if it has been sold as part of an order for more than one users. Any company wishing to purchase the SOFTWARE needs to purchase one license for each named person using it. 4.OTHER RESTRICTIONS You may not reverse engineer, decompile, or disassemble the SOFTWARE. You are not allowed to rent or transfer the SOFTWARE.. You may not repackage the SOFTWARE for sale as a competing product. 5.DISCLAIMER OF WARRANTY THIS SOFTWARE AND THE ACCOMPANYING FILES ARE SOLD "AS IS" WITHOUT WARRANTY OF ANY KIND EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Good data processing procedures dictate that any program be thoroughly tested with non-critical data before relying on it. The user must assume the entire risk of using the program. ControlDraw ltd will Fix faults in the software if they are reported and are clearly faults in important functions in the software. Fix includes providing workarounds. -o-
ControlDraw Manual
for, one year if not stated otherwise. After this period you can continue to use your latest version of ControlDraw if you have a full license. If you update to a newer version the software ceases to work. Time Limited Licenses include use of the software and all minor releases of the software for whatever period has been paid for. After this period you cannot continue to run ControlDraw without a new license. The License system works with a license file that is sent to the user. This has to be copied to the ControlDraw folder on the users machine. If run from a network, each user has to have a licence file. License files are specific to the users PC. If your license has less than 30 days to run then you will be prompted "Your free upgrade period ends on thedate" The prom pt repeats once per day. If your licence has expired then you will be prompted appropriately. If you install an update after this then the program states "You are using a version more recent that your license permits, please contact ControlDraw Ltd". You can only show the Apply for Key form before it stops. If you have a Full License, you must either revert to the last version you had whilst the software was under the support agreement or purchase a license renewall from ControlDraw Ltd. If you make major changes to your Windows installation, such as re-installing Windows, or replace you PC your license will cease to work. Replacement licenses are available when for such cases. Evidence of de-installation is normally required - an Unlicense program is sent on request, There may be a small cost if you do this more times than was specified when the license was purchased. Up to 12 months after your full license expires, ControlDraw Ltd will provide a replacement, valid only for the version of ControlDraw that you last had a working license for. To obtain a new license use Help Apply for Key It is your responsibility to have the necessary backups. To do this you must keep a copy of the controldraw3.exe file, the cdstart3.mdb file and the cdpalette3.mdb file. These are all included in the Update files that you can download from the Support Web. Make sure that you have this before upgrading in order to ensure that you can revert. Better still contact ControlDraw ltd for an upgrade licence quotation. See also Update Policy -o-
Special Symbols
Special symbols show data from the model on a diagram. Some are never needed in diagrams if the Reviewer is being used since the Reviewer can automatically show these fields anyway. These are in this colour You can see all the special symbols in the Palette You can also change some special symbols to others from the Symbol Controls ObjectTag UserText Acquire Creates a PFC Acquire object CDLicense ControlDraw License number CDRegUser ControlDraw Registered user name CheckSymbols Creates an SFC transition symbol that contains a list of settings for other symbols cInstanceData Shows the instance data that is associated with an object ClassFieldObjects Forces an object to be shown on the diagram for each class property of the diagrams class
p114
ControlDraw Ltd
ControlDraw Manual
ClassFieldsInst
ClassFieldsObjs
FileName HyperLink JumpSymbols Matrix MatrixColour ModelVersion MXDescriptions PageID PageNumber PagesList PageStateMatrix PageTitle PageXofY Parameter Pass thrus ParentPages ParentSymbols PFCAcquire
Forces an object to be shown on the diagram for each class property of the diagrams class that is in the instances table Forces an object to be shown on the diagram for each class property of the diagrams class that is in the objects table Shows the fields that are associated with instances of the objects of the pages class Shows the fields that are associated with objects of the pages class Forces an object to be shown on the diagram for each class property of the diagrams class that is a Test field Shows the Test sheet only fields that are associated with instances of the objects of the pages class The client name in Project Data Shows the data that is associated with an object Lists the other pages in the model that has clones of objects on the diagram Lists the other pages in the model that has clones of objects on the diagram, including the left and top coordinates The File name Makes an object that you can click to open a file. List of the pages and symbols with jumps to the page Displays a matrix Displays a matrix with coloured cells The version number of the model Lists the names of the associated Page and Set State matrices The ID number of the diagram - Unique within the model Prints the Figure Number Table of Contents Displays the name of the associated State matix for the diagram The Name of the diagram the symbol is on Returns the page and page count Shows what parameters are linked from a level above to a level below a diagram List of the parent pages List of the parent pages and symbols Create an object linked to Acquirable objects in the model. Acquirable objects have the Can Acquire setting in the class of the object The project name in Project Data The project no in Project Data Lists the page number, name and and tag name for all the the Equipment Procedural Entities(pages) the recipe and descendants refer to with the Equipment Procedural Entities Lists the page number and and name for all the equipment types (pages) the recipe and descendants refer to Shows the review status of a diagram Make an SFC/PFC Phase Step symbol to set a state in the associate Set State diagram Displays the name of the associated Set State matix for the diagram Creates an SFC/PFC Phase Step symbol that contains a list of settings for other symbols Use to make the same object appear on two or more diagrams Similar to a clone, but provides applies to an object in the child, of a symbols, eg PT112.MV p115
ControlDraw Ltd
ControlDraw Manual
VariantsTable2 VariantsTable3
Similar to a SymbolDotChild, but goes one level more. User can enter sql - rows of data are returned into the user text field Lists the variants and the symbols that are excluded for each Lists the variants and the symbols that are excluded for each and the variant tagnames, 1 Row per Variant Lists the variants and the symbols that are excluded for each and the variant tagnames 1 Col per Variant Same as VariantsTable2 but includes the object class names
For a UserQuery special object, if the text is positioned in the centre then the this query string is hidden. Also in a UserQuery you can now use clauses like Where Page ={CurrentPage} For example a UserQuery with Select Tagname, Class FROM qryPageObjects where Page ={CurrentPage} will produce a list of the objects on the diagram and their classes -o-
Menus
See Printable Menu Guide
File Menu
The normal file things, but with some specific things about CD Edit Menu Edit, Copy etc and selecting objects Navigate Menu Rapid access to diagrams View Menu Go to various forms etc Show Menu Control what is displayed on a diagram about each object. Tools Menu Special CD things Database Menu View and modify the structure of a model using Database related forms Model Menu View the structure of a model and find and fix problems Window Menu The normal windows things, plus View Single Window Syle Help Menu Help functions, ControlDraw web links, updates and registration -o-
File Menu
Under construction still New Start a new model Open Open an existing model Close Closes the model RTF Editor Runs the RTF Editor program Publish or backup Saves a copy of the file and raises the issue number Files manager Shows the File manager Running multi-user/ Save As Saves the model under a new file name (Single User only) Printer Setup Select and set up the printer Print Runs the Print and Review program Print diagram Prints the current diagram Save Diagram as Metafile Creates a windows enhanced metafle of the diagrams image. p116
ControlDraw Ltd
ControlDraw Manual
0 is most recent, max is 9 Selecting >File 0 re-opens the current model. Ends the session
-o-
Edit Menu
Under construction still Undo Undo All changes Find on Page Find in Model Copy Paste Paste Special Cut Delete Select All Select Similar same Class Select Match Tag Object Tag Select None Global Find and Replace Undo the last action (If model opened exclusive) Select by string match Select by string match + Copy selection to the clipboard Pastefrom the clipboard Import, make clones etc Copy and delete in one go Delete the selection Select everything Select based on last clicked object
-o-
Navigate Menu
Under construction still First {Shift + F1} Previous {Shift + F2} Next {Shift + F3} Last {Shift + F4} List of Diagrams By Class {Shift + F5} Go to Diagram {Shift + F6} Up to Parent {PageUp} Down to Child PageDown Show Outline {Ctrl-T] Go to Diagram 1 Go to Previous Diagram Go to Previous Diagram Go to Last Diagram Show Diagram List Window - you can also search from this list Select diagrams by class Go to Diagram number Go to Last Parent Go to the diagram linked to the symbol Show the hierarchical window -o-
View Menu
Under construction still Fonts Status Bar Text Only Page Browser Matrix Redraw {F5} Signals Options History Run {F9} Set the font styles View or hide the information panel A view of the text fields on the diagrams in the model View thumbnail images of the diagrams State Matrices or imported tables Refresh the diagrams Set the line styles View the project options View the model history and backup and issuse the model See the diagam running -o-
Show Menu
p117
ControlDraw Ltd
ControlDraw Manual
Under construction still Toolbar Tooltips Captions {Ctrl-B} Alternate Captions Normal Instance Tags Normal Object Links Link Tagnames Symbol Object Tagnames All Connection Names All Object Versions Versions greater than Highlight Changes Toggle the Main toolbar on/off Shows context sensitive info in the tooltip Toggle the Captions on/off Shows the caption from second set Shows the instance RealTag or External Tags
-o-
Tools Menu
Under construction still Import From another CD File Compare Models Diagram Sorter Re-Assign Links Utilities Sequence Numbering {Ctrl-Q} MS LDBViewer Send Message to other users Prompt for Tagnames -o-
Database Menu
Functions related to the model database. Show Symbol Data Page Instances Build! Table Views Object Specifications Tagging and Numbering Data Designer {Ctrl-D] -o-
Model Menu
Review Configure Rules HighlightSym <> Object c lass Highlight Sym <> Child class Highlight Class not allowed Highlight non included classes Find if Tagname in Parent Open Reference Model View Reference Model - Highlights symbols on the diagram in red - Highlights symbols on the diagram in red - Highlights symbols on the diagram in red - Highlights symbols on the diagram in red - Lists parent diagrams that have a symbol with the same tagname - Switches to the reference model - Opens the reference model in the Reviewer -o-
Window Menu
p118
ControlDraw Ltd
ControlDraw Manual
Tile Horizontal Tile Vertical Cascade Close all diagrams Single Diagram Style Page Text -o-
Help Menu
Under construction still Contents Search For Help On... Tip of the Day ControlDraw Web Site ControlDraw Support - Updates Email ControlDraw ControlDraw Version History Apply for Key About ControlDraw2 Displays version number etc S88 Definitions Selecting this shows the S88 definitions and paragraph numbers, and some notes on ControlDraw models in the context of the relevant definitions. It also provides a web link to the ISA online purchase web. This is linked to the class of the selected object so that it can look up the standard in context. -o-
Menu Guide
p119
ControlDraw Ltd
ControlDraw Manual
-o-
Sample Models
ControlDraw includes several sample files. These illustrate many of the functions and facilities that ControlDraw can be used for. There are examples of diagrams and classes and examples of many types of modules that you can use in your own models. Most include a populated database with an S88 based model structure. Note - the models are not 100% complete, the intention is to provide illustrations and perhaps diagrams that you can adapt for your own applications Presentation3.cnd This is a collection of diagrams for showing the basic principles and capabilities of ControlDraw. It is not really a model, it is a presentation. HygenStore3.cnd A portion from a real model - contains complete definitions of a Hygenic liquids storage and supply process area with CIP S88Reference3.cnd There are several models that use the S88Reference3.cnd model as a reference model. S88Reference3.cnd includes within it a small model that you can use to rapidly try out the functions and see the effects on the database. It includes variants and special objects and explanatory notes, and even some programming guidelines. S88Reference3small.cnd This is a version of S88Reference3.cnd that has the non essential diagrams removed so that users with page limited license can still edit it. p120
ControlDraw Ltd
ControlDraw Manual
Milkshake3.cnd A typical dairy/food process, the milkshake plant was originally developed by European Batch Forum (EBF) but has been extended considerably to illustrate how ControlDraw can be used to define Semi batch and CIP functional requirements MPMP3.cnd The Miracle Cure plant. A multi-product organic chemicals plant incuding primary and finishing processes. It make miracle cures for everything. This model was originally developed by EBF WG3 but has been extended considerably to illustrate how ControlDraw can be used to define batch and continuous functional requirements ISA506demo.cnd This model shows how ControlDraw can be used to generate Functional Requirements Documentation covering the contents of the ISA S5.06 standard Dynamics3.cnd This demonstrates many of the simulation capabilities of ControlDraw. It is not really a model, but a collection of diagrams that have simulations Try this! Select Run then step look at each page. Continuous3.cnd Examples of Continuous Control schemes Distillation Tower SBC Shows how to define State based Control for a Distillation tower FRP3.cnd Functional Requirements Principles - not a model, but a file that explains how the models are used to define Functional Requirements PFDExample.CND Demonstrates two alternative ways - Symbol Date and Matrices - to produce Process Flow diagrams with Process Data safetyLogic3.cnd An example showing Boiler Safety Shutdown systems ncluding a Cause and Effect matrix VesselTempCtrl3.cnd This simple model shows Various Vessel Temperature Control Schemes made using variants. -o-
ControlDraw Origins
Many years ago, in the mid 70's, I began working with Process Control System. It was about the time that the first PLC and DCS systems were coming into use in the Process Industries. I was an instrument engineer for a major contractor I was responsible for specifying these systems for many plants. Typically I worked for weeks or months with a pen and a sketch-pad to produce the diagrams and the lists that were needed to specify the systems. Eventually I was spending up to a year on-site following up my designs. Then the first computers became available to engineers, and I began to use a computer (a Univac) to produce the lists. Some time later the first PC's began to arrive in the office (at this time the term PLC was about to be replaced by PC - Programmable Controller, dropping the Logic bit since they had by now become much more than Logic machines.) Soon after, I was using the PC to produce the specs: MSDos Graphics like Freelance for diagrams Manuscript for the Words Smart (!) for the database and spreadsheets. I had been using the Univac system for the Instrument and IO Lists for some time, and it was a great p121
ControlDraw Ltd
ControlDraw Manual
improvement to find that I could do all I needed on a 286 in my office rather than having to go to the DP centre to submit and collect batch jobs. I developed a database that was much more than the simple flat table that most people were using at the time. It even included Functional aspects, such as list of the operations related to the Units, Recipes and so on. However I could not get everything into the database, I still needed diagrams to express things efficiently. Also, controlling the various files and keeping them in step began to be a big problem, especially with large fast changing project. When I originally started work on what became ControlDraw with Visual Basic 2 it was going to be a database, with table and text based interface. At the time integrating Databases with VB was not half as easy as it is now, let alone producing diagrams.. The idea of producing any graphics was not in my mind at the time - apart from including a few references in the database to some externally produced diagrams. It started when I wanted to produce some simple Sequence definitions, and I had the idea of using a few Icons to represent sequence steps, and then it just grew from there. I spent a lot of time thinking about diagrams and came up with a generic model for diagrams, and with a long and hard struggle, including a lot of calls the to Windows API, I managed to get my VB2 program to produce them something like they way that I wanted. That is now ControlDraw1 (Cdraw) - it was finished in VB4. Since then VB6 has arrived, and component technology has greatly improved. One wonderful OCX control, Addflow3 from Lassalle has made a great difference. It handles all the diagramming graphics, and more, mostly eliminating the need for the API calls and greatly improving on the diagram user interface. Francis
-o-
Limitations
The Matrices and original CD1 database are not converted. If this is important to you please contact ControlDraw Ltd. p122
ControlDraw Ltd
ControlDraw Manual
It is possible to save a CD2 file in CD1 format but all the new features will be lost, and if you have used anything other than autorouted signals and simple shapes and tagnames no more than 24 characters the result may be unexpected. Use File Save As CD1 file -o-
Quick Keys
Note - Look at the Menu's for Quick Key commands See also Text edit keys Escape Ctrl+A Ctrl+N Ctrl+C Ctrl+V Ctrl+X Ctrl+R Delete Ctrl+F Ctrl+G Ctrl+O Ctrl+N Ctrl+P Ctrl+Q F5 Ctrl+PageUp/Down F6 F7 F8 F9 Ctrl+B Shift-F8 Ctrl+D Ctrl+Z Navigation: Shift-F1 Shift-F2 Shift-F3 Shift-F4 Shift-F7 Shift-F7 PageUp PageDown Ctrl+T Backs out of the current operation Selects all symbols Select none Copy selected symbols Paste symbols Cut selected symbols Replicate selected symbols (copy and paste in one) Delete selected symbols (When Symbol Controls not showm) Find and select symbols on the current diagram Find symbols anywhere in the model Open a model Start a new model Print - run Print and Review Sequence Numbering Redraw diagram Cycles through the tabs in a form Symbol mode Text mode Connection mode Run Toggles Show Captions Toggles Show Symbol Class Database Design Undo Last change
First Diagram Previous Previous Next Previous (or * Change Case) Last Diagram Go to diagram number Go to diagram ID Goes back to the Parent Diagram Goes to the child Diagram of the selected symbol Show Outline
In Data Grids (Diagram list, DataViews etc) F2 Edit the current field, selecting all of the existing text Space Edit the current field, starting at the end of the existing text Tab Move to next cell Ctrl-Home Go to Start Ctrl-End Go to End p123
ControlDraw Ltd
ControlDraw Manual
You can cycle through symbols on a diagram by using Ctrl-Up and Crtl_Down whilst the cursor is in the tag or text field in the Symbol Controls. This selects each symbol in turn, working top to bottom and left to right. * Change Case When the cursor is in a tag or text field such as in the symbol controls, Shift-F3 toggles the case of the selected text.
-o-
Select text by holding down SHIFT and pressing the key that moves the insertion point. To extend a selection Press One character to the right SHIFT+RIGHT ARROW One character to the left SHIFT+LEFT ARROW To the end of a word CTR L+SHIFT+RIGHT ARROW To the beginning of a word CTRL+SHIFT+LEFT ARROW To the end of a line SHIFT+END To the beginning of a line SHIFT+HOME One line down SHIFT+DOWN ARROW One line up SHIFT+UP ARROW When the cursor is in a tag or text field such as in the symbol controls, Shift-F3 toggles the case of the selected text.
-o-
-o-
ControlDraw Manual
Options are: !Left PTag # !Left UserText # !Caption !AltCaption !Inherit !Script string value to enter Use the left #letters of the Symbol Tagname Use the left #letters of the Symbol User Text Use the Symbol Caption Use the Symbol AltCaption Obtain the value from the same named field in the parent instance Calculate a tag using a tagging script. This can use complex rules to work out a
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
-o-
Number Automatically
When Number Automatically is set in the Palette then when new objects are added (whether by dragging fom
the palette or by pasting them then their tagnames are given trailing numbers according to the rules for the class. These rules are defined in the Data Design in the Auto Tag nmbering section
If number Globally is set then the numering applies across all diagrams, otherwise it applies within each diagram. If number of digits is set to -1 then the objects are not numbered If set to 0 then the objects are numbered with no leading zeros it greater then leading zeros are applied if required to the number. The number of digits can be up to 6 For example if you have a diagram with XV01 and XV02 on it then the next one youu add wil be XV03
-o-
p125
ControlDraw Ltd
ControlDraw Manual
When I change a field type in a Class Data Table will I lose the existing data?
It depends on the old and new field type. ControlDraw will try to coerce the old data into the new field type. But for example if you change a Single to a Boolean, all non zero values become true and all zero values bcome false.
When I change a field Name in a Class Data Table will I lose the existing data?
No
-o-
ControlDraw Manual
The Project Properties User tab will show who is currently logged on in ControlDraw.This does not include users who are just viewing the model with the reviewer or have it open any other program that can open Access databases, however the user Count when you open a model, or select Track Users in > Tools Utilities does show all users including non ControlDraw ones. ControlDraw checks the users logged onto a model. This detects all users including those who have opened the model in the Print and Review program (which only reads the model and cannot change it) or in Access. ControlDraw advises if other users are logged on when running the database build functions. Note that it is best to do this when there is only one user. You can select Tools Utilities whether to run multi user. Deselect this to obtain exclusive access. Doing this ensures the fastest and safest build. >Tools >Send Message to other users. This sends a message to all other users of the Controldraw model that you have open. Users of ControlDraw, the RTF Editor or the Reviewer who have the model open will reciver the message. Typically you would use this to request the users to close the model so that you can get exclusive control to do a rebuild. Tools MS LDBViewer runs the Microsoft Access LDB Viewer - with this you can see who is logged on to the model. You must have LDBView.exe in your ControlDraw folder tor this to work. See also Reference model Updating Guide: If running Multi-user then compact and back-up frequently.
-o-
Updating Models
When you first start a new model, the basic database structure is provided automatically by copying the master database - the cdStartdb3.mdb file.To support ongoing impovements ControlDraw provides the means to update a model to the latest structure version. So a new release of ControlDraw often has a new version of cdStartdb3.mdb When opening a model that was built on an earlier version of the standard model, CD prompts the user to ask if the model should be updated to the latest version. ControlDraw prompts to ask if there is a backup and if you say no it makes a copy of the model (named 'Backup of modelname') before the update is performed. The update process scans and compares the structure of the master database and the model, and adds any missing items such as tables, fields, queries and relationships. It also adds any favourites that are in the master database. These updates are recorded in the model history. Some developments in database structure cannot be updated this way and require a Complete Update.
When opening a ControlDraw2 model for the first time in ControlDraw 3 you will be prompted "This model Access 97, Do you want to prevent Automatic model updates?" You can change this setting in >Project >Options If you are working with a ControlDraw model 2 and you have to keep to version 2 then this stops the model from prompting to update each time you open it in CD3.
-o-
ControlDraw Manual
When opening a model the reference model is checked for class changes as well as diagram changes. When synchronising referenced diagrams and the diagram has a child and that diagram is not is the model, as well as removing the link, ControlDraw warns and lists the missing child pages. When synchronising, Fonts in the Area model are updated to match those in the reference model. Note that you can have more fonts in the area model and the higher numbered ones will be unchanged ControlDraw checks that a model has only one user before it carries out the checking and updating of models from their reference models, and asks. It is recommended that you avoid updating when running a model multi user, as it has been found that models that are under intensive multi user development and that have reference models may develop database faults that require a Repair.
-o-
Test Sheets
Test Sheets can be printed for each diagram in the model. You decide, by configuring the classes in Database Table Views whether a class of digram has a test sheet. In the Classes view - IncludeInTest, when set the reviewer can print a testsheet for pages with the class. Class Data Designer, fields checkbox TS. When set then the test sheet will include the relevant field in the table of objects of the class on the Page test sheet.There is alo a field type Test Sheet only, when set the field is printed on the test sheet but does not add a field to the class tables. For example for signature fields If you create a test only class field for an object whose class is not included in the tables - or if you have not yet built the tables, the test sheet is built from the diagram only, rather than the instance data. So if you want, for example, an EM test sheet to list the states then you can do this by just adding a test sheet only field to the State class - even though you do not include the states in the tables. If there is data for the instance of the class then the data is derived from the tables. The test sheet table is named "Class name Page objects" if there is no instance data for the class, or "Class name Instances" if there are instances See also >Tools >Sequence numbering
-o-
Variant Tagnames
Why Variant Tagnames? 1 Many control system support them, often they are named Aliases. They are used mostly to make one graphic that covers several similar equipment entities. ControlDraw variants are the best way known to S88 and science of making the lookup tables that relate the Alias tags to the real ones. You can define alternative tagnames and immediately see them on the diagram (or call it the graphic design) 2 The split of a plant into P&ID's does not often match the S88 physical model.
For example, most projects have a P&ID for each 'process entity' - if you are lucky it will nearly be a unit, but often it will be part of a unit or a few parts of several units. When it comes to applying tagnames to the instruments on the PID the Instrument engineer will try to use parallel numbering so that the instruments in the 'streams' are all similarly numbered. However this does not cascade into the S88 object numbering if the modularisation for S88 is not the same as that for the P&ID's. 3 In the ideal world no mistakes are made. In the simpler world of instrument tag naming mistakes are often made. This is one more reason why ControlDraw includes Variant Tagnames. Given 4 P&ID's each with 50 tagnames, and one hour, there are 200 tagnames to be assigned. That is 18 seconds for each. Mistakes happen, even (especially :-) ) with a computer instead of a pen and p128
ControlDraw Ltd
ControlDraw Manual
paper. In that 18 seconds you have to which decide pattern the number should follow, find the corresponding value and then commit it. Over the course of such 200 decisions and m anual actions mistakes will happen, maybe just in the typing. It can take long time before such typo's are evident. It may be cheaper to leave the 'hard' tags as they are and use ControlDraw Variant tags. -o-
External Tag
A tagname in the instances table that you can use to map standardised soft tags to the tagnames in other systems such as Instrument tags in In-house databases, Intools or such like. You can set them using different rules for each class or define your own with Tagging Scripts and Custom Tagging The External Tag can be used to import or compare data in the external system with the data in the Instances for an object by using the ControlDraw Import tool, this is available on request for Licensed users. See also Database Tagging and Numbering
-o-
Undo Changes
If showing a group use the Group Controls undo Ctrl-Z if a diagram has the focus If you add or paste objects, the Undo button removes them If you add, delete or change connections undo changes them back If you have deleted objects whilst a diagram is open then made other changes, you can still recover the deleted objects with the List View The matrix form has an undo button and also Undo All Changes. You can undo most major actions delete rows or columns, add columns and rows.
Producing a decent undo function has been a big problem whilst developing ControlDraw. It would be good if undo worked like it does in Word etc, with multiple levels. However, this is a major task, essentially because Controldraw is a database and one action generally affects several tables. For example Access does not do it at all well either. Controldraw generally provides a single level of undo and warns if an action cannot be undone. Remember - ControlDraw is a database, not a drawing package.
-o-
Clipboard support
ControlDraw's Internal Clipboard provides copy and paste within ControlDraw. You can also use Paste Special to import pictures and text from other Windows programs. See Rapid Model building You can copy ControlDraw Diagrams to other Windows programs via Enhanced Metafiles Then you may paste to Powerpoint, Word, etc. For instance, you may paste the metafile into Powerpoint, double-click on the picture, adjust the margins so that there's room for other drawing objects, use the drawing tools to add some lines, circles, etc. Nearly all the diagrams in this current help file have been made with ControlDraw then pasted into DotHlp, the help program this was written with. You can also copy the data in the data forms and then paste this into other applications such as a spreadsheet. p129
ControlDraw Ltd
ControlDraw Manual
-o-
Class Settings
Here are most of the settings for a class. See them in the Data Design form. Class A textual name for the class. Class_no The unique class number, this number is used rather that the name inside ControlDraw IncludeInTables Determines if a class should be included in the instance and object tables DefaultSignal If a connection is made from a symol then the DefaultSignal for the class of that sym bol this detremines the signal style. This also sets the dynamics for an object if the dynamic type is Signal States. DefaultObjectTag The default unique string prefix for an object of the class, used when automatically setting the ObjectTag for a symbol, see tagging and numbering SetObjectTagRule Used when automatically setting the ObjectTag for a symbol. See tagging and numbering. SetInstanceTagRule As above but with different rule choices NumDigits The number of digits from the object name to include in the Short hierarchical tag. IncludeInStreams Determines if a page of class should generate a Stream S88 Def You can group sub classes in one S88 Def, for to classify according to S88 recursive levels.Control Modules containing Conrol Modules for example. ClassSort You can use this to set the overal diagram order according to the class of the diagram using Tools Diagram Sorter KeepWithParent This makes diagrams with the class come next in the list after the parent diagram. Peer child diagrams that also have this class setting are sorted according to the LoopID and then the class sort. ShortTagLen The number of character to use when generating Short Tag IncludeInTest Used in the Reviewer to determine if a diuagram of the class generates test sheets TestTableType Determines if a class is a Step, Transition or both (as in Equipment Procedral Entities)
-o-
Complete update
The Complete update function rebuilds a model from the latest version of the start m odel. Hence you can get updates that involve changed field sizes and for example the latest Access form s and reports. Complete Update is a small stand alone program, you can invoke it from the Complete Update button in the File manager. You can also use Complete Update to export CD2 models from CD3 ones but losing newer features such as lines jumping each other etc.
p130
ControlDraw Ltd
ControlDraw Manual
You select the model to update, provide a new file name and if the source file exists and the destination file does not the update button is enabled. The complete update program has an option for exclude the Diagram images. This is on by defaults and speeds up conversion and may help to recover problem files. Another option excludes the Void tables these are tables that contain data that has been found to be orphaned during Database generation As it runs Complete Update generates a list of the tables and queries that it updates. If there errors these are shown in the list. Note - the complete update program wll fail if there are Dots and Spaces in a file name.
-o-
Shrinking a model.
After ControlDraw displays a diagram it stores an image of the each diagram in the model, so that next time it is shown it does not need to redraw the entire diagram from scratch, and so that the reviewer can show them. These images can more than double the size of a model. Shrinking a model removes them. During a complete update these images may also be removed. After shrinking a model then it will automatically rebuild page by page as pages are opened. You can force them all to rebuild, so making the entire model available in the reviewer by >View >Page browser or by clicking the button in the list of diagrams
-o-
Emergency Recovery
Sometimes ControlDraw will produce a message saying "The model needs to be repaired" This can be caused by network faults or intensive multi sessions. You should be aware of these recommendations. Make sure that you have a recent backup. If it is very recent then you can skip the ! cautious steps and go straight to the File manager and try a repair. Mostly it works. It is very unlikely in single user mode, but can be frequent with large models with several users. Do not panic, just be aware of these recommendations. ! means only if cautious. Make sure that all users have shut down ControlDraw. p131
ControlDraw Ltd
ControlDraw Manual
! Copy the file (even if you cannot do the above) and then set the copy read only. Save this file and send it to ControlDraw Ltd if the following does not recover your file. Get every user to check whether ControlDraw is still running (even if they have shut it down) by using the task manager. If they find ControlDraw in the applications list then terminate it. Then do the same with the reviewer, and with Access. Ideally, get all users to restart Windows. ! Copy the file again. Start go to the CD file manager on one workstation. !Choose Yes to backup the file first If this does not work then decide whether it is quicker to restart the server that the model is on or to restore your most recent backup. If you can restart the server then do so and try repair again. If this does not work then restore your most recent backup. If you want then send the originally backed up file to ControlDraw Ltd. Note - ControlDraw uses the MS Access Jet engine in multi user mode. ControlDraw checks the status of the model by checking the Jet engine error records and by checking the 'ldb' file, which controls multi user sessions. If the LDB indicates a suspect session or the Jet engine reports a serious error the above message is displayed.
p132
ControlDraw Ltd
ControlDraw Manual
You can see the status of the LDB file by using Tools MS LDB Viewer. You can check for serious errors by selecting the model in the ControlDraw file manager. See File Management
-o-
-o-
ControlDraw Manual
The Re-Assign Links form in the model menu now has an option to sort by page name so that if you have for example imported another model that also contains the same driver pages then provided they are named the same (eg On/Off Valve with ZSO) the diagrams are listed one after the other. When importing a diagram any associated Matrix can also be imported. The Import Associated Matrices check box on the File Management form determines whether the matrix in the source model is also imported. Provided all the symbols that are referenced in the original matrix are on the same diagram then the linking between rows and columns in the matrix and symbols on the diagram is retained in the imported matrix. If your matrix is not associated with a page or if a row or column references a symbols on a page other than the one that is associated with the diagram you are importing then the row or column will become disconnected.
-o-
Microsoft LDBView
This is a Microsoft DLL that is used in ControlDraw to check the status of the m odel. A debugging option in Tools Utilities, disable LDB Checking, stops this. Tools MS LDBViewer runs the Microsoft Access LDB Viewer - with this you can see who is logged on to the model. You must have LDBView.exe in your ControlDraw folder tor this to work.
-o-
Error Messages
Page Under development Controldraw may produce messages as a model is being developed. These include
-o-
ControlDraw Manual
Importing Text tables from Excel or similar. The illustration below shows how this is done.
A parent object of class none can be used to link to a diagram containing the table if there is no space or if the design rules enforce this. Suggested Matrix Naming : xxxxtblText Where xxxx is the name of the unit or relevant object .
-o-
ControlDraw Manual
Use {CurrentSymbolTag} to get the Tagname of the connected symbol and {CurrentSymbolChildPage} to get the child page number. {CurrentPageClass} returns the class number of the current page {CurrentInstance} returns the instanceID of the currently selected page. So you can use InstanceID Like "{CurrentInstance}.*" in a user query, this make it possible to show data for each instance of a diagram. For example the IO addresses for each instance of a valve. To see this in ControlDraw, select a page instance and then redraw. This works even better in the Reviewer where you can now Print All Instances or a diagram with Real or External tags and data. Example Query (it needs attaching to an IO Object) Select Card, Channel from qryClass17Instances where InstanceID Like "{CurrentInstance}.{CurrentSymbolID}" For a UserQuery special object, if the text is positioned in the centre then the this query string is hidden, otherwise it is shown in the selected position. With User Query special objects, if the resulting table has more than one record, and a field contains Line Feeds these are replaced with ' : ' in order to keep the lines aligned. If there is only one record (eg Select Formula from tblDrawingObjects Where IDD={CurrentSymbolID}) then the complete text is shown. Many Examples of User Queries are contained in the standard reference and sample models provided with ControlDraw.
-o-
Clones
Clones are special objects that create an image of an object without necessarily creating the data for that object. Typically they are used to produce a connection or reference between objects on two different diagrams. There are several types of clone SymbolClone This creates an object with class none that is otherwise identical to another symbol in the model. SymbolCopy This creates an object that is identical to another symbol in the model. This Does produce data. SymbolDotChild is like a SymbolClone but applies to a child object. SymbolDotChildDotChild is similar You can create clones by dragging from the Palette but it is easier to use Paste Special as Symbol Clones which is enabled when symbols have been copied. You cannot drag links to or from clones and most editing functions on clones are disabled, but you can position the text, connect points and the linkpage location and resize them. Symbol clones can have the page number (or name - this is set in the Project Cross Reference options) of their master symbol shown above their tagname inside brackets. You can double click this to go the the diagram The {Clone Page} reference is positioned depending on the Text position. If text is below the symbol it is placed alongside the tagname, otherwise above. This is to avoid the clone reference obstructing the symbol. p136
ControlDraw Ltd
ControlDraw Manual
Cloned objects change their link types to Jump. This means that a Cloned object cannot create instances. If you want an identical object that does create instances then you should not being using SymbolClones, as that is not their purpose. A special symbol, CrossReference Lists the other pages in the model that have clones of objects on the diagram" A Tab in >Database >Views, Clone XRef shows a table of all clones identifying the Page containing the master and the pages containing the clones Symbol Clones support dynamics. Notes If you delete an object that is cloned somewhere else in the model there is a warning and you can cancel the deletion. Right clicking a clone offers "Make this Clone the master". This changes a clone to the master and makes the original a clone of the new master. Any other clones of the original are updated to be clones of the new master "Make this Clone a normal symbol". "Go to clone master" - opens the diagram containing the master Here is one way of using clones. Suppose that you want a single Unit Graphic, with all the valves and motors shown on it but where the valves etc actually belong to equipment modules contained in the unit. Well, you can use clones for that. First draw the Unit Graphic and then clone the symbols into each Equipment module. Then you can change the symbols in the EM diagram into masters. The result is that you can show the Unit diagram with the EMs that each valve etc belongs to. Reverse Engineering with Clones Many times you will already have some lists of the objects (most often the instrumentaton, but if you are reverse engineering an actual system you should be able to get much moree, such as lists of parameters If you have such these then you can use Paste Special to place them on a diagram that you use as a Workspace. You can then copy these as clones onto diagrams that fit the structure you want, and then change the clones to masters.
-o-
p137
ControlDraw Ltd
ControlDraw Manual
You can also display the page name rather than the page number for clones, and even truncate that to a selected number of letters. Some of these settings, such as Show Clones can also be set for each diagram in the Diagram Details form See also Defer Symbol Links display
-o-
Example showing a link from a Recipe (diagram 13) above and a phase (diagram 35) below Show Descend Link Arrows: This is on by default and makes an object that has 'Descendant links' to or from it show a vertical line to the left of symbol. If the symbol links to a descended object (see Defer functions) then the line has an arrow at the bottom end, if it is linked to from a parent diagram there is an arrow at the top end. This is particularly useful when using models with Defer functions, for example to assign recipe parameters at a top level that are passed down to a lower level Show Link Class Abbrev - causes the page number for a descendant link to be prefixed with the abbreviated class name of the page it is on. So if you link a parameter on a recipe procedure to a parameter on page ## and page ## is a phase the link will show as ph##. In addition if there are more than one links they are all indicated
p138
ControlDraw Ltd
ControlDraw Manual
-o-
PFC Options
These are set in the Project XRef and PFC Options tab
"When Adding PFC Steps Prompt to use existing Equipment Procedural Entities" (In S88 terms this corresponds with defining the Link between your Recipe Procedure and Equipment Control.) Equipment Procedural Elements are Phases, Operations or Unit Procedures that are child's of an Acquirable class such as a Unit or EM When this option is set and you add a step to a PFC diagram by Right Clicking a step then your are asked "Use existing Equipment Procedural Element?". If you answer Yes then all the EPE's are listed and you can pick one from them. Then the new step will be a parent of the same EPE and have the same name. Plus "When Adding Equipment Procedural Entities, use SymbolCopy" In this case the EPE's are listed even where they do not have child diagrams and the new step is made as a SymbolCopy (a type of Clone that includes data) . This provides a closer link to the Equipment Control. Note- the source object must have appropriate connection point for the added EPE to connect into the chart Also added a new standard User Query, EquipmentProceduralElements. This lists all operations and phases that are on Unit and Equipment Module diagrams (Actually those on diagrams for classes that have the CanAcquire flag set) You can also set this option by Clicking on Prompt for EPE in the PFC Menu
-oThis is all about defining the Master value of a recipe param eter setting. In a model, as with most batch package you can put a Recipe Parameter on a Phase, Operation, UP or the RP. Now, typically the value of the parameter in a higher level (such as a UP) is passed down to a lower level - typically an operation or a phase. Ultimately this should set the product specific value in a unit or equipment module phase. If the parameter is used in a Phase, but you want to define it at the UP level for example then you can link (Right Click Descended object linker ) the parameter in the UP down to the one in the phase. Then using >Tools >Custom Tools > Defer functions , 'Defer Level' of the phase parameter is set to UP and the instances of the Phase parameter get updated with the values of the one in the UP. Now, in, for example, DeltaV Batch the parameter has to pass through any intermediate level, in our example though any operations. The Recipe Defer functions also generate both a diagram (the parameter map) and a list showing which parameters pass though intermediate levels on the way down to the phase or lower level. The Parameter Map This shows the paths from each recipe parameter down to the lowest level, typically an equipment phase. When first shown, all these paths are shown but you can select the top level from the drop down list. The links must be created using the Descended Object Linker You can double click an object to open the diagram p139
ControlDraw Ltd
ControlDraw Manual
You can also delete objects links by clicking on one then pressing the D elete key
The Set Defer fields tab When the Set Defers button is clicked, ControlDraw scans the Defer links in the model and for all recipe parameters instances that are in child pages descended from the page containing the 'Master Recipe parameter': Sets the Defer Level field to the Abbreviated version of the Class name (you can see this is Data Design) Sets the Defer Tag to the tag of the 'Master Recipe parameter': Sets the Defered field true. It also looks at the Instance of the Link Master in the same path and Increases Max if the lower level is too low Reduces Min if the lower level is too high If a recipe parameter is Linked to the Master parameter but not in the child pages of the m aster then the Defered field is still set to true, but the Defer Tag and Defer Level are set to '???' This means that if you defer from the Recipe level then all the instances are set, but if you defer from , say, a UP the only those descended from that UP are set. It means that if you defer from the UP level once then you should also defer from all the other UP. Review facilities are provided to help to track down results, User Queries can show the 'Implied
Parameters and links on the diagrams. The Implied Defers tab Implied Defers are those where a link passes down through a diagram level without there being a corresponding parameter on the diagram. Running Scan and build creates a table of all these so that they can be displayed on the diagram using a "Parameter Pass thrus" special symbol
p140
ControlDraw Ltd
ControlDraw Manual
The Configure tab The Recipe Parameter fields must be configured correctly, generally clicking the "Set Defer Initial Settings" button will do this.
-o-
This form is available from the menu when you right click a diagram. If you invoke the form with a single object selected on a diagram, you can link or unlink it. If you invoke the form with a no objects selected you can use this to make new objects on the current diagram at the same time creating the links. The Count shows if there are several paths to the same parameter, this is indicative that you may want to create new parameters on the child pages, so as to end up with just one. For example if you call the same phase several times but from different operations then you should create parameters on the operations. p141
ControlDraw Ltd
ControlDraw Manual
The Go to Parameter Map button calls up the Recipe Defer Functions Note - if you have several calls to the same procedural element and you want to set different values for each then you can connect the parameters to the objects as shown below
-o-
Autoname connections
For scripting to work without errors the connection names for an object should be unique. Autoname connections generates such names in the form prefixIn# or prefixOut# where # is an incrementing number and prefix is the prefix defined for the signal type. Autoname connections is provided in the symbol details and symbol scripting forms. When this button is click ControlDraw prompts "Preserve compliant names" when selected the names are not changed if their first letters match the default for the connection type. When Auto-renaming connections from the Symbol Dynamics Form ControlDraw attempts to rename the variables in the symbol script. This works provided by substituting the old connection names with the new ones in the entire script. -o-
ControlDraw Manual
Diagram background
A diagram can have a background colour or a picture. The colour is set in Page Details. You can paste a picture into a diagram background using Paste Special Another way is in Diagram Details form, where you can select a picture file to use as the background for a diagram. This means that you can now use project P&ID's as background. To do this, use your P&ID software to export a picture as a Windows Picture file (emf, gif,bmp, jpg are supported) to and then point to the file from page details. If the picture has been changed ControlDraw will produce a message when you open the page, and record the changes in the page history. Also the page keeps a local copy of the picture so that if the picture file is removed the background is retained. You can switch the background picture on and off with the right mouse butten and clear the picture from the Diagram Details form See also Draw using a P&ID -o-
-o-
ControlDraw Manual
Typically, process flow diagrams will include: Primary Process piping Major equipment items Control valves and other major valves Connections with other systems Major bypass and recirculation streams Operational data (temperature, pressure, flow, density, etc.), often by stream references to a mass balance. They generally cover a single part of the process and several are required for a complete process. These can easily be produced with ControlDraw and a sample model is provided. Tip - in order to create the table of stream data you can use, Process Material symbols (for example) and add the data in the Symbol Data. See Process Flow Diagram Type
-o-
One point to understand is that the palette does not contain all the pictures that you can use in a diagram. However it does provide a number of examples of equipment symbols that you can put in a diagram then change to be the one that you want. Most typically this involves changing the picture. To change the picture for a symbol, click the symbol then select the Picture button in the Symbol Controls. Make sure to deselect embedded then you can select from the hundreds of pictures that come with ControlDraw but are not yet stored in the model. Full P&ID's are schematic drawings, typically done with AutoCAD, showing equipment, instrumentation, piping, valves and other components and associated information incudling that required for construction, operation and maintenance.
p144
ControlDraw Ltd
ControlDraw Manual
It is often asked by ControlDraw users whether they can import from their existing P&IDs. This is not directly possible but the P&ID is still very useful and can be deployed in a model. Then in each Diagram, paste the P&ID into the diagram background, again using Paste Special To do this you need to get a copy of the P&ID as for example a JPG, or PDF, then Copy it into the Windows Clipboard. (You can also set the diagram background file name in the Page details provided it is JPG, BMP or GIF ) Then I overlay the instruments (Control Modules) of the diagram before moving them to the relevant equipment modules.(or still better first Cloning them then making the EM versions the clone masters) I generally eventually remove the background. The cloning method allows you to keep the original P&ID whilst also having the Equipment Modules containing the control modules. Furthermore, if you can get a list from the P&ID database of the instruments then you can use paste special to import those. Paste Special, can also import a complete set of diagrams containing symbols and child pages from a simple list. You can set the tagnames, classes, pictures, positions and sizes of the symbols, and you cab set child page links too. The data must be in a defined format, this is provided with examples in the excel file ImportSamples.xls included in the ControlDraw Samples folder.
-o-
Split Tagnames
Some text positions separate the first letters from the first number part so that they are displayed in two lines, one above the other. The split happens at the first number (0 to 9) that follows a letter (a to z, Ato Z) If there is no such split then the tag is not divided into two lines A Space does not count as a letter, so for example R 123 does not split but R123 does. Numbers at the start do not cause a split, so 10R123 splits into 10R and 123 -o-
SAMA
The Scientific Apparatus Makers Association (SAMA) no longer exists, you can still find the standard SCOPE AND PURPOSE "Functional Diagramming of Instrument and Control System s" 1.1 This standard presents both symbols and diagramming format for use in representing measuring, controlling and computing systems.
-o-
Page 1 checks
In all ControlDraw models, Page 1 should follow certain rules if the model is to be used for data storage as well as just diagrams: Page 1 is the Contents page and so it should p145
ControlDraw Ltd
ControlDraw Manual
Have Parent Links to child pages. Contain Top level Classes, IE the classes of the objects on this page should be at the top of the hierarchy The Classes of Symbols that are connected to child pages should be Included in Tables Page 1 check also checks that there are no objects with the same class as those on page 1 in the rest of the model See also Non Included Parent Classes -o-
Model Advisor
The form provides a step by step method to check a model.
It lists a number of essential checks that should be carried out. You can select each step and then click "Check" to invoke the required funtion. If 'Record and Confirm reviews' is set then after each check a form appears where you can record the result of each check. -o-
Classes in Parents
This lists all the pages where a page of the same class is in the parent hierarchy. So, for example if you have a Process cell, containing a Unit which then contains a Process cell then this will be listed. Note that while S88 and ControlDraw permit Control Modules in Control Modules and other recursive levels in practice it is recommended that in such cases a new class should be created. -o-
ControlDraw Manual
This lists all the Objects whose class is not allowed on a diagram according to the model rules. -o-
Lost References
This checks if the source objects for all Clones and Cross References type symbols exist and lists those where it does not. Note when deleting objects that are refered to by a SetState in the model there is now a warning and you can cancel the deletion. If you do delete them the clone tagname is not completely wiped out, !Ref not found! is appended instead. This is truncated if needed to a total length of 32ch. Backup on close is now disabled if the model is open elsewhere, eg in the reviewer. In Complete Update, after updating a button appears, Rename as Original, which will rename the old file as oldname.cndOld and the Updated file with the origiinal name -o-
p147
ControlDraw Ltd
ControlDraw Manual
When Number Exclude is set it indicates that the tagname is excluded from the RealTag of descendent symbols whose class RealTag has 'with exclusions' Typically, and in the standard ControlDraw models, S88 Units are number roots. This generally works well. See Also Hierarchical Tags -o-
Hierarchical Tags
In ControlDraw, Hierarchical Tags are tags/names for symbols that are made up from the names that appear on the diagrams for each level of the model Hierarchical. They should provide a unique name for each instance of a symbol. For example say the first diagram has a unit named u1123 on it, with a parent link to page 2. Page 2 has en equipment modules named em001 on it, linked to page 3 And page 3 has a valve, v01 on it Then the Hierarchical Tags of v01 on page 3 is then u1123.em001.v01 Now, Page 1 might have another unit on it, u1124 u1124.em001.v01 is another instance of v01 on page 3 So, Hierarchical Tags this is a tag that applies to an instances. They are unique to each instance provided there are no duplicate symbol names on a diagram. But in large models this can be cumbersome and for other reasons a better (shorter) tagnames could be used. That is the reason for RealTags. -o-
ControlDraw Manual
-o-
ControlDraw Manual
SFC Draw is an editor for Sequential Function charts that provides a more powerful alternative to the original SFC functions in ControlDraw A diagram can be set as a Special SFC Draw type in the Page Details If this is done then An SFC Draw button appears on the diagram. clicking this will invoke the SFC Draw editor The steps and transitions have an extra SFC Tag number that is separate from the normal tag. This is in addition used instead of incrementing letters when a connection is splti. Even if a diagram is not set as special, the SFC Draw editor can be invoked by right clicking an element in an SFC and selecting Arrange in SFC Draw from the SFC Menu. This will then attempt to load the diagram into SFC Draw editor. First the chart is checked to ensure that it follows SFC rules, if it does not then no changes are made but a message indicates what problems were found (eg No transition after Start) and the offending elements are shown in Red. If the checks are passed the SFC Draw form is shown. You can then use SFC Draw functions to edit the chart.
SFC Draw provides many features to make chart editing quick and effective. Features include Quick and easy chart editing Automatic chart layout Configurable chart level of detail - see Options SFC rules enforced whilst drawing - you cannot draw an illegal chart Multi level Undo Redo Menu and/or mouse clicks are used for chart editing. Using SFC Draw ensures logical consistency at all times preventing the production of Illegal charts. Note - no changes are made to the diagram until you save the chart and confirm that you want to update the diagram -o-
p150
ControlDraw Ltd
ControlDraw Manual
-o-
Chart Arrangement
SFC Draw provide many different ways of displaying a chart, depending on the settings in Options Standard The text for a step can be shown to its right. This is set in the Options form.
p151
ControlDraw Ltd
ControlDraw Manual
Test Inside Steps or inside with the step box size set be the amount of text Select "Step text inside step" in the options form to select this mode.
Hide Details Shows the chart Sructure Only Text apart from step and transition numbers can be hidden. This is a useful mode for arranging large charts, and performing some actions such as dragging between states to create a transition This button in the toolbar toggles between the Select "Hide Details" in the options form to select this mode.
-o-
Options
This form provides control over the appearance of a chart. Note - settings here are generally saved as default, and also in the Chart file. There are three tabs, as below Layout: Many options, see Chart Arrangement You can also control the fonts and colours used for the various parts of a chart
p152
ControlDraw Ltd
ControlDraw Manual
-o-
Start a Chart
You can create and SFC in a Blank Diagram with >Right Click >Star New Diagram?SFC Draw When starting SFC Draw an initial chart is drawn. This has a start, a transition, one step, another transition and an end.
p153
ControlDraw Ltd
ControlDraw Manual
You can then add steps and transitions and branches to build the chart. Selection Branches can be added around a step or below a step Steps can be split into parallel branches You can drag connection ends to re-arrange a chart You can use Right Clicks to change the order of branches You can drag from step to step to create a new transition if it is legal As your chart progresses you may want to hide the details so that you can re-organise the chart quickly. The details can be quickly hidden or restored using the toolbar burrons. -o-
Add a Step
You can add a step almost anywhere in a chart. You can only add a step with a transition. Remember that every transition must go to one and only one destination. Select a step and right click to see the options available for the step. These respond to the logical context of the step.
You can also select a link and add a step (and transition) into the link. If the link is below a step the transition is added first and visa versa -o-
ControlDraw Manual
You can add a selection branch around or below a step. Select a step and right click and select Add Select Branch Here or Add Select Branch Below If you chose here then the an alternative path is created around the selected step.
If Insert below then the new branch starts below the selected step and terminates at the End
-o-
p155
ControlDraw Ltd
ControlDraw Manual
If the step is already in a parallel branch then you can Extend a parallel branch -o-
-o-
* for example you cannot connect a step to a step or link into a parallel branch. -o-
p156
ControlDraw Ltd
ControlDraw Manual
-o-
-o-
Logical consistency
p157
ControlDraw Ltd
ControlDraw Manual
SFC Draw Charts must be complete. That is they must conform to the rules, so you cannot draw illegal charts, for example have a transition that goes nowhere or jumps into or out of parallel steps. SFC Draw renders the chart complete by: Deleting Steps and Transitions that do not connect back to the start. Connecting transitions that go nowhere to the the End Step. Putting a Transition connected to the End step after Steps that go nowhere.
-o-
Recursive Links
Recursive Links are connections from a transition back to a previous step in the chart, as below. SFC Draw automatically detects if a link is recursive.
You can click the link and toggle between showing it or showing connectors
p158
ControlDraw Ltd
ControlDraw Manual
-o-
p159
ControlDraw Ltd
ControlDraw Manual
Index -AAbout 76 About the Help 8 Adding Text Lists to diagrams 135 Animate 90 Arrange symbols 43 Arrows 57 Associated Matrices 21 Automatically Filling Instance Fields 124 Autoname connections 142 AutoSFC 94
-BBackups 77 Block Change 43 Build and update the Data tables 104
-CCalculation 83 Calculation symbols 83 Cannot find Reference Model 148 Change the Diagram Order 104 Classes 10 Classes and Data Build 47 Classes in Parents 146 Clipboard support 129 Clone 136 Clones 136 Clones and Cross References 147 Code 90 Colors 35 Compact 53 Compare 77 Compare and Import Data 50 Compare Form Tree 65 Compare models form 64 Complete Update 130 Configure Rules 72 Connection Controls 42 ControlDraw 7 ControlDraw Origins 121 Conversion from Controldraw1 to ControlDraw2 122 Conversion from Controldraw1 to ControlDraw3 123 Convert 130 Create Diagrams 97 Create Recipe and Link their Procedures to Equipment Control 104 Creating Diagrams 107 Cross Reference 137 Cross Referencing Options 137 Custom 69 Custom Tagging 69
-DData Design 46 Data Entry and Display Methods 88 Data rich models 86 Data Type 61 Data Views 48 Database Menu 118 Database Tagging and Numbering 68 Defer Symbol Links display 138 Descended object linker 141 diagram 8 p160
ControlDraw Ltd
ControlDraw Manual
Diagram background 143 Diagram Details Form 45 Diagram List and Toolbar 31 Diagram Sorter 70 Diagrams and Symbols 8 Disable Automatic Synchronising 148 documentation 11 Don't Cut and Paste, Move 112 Draw using a P&ID 102 Drop objects into connections 99 Duplicate 68, 71, 74 Dynamic Simulation 89 Dynamics 89
-EEdit Diagrams 98 Edit Menu 117 Embedded Picture Manager 80 EPE 104, 105, 148 Equipment Control 104 Equipment Independent Recipes 104 Equipment Module 27 Equipment Module Diagram 27 Equipment Modules 110 Equipment Phase 21 Equipment Procedural Element 104, 105 Equipment Procedural Entity 104, 148 Error Messages 134 Example 120 Expression 83 External Tag 69, 129, 68
-FFavorites 49 Fields 46 File Menu 116 Find Symbols 79 Fonts Form 55 Forms By Function 28 Formula 104 Function 83, 90 Function Block diagrams 22
-GGeneral Modeling Guidelines 108 Getting Started 107 Global Find and Replace 74, 81 Grafcet 150, 149, 21 Group controls 43 Guidelines for Diagrams 107
-HHeader 104 Help Menu 119 Hierarchical Tags 148 Hierarchies and Models 9 hierarchy 9
-IImport 67, 100, 53 Import / Export Data 124 Import a Matrix 100 Import Matrix 135 Importing Diagrams from Another Model 101 Importing from another model 133 p161
ControlDraw Ltd
ControlDraw Manual
Importing Pictures from another model 133 In at the Deep End 103 Inherit 124, 46 Instance 16 Instance Tag 69 Instances 104 Instrument List 102 InTools 102 Introduction 7 IO List 102, 111 ISA S88.01 Unit 26 ISA8.01 Equipment Module 27 ISA889.01 Phase 21
-LLicences - Types, Updates and Renewals 113 License 75 LICENSE AGREEMENT 112 Line Edit Form 57 Line Styles form 57 Link Page Selector 42 Linking Recipe Procedures to Equipment Procedures 105 List View 79 Lock and Unlock 48 Locking 31 Logic Diagram 23 Lost References 147
-MMake Connections 98 Managing ControlDraw Files 110 Master Recipe 104 Matrices 15 Matrix 58, 61, 61, 67 Matrix Columns tab 61 Matrix form Matrix State Rows 61 Matrix Types 60 Menu Guide 120 Menus 116 Missing Referenced Child diagrams 149 model 9, 7 Model Advisor 146 Model File Structure 147 Model Menu 118 Model Review 71 Model Review Heirarchy 73 Model Review Reference 145 Mouse Buttons 31, 30 Multi-User and Single User Modes 126
-NNavigate Menu 117 Non Included Parent Classes 147 Not allowed in Page Class 147 Number Automatically 125 Number Root and Number Exclude 147 Numbering systems 108
-OObject and Instance Data 49 Object Class <> Symbol Class 146 Object Tag 68 Object Tags 87 Objects and Instances 85 p162
ControlDraw Ltd
ControlDraw Manual
Operating mode 31
-PP&ID 102, 24 Page 1 checks 145 Page Browser 104, 37 Page Tag 68 Parent <> Class 146 Paste Properties 46 Paste Special 67 Paste Special Import as Pages and Symbols 100 PFC Options 148, 139 PFC Procedure Function Chart 22 PFD 24 Phase 104, 150 Picture 67, 65 Picture Selector 65 Polymorphic Diagrams 19 Printing 17 Procedure Charts 95 Procedures 104 Process Automation 7 Process Flow Diagam (P & I D) 24 Process Flow Diagram 24 Project Details 34 Project Options 35 Project Users View 35 Project Words 34 Publish a revision 102 Publishing and Making Backups 109
-RRapid Model building 103 Re-assign Links 74 RealTag 69, 68, 87 Recipe Defer Functions 139 recipe parameter 139 Recipe Procedure 104, 105 reference model 148 Reference model Updating 127 Reference models 13 Registration 75 Repair 53 reusable objects 7 Review Status 48 Root 69 RPE 104 RTF editor Form 106 Run 89, 63 Run Mode 89 Run Mode controls 62
-SS88 10, 109 S88 Modeling Guidelines 110 S88 Models 109 SAMA 145 SAMA Diagrams 22 sample 103, 120 p163
ControlDraw Ltd
ControlDraw Manual
Sample Models 120 Save Symbol Properties 39 Script 124 Scripting Symbol Wizard 92 Sequence Numbering 75 Set States Symbols 82 Set Symbol Selector 94 SFC 94, 150, 75, 149, 21 SFC / Grafcet Phase 21 SFC Draw 150 Shape 66 Shape Selector 66 Shared Instance Query Builder 52 Show Menu 118 Show Symbol Data 50 Shrinking a model. 131 Signal dynamics 65, 93 Signal States Dynamics 142 Signal Styles 56 Simulate 90 Simulation 89, 92, 92, 90 Simulation AutoGenerate Scripts 143 Sometimes Asked Questions 125 Special Default 46 Special Defaults 124 Special Symbols 114 Specifications 12 Split Tagnames 145 Start a Model 96 state 89, 58, 61, 89 State Matrix Run Controls 63 State Transition 94, 27 Step 150 Support 17 Swap two symbols on a diagram 100 Symbol Controls 39 Symbol Data 88 Symbol Details Form 44 Symbol dynamic types 92 Symbol Scripting 90 Symbols 8, 10
-TTag Balloons 40 Tag Database 102 Tag Naming 16 Tagging Scripts 83 Tagname 8 Test Sheets 128 Text Text edit keys 124 Text Table 135 The Database 15 The Diagram Mode Toolbar 31 The Diagram Window 32 The File Manager 53 The History view 63 The Main Screen 30 The Main Toolbar 30 The Outline form 38 The Page Text form 33 The Palette 36 Tip of the Day 29 Tips and Tricks 111 Tools Menu 118 Tools Utilities 54 p164
ControlDraw Ltd
ControlDraw Manual
-UUnderstanding the ControlDraw Database 84 Undo Changes 129 Unit 26 Unit Diagram 26 Unit Phase 21 Update 53 Update Policy 17 User Query Special Objects 135 Using SQL with ControlDraw models 88
-VVariables 89, 90 Variant Tagnames 128 version 8 Version Controls 14 View Menu 117 View text only 78
-WWhat Happens in Run Mode 95 Window Menu 119 Words and Text 11
p165
ControlDraw Ltd