S7-200温度控制

更新时间:2024-05-08 21:40:01 阅读量: 综合文库 文档下载

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

硬件配置和软件环境

3.1实验配置

3.1.1 西门子S7-200

S7-200系列PLC可提供4种不同的基本单元和6种型号的扩展单元。其系统构成包括基本单元、扩展单元、编程器、存储卡、写入器、文本显示器等。本论文采用的是CUP224。它具有24个输入点和16个输出点。S7-200系列的基本单元如表3-1所示[13]。

表3-1 S7-200系列PLC中CPU22X的基本单元

型 号 S7-200CPU221 S7-200CPU222 S7-200CPU224 S7-200CPU224XP S7-200CPU226

输入点 输出点 6 4 8 6 14 10 24 16 24 16 可带扩展模块数 0 2个扩展模块 7个扩展模块 7个扩展模块 7个扩展模块 3.1.2 传感器

热电偶是一种感温元件,它直接测量温度,并把温度信号转换成热电动势信号。常用热电偶可分为标准热电偶和非标准热电偶两大类。所调用标准热电偶是指国家标准规定了其热电势与温度的关系、允许误差、并有统一的标准分度表的热电偶,它有与其配套的显示仪表可供选用。非标准化热电偶在使用范围或数量级上均不及标准化热电偶,一般也没有统一的分度表,主要用于某些特殊场合的测量。标准化热电偶我国从1988年1月1日起,热电偶和热电阻全部按IEC国际标准生产,并指定S、B、E、K、R、J、T七种标准化热电偶为我国统一设计型热电偶。本论文才用的是K型热电阻[14]。

1

3.1.3 EM 231模拟量输入模块

传感器检测到温度转换成0~41mv的电压信号,系统需要配置模拟量输入模块把电压信号转换成数字信号再送入PLC中进行处理。在这里,我们选用了西门子EM231 4TC模拟量输入模块。

EM231热电偶模块提供一个方便的,隔离的接口,用于七种热电偶类型:J、K、E、N、S、T和R型,它也允许连接微小的模拟量信号(±80mV范围),所有连到模块上的热电偶必须是相同类型,且最好使用带屏蔽的热电偶传感器。

EM231模块需要用户通过DIP开关进行选择的有:热电偶的类型、断线检查、测量单位、冷端补偿和开路故障方向,用户可以很方便地通过位于模块下部的组态DIP开关进行以上选择,如图3-2所示。本设计采用的是K型热电偶,结合其他的需要,我们设置DIP开关为00100000。

对于EM231 4TC模块,SW1~SW3用于选择热电偶类型,见表3-3 。SW4没有使用,SW5用于选择断线检测方向,SW6用于选择是否进行断线检测,SW7用于选择测量单位,SW8用于选择是否进行冷端补偿,见表3-4[15]。

为了使DIP开关设置起作用,用户需要给PLC的电源断电再通电。

图3-2 EM231模块DIP开关

2

表 3-3 热电偶类型选择

热电偶类型 J(默认) K T E R S N +/-80mv 0 0 0 0 1 1 1 1 SWI 0 0 1 1 0 0 1 1

表 3-4 热电偶其他设置

DIP开关 SW5 SW6 SW7 SW8

熔断方向 断线 测量单位 冷端启用 功能 正向标定 负定方向 启动断线测量电流 禁止断线测量电流 摄氏 华氏 冷端补偿启用 冷端补偿禁止 0 1 0 1 0 1 0 1 开/关状态 SW2 0 1 0 1 0 1 0 1 SW3 3.2 STEP 7 Micro/WIN32软件介绍

STEP 7-MWIN32编程软件是基于Windows的应用软件,是西门子公司专门

为SIMTIC S7-200系列PLC设计开发的。该软件功能强大,界面友好,并有方便的联机功能。用户可以利用该软件开发程序,也可以实现监控用户程序的执行状态,该软件是SIMATIC S7-200拥护不可缺少的开发工具

3.2.1安装STEP 7-MWIN32 V4.0

在开始安装的时候是选择语言界面,对于版本4.0来说,这时候没有选择中文的,但可以先选择其他语言,见图3-5。等软件安装好之后再进行语言的切换。

