第四章
This presentation is the property of its rightful owner.
Sponsored Links
1 / 128

第四章 PLC 温度控制技术 PowerPoint PPT Presentation


  • 48 Views
  • Uploaded on
  • Presentation posted in: General

第四章 PLC 温度控制技术. PLC 应用技术. 第四章 PLC 温度控制技术. ●. 温度控制系统广泛应用于工业控制领域,如钢铁厂、化工厂、火电厂等锅炉的温度控制系统,电焊机的温度控制系统等。锅炉温度是一个大惯性系统,一般采用 PID 调节进行控制。本章首先介绍温度传感器的使用和 S7-300 PLC 中块的基本概念,然后对 PID 控制器的基本概念进行简单介绍,并结合一个水箱温度控制系统的实例,详细介绍 S7-300 PLC 中 PID 控制器的应用。. 4 . 1 温度的采集. ●.

Download Presentation

第四章 PLC 温度控制技术

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Plc

第四章 PLC温度控制技术

PLC应用技术


Plc

第四章 PLC温度控制技术

  • 温度控制系统广泛应用于工业控制领域,如钢铁厂、化工厂、火电厂等锅炉的温度控制系统,电焊机的温度控制系统等。锅炉温度是一个大惯性系统,一般采用PID调节进行控制。本章首先介绍温度传感器的使用和S7-300 PLC中块的基本概念,然后对PID控制器的基本概念进行简单介绍,并结合一个水箱温度控制系统的实例,详细介绍S7-300 PLC中PID控制器的应用。


Plc

4.1 温度的采集

  • 温度采集和压力、流量等一样,是一种工业控制中最普及的应用,它可以直接测量各种生产过程中液体、蒸汽、气体介质和固体表面的温度。常用的有热电阻、热电偶两种方式,此外还有非接触型的红外测温等产品,一个典型的应用例子是钢铁厂中的红外测温设备。这里我们主要介绍热电阻和热电偶。


4 1 1

4.1.1 温度传感器与选型

  • 温度采集和压力、流量等一样,是一种工业控制中最普及的应用,它可以直接测量各种生产过程中液体、蒸汽、气体介质和固体表面的温度。常用的有热电阻、热电偶两种方式,此外还有非接触型的红外测温等产品,一个典型的应用例子是钢铁厂中的红外测温设备。这里我们主要介绍热电阻和热电偶。


Plc

1.热电偶

  • 工业热电偶作为测量温度的传感器,通常和显示仪表、记录仪表和电子调节器配套使用,它可以直接测量各种生产过程中不同范围的温度。若配接输出4-20mA、0-10V等标准电流、电压信号的温度变送器,使用更加方便、可靠。对于实验室等短距离的应用场合,可以直接把热电偶信号引入PLC进行测量。

  • 热电偶的工作原理是,两种不同成份的导体,两端经焊接,形成回路,直接测量端叫工作端(热端),接线端子端叫冷端,当热端和冷端存在温差时,就会在回路里产生热电流,这种现象称为热电效应;接上显示仪表,仪表上就会指示所产生的热电动势的对应温度值,电动势随温度升高而增长。热电动势的大小只和热电偶的材质以及两端的温度有关,而和热电偶的长短粗细无关。


Plc

1.热电偶

  • 根据使用场合的不同,热电偶有铠装式热电偶、装配式热电偶、隔爆式热电偶等种类。装配式热电偶由感温元件(热电偶芯)、不锈钢保护管、接线盒以及各种用途的固定装置组成。铠装式热电偶比装配式热电偶具有外径小、可任意弯曲、抗震性强等特点,适宜安装在装配式热电偶无法安装的场合,它的外保护管采用不同材料的不锈钢管,可适合不同使用温度的需要,内部充满高密度氧化绝缘体物质,非常适合于环境恶劣的场合。隔爆式热电偶通常应用于生产现场伴有各种易燃、易爆等化学气体的场合,如果使用普通热电偶极易引起气体爆炸,则在这种场合必须使用隔爆热电偶。


Plc

2.热电阻

  • 热电阻是中低温区最常用的一种温度测量元件。热电阻是基于金属导体的电阻值随温度的增加而增加这一特性来进行温度测量的。当电阻值变化时,二次仪表便显示出电阻值所对应的温度值。它的主要特点是测量精度高,性能稳定。其中铂热电阻的测量精度是最高的。

  • 铂热电阻根据使用场合的不同与使用温度的不同,有云母、陶瓷、簿膜等元件。作为测温元件,它具有良好的传感输出特性,通常和显示仪、记录仪、调节仪以及其它智能模块或仪表配套使用,为它们提供精确的输入值。若做成一体化温度变送器,可输出4-20mA标准电流信号或0-10V标准电压信号,使用起来更为方便。


Plc

2.热电阻

  • 热电阻大都由纯金属材料制成,目前应用最多的是铂和铜。此外,现在已开始采用甸、镍、锰和铑等材料制造热电阻。

  • 根据使用场合的不同,热电阻也有铠装式热电阻、装配式热电阻、隔爆式热电阻等种类,与热电偶类似。

  • 铂电阻的工作原理是,在温度作用下,铂热电阻丝的电阻值随温度变化而变化,且电阻与温度的关系即分度特性符合IEC标准。分度号Pt100的含义为在0℃时的名义电阻值为100Ω,目前使用的一般都是这种铂热电阻。此外还有Pt10、Pt200、Pt500和Pt1000等铂热电阻,Cu50、Cu100的铜热电阻等。


Plc

2.热电阻

本章将要介绍的水箱温度控制系统,传感器采用Pt100铂热电阻,型号WZP-035,测量温度范围0-300℃。表4-1列出了范围为0-100℃的Pt100铂热电阻的温度和电阻值的对应关系。


Plc

表4-1


4 1 2

4.1.2 模拟量模块与选型

模拟量模块包括模拟量输入模块SM331、模拟量输出模块SM332和模拟量输入/输出混合模块SM334。对模拟量输入模块SM331,可选择的输入信号类型有电压型、电流型、电阻型、热电阻型、热电偶型,而模拟量输出模块SM332提供有电压和电流两种类型的信号输出。有的CPU模块集成了这些信号输入输出功能,如S7-300的CPU313C模块(订货号6ES7 313-5BE01-0AB0),不仅提供24路的DI输入和16路的DO输出,而且配置了5路模拟量输入和2路模拟量信号输出。


Plc

1.模拟量模块的主要特性

表4-2、4-3列出了模拟量输入模块SM331的主要特性,更详细的特性说明请参阅相关技术文档。


1 4 3

1.表4-3

表4-3 模拟量输入模块SM331的主要特性


1 4 4

1.表4-4

表4-4 模拟量输出模块SM332的主要特性


