Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

绘制化学反应器的线性系统特性

此示例说明如何在仿真期间的特定条件下绘制 Simulink® 模型的线性化图。您可以将 Simulink Control Design™ 软件提供的模块添加到 Simulink 模型中,以在仿真期间对线性系统进行计算和绘图。在此示例中,您将对连续搅拌化学反应器的线性化模型进行计算和绘图。具体来说,您将在反应器模型通过不同工作点时对其进行线性化。

化学反应器模型

打开化学反应器的 Simulink 模型。

open_system('scdcstr')

反应器有三个输入和两个输出。

  • FeedCon0FeedTemp0Coolant Temp 模块分别对进料浓度、进料温度和冷却剂温度输入进行建模。

  • CSTR 模块的 TCA 端口分别对反应器温度和残留浓度输出进行建模。

此示例重点展示当进料浓度和进料温度保持不变时,冷却剂温度 Coolant Temp 对于残留浓度 CA 的响应。

有关反应器建模的详细信息,请参阅 [1]。

绘制反应器线性响应

反应器模型包含 Simulink Control Design 的 Linear Analysis Plots 库中提供的一个 Bode Plot 模块。该模块配置为使用:

  • 冷却剂温度 Coolant Temp 下的线性化输入

  • 残留浓度 CA 下的线性化输出

该 Bode Plot 模块配置为在外部触发信号的上升沿执行线性化。当残留浓度满足以下任一条件时,Linearization trigger signal 模块都会计算触发信号并产生上升沿。

  • 处于稳态值 2

  • 在 5 左右的狭窄范围内

  • 处于稳态值 9

要查看 Bode Plot 模块配置,请双击该模块。

要在仿真期间查看模块的波特图,您必须在仿真模型之前打开绘图窗口。为此,请点击显示图

仿真模型。

sim('scdcstr')

波特图显示对应于由 Linearization trigger signal 模块生成的触发信号的三个工作点处的线性化反应器。

  • 在 5 秒处,线性化是针对低残留浓度。

  • 在 38 秒处,线性化是针对高残留浓度。

  • 在 27 秒处,线性化是针对反应器从低残留浓度到高残留浓度的过渡期。

低残留浓度和高残留浓度下的线性化相似,但过渡期间的线性化具有显著不同的 DC 增益和相位特性。在低频情况下,相位差为 180 度,表示存在不稳定极点或零点。

记录反应器线性响应

您可以将计算的线性系统保存到模型工作区中。为此,请使用该模块的记录选项卡上的参数。

对于此示例,Bode Plot 模块配置为将 MATLAB® 工作区中计算的响应保存为 LinearReactor 结构体。

LinearReactor
LinearReactor = 

  struct with fields:

         time: [3x1 double]
       values: [1x1x3x1 ss]
    blockName: 'scdcstr/Bode Plot'

在此结构体中,values 字段存储表示该线性系统的 LTI 状态空间模型数组。有关详细信息,请参阅Model Arrays。线性化的对应仿真时间记录在 time 字段中。

获得计算的线性模型。

P1 = LinearReactor.values(:,:,1);
P2 = LinearReactor.values(:,:,2);
P3 = LinearReactor.values(:,:,3);

线性系统的波特图在 27 秒处(此时反应器从低残留浓度过渡到高残留浓度)指示系统可能不稳定。为了确认此结果,将以零极点增益格式显示线性系统。

zpk(P1)
zpk(P2)
zpk(P3)
ans =
 
  From input "Coolant Temp" to output "CSTR/2":
         -0.1028
  ----------------------
  (s^2 + 2.215s + 2.415)
 
Continuous-time zero/pole/gain model.

ans =
 
  From input "Coolant Temp" to output "CSTR/2":
        -0.07514
  ---------------------
  (s+0.7567) (s-0.3484)
 
Continuous-time zero/pole/gain model.

ans =
 
  From input "Coolant Temp" to output "CSTR/2":
        -0.020462
  ---------------------
  (s+0.8542) (s+0.7528)
 
Continuous-time zero/pole/gain model.

关闭 Simulink 模型。

bdclose('scdcstr')

参考

[1] Seborg, Dale, Thomas Edgar, and Duncan Mellichamp.Process Dynamics and Control, Second Edition.John Wiley & Sons, Ltd, 2006.

另请参阅

| | | | |

相关主题