PLC 手机软缆平整度检测 毕业设计

更新时间:2024-04-13 00:48:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

论文题目:储水罐 年 级:07级电气4班

院 系:机电工程与自动化学院 学生姓名:吴桂娜 指导老师:霍淑珍 2010年5月

4

目录

第一章 简介??????????????????????????3 1.1 内容摘要 ??????????????????????3 1.2 研制背景与目的 ????????????????????3 1.3 点??????????????????..4 1.4 件??????????????????..4

第二章 PLC简介????????????????????????.4 2.1PL????????????????????.4

2.1.1 PLC的产生?????????????????????

第一章 简介

1.1内容摘要:

这个项目即考察了学生的软件编程能力又锻炼了学生的硬件设计

和安装的能力。对学生从学校走向社会是一个很好的锻炼机会。

这个储水罐系统可以做很多实验,可以很直观的展示给学生,帮助 教师教学。它能做的实验很多,例如: ? 储液罐温度、液位特性测试实验 ? 液位智能仪表检测与控制实验

? PCL818L多功能数据采集卡的特性测试

? 组态王开发系统设计(流程画面、报警画面、报表、实时曲线、历史 曲线、数据库、命令语言设计等)

? 单液位计算机检测与控制仿真实验 ? 单液位计算机检测与控制实验

? 双液位计算机检测与控制仿真实验 ? 双液位计算机检测与控制实验 ? 温度智能仪表检测与控制实验

? 温度计算机检测与控制仿真实验(位式控制) ? 温度计算机检测与控制实验(位式控制) ? 温度计算机检测与控制仿真实验(PID控制) ? 温度计算机检测与控制实验(PID控制) ? 温度、液位计算机检测与控制仿真实验 ? 温度、液位计算机检测与控制实验 ? 液位计算机串级控制实验 ? 温度计算机复合控制实验 ? 双液位计算机比值控制实验 特点是:

先进性、真实性、覆盖性和综合性、传统仪表控制和计算机控制兼容、 开放性、控制要求的多变性和可操作性、控制系统结构的丰富性、性价比高 等等。

1.1 Abstract:

The project that examined the students ability of the software has tempered the hardware design students

And installed capacity.Students from school to society is a good exercise opportunity. The storage tank system can do a lot of experiments, the display can be very intuitive to sudents to helpTeaching.It can do many experiments, such as: Tank temperature, level properties testing laboratories Level intelligent instrumentation and control experiments PCL818L multifunction data acquisition card Character Test

Kingview Development System (process screen, alarm images, reports, real-time curve, history

Curve, database, command language design, etc.) Detection and Control of single-level computer simulation

Single-level detection and control of computer experiments Detection and Control of Two-Level Computer Simulation Two-Level Computer Measurement and Control Experiment Intelligent instrumentation and control the temperature experiment Temperature detection and control computer simulation (bit-type control) Experimental temperature detection and control computer (bit-type control) Temperature detection and control computer simulation (PID control) Temperature detection and control computer experiments (PID control) Temperature, liquid level detection and control computer simulation Temperature, liquid level detection and control of computer experiments Level cascade control of the computer experiment Temperature control computer complex experiments Ratio of two-level computer control experiments Characteristics:

Nature, authenticity, and comprehensive coverage, the traditional instrument control and computer control compatibleOpenness, variability and control requirements of operability, the control system structure, richness, cost-effectiveAnd so on.

1.2研制背景与目的

在工业自动化和计算机技术飞速发展的今天,计算机控制技术已广泛应用于工业生产的各个领域。计算机控制技术在工业控制领域的应用集中体现在三个方向:以单片机为核心的智能仪器仪表和小型测控系统、以PLC为核心的开关量为主的控制系统、以工业控制机为核心的计算机控制系统及分布式控制系统。

近年来,基于工业控制机和组态软件的计算机控制系统大量应用于工业现场,成为当前工业控制领域最为活跃的计算机控制技术。这种控制系统的最大特点在于从硬件设计到软件开发的“组态”性。因此可以称为“组态控制技术”。它集成了计算机的软、硬件综合技术,为自动化工程技术人员提供了快速系统集成的设计方法。

组态技术本身并不是什么新的控制技术。事实上从单元组合式仪表的出现开始,自动控制系统在硬件设计上已经开始了“组态”化。计算机介入自动控制领域的时间尽管已经不短,但早期应用中设计人员要自行设计接口电路,进行软件开发(这种设计方法在以单片机为核心的智能仪器仪表和小型测控系统中仍在采用)。之后的STD总线工业控制机和工业PC(IPC)尽管在接口电路上有产品化的模块或模板可供选择,但软件仍采用传统编程语言,造成开发周期长、通用性差、可靠性难以保证。

由于组态技术的发展特别是组态软件的应用,工业计算机控制系统从接口设计到软件开发都更加容易。一方面大量成熟接口部件的应用,系统可靠性得以提高。另一方面组态软件的出现为系统设计人员提供了一个简单易学、傻瓜化的设计工具。这种工具软件提供了大量从画流程图到进行程序设计所需的各种模块,设计者只需表达自己的控制意图与思想,不必将大量的时间花费在画面编程上。由于开发过程简单,可靠性高并具有可视性,组态软件被广泛应用于计算机控制系统中,计算机控制系统的性能也因组态软件的应用得以大幅度提高。

