acm dmcplus interface

42
Aspen Custom Modeler 2004.1 DMCplus Controllers Interface Guide

Upload: surya-budi-widagdo

Post on 07-Apr-2015

721 views

Category:

Documents


21 download

TRANSCRIPT

Page 1: ACM DMCplus Interface

Aspen Custom Modeler 2004.1

DMCplus Controllers Interface Guide

Page 2: ACM DMCplus Interface

Who Should Read this Guide 2

Who Should Read this Guide

This guide is designed for users requirening information on Contains information on using DMCplus with Aspen Custom Modeler or Aspen Dynamics.

Page 3: ACM DMCplus Interface

Contents 3

Contents

INTRODUCING ASPEN CUSTOM MODELER....................................................... 5

1 USING DMCPLUS CONTROLLERS ................................................................. 6 Generate a DMCplus .mdl File .................................................................................... 6 Creating a Script to Generate a DMCplus .mdl File ........................................................ 6

Example of Generating a DMCplus .mdl File ............................................................ 8 Running Step Tests on a Dynamic Simulation............................................................... 9

Defining a Step Test ............................................................................................ 9 Example Task ..................................................................................................... 9 Running the Step Test ....................................................................................... 10 Exporting Step Test Results as Collect Files........................................................... 11

Using a DMCplus Controller in a Dynamic Simulation ................................................... 11 System Requirements........................................................................................ 12 Configuring the Controller in DMCplus .................................................................. 12 Configuring the Controller in your Dynamic Simulation ........................................... 12

About the Configure Form ....................................................................................... 13 ControllerName for DMCplus ............................................................................... 14 ControllerActive for DMCplus............................................................................... 14 NMV for DMCplus .............................................................................................. 14 NFF for DMCplus ............................................................................................... 14 NCV for DMCplus............................................................................................... 14 MVTag for DMCplus ........................................................................................... 14 FFTag for DMCplus ............................................................................................ 14 CVTag for DMCplus............................................................................................ 14 MVMan for DMCplus........................................................................................... 15

About the ConfigureUnits Form ................................................................................ 15 MVUOM for DMCplus.......................................................................................... 16 MVFactor for DMCplus........................................................................................ 16 MVOffset for DMCplus ........................................................................................ 16 FFUOM for DMCplus........................................................................................... 16 FFFACTOR for DMCplus ...................................................................................... 16 FFOffset for DMCplus ......................................................................................... 17 CVUOM for DMCplus .......................................................................................... 17 CVFactor for DMCplus ........................................................................................ 17 CVOffset for DMCplus ........................................................................................ 17

Page 4: ACM DMCplus Interface

Contents 4

Automatic Configuration of Units of Measurement ....................................................... 17 Running the Simulation with a DMCplus Controller ...................................................... 18

ONREQ for DMCplus .......................................................................................... 18 MVMan for DMCplus........................................................................................... 19

2 EXAMPLE OF USING A DMCPLUS CONTROLLER.......................................... 20 Running the Simulation in Aspen Plus................................................................... 20 Modifying the Regulatory Control Loops................................................................ 20

Designing the Multivariable Control Scheme............................................................... 23 Automating the Step Test................................................................................... 24 About the Tagnames.......................................................................................... 25

Importing the Data................................................................................................. 26 Creating and Updating a Controller Configuration File .................................................. 29 Configuring the DMCplus Controller in Aspen Dynamics ............................................... 30 Studying Disturbances ............................................................................................ 33

GENERAL INFORMATION............................................................................... 38 Copyright.............................................................................................................. 38 Related Documentation........................................................................................... 40

TECHNICAL SUPPORT.................................................................................... 41 Online Technical Support Center .............................................................................. 41 Phone and E-mail................................................................................................... 42

Page 5: ACM DMCplus Interface

Introducing Aspen Custom Modeler 5

Introducing Aspen Custom Modeler

Aspen Custom Modeler (ACM) is an easy-to-use tool for creating, editing and re-using models of process units. You build simulation applications by combining these models on a graphical flowsheet. Models can use inheritance and hierarchy and can be re-used directly or built into libraries for distribution and use. Dynamic, steady-state, parameter estimation and optimization simulations are solved in an equation-based manner which provides flexibility and power.

ACM uses an object-oriented modeling language, editors for icons and tasks, and Microsoft Visual Basic for scripts. ACM is customizable and has extensive automation features, making it simple to combine with other products such as Microsoft Excel and Visual Basic. This allows you to build complete applications for non-experts to use.

Page 6: ACM DMCplus Interface

1 Using DMCplus Controllers 6

1 Using DMCplus Controllers

There are three capabilities in Aspen Custom Modeler® and Aspen Dynamics� designed to help you develop and test DMCplus� controllers. You can:

• Generate a DMCplus .mdl file directly for immediate use in DMCplus. This is the recommended option and avoids the intermediate Collect file.

• Run step tests on the dynamic simulation and export the results to the DMCplus Collect file format for use by the model identification tool DMCplus Model.

• Use a DMCplus controller in a dynamic simulation.

Generate a DMCplus .mdl File To generate a DMCplus mdl file:

1 Ensure that the simulation is at steady state. A convenient way to do this is to display the History Table as a Plot, and check that the values of the variables do not vary with time prior to the start of the step tests.

2 Create and then run a script defining the variables you want the DMC controller to manipulate, the measured variables and appropriate values for options controlling the generation of the mdl file.

The .mdl file is automatically generated using the values of response of the measured variables to step changes in the manipulated variables. This is done by integrating the state-space linear model manipulated variable, through time until the state variables of your model have settled down to steady state.

Creating a Script to Generate a DMCplus .mdl File To create a script to generate a DMCplus .mdl file:

1 Define the manipulated variables using AddInputVariable.

2 Define the measured variables using AddOutputVariable.

Page 7: ACM DMCplus Interface

1 Using DMCplus Controllers 7

3 Specify values for options controlling the generation of the mdl file.

4 Request generation of the mdl file.

5 Specify the name of the mdl file using Calculate.

Syntax for Generating a DMCplus .mdl File

Use the following syntax:

Set Doc = ActiveDocument Set MDL = Doc.CDI MDL.Reset MDL.AddInputVariable "var path" MDL.AddOutputVariable "var path" MDL.GenerateStepResponse MDL.StepResponseTimeInterval = intervaltime MDL.StepResponseIntegrationsPerInterval = stepsperinterval MDL.StepResponseAbsoluteTolerance = stepabstol MDL.StepResponseRelativeTolerance = stepreltol MDL.StepResponseAbsoluteRampTolerance = steprampabstol MDL.StepResponseRelativeRampTolerance = steprampreltol MDL.StepResponseMinIntervals = minint MDL.StepResponseMaxIntervals = maxint MDL.Calculate "filename argument"

Set Doc = ActiveDocument Accesses CDI functions for the currently open simulation

document

Reset Clears the list of variables and resets the other options to their default values

AddInputVariable "var path"

Used to add manipulated variables. If the variable name includes double quotes, you must insert two of these in the variable path for input and output variables, for example:CDI.AddInputVariable "Feed1.F(""CH4"")"

AddOutputVariable "var path"

Used to add measured variables

GenerateStepResponse Requests computation of the response of the measured variables with respect to perturbations in the manipulated variables. The results of the step response calculation are output in the form of a DMCPlus mdl file.

Calculate "filename argument"

Calculates and specifies the name of the .mdl file. The filename argument provides a file name prefix. If you provide a prefix, the file is named prefix.mdl. If you do not supply a file name prefix, the files is named cdi_.mdl

StepResponseTime Interval = intervaltime

Specifies a positive value intervaltime defining the sample times of the response of the measured variables to steps in the manipulated variables. It has default equal to the current value of the Communication Time

StepResponse IntegrationsPerInterval = stepsperinterval

Specifies a positive integer stepsperinterval defining the number of integration steps taken per time interval used to generate the step response; the default is 10.

StepResponseAbsolute Tolerance = stepabstol

Defines the absolute tolerance used to compute the responses of the measured variables. It has default 1.e-5 and range 0 to 1. You may need to decrease this tolerance if your measured variables have very small values.

StepResponseRelative Tolerance = stepreltol

Defines the relative tolerance used to compute the responses of the measured variables. It has default 1.e-5 and range 0 to 1.

Page 8: ACM DMCplus Interface

1 Using DMCplus Controllers 8

StepResponseAbsolute RampTolerance = steprampabstol

Defines the absolute tolerance used to detect if any of the measured variables are "ramping", that is not at steady state. Ramping variables can exist even though all the state variables in your flowsheet have settled down to steady state after the step changes in the manipulated variables. You may need to change this tolerance depending on the scaling and range of your measured variables to avoid falsely detecting ramping variables. It has default 1.e-2 and range 0 to 1 and the value should always be greater than StepResponseAbsoluteTolerance.

StepResponseRelative RampTolerance = steprampreltol

Defines the relative tolerance used to detect if any of the measured variables are "ramping", that is not at steady state. You may need to change this tolerance depending on the scaling and range of your measured variables. It has default 1.e-2 and range 0 to 1 and the value should always be greater than StepResponseRelativeTolerance.

StepResponseMin Intervals = minint

Defines the minimum number minint of sample time intervals to be computed before the step response is defined to be at steady state, with default of 15. This can be used to avoid terminating the step response too early in the case of controllers with "dead time" or in special cases where the response settles down temporarily before moving to the true steady state later.

StepResponseMax Intervals = maxint

Defines the maximum number of sample time intervals of the measured variables to be calculated, with default 1000.

Note: The number of intervals produced will be a multiple of 30, 45, 60, 75, 90, 105 or 120 for compatibility with DMCPlus.

Example of Generating a DMCplus .mdl File The following is an example of generating a DMCplus .mdl file:

Set Doc = ActiveDocument

Set MDL = Doc.CDI

MDL.Reset

MDL.AddInputVariable "b1.valueposition"

MDL.AddOutputVariable "b1.level"

MDL.GenerateStepResponse

MDL.StepResponseTimeInterval = 1

MDL.StepResponseIntegrationsPerInterval = 10

MDL.StepResponseMinIntervals = 30

MDL.StepResponseMaxIntervals = 800

MDL.Calculate "myresponse"

Page 9: ACM DMCplus Interface

1 Using DMCplus Controllers 9

Running Step Tests on a Dynamic Simulation This section describes how to generate step response results from a simulation for import into DMCplus Model, where they can be used for model identification.

Click one of the following links to display information on running step tests:

• Defining a step test.

• Running the step test.

• Exporting the step test results.

This section assumes that you have already created the dynamic simulation.

Defining a Step Test To define a step test:

1 Determine the variables that you wish to perturb in the step tests and determine their variable names.

Tip: In Aspen Custom Modeler or Aspen Dynamics, the best place to look for these variables is on the Manipulate tables of the blocks. These forms include variables whose values can be changed at runtime and which are therefore potential step testing perturbation variables.

Note: Only variables that are Fixed can be perturbed in step tests.

2 In the All Items pane of the Simulation Explorer, select Flowsheet and in the Contents pane, double-click Add Task.

3 When prompted, enter an appropriate name for the task, for example, StepTest1.

4 Use Task Language to define the steps.

5 Now you can create a History Table containing the variables for which you require results. To do this, from the Tools menu click New History Table.

6 Open the tables containing the variables you require and drag and drop the variables from these tables to the History Table.

You must define the History Table before the run to ensure that results are recorded for your chosen variable throughout the dynamic simulation.

