Matlab模型与实际数据对接+C#混合编程
2017-06-25 17:18
281 查看
最近同学用提升管的产物浓度以及温度数据把稳态模型参数辨识出来了(用的是非线性系统的AL方法),所以接下来我需要把这个参数应用到我的模型里面来实现观测器。
在与实际数据与参数对接的时候,出现了一些问题,也一一进行了解决,记录下来以便后续观看。
1:反应器入口处的线速:这是一个很重要的量,因为我的观测器做的是温度的动态响应,因此这个线速决定了温度响应的时间常数。目前我的线速是按照计算指南里面的公式计算出来,一反入口处为1.5m/s,出口处为11m/s,那么一反的停留时间t1大致符合实际生产的规律。
因此我们在计算
2:温度动态响应的时间常数:按照上面的结果每一小节的时间常数为1.4s,
那么采样时间T可以得到。(具体关系??)
3:实际测点的对应:上述结果带入到集中式的观测器里面,可得到一个集中式的温度曲线。根据实际热电偶的位置得到每个子观测器对应的状态数,比如说测点1占总长的0.25,那么N1=0.25*N。然后测点1的温度与集中式观测器里面N1状态的温度进行对比(尽量接近)。
4:分布式观测器:上述工作完成之后,将对应的参数,N,N1等带入分布式观测器,首先可以在Matlab中完成观测器的工作。
在与实际数据与参数对接的时候,出现了一些问题,也一一进行了解决,记录下来以便后续观看。
1:反应器入口处的线速:这是一个很重要的量,因为我的观测器做的是温度的动态响应,因此这个线速决定了温度响应的时间常数。目前我的线速是按照计算指南里面的公式计算出来,一反入口处为1.5m/s,出口处为11m/s,那么一反的停留时间t1大致符合实际生产的规律。
t1=10.2m/{(1.5+11)/2}=1.6s
因此我们在计算
St1 = Area1*Rho*L/F_oil;的时候,
F_oil/Area1*Rho=165*1e3/3600/0.785/6.8=8大致符合平均线速,因此我们认为计算出来的St1符合实际生产水平。
2:温度动态响应的时间常数:按照上面的结果每一小节的时间常数为1.4s,
t=1.4s*热容校正系数/提升管分段数
那么采样时间T可以得到。(具体关系??)
3:实际测点的对应:上述结果带入到集中式的观测器里面,可得到一个集中式的温度曲线。根据实际热电偶的位置得到每个子观测器对应的状态数,比如说测点1占总长的0.25,那么N1=0.25*N。然后测点1的温度与集中式观测器里面N1状态的温度进行对比(尽量接近)。
4:分布式观测器:上述工作完成之后,将对应的参数,N,N1等带入分布式观测器,首先可以在Matlab中完成观测器的工作。
相关文章推荐
- 【数据挖掘】Matlab与C#混合编程
- VC++与Matlab混合编程之引擎操作详解(3)数据类型mxArray的操作
- VC++与Matlab混合编程之引擎操作详解(4)数据类型mxArray的操作
- matlab与C#混合编程
- 一个基于COM组件的Matlab与C#混合编程实例
- matlab与c#混合编程之图像参数传递
- Matlab与C#混合编程
- matlab与C#混合编程小例子
- C#与C++的混合编程 之三 C++与C#的数据传递与类型转换
- C#与MATLAB混合编程
- C#与MATLAB混合编程
- MATLAB C#混合编程demo
- C#与Matlab混合编程入门教程一:几种混合编程的方法
- Matlab和C#混合编程之数组传值
- MATLAB与C#混合编程
- C#与matlab混合编程
- Matlab与C#混合编程环境设置
- 关于matlab与c#混合编程产生的移植问题
- 小记Matlab与C#混合编程
- 关于MATLAB和c#混合编程以及如何打包的