现在基于工控机和组态软件的计算机控制系统日益成为当代自动化应用中的主要手段,特别是在多参数、多模拟量的大系统应用和分布式控制系统中这种趋势尤其明显。在分布式系统中,PLC和各种基于单片机技术的智能仪表、智能板卡以及智能模块经常在控制系统中担任前沿控制装置,而工控机和组态软件则完成系统监控任务。基于工控机和组态软件的计算机控制技术在今后相当长的时间里将更加普遍。

关于PLC和单片机,各高校都有较长的教学历史,比较成熟的教材和实验设备。但对于近年来发展迅猛的以工业控制机和组态软件为核心的计算机控制系统,真正体现在教学体系上的学校不多,现有教材和实验设备过于陈旧,缺乏合适的教材,更缺乏实用、价廉、基于工业控制机和组态软件的实验装置。这显然与当前工业现场的发展不相适应。本课题就是在这样的背景下提出的。特别是高等职业教育领域,传统过程控制和计算机控制课程对高职学生难度较大。过程控制系统的多样性令学生难以理解、计算机控制系统中艰深的控制算法和复杂的编程方式令学生望而生畏、加上接口电路的设计??。组态控制技术的出现使系统从硬件到软件设计实现了“组态”化,在一个自动化项目中,可能只需要很少的系统工程师进行系统结构的总体方案设计,方框图画好后,更需要大量的技术水平要求相对不那么高的技术人员按照方案进行设备选型、安装(硬件组态)和简单软件设计(软件组态)。这样的工作正适合高职层次的学生。因此将这种技术引入高职自动化、测控技术、应用电子等专业,研制合适价廉的实验实训装置尤为重要。针对以上情况,1999年10月~2000年7月,经过对我校原有实验装置的改进,我们设计了这套基于工业控制机和组态软件的测控系统实验装置。

研制本装置的目的:以工业控制机为核心,以成熟的硬件模块和组态软件为基础的计算机控制系统引入教学。使学生通过实验,了解、掌握计算机控制系统的简单控制方法、组成结构、硬件选择以及组态编程等技术,以便较好地适应现代化发展的需求。

该装置可作为自动化、机电、电子等专业自动控制、计算机控制等课程的实验装置。我们设计的这套装置以过程控制系统中常见的储液罐作为被控对象,实现计算机控制的同时还兼备智能仪表控制功能。学生可在其上完成数据采集、手/自动控制、画面设计等工作,掌握计算机测控系统的设计与调试方法。

第二章 装置的功能与特点

2.1 功能

2.1.1利用本装置可进行以下几个实验:

? 储液罐温度、液位特性测试实验 ? 液位智能仪表检测与控制实验

? PCL818L多功能数据采集卡的特性测试

? 组态王开发系统设计(流程画面、报警画面、报表、实时曲线、历史曲线、数据库、命令语言设计等)

? 单液位计算机检测与控制仿真实验 ? 单液位计算机检测与控制实验

? 双液位计算机检测与控制仿真实验

? 双液位计算机检测与控制实验 ? 温度智能仪表检测与控制实验

? 温度计算机检测与控制仿真实验(位式控制) ? 温度计算机检测与控制实验(位式控制) ? 温度计算机检测与控制仿真实验(PID控制) ? 温度计算机检测与控制实验(PID控制) ? 温度、液位计算机检测与控制仿真实验 ? 温度、液位计算机检测与控制实验 ? 液位计算机串级控制实验 ? 温度计算机复合控制实验 ? 双液位计算机比值控制实验

2.2特点

1:先进性:系统将以工业控制计算机和组态软件为核心的控制系统引入教学,在技术上具有先进性。

2:真实性:系统所有装置包括储液罐对象、传感器、检测仪表、控制柜、等全部采用真实元件,与实际应用相同,针对性强,易于引起学生兴趣。接触过此装置的学生,进入工作岗位后能很快适应现场情况,这对高职类学生尤其重要。

3:覆盖性和综合性:知识领域涉及自动控制理论、计算机控制、传感器与仪表、电器控制、微机原理等课程,是对这些课程的良好总结。学生可在本装置上进行各科独立实验,也可在此进行总结性的课程设计。

4:传统仪表控制和计算机控制兼容:两套控制方案,与多数实际现场控制系统的结构相同。

5:开放性:由于组态软件易学易用开发迅速,可以让学生在较短的时间里完成从设计到调试的过程,而不是简单的操作、观察和记录,因此系统对学生是开放的,

6:控制要求的多变性和可操作性:本装置可进行单液位、双液位、温度等多参数控制;实验从简到繁,便于学生掌握,容易提高学生兴趣。

7:控制系统结构的丰富性。系统结构可采用单闭环、串级、复合、比值控制等方式;控制算法可采用位式控制和PID控制;设计方法上既可进行仿真控制也可进行实际控制,操作手段上既有自动控制,也有手动控制功;控制量既有开关量控制也有模拟量控制??因此功能多,能最大程度地发挥装置的作用。

8:性价比高。本装置成本约为2万元,功能多,与国内外同类装置相比性价比高。

2.3国内外同类设备的研究现状

经天津市科学技术信息研究所查新证明,迄今为止,国内仅见 有类似计算机控制实验设备,但都未同时涉及组态软件、温度液位计算机控制功能,

第三章 软件、硬件

3.1本装置的软硬件设计

3.1.1基本组成