1 4 5

1.表4-5

表4-5 模拟量输出/输出混合模块SM334的主要特性


Plc

2.模拟量模块的测量信号类型及测量范围设定

由于模拟量输入或输出模块提供有不止一种类型信号的输入或输出,每种信号的测量范围又有多种选择,因此必须对模块信号类型和测量范围进行设定。一般采用STEP7软件设定和量程卡设定两种方法。

(1)通过STEP7软件设定

以CPU313C模块为例进行设置。如上所述,CPU313C不仅是CPU模块,而且提供了功能丰富的输入输出信号,其中模拟量输入第0-3通道为电压/电流信号输入,第4通道为电阻/铂电阻输入,其设置在STEP7软件中进行,方法为:

在图4-1所示的“HW Config”对话框中,双击“AI5/AO2”项,打开图4-2的“Properties”属性对话框,该对话框有“General”、“Addresses”、“Inputs”、“Outputs”四个选项,选中“Inputs”项,画面如图4-2所示。


1 4 1

1.图4-1

图4-1 “HW Config”硬件组态对话框


1 4 11

1.图4-1

对于第0-3通道,可在“Measurement type”中选择电压或电流输入,在“Measuring range”中根据需要选择测量范围,对于电压输入有0-10V、±10V两种选择,对于电流输入有0-20mA、4-20mA、±20mA三种选择。第4通道为电阻/铂电阻测量通道,有R-2L、RTD-2L两种选择,图中测量类型已选为RTD-2L,PT 100,用于测量传感器为PT 100铂热电阻的温度值。


1 4 2

1.图4-2

图4-2设置CPU313C模块模拟量输入信号的类型及量程


1 4 31

1.图4-3

图4-3设置CPU313C模块输出信号的类型及量程


1 4 32

1.图4-3

用同样的方法可对CPU313C模拟量输出通道进行设置,可以设置为电压输出或电流输出,对于电压输出有0-10V、±10V两种选择,对于电流输出有0-20mA、4-20mA、±20mA三种选择,图4-3中第0通道设置为电压型,范围+/-10V,第1通道设置为电流型,范围4-20mA。

对于其它类型的模拟量输入/输出模块,根据模块的不同特性,其具体设置会各有特点,但其基本方法是一样的。


Plc

2.模拟量模块的测量信号类型及测量范围设定

(2)配有量程卡的模拟量模块的测量信号类型和测量范围的设定配有量程卡的模拟量模块,其量程卡在供货时已插入模块一侧,如果需要更改量程,必须重新调整量程卡,以更改测量信号的类型和测量范围。

量程卡可以设定为“A”、“B”、“C”、“D”四个位置,各种测量信号类型和测量范围的设定在模拟量模块上有相应的标记指示,可以根据需要进行设定和调整。

调整量程卡的步骤为:

①用锣丝刀将量程卡从模拟量模块中松开;

②将量程卡按测量要求和范围正确定位,然后插入模拟量模块中。


Plc

3.模拟值的表示

模拟值用二进制补码表示,宽度为16位,符号总在最高位。模拟量模块的精度最高为15位,如果少于15位,则模拟值左移调整,然后才保存到模块中。未用的低位填入“0”,如表4-6所示,表中标有“x”的位为“0”或“1”。


Plc

表4-6 模拟值的精度表示

模拟值的精度表示


Plc

表4-7

电压测量范围±10 V - ±1V的模拟值表示


Plc

表4-8

电流测量范围为0-20mA和4-20mA的模拟值表示


Plc

表4-9

标准Pt x100 RTD温度传感器的模拟值表示如表4-9所示以CPU313C模块为例,模拟量精度为12位,由表4-6可知,十六位数 中最后三位为0,因此分辨率为08H。再由表4-9可知,对应的温度分辨率为0.8℃。

对于其它模拟量输入信号的模拟值信号以及模拟量输出信号的表示,参阅相关技术文档。


Plc

表4-9

表4-9 标准Pt x100 RTD温度传感器的模拟值表示


4 2 step 7

4.2 STEP 7中的块(二)

STEP 7中的块主要包括组织块(OB)、功能(FC)、功能块(FB)、系统功能(SFC)、系统功能块(SFB)、背景数据块(IDB)、共享数据块(SDB),它们是一些独立的程序或数据单元,在STEP 7 的Blocks文件夹下,如图4-4所示。组织块和功能在前面已作介绍,本节主要介绍后面五种块。


Plc

图4-4

图4-4 STEP 7中的块


4 2 1

4.2 .1 功能块

功能块FB(Function Block)与功能FC(Function)一样,都是用户自己编写的程序模块,可以被其它程序块(OB、FC、FB)调用,这与C语言中的函数非常类似,而且也有自己的参数。在FB中以名称的方式给出的参数称作形式参数(形参),在调用FB时给形式参数赋的具体值就是实际参数(实参)。

FB不同于FC的是,FB拥有自己的存储区,即后面要介绍的背景数据块,而FC没有自己的存储区。在调用任何一个FB时,都必须指定一个背景数据块。当调用FB时,如果没有传送实参,则将使用背景数据块中保存的值。


Plc

1.FB的创建

创建一个FB的方法为:在Blocks目录下的右侧空白区域单击右键,在弹出的快捷菜单中选择“Insert New Object”-“Function Block”,如图4-5所示,即插入了一个FB,这时弹出如图4-6所示的对话框,只要填入FB的名称如FB1、输入符号名和注释,并选择编程语言,如LAD,单击OK,就完成了功能块FB1的插入和属性设置。


Plc

图 4-5

图4-5 在Blocks目录下插入一个FB


Plc

图 4-6

图4-6 FB属性设置对话框


Plc

图 4-7

在Blocks目录下双击FB1,打开如图4-7梯型图编辑器画面,右上半部分是变量声明表,右下半部分是程序指令区,左边是指令列表。变量声明表示出了FB1的参数和变量类型设置界面,用于声明本块中专用的变量即局域变量,包括块的形参和参数的属性。通过设置IN(输入变量)、OUT(输出变量)和IN_OUT(输入/输出变量),声明块调用时的软件接口(即形参)。临时变量(TEMP)在声明后在局域数据堆栈中开辟有有效的存储空间。STAT(静态变量)是FB特有的,是为配合使用背景数据块而保留的空间。用户在功能块中声明的变量,除临时变量外,它们将自动出现在功能块对应的背景数据块中。


Plc

图 4-7

图4-7 FB编辑器界面


Plc

2.变量的创建

在图4-7中,变量声明表左边给出了该表的总体结构,点击某一变量类型,例如IN,在表的右边将显示出该类型变量的详细信息,用户可以在这里创建变量。如图4-8所示,在IN类型中建立了Motor_On、Motor_Off、Motor_Timer三个变量,在OUT类型中建立了变量Motor_Working,在STAT类型中建立了静态变量Delay_Time,在TEMP类型中建立了临时变量Temp_Off,所有变量均作了注释。


