Design and Simulation of optimized Anti-surge Adaptive control system for Centrifugal Compressor
12 次查看(过去 30 天)
显示 更早的评论
Please, I'm trying to design and simulate An anti-surge adaptive control system for Centrifugal compressor, please can anyone point me to the right direction using Matlab
4 个评论
Sam Chak
2024-1-25
Could you please provide the mathematical model of a typical centrifugal compressor? This can be in the form of a transfer function , a linear state-space representation , or the more general form of a state-space model .
Having a model is essential as it enables the design of a controller and allows for analysis and simulation of the control system under different conditions and reasonable uncertainties before implementing it in real-time on the actual equipment.
Once you have the model, please post it in your recent thread:
回答(1 个)
Sam Chak
2023-12-20
To simulate the dynamics and control of the Centrifugal compressor system in MATLAB, you must adhere to a systematic approach. The first step involves formulating the governing equations based on fluid dynamics and mechanics, subsequently designing an adaptive control system, and finally implementing anti-surge measures.
Accurately characterizing the anti-surge behavior requires some mathematical equations that only you know. Specifically, advanced control theory is essential for formulating a stabilizing adaptive control system, while the Compressor system dynamics can be expressed through differential equations, grounded in the principles of fluid dynamics and mechanics.
In MATLAB, the implementation unfolds through the creation of three distinct function files: one for the compressor (compressor()), another for the controller (myController()), and a third for anti-surge measures (antiSurge()). Lastly, a Main Script utilizing the appropriate ODE solver is required to solve the compressor system problem by integrating these three function files.
2 个评论
Sam Chak
2023-12-20
I don't have experience simulating a Compressor, but the general approach should be similar. I can provide you with basic code to simulate the control of a Double Integrator system in MATLAB. To model the Compressor, you should consult popular textbooks or academic papers from reputable journals to derive the mathematical model. I've also come across some math here: https://www.mathworks.com/help/hydro/ref/compressorg.html.
However, I'm unsure if it's related to your application.
%% Main Script
tspan = [0 10]; % simulation time
x0 = [1, 0]; % initial values, x1 starts from 1, x2 starts from 0
[t, x] = ode45(@mySystem, tspan, x0);
% plot the result
plot(t, x, 'linewidth', 1.5), grid on
xlabel('Time'), ylabel('Amplitude')
legend('x_{1}(t)', 'x_{2}(t)')
%% 'System' function file (Double Integrator)
function dxdt = mySystem(t, x)
dxdt = zeros(2, 1); % 2nd-order system described in column vector form
% call myControl() function
u = myControl(x);
% Ordinary Differential Equations in first-order derivatives
dxdt(1) = x(2); % x1' = x2
dxdt(2) = u; % x2' = u <-- equivalent to x1" = u
end
%% 'Control' function file
function u = myControl(x)
x1 = x(1);
x2 = x(2);
Kp = 1; % proportional gain
Kd = 2; % derivative gain
u = - Kp*x1 - Kd*x2;
end
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Control System Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!