系统由双储液罐对象、仪表柜、计算机三部分组成。双储液罐对象提供了下液位等3个模拟量和下排水等7个开关量信号;仪表柜上安装有智能显示控制仪和手动操作按钮,提供仪表检测和控制功能;计算机系统由多功能I/O卡和计算机组成,提供计算机检测与控制功能。

1、 控制对象:被控对象由上、下两个储液罐组成,如图1所示。旨在对两水罐的水位、温度进行检测和控制。 2、 检测及控制元件: 名称 下罐进水阀 下罐排水阀 上罐进水阀 循环泵 上罐排水阀 扩散硅压力变送器 铂电阻温度变送器 电加热器 下罐上液位高限开关 下罐下液位低限开关 上罐上液位高限开关

3.1.2参数

作用 下罐进水 下罐水 上罐进水 上罐进水 上罐排水 上、下水位检测 下罐水温检测 下罐加热 检测下罐上液位高越限 检测下罐下液位低越限 检测上罐上液位高越限

1、参数检测部分

分仪表检测和计算机检测两部分。原理如图2: 变送器输出信号4~20mA信号送入仪表柜,经250Ω电阻转换为1~5V。仪表柜面板上有切换开关控制将信号送计算机或盘面显示仪表。盘面显示仪表采用AI-708智能工业调节显示仪。该仪表具有可编程输入、变送输出、位式调节/报警等功能,可进行参数显示与调节。计算机与变送器间用PCL-818L多功能卡做接口板。PCL-818L有16路开关量输入、16路开关量输出、16路12位A/D、1路12位D/A,可将变送器输出的信号转换为数字量送计算机处理。PCL-818L安装在计算机内ISA扩展槽上,为便于接线,在仪表柜内安装了PCLD-9138接线端子板,变送器输出的水温、上液位和下液位3路模拟信号接到PCLD-9138接线端子板上,再通过37芯扁平电缆送PCL-818L。 变送器与仪表间的连接如图3,与PCL-818L的连接如图4。2图中都只画出1路信号的连接。系统使用了3台AI-708智能显示调节仪,它们都装在控制柜中,当开关切到盘面显示时,它们分别用来显示上液位、下液位、温度信号。当开关切到计算机显示时,信号经PCLD-9138和PCL-818L送计算机,经处理后,在显示器

显示。由于PCL-818L内有16路单端输入(8路差分输入)A/D,3路模拟信号只需1块板卡(PCL-818L)和接线端子板(PCLD-9138),分别通过PCLD-9138的1脚(ADS0)、2脚(ADS1)、3脚(ADS2)和9脚(AGND)接入。

2、参数控制部分

分盘面控制和计算机控制,各自都有手动和自动控制功能。 (1) 盘面控制

当仪表柜上的开关切到盘面显示和盘面控制时,不仅水位、温度的显示在盘面,水位温度的控制操作也由盘面手动按钮或AI-708完成。

盘面水位手动控制:盘面水位手动控制通过4个按钮、4个电磁阀、1个循环泵完成。按下按钮,对应电磁阀或泵闭合。盘面水位手动控制电路如图5。开关切到盘面控制时,按下任何一个手动按钮,相应电磁阀或循环泵得电,完成上水或排水动作,动作同时相应指示灯亮。系统采用自锁型按钮,一按闭合,再按松开,因此无需设计自锁,线路比较简单。 盘面水位自动控制:由于有单液位控制、双液位控制、液位加温度控制等几种情况,处理起来稍显麻烦,系统没有直接提供盘面水位自动控制功能。 盘面温度手动控制:系统采用电加热器方式,在下水罐装有三组电加热器。为确保安全,防止误操作造成电加热器损坏,盘面没有设温度手动控制功能。

盘面温度自动控制:盘面温度自动控制通过AI-708和三组可控硅完成,电路如图6。铂电阻温度变送器输出的代表实际温度值的1~5V电压信号送入AI-708,开关切到盘面控制时,如果实际温度低于设定温度,AI-708通过5与6、7与8、11与13输出3路可控硅触发控制信号。控制可控硅导通,三组电加热器工作。盘面温度自动控制采用位式控制方式。 盘面只提供了水位手动和温度自动控制两种控制方式,供学生比较体会。 (2)计算机控制 与盘面控制相比,计算机控制提供的功能较多。水位控制和温度控制都提供了手动和自动功能,而且控制算法灵活多样,可由学生自己编程实现。

当盘面上的切换开关处在计算机显示和计算机控制时,对储液罐的监控完全由计算机提供。水位计算机控制电路如图7。开关处在计算机控制时,如果要给下罐进水,计算机通过PCL-818L的DO0通道输出低电平。该信号经PCLD-780端子板和7407驱动后送中间继电器J1,J1得电,对应触点闭合,接通下罐上水阀。