3

图 3-5 语言选择界面

在安装的最后,会出现一个界面,按照硬件的配置,我们需要用232通信电

缆,采用PPI的通信方式,所以要选择PPI/PC Cable(PPI),这个时候在弹出来的窗口中选择端口地址,通信模式,一般选择默认就可以了,见图3-6。

图 3-6 通信设置界面

如果想改变编程界面的语言,可在软件的主界面的工具栏中选择tools目录下选择option选项,在出现的界面中选择general,然后在右下角就可以选择中文了。见图3-7所示。

4

图3-7 语言重设界面

3.2.2 系统参数设置

系统块用来设置S7-200 CPU的系统选项和参数等。系统块更改后需要下载到CPU中,新的设置才能生效。系统块的设置如下,需要注意的是,PLC的地址默认是2,但本设计中需要用到的地址是1,如图3-8。通信端口的设置,同样的,我们用到的地址是1,如图3-9所示。

5

图 3-8 “系统块对话框”

图 3-9 通信端口设置

6

控制算法描述

4.1 PWM技术

脉宽调制(PWM)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在测量、通信、功率控制与变换的许多领域中。

PWM是一种对模拟信号电平进行数字编码的方法。通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。PWM信号仍然是数字的,因为在给定的任何时刻,满幅值的直流供电要么完全有(ON),要么完全无(OFF) [16]。

本论文中采样周期和加热周期都是10秒。采样后,根据温差的大小进行PID调节,转化得到一个加热时间(0-10秒)作为下一个加热周期的加热时间。例如温差大,加热时间就大,温差小,那么加热时间就小。程序采用的是粗调和微控两段式控制方式。在粗控调阶段,占空比恒为一。在微控制阶段,占空比就根据温差不停地变化。

4.2 PID控制程序设计

模拟量闭环控制较好的方法之一是PID控制,PID在工业领域的应用已经有60多年,现在依然广泛地被应用。人们在应用的过程中积累了许多的经验,PID的研究已经到达一个比较高的程度。

比例控制(P)是一种最简单的控制方式。其控制器的输出与输入误差信号成比例关系。其特点是具有快速反应,控制及时,但不能消除余差。

在积分控制(I)中,控制器的输出与输入误差信号的积分成正比关系。积分控制可以消除余差,但具有滞后特点,不能快速对误差进行有效的控制。

在微分控制(D)中,控制器的输出与输入误差信号的微分(即误差的变化率)成正比关系。微分控制具有超前作用,它能预测误差变化的趋势。避免较大的误差出现,微分控制不能消除余差。

PID控制,P、I、D各有自己的优点和缺点,它们一起使用的时候又和

7

互相制约,但只有合理地选取PID值,就可以获得较高的控制质量[17]。

4.2.1 PID控制算法

图 4-1 带PID控制器的闭控制系统框图

如图4-1所示,PID控制器可调节回路输出,使系统达到稳定状态。偏差e和输入量r、输出量c的关系:

