****大学本科毕业设计(论文)
个继电器梯形逻辑 图相似:当电信号通过各个触点复合元件以及输出线圈时,梯形图就可以为我们追踪 电信号在电源示意线之间的流动。语句表 是STEP7 编程语言的文本表达方式,与机 器码相似,CPU 执行程序时将按每一条指令一步一步地执行。功能块图 也是STEP7 编程 语言的图形表达方式,是使用与布尔代数相类似的逻辑框来为我们表达逻辑。
STEP7编程软件中可以通过将一个程序分解为自成体系的单个程序部分来对用户程序进行结构化。通过程序的分解,可以使一些复杂或者是语句比较多的程序更容易被用户所理解,同时也可以对单个的程序进行标准化设计,使 我们的程序组织结构更加简化并且修改也更加容易,系统在调试的时候也更加的容易了[14]。
在STEP77 用户程序中我们可以 使用几种不同类型的块,如组织块(OB)、功能块(FB)、功能(FC)、背景数据块(DB)以及系统功能块(SFB)等。各个类型的块在使用和功能方面有着不同的作用。比如说,组织块简称OB,在系统中作为程序和操作系统的接口,操作系统通过调用组织块来控制循环、执行驱动程序的中断或是启动PLC控制器。再循环程序中,组织块OB1的优先级最高,同时也决定了个程序部分之间的执行顺序。OB1通过操作系统的调用来启动用户程序的循环执行。功能,也就是系统中的FC,在系统中属于用户自己编程的块。功能(FC)是一种“无存储区”的逻辑块,它的临时变 量是存储在局域数据的堆栈中。与其它块不同的是,在FC 执行结束后,这些数据将会丢失。
另外两种功能块分别为系统功能块和功能块。系统功能块简称SFB,它和系统功能即SFC都是STEP7为客户所提供的己经编程好了的程序块,在通过测试后,被集成在CPU 中的功能程序库中。SFB 是操作系统的一部分,但它并不占用程序的空间,并且他是具有存储能力的块,需要一个背景数据块,并且需要将此块作为程序的一部分来安装到CPU 中。功能块(FB)也是一种属于用户可以自己编程的块。功能块同样是具有“存储功能”的块,可以用数据 块作为功能块的存储器(背景数据块)。传递给FB的参数和静态变量存在背景数据 块中。背景数据块(背景DB)在每次功能块调用时都要分配出一块来给这次调用,他是用于传递参数[15]。
11
****大学本科毕业设计(论文)
3.2.3 基于西门子STEP7 的模糊PID控制系统设计
本文采用西门子STEP7 V12软件对模糊PID控制系统进行设计,系统程序的功能主要是控制LNG/柴油双燃料发动机模拟实验平台的整个运行过程,包括:检测比例调节阀的阀门开度、设定比例调节阀的的阀门开度、检测控制过程中Kp、Ki、Kd值的大小以及变化、自动/手动控制方式的设定、帮助界面的编写、设定温度的输入与实际温度的显示、实际温度的/设定温度/阀门开度的线性显示。
模拟实验平台的温度控制流程图如图3-1所示。主程序首先在初始状态下输入设定对比温度值,在本模拟试验平台中,设定对比温度值为40℃。然后切换模拟实验平台的手动/自动运行模式,若切换于手动运行模式状态,则触摸屏上会跳出比例调节阀的阀门开度设定,设定比例调节阀阀门开度,则模拟实验平台将按照操作者操作运行,此时不进行模糊PID控制;若切换于自动模式,则PLC控制器将温度传感器检测的温度与系统设定的对比温度进行比较,若两者不等,则继续判定温度传感器检测温度是否大于系统设定的对比温度,若是,则PLC控制器控制比例调节阀阀门开大,若否,则PLC控制器控制控制比例调节阀阀门变小。温度传感器检测的结果再与系统设定的对比温度相对比,若否,则循环上一步,若是,则触摸屏上将显示:KP,KI,KD的实时数值、比例调节阀门的实时开度、系统设定的对比温度/阀门开度/实际温度的实时曲线变化。
12
****大学本科毕业设计(论文)
开始初始状态设定对比温度值NO输出实时Ki、Kp、Kd值YES显示比例调节阀开度·切换自动模式设定比例调节阀阀门开度结束检测温度等于设定温度NO输出设定温度、实际温度、阀门开度变化曲线检测温度大于设定温度NO比例调节阀阀门开小YES比例调节阀阀门开大
图3-1模拟实验平台温度控制流程图
(1)PLC程序编写
① PLC变量设置
根据预期要求,我们对“手动/自动选择”、“模拟量输入1”、“模拟量输出1”、“PID设定温度”、“阀门开度”、“HMI实际温度”、”HMI设定阀门开度”、”HMI
13
****大学本科毕业设计(论文)
设定温度”、”缺水故障”、”缺水故障报警字”、”缺水故障报警”等11个变量进行数据类型的定义以及数据地址的分配。具体分配情况如图3-2所示。
图3-2 PLC变量
② 主程序编写
程序段1(如图3-3所示)通过前面的NORM-X程序块将“模拟量输入1”即读取输入温度在“5529”(即标定10摄氏度)到“27648”(即标定100摄氏度)之内转换为标准值即HMI实际温度。后面的MUL程序块为乘法块,将IN1(即HMI实际温度)和IN2(即100.0)输入的数据相乘得到输出OUT(即HMI实际温度)的数据。
图3-3 主程序段1
程序段2(如图3-4所示)为转换指令,即是通过转换值程序块将IN输入的数值(即HMI实际温度)数据类型由Int类型转换为Real类型得到OUT输出数据(即PID设定温度)。
14
相关推荐: