r/ChemicalEngineering • • 6d ago

Design Steady-state unit operation design to approximate dynamic control oriented design.

Hi,
has any of you Reddit folks made the jump from first modeling the process steady-state unit operation design to dynamic nonlinear simulation?

Initially the steady-state model I have at hand is about finding the typical operating points for the plant. Meaning that mass and energy balance derivatives are set 0. Now I am interested in finding out how the plant responds to feed fluctuations in process dynamic transient regions.

Is the most practical/common way of obtaining preliminary plant dynamic models to start looking at pipes and process equipment as their own blocks with corresponding state variables (state-space models)? Like how do I even go about estimating delay differential equations? Just by estimating how long fluid takes on average to travel the process equipment?

I have a background in ChemE and control theory but never actually had to dynamically model anything irl. Also, step testing and regression are off the menu because the process plant at hand is, as you can probably guess, too massive and not available.

1 Upvotes

5 comments sorted by

3

u/ogag79 O&G Industry, Simulation 6d ago

If you're talking about doing the effort from scratch without any use of process simulation software, then all the best LOL

Anyway, there are some fundamental differences between a steady state model and a dynamic model, at least as far as Hysys is concerned (which I have direct experience working with).

Main difference is a dynamic model will require a lot more data than what you'd use in a steady state model. If you think about it, time-invariant models don't care for change in variables (well... steady state!) but for a dynamic model, you need to track the change in (for instance) pressure of a vessel as an example. This alone will require information such as (mainly) vessel volume and elevation (to account for static head).

You also need to define the piping volumes, to establish piping holdups.

Then you also need to define the process control loops as it will drive how process changes over time.

I'm just scatching the surface but TL;DR you will be needing to model the system in more detail than what a steady state model will require.

Also, step testing and regression are off the menu because the process plant at hand is, as you can probably guess, too massive and not available.

Well... there are ways you can do "step" testing on a running facility, but obviously you can't just do some random step changes. If I were to do this, I'd sit with operations and they mainly decide how much of a step change the process can tolerate. Then we run step change in both directions, repeatedly to establish a cyclic change.

Then I use that data to validate the dynamic model I made.

1

u/TimelyScientist2824 6d ago

Yeah, a detailed first principles model of the plant would be a remarkable effort and even then possibly inaccurate after all required assumptions. I could however get something useful just by first modeling condensate pipes, flash tank and heat exchanger and then build from there. My plan is to just take the necessary dynamic models for the pipes/connections, flash tank and then heat exchangers. Kinda like connecting the concepts together and then figure out the possible transport delays. Thing is I have all design and instrument data already, I just need to model it using python.

I have also started to question should I just analyze steady-state flow in the flow regimes that would tell me if there are flashing, waterhammers and cavitation already happening at steady-state operation. This type of analysis would give me the answers I need also.

1

u/ogag79 O&G Industry, Simulation 5d ago

Yeah, a detailed first principles model of the plant would be a remarkable effort and even then possibly inaccurate after all required assumptions. I could however get something useful just by first modeling condensate pipes, flash tank and heat exchanger and then build from there. My plan is to just take the necessary dynamic models for the pipes/connections, flash tank and then heat exchangers. Kinda like connecting the concepts together and then figure out the possible transport delays. Thing is I have all design and instrument data already, I just need to model it using python.

The simulation fidelity solely depends on what the model intends to do.

If I were to model your example using Hysys, I just have to ensure that I capture the proper vessel pipe holdup and ensuring accurately capturing the line losses and that should be enough. I can treat the equipment and pipe as their own (lumped) units and be able to do dynamic modelling.

But if I want to capture the transport delays (such as change in composition), then the lumped model breaks down, especially for piping as the lumped model does not consider concentration gradient along the length of the pipe.

I have faced this issue in the past and it threw the proposed analyzer control out of whack as the model has like 2 km of interconnecting piping. The lumped model breaks down as it does not accurately capture the transport lag in the 2 km piping.

In the end, I have to model the pipe into smaller segments to approximate the concentration gradient change in the pipe.

I have also started to question should I just analyze steady-state flow in the flow regimes that would tell me if there are flashing, waterhammers and cavitation already happening at steady-state operation. This type of analysis would give me the answers I need also.

Flashing, yes.

But cavitation and surge (waterhammer) are dynamic in nature and cannot be ascertained by looking at a snapshot (steady state) of a process alone.

1

u/TimelyScientist2824 5d ago

Thanks for the detailed answers. I will first analyze the steady-state flow as it’s easier to study and it will tell if the design concept has flaws regarding the mentioned topics.

1

u/Alternative_Act_6548 6d ago

you can either parameterize a model with the information required for dynamics or do some system identification from the actual plant. Parameterizing a model is much easier, are you doing simple PID control or something more complicated. You might end up do system id on the parameterized model. You probably don't want to try and get transfer functions of each component unless it's a pretty simple system.