=)r(t-c)( t ) (4.2) e(t控制器的输出为:

?1u(t)?Ke(t)? P?Ti?上式中, u(t)——PID回路的输出; Kp——比例系数P; Ti ——积分系数I; Td——微分系数D; PID调节器的传输函数为: D(S)?de(t)? (4.3) ?0e(t)dt?Tddt??t??U(S)1?KP?1??TdS? (4.4) E(S)?TiS?数字计算机处理这个函数关系式,必须将连续函数离散化,对偏差周期采样后,计算机输出值。其离散化的规律如表4-5所示:

8

表 4-5 模拟与离散形式

模拟形式 离散化形式 e(t)?r(t)?c(t) de(t) dTe(n)?r(n)?c(n) e(n)?e(n?1) T?e(t)dt 0t?e(i)T?T?e(i) i?0i?0nn 所以PID输出经过离散化后,它的输出方程为:

??TTnu(n)?KP?e(n)??e(i)?d?e(n)?e(n?1)???u0Tii?0T (4.6) ???uP(n)?ui(n)?ud(n)?u0

式4.8中,

uP(n)?KPe(n) 称为比例项;

T ui(n)?KpTi ud(n)?Kpn?e(i) 称为积分项;

i?0nTd?e(n)?e(n?1)? 称为微分项; T上式中,积分项?e(i)是包括第一个采样周期到当前采样周期的所有误差的

i?1累积值[17]。计算中,没有必要保留所有的采样周期的误差项,只需要保留积分项前值,计算机的处理就是按照这种思想。故可利用PLC中的PID指令实现位置式PID控制算法量[18]。

4.2.2 PID在PLC中的回路指令

现在很多PLC已经具备了PID功能,STEP 7 Micro/WIN就是其中之一有的是

9

专用模块,有些是指令形式。西门子S7-200系列PLC中使用的是PID回路指令。见表4-7。

表4-7 PID回路指令

名称 指令格式 指令表格式 梯形图

PID运算 PID PID TBL,LOOP 使用方法:当EN端口执行条件存在时候,就可进行PID运算。指令的两个操作数TBL和LOOP,TBL是回路表的起始地址,本文采用的是VB100,因为一个PID回路占用了32个字节,所以VD100到VD132都被占用了。LOOP是回路号,可以是0~7,不可以重复使用。PID回路在PLC中的地址分配情况如表4-8所示。

表4-8 PID指令回路表

偏移地址 0 4 8 12 16 20 24 28 32 名称 过程变量(PVn) 给定值(SPn) 输出值(Mn) 增益(Kc) 采样时间(Ts) 采样时间(Ti) 微分时间(Td) 积分项前值(MX) 过程变量前值(PVn-1) 数据类型 实数 实数 实数 实数 实数 实数 实数 实数 实数 说明 必须在0.0~1.0之间 必须在0.0~1.0之间 必须在0.0~1.0之间 比例常数,可正可负 单位为s,必须是正数 单位为min,必须是正数 单位为min,必须是正数 必须在0.0~1.0之间 必须在0.0~1.0之间

1) 回路输入输出变量的数值转换方法

本文中,设定的温度是给定值SP,需要控制的变量是炉子的温度。但它不完全是过程变量PV,过程变量PV和PID回路输出有关。在本文中,经过测量的温度信号被转化为标准信号温度值才是过程变量,所以,这两个数不在同一个数量值,需要他们作比较,那就必须先作一下数据转换。温度输入变量的数10倍据转化。

10

传感器输入的电压信号经过EM231转换后,是一个整数值,他的值大小是实际温度的把A/D模拟量单元输出的整数值的10倍。但PID指令执行的数据必须是实数型,所以需要把整数转化成实数。使用指令DTR就可以了。如本设计中,是从AIW0读入温度被传感器转换后的数字量。其转换程序如下:

MOVW AIW0, AC1 DTR AC1, AC1 MOVR AC1, VD100

2) 实数的归一化处理

因为PID中除了采样时间和PID的三个参数外,其他几个参数都要求输入或输出值0.0~1.0之间,所以,在执行PID指令之前,必须把PV和SP的值作归一化处理。使它们的值都在0.0~1.0之间。归一化的公式如4.9:

Rnoum?Rraw/Span?Offest式中, Rnoum ——标准化的实数值; Rraw ——未标准化的实数值; Sp?? (4.9)

a——补偿值或偏置,单极性为n0.0,双极性为0.5;

Ofefs t——值域大小,为最大允许值减去最小允许值,单极性为32000.双极性为6400。

本文中采用的是单极性,故转换公式为:

Rnoum?(Rraw/32000) (4.10)

因为温度经过检测和转换后,得到的值是实际温度的10倍,所以为了SP值和PV值在同一个数量值,我们输入SP值的时候应该是填写一个是实际温度10倍的数,即想要设定目标控制温度为100℃时,需要输入一个1000。另外一种实

11

现方法就是,在归一化的时候,值域大小可以缩小10倍,那么,填写目标温度的时候就可以把实际值直接写进去[19]。

3) 回路输出变量的数据转换