Click and hold down the mouse button on the required variable name and drag the variable to the History Table. Release the mouse button.

Example Task An example task is shown here:

Page 10: ACM DMCplus Interface

1 Using DMCplus Controllers 10

Task StepTest1 runs when time == 0.1

TC101.SPRemote : CC101.SPRemote * 1.05;

wait for time == 1.1;

TC101.SPRemote : CC101.SPRemote / 1.05;

wait for time == 2.1;

TC101.SPRemote : CC101.SPRemote * 0.95;

wait for time == 3.1;

TC101.SPRemote : CC101.SPRemote / 0.95;

wait for time == 4.1;

Pause;

End

This task increases the set point of a temperature controller by 5%, waits an hour for the simulation to level out, and then reduces the set point to the original value, and again waits an hour for the simulation to stabilize.

It then repeats this for a 5% decrease in the temperature controller set point and pauses the simulation.

This task only manipulates one variable, but you could go on to repeat this perturbation sequence for other variables.

When creating the task you may need to use trial and error to ensure you allow sufficient time between steps for the simulation to level out to a new steady state.

Running the Step Test To run the step test:

1 Ensure that the simulation is at steady state before the step tests begin. A convenient way to do this is to display the History Table as a Plot, and check that the values of the variables do not vary with time prior to the start of the step tests.

2 Activate the step test Task to be used.

3 Run the dynamic simulation.

Now you can export the results as a Collect file.

Page 11: ACM DMCplus Interface

1 Using DMCplus Controllers 11

Exporting Step Test Results as Collect Files To export the step test results as a collect file:

1 In the History Table that you created, click with the right mouse button and from the menu that appears, click Refresh. The table is updated with the results from the simulation.

2 Click the right mouse button again and click Export Table. The Export File Properties dialog box opens.

3 The TagName column contains the TagName property for each variable. Edit this to enter the tag name that you wish to use to refer to the variable within DMCplus. Every variable must have a tag name.

The maximum length of a DMCplus tag name is 12 characters. If the tag name is longer than 12 characters, it will be truncated when exported to the Collect file.

The Variable and Description columns contain the name and description for each variable in the History Table. You cannot edit these.

4 When you are satisfied with the tag names click the Export button.

5 In the Export dialog box, select DMCplus Collect (*.clc) in the Save As Type box, and enter the name for the file, then click Export.

Using a DMCplus Controller in a Dynamic Simulation This section describes how to use a DMCplus� controller in a simulation of the process being controlled.

Page 12: ACM DMCplus Interface

1 Using DMCplus Controllers 12

System Requirements To use a DMCplus controller in a simulation, you must have the following software installed on a PC running Windows 2000 Professional or Windows XP Professional: • Aspen Custom Modeler or Aspen Dynamics 2004.1 server

• DMCplus Online version 6.0 Service Pack 1 or later

• Cim-IO version 6.0 Service Pack 1 or later (you do not need Cim-IO servers installed to use the interface)

The Aspen Custom Modeler or Aspen Dynamics client user interface can run on the same PC or another PC.

Configuring the Controller in DMCplus You configure a DMCplus controller for use in a dynamic simulation in exactly the same way as a controller for use on-line on a real plant. For details on how to do this, see the DMCplus documentation.

Because the simulation schedules execution of the controller you must ensure that the WTMODE entry for the controller is set to a value of 2.

When you are using the controller in a dynamic simulation, it will not communicate with a DCS or other external software. Therefore, you must ensure that no entries have the READ or WRITE keyword values. If any entries have these values, change them to LOCAL. You may need to change these back to READ or WRITE before you deploy the controller.

For your convenience, DMCplus includes the template DMCplus-ACM.tcc, which includes default values designed for use in building a controller for dynamic simulations.

You should place the .mdl and .ccf files for the controller in a folder with the same name as the controller below the AC Online\app folder in your DMCplus online installation. That is, these files should exist:

Program Files\AspenTech\AC Online\app\controllername\controllername.mdl

Program Files\AspenTech\AC Online \app\controllername\controllername.ccf

Where controllername is the name of your controller.

Configuring the Controller in your Dynamic Simulation The Aspen Custom Modeler and Aspen Dynamics libraries include a model called DMCplus. In Aspen Dynamics you can find it in the Dynamics, ControlModels folder. In Aspen Custom Modeler, this is in the Modeler, Models folder. This model represents the DMCplus controller within your simulation, and will automatically exchange measured and controlled variable values with the controller, and schedule its execution.

To use this model:

Page 13: ACM DMCplus Interface

1 Using DMCplus Controllers 13

1 Create a block on your flowsheet that uses this model.

2 Open the Configure form for the block and enter values for the number of MVs (NMV), feed forwards (NFF) and CVs (NCV). These values should be the same as in your DMCplus controller definition.

3 Use the ControlSignal stream type to connect each of the CVs and FFs from their source block to the InputSignal port of the controller block. You are prompted to select which CV or FF to connect the signal to.

Tip: You must connect all variables so that they are in the same order as in your controller definition, for example use CV (1) for the first CV in your controller.

4 Use the ControlSignal stream type to connect the MVs from the OutputSignal port to their destination blocks. Typically the destination will be a remote setpoint for a PID controller block. Again, connect the MVs in the same order as the MVs in your controller definition.

5 In the Configure form, enter values for each of the parameters. For details on this form, see the next section.

6 Go to the ConfigureUnits form and define the unit of measurement conversions. For details of this form, see About the ConfigureUnits Form.

About the Configure Form This table describes the parameters on the Configure form.

Parameter Description Valid Values Default

Value

ControllerNameControllerNameforDMCplus DMCplus controller name

Any string -

ControllerActiveControllerActiveforDMCplus Controller active Yes No

Yes

NMVNMVforDMCplus Number of MVs Any integer 2