温度计算机控制电路如图8。PCL-818L DO通道的输出经7407驱动送MOC3061。MOC3061是带过零触发的可控硅输出型光耦合器,PCL-818L输出低电平,MOC3061的发光二极管导通发光,双向可控硅受光导通。当加热器上的交流电压变为上“+”下“--”的瞬间,D1导通,电流从220V“+”端经熔断器、D1流入MOC3061的6端,从MOC3061的4端流出,经360Ω电阻和下330Ω电阻、电加热器从“--”端流出。330Ω电阻上的电压就是SCR1的触发信号,它使SCR1导通,电加热器得电加热。SCR1一旦导通,由于其管压降很低,电流直接从“+”端经熔断器和SCR1流入电加热器,下330Ω电阻上的电压变为0,即触发信号自动被清除。当加热器上的交流电压变为上“--”下“+”时,D2导通,220V电压从“+”端经电加热器、D2、360Ω电阻,流入MOC3061的4端,从MOC3061的6端流出,经上330Ω电阻、熔断器流回“--”端,上330Ω电阻上的电压就是SCR2的触发信号,它使SCR2导通,电加热器得电加热。同样,SCR2一旦导通,触发信号就被自动撤除了。因此该电路可在计算机输出电平控制信号(低电平——加热,高电平——不加热)情况下,自动维持触发信号为脉冲信号。

计算机控制方式下,手自动切换和控制是通过对画面上的软按钮完成的。主画面上设计了手动和自动控制按钮。如图9。鼠标单击手动按钮,进入手动控制状态,单击自动按钮,进入自动状态。自动状态下4个电磁阀、1个循环泵和三组电加热器的控制由软件控制。手动控制时,我们在主画面上设计了6个按钮,单击任一个,控制相应执行器的动作。具体设计方法在“(三)系统软件设计”部分说明。

3.1.3 PCL-818L板卡的设置与连接

1、地址设置

PCL-818L板卡上有1个跳线开关SW1,上有5个开关,对应地址线A8~A4,用于进行板卡地址设置:

[-] [-] [-] [-] [-] ON [ ] [ ] [ ] [ ] [ ] OFF 1 2 3 4 5

A8 A7 A6 A5 A4 地址线 100 80 40 20 10 16进制值

开关拨至ON位置,该位无效。板基地址选择范围200H~3FH,地址计算方法如下:

板基地址=200H+所有有效位之和

如上图设置,板基地址=200H+00H=200H 如果跳线开关设置如下:

[ ] [-] [-] [-] [-] ON [-] [ ] [ ] [ ] [ ] OFF 1 2 3 4 5

A8 A7 A6 A5 A4 地址线 100 80 40 20 10 16进制值 板基地址=200H+100H=300H

由于PCL-818L板卡占 个I/O地址,因此设置时不仅要确保板基地址不与系统设备地址冲突,还应保证板卡上所有地址都没有冲突。本系统用300H作为板基地址。

2、跳线

除了SW1外,板卡上还提供了多个跳线开关用以参数选择,与本系统直接有关的是AD通道的单端输入或双端输入选择。本系统采用单端输入方式。

3、引脚及连接

PCL-818L提供了三组扁平电缆:37芯用于模拟量输入输出,我们将它与PCLD-9138端子板连接;2个20芯分别用于开关量输入和开关量输出,与PCLD-780端子板连接。PCLD-9138上的37个引脚与PCL-818L模拟量通道一一对应。我们选择ADS0、ADS1、ADS2通道(1、2、3脚)用来接受温度、上液位和下液位变送器过来的模拟信号。PCLD-780上有2组接线端子A0~A19、B0~B19,我们选择B组做DO,A组做DI。DO0~DO7(B1~B8)输出8个控

制信号(下罐进水阀、下罐排水阀、上罐进水阀、上罐排水阀、循环泵、1组加热器、2组加热器、3组加热器)。引脚及连接情况如图10。

3.2 系统软件设计

3.2.1系统的优点

本系统最大的优点是系统设计的开放性。特别在软件设计方面,自由的空间很大。从变量分配、画面设计到命令语言编写都可由学生自己设计完成,设计方法可采用模拟设计和实际系统设计两种方法。这里给出参考的设计方案,学生可根据个人爱好和需要进行设计。

3.3.2系统主要变量及I/O分配:

以下变量为系统必需设置的基本变量,其他中间变量可根据需要设计。 1、模拟设计时: 变量名 类连寄数据型 接设存器 类型 备 温度 内 存整数 上液位 内 存整数 下液位 内 存整数 下罐进内 水阀 存离散 下罐排内 水阀 存离散 上罐进内 水阀 存离散 上罐排内 水阀 存离散 循环泵 内 存离散 1组电内 加热器 存离散 2组电内 加热器 存离散 3组电内 加热器 存离散 下液位内 下限开关 存离散 下液位内 上限开关 存离散 上液位内 上限开关 存离散 2、实际设计时: 变量名 类连寄存数型 接设器 据类

备 温度 I/O整数 I/O整数 I/O整数 I/O离散 I/O离散 I/O离散 I/O离散 I/O离散 I/O离散 I/O离散 I/O离散 I/O离散 I/O离散 I/O离散 PCL-818L PCL-818L PCL-818L PCL-818L PCL-818L PCL-818L PCL-818L PCL-818L PCL-818L PCL-818L PCL-818L PCL-818L PCL-818L PCL-818L DI2 DI1 DI0 DO7 DO6 DO5 DO4 DO3 DO2 DO1 AD2.F1L5.G1 AD1.F1L5.G1 AD0.F1L5.G1 DO0 型 INT INT INT Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit 上液位 下液位 下罐进水阀 下罐排水阀 上罐进水阀 上罐排水阀 循环泵 1组电加热器 2组电加热器 3组电加热器 下液位下限开关 下液位上限开关 上液位上限开关