4 8 1 2

图 4-8(1-2)

在变量声明表中建立变量

图4-8-1在变量声明表中建立变量

图4-8-2


4 8 3 4

图 4-8(3-4)

图4-8-3在变量声明表中建立变量

图4-8-4


Plc

功能块的说明

下面是对图4-8中所示功能块5种类型变量的使用说明:

(1)IN(输入变量):由调用FB的块提供的输入参数;

(2)OUT(输出变量):返回给调用FB的块的输出参数;

(3)IN_OUT(输入/输出变量):初值由调用FB的块提供,被FB修改后返回给调用它的块;

(4)TEMP(临时变量):暂时保存在局域数据区中的变量,只在使用块时使用临时变量,执行完后不再保存临时变量的数值。

(5)STAT(静态变量):在功能块的背景数据块中使用。关闭功能块后,其静态数据保持不变。功能FC没有静态变量。

需要注意的是,在变量声明表中输入各种参数时,不需要指定存储器地址,只要选择了各变量的数据类型,STEP7会自动为所有局域变量指定存储器地址。


Plc

3.编制FB程序

在图4-7 FB编辑器界面的右下半部分是程序指令区,用户可以在这里输入程序。以电机启停控制的功能块FB1为例,要求输入启动信号后电机运行状态为True,输入停止信号并经一定延时后电机运行状态为False。功能块中用到的各变量在图4-8中都已建立。LAD程序如下所示:


Network pg1

Network(pg1)


Network pg2 3

Network(pg2-3)


Plc

3.编制FB程序

在FB编辑器中编好的FB程序,可以在其它程序中进行调用。图4-9是在OB1中调用的一个实例,可以在图形编辑器左侧指令列表的“FB blocks”下找到“FB1 Motor Control”功能块,把它直接拖到OB1程序编辑区中即可。注意要指定背景数据块,这部分内容在4.2.4背景数据块中进行讲解。


Plc

图4-9

FB的调用


4 2 2

4.2.2 系统功能

系统功能SFC(System Function)是预先编好的固化在S7系列CPU中的程序,是可供用户程序调用的FC,因此称为“系统功能”。与FC相同,SFC不具有存储能力。通常SFC提供一些系统级的功能调用,如通讯功能、时间功能、块传送功能等。

SFC与下面将要介绍的系统功能块SFB的差别是,SFC没有存储功能。

各种具体的CPU支持的SFC是不同的,用户可以通过查阅相关CPU技术文档了解这方面的详细信息和资料。


4 2 3

4.2.3 系统功能块

系统功能块SFB(System Function Block)与系统功能SFC一样,是为用户提供的固化在S7系列CPU操作系统中的FB。SFB作为操作系统的一部分,不占用户程序空间。在用户程序中可以调用这些块,但用户不能进行修改。

与FB相同,SFB也是“具有存储能力”的块。用户调用SFB时也必须为SFB生成背景数据块,或指定背景数据块名,由系统自动生成背景数据块。

SFB提供一些系统级的功能调用,如PID功能块SFB41、SFB42、SFB43。关于PID部分内容将在本章后部分内容中作详细介绍,关于其它SFB,可通过查阅相关CPU技术文档了解这方面的详细信息和资料。


4 2 4

4.2.4 背景数据块

S7系列PLC具有强大的数据块功能。数据块是用于存放执行用户程序所需变量的数据区,分为背景数据块IDB(Instance Data Block)和共享数据块SDB(Shared Data Block)。STEP 7按数据生成的顺序自动为数据块中的变量分配地址。IDB是与FB相关联的,只能用来被指定的FB访问,因此在创建IDB时,必须指定它所属的FB,并且该FB必须已经存在。在调用一个FB时,也必须指明IDB的编号或符号。


1 blocks idb

1.在Blocks目录下创建背景数据块IDB

背景数据块IDB中的数据信息是自动生成的,它们是FB变量声明表中的内容(不包括临时变量TEMP),也即应首先生成功能块FB,然后生成它的的背景数据块。功能块FB建好后,创建背景数据块的方法为:

在Blocks目录下的右侧空白区域单击右键,在弹出的快捷菜单中选择“Insert New Object”-“Data Block”插入一个DB,弹出如图4-10所示的对话框。在“Name and type”中填入名称为DB4、选择背景数据块“Instance DB”和上面已经建立的功能块“FB1”,单击OK,即完成背景数据块的插入和属性设置。


1 blocks idb1

1.在Blocks目录下创建背景数据块IDB

这时双击Blocks中已生成的DB4,可以看到DB4中已经自动生成了数据,如图4-11所示。注意,DB4中的内容与功能块FB1变量声明表中定义的内容完全一致(临时变量TEMP除外)。

可以对图4-11中的参数进行修改。背景数据块有两种显示方式:数据显示“Data View”方式和声明表显示“Declaration View”方式。点击菜单View,若选中数据显示方式“Data View”选项,可对参数进行修改,如可把定时器的参数“Actual Value”改为1000mS;若选中声明表显示方式“Declaration View”选项,则不能修改数据.。


2 fb idb

2.调用FB时自动创建背景数据块IDB

除了按以上方法在Blocks文件夹中创建IDB,也可以在调用FB时自动创建IDB。在图4-9调用FB1时输入背景数据块名称为DB5,而这时在Blocks目录中并没有名为DB5的背景数据块,因此这时系统提示是否自动创建背景数据块,选择自动创建,则在Blocks目录中就自动创建了一个背景数据块FB5。双击把它打开,并把定时器的参数“Actual Value”改为2000mS。其内容如图4-12所示。


Plc

图 4-10

创建背景数据块


4 11 12

图 4-(11-12)

背景数据块DB4中的数据

背景数据块DB5中的数据


Plc

图4-13

一个FB可以和多个背景数据块相对应,这非常适合于生产工艺相同但配方或生产过程不同的场合。如上例,背景数据块DB4和DB5的定时器参数不同,调用背景数据DB5如图4-9,调用背景数据DB4如图4-13,两者实现的电机停止延时控制过程是不一样的。

需要注意的是,SFB虽然是由操作系统提供的,但其背景数据块仍需由用户生成。可以采用上面介绍的两种方法之一。


Plc

图 4-13

背景数据块DB4的调用


4 2 5

4.2.5 共享数据块

共享数据块SDB存储的是全局数据,可被所有的OB、FC、FB读取或将数据写入到SDB。与IDB一样,SDB中的数据是不会被删除的,即具有数据保存功能,其数据的容量与具体的PLC有关。