本设计中,利用回路的输出值来设定下一个周期内的加热时间。回路的输出值是在0.0~1.0之间,是一个标准化了的实数,在输出变量传送给D/A模拟量单元之前,必须把回路输出变量转换成相应的整数。这一过程是实数值标准化过程。

Rscal?(Mn?Offest)Span (4.11)

S7-200不提供直接将实数一步转化成整数的指令,必须先将实数转化成双整数,再将双整数转化成整数。程序如下:

ROUND AC1, AC1 DTI AC1, VW34

4.2.3 PID参数整定

PID参数整定方法就是确定调节器的比例系数P、积分时间Ti和和微分时间Td,改善系统的静态和动态特性,使系统的过渡过程达到最为满意的质量指标要求。一般可以通过理论计算来确定,但误差太大。目前,应用最多的还是工程整定法:如经验法、衰减曲线法、临界比例带法和反应曲线法。

经验法又叫现场凑试法,它不需要进行事先的计算和实验,而是根据运行经验,利用一组经验参数,根据反应曲线的效果不断地改变参数,对于温度控制系统,工程上已经有大量的经验,其规律如表4-12所示。

表 4-12温度控制器参数经验数据

被控变量 温度

规律的选择 滞后较大 比例度 20~60 积分时间(分钟) 3~10 微分时间(分钟) 0.5~3

12

实验凑试法的整定步骤为\先比例,再积分,最后微分\。 1)整定比例控制

将比例控制作用由小变到大,观察各次响应,直至得到反应快、超调小的响应曲线。 2)整定积分环节

先将步骤1)中选择的比例系数减小为原来的50~80%,再将积分时间置一个较大值,观测响应曲线。然后减小积分时间,加大积分作用,并相应调整比例系数,反复试凑至得到较满意的响应,确定比例和积分的参数。 3)整定微分环节环节

先置微分时间TD=0,逐渐加大TD,同时相应地改变比例系数和积分时间,反复试凑至获得满意的控制效果和PID控制参数[20]。

根据反复的试凑,调出比较好的结果是P=120. I=3.0 D=1.0。

13

第五章 程序设计

5.1方案设计思路

PLC采用的是的S7-200,CPU是224系列,采用了5个灯来显示过程的状态,分别是运行灯,停止灯,温度正常灯,温度过高(警示灯)灯,和加热灯,可以通过5个灯的开关状况判断加热炉内的大概情况。K型传感器负责检测加热炉中的温度,把温度信号转化成对应的电压信号,经过PLC模数转换后进行PID调节。根据PID输出值来控制下一个周期内(10s)内的加热时间和非加热时间。在加热时间内使得继电器接通,那加热炉就可处于加热状态,反之则停止加热[21]。

1) 硬件连线如图5-1所示。

图 5-1 硬件连线图

2) I/O点地址分配如表5-2所示。

14

表 5-2 I/O点地址分配 地址 I0.1 I0.2 I0.3 Q0.0 Q0.1 Q0.3 Q0.4 Q0.5 名称 启动按扭 开关按钮 保护按钮 运行灯 停止灯 温度状态指示灯(正常 温度状态指示灯(危险) 固态继电器 功能 按下开关,设备开始运行 按下开关,设备停止运行 按下开关,终止加热 灯亮表示设备处于运行状态 灯亮表示设备处于停止状态 灯亮表示炉温在正常范围内 灯两表示炉温过高,处于危险状态 灯亮表示加热炉正处于加热阶段

3)程序地址分配如表5-3所示。

表 5-3 内存地址分配

地址 VD0 VD4 VD8 VD12 VD16 VD20 VD30 VW34 VW36 说明 用户设定比例常数P存放地址 用户设定积分常数I存放地址 用户设定微分常数D存放地址 目标设定温度存放地址 系统运行时间秒存放地址 系统运行时间分钟存放地址 当前实际温度存放地址 一个周期内加热时间存放地址 一个周期内非加热时间存放地址

4) PID指令回路表如表5-4所示。

表 5-4 PID指令回路表

地址 VD100 VD104 VD108 VD112 VD116 VD120 VD124 VD128 VD132

15

