matlab 流量

跪求大神指导啊。。。求指教... 跪求大神指导啊。。。求指教 展开
 我来答
tianxiawulang
推荐于2017-09-03 · TA获得超过2.7万个赞
知道大有可为答主
回答量:4732
采纳率:89%
帮助的人:2325万
展开全部

1、不加控制作用时,要求不用Simulink,直接用ode45求解:

A=154;
k=11;
H0=20;
Qi=25;
dH = @(t,H) (Qi-k*sqrt(H)) / A;
ode45(dH,[0 1000],20)
xlabel '{\itt} / s'
ylabel '{\itH} / cm'

题目没有说明初始条件,这里理解为H0=20.

 

2、对于2009a之前版本,PID控制器可以直接使用Simulink Extras库中的PID Controller模块(如果愿意,也可以自己稍加改造)。对2009b之后的版本,PID Controller有比较大的改进,较为复杂,作为完成作业来说可能不合适,可使用我上传的版本。

 

3、题目【控制器的输出作为给定系统的输入】这一句比较模糊:

(1)原有的Qo=k*sqrt(H)这一项是否还存在?暂按没有这项考虑(模型中用一个手动开关控制)。

(2)所谓“给定系统的输入”是什么概念?这里按照流出量Qo理解。

(3)初值未给定,考虑到要体现出上升时间、超调量等概念,这里按高度初值为0理解。

 

我试了多组参数,时间指标容易满足,但超调量很难控制到2%以内。如前面所说,对题意的理解有几点不确定因素,可能现在理解的控制结构是有问题的。

 

另外,作为PID控制器的输出,如果是流出量的概念,那么其取值是不能为负的。如果考虑到这个因素,则还应该加入限幅,问题又复杂了很多,讨论起来可能没有边际了,还是把相关条件明确一下吧。

更多追问追答
追问
G(s)的传递函数你都没有使用吗?而且我们好像不是直接使用pid模块完成的。。。另外第三问的条件应该没有变动的 ,但是您给我的simulink好像无法运行。。。是我的操作有问题?希望您能解答一下。我用的是2012版本的matlab。谢谢您
追答

1、在Simulink中,传递函数形式的理想PID控制器不可能实现,因为不允许出现纯微分。

2、我看到问题本身是要求自己封装子系统的,我的意思是,你可以拿这个作为模板自己修改(比如把参数提示改成Kp、Ki、Kd),而不是说就只能直接用。

3、【第三问的条件应该没有变动】?没看明白你的意思。而且我说到的几个问题你都没回答。

4、模型我在多个版本下测试没问题。具体怎么不能运行?是不是你没有给那几个常数赋值?

A=154;
k=11;
H0=20;
Qi=25;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式