SDB的生成步骤与IDB基本相同。在Blocks目录下的右侧空白区域单击右键,在弹出的快捷菜单中选择“Insert New Object”-“Data Block”插入一个DB,弹出如图4-14所示的对话框,在“Name and type”中填入名称为SDB1,选择Shared Data Block,则FB选项框自动变灰不能选择。


Plc

图 4-14

创建共享数据块SDB


Plc

说明(1)

双击SDB1,自动打开数据编辑器。共享数据块与背景数据块不同,数据不会自动生成,变量名和数据类型必须一一输入,地址则是自动生成;为提高效率,也可以采用ARRAY等复杂数据类型。在菜单View中可采用 “Declaration View”声明表显示和 “Data View”数据显示两种方式显示数据,分别如图4-15和4-16所示。


Plc

说明(2)

声明表显示方式用于定义和修改共享数据块中的变量,指定它们的名称、类型和初值并可输入注释,STEP 7根据数据类型给出默认的初值,用户可以修改,地址由CPU自动指定。图中采用了数组ARRAY[1..20],其创建方法为:先在“Name”列输入名称,再在“Type”中选择ARRAY类型,在“[]”中输入数组的大小,并在下一行紧接着选择数据类型,如INT。

数据显示方式下显示声明表中的全部信息和变量的实际值,用户只能改变每个元素的实际值。复杂数据类型变量的元素如数组中的各元素用全名列出。在数据显示状态下用菜单“Edit”下的“Inicialize Data Block”可使变量恢复为初始值。


Plc

图 4-15

声明表显示方式下的共享数据块SDB1


Plc

图 4-16

数据显示方式下的共享数据块SDB1


4 2 6 fc105

4.2.6 工程数值换算功能FC105的应用

工程数值换算功能FC105用来将一个输入的整型值(例如模拟量I/O格式的整型值)转换为实型值,在工程中具有广泛的应用。

FC105输入输出参数关系如表4-10。


Plc

表4-10

FC105输入输出参数关系


4 2 6 fc1051

4.2.6 工程数值换算功能FC105的应用

FC105的数值换算公式为:

OUT=((FLOAT )IN -K1)/(K2-K1)*(HI_LIM-LO_LIM )+LO_LIM

对双极性,输入值范围为-27648到27648,对应K1 =-27648,K2 =+27648,

对单极性,输入值范围为0到27648,对应K1 =0,K2 =+27648。

图4-17是用FC105进行室温温度转换的一个实例,参数设置如下:

采用单极性,即BIPOLAR=0

因此K1 =0,K2 =+27648.0

程序中设定HI_LIM =2764.8,LO_LLM =0

输入信号IN来自CPU313C模块的模拟量输入第4通道,为铂电阻输入信号,采样的是环境温度值,数值为304,通过FC105变换后,得到实际温度值为30.4℃。


Plc

图4-17

用FC105进行温度转换应用实例


4 3 pid

4.3 PID控制原理

4.3.1 PID控制器基本概念

在过程控制中,按偏差的比例(P)、积分(I)和微分(D)进行控制的PID控制器(亦称PID调节器)是应用最广泛的一种自动控制器。它具有原理简单,易于实现,适用面广,控制参数相互独立,参数选定比较简单,调整方便等优点;而且在理论上可以证明,对于过程控制的典型对象──“一阶滞后+纯滞后”与“二阶滞后+纯滞后”的控制对象,PID控制器是一种最优控制。PID调节规律是连续系统动态品质校正的一种有效方法,它的参数整定方式简便,结构改变灵活(如可为PI调节,PD调节,等)。长期以来,PID控制器被广大科技人员及现场操作人员所采用,并积累了大量的经验。

PID控制器就是根据系统的误差,利用比例、积分、微分计算出控制量来进行控制。当被控对象的结构和参数不能完全掌握,或得不到精确的数学模型时、控制理论的其它技术难以采用时,系统控制器的结构和参数必须依靠经验和现场调试来确定,这时应用PID控制技术最为方便。即当我们不完全了解一个系统和被控对象,或不能通过有效的测量手段来获得系统参数时,最适合采用PID控制技术。


4 3 1 pid

4.3.1 PID控制器基本概念

1.比例(P)控制

比例控制是一种最简单的控制方式。其控制器的输出与输入误差信号成比例关系。当仅有比例控制时系统输出存在稳态误差(Steady-state error)。

2.积分(I)控制

在积分控制中,控制器的输出与输入误差信号的积分成正比关系。对一个自动控制系统,如果在进入稳态后存在稳态误差,则称这个控制系统是有稳态误差的或简称有差系统(System with Steady-state Error)。为了消除稳态误差,在控制器中必须引入“积分项”。积分项对误差的运算取决于时间的积分,随着时间的增加,积分项会增大。这样,即便误差很小,积分项也会随着时间的增加而加大,它推动控制器的输出增大,使稳态误差进一步减小,直到等于零。因此,采用比例+积分(PI)控制器,可以使系统在进入稳态后无稳态误差。


4 3 1 pid1

4.3.1 PID控制器基本概念

3.微分(D)控制

在微分控制中,控制器的输出与输入误差信号的微分(即误差的变化率)成正比关系。 自动控制系统在克服误差的调节过程中可能会出现振荡甚至失稳。其原因是由于存在有较大的惯性组件(环节)或有滞后(delay)组件,具有抑制误差的作用,其变化总是落后于误差的变化。解决的办法是使抑制误差的作用的变化“超前”,即在误差接近零时,抑制误差的作用就应该是零。这就是说,在控制器中仅引入“比例”项往往是不够的,比例项的作用仅是放大误差的幅值,而目前需要增加的是“微分项”,它能预测误差变化的趋势,这样,具有比例+微分的控制器就能够提前使抑制误差的控制作用等于零,甚至为负值,从而避免被控量的严重超调。所以对有较大惯性或滞后的被控对象,比例+微分(PD)控制器能改善系统在调节过程中的动态特性。


4 3 2

4.3.2闭环控制系统特点

控制系统一般包括开环控制系统和闭环控制系统。开环控制系统(Open-loop Control System)是指被控对象的输出(被控制量)对控制器(controller)的输出没有影响,在这种控制系统中,不依赖将被控制量反送回来以形成任何闭环回路。闭环控制系统(Closed-loop Control System)的特点是系统被控对象的输出(被控制量)会反送回来影响控制器的输出,形成一个或多个闭环。闭环控制系统有正反馈和负反馈,若反馈信号与系统给定值信号相反,则称为负反馈( Negative Feedback);若极性相同,则称为正反馈。一般闭环控制系统均采用负反馈,又称负反馈控制系统。可见,闭环控制系统性能远优于开环控制系统。


4 3 21

4.3.2闭环控制系统特点

PID就是应用最广泛的闭环控制器。如图4-18所示系统是用于电厂化学水加药系统的PID闭环控制系统,常用的有加氨、加联氨、加磷酸盐等多种方法。以加磷酸盐进行协调磷酸盐处理的闭环控制系统为例,系统目标设定值为期望的磷酸盐指标,闭环控制器的反馈值通过化学仪表(磷表)测得,并经A/D变换转换为数字量;目标设定值与磷表的反馈信号相减,其差送入PID控制器,经比例、积分、微分运算,得到叠加的一个数字量;该数字量经过上限、下限限位处理后进行D/A变换,输出一个电流信号去控制加药变频器的输入频率,并进而控制加药电机的转速,以控制加药泵的输出流量。该系统的PID控制器一般采用PLC提供的专用模块,也可以采用编程的方法(如PLC编程、高级语言编程或组态软件编程等)生成一个数字PID控制器。同时,其它功能如A/D、D/A都由PLC实现,磷表的反馈信号直接送PLC采集,控制加药变频器的电流信号也由PLC送出,去控制加药变频器的频率,进而控制加药泵的输出量,从而达到控制磷酸盐加药量的目的。


Plc

图4-18

电厂化学水加药系统的闭环控制系统应用实例


4 3 3 pid

4.3.3 PID控制器的参数整定

PID控制器的参数整定是控制系统设计的核心内容。它是根据被控过程的特性,确定PID控制器的比例系数、积分时间和微分时间的大小。PID控制器参数整定的方法很多,概括起来有如下两大类:

一是理论计算整定法。它主要依据系统的数学模型,经过理论计算确定控制器参数。这种方法所得到的计算数据未必可以直接使用,还必须通过工程实际进行调整和修改。

二是工程整定法。它主要依赖于工程经验,直接在控制系统的试验中进行,且方法简单、易于掌握,在工程实际中被广泛采用。PID控制器参数的工程整定方法,主要有临界比例法、反应曲线法和衰减法。这三种方法各有其特点,其共同点都是通过试验,然后按照工程经验公式对控制器参数进行整定。但无论采用哪一种方法所得到的控制器参数,都需要在实际运行中进行最后的调整与完善。

现在一般采用的是临界比例法。利用该方法进行PID控制器参数的整定步骤如下:

(1)首先预选择一个足够短的采样周期让系统工作;

(2)仅加入比例控制环节,直到系统对输入的阶跃响应出现临界振荡,记下这时的比例放大系数和临界振荡周期;

(3)在一定的控制度下通过公式计算得到PID控制器的参数。


4 3 3 pid1

4.3.3 PID控制器的参数整定

连续系统PID控制器的输出为:U(s)=K.(1+1/T1s+TDs)E(s)

增量式数字PID控制算式为:

其中,

,为采样周期。

比例调节器对于偏差是及时反应的,一旦偏差产生,调节器立即产生控制作用,使被控量朝着减小偏差的方向变化,控制作用的强弱取决于比例系数。比例调节器虽然简单快速,但是对于具有自平衡性的控制对象存在静差。加大比例系数可以减小静差,但过大的比例系数可能导致系统动荡而处于闭环不稳定状态。

为了消除比例调节器中的残存的静差,可以在比例调节的基础上加入积分调节。积分时间大,则积分作用弱,反之积分作用强。积分时间越大,消除静差越慢,但可以减小超调,提高系统的稳定性。但它的不足之处在于积分作用存在滞后特性,积分控制作用太强会使控制的动态性能变差,以至于使系统不稳定。


4 3 3 pid2

4.3.3 PID控制器的参数整定

加入积分调节环节,虽然减小了静差,但是降低了系统的响应速度。加入微分环节,能敏感出误差的变化趋势,将有助于减小超调,克服系统震荡,使系统趋于稳定,能改善系统的动态性能。它的缺点是对干扰同样敏感,使系统抑制干扰的能力降低。根据不同的控制对象适当地整定PID的三个参数,可以获得比较满意的控制效果。实践证明,这种参数整定的过程,实际上是对比例、积分、微分三部分控制作用的折衷。但是,PID本质上是一种线性控制器,并且上面讨论时是忽略了纯滞后时间的,实际系统中,如果(是纯滞后时间,是系统总的惯性时间常数),用PID控制器的效果就不理想了。而实际工业对象具有较大的惯性和纯滞后特性,以及其动力学系统的内部不确定性和外部干扰的不确定性,所有这些都给PID控制带来了困难和复杂性。

一般来说,要获得满意的控制性能,单纯采用线性控制方式还是不够的,还必须引进一些非线性控制方式,采取灵活有效的手段,如变增益、智能积分、智能采样等多种途径,主要依靠专家经验、启发式直观判断、直觉推理等智能控制方法,有利于解决系统控制中的稳定性和准确性的矛盾。可以说智能PID赋予传统PID以新的生命。


4 3 5 pid

4.3.5 PID控制器的主要优点

PID控制器成为应用最广泛的控制器,它具有以下优点:

(1)PID算法蕴涵了动态控制过程中过去、现在、将来的主要信息,而且其配置几乎最优。其中,比例(P)代表了当前的信息,起纠正偏差的作用,使过程反应迅速。微分(D)在信号变化时有超前控制作用,代表将来的信息。在过程开始时强迫过程进行,过程结束时减小超调,克服振荡,提高系统的稳定性,加快系统的过渡过程。积分(I)代表了过去积累的信息,它能消除静差,改善系统的静态特性。此三种作用配合得当,可使动态过程快速、平稳、准确,收到良好的效果。

(2)PID控制适应性好,有较强的鲁棒性,对各种工业应用场合,都可在不同的程度上应用。特别适于“一阶惯性环节+纯滞后”和“二阶惯性环节+纯滞后”的过程控制对象。

(3)PID算法简单明了,各个控制参数相对较为独立,参数的选定较为简单,形成了完整的设计和参数调整方法,很容易为工程技术人员所掌握。


4 3 5 pid1

4.3.5 PID控制器的主要优点

(4)PID控制根据不同的要求,针对自身的缺陷进行了不少改进,形成了一系列改进的PID算法。例如,为了克服微分带来的高频干扰的滤波PID控制,为克服大偏差时出现饱和超调的PID积分分离控制,为补偿控制对象非线性因素的可变增益PID控制,等。这些改进算法在一些应用场合取得了很好的效果。同时当今智能控制理论的发展,又形成了许多智能PID控制方法。


4 4 pid

4.4 PID指令及应用