名称 过程变量(PVn) 给定值(SPn) 输出值(Mn) 增益(Kc) 采样时间(Ts) 采样时间(Ti) 微分时间(Td) 积分项前值(MX) 过程变量前值(PVn-1) 说明 必须在0.0~1.0之间 必须在0.0~1.0之间 必须在0.0~1.0之间 比例常数,可正可负 单位为s,必须是正数 单位为min,必须是正数 单位为min,必须是正数 必须在0.0~1.0之间 必须在0.0~1.0之间

5.2 程序流程图

程序流程图如图5-5所示,1个主程序,3个子程序。

主程序

运行PLC 初始化安全灯 I0.1=0 I0.1=? I0.1=1 初始化运行指示灯 调用子程序0 调用子程序1 每10s调用1次子程序2 炉子加热

子程序0

初试化 温度高于限制温度 温度=? 温度低于限制温度 粗调 微调 返回 16

子程序1 子程序2

设定目标温度 读入温度并转换 把实际温度值放于VD30中 设定PID值 调用PID指令 返回 时间寄存器加10s 设定下一周期内的加热时间 返回

图 5-5 程序流程图

5.3助记符语言表

主程序

LD SM0.0 // SM0.0常ON LPS // 将SM0.0压栈 AR<= VD30, 105.0 // 如果温度小于105℃ S Q0.3, 1 // 使Q0.3保持ON R Q0.4, 1 // 使Q0.4保持OFF LPP // 弹出SM0.0

17

AR>= VD30, 105.0 // 如果温度大于105℃ S Q0.4, 1 // 使Q0.4保持ON R Q0.3, 1 // 使Q0.3保持OFF LD SM0.0 LPS

A I0.1 // 按下启动按扭,启动系统 AN I0.3 S M0.1, 1 R M0.2, 1 LPP

A I0.2 AN I0.3 R M0.1, 1 S M0.2, 1 LD SM0.0 AN I0.3 LPS

A M0.1

S M0.0, 1

R Q0.1, 1 S Q0.0, 1 LPP

A M0.2

S Q0.1, 1 R M0.0, 1

R Q0.0, 1 LD M0.0

CALL SBR0 LD M0.0

// I0.3为保护关开,一般情况下保持ON // 按下关闭按扭,停止运行 // 使停止指示灯(Q0.1)OFF // 使运行指示灯(Q0.0)ON // 使停止指示灯(Q0.1)ON // 使停止指示灯(Q0.0)OFF // 调用子程序0 18

CALL SBR1 // 调用子程序1 LD M0.0 LPS

AN M0.3 TON T50, 100 LPP A T50

= M0.3 LD M0.3

CALL SBR2 LD M0.0 AN I0.3 LPS

AN T52 TON T51, VW34 LRD AN T51

= Q0.5 LPP A T51 TON T52, VW36

LD M0.0 LPS

AR<= VD30, 84.0 S I0.4, 1 //每10S使中间继电器M0.3为ON //每10S调用一次子程序2 //T51炉子一个周期内的加热时间 //T51炉子一个周期内的非加热时间 //使继电器(Q0.5)接通,炉子加热

子程序0

//如果温度小于84℃ //使I0.4常ON

19

R I0.5, 1 //使I0.5常OFF LPP

AR>= VD30, 84.0 //如果温度大于84℃ S I0.5, 1 //使I0.5常ON R I0.4, 1 //使I0.4常OFF LD M0.0 //常ON继电器 AN M0.6

A I0.4 //如果I0.4为ON,则执行以下程序 MOVR 300.0, VD0 //输入P值300到VD0 MOVR 999999.0, VD4 //输入I值999999.0到VD4 MOVR 0.0, VD8 //输入D值0.0到VD8

MOVR 100.0, VD12 //输入设定温度值100.0到VD12 LD M0.0 AN M0.6

A I0.5 //如果I0.5为ON,则执行以下程序 MOVR 120.0, VD0 //输入P值120.0到VD0 MOVR 3.0, VD4 //输入I值3.0. 到VD4 MOVR 1.0, VD8 //输入D值1.0到VD8

MOVR 100.0, VD12 //输入设定温度值,100.0到VD12