NFFNFFforDMCplus Number of FFs Any integer 2

NCVNCVforDMCplus Number of CVs Any integer 2

MVTagMVTagforDMCplus MV DMCplus tag name Any string -

FFTagFFTagforDMCplus FF DMCplus tag name Any string -

CVTagCVTagforDMCplus CV DMCplus tag name Any string -

MVManMVManforDMCplus1 Manual MV value Any real 1.0

Page 14: ACM DMCplus Interface

1 Using DMCplus Controllers 14

ControllerName for DMCplus ControllerName specifies the name of the DMCplus controller to be used. Capitalization is unimportant, in other words the name COL5X3 is equivalent to col5x3.

ControllerActive for DMCplus When ControllerActive=Yes, and the run mode is dynamic, the DMCplus controller is loaded and used during the simulation.

When ControllerActive=No, or the run mode is not dynamic, the controller is not run, and the MVs are set to MVMan � the manual MVs.

Set ControllerActive=No if you wish to disable the controller for an entire run, for example if you are performing step tests. To switch the controller on and off during a run use ONREQ.

NMV for DMCplus Specifies the number of MVs. This should be equal to the number of MVs in the DMCplus controller.

NFF for DMCplus Specifies the number of FFs. This should be equal to the number of FFs in the DMCplus controller.

NCV for DMCplus Specifies the number of CVs. This should be equal to the number of CVs in the DMCplus controller.

MVTag for DMCplus Specifies the DMCplus controller tag names (MDLDEP entry) for each MV. You must enter a valid tag name for each MV, and this must match the name of an MV in the DMCplus controller. The MVTag for each MV must be unique. The capitalization of the MVTag is not important.

FFTag for DMCplus Specifies the DMCplus controller tag names (MDLDEP entry) for each FF. You must enter a valid tag name for each FF, and this must match the name of an FF in the DMCplus controller. The FFTag for each FF must be unique. The capitalization of the FFTag is not important.

CVTag for DMCplus Specifies the DMCplus controller tag names (MDLIND entry) for each CV. You must enter a valid tag name for each CV, and this must match the name of a

Page 15: ACM DMCplus Interface

1 Using DMCplus Controllers 15

CV variable in the DMCplus controller. The CVTag for each CV must be unique. The capitalization of CVTag is not important.

MVMan for DMCplus Specifies the manual output values of the MVs. The MVs are set to these values for all non-dynamic run modes. These values are also used as the initial values of the controller MVs at the start of a dynamic simulation. MVMan can also be used to change the MV values during a dynamic simulation when the controller is in manual mode.

About the ConfigureUnits Form Internally, all Aspen Dynamics models work in the Metric unit of measurement set. This is true regardless of the units of measurement selected for input and display of results. To see values in this unit of measurement set:

• From the Tools menu, point to Units of Measurement and click Metric.

By default, all CV and FF values passed to the DMCplus controller will be in Metric units and all MV values returned from the controller will be assumed to be in Metric units. If the units of measurement for any of the controller variables are different, these units must be converted to achieve correct operation of the controller.

Use the ConfigureUnits form to define the units of measurement used and any conversion factors required.

Name Description Valid Values Default

Value

MVUOMMVUOMforDMCplus

MV unit of measurement Any string -

MVFactorMVFactorforDMCplus

MV UOM conversion factor Any real 1.0

MVOffsetMVOffsetforDMCplus

MV UOM conversion offset Any real 0.0

FFUOMFFUOMforDMCplus

FF unit of measurement Any string -

FFFactorFFFactorforDMCplus

FF UOM conversion factor Any real 1.0

FFOffsetFFOffsetforDMCplus

FF UOM conversion offset Any real 0.0

CVUOMCVUOMforDMCplus

CV unit of measurement Any string -

CVFactorCVFactorforDMCplus

CV UOM conversion factor Any real 1.0

CVOffsetCVOffsetforDMCplus

CV UOM conversion offset Any real 0.0

Page 16: ACM DMCplus Interface

1 Using DMCplus Controllers 16

MVUOM for DMCplus Specifies the units of measurement for each MV. The DMCplus model will check the units of measurement against those in the DMCplus controller definition (ENGIND entry). When the simulation is run the model will warn if there are any differences.

MVFactor for DMCplus

Specifies the unit of measurement conversion factor for each MV. The MV values in metric units and the value returned from the DMCplus controller are related as follows:

MV = MVdmcp * MVFactor + MVOffset

Where:

MV = MV value in metric units

MVdmcp = MV value returned from the DMCplus controller

MVOffset for DMCplus

Specifies the unit of measurement conversion offset for each MV. The MV values in metric units and the value returned from the DMCplus controller are related as follows:

MV = MVdmcp * MVFactor + MVOffset

Where:

MV = MV value in metric units

MVdmcp = MV value returned from the DMCplus controller

FFUOM for DMCplus Specifies the units of measurement for each FF. The DMCplus model will check the units of measurement against those in the DMCplus controller definition (ENGIND entry). When the simulation is run the model will warn if there are any differences.

FFFACTOR for DMCplus Specifies the unit of measurement conversion factor for each FF. The FF values in metric units and the value returned from the DMCplus controller are related as follows:

FF = FFdmcp * FFFactor + FFOffset

Where:

FF = FF value in metric units

FFdmcp = FF value returned from the DMCplus controller

Page 17: ACM DMCplus Interface

1 Using DMCplus Controllers 17

FFOffset for DMCplus Specifies the unit of measurement conversion offset for each FF. The FF values in metric units and the value returned from the DMCplus controller are related as follows:

FF = FFdmcp * FFFactor + FFOffset

Where:

FF = FF value in metric units

FFdmcp = FF value returned from the DMCplus controller