S7-300及400提供有PID控制功能块来实现PID控制。STEP7提供了系统功能块SFB41、SFB42、SFB43实现PID闭环控制,其中SFB41“CONT_C”用于连续控制,SFB42“CONT_S”用于步进控制,SFB43“PULSEGEN”用于脉冲宽度调制,它们位于文件夹“\Libraries\Standard Library\PID Controller”中。位于文件夹“\Libraries\Standard Library\PID Controller”的FB41、FB41、FB43与SFB41、SFB42、SFB43兼容,FB58、FB59则用于PID温度控制。它们是系统固化的纯软件控制器,运行过程中循环扫描、计算所需的全部数据存储在分配给FB或SFB的背景数据块里,因此可以无限次调用。

本章以连续PID控制器SFB41模块为例进行详细介绍。其它PID模块的应用是相类似的。

STEP 7的在线帮助文档提供了各种PID功能块应用的帮助信息。


4 4 1 pid

4.4.1 PID指令主要参数的意义

SFB41的输入参数和输出参数及其意义说明分别在表4-11、4-12中列出


Plc

表4-11

SFB41输入参数


4 11 2

表4-11-2

SFB41输入参数


4 11 3

表4-11-3

SFB41输入参数


Plc

表4-12

SFB41输出参数


4 4 2 sfb41

4.4.2 SFB41原理框图

SFC41 CONT_C的控制原理框图如图4-19所示。


4 4 3 pid

4.4.3 PID指令的使用注意事项

1.PID控制器的选取

PID控制器的性能和处理速度只与所采用的CPU的性能有关。对于任意给定的CPU,控制器的数量和每个控制器被调用的频率是相互矛盾的。控制环执行的速度,也即在每个时间单元内操作值必须被更新的频率决定了可以安装的控制器的数量。对要控制的过程类型没有限制,迟延系统(温度、液位等)和快速系统(流量、电机转速等)都可以作为被控对象。

过程分析时应注意:控制过程的静态性能(比例)和动态性能(时间延迟、死区和重设时间等)对被控过程控制器的构造和设计以及静态(比例)和动态参量(积分和微分)的维数选取有着很大的影响。准确地了解控制过程的类型和特性数据是非常必要的。

控制器选取时应注意:控制环的特性由被控过程或被控机械的物理特性决定,并且设计中可以改变的程度不是很大。只有选用了最适合被控对象的控制器并使其适应过程的响应时间,才能得到较高的控制质量。不用通过编程就可以生成控制器的大部分功能(构造、参数设置和在程序中的调用等),前提是必须已经掌握STEP 7的编程基础知识。


4 4 3 pid1

4.4.3 PID指令的使用注意事项

2.SFB41各子功能的详细描述

(1)设定值的输入

如图4-19,设定点的值以浮点数格式在SP_INT(内部设定值)处输入。

(2)过程变量的输入过程变量即反馈值可以用两种方法输入:

一种中用PV-IN浮点数格式输入过程变量,这时控制I/O输入过程变量的开关量PVPER_ON应处于Off状态。

另一种是从外设直接输入I/O量到PV_PER,功能CRP_IN将从外设来的模拟量输入模块采样的数字值PV_PER转化成范围在-100%~100%之间的浮点数格式。这时控制I/O输入过程变量的开关量PVPER_ON应处于On状态。


4 4 3 pid2

4.4.3 PID指令的使用注意事项

(3)外设输入过程变量的值转换为浮点数格式

模拟量输入模块采样的数字值的最大值为27648(十六进制表示为6C00H),功能CRP_IN根据下面的公式将PV_PER转换为-100%~100%之间的浮点数格式数值:

CRP_IN的输出= PV_PER*100/27648

(4)外设输入过程变量值的标准化

功能PV_NORM根据下面的公式使CRP_IN的输出标准化:

PV_NORM的输出 = ( CRP_IN的输出) * PV_FAC + PV_OFF

式中,PV_FAC为过程变量的系数,PV_OFF为过程变量的偏移量,默认值分别为1.0和0。它们用来调节过程输入的范围。

如果内部设定值SP_INT是有物理意义的,则通过上面的转换就可将外设输入过程变量(即反馈值)的值转换为该物理值。图4-19中PV为过程变量格式化后的输出值,它是一个中间变量。


4 4 3 pid3

4.4.3 PID指令的使用注意事项

(5)误差信号及死区处理

误差是设定值点SP_INT和过程变量之间的差值。为了抑制由于控制量量化而引起的小扰动,可将死区功能DEADBAND运用在误差信号上。如果将DEADB_W设为0,则死区将不起作用。

(6)PID运算

在这里PID控制算法是位置式的,比例、积分和微分作用并联并且可以通过开关量P_SEL、I_SEL、D_SEL分别激活或取消激活。这样就可以分别构造P、PI、PD以及PID控制器,纯积分控制或纯微分控制也是可以的。

(7)手动值控制

通过MAN_ON变量可以在手动和自动模式之间进行切换。在手动模式(MAN_ON=1)下,操作值可以设定为一个手动选择值,积分器在内部设定为LMN(操作值)、LMN_P(比例操作值)、DISV(扰动),微分器设定为0,并且在内部进行同步,这意味着当转换到自动模式(MAN_ON=0)后,不会引起操作值的突然改变。


4 4 3 pid4

4.4.3 PID指令的使用注意事项

(8)输出限幅

利用功能LMNLIMIT可以将输出值限定在所选择的范围内,即上限值为LMN_HLM,下限值为LMN_LLM,输出超界情况会在QLMN_HLM(超上限)和QLMN_LLM(超下限)信号输出位上表现出来。

(9)控制器输出值的格式化

功能LMN_NORM根据下面的公式将输出限幅后的LMNLIMIT的输出进行格式化后输出LMN:

LMN=LMNLIMIT的输出×LMN_FAC+LMN_OFF

LMN_FAC为输出系数,LMN_OFF为输出偏移量,其默认值分别为1.0和0。

(10)LMN控制器输出值转换为I/O格式的输出值

功能CRP_OUT将浮点数格式的输出值LMN根据下面的公式转化成能直接输出到外设I/O的值:

LMN_PER= LMN×100/27648

(11)前馈控制

扰动可以作为前馈信号从DISV处输入。


3 pid

3.PID参数的设定

PID调节器参数是根据控制对象的惯量来确定的。大惯量如大烘房的温度控制,一般P可在10以上,I=3-10,D=1左右。小惯量如一个小电机带一个水泵进行压力闭环控制,一般只用PI控制,P=1-10,I=0.1-1,D=0,这些要在现场调试时进行修正,主要是靠经验及对生产工艺的熟悉,参考对测量值的跟踪与设定值的曲线,从而调整P、I、D的大小。

下面具体说明经验法的整定步骤:

(1)让调节器参数的积分系数I=0,微分系数D=0,控制系统投入闭环运行,由小到大改变比例系数P,让扰动信号作阶跃变化,观察控制过程,直到获得满意的控制过程为止。