模拟设计是与实际设计的不同在于模拟设计并不引入温度等实际参数,也不真正对电磁阀等进行控制,通过在画面上点击按钮或直接在命令语言里用程序改变参数等方法输入参数,通过在画面上设置各种动画效果观察控制结果。这种方法不会损坏设备,因此对于组态设计入门者很有好处。指导教师应该引导学生模拟设计时用命令语言尽可能地对实际对象特性进行模拟,以便模拟设计的效果最大程度地与实际效果接近。模拟设计完成后,再进行实际设计,就比较简单、安全了。由于实际设计的真实性,学生的兴趣和创造性得以提高,更可以加深对控制品质、控制算法等问题的理解。

3.3.3画面设计

要求完成主监控画面、报警画面、报表、实时曲线、历史曲线画面设计。参考画面设计如下:

1、主监控画面:

主监控画面由几个画面组成,如图11,它们处在屏幕中不同的位置,组合在一起构成了主监控画面。包括主画面、主菜单、副菜单、手动操作站和自动控制模式选择画面等。为了运行环境中首显主监控画面,可在组态王工程浏览器——配置——运行系统——主画面配置中选中以上各画面。

A、主画面:以双储液罐为主,表达了储液罐系统主要组成。占据了屏幕的主要面积。主要功能有:

? 水位、温度实时指示与动画显示。实现方法:水罐旁写文字“###”,并进行模拟值输出连接;对罐上矩形进行填充动画连接。

? 水位、温度设定值输入。实现方法:水罐旁写文字“###”,并进行模拟值输入连接。

? 各执行器状态指示。实现方法:对执行器上的小矩形进行填充属性连接。 手动操作站

主画面

副菜单

主菜单

图11 主监控画面

B、主菜单:在屏幕下方,由7个标签组成。功能——用于进行画面选择,单击任何一个标签,弹出相应的画面。

实现方法——利用 命令语言ShowPicture(“画面名”)和ClosePicture