CVUOM for DMCplus Specifies the units of measurement for each CV. The DMCplus model will check the units of measurement against those in the DMCplus controller definition (ENGDEP entry). When the simulation is run the model will warn if there are any differences.

CVFactor for DMCplus Specifies the unit of measurement conversion factor for each CV. The CV values in metric units and the value actually passed to the DMCplus controller are related as follows:

CV = CVdmcp x CVFactor + CVOffset

Where:

CV = CV value in metric units

CVdmcp = CV value passed to the DMCplus controller

CVOffset for DMCplus Specifies the unit of measurement conversion offset for each CV. The CV values in metric units and the value actually passed to the DMCplus controller are related as follows:

CV = CVdmcp x CVFactor + CVOffset

Where:

CV = CV value in metric units

CVdmcp = CV value passed to the DMCplus controller

Automatic Configuration of Units of Measurement For convenience, you can automatically complete the ConfigureUnits table by running the UOMFactors script for the block. This script assumes that the

Page 18: ACM DMCplus Interface

1 Using DMCplus Controllers 18

units you are currently using to display results in your simulation are the same as those used in the DMCplus controller.

To complete the ConfigureUnits table automatically using the UOMFactors script:

1 Select the units for all of the MVs, FFs, and CVs.

2 In the Simulation Explorer, go to the controller block and run the UOMFactors script. The ConfigureUnits table will be completed automatically.

Note: If the DMCplus units of measurement for a variable are not in the list of available units, you must enter the units, conversion factor and conversion offset manually.

Running the Simulation with a DMCplus Controller When you run a dynamic simulation with the controller active, if you have not already loaded or started the controller using DMCplus Manage, the controller is automatically loaded and started.

Open the Results form to see the current values of the MVs, CVs and Feed Forward variables.

As well as using the Aspen Custom Modeler or Aspen Dynamics user interface, you can use DMCplus OPCON to interact with the controller during the simulation.

Use the Manipulate table to change controller settings during the simulation.

Tip: It is easier to pause the simulation before changing values in this table.

The Manipulate table enables you to change: Name Description Valid Values Default Value

ONREQONREQforDMCplus

Master on/off request switch

0 (Off) 1 (On)

1

MVManMVManforDMCplus2

Manual MV value Any real 1.0

ONREQ for DMCplus Corresponds to the ONREQ flag in the DMCplus controller. Set ONREQ to 1 to have the controller update the values of the MVs, or 0 to switch this off.

Page 19: ACM DMCplus Interface

1 Using DMCplus Controllers 19

If you change from on to off, the MVs will be frozen at their current values. You can manually change their values. To do this:

• Enter your required value in the MVMan row. The corresponding MV will then change to this value.

MVMan for DMCplus Specifies the manual output values of the MVs. The MVs are set to these values for all non-dynamic run modes. These values are also used as the initial values of the MVs at the start of a dynamic simulation.

MVMan can also be used to change the MVs during a dynamic simulation when the controller is inactive or switched off.

Page 20: ACM DMCplus Interface

2 Example of Using a DMCplus Controller 20

2 Example of Using a DMCplus Controller

This example describes a simulation in which 98% pure methylcyclohexane (MCH) is recovered from a mixture of MCH and toluene. Because these components form a close boiling system that is difficult to separate by simple binary distillation, phenol is used as an extractant to enhance the relative volatility of MCH over toluene. This example describes the steps required to set up a DMCplus controller to control the process.

To follow this example, you need to have Aspen Plus�, Aspen Dynamics� and DMCplus Online installed.

All of the files for this example are supplied in the MchDMC example folder.

If you have installed Aspen Dynamics in the default location, this folder is in C:\Program Files\Aspentech\Aspen Dynamics 12.1\Examples.

For more information on using DMCplus with Aspen Dynamics, see the UsingDMCplus Controllers help.

Running the Simulation in Aspen Plus Firstly, the simulation was run and exported from Aspen Plus using the file MchDMC.bkp. If you do this yourself:

• Ensure the Dynamic button is pressed in.

• Because the required dynamic information has already been entered, the simulation just needs to be run.

• Export the file as a flow driven dynamic simulation (.dynf file).

Modifying the Regulatory Control Loops In Aspen Dynamics, when you open the file that was exported from Aspen Plus, the simulation is automatically updated to insert some default pressure and level regulatory controls.

Page 21: ACM DMCplus Interface

2 Example of Using a DMCplus Controller 21

These regulatory control loops were then modified and tuned to reflect the actual control configuration in the plant The following figure shows the modified configuration:

Page 22: ACM DMCplus Interface

2 Example of Using a DMCplus Controller 22

The regulatory loops were then tuned. This is the configuration prior to the installation of the DMCplus controller. Notice that in addition to the default PID loops created after the Aspen Plus simulation, two other PID loops were added:

• A PHENOLPID loop increases the flow of phenol to increase the purity of MCH in the product stream.

• The REB_PID loop regulates reboiler duty to control the temperature on stage 19 of T-1. Stage 19 was chosen because it is sensitive to composition changes at the bottom of the column.

The following plot was generated using Aspen Plus and varying the distillate rate:

Page 23: ACM DMCplus Interface

2 Example of Using a DMCplus Controller 23

This version of the file is available as MchRegCtrl.dynf. You can run the simulation, introduce disturbances and view the responses. When simulating a real plant, compare the performance of the simulation with real data, and make modifications as necessary.

Designing the Multivariable Control Scheme Next, the multivariable control scheme was designed and the flowsheet modified to reflect the desired configuration.

For example, the level loop associated with the feed drum V-1 will be controlled manually by DMCplus. This is because DMCplus controller will not use the LC_FEED PID loop to control the level. Similarly, the PHENOLPID loop will be set to manual because DMCplus will rely on multiple manipulated variables to decide the most economical way to control MCH purity in the product stream.

Page 24: ACM DMCplus Interface

