1、1 绪论1.1 背景介绍随着工业自动化水平的迅速提高,计算机在工业领域的广泛应用,人们对工业自动化的要求越来越高,种类繁多的控制设备和过程监控设备和过程控制装置在工业领域的应用,使得传统的工业控制软件已无法满足用户的各种要求。MCGS工控组态软件的出现为解决一些实际工程问题提供了一种崭新的方法,因为它能够就很好的解决传统工业控制软件存在的种种问题,使用户能根据自己的控制对象和控制目的任意组态,完成最终的自动化控制工程。MCGS全中文工业自动化控制组态软件(简称MCGS工控组态软件或MCGS)是一套32位工控组态软件,可稳定运行于Windouws95/98/Me/NT/2000等多种操作系统,集
2、动画显示、流程控制、数据采集、设备控制与输出、网络数据传输、双机热备、工程报表、数据与曲线等诸多强大功能于一身,并支持国内外众多数据采集与输出设备,广泛应用于石油、电力、化工、钢铁、矿山、冶金、机械、纺织、航天、建筑、材料、制冷、交通、通讯、食品、制造与加工业、水处理、环保、智能楼宇、实验室等多种工程领域。它的主要特点有:(1)延续性和可扩充性。使用MCGS工控组态软件开发的应用程序,当现场(包括硬件设备或系统结构)或用户需求发生改变时,不需作很多修改而方便地完成软件的更新和升级;(2)封装性(易学易用),MCGS工控软件所能完成的功能都用一种方便用户使用的方法包装起来,对于用户,不需要掌握太
3、多的编程语言技术(甚至不需要编程技术),就能很好的完成一个复杂工程所要求的所有功能;(3)通用性和可扩充性,每个用户根据工程实际情况,利用MCGS工控组态软件提供的底层设备(PLC、智能仪表、智能模块、饭卡、变频器等)的设备驱动、开放式的数据库和画面制作工具,就能完成一个具有动画效果、实时数据处理、历史数据和曲线并存、具有网络功能的工程,不受行业限制。1.2 混合液体设计概述水流量标准装置是被广泛用作液体流量仪表实验和检定的装置,尤其对于流量计的制造企业,有大量的仪表检定工作和新产品研制过程中的实验工作,需要流量标准装置完成。一套高效、可靠的水流量标准装置对科研和生产活动具有重要的意义。 传统
4、的流量标准装置检定系统使用人工或半自动操作,操作流程复杂,检定过程中的数据手工记录,检定结果手工计算,采样时间的同步不易控制,还存在速度慢,效率低,出错率高等问题,限制了劳动生产率的提高。 针对流量标准装置检定系统存在的以上问题,本课题主要完成了以下具有一定创新意义的工作: 1、将静态质量法(称重法)和标准表法综合在一套流量标准装置中,综合利用两种方法各自的优点,提高了检定效率。 2、本课题开发的流量计检定系统采用MCGS工控组态软件,通过编程实现了流量装置检定、流量计检定、数据存储、历史数据查询、报表打印等功能。 3、本计算机控制系统具有人机界面友好,便于操作人员使用的特点,控制系统的操作步
5、骤严格遵照相应检定规程的要求,几乎不需要操作人员的参与,便能自动完成流量计的检定。 4、具有采用标准表法和称重法检定速度式流量计和浮子流量计的功能,并且可以实现标准表的在线检定。 5、本课题采用MCGS组态软件开发了一种智能型浮子流量计的标定系统。通过在天津大学流量实验室得到的实验数据,证明本课题研究的水流量标准装置计算机控制系统具有稳定可靠,检定效率高,准确度高的特点。并且具有一定的通用性和广泛的实用价值。2 MCGS组态软件介绍以工控PC机为主控上位机,利用人机接口的智能软件包-MCGS组态软件在PC机上建立工控的对象,完成对多台PLC(下位机)的控制,由于上位机只需要完成对监控信息的收集
6、和处理而不需要对设备的运行进行具体控制,上下位机处理同时进行,可以以最少的人员配备对远程监控的管理,提供较为直观、清晰、准确的现场状态信息,进而为维修和错误诊断提供多方面可能性,减少维修人员路上往返时间,整体提高远程监控系统的运行速度。现代远程监控技术采取的是实时在线监控方式,它借助于计算机网络和通信技术,通过安装在现场各种监控设备以及软件实现监控者在异地对现场工业设备的实时监控、诊断与控制。当系统运行时,现场的下位机需要安排有人值守,这样实际上并没有实现真正意义上远程监控。为解决这一问题,文中通过开发相关的程序,配合必要的硬件设施来实现远程监控,完全可以通过网络来监控现场的运行。2.1 MC
7、GS工控组态软件MCGS(Monitor and Control Generated System,监视与控制通用系统)是北京昆仑通态自动化软件科技有限公司研发的一套基于Windows平台的,用于快速构造和生成上位机监控系统的组态软件系统,主要完成现场数据的采集与监测、前端数据的处理与控制,可运行于Microsoft Windows 95/98/Me/NT/2000/xp等操作系统。 MCGS是一套基于Windows操作系统可用来快速构造和生成上位机监控系统的组态软件包,它为用户提供了从设备驱动、数据采集到数据处理、流程控制、动画显示、报表输出等解决实际工程问题的完整方案和操作工具。MCGS组
8、态软件具有多任务、多线程功能,其系统框架采用VC+编程,通过OLE技术向用户提供VB编程接口,提供丰富的设备驱动构件、动画构件、策略构件,用户可随时方便地扩展系统的功能。主要特点如下:(1)丰富的设备驱动程序,通过Active DLL把设备驱动挂接在系统中,配置简单、速度快、可靠性高。(2)强大的网络功能。MCGS强大的网络功能可把TCP/IP网、485/422/423网、Modem网结合在一起构成大型的监控系统和管理系统。(3)开放的OLE接口。MCGS以OLE自动化技术为基础的开放式扩充接口允许用户使用VB来快速编制各种设备驱动构件、动画构件和各种策略构件,通过OLE接口,用户可以方便地定
9、制自己特定的系统。系统结构图(参见图1)用户窗口主控窗口运行策略设备窗口实时数据库图2.1 MCGS体系结构图MCGS组态软件系统包括组态环境和运行环境两大部分,用户所有组态配置过程都是在组态环境中进行的,用户组态后可生成一个“组态结果数据库”文件。MCGS运行环境是一个独立的运行系统,它能按照“组态结果数据库”中的组态方式进行各种处理,完成用户组态设计的目标和功能。MCGS系统整体框图:多任务多线程建动画构建动画动画显示报警组态设计报表连接设备实时数据库现场控制报警输出报表打印设备输出流程控制组态软件核心实时数据库构建动画流程控制组态组态环境运行环境图2.2 MCGS系统整体框图2.2MCG
10、S组态软件五大组成部分MCGS组态软件建立的工程由主控窗口、设备窗口、用户窗口、实时数据库和运行策略五部分都成,每一部分分别进行组态操作,完成不同的工作,具有不同的特性。1. 主控窗口:是工程的主窗口或主框架。在主控窗口中可以放置一个设备窗口和多个用户窗口,负责调度和管理这些窗口的打开或关闭。主要的组态操作包括:定义工程名称,编制工程名单,设计封面图形,确定自动启动的窗口,设定动画刷新周期,指定数据库存盘文件名称及存盘时间等。2. 设备窗口:是连接和驱动外部设备的工作环境。在本窗口内配置数据采集与控制输出设备,注册设备驱动程序,定义连接与驱动设备用的数据变量。3. 用户窗口:本窗口主要用于设置
11、工程中的人机交互界面,诸如:生成各种动画显示画面、报警输出、数据与曲线图表等。4. 实时数据库:是工程各部分的数据交换与处理中心,它将MCGS工程的各个部分连接成有机的整体。在本窗口内定义不同的类型和名称的变量,作为数据采集、处理、输出控制、动画连接及设备驱动的对象。 MCGS工控组态软件5. 运行策略:本窗口主要完成工程运行流程的控制。包括编写控制程序(if.then脚本程序),选用各种功能构件,如:数据提取、定时器、配方操作、多媒体输出等。 设备窗口主控窗口用户窗口实时数据库运行策略编写控制流程使用功能构件定义数据变量创建动画显示设置报警窗口人机交互界面添加工程设备连接设备变量注册设备驱动
12、菜单设计设置工程属性图2.3 MCGS组态软件组成2.3 PLC的发展历程1969 年,美国数字设备公司(DEC) 研制出第一台PLC,在美国通用汽车自动装配线上试用,获得了成功。这种新型的工业控制装置以其简单易懂,操作方便,可靠性高,通用灵活,体积小,使用寿命长等一系列优点,很快地在美国其他工业领域推广应用。到1971 年,已经成功地应用于食品饮料冶金造纸等工业。 由于PLC同时提高了功能和柔性度,使其应用迅速增长,并普及到许多其它离散零件制造工业领域。随后又扩展到与批量生产和连续生产过程有关的工业领域。随着CIMS(计算机集成制造系统)的发展,PLC当前还被人们应用于工厂通信网络、柔性制造
13、系统、工业机器人到大型分散型控制系统,之中,与其它智能控制器和计算机系统一起成为计算机综合控制系统中的重要组成部分,特别是单元级和工作站级。这一新型工业控制装置的出现,也受到了世界其他国家的高度重视。1971日本从美国引进了这项新技术,很快研制出了日本第一台PLC。1973年,西欧国家也研制出它们的第一台PLC。我国从1974 年开始研制,于1977年开始工业应用。我国可编程控制器的引进、应用、研制、生产是伴随着改革开放开始的。最初是在引进设备中大量使用了可编程控制器。接下来在各种企业的生产设备及产品中不断扩大了PLC的应用。目前,我国自己已可以生产中小型可编程控制器。上海东屋电气有限公司生产
14、的CF系列、杭州机床电器厂生产的DKK及D系列、大连组合机床研究所生产的S系列、苏州电子计算机厂生产的YZ系列等多种产品已具备了一定的规模并在工业产品中获得了应用。此外,无锡华光公司、上海乡岛公司等中外合资企业也是我国比较著名的PLC生产厂家。可以预期,随着我国现代化进程的深入,PLC在我国将有更广阔的应用天地。2.4 PLC与MCGS通讯要求基于MCGS嵌入组态软件容量小、速度快、成本低、真正嵌入、稳定性高、功能强大、通讯方便、操作简便、支持多种设备、有助于建造完整的解决方案的特点。所以选择其与PLC进行通讯连接。MCGS一般通过上位机的串行口和PLC上的编程口建立物理上的通讯连接,从而达到
15、操作PLC的目的。而在MCGS组态软件设置方面需先进行“设备组态”。设备组态方法是先调用MCGS串口通讯父设备构件,再找到三菱FX-232子设备构件,并挂接在串口父设备下。对串口父设备需打开其属性窗口,在基本属性中设置好设备名称,初始工作状态,最小采样周期,串口端口号,通讯波特率,数据位位数,停此位位数,数据校验方式等。而对于三菱FX-232子设备,要先打开其属性窗口,设置好基本属性中的设备名称,初始工作状态,最小采集周期(同父设备),然后根据MCGS与系列PLC之间两种不同的通讯方式,再进行后面的设置:如果使用MCGS提供的read和write设备命令直接访问PLC,无需进一步设置,而如果要
16、通过MCGS循环采样方式自动周期性地访问PLC,则必须还要对设备增加通道,建立通道连接,把PLC中相关继电器(X,Y,M)和寄存器(D)与MCGS实时数据库中变量建立一一对应关系,确定操作方式(读或写或读写)。并且MCGS嵌入版系统与PLC联系的媒介设备窗口专门用来放置不同类型和功能的设备构件,实现对外部设备的操作和控制。设备窗口通过设备构件把外部设备的数据采集进来,送入实时数据库,或把实时数据库中的数据输出到外部设备。一个应用系统只有一个设备窗口,运行时,系统自动打开设备窗口,管理和调度所有设备构件正常工作,并在后台独立运行。注意,对用户来说,设备窗口在运行时是不可见的。3. PLC系统软件
17、设计3.1 I/0地址分配系统的I/O分配如下图所示:输入/输出单元输入/输出点启动I0.0000高位I0.0001中位I0.0002低位I0.0003停止I0.0004调节阀1Q0.0000调节阀2Q0.0001出水阀Q0.0002搅拌Q0.0003表3.1输入/输出单元分配3.2系统流程图设计操作工艺流程:按下启动按钮后,打开A阀,液体A、B流入反应罐;当中限位传感器SL3为OFF,当上限位传感器SL1被淹没变ON时,阀A、B关闭,电机M开始运行,搅动液体,阀C打开放出混合液体;当液面降至下限位传感器S3变OFF时,开始定时,5S后容器已放空,关闭阀C。如已按下SB2,则就此停机;如未按下
18、停止按钮SB2,则打开A阀,开始下一次循环。如图3-1所示。图3.1 系统软件流程图4.MCGS组态软件设计4.1新建工程 (1)在Windows系统桌面上,通过以下三种方式中的任一种,都可以进入MCGS组态环境:鼠标双击Windows桌面上的“Mcgs组态环境”图标; 选择“开始”“程序”“MCGS组态软件”“MCGS 组态环境”命令;按快捷键“Ctrl + Alt + G”。进入MCGS组态环境后,单击工具条上的“新建”按钮,或执行“文件”菜单中的“新建工程”命令,系统自动创建一个名为“新建工程X.MCG”的新工程(X为数字,表示建立新工程的顺序,如1、2、3等)。由于尚未进行组态操作,新
19、工程只是一个“空壳”,一个包含五个基本组成部分的结构框架,如图所示: 图4.1 新建工程4.2 建立新画面1 在“用户窗口”中单击“新建窗口”按钮,建立“窗口0”。2 选中“窗口0”,单击“窗口属性”,进入“用户窗口属性设置”。3 将窗口名称改为:液体混合控制系统;窗口标题改为:液体混合控制系统;窗口位置选中“最大化显示”,其它不变,单击“确认”。4在“用户窗口”中,选中“液体混合控制系统”,选择下拉菜单中的“设置为启动窗口”选项,将该窗口设置为运行时自动加载的窗口。4.3 编辑画面并生成总体画面选中“液体混合控制系统”窗口图标,单击“动画组态”,进入动画组态窗口,开始编辑画面。制作文本框1单
20、击工具条中的“工具箱”按钮,打开绘图工具箱。2 选择“工具箱”内的“标签”按钮,鼠标的光标呈“十字”形,在窗口顶端中心位置拖拽鼠标,根据需要拉出一个一定大小的矩形。3在光标闪烁位置输入文字“单容水箱夜位恒值控制系统设计”,按回车键或在窗口任意位置用鼠标点击一下,文字输入完毕。4 选中文字框,作如下设置:点击(填充色)按钮,设定文字框的背景颜色为:没有填充;点击(线色)按钮,设置文字框的边线颜色为:没有边线。点击(字符字体)按钮,设置文字字体为:仿宋;字型为:粗体;大小为:一号点击(字符颜色)按钮,将文字颜色设为:粉色。4.4制作水箱1 单击绘图工具箱中的(插入元件)图标,弹出对象元件管理对话框
21、。 2 从“储藏罐”类中选取罐42。3从“阀”和“泵”类中分别选取4个阀(阀44)、1个泵。4 将储藏罐、阀、泵调整为适当大小,放到适当位置,参照效果图。5选中工具箱内的流动块动画构件图标,鼠标的光标呈“十”字形,移动鼠标至窗口的预定位置,点击一下鼠标左键,移动鼠标,在鼠标光标后形成一道虚线,拖动一定距离后,点击鼠标左键,生成一段流动块。再拖动鼠标(可沿原来方向,也可垂直原来方向),生成下一段流动块。当用户想结束绘制时,双击鼠标左键即可。当用户想修改流动块时,选中流动块(流动块周围出现选中标志:白色小方块),鼠标指针指向小方块,按住左键不放,拖动鼠标,即可调整流动块的形状。6 分别用标签设置右
22、上脚的文本框。7点击工具箱中的实时曲线画出图。8用工具箱中的标准按钮,在桌面上拖动3个框分别为启动、停止。它们的设置参照效果图。9选择“文件”菜单中的“保存窗口”选项,保存画面。10单击“窗口属性”按钮,进入窗口属性设置界面。如图5-2。图4.2 用户窗口属性设置4.5液体自动混合画面中构件的属性设置液体自动混合的动作过程如下:开始排放混合液体阀门打开延时5s后自动关闭,主要防止混合罐内有残留的混合液体。此时A液体阀门打开,注入A液体。当液面上升到SL2时,关闭A液体阀门;同时B液体阀门打开,注入B液体。当液面上升到SL3时,关闭B液体阀门并开始定时搅拌,搅拌40s后停止。然后打开出水阀排放混
23、合液体,当混合液体的液面下降到SL3时,开始计时到10s后关闭排放阀门,并重复上述过程,按停止按钮后,待本循环结束后停止。根据PLC控制系统的I/O表,对液体自动混合画面中的各个相关构件进行属性设置。定义数据变量,在液体自动混合画面中可以看出,需要定义的数据变量有:控制A液体阀门和相应的流动块,控制B液体阀门和相应的流动块,排放混合液体的阀门和相应的流动块。三个液位检测开关指示。图4.3 阀体、罐、和传感器的数据定义进一步对想要操作的流动块进行设置,定义动画连接,如下图所示:图4.4 流动块流动属性设置同理可以设置反应罐、传感器、以及各个阀体的动画属性:如图4.5图4.5 电磁阀开关属性设置整
24、体画面最后生成的画面如下图所示:图 4.6 整体画面4.6定义数据对象定义数据变量的内容主要包括:指定数据变量的名称、类型、初始值和数值范围,确定与数据变量存盘相关的参数,在开始定义之前,我们先对所有数据对象进行分析。在本样例工程中需要用到以下数据对象:变量名称类型对应PLC的继电器调节阀A开关型控制调节阀A“打开”、“关闭“的变量调节阀B开关型控制调节阀B“打开”、“关闭“的变量出水阀开关型控制出水阀“打开”、“关闭“的变量启动开关型系统启动变量停止开关型系统停止变量高位开关型高液位传感器信号中位开关型中液位传感器信号低位开关型低液位传感器信号表3-1鼠标点击工作台的“实时数据库”窗口标签,
25、进入实时数据库窗口页,对实时数据进行修改。1 单击工作台中的“实时数据库”窗口标签,进入实时数据库窗口页。2 单击“新增对象” 按钮,在窗口的数据对象列表中,增加新的数据对象,系统缺省定义的名称为“Data1”、“Data2”、“Data3”等(多次点击该按钮,则可增加多个数据对象)。3 选中对象,按“对象属性”按钮,或双击选中对象,则打开“数据对象属性设置” 窗口。4将对象名称改为调节阀1;对象类型选择:开关型;4.7 设备连接 1 在工作台“设备窗口”中双击“设备窗口”图标进入。2 点击工具条中的“工具箱”图标,打开“设备工具箱”。3 点击“设备工具箱”中的“设备管理”按钮。如图所示:图
26、4.7 设备连接4 在可选设备列表中,双击“通用串口父设备”。5 在可控设备列表中,双击“PLC设备”,选择西门子S7-200。之后进行动画连接。如图所示:图 4.8 添加设备4.8串口设备属性设置在这次的课程设计中模拟设备的添加及属性设置,进行通讯设置。如下图所示:图 4.9 添加设备1. 设置串口端口号为0-COM1,数据校验方式为2-偶校验,设置后如图所示:图 4.10 属性设置2. 对设备进行内部设置,增加设备通道,添加后如图所示:图4.11 增加通道3. 进行动态连接,模拟后,如图所示:图 4.12 系统动态运行5.程序下载整体运行与综合测试用调试程序产生的模拟数据,检查动画显示和控
27、制流程是否正确,最后,对模拟设备组成的控制系统进行模拟调试。进入运行环境,就能按照实验规定的控制流程,出现相应的动画效果。再接上PLC进行连机调试,MCGS的模拟运行界面应和PLC的输出运行状态一致。通过实现上位机对下位机PLC的直接控制。图5.1 工程下载模拟画面进入运行环境后,界面显示如下图所示:图 5.2 系统动态运行6.结束语基于MCGS的PLC虚拟控制系统充分利用计算机软件功能,利用其庞大的标准图形库、完备的绘图工具集以及丰富的多媒体支持,“调用”或“制造”出各种现场设备和仪表,快速地开发出漂亮、生动的工程画面。与PLC运行相配合,真实地再现了现场运行过程,有很好的可视性。通过这次P
28、LC课程设计,让我更加深刻理解了课本的知识,并使我熟悉和掌握了PLC基本指令的使用,掌握了PLC的I/O分配、程序调试等。编写程序首先必须把I/O分配表写好。弄清楚哪些信号作为输入,哪些信号作为输出,该用什么继电器,还有什么情况下要用定时器/计数器。 通过调试找出问题的所在,相应的修改程序。在编程过程中难免会有不足之处,因此通过调试,再修改程序可以更好实现相应的功能。这次设计,提高了我的动手和动脑能力,更让我们体会到了理论与实践相结合的重要性,使我得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼。使我在PLC的基本原理以及编程设计思路技巧的掌握方面都能向前迈了一大步。我相信这会对我的
29、毕业设计上起到很大的帮助作用。另外,就是先前对组态软件不是很了解,也是一次想写论文的时候才了解到MCGS这款软件,在功能上已经很强大,我想要是有机会的话,还会继续深入的了解这款软件。记住一样东西,在学习上,每时每刻都有值得要学的东西。在本次课程设计中,感谢老师的指导,每次答疑时老师总能指出一些不足之处,让我之后去完善我所做的课程设计,另外我在课程设计中,学会了如何更好的与老师和同学去交流,这样自己不太懂得一些知识,在自己熟悉的过程中会发现许多问题,现在对于这学期的课程设计基于MCGS的PLC液体混合控制系统设计,自己学到很多,先前没有接触过组态软件,现在自己也能很熟练进行工程的搭建与操作,还有
30、自己可以更好的将自己大学里学过的知识进行一次实战性的综合应用,我觉得这是最好的。这学期的课程设计本身对于我们大四的学生来说就是为了下学期的毕业设计做的准备,所以我觉得应该更好的去真正的投入一些,这样在毕业设计中也会很好的就行相关题目的设计与论文的写作。总之,在这次课程设计中自己学到很多,也去尝试着让老师指导着去从事一些东西的研究,更好的学到了一些东西,我觉得这是最重要的。7.参考文献1 李刚. MCGS组态软件在液位控制系统中的应用J. 可编程控制器与工厂自动化,2005,02:85902 高丽萍,郑萍. 基于MCGS的PLC虚拟控制系统研究J. 西华大学学报(自然科学版) ,2006,01:
31、94963 Muthucumaru Maheswaran, Kevin J. Webb, Howard Jay Siegel. MCGS: A Modified Conjugate Gradient Squared Algorithm for Nonsymmetric Linear Systems J. Kluwer Academic Publishers ,2007,03: 2572804 何航校,刘蕾,黄书奎. 基于MCGS组态环境的化水处理监控系统设计与实现J. 中国仪器仪表,2005,10:92945 刘振宇. 基于MCGS组态软件开发水位控制系统的研究J. 山西农业大学学报(自然科学版) ,2006,01:83876 李斌,邹灿红. 基于MCGS的水厂控制系统J. 自动化技术与应用,2007,08:106107 (注:专业文档是经验性极强的领域,无法思考和涵盖全面,素材和资料部分来自网络,供参考。可复制、编制,期待你的好评与关注)