(“画面名”)和HidePicture(\画面名\对各标签进行命令语言连接。例如主画面标签命令语言连接为“弹起时”:

ShowPicture(\主画面\

ShowPicture(\储液罐副菜单\ShowPicture(\主菜单\

ClosePicture(\储液灌历史趋势曲线\hidePicture(\液位实时曲线\hidePicture(\温度实时曲线\hidePicture(\报警曲线\ClosePicture(\控件\

ClosePicture(\手动操作站\ClosePicture(\起始时间\

ClosePicture(\历史报表时间长度\closepicture(\closepicture(\报表\

开机显示主画面、副菜单、主菜单和手动操作站。实现方法——在工程浏览器中将运行系统主画面配置中选中此3个画面名。

C、副菜单:在屏幕右部,设有温度、液位模拟量实时曲线显示、实时报警、棒图显示和用户登陆窗口,以便操作人员进行监控。这些功能都是利用组态王提供的“实时趋势曲线”等工具。副菜单画面上还设有手动和自动切换按钮。功能——运行中按下手动按钮, 弹出手动操作站画面,并进入手动操作状态;按下自动按钮,弹出自动控制模式选择画面,进入自动控制状态。画面弹出实现方法——以手动按钮为例,对该按钮进行命令语言连接:弹起时——自动开关==0;ShowPicture(“手动操作站”);ClosePicture(“自动控制模式选择” )。

D、手动操作站:首次进入运行环境或按下副菜单上的手动按钮时,该画面显示,系统进入手动操作状态。画面上设计了6个按钮,每个按钮右上角有1指示灯,按下按钮,指示灯量,相应执行器动作。

基本实现方法:对按钮进行命令语言连接。以下罐进水阀按钮为例:弹起时,下罐进水阀=0;(低电平开阀)。

为保证系统安全,防止误操作,加入了如下盘面手动控制所没有的保护功能:

? 上罐进水阀和循环泵之间的保护。上水时,应该先开阀,后开泵;停止上水时应先停泵,后关阀,如果操作顺序错误,操作无效。为此循环泵按钮命令语言设计为:弹起时:

if (上罐进水阀==1){循环泵=1;}

else{ 循环泵=0;}

? 电加热器干烧保护:本设计中3组电加热器共用1个手动按钮。为防止水位异常时发生干烧现象,该按钮命令语言连接:

if(下罐液位>150&&下罐液位<800&&上罐液位<600) {

加热器1=0; 加热器2=0;

加热器3=0; } else {

加热器1=1; 加热器2=1; 加热器3=1; }

这里液位上下限用的是绝对数值,而不是变量值。因为变量值运行中可能为操作者修改,导致液位异常不能及时发现,造成干烧。另一个方案是根据液位开关的状态进行保护,3个液位开关的状态由罐上限位开关经PCL-818L的DI通道输入,命令语言如下:

if(下液位上限开关==1&&下液位下限开关==1&&上液位限位开关==1) {

加热器1=0; 加热器2=0; 加热器3=0; } else {

加热器1=1; 加热器2=1; 加热器3=1; } E、模式选择画面:本系统我们设计了3种自动控制模式,模式1~3(实际设计时可不拘泥于此)。为了让操作者进行模式选择,设计了该画面。该

图12 模式选择画面

画面的位置与手动操作站画面重合。开机后不显示,运行中按下自动按钮时,弹出此画面,同时关闭手动操作站画面,画面如图12。这个动作的实现方法与手动按钮相同,这里不再叙述。

画面上设计了3个按钮,对应3种控制模式。我们预先设计了1个内存变量“模式”。运行中按下哪个按钮,变量模式的值就等于多少。实现方法很简单,对按钮进行命令语言连接即可。以模式1为例:模式1按钮命令语言连接为:弹起时,模式=1。

至于3种方式的具体内容和实现方法将在控制程序编写部分叙述。 2、报警画面

副菜单画面中的实时报警窗口较小,为便于观察,设计了1个专门的报

警窗口画面。运行时该画面平时不可见,单击主菜单中的标签“报警窗口”后,显示该画面。画面上设计了实时报警和历史报警2个窗口。可进行实时报警和历史报警浏览。

为了正确进行报警显示,设计时考虑了以下几点:

? 首先利用组态王的报警组工具定义了一个树形结构的报警组如图13。

图13 报警组定义

图14 下液位的报警定义

? 定义温度、上液位、下液位的变量属性,特别是报警定义属性,以下液位为例,设置方法如图14。

? 设计的实时报警和历史报警窗口的报警组应属于最高报警组(储液罐温度及液位报警),以便可以缺省显示所有的报警参数;而变量所属报警组应该是最低报警组(如图13),以便进行选择性报警显示。报警画面如图15。

图15 报警画面

? 缺省的报警显示组为储液罐温度及液位报警,即显示所有模拟量的报警状态。如果希望显示部分报警组,有2方法,一是运行时输入报警优先级,则可显示高于等于该优先级的参数;二是点选画面中的报警组。前者在实现上较简单,只需要在进行变量报警定义时设置好优先级;后者稍麻烦,需要使用组态王提供的单选按钮控件,该控件与变量ALAMACK1连接,运行

中选中第1个按钮,ALAMACK1=0;选第2个按钮,ALAMACK1=1??。对画面属性进行如下命令语言连接。

if(ALAMACK1==0) {

历史报警窗口.Group=第1组; 实时报警窗口.Group=第1组; }

if(ALAMACK1==1) {

历史报警窗口.Group=上液位; 实时报警窗口.Group=上液位; }

if(ALAMACK1==2) {

历史报警窗口.Group=温度; 实时报警窗口.Group=温度; }

if(ALAMACK1==3) {

历史报警窗口.Group=下液位; 实时报警窗口.Group=下液位; }

图16 实时报表和历史报表

其中ALAMACK1是内存变量,其值由点选决定。选中1组,ALAMACK1=0,其它依次类推。此外报警画面还可显示参数测量值、设定值,修改并显示参数的上上限和下下限。

3、报表

分实时报表和历史报表。实时报表和历史报表运行显示效果如图16。实时报告设计方法如下:

? 单击工程管理器的报告——新建,建立1个.RTF文件,名为实时报告1.RTF。内容如下:

{@DATE} {@TIME}

*****************************************************

下罐液位 {@V:下罐液位@F###.#} 上罐液位 {@V:上罐液位@F###.#} 水罐温度 {@V:水罐温度@F###.#}

下罐进水阀 {@V:下罐进水阀@F#}(0表示开,1表示关) 下罐排水阀 {@V:下罐排水阀@F#}(0表示开,1表示关) 上罐排水阀 {@V:上罐排水阀@F#}(0表示开,1表示关) 循环泵阀 {@V:循环泵阀@F#}(0表示开,1表示关) 循环泵 {@V:循环泵@F#}(0表示开,1表示关) ? 建立1个新画面名为“报表”,画面中有1个超级文本显示框控件,名为“Report”、3个按钮,如图16。其中“显示实时表”按钮命令语言连接:

x=2;

closepicture(\起始时间\

closepicture(\历史报表时间长度\。 “报表”画面属性命令语言连接: if(x==2) {

工程路径=InfoAppDir()+\实时报告1.rtf\报告路径=InfoAppDir()+\实时报表1.rtf\Report1(工程路径,报告路径 );

LoadText( \报告路径,\

}

其中函数Report1(工程路径,报告路径 )自动按文件“实时报告1.rtf”(在“工程路径”下)的格式生成实时报表,文件名为“实时报表1.rtf”(在“报告路径”下);LoadText( \报告路径,\将生成的实时报表文件“实时报表1.rtf”显示在控件“Report”上。因此按下“显示实时表”按钮,变量X=2,显示实时数据列表。

历史报表的设计与实时报表类似。但加了显示时间长度和显示起始时间选择功能,我们做了4、8、24小时3种显示长度,在原基础上增加了2个画面:\历史报表时间长度\和“起始时间”。如图17。具体设计如下:

? 建立3个历史报表格式文件“历史报告4.rtf”、 “历史报告8.rtf”、 “历史报告24.rtf”。格式如下(以“历史报告8.rtf”为例):

图17

***********************实验下罐液位报告************** @BT@BH

{@T: 时间} {@T:变量名} {@T:变量值}

{@ST + @D:00@h:00} {@T:下罐液位} {@V:下罐液位@F###.#@C:@ST+@D:00@h:00}

{@ST + @D:00@h:01} {@T:下罐液位} {@V:下罐液位@F###.#@C:@ST+@D:00@h:01}

{@ST + @D:00@h:02} {@T:下罐液位} {@V:下罐液位@F###.#@C:@ST+@D:00@h:02}

{@ST + @D:00@h:03} {@T:下罐液位} {@V:下罐液位@F###.#@C:@ST+@D:00@h:03}

{@ST + @D:00@h:04} {@T:下罐液位} {@V:下罐液位@F###.#@C:@ST+@D:00@h:04}

{@ST + @D:00@h:05} {@T:下罐液位} {@V:下罐液位@F###.#@C:@ST+@D:00@h:05}

{@ST + @D:00@h:06} {@T:下罐液位} {@V:下罐液位@F###.#@C:@ST+@D:00@h:06}

{@ST + @D:00@h:07} {@T:下罐液位} {@V:下罐液位@F###.#@C:@ST+@D:00@h:07}

@ET@EH

***********************实验上罐液位报告**************

@BT@BH

{@T: 时间} {@T:变量名} {@T:变量值}

{@ST + @D:00@h:00} {@T:上罐液位} {@V:上罐液位@F###.#@C:@ST+@D:00@h:00}

{@ST + @D:00@h:01} {@T:上罐液位} {@V:上罐液位@F###.#@C:@ST+@D:00@h:01}

{@ST + @D:00@h:02} {@T:上罐液位} {@V:上罐液位@F###.#@C:@ST+@D:00@h:02}

{@ST + @D:00@h:03} {@T:上罐液位} {@V:上罐液位@F###.#@C:@ST+@D:00@h:03}

{@ST + @D:00@h:04} {@T:上罐液位} {@V:上罐液位@F###.#@C:@ST+@D:00@h:04}

{@ST + @D:00@h:05} {@T:上罐液位} {@V:上罐液位@F###.#@C:@ST+@D:00@h:05}

{@ST + @D:00@h:06} {@T:上罐液位} {@V:上罐液位@F###.#@C:@ST+@D:00@h:06}

{@ST + @D:00@h:07} {@T:上罐液位} {@V:上罐液位@F###.#@C:@ST+@D:00@h:07}

@ET@EH

***********************实验水罐温度报告************** @BT@BH

{@T: 时间} {@T:变量名} {@T:变量值}

{@ST + @D:00@h:00} {@T:温度} {@V:温度@F###.#@C:@ST+@D:00@h:00}

{@ST + @D:00@h:01} {@T:温度} {@V:温度@F###.#@C:@ST+@D:00@h:01}

{@ST + @D:00@h:02} {@T:温度} {@V:温度@F###.#@C:@ST+@D:00@h:02}

{@ST + @D:00@h:03} {@T:温度} {@V:温度@F###.#@C:@ST+@D:00@h:03}

{@ST + @D:00@h:04} {@T:温度} {@V:温度@F###.#@C:@ST+@D:00@h:04}

{@ST + @D:00@h:05} {@T:温度} {@V:温度@F###.#@C:@ST+@D:00@h:05}

{@ST + @D:00@h:06} {@T:温度} {@V:温度@F###.#@C:@ST+@D:00@h:06}

{@ST + @D:00@h:07} {@T:温度} {@V:温度@F###.#@C:@ST+@D:00@h:07}

@ET@EH

? 在“报表”画面中对显示历史报表按钮做命令语言连接如下:ShowPicture(\历史报表时间长度\。

? 在画面“历史报表时间长度”中设3个按钮,分别进行命令语言连接,以“8小时”为例,命令语言如下:

报表长度=8; /*显示4个小时的数据*/

x=4; /*实时显示:X=2;4小时历史:X=3;8小时:X=4 ,24小时:X=5 */ showPicture(\起始时间\

closepicture(\历史报表时间长度\其它2个按钮的连接类似。

? 画面“起始时间”中设6个按钮,用于设定起始时间的年、月、日、时、分、秒,对应内存变量t1~t6。分别进行模拟值输入连接。“确定”按钮命令语言连接为:

StartTime=HTConvertTime(t1,t2,t3,t4,t5,t6); ClosePicture(\起始时间\

? 在“报表”画面属性命令语言连接中添加: if(X==4) {

工程路径=InfoAppDir()+\历史报告8.rtf\报告路径=InfoAppDir()+\历史报表8.rtf\Report2(StartTime,工程路径,报告路径 ); LoadText( \报告路径, \}

报表打印功能由“报表”画面中的打印按钮实现。“打印”按钮命令语言:

ReportPrint(报告路径);

(1) 实时曲线显示画面:可显示温度、上液位、下液位3参数实时曲

图18 液位实时曲线

线。画面显示如图18。制作方法如下(以液位曲线为例):

? 建立新画面,名为液位实时曲线。

? 利用“实时趋势曲线”工具在画面中拖出一矩形。

? 对该矩形进行动画连接,确定坐标范围、有无刻度及刻度多少、曲线颜色及对应变量。

(2) 历史趋势曲线画面:如图19。可显示操作人员指定时间段的历史曲线,也允许操作人员拖动曲线进行查看。制作方法:

? 新建画面“储液罐历史趋势曲线”。

? 利用“历史趋势曲线”工具在画面中拖出一矩形。

? 对该矩形进行动画连接,确定历史趋势曲线名、坐标范围、有无刻度及刻度多少、曲线颜色及对应变量。

? 为显示指定历史时间段的曲线,画面上设计了一个按钮,动画连接为弹起时:SetTrendPara( history1);其中history1是历史曲线名,函数SetTrendPara()的作用是弹出对话框以输入历史趋势曲线的参数,如起始时间、数据长度、纵轴的起点、纵轴的终点等。

图19 历史曲线

? 为允许操作人员拖动曲线进行前后查看,画面设计多个按钮,可以修改显示时间的起点、终点或时间长度。例如“4小时”按钮的动画连接为:弹起时:历史调整跨度=4*60*60;而画面左侧倒数第2行第1列的三角按钮的动画连接为:弹起时:history1.ChartStart=history1.ChartStart-历史调整跨度;

history1.ChartLength=history1.ChartLength+历史调整跨度;

即历史曲线history1的起点(ChartStart)等于当前起点-4小时,显示时间长度(ChartLength)不变。其他按钮的设计不 一一叙述。

(3) 控件画面:如图20所示。主要设计了温度设定曲线,以实现温度程序控制。设定温度曲线可在运行时由操作人员输入,也可事先设计好运行时在这个画面中调入。设计方法:

? 新建画面“控件”。

? 利用插入控件——趋势曲线——温控曲线工具画矩形,对其进行动画连接,以设定温度范围、时间范围、分度值,选定升温模式等。本设计采用自由设定方式。

?

(4) 数据库:可随时将运行参数输入数据库,也可随时对数据进行查

询。

设计方法:

3.3.4程序设计

组态软件提供了多种编写程序的渠道。组态王的程序语言称为命令语言。有多种输入命令语言的方法。一般简单程序只需在画面中通过对图形、文字对象或画面属性进行命令语言动画连接即可完成。复杂的工作需要利用应用程序命令语言、事件命令语言、数据改变命令语言或热键命令语言专门编写。

本系统在应用程序命令语言中只确定了系统启动和停止时各阀门和某

些变量的初值:

启动时——自动开关=0; band =10; 模式=1;

下罐进水阀=1; 下罐排水阀=1; 上罐排水阀=1; 循环泵阀=1; 循环泵=1;

下液位设定值=400; 上液位设定值=300; pennumber=1; START=1;

停止时:自动开关=0; pennumber=1; 下罐进水阀=1; 上罐排水阀=1; 下罐排水阀=1; 循环泵=1; 循环泵阀=1;

本设计的大部分程序由事件命令语言完成。当指定事件发生时,执行该程序。本系统将变量“模式”的值和水位正常与否作为启动条件。变量“模式”的值运行中由操作人员通过副菜单中的手自动切换按钮和模式选择按钮输入。模式1只控制下罐水位在给定值,上罐做储水罐。按下该按钮,内存变量 模式=1。这种方式最简单。模式2需要控制上水位和下水位两个参数,下水位优先。显然该模式在控制策略上比模式1复杂。该模式下变量模式=2。模式3要控制下液位、上液位和温度3个参数,显然最复杂。三种方式被控参数的设定值可在主画面中有操作人员在运行时人工输入,此时为是定值系统。温度设定值也可在控件画面中给出,此时是程控系统。

? 当水位低于下限或高于上限时,系统立刻进入自动控制状态,控制上水或排水,此时手动无效,只有当水位进入正常状态时,才可进行手动操作。这样做可以及时纠正误操作造成的水位异常。实现方法——利用事件命令语言。具体设计如下:

事件描述:!((下罐液位<下罐液位.HiHiLimit)&&(下罐液位>下罐液位.LoLoLimit)&&(上罐液位<上罐液位.HiHiLimit))

命令语言:

if(下罐液位>下罐液位.HiHiLimit&&上罐液位>上罐液位.HiHiLimit) /*上高下高*/ {

上罐排水阀=1; 下罐进水阀=1; 下罐排水阀=0; 循环泵=1;

if((循环泵阀==0)) {

pennumber=1;

while(pennumber<=6000) {

pennumber=pennumber+1; }

循环泵阀=1; } }

if(下罐液位>下罐液位.HiHiLimit&&上罐液位<上罐液位.HiHiLimit) /*上低下高*/ {

上罐排水阀=1; 下罐进水阀=1; 下罐排水阀=0; 循环泵阀=0;

if((循环泵==1)) {

pennumber=1;

while(pennumber<=6000) {

pennumber=pennumber+1; }

循环泵=0; } }

if(下罐液位<下罐液位.HiHiLimit&&上罐液位>上罐液位.HiHiLimit) /*上高下低*/ {

上罐排水阀=0; 循环泵=1;

if((循环泵阀==0)) {

pennumber=1;

while(pennumber<=6000) {

pennumber=pennumber+1; }

循环泵阀=1; }

}

if(下罐液位<下罐液位.LoLoLimit) /*下低*/ {

下罐进水阀=0; 上罐排水阀=0; 下罐排水阀=1; 循环泵=1;

if((循环泵阀==0)) {

pennumber=1;

while(pennumber<=6000) {

pennumber=pennumber+1; }

循环泵阀=1; } }

参考文献:

[ 1]董超.Auto CAD三维制图在机械设计中的应用口].试验技术与试验机,2004,(3). [2]赵志.Auto CAD 在机械设计中的应用口].同煤科技,2007,(4). [3]张夕琴.c仰/CAE技术在机械设计中的应用[J].装备制造技术,2007,(12). [4] 林小峰.可编程控制器原理及应用.北京:高等教育出版社,1994 [5] 刘同法.单片机C语言编程与实践.北京航天航空大学出版社,2009 [6] 孟祥双.G语言实践教程.北京:北京师范大学出版社,2005.8 [7] 袁秀英.组态控制技术.电子工业出版社.2007

本文来源:https://www.bwwdw.com/article/e20p.html

Top