自动化应用软件实训-1-基于组态王的水箱液位控制系统1.引言自动化软件在自动化产品的研发过程中有着举足重轻的地位,尤其在科学技术飞速发展的今天,自动化软件的应用越来越受到人们的重视。本文采用的自动化软件是北京亚控公司出品的组态王6.53,其软件包由工程浏览器(TouchExploer)、工程管理器(ProjMamager)和画面运行系统(TouchView)三部分组成。在工程浏览器中可以查看工程的各个组成部分,也可以完成数据库的构造、定义外部设备等工作;工程管理器内嵌画面管理系统,用于新工程的创建和已有工程的管理。画面的开发和运行由工程浏览器调用画面制作系统TOUCHMAKE和工程运行系统TOUCHVIEW来完成的。本文利用组态王强大的组态功能和友好的人机界面实现了对供水系统中水塔和储水箱的实时监控,并且具有一定的工程应用价值。2.系统需求分析及方案论证2.1系统需求分析为了保证系统所需用水的供给,供水系统必须能够及时的对各种用水对象进行供水。这就要求水塔和储水箱的水位不能低于一定的下限以免断水对人们的正常生活所带来的影响,同时水塔和储水箱的水位又不能高于一定的上限,从而使得水资源可以合理的分配利用。如果使用组态王来实现软硬结合的控制,将会给系统的各性能带来良好的提升。自动化应用软件实训-2-2.2系统方案论证整个供水系统可以抽象为水塔和主水箱两个容器的液位控制。水塔的水来自地下水,主水箱的液位由水塔的水泵和主水箱的出水阀门综合决定。各种工业用水和生活用水可以用其对应的储水箱的出水管道代替。这样系统就组态好了。系统通过智能模块将液位的检测量采集到组态王对应变量中,由组态王统一管理给出系统各部分运行趋势、报表及报警事件,并通过与给定的液位设定比较来控制入水量,从而使液位保持在一定的范围之内。本系统假定主水箱满液位为100,而水塔容量相对于主水箱来说应该大很多,为了明显起见,我们选水塔容量为500.当水塔液位低于100时水塔进水,主水箱液位低于20时水塔自动供水,高于90时供水关闭。由于工业用水和生活用水的需求相差比较大,所以给他们设定了不同的流速,并且它们的使用时随机的,顾没有对两储水罐的出水阀进行自动控制。应运程序代码如下:if(\\本站点\泵==1){\\本站点\控制水流=8;\\本站点\水塔=\\本站点\水塔-8;\\本站点\主水箱=\\本站点\主水箱+8;}else{\\本站点\控制水流=0;\\本站点\水塔=\\本站点\水塔;\\本站点\主水箱=\\本站点\主水箱;}if(\\本站点\阀门1==1){\\本站点\控制水流1=5;\\本站点\主水箱=\\本站点\主水箱-5;}else\\本站点\控制水流1=0;if(\\本站点\主水箱90)\\\本站点\泵=0;if(\\本站点\主水箱20)自动化应用软件实训-3-{\\本站点\泵=1;\\本站点\控制水流=8;\\本站点\水塔=\\本站点\水塔-8;\\本站点\主水箱=\\本站点\主水箱+8;}if(\\本站点\水塔100){\\本站点\水泵1=1;\\本站点\控制水流2=10;\\本站点\水塔=\\本站点\水塔+50;}if(\\本站点\水泵1==1){\\本站点\控制水流2=10;\\本站点\水塔=\\本站点\水塔+50;}if(\\本站点\水塔450){\\本站点\水泵1=0;\\本站点\控制水流2=0;\\本站点\水塔=\\本站点\水塔;}3.系统监控界面设计3.1监控中心画面监控画面包括了供水系统各功能块的组态和一些相关仪表的显示以及操作相关的按钮等。操作人员通过主控按钮可以很方便的对系统进行查看和管理。自动化应用软件实训-4-图1.监控中心画面3.2报警系统画面的建立水塔和主水箱都设置了报警,其中主水箱低报警值是20,高报警值是90,高高报警值是100。水塔只有一个低液位150报警。在系统运行过程中,可以随时查看报警记录。报警窗口如图2所示:图2报警系统画面自动化应用软件实训-5-3.3趋势曲线的建立趋势曲线用来反映数据变量随时间的变化情况,趋势曲线有两种:实时趋势曲线和历史趋势曲线。在画面程序运行时,实时趋势曲线随时间变化自动卷动,以快速反应变量的新变化。时间轴不能回卷,不能查阅变量的历史数据。历史曲线可以完成历史数据的查看工作,但它不会自动卷动,而需要通过带有命令语言的功能按钮来辅助实现查阅功能。本系统的实时曲线和历史曲线分别如下所示:图3.实时趋势曲线图4.历史趋势曲线3.4数据报表及打印保存在报表画面中可以实时查看各参数变化情况,操作人员可以通过打印预览和自动化应用软件实训-6-打印按钮来打印报表,同时报表具有实时保存数据的功能,保存文件的名称为保存数据时的时间值,本系统的数据文件保存在当前工程目录下,文件格式为Excel。所用到的代码为:stringfilename;filename=InfoAppDir()+\实时数据文件\+StrFromReal(\\本站点\$年,0,f)+StrFromReal(\\本站点\$月,0,f)+StrFromReal(\\本站点\$日,0,f)+StrFromReal(\\本站点\$时,0,f)+StrFromReal(\\本站点\$分,0,f)+StrFromReal(\\本站点\$秒,0,f)+.xls;ReportSaveAs(数据报表,FileName);数据报表界面如图5所示:图5.数据报表3.5其他功能本系统还设置了登录和退出界面,由于登陆人员的权限不同,所以可以对他们所进行的操作也有所限制,这就要求他们拥有不同的安全区和优先级。同时操作员还可以修改自己的登录口令,在使用该软件是若有疑问可以通过亚太官网寻求技术支持。在退出界面中,为了防止误操作所带来的损失或危险设计了退出按钮。自动化应用软件实训-7-图6.登陆界面3.6数据词典设计在数据词典中可以定义变量,以便与画面相关联。这些变量包括I/O变量和内存变量等。本系统的数据词典部分变量如图7所示图7.数据词典自动化应用软件实训-8-4.心得体会经过事先对组态王的一些书面和视频资料的学习和了解,我对组态王的设计方法有了初步的认识,这对我以后的系统设计中起了很大的作用。刚开始设计系统时遇到了一些问题,比如水管流动,液位控制,程序的修改以及按钮的设计等,但在我的学习和修改中这些问题都被一一解决了,有些部分还得到了很好的改进,我想这个水箱液位控制系统应该完善了很多。从组态王软件设计中我学到了很多,学到了图形的建立,程序的设计,模块化的修改和定义语言,我相信这次实训会给我以后的学习中带来很大的收获。