子程序 1

LD SM0.0

MOVR VD12, VD104 //输入设定温度值 /R 3200.0, VD104 //把设定值归一化处理 MOVR VD0, VD112 //输入P值到PID回路中 MOVR 10.0, VD116 //输入采样时间到PID回路中 MOVR VD4, VD120 //输入I值到PID回路中 MOVR VD8, VD124 //输入D值到PID回路中

20

子程序2

LD M0.0

MOVW AIW0, AC1 //采样温度,放于AIW0中 DTR AC1, AC1 MOVR AC1, VD100

/R 32000.0, VD100 MOVR AC1, VD30 /R 10.0, VD30 LD M0.0 PID VB100, 0 +R 10.0, VD16

MOVR VD16, VD20 /R 60.0, VD20 LD M0.0

MOVR VD108, AC1 *R 100.0, AC1 ROUND AC1, AC1 DTI AC1, VW34

MOVW +100, VW36 -I VW34, VW36

//把采样值归一化处理 //把实际温度值放于VD30中

//调用PID指令 //计时 //控制器输出

//把输出值转化为下一周期的加热时间 //下一周期的非加热时间 21

5.4梯形图

主程序

// 根据温度大小初始化指示灯

// I0.3是保护按扭 // 启动

// 关闭

// 使得中间寄存器接通

22

// 启动状态下的初始化

// 关闭状态下的初始化

// 调用子程序0

// 调用子程序1

//每10秒接通1次M0.3

//每10秒调用1次子程序

23

// T51不接通时处于加热状态

子程序0

//温度小于84度,I0.4接通,,I0.5关闭

// 温度小于84度,I0.5接通,,I0.4关闭

24

//P值

//I值

//D值

//设定温度

25

子程序 1

// 把设定温度传进PID回路

// 把P值传进PID回路

//把采样时间传进PID回路

// 把I值传进PID回路

// 把D值传进PID回路

子程序2

//计算运行时间,单位分

26

27

// 对PID回路的输出值进行归一化处理

// 得到下一周期的加热时间// 得到下一周期的不加 热时间

第六章 组态画面设计

6.1组态软件概述

组态软件是指一些数据采集与过程控制的专用软件,可为拥护提供快速构建工业自动控制系统监控功能的、通用层次的软件工具。组态软件一般英文简称有三种,分别为HMI/MMI/SCADA/.HMI/MMI翻译为人机接口软件,SCADA翻译为监视控制和数据采集软件。国内外的主要产品有wonderware公司的InTouch软件,Intellution公司的FIX软件,CIT公司的Citech软件,Simens公司的Wincc软件,亚控公司的组态王,华富计算机公司的Controx软件,力控公司的ForceControl软件和北京昆仓公司的MCGS软件

[22]

6.2组态王的介绍

组态王开发监控系统软件是众多组态软件里面的一种,组态王是一个具有丰富功能的HMI/SCADA软件。可用于工业自动化的过程控制和管理监控。它提供了集成、灵活、易用的开发环境和广泛的功能,能够快速建立、测试和部署自动化应用,来连接、传递和记录实时信息。使用户可以实时查看和控制工业生产过程。该系统是中文界面,具有人机界面友好、结果可视化的优点。对用户而言,操作简单易学且编程简单,参数输入与修改灵活,具有多次或重复仿真运行的控制能力,可以实时地显示参数变化前后系统的特性曲线,能很直观地显示控制系统的实时趋势曲线,这些很强的交互能力使其在自动控制系统的实验中可以发挥理想的效果

[23]

6.3组态画面的建立

本论文的组态软件采用亚控公司的组态王6.53版本。组态软件提供了可视化监控画面,包括动画,实时趋势曲线,历史趋势曲线,实时数据报表,历史数据报表,实时报警窗口,历史报警窗口,配方管理等等的功能。可方便

28

地监视系统的运行。并可在在线修改程序参数,有利于系统的性能发挥。

6.3.1创建项目

双击组态王的快捷方式,出现组态王的工程管理器窗口,双击新建按扭,按照弹出的建立向导,填写工程名称。然后打开刚建立的工程。进入组态画面的设计,如图6.1所示。

