水箱水位控制
该模型展示了如何在Simulink®模型中实现模糊推理系统(FIS)。金宝app
金宝app仿真软件模型
该模型使用模糊逻辑控制器块实现的模糊推理系统来控制水箱中的水位。打开sltank
模型。
open_system (“sltank”)
对于这个系统,你用一个阀门控制流入水箱的水。流出速度取决于输出管的直径,它是恒定的,以及水箱中的压力,它随水位而变化。因此,系统具有非线性特性。
模糊推理系统
模糊系统定义在FIS对象中,坦克
,在MATLAB®工作空间。有关如何在模糊逻辑控制器块中指定FIS的详细信息,请参见模糊逻辑控制器.
模糊系统的两个输入是水位误差,水平
,和水位变化率,率
.每个输入有三个成员函数。
图plotmf(坦克,“输入”,1)图plotmf(坦克,“输入”, 2)
模糊系统的输出是控制阀打开或关闭的速率,阀
,有五个会员功能。
plotmf(坦克,“输出”, 1)
由于流出管的直径,在这个系统的水箱排空比它充满更慢。为了弥补这种不平衡,close_slow
而且open_slow
阀的隶属函数不对称。PID控制器不支持这种不对称。金宝app
该模糊系统有五条规则。前三条规则仅根据水位误差调节阀门。
如果水位正常,则不要调整阀门。
如果水位过低,请迅速打开阀门。
如果水位过高,应迅速关闭阀门。
另外两条规则在水位接近设定值时,根据水位变化率调节阀门。
如果水位正常并且还在上升,则缓慢关闭阀门。
如果水位正常且正在下降,则慢慢打开阀门。
坦克。规则
ans = 1 x5 fisrule数组属性:前期顺向体重连接细节描述:描述 ______________________________________________________ 1”水平= =好吧= >阀= no_change(1)”2 "level==low =>阀门=open_fast (1)"3 "level==high => valve=close_fast (1)"4 "level==ok & rate==positive => valve=close_slow (1)"5 "level==ok & rate==negative =>阀门=open_slow (1)"
在此模型中,您还可以使用PID控制器控制水位。要切换到PID控制器,将const块设置为大于或等于零的值。
模拟
该模型模拟了水位设定值周期性变化的控制器。运行模拟。
sim卡(“sltank”, 100) open_system (“sltank /比较”)
水位很好地跟踪设定值。通过修改控制器的运行规则,可以调整控制器的性能坦克
金融中间人。例如,如果去掉最后两个类似于导数控制动作的规则,控制器的性能就会很差,水位会有很大的振荡。