(2)取比例系数P为当前的值乘以0.83,由小到大增加积分系数I,同样让扰动信号作阶跃变化,直至得到满意的控制过程。


3 pid1

3.PID参数的设定

(3)积分系数I保持不变,改变比例系数P,观察控制过程有无改善,如有改善则继续调整,直到满意为止。否则,将原比例系数P增大一些,再调整积分系数I,力求改善控制过程。如此反复试凑,直到找到满意的比例系数P和积分系数I为止。

(4)引入适当的微分系数D,此时可适当增大比例系数P和积分系数I。和前述步骤相同,微分系数的整定也需反复调整,直到控制过程满意为止。

需要注意的是:仿真系统所采用的PID调节器与传统的工业PID调节器有所不同,其各个参数之间是相互隔离的,因而互不影响,用其观察调节规律十分方便。

经验法实质上是一种试凑法,它是在生产实践中总结出来的行之有效的方法,并在现场中得到了广泛的应用。经验法简单可靠,但需要有一定的现场运行经验,整定时易带有主观片面性。当采用PID调节器时,由于有多个整定参数,反复试凑的次数增多,因此增加了得到最佳整定参数的难度。


4 4 4 pid

4.4.4 PID指令对温度的控制编程

PID指令每隔一定时间运行一次,其间隔时间根据工程运行情况可作修改,一般放在定时循环中断如OB35中调用。

(1)在启动时执行的组织块OB100中调用初始化值,程序如下:

S DB2.DBX 0.0 //重启动PID,复位PID内部参数

R DB2.DBX 0.0 //进入正常运行

(2)在OB35中调用连续PID控制功能块SFB41。OB35执行的时间间隔即PID控制器运行的周期,在CPU属性设置对话框的循环中断选项卡中设置,最大为10000ms,如图4-20所示设置为1S。调用SFB41应指定相应的背景数据块,在OB35中插入SFB41时指定背景数据块为DB2,系统会自动提问是否创建该背景数据块,选择建立。

背景数据块DB2的内容如图4-21。


Plc

图4-20

定时循环中断OB35属性设置


Plc

图4-21

背景数据块DB2


Plc

图4-22

OB35组织块中插入SFB41并指定输入参数,如图4-22所示。


4 4 4 pid1

4.4.4 PID指令对温度的控制编程

SP_INT设定为浮点数格式的温度控制目标值。由于模拟量模块采集的是I/O格式的整型数,因此连接至PV_PER,将开关PVPER_ON置为ON,这样通过功能CRP_IN和PV_NORM就能直接将温度采集的整型数值转换为浮点数格式的数值,该值即为PV,请参阅图4-19;也可以通过专门的功能如FC105进行数值转换。


4 5 pid

4.5 实训九:利用PID进行温度控制

4.5.1 温度控制系统的控制要求

本温度控制系统实现对如图4-23所示的实验水箱进行恒温控制,采用PID闭环控制方式。通过电磁阀SV1控制一路冷水进、SV2控制一路热水出,以加快水箱温度的变化;搅拌电机M使水箱中水的温度保持均匀,保证铂电阻TS测温的准确;加热器H用来加热水温,其工作功率受PID调节,具体地受双向晶闸管的调节。当水箱设备确定后,PID参数主要受进出水流量、水箱水温设定控制温度、室温等因素影响。


Plc

图4-23

实验水箱温度控制系统


Plc

表4-13

表4-13实验水箱温度控制系统符号描述


Plc

图4-24

系统PID闭环控制的原理图见图4-24,温度设定值与铂电阻测量的温度反馈值之差(error)经比例P、积分I、微分D运算后,输出一个模拟信号去控制加热器工作。

系统PID闭环控制原理图


4 5 3

4.5.3温度控制系统的资源分配

本温度自动控制系统的核心是PLC及其PID自动控制,其PLC配置为:

硬件:SIEMENS S7-300系列之CPU313C CPU,自带24路DI/16DO/5AI/2AO。

软件:STEP 7,V5.2。

根据图4-25温度控制系统所示,各控制元件对应I/O变量的资源配置如表4-15。


Plc

图4-25

温度控制系统的电气控制原理图

图中符号意义除表4-13已注外,其余如表4-14。


Plc

表4-14

实验水箱温度控制系统电气控制原理图符号描述


4 5 31

4.5.3温度控制系统的资源分配

本温度自动控制系统的核心是PLC及其PID自动控制,其PLC配置为:

硬件:SIEMENS S7-300系列之CPU313C CPU,自带24路DI/16DO/5AI/2AO。

软件:STEP 7,V5.2。

根据图4-25温度控制系统所示,各控制元件对应I/O变量的资源配置如表4-15。


Plc

表4-15

温度控制系统的I/O资源配置表


4 5 4 step7

4.5.4 STEP7创建温度控制项目

本节主要讨论在STEP 7环境中创建上面的温度控制项目,采用用户定制的方法,项目名称为ProTempCtr。

创建步骤如下:

(1)打开SIMATIC Manager管理器,如果已有项目,则用菜单“File”下的“Close”命令将其关闭。在菜单“File”下选择“New”,打开“New Project”对话框,在“Name”中输入ProTempCtr,“Type”中选择“Project”,“Storage location”中选择所建工程的存放路径例如D:\TemCtr,如图4-26所示。单击OK退出该对话框。


Plc

图4-26

创建温度控制项目工程


4 5 4 step71

4.5.4 STEP7创建温度控制项目

(2)这时SIMATIC Manager中已生成一个空的项目。右击空白处,弹出插入新对象“Insert New Object”的弹出式菜单,如图4-27,我们选择插入“SIMATIC 300 Station”。点击“+”号展开,这时项目ProTempCtr下多了一项SIMATIC 300(1),选中SIMATIC 300(1),双击右侧浏览区域中的“Hardware”,打开一个空白的“HW Config”对话框。

(3)在“HW Config”对话框中展开右上角窗口中的“SIMATIC 300”,再展开“RACK 300”项,将Rail拖至左边空白区,即插入了一个基架。接着依次展开“CPU-300”、“CPU 313C”,将“6ES7 313-5BE00-0AB0”拖至基架第二行,结果如图4-28。在菜单“Station”下选择“Save and Compile”,运行后系统自动在SIMATIC Manager的项目ProTempCtr下生成了CPU313C项,其中包括Blocks项,见图4-29。


4 5 4 step72

4.5.4 STEP7创建温度控制项目

至此,项目就创建完成了。

当然,完全可以采用向导等其它方法来创建项目。


Plc

图4-27

插入SIMATIC 300 Station对象


Plc

图4-28

插入CPU313C对象


Plc

图4-29