2 Example of Using a DMCplus Controller 24

The Aspen Dynamics simulation was prepared to collect data during the DMCplus step test. During a step test, manipulated variables in the DMCplus controller are stepped and data is collected in order to generate DMCplus models for the controlled variables.

In this example, the model is used to generate the step test results. In practice, this would normally be done using the real plant and not the model, although the model can be used to help plan the step testing program.

Tip: In order to collect data, create a history table(s) containing all the variables required for DMCplus modeling.

The following figure shows a history table, with some selected tags:

The faceplates of the two controllers PHENOLPID and LC_FEED were used to set the controllers to manual before beginning the step test.

Automating the Step Test To automate the step test, tasks were added to the Aspen Dynamics simulation.

The task Steptest1 in the example file calls subtasks FF_FEED, FF_CWTWMP, FF_FEEDT, MVSTEPS and FINISHTEST to accomplish this. Step inputs are made to the manipulated variables, followed by a wait to allow the variables to come to steady state, so that the effect of the change can be identified by DMCplus Model.

Page 25: ACM DMCplus Interface

2 Example of Using a DMCplus Controller 25

This version of the file is saved as MchStepTest.dynf.

Having activated the task Steptest1, the simulation was run. When it had finished, the history table(s) were exported. The DMCplus tag names are specified at this time.

About the Tagnames Tagnames are identifiers (up to 12 characters) used by DMCplus to identify variables. These should be specified when the history table is saved at the end of the step test, in DMCplus readable format (clc file).

The manipulated variables (MV) selected for this controller are:

Tagname Description

LC-FEED.OP Feed to T-1 from V-1

A-PHENPID.OP Phenol feed to T-1

Q-REBPID.SP Tray 19 temperature cascaded to reboiler duty

PC-TOP.SP Top pressure in T-1

F-REFLUX Reflux in T-1

Other independents that are modeled as feedforwards (FF) are:

Tagname Description

F-FEEDMCH MCH feed to V-1

T-WATERIN Cooling water temperature to condenser

F-FEEDTOL Toluene feed to V-1

Page 26: ACM DMCplus Interface

2 Example of Using a DMCplus Controller 26

The controlled variables (CV) are:

Tagname Description

L-DRUMV1 Level in V-1 (held within upper and lower limits)

DP-T2T21 Pressure drop in tower (held within dumping and flooding limits)

Q-REBPID.OPX Reboiler duty (constrained by maximum available duty)

F-WATER Cooling water flow to condenser (constrained by maximum flow)

A-PHENPID.PV MCH concentration in top product stream (product specification)

F-MCHPROD Top MCH product flow rate from T-1 (constrained by the amount downstream units can accept)

PHENOLRATIO Phenol to feed ratio (minimum limit for relative volatility)

T-STAGE19PCT Pressure compensated temperature on stage 19 (maintain minimum temperature to prevent loss of MCH in bottoms product). Temperature on stage 19 is compensated linearly for variations in tower pressure. The expression for the PCT calculation is:

PCT = Tray19Temp(F) - 14.12 (TowerPressure(psi) - 16)

Note: The numbers are converted to Metric units when implemented in Aspen Dynamics.

PC-TOP.PV Pressure in tower T-1 (prevent tower from running into vacuum or exceeding equipment pressure specification)

Importing the Data DMCplus Model was opened and the collected data file(s) imported. The vectors were plotted as shown in the following figure:

Page 27: ACM DMCplus Interface

2 Example of Using a DMCplus Controller 27

Cases in the Model file listing independents and dependents, data ranges, times to steady state were created:

Page 28: ACM DMCplus Interface

2 Example of Using a DMCplus Controller 28

The case(s) were run to identify DMCplus models and the models generated by the case(s) were viewed. An example is shown in the following figure:

A model matrix was assembled, selecting the most appropriate models from different cases:

Page 29: ACM DMCplus Interface

2 Example of Using a DMCplus Controller 29

This model was exported as a file (mchcol.mdl) for use by the controller. All the above operations in DMCplus Model are saved in the file mchcol.dpp.

Creating and Updating a Controller Configuration File The model file (mchcol.mdl) was imported in DMCplus Build then exported as a controller configuration file (ccf). This is available as mchcol.ccf.

The ccf file was imported in DMCplus Simulate and the controller was tuned and Tuning parameters were changed to get the desired response from the controller.

The ccf file was updated from the Controller menu to save the tuning changes.

Both the model and the ccf files were copied into a newly created folder in the app directory of DMCplus Online. For example, if the controller name was

Page 30: ACM DMCplus Interface

2 Example of Using a DMCplus Controller 30

mchcol, then you would copy mchcol.mdl (model file) and mchcol.ccf (ccf file) into the: DMCplusOnline\app\Mchcol folder

Configuring the DMCplus Controller in Aspen Dynamics In Aspen Dynamics, a DMCplus block was placed on the flowsheet.

The controller was configured by inserting tag names, as in the model file, and connecting the dependents and independents to the appropriate variables in the dynamic simulation using control signals:

The flow diagram looks like this:

Page 31: ACM DMCplus Interface

2 Example of Using a DMCplus Controller 31

The units were configured using the ConfigureUnits form on the DMCplus block and the controller turned on using the Configure form.

In DMCplus Online, the Operator Console (DMCplus View) was used to change operating limits and to further tune the controller. The configuration was saved using the Manage program.

When the dynamic simulation was run, plots of manipulated and controlled variables were viewed to monitor the performance of the controller.

Tip: The example file, MchDMCplus.dynf contains predefined plots MVs, FFs, CV1to5 and CV6to9.

If you open the Operator Console, you can see how the controller drives towards constraints:

Page 32: ACM DMCplus Interface

2 Example of Using a DMCplus Controller 32