图6.1 新建工程画面

1)新建画面

进入工程管理器后,在画面右方双击“先建”,新建画面,并设置画面属性,如图6.2所示,包括画面名称,注释,画面位置,画面风格,画面类型和背景颜色等。如下图。点击确定,就会出现,画面就会自动打开。画面的工具栏里面,可以选择工具箱,调色板,线形等在画面中显示,这些在画图的时候经常需要用上。

29

图6.2 新建画面

2)新建变量

要实现组态王对S7-200的在线监控,就先必须建立两者之间的联系,那就需要建立两者间的数据变量。基本类型的变量可以分为“内存变量”和I/O变量两类。内存变量是组态王内部的变量,不跟被监控的设备进行交换。而I/O变量是两者之间互相交换数据的桥梁,S7-200和组态王的数据交换是双向的,一者的数据发生变化,另外一者的数据也跟着变化。。所以需要在创建连接前新建一些变量,如图6.3所示。

本文中,PLC用内存VD30来存放当前的实际温度值。并规定温度超过105℃为温度过高,立刻要作出相应警示信号。

点击工程管理器中的“数据词典”再双击右边窗口的新建,在出现的定义变量口中填写相应的要求项,并可在“报警定义”中设定报警,如图6.4所示。

30

图6.3 定义画面变量设置

图6.4 定义变量报警

6.3.2建立主画面

如图6.5所示,在该画面中,仿真实物设备的连接,通过设置开关按扭和关闭按扭来控制系统的启动和停止。旁边的指示灯,与Q0.0对应绿色表示系统在运

31

行,红色表示系统停止运行。加热炉的指示灯是表示加热炉的加热状态,与Q0.5对应绿色(亮),表示系统处于加热状态,黑色(暗)表示炉正处于加热状态。炉子的温度可以在画面中显示出来。

图 6.5 主画面设置

6.3.3建立趋势曲线画面

实时趋势曲线可在工具箱中双击后在画面直接获得。实时趋势曲线随时间变化自动卷动,可快速反应变量的新变化,但不能查询过去的情况,其画面时间跨度可以通过动画连接中“表示定义设置”,一个画面最多可以设置四条曲线,本文只需要用到两条曲线,绿色曲线表示设定的温度,红色曲线表示当前实际温度。X方向表示时间,Y方向表示变量的量程百份比。Y轴上不能直接出现实际的过程值,但可以通过工具箱的文本进行对应的标记,本文中设置了量程是200℃,故0.50处的X方向表示100℃。另外,在画面中设置了返回按扭,点击就可以返回到主画面。如图6.6所示。

32

图 6.6 实时趋势曲线设置

历史趋势曲线可在图库管理器中得到。历史趋势曲线可以查询查询过去的情况。 历史趋势曲线需要事先建立两个内存变量,分表是调整跨度和举动百分比。调整跨度是为了设置画面跨度的时间。以秒为单位,可以输入3600,,表示跨度为1个小时。卷动百分比是为了控制一次卷动的时间跨度,最小值是0,最大值是100。历史趋势曲线可设置8条曲线,本文只采用了两条。X表示时间,Y表示百分比,需要另外标识实际的温度。

另外,画面中设置了炉温度的在某段时间内的最大值最小值和平均值,时间段可以在画面中通过按扭选择。这里需要应用到一个函数,HTGetValueAtZone,例如,需要输出最小值,那么需要输入函数HTGetValueAtZone ( 历史曲线,2, \,如图6.7所示。

33

图 6.7 历史趋势曲线设置

6.3.4建立数据报表 1)建立实时数据报表

数据报表是反应生产过程中的数据、状态等,并对数据进行记录的一种重要

形式。数据报表有实时数据报表和历史数据报表,既能反应系统实时的运行情况,也能监测长期的系统运行状况。

在组态王的工具箱内选择“报表工具”,在数据报表画面中绘制报表,双击窗口灰色部分,在弹出的画面中填写控件名为“实时数据报表”,并设定行数和列数。