图4-29 含有Blocks项的界面


4 5 5 hw config

4.5.5 通过HW Config进行硬件组态

如图4-28,我们可以对S7-300 PLC进行硬件组态,如添加数字量输入输出模块、模拟量输入输出模块及通讯模块等,方法同上面添加CPU313C模块的方法相同,即只要在图4-28右侧的设备库中展开需要的模块即可。也可以对CPU及输入输出模块的属性进行设置。

本系统采用的CPU模块本身已具有24路开关量输入、16路开关量输出、5路模拟量输入和2路模拟量输出,完全可以完成系统控制功能的要求,因此不必再添加其它开关量及模拟量模块。

CPU313C模块的具体I/O配置为:DI24×DC24V/16DO×DC24V/AI5×12Bit/AO2×12Bit,AI第0-3通道为电压或电流输入,第4通道为二线制的R或RTD(Pt100)方式。

根据表4-15的I/O资源分配表,需在“HW Config”对话框中对CPU313C模块进行组态,具体步骤如下:


4 5 5 hw config1

4.5.5 通过HW Config进行硬件组态

(1)在图4-28对话框中双击“DI24/DO16”栏,弹出属性对话框,有“General”通用、“Addresses”地址、“Inputs”输入三个属性设置页。在通用页中可以更改名称,缺省的即为“DI24/DO16”,在地址页中可以重新设置开关量输入输出模块的地址,在输入页面可以对硬件中断触发方式、输入延时时间参数进行设置。图4-30为修改地址的页面,系统缺省分配地址为开关量输入范围124-126,开关量输出范围124-125,把“System selection”复选框中的钩去掉,即可以在“Start”中对地址进行修改,“End”中的内容自动生成。在“Inputs”、“Outputs”中的“Start”框中分别输入地址0、0,则地址自动生成为:开关量输入范围0-2,开关量输出范围0-1。

(2)双击“AI5/AO2”栏,同(1)的方法将系统缺省分配的地址修改为:模拟量输入范围3-12,模拟量输出范围3-6。

以上两步执行后的结果画面即如图4-1所示。


4 5 5 hw config2

4.5.5 通过HW Config进行硬件组态

(3)将双击“AI5/AO2”后弹出的对话框切换至“Inputs”页,在温度单元选择为“Degrees Celsius”即摄氏温度,第4通道的测量类型选择为“RTD-2L”,测量范围自动调整为“Pt100 std”且不可修改。如图4-31所示。

(4)将上面的对话框切换至“Outputs”页,将第0通道的输出量程修改为0-10V。


Plc

图4-30

设置开关量输入输出地址


Plc

图4-31

修改模拟量输入模块的量程


4 5 5 hw config3

4.5.5 通过HW Config进行硬件组态

修改CPU313C属性的步骤如下:

(1)在图4-28对话框中双击“CPU 313C”,弹出CPU 313C的属性对话框,见图4-32。点击“Properties”,弹出修改CPU地址的对话框,如图4-33,在“Address”中可选择地址,缺省的地址是2。

(2)对定时循环中断组织块OB35进行属性设置,选择图4-22中“Cyclic Interrupt”页,中断时间设置为10000,单位为ms,如图4-20所示。

(3)其它选项可根据需要进行设置。

最后需对组态的内容进行保存。


Plc

图4-32

修改CPU 313C的属性


Plc

图4-33

CPU 313C地址修改对话框


4 5 6 lad stl fbd

4.5.6 通过LAD/STL/FBD进行编程

系统编程用到组织块OB100、OB35、OB1。在OB100中对参数进行初始化,如对PID控制模块SFB41的初始化,循环定时中断OB35主要对SFB41进行操作,这两部分内容已在4.4节温度控制编程部分作了介绍。这里主要针对上述温度PID闭环控制系统,在4.4节内容的基础上进行补充。

系统中I0.0、I0.1、I0.2、I0.3、I0.4为运行状态或故障信号,一般送上位机组态软件如WinCC或触摸屏中进行监视。I1.0、I1.1、I1.2、I1.3为PLC控制电机、加热器、电磁阀SV1、SV2等工作的开关信号,当采用WinCC或触摸屏控制时,可用内存变量代替。


Plc

组织块OB1中的主程序


Plc

组织块OB1中的主程序

水箱水温测量值I/O格式转换为浮点数格式,其中IW11为铂电阻采集的模拟值,DB2.DBD10为SFB41背景数据块DB2的数据单元,对应PID的输入PV_IN。

在组织块OB35中SFB41系统功能块的输出LMN_PER(DB2.DBD76)为I/O格式的输出,数值范围为0-27648,可以直接赋值给模拟量输出模块(地址QW3),对应电压输出范围为0-10V,OB1中的程序为:


Plc

组织块OB1中的主程序

以上是基本的LAD程序,可根据系统功能的要求,在此基础上对程序进行扩展。


4 5 7

4.5.7 下载调试

PLC硬件组态和软件编程完成后,必须将其下载至PLC中,PLC才能运行。前提是PLC与PC机的STEP 7环境已建立良好的通讯,特别要注意STEP 7与PLC中地址的一致。

(1)硬件下载

在图4-25中点击 按提示即可将PLC硬件信息下载至PLC中。

(2)软件下载

本系统中软件下载包括下载组织块OB1、OB35、OB100,背景数据块DB2,功能FC105,系统功能块SFB41等内容,如图4-31所示。


4 5 7 3 4

4.5.7 下载调试(图3-4)

软件下载的内容


4 5 71

4.5.7 下载调试

可以对图4-34中的对象一个一个下载,方法为选中所需下载的对象后点击 ,按提示将信息下载至PLC中,也可以单击鼠标右键,选中PLC菜单下的“Download”进行下载。

也可以一次将所有程序下载至PLC中,方法为右击图4-34中的“Blocks”项,然后点击 ,按提示将信息下载至PLC中,也可以单击鼠标右键,选中PLC菜单下的“Download”进行下载。

(3)系统调试

需对PID控制器设置初值SP_INT,即水箱期望控制的温度值,在图4-35的DB2.DBD6单元中进行设置。该对话框通过点击图形编辑器中“PLC”菜单下的“Monitor/Modify Variables”选择项打开。

PID参数的设置可参照4.3节中的方法进行,参数P、I、D分别在图4-35的DB2.DBD20、DB2.DBD24、DB2.DBD28单元中进行设置。当然,在本系统中,完全可以考虑采用PI调节的方式。


Plc

图4-35

调试参数的输入窗口


Plc

图4-35

当采用WinCC或触摸屏对该温度控制系统进行监控时,期望温度值、PID参数等的设定就可根据WinCC或触摸屏的HMI(Human Machine Interface)人机操作界面进行设置或更改,非常方便。


  • Login