The highlighted numbers indicate that the controlled variable is at a lower or upper limit constraint. Notice how the controller tries to minimize pressure, reboiler temperature, meet the low limit of MCH concentration in the product stream and maximize the valuable product stream.

The corresponding plots in Aspen Dynamics looks like this:

Page 33: ACM DMCplus Interface

2 Example of Using a DMCplus Controller 33

Studying Disturbances To study the effect of disturbances, you can perturb the feedforward (FF) variables in the DMCplus controller either manually by using the appropriate forms, or by using tasks.

In the example, there are two tasks DIST_CW and DIST_FEED that disturb the cooling water temperature and feed flow rate respectively. Activate these tasks whenever desired to study the effect of disturbances.

The following figure shows the effect of lowering the feed rate to the drum V-1. As the level L-DRUMV1 approaches the low limit, the controller reduces feed to the column, in order to prevent V-1 from running dry. The following figure shows the active constraints in this case:

Page 34: ACM DMCplus Interface

2 Example of Using a DMCplus Controller 34

Notice how the controller tries to minimize steam, pressure and run close to the low limit constraint of MCH product specification, while trying to balance the level.

The corresponding Aspen Dynamics plots are shown in the following figure:

Page 35: ACM DMCplus Interface

2 Example of Using a DMCplus Controller 35

Activate the task DIST_CW to study the effect of disturbances in cooling water temperature. DIST_CW increases cooling water temperature to 104 °F. The controller is driven to new constraints as shown in this figure:

Page 36: ACM DMCplus Interface

2 Example of Using a DMCplus Controller 36

Notice how the controller hits the upper limit on cooling water flow, maximizes valuable product, minimizes pressure and reboiler temperature. It also increases phenol to compensate the loss in MCH because of higher tower temperature. The corresponding Aspen Dynamics plots are shown in the following figure:

Page 37: ACM DMCplus Interface

2 Example of Using a DMCplus Controller 37

Notice how the feed disturbances increase feed to the drum V-1 and allow the controller to maximize product flow.

Page 38: ACM DMCplus Interface

General Information 38

General Information

Copyright Version Number: 2004.1

April 2005

Copyright © 1982-2005 Aspen Technology, Inc, and its applicable subsidiaries, affiliates, and suppliers. All rights reserved. This Software is a proprietary product of Aspen Technology, Inc., its applicable subsidiaries, affiliates and suppliers and may be used only under agreement with AspenTech.

Aspen ACOL�, Aspen Adsim®, Aspen Advisor�, Aspen Aerotran®, Aspen Alarm & Event�, Aspen APLE�, Aspen Apollo Desktop�, Aspen Apollo Online�, Aspen AssetBuilder�, Aspen ATOMS�, Aspen Automated Stock Replenishment�, Aspen Batch Plus®, Aspen Batch.21�, Aspen BatchCAD�, Aspen BatchSep�, Aspen Calc�, Aspen Capable-to-Promise®, Aspen CatRef®, Aspen Chromatography®, Aspen Cim-IO for ACS�, Aspen Cim-IO for Csi VXL�, Aspen Cim-IO for Dow MIF�, Aspen Cim-IO for G2�, Aspen Cim-IO for GSE D/3�, Aspen Cim-IO for Hewlett-Packard RTAP�, Aspen Cim-IO for Hitachi PLC (H04E)�, Aspen Cim-IO for Intellution Fix�, Aspen Cim-IO for Melsec�, Aspen Cim-IO for WonderWare InTouch�, Aspen Cim-IO for Yokogawa Centum CS�, Aspen Cim-IO for Yokogawa Centum XL�, Aspen Cim-IO for Yokogawa EW3�, Aspen Cim-IO Interfaces�, Aspen Cim-IO Monitor�, Aspen Cim-IO�, Aspen Collaborative Demand Management�, Aspen Collaborative Forecasting�, Aspen Compliance.21�, Aspen COMThermo TRC Database�, Aspen COMThermo®, Aspen Cost Factor Manual�, Aspen Crude Manager�, Aspen Crude Margin Evaluation�, Aspen Custom Modeler®, Aspen Data Source Architecture�, Aspen Decision Analyzer�, Aspen Demand Manager�, Aspen DISTIL�, Aspen Distribution Scheduler�, Aspen DMCplus® Composite, Aspen DMCplus® Desktop, Aspen DMCplus® Online, Aspen DPO�, Aspen Dynamics®, Aspen eBRS�, Aspen Enterprise Model�, Aspen ERP Connect�, Aspen FCC®, Aspen FIHR�, Aspen FLARENET�, Aspen Fleet Operations Management�, Aspen Framework�, Aspen FRAN�, Aspen Fuel Gas Optimizer Desktop�, Aspen Fuel Gas Optimizer Online�, Aspen General Construction Standards�, Aspen Hetran®, Aspen HX-Net®, Aspen Hydrocracker®, Aspen Hydrotreater�, Aspen HYSYS Amines�, Aspen HYSYS Crude�, Aspen HYSYS Dynamics�, Aspen HYSYS OLGAS 3-Phase�, Aspen HYSYS OLGAS�, Aspen HYSYS OLI Interface�, Aspen HYSYS Tacite�, Aspen HYSYS Upstream Dynamics�, Aspen HYSYS Upstream�, Aspen HYSYS®, Aspen Icarus Process Evaluator®, Aspen Icarus

Page 39: ACM DMCplus Interface

General Information 39

