How to plot pump and system curve based on the hydraulic model in Simscape / Simulink?

41 Ansichten (letzte 30 Tage)
I have modeled a centrifugal pump system with frictionous pipes and a control valve. I want to plot the system curve to see where the intersection with the pump curve lies for the centrifugal pump. An example of this is in the paper "Static head control in pumping system using PID controller" by Hadeel Mzahem Mjbel, 2022:
  7 Kommentare
DB
DB am 23 Mai 2023
This trick seems to give good values, thanks! However, is there a way for me to export the interpolated pump curve from the simscape block to Matlab in order overlap the two plots?
Here are the pump plots. I want to export the head curve, efficiency curve and power curve to workspace and overlap it with the gained system head curve.
Yifeng Tang
Yifeng Tang am 25 Mai 2023
If you have the curve plotted into a figure, or subfigure, you should be able to click on the figure and use MATLAB script to get a handle of the axes. The Children of the axes should include the curves plotted and its data content. Something like this:
plot([0:0.1:2],sin(pi*[0:0.1:2]));
ax1 = gca;
xData = ax1.Children.XData
yData = ax1.Children.YData

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Yifeng Tang
Yifeng Tang am 8 Aug. 2023
To summarize the discussion from the comments section:
The pump curves can be generated from the pump blocks in Simscape Fluids. Examples: https://www.mathworks.com/help/hydro/ref/centrifugalpumpil.html, https://www.mathworks.com/help/hydro/ref/centrifugalpumptl.html. See the "Visualizing the Pump Curve" section of each documentation page.
The load curve can be generated by using an ideal source (flow or pressure) to drive fluids through the load and record the flow and pressure values. Head and pressure drop can be converted to each other using H=dp/(rho*g).
To overlap the pump characteristics, get a figure handle of the pump curve figure, and then plot the load onto the same figure. If desired, one can also grab the data from an existing figure using code similar to this:
plot([0:0.1:2],sin(pi*[0:0.1:2]));
ax1 = gca;
xData = ax1.Children.XData
yData = ax1.Children.YData

Communitys

Weitere Antworten in  Power Electronics Control

Kategorien

Mehr zu Upgrading Hydraulic Models to Use Isothermal Liquid Blocks finden Sie in Help Center und File Exchange

Produkte


Version

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by