基于组态王的水箱液位设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于组态王的水箱水位控制设计
1 任务要求
本系统为基于组态王的储液罐液位的自动控制。该系统有进水阀、用户阀、水源阀、主水箱、蓄水池,水泵等组成。
系统初始液位为20米,要求控制主水箱的水位在10—80米之间。主要的两个阀门分别为进水阀和用户阀,刚开始进水阀打开给主水箱进水,同时由于主水箱水位为20米,所以用户阀打开给用户送水,开始之初蓄水池水位高度为80米,所以水源阀会自动关闭。当主水箱水位下降,水位降至10米时,用户阀会自动关闭,从而让主水箱蓄水保证水位不低于10米。当主水箱的水位高于80米时,进水阀会自动关闭,从而由于蓄水池水位过低,水源阀将自动打开为蓄水池蓄水。当水位高于80米或低于10米时会发生高高报警和低低报警,同时弹出报警画面。同时系统除了设置报警和事件画面还有实时趋势曲线画面、历史趋势曲线画面、实时数据报表画面等,通过各个画面对系统运行情况进行实时监测。
2 界面设计
本水箱水位控制系统由欢迎界面、水位监控室界面、报警界面等组成,其中水位监控室界面为主要操作界面,其中有菜单项、返回项、主水箱、蓄水池、测定液位仪表、报警指示灯、阀门等组成。其中主水箱为主控对象,蓄水池为对水源控制对象。要求在主水箱水位小于10米的时候,进水阀和泵自动打开,给主水箱加水从而使水位上升,当主水箱水位高于80时,泵和进水阀都关闭停止进水,等待用户阀打开,当用户阀开启后,主水箱水位下降,有水流向用户。当主水箱液位低于10米时,进水阀和泵再次打开进水,如此循环。
图1水位监测室画
3 数据字典设计
本系统中主要设计了12个变量,其中a代表具体主水箱的液位,其设定为内存整型,水源1用于提供用水变量设定为内存实型。阀1,阀3分别为主水箱的进水阀和出水阀,定义为内存离散的,阀2用于为水源蓄水池供水。泵和指示灯变量都为开关量,也被定义为内存离散型。下面是数据字典的设计:
图2 数据字典
4 命令代码设计
if(\\本站点\a<15)
\\本站点\阀1=1;
if(\\本站点\水源1<80)
{
\\本站点\阀2=1;
\\本站点\水源1=\\本站点\水源1+10;
}
if(\\本站点\阀1==1)
{
if(\\本站点\水源1>=80)
{
\\本站点\泵=1;
\\本站点\水流控制=10;
\\本站点\水源1=\\本站点\水源1-10;
if(\\本站点\a<71)
\\本站点\a=\\本站点\a+10;
else
{
\\本站点\a=80;
\\本站点\阀1=0;
\\本站点\泵=0;
\\本站点\水流控制=0;
}
}
else
{
\\本站点\泵=0;
\\本站点\水流控制=0;}
}
if((\\本站点\阀3==1)&&(\\本站点\a>=10))
{
\\本站点\a=\\本站点\a-5;
}
5 软件运行演示界面
如图所示,图3是水位监控界面即整体的控制中心。从其中的菜单项可以选择其他界面进行实时观测。图4为实时趋势曲线,其中下降曲线为蓄水池水位曲线,上升曲线为主水箱上升曲线。同理历史曲线中上升线条为主水箱水位历史曲线,下降曲线为蓄水池水位历史曲线。图7和图8分别是历史数据报表和实时数据报表,这两报表中个同时提供了打印和打印预览等功能。
图3水位监控室运行图
图4 实时趋势曲线图5 历史趋势曲线图6 报警画面
图7 历史数据报表
图8 实时数据报表
6心得体会
在这次的组态王软件的实训中,通过自己不断的摸索,感觉到收获很多。此次课程设计,我们按照设计的要求首先对组态王的指导教材进行了仔细的阅读和研究,力争每个步骤都不出现不应有的错误,然后才进行画图的设计。通过自行设计,我设计出了关于水箱的水位控制监控系统。通过组图,定义数据字典,制作实时曲线和历史曲线,设计报警组,制作实时数据报表和历史数据报表对水位进行实时监测从而达到控制水位的目的。该系统主要控制主水箱液位在10米和80米之间,同时当低于10米或高过80米时将分别出现低低报警和高高报警,通过整体的仿真,从而模拟出了水位控制的基本情况,从而完成了理论与实际的链接。