Project Manager®, Aspen InfoPlus.21®, Aspen Inventory Balancing�, Aspen IQ Desktop�, Aspen IQ Online�, Aspen IQmodel Powertools�, Aspen Kbase®, Aspen LIMS Interface�, Aspen Local Security�, Aspen LPIMS�, Aspen MBO�, Aspen MIMI®, Aspen MPIMS�, Aspen Multivariate Server�, Aspen MUSE�, Aspen NPIMS�, Aspen OnLine®, Aspen Operations Manager - Event Management�, Aspen Operations Manager - Integration Infrastructure�, Aspen Operations Manager - Peformance Scorecarding�, Aspen Operations Manager - Role Based Visualization�, Aspen Order Credit Management�, Aspen Orion Planning�, Aspen Orion�, Aspen PEP Process Library�, Aspen PIMS Blend Model Library�, Aspen PIMS Distributed Processing�, Aspen PIMS Enterprise Edition�, Aspen PIMS Mixed Integer Programming�, Aspen PIMS Simulator Interface�, Aspen PIMS Solution Ranging�, Aspen PIMS Submodel Calculator�, Aspen PIMS XNLP Optimizer�, Aspen PIMS�, Aspen PIPESYS�, Aspen PIPE�, Aspen Planning Accuracy�, Aspen Plant Planner & Scheduler�, Aspen Plant Scheduler Lite�, Aspen Plant Scheduler�, Aspen Plus OLI Interface�, Aspen Plus®, Aspen Polymers Plus®, Aspen PPIMS�, Aspen Process Data�, Aspen Process Explorer�, Aspen Process Manual�, Aspen Process Order�, Aspen Process Plant Construction Standards�, Aspen Process Recipe®, Aspen Process Tools�, Aspen Product Margin & Blending Evaluation�, Aspen Production Control Web Server�, Aspen ProFES® 2P Tran, Aspen ProFES® 2P Wax, Aspen ProFES® 3P Tran, Aspen ProFES® Tranflo, Aspen Properties®, Aspen Pumper Log�, Aspen Q Server�, Aspen RateSep�, Aspen RefSYS CatCracker�, Aspen RefSYS Spiral�, Aspen RefSYS�, Aspen Report Writer�, Aspen Resource Scheduling Optimization�, Aspen RTO Watch Cim-IO Server�, Aspen RTO Watch Server�, Aspen Scheduling & Inventory Management�, Aspen SmartStep Desktop�, Aspen SmartStep Online�, Aspen SQLplus�, Aspen Supply Chain Analytics�, Aspen Supply Chain Connect�, Aspen Supply Planner�, Aspen Tank Management�, Aspen TASC-Mechanical�, Aspen TASC�, Aspen Teams®, Aspen Terminals Management�, Aspen TICP�, Aspen Transition Manager�, Aspen Turbo PIMS�, Aspen Utilities�, Aspen Voice Fulfillment Management�, Aspen Watch Desktop�, Aspen Watch Server�, Aspen Water�, Aspen Web Fulfillment Management�, Aspen WinRace Database�, Aspen XPIMS�, Aspen Zyqad Development Version�, Aspen Zyqad�, SLM�, SLM Commute�, SLM Config Wizard�, the aspen leaf logo, and Plantelligence are trademarks or registered trademarks of Aspen Technology, Inc., Cambridge, MA.

All other brand and product names are trademarks or registered trademarks of their respective companies.

This document is intended as a guide to using AspenTech's software. This documentation contains AspenTech proprietary and confidential information and may not be disclosed, used, or copied without the prior consent of AspenTech or as set forth in the applicable license.

Corporate

Aspen Technology, Inc. Phone: (1) (617) 949-1000

Ten Canal Park Toll Free: (1) (888) 996-7001

Cambridge, MA 02141-2201 Fax: (1) (617) 949-1030

USA URL: http://www.aspentech.com

Page 40: ACM DMCplus Interface

General Information 40

Related Documentation Title Content

Aspen Custom Modeler 2004.1 Getting Started Guide

Contains basic hands-on tutorials to help you become familiar with Aspen Custom Modeler.

Aspen Custom Modeler 2004.1 User Guide Contains a general overview of ACM functionality and more complex and extensive examples of using Aspen Custom Modeler.

Aspen Custom Modeler 2004.1 Library Reference

Contains reference information on control models, property procedure types, utility routines, port types, and variable types.

Aspen Custom Modeler 2004.1 Modeling Language Reference

Contains detailed reference information about the modeling language, including syntax details and examples.

Aspen Custom Modeler 2004.1 Aspen Modeler Reference

Contains information on using automation, solver options, physical properties, the Control Design Interface (CDI)), Simulation Access eXtensions, online links, and using external nonlinear algebraic solvers.

Aspen Custom Modeler 2004.1 Polymer Simulations with Polymers Plus

Polymers Plus is a layered product of Aspen Custom Modeler. It provides additional functionality to the properties package, Properties Plus, enabling polymers to be fully characterized in Aspen Custom Modeler models.

Page 41: ACM DMCplus Interface

Technical Support 41

Technical Support

Online Technical Support Center AspenTech customers with a valid license and software maintenance agreement can register to access the Online Technical Support Center at:

http://support.aspentech.com

You use the Online Technical Support Center to:

• Access current product documentation.

• Search for technical tips, solutions, and frequently asked questions (FAQs).

• Search for and download application examples.

• Search for and download service packs and product updates.

• Submit and track technical issues.

• Search for and review known limitations.

• Send suggestions.

Registered users can also subscribe to our Technical Support e-Bulletins. These e-Bulletins proactively alert you to important technical support information such as:

• Technical advisories.

• Product updates.

• Service Pack announcements.

• Product release announcements.

Page 42: ACM DMCplus Interface

Technical Support 42

Phone and E-mail Customer support is also available by phone, fax, and e-mail for customers who have a current support contract for their product(s). Toll-free charges are listed where available; otherwise local and international rates apply.

For the most up-to-date phone listings, please see the Online Technical Support Center at:

http://support.aspentech.com Support Centers Operating Hours

North America 8:00 � 20:00 Eastern time

South America 9:00 � 17:00 Local time

Europe 8:30 � 18:00 Central European time

Asia and Pacific Region 9:00 � 17:30 Local time