已确定refpropm可使用MATLAB调用,在此条件下,如何用simulink调用refpropm查询甲烷的热物性参数,给出图解的详细步骤
时间: 2024-12-19 13:14:59 浏览: 13
在MATLAB环境下,要使用Simulink调用refpropm函数查询甲烷的热物性参数,你需要按照以下步骤操作:
1. **准备环境**:
- 确保你已经安装了RefProp软件包,它是refpropm函数的基础。可以从https://www.coolprop.org/ 下载并安装。
- 安装完成后,会在MATLAB路径下生成refpropm.m文件。
2. **创建Simulink模型**:
- 打开MATLAB,点击“ Simscape” -> “Foundation Library”,然后选择“Physical Signals”下的“Datastore”。
3. **添加数据存储块**:
- 将“Fixed-Size Data Store”拖放到模型的工作区。
4. **配置数据存储块**:
- 双击数据存储块打开其属性窗口,设置数据的大小和索引范围足够大来存储refpropm的返回值。
5. **编写S-Function**:
- 创建一个新的M文件,例如`my_refprop_sfun.m`,内容如下:
```matlab
function [out] = my_refprop_sfun(refprop_handle, molar_flowrate, temp, pressure)
% Load refprop data using refpropm
[properties] = refpropm(refprop_handle, 'T', temp, 'P', pressure, 'H', 0);
% Access the desired property (如density, Cp等) from the properties struct
density = properties.d;
out = density; % Replace with your specific property of interest
end
```
- 在这里,我们模拟了一个简单的函数,从refpropm获取密度数据。根据实际需求替换`out = density`行,访问其他热物性参数。
6. **连接S-Function到Simulink**:
- 在Simulink模型中,将之前创建的数据存储块拖动至工作区,并双击打开它的"Input Port"。
- 添加一个"Input Value"信号源,将其连接到数据存储块的输入端口。
- 创建一个"Call User-Defined Function"模块,将`my_refprop_sfun`作为用户定义的函数。
- 连接输入值信号源到S-Function的输入端口,再将S-Function的输出连接回数据存储块的相应位置。
7. **运行Simulink模型**:
- 设置好模型的输入参数(比如温度和压力),然后选择“Simulation” -> “Run Simulation”。refpropm将会在每次模型仿真时被调用,存储所需的热物性参数。
8. **查看和分析结果**:
- 结果会存储在数据存储块中,可以随时查看和分析。
注意:上述步骤是基于假设你对Simulink的基本操作熟悉,如果有任何疑问,可以在MATLAB命令窗口中使用帮助文档或在线搜索相关教程。
阅读全文