设置报表时间:在B4,C4单元中分别输入“=Date($年,$月,$日) ”和“=Time($时,$分,$秒)”,这样在系统运行的时候,B4就可以显示当前的日期,C4中就可以显示当前时间。

显示变量的实际值:利用数据改变命令语言和报表函数。选种A4单元,在数据改变命令语言中输入ReportSetCellValue(\实时报表\, 当前实际温度VD30);,如图6.8所示。

34

图 6.8 命令语言设置

2)建立历史数据报表

如图6.9所示,创建历史报表和表格样式设计与实时数据报表一样,并可以通过调用历史报表查询函数实现。在画面中建立一个按扭,命名为报表查询,在“弹起时”命令语言中输入历史查询函数:ReportSetHistData2();。在设置报表的格式可以根据实际需要设置,在组态王运行的时候可以进行相应数据变量的选择。

35

图 6.9 数据报表设置

6.3.5 建立报警窗口

1) 历史报警窗口

在工具箱中选用报警窗口工具,在面板中绘制报警窗口,添加文本等就可。 如图6.10所示。由于前面已经设置了报警变量,所以当变量值超过所设置的温度时,那就会在报警画面中被记录。

36

6.10 历史报警设置

2) 实时报警窗口

其制作过程和历史报警窗口类似,不同的是,实时报警画面是要弹出来的,所以必须在新建画面的时候,把大小调好,并选择是“覆盖式”。画面的自动弹出,在事件命令语言中,输入showpicture(\实时报警窗口\本站点\\$新报警=0;,这样每次新报警有产生,就会立刻出报警画面。如图6.11所示。

6.11 实时报警设置

37

6.3.6建立参数监控画面

此画面可在线查看当前程序的参数,分别有设定的温度、当前实际温度、运行时间,比例系数P,积分系数I,微分系数D。可以通过手动按扭和自动按扭进行PID参数的选择。双击自动按钮,系统按程序初始的PID参数进行控制,双击手动按钮,可在线修改PID参数,并使得程序在设定的PID参数下运行。当然,也可以修改设定的目标温度值,如图6.12所示。

图 6.12 参数监控与设置

38

第七章 系统测试

组态王和PLC编程软件不能同时启动,因为他们使用的是同一个端口,要想在线利用组态王监控程序,那就先必须在关闭组态王的情况下,先把PLC程序下载到PLC中,并且运行程序,再把编程软件关闭,才可以启动组态王,这样就可以利用组态王在线监控了。

7.1启动组态王

打开组态王的项目工程管理器,点击窗口栏中“WIEW”或者在画面中点击右键,选择“切换到VIEW”,启动组态王,进入主画面。这个时候,系统会自动打开一个信息窗口,可以通过信息窗口来知道,组态王的运行情况以及和PLC的连接是否成功。如果连接不成功,会出现通信失败的提示语言,那就要查明原因,否则不能监控。如果提示连接设备成功,窗口会显示开始记录数据,那就表示可以开始系统的运行了。

图 7.1 信息窗口

39

进入系统的主画面后,如图7.2所示。如果没有点击启动按扭,PLC是处于待命停止阶段的,指示灯是红色的。当确定可以开始系统运行的时候,单击启动按扭,就相当于按下连在PLCI0.1口的开关,程序进入加热模式,指示灯变绿,计时开始。炉子里的灯相当于实物中加热炉的加热指示灯,两者亮暗的步伐是同步的。如果点击关闭按扭,相当于按下PLC中与I0.2想连接的关闭开关,系统进入停止阶段。画面的下方设置了6个链接,可以点击进入选种画面。如果提示连接设备成功,窗口会显示开始记录数据,那就表示可以开始系统的运行了。

图 7.2 启动主画面

7.2 参数监控和设定

如图7.3所示,画面的上半部分可以查询当前的实际温度和系统运行时候的PID参数,还可以观察系统运行了多少时间。下半部分设置改变系统的运行参数。点击“手动”按扭,可以在下面的PID参数栏中输入新的PID值,系统在下一采样周期就可以按照设定的参数执行。如果想恢复默认的参数值,可以点击“自动”按

40

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

Top