组态王pid控制及程序
基于PLC和组态王的液位PID控制系统讲解
目录1 《控制系统集成实训》任务书 (2)2 总体设计方案 (4)2.1 系统组成 (4)2.2 水箱液位控制系统构成 (4)2.3 水箱液位控制系统工作原理 (5)2.4 仪表选型 (6)2.4.1 GK-01电源控制屏 (6)2.4.2 GK-02传感器输出与显示 (7)2.4.3 GK-03单片机控制 (7)2.4.4 GK-07交流变频调速 (8)2.4.4 GK-08 PLC可编程控制 (8)2.5 PLC设计流程图 (9)3 外部接线图 (10)4 I/0分配 (10)5 梯形图 (11)6 组态王界面 (15)6.1 主界面 (16)6.2 数据词典 (16)6.3 曲线监控 (17)6.4 水流动画程序 (18)7 调试和运行结果 (19)7.1 比例控制 (19)7.2 比例积分调节 (19)心得体会 (21)参考文献 (22)1.《控制系统集成实训》任务书题目:基于PLC和组态王的液位PID控制系统一、实训任务本课题要求设计液位PID控制系统,它的任务是使水箱液位等于给定值所要求的高度,并通过PID控制减小或消除来自系统内部或外部扰动的影响。
1.实训模块:1、THKGK-1过程控制实验装置GK-02、GK-07、GK-08。
2、计算机及STEP7运行环境(安装好演示程序)、MPI电缆线,组态王软件。
2.控制原理和控制要求:控制原理如图所示,测量值信号由S7-200PLC的AI通道进入,经程序比较测量值与设定值的偏差,然后通过对偏差的P或PI或PID调节得到控制信号(即输出值),并通过S7-200PLC 的AO通道输出。
用此控制信号控制变频器的频率,以控制交流电机的转速,从而达到控制水位的目的。
S7-200PLC和上位机进行通讯,并利用上位机组态王软件实现给定值和PID参数的设置、手动/自动无扰动切换、实时过程曲线的绘制等功能。
二、实训目的通过本次实训使学生掌握:1)实际控制方案的设计;2)编程软件的使用方法和梯形图语言的运用;2)程序的设计及实现方法;3)程序的调试和运行操作技术。
实验三 基于组态王的液位PID控制实验(水泵控制)(RTU通讯)PPT(手动)
计算机控制技术自动化学院黄国辉Email : hgh817@Tel: 86919133QQ: 511372733实验三基于组态王的液位PID 控制实验(水泵控制)第一步创建工程路径新建的工程(项目)第二步创建新画面双击双击快捷键F2能打开图库管理器找到左侧反应器一栏双击同理找出水泵和阀门选择管道从水泵出水口开始按水流方向画线,双击结束选择水箱选择图素前移选择矩形画图,在画面上画出矩形用作水槽选择填充选择过度色类型并选择图素前移,使水槽覆盖水管显示画刷类型增加水箱过度色选择管道属性可改变管道属性,流动效果属性,来设置不同的管道及流动效果。
更改所有管道属性,并移动水泵等位置,和水管位置相匹配。
可更改文字颜色插入文本注意:文字和后面的“####”分两次输入!!!选择按钮选择字符串替换,可更改按钮上的字在工具箱中选择“实时趋势曲线”,放置在合适位置。
保存!第三步配置设备组态王可以与一系列I/O设备进行通讯,支持的I/O设备包括:可编程控制器(PLC)、智能模块、板卡、智能仪表等等。
组态王与I/O设备之间的数据交换采用以下五种方式:串行通讯方式、板卡方式、网络模块、人机接口卡方式、DDE方式。
在本实验中选取ModbusRTU(unpack)通过串口方式进行数据交互。
组态王和单片机进行数据交互有严格的数据格式。
双击点击下拉,找到莫迪康选择COM口1代表下位机设备地址,地址范围为1-255。
添加设备成功ModbusRTU(unpack)协议格式:举例说明举例说明组态王莫迪康系列产品的Modbus RTU驱动帮助)ModBus功能码与组态寄存器对应关系此表为操作相关寄存器对应的功能码表格(主要用到了寄存器4相应的功能码为03,06。
)例如:功能码03,对寄存器4进行读操作,寄存器地址为4xxx功能码06,对寄存器4进行写操作,寄存器地址为4xxx地址为40101:使用寄存器名称为4,dd 为地址通道范围,0101为水泵1实际地址100加上1后的值,因为组态地址通道是从1开始的,没有00地址。
基于PLC和组态王的流量PID控制
基于PLC和组态王的流量PID控制系统基于PLC和组态王的流量PID控制系统[摘要] 随着我国社会经济的发展,人们生活水平的不断提高,供水系统的建设是其中的一个重要方面,供水的经济性、可靠性、稳定性直接影响到目前人们的正常生活和工作.传统的供水方式普遍存在效率低、可靠性差、自动化程度不高等缺点,难以满足当前经济生活的需要。
本文针对这些问题主要设计了一套由PLC、变频器、等主要设备构成的变频恒流供水及其监控系统。
可以有效地解决传统供水方式中存在的问题,增强了系统的可靠性。
关键词:流量控制 PLC 组态王 PID控制Abstract:With the development of our social economy, the continuous improvement of people’s living standard, the construction of the water supply system is one of the important aspects of water supply of the economy,reliability and stability directly affect the current people’s normal life and work. Traditional way of water supply is widespread, low efficiency,poor reliability and high degree of automation is not weakness,it is difficult to meet the needs of the current economic life. Aiming at these problems mainly devised a composed of PLC,inverter, the main equipment such as variable frequency constant current supply and its monitoring and control system. Can effectively solve the problems existing in the traditional way of water supply, enhanced the reliability of the system.Key words: Flow control PLC King view PID control1.课题要求(1).总体控制要求:可以设计一流量PID控制系统,通过西门子PLC的DA输出,控制变频器频率,可使流量处于一个稳定状态。
基于组态王6.5的串级PID液位控制系统设计(双容水箱)
本科毕业论文(设计)题目:基于组态王6.5的串级PID液位控制系统设计学院:自动化工程学院专业:自动化姓名: ### 指导教师: ###2011年 6 月 5 日Cascade level PID control system based on Kingview 6.5摘要开发经济实用的教学实验装置、开拓理论联系实际的实验容,对提高课程教学实验水平,具有重要的实际意义。
就高校学生的实验课程来讲,由于双容水箱液位控制系统本身具有的复杂性和对实时性的高要求,使得在该系统上实现基于不同控制策略的实验容,需要全面掌握自动控制理论及相关知识。
本文通过对当前国外液位控制系统现状的研究,选取了PID控制、串级PID控制等策略对实验系统进行实时控制;通过对实验系统结构的研究,建立了单容水箱和双容水箱实验系统的数学模型,并对系统的参数进行了辨识;利用工业控制软件组态王6.5,并可通用于ADAM模块及板卡等的实现方案,通过多种控制模块在该实验装置上实验实现,验证了实验系统具有良好的扩展性和开放性。
关键词:双容水箱液位控制系统串级PID控制算法组态王6.5 智能调节仪AbstractIt is significant to develop applied experiment device and experiment content which combines theory and practice to improve experimental level of teaching. Based on the current situation of domestic and international level control system, selected the PID control, cascade PID control strategies such asreal-time control of experiment system.Through the study of the structure of experimental system, a single let water tank and double let water tank experiment system mathematical model was founded, and the parameters of the system is identified.Industrial control software configuration king 6.5 is used in experiment, ADAM module and boards, etc can also be suitable for this experiment, through a variety of control module on the device in the experiment verified experimental realization, experimental system has good expansibility and openness.Key Word Double let water tank liquid level control system Cascade PID control algorithm Configuration king 6.5 Intelligent adjusting instrument目录前言 (1)第一章串级液位控制系统介绍 (2)1.1 国外研究现状 (2)1.1.1液位控制系统的发展现状 (2)1.1.2液位控制系统算法的研究现状 (2)1.2 PID控制算法的介绍 (3)1.2.1 PID控制算法的历史 (3)1.2.2 PID控制各环节作用 (4)1.3 串级控制系统介绍 (4)1.4 本文的主要工作 (4)第二章水箱液位控制系统的建模 (6)2.1 水箱液位控制系统的构成 (6)2.2 水箱的建模过程 (7)2.2.1 单容水箱的建模过程 (7)2.2.2 二阶双容水箱的对象特性 (8)2.3水箱液位控制参数辨识方法 (11)2.3.1 单容上水箱的参数辨识 (11)2.3.2 二阶双容水箱的下水箱对象参数辨识 (12)2.4 水箱液位PID参数整定方法 (14)2.4.1上水箱液位的PID整定 (14)2.4.2 主回路和副回路的PID参数整定 (15)第三章组态王6.5简介与操作界面的设计 (17)3.1 组态王6.5简介 (17)3.2基于组态王6.5的液位控制系统上位机部分设计 (18)3.2.1 建立新工程 (18)3.2.2定义外部设备 (19)3.2.3动画设计 (21)3.2.3 组态王6.5的控件中选择历史曲线绘制 (23)第四章设计实验 (24)4.1 设备的连接和检查 (24)4.2 系统连线 (24)4.3 实验步骤 (25)第五章总结与展望 (30)辞 (31)参考文献 (32)前言随着现代科学技术的迅猛发展,工业生产的规模越来越大,结构也越来越复杂,从而使控制对象、控制器以及控制任务和目的日益复杂,而对系统的精度、响应速度和稳定性的要求却越来越高。
组态王串级水箱仿真傻瓜教程
组态王串级PID水箱仿真该教程用串级PID算法实现对水箱液位的控制。
一、建立数据变量打开组态王6.55,新建一个工程,将其命名为“串级PID”。
打开工程,根据所需用到的数据类型、数据范围大小、初始值等建立数据变量(详细数据变量见附件1)。
二、搭建仿真画面根据实际器件,开关,阀门,曲线图,数据查看等需要,建立仿真画面(详细步骤见附件2)。
三、将画面动画连接到变量根据仿真时画面的动画要求,设置画面属性和各个器件、曲线图等的动画连接(详见附件2)。
四、编写运行程序打开工程浏览器,文件-命令语言-应用程序命令语言,双击打开程序编辑窗口,输入程序(详见附件3)。
五、调节PID参数运行系统。
分别调节两种PID算法的PID参数,实现对液位的控制。
1、第一种PID算法UK0=(KP+KP/KI+KP*KD)*EK0-(KP+2*KP*KD)*EK1+(KP*KD)*EK2+UK1 2、第二种PID算法UK0=KP*EK0+KI*SUM_EK0+KD*(EK0-EK1)/dt+UK1附件1:数据变量模拟量部分:变量名变量类型最大值最小值描述HM 内存实数100 0 水箱目标液位HS 内存实数100 0 水箱实际液位HC 内存实数120 0 储水池液位W 内存实数100 0 调节阀开度LM 内存实数200 0 目标流量LS 内存实数200 0 实际流量PS 内存实数120 80 水压波动比率G1 内存实数10 0 水管1流量G2 内存实数10 0 水管2流量开关量部分:变量名变量类型初始值描述V 内存离散0 水泵开关V1 内存离散0 阀门1开关V2 内存离散0 阀门2开关P 内存离散0 PID控制开关K 内存离散0 水压波动开关查看量部分:变量名变量类型初始值描述S 内存离散0 查看水箱有无水C 内存离散0 查看储水池有无水T 内存离散0 查看调节阀有无开PID计算部分:变量名变量类型最大值最小值描述EKH0 内存实数1000 -1000 本次液位偏差EKH1 内存实数1000 -1000 上次液位偏差EKH2 内存实数1000 -1000 上上次液位偏差SUM_EKH 内存实数10000 -10000 液位偏差积分UKH0 内存实数10000 -10000 本次液位PID结果UKH1 内存实数10000 -10000 上次液位PID结果KP1 内存实数1000 0 比例参数1KI1 内存实数1000 0 积分参数1KD1 内存实数1000 0 微分参数1EKL0 内存实数1000 -1000 本次流量偏差EKL1 内存实数1000 -1000 上次流量偏差EKL2 内存实数1000 -1000 上上次流量偏差SUM_EKL 内存实数10000 -10000 流量偏差积分UKL0 内存实数10000 -10000 本次流量PID结果UKL1 内存实数10000 -10000 上次流量PID结果KP2 内存实数1000 0 比例参数2KI2 内存实数1000 0 积分参数2KD2 内存实数1000 0 微分参数2TI 内存实数1000 0 时间计数器附录2:按照上图中各器件位置和下面所列各器件图像来源,动画连接、变量参数设置等搭建仿真画面。
组态王锅炉温度控制系统控制规律
组态王锅炉温度控制系统控制规律引言组态王锅炉温度控制系统是一种用于控制锅炉温度的自动化系统。
它采用先进的组态软件和硬件设备,通过监测和调节锅炉的温度,实现对锅炉运行过程的精确控制。
本文将详细介绍组态王锅炉温度控制系统的控制规律。
1. 组态王锅炉温度控制系统简介组态王锅炉温度控制系统是一套基于PLC(可编程逻辑控制器)和人机界面(HMI)的数字化控制系统。
它具有以下几个特点:•高度自动化:组态王锅炉温度控制系统可以自动监测锅炉的温度变化,并根据设定的控制规律自动调节锅炉的工作参数,实现精确控制。
•可视化界面:通过人机界面,用户可以直观地了解锅炉的工作状态和温度变化情况,并可以对系统进行操作和调整。
•高效稳定:组态王锅炉温度控制系统采用先进的控制算法和优化策略,能够快速、准确地响应温度变化,保持锅炉的稳定运行。
2. 组态王锅炉温度控制系统的控制规律组态王锅炉温度控制系统的控制规律是根据锅炉运行过程中的温度变化情况来确定的。
其主要包括以下几个方面:2.1 温度监测组态王锅炉温度控制系统通过传感器对锅炉的温度进行实时监测。
传感器将锅炉的温度信号转换为电信号,并传输给PLC进行处理。
2.2 温度设定组态王锅炉温度控制系统需要设置合适的温度设定值。
根据锅炉的工作要求和环境条件,用户可以通过人机界面来设定锅炉的目标温度。
2.3 温度控制组态王锅炉温度控制系统根据实际温度和设定温度之间的差异,通过对锅炉的工作参数进行调节,来控制锅炉的温度。
2.4 控制算法组态王锅炉温度控制系统采用了一种先进的控制算法,通常使用PID控制算法。
PID控制算法通过不断对锅炉的工作参数进行调整,来使实际温度逐渐接近设定温度。
•比例控制(P):根据实际温度与设定温度之间的差异,调节锅炉的输出功率。
•积分控制(I):根据温度误差的累积值,调节锅炉的输出功率,以减小稳态误差。
•微分控制(D):根据温度变化的速率,调节锅炉的输出功率,以减小温度波动。
组态王锅炉温度控制系统控制规律
组态王锅炉温度控制系统控制规律组态王锅炉温度控制系统是一种用于监控和控制锅炉温度的自动化系统。
该系统采用了组态王软件作为主要控制工具,并通过传感器、执行器和控制器等设备实现对锅炉温度的精确控制。
以下将详细介绍组态王锅炉温度控制系统的工作原理、控制规律以及其在实际应用中的优势。
一、工作原理1. 传感器:组态王锅炉温度控制系统中使用的传感器通常包括温度传感器和压力传感器。
温度传感器负责测量锅炉内部的温度,而压力传感器则用于监测锅炉内部的压力情况。
2. 控制器:组态王软件通过与PLC(可编程逻辑控制器)或DCS(分布式控制系统)等硬件设备连接,实现对锅炉温度的监测和调节。
通过与传感器交互,控制器可以获取到准确的温度和压力数据,并根据预设的设定值进行比较和调整。
3. 执行器:根据控制信号,执行器负责调节锅炉内部的温度。
常见的执行器包括电动阀门、调节阀等,通过控制执行器的开关状态和开度,可以实现对锅炉温度的精确控制。
二、控制规律组态王锅炉温度控制系统采用了PID控制算法,即比例-积分-微分控制算法。
PID控制器通过比较实际温度与设定温度之间的差异,并根据差异大小和变化趋势来调整执行器的开关状态和开度,以实现对锅炉温度的精确控制。
1. 比例(Proportional):比例项根据实际温度与设定温度之间的差异进行调整。
当实际温度偏离设定值越大时,比例项提供的修正量也越大。
2. 积分(Integral):积分项根据实际温度与设定温度之间的累积误差进行调整。
当实际温度持续偏离设定值时,积分项提供的修正量会逐步增加,以减小累积误差。
3. 微分(Derivative):微分项根据实际温度与设定温度之间的变化趋势进行调整。
当实际温度的变化速率较快时,微分项提供的修正量会增加,以快速响应温度变化。
PID控制器根据比例、积分和微分三个项的加权和来计算最终的控制量,并通过控制执行器来实现对锅炉温度的调节。
三、优势组态王锅炉温度控制系统具有以下优势:1. 精确性:PID控制算法能够根据实际温度与设定温度之间的差异进行精确调节,从而实现对锅炉温度的精确控制。
组态王Pid控件使用方法
图1 控件画面3.设置动画连接:双击控件或选择右键菜单中动画连接,在弹出的属性页中设置控件名称等信息。
(1)常规:图2 动画连接属性—常规设置控件名称:应符合组态王中关于名称定义的规定,例如:PIDCtrl0。
优先级:是控件的操作优先级,围在1~999。
安全区:安全区只允许选择。
(2)属性类型关联对象:图3动画连接属性—属性SP:FLOAT,控制器的设定值。
PV:FLOAT,控制器的反馈值。
YOUT:FLOAT,控制器的输出值。
Type:LONG,PID的类型。
CtrlPeriod:LONG,控制周期。
FeedbackFilter:BOOL,反馈加入滤波。
FillterTime:LONG,滤波时间常数。
CtrlLimitHigh:FLOAT,控制量高限。
CtrlLimitLow:FLOAT,控制量低限。
InputHigh:FLOAT,设定值SP的高限。
InputLow:FLOAT,设定值SP的低限。
OutputHigh:FLOAT,反馈值PV的高限。
OutputLow:FLOAT,反馈值PV的低限。
Kp:FLOAT,比例系数。
Ti:LONG,积分时间常数。
Td:LONG,微分时间常数。
Tf:LONG,滤波时间常数。
ReverseEffect:BOOL,反向作用。
IncrementOutput:BOOL,是否增量型输出。
DeadBandLow:Long,无效。
Status:BOOL,手自动状态。
M:FLOAT,手动设定值。
PercentRange:float,手动时调节的调节幅度,默认是1,(可以在运行时,点击参数按钮在手动调节比率里面调节此参数)。
新增功能。
注意:在使用变量关联时,只有控件所处的画面处于激活状态,控制功能才会执行。
(3)命令语言中的使用A、在使用变量关联时:此时,只有控件所处的画面处于激活状态,控制功能才会执行,如果工程中存在多个画面,并且PID控件画面并不总是处于激活状态,则应该采用命令语言的方式使用PID控件。
组态王pid控制及程序
综合以上几种改进的PID控制算法,根据温度控制的实际情况,编写以下程序可根据实际情况,改变L、H、K的值,实现简单PID算法、积分分离的PID 算法和带死区的PID算法。
也可以根据实际情况结合三种算法,实现最优控制。
程序框图如图6.18在组态王大纲下,点击“命令语言”—“应用程序命令语言”在其窗口下编写如下程序。
应用程序命令语言如图7.19。
图7.19源程序为:if(\\本站点\自动开关==0){\\本站点\ek0=\\本站点\sv-\\本站点\温度1;if(abs(\\本站点\ek0)<\\本站点\L||\\本站点\ek0<0){\\本站点\I=1/\\本站点\TI;}else {\\本站点\I=0;}\\本站点\A=\\本站点\Pk*(1+\\本站点\I+\\本站点\TD);\\本站点\B=\\本站点\Pk*(1+2*\\本站点\TD);\\本站点\C=\\本站点\Pk*\\本站点\TD;\\本站点\uk=\\本站点\A*\\本站点\ek0-\\本站点\B*\\本站点\ek01+\\本站点\C*\\本站点\ek02+\\本站点\uk01;\\本站点\uk01=\\本站点\uk;\\本站点\ek02=\\本站点\ek01;\\本站点\ek01=\\本站点\ek0;if(\\本站点\uk<1000){if(\\本站点\uk>0){if(abs(\\本站点\ek0)<\\本站点\H){\\本站点\uk1=\\本站点\K*\\本站点\uk;}else {\\本站点\uk1=\\本站点\uk;}}else {\\本站点\uk1=0;}}else {\\本站点\uk1=1000;}}。
组态王Pid控件使用办法
5.运行状态下可设置PID参数和手动自动切换。
二、使用说明:1.在画面中插入控件:组态王画面菜单中编辑\插入通用控件,或在工具箱中单击“插入通用控件”按钮,在弹出的对话框中选择“KingviewPidControl”,单击确定。
2.按下鼠标左键,并拖动,在画面上绘制出表格区域。
图3动画连接属性—属性
SP:FLOAT,控制器的设定值。
PV:FLOAT,控制器的反馈值。
YOUT:FLOAT,控制器的输出值。
Type:LONG,PID的类型。
CtrlPeriod:LONG,控制周期。
FeedbackFilter:BOOL,反馈加入滤波。
FillterTime:LONG,滤波时间常数。
图4控件属性和方法
在属性或方法中选择相应的选项,在存在时出现命令语言,如我们选择SP双击,则如下显示:
图5画面命令语言
显示时:当画面由隐含变为显示时,则“显示时”编辑框中的命令语言就被执行一次。
存在时:只要该画面存在,则“存在时”编辑框中的命令语言就反复按照设定的时间周期执行。
隐含时:当画面由显示变为隐含或关闭时,则“隐含时”编辑框中的命令语言就被执行一次。
CtrlLimitHigh:FLOAT,控制量高限。
CtrlLimitLow:FLOAT,控制量低限。
InputHigh:FLOAT,设定值SP的高限。
InputLow:FLOAT,设定值SP的低限。
OutputHigh:FLOAT,反馈值PV的高限。
OutputLow:FLOAT,反馈值PV的低限。
(2)设定/反馈变量范围:
图10设定/反馈变量范围
输入变量:设定值sp或者反馈值pv对应的最大值(100%)和最小值(0%)的实际值。??????????????
基于组态王的供水管道压力的PID控制
摘 要 : 主 要 介 绍 了 利 用 组 态 王 实 现 对 独 立 小 规 模 供 水 系 统 中供 水 管 道 压 力 的 控 制 . 制 采 用 计 算 机 ( 态 王 ) 控 组 + 变 频 器 + 水 泵 的 方 式 , 用 组 态 王 软 件 不 但 完 成 了 算 法 编 利 写 , 现 了 良 好 的 恒 压 供 水 控 制 , 且 生 成 了 可 视 化 操 作 界 实 而
VD
一
示 的是从上 位机监 控看 到的被控参 数历 史数撕 的运
行 画 面 . 图 中可 以 看 出 , 力 运 行 平 稳 . 调 量 为 从 压 超 0 , 节 时 间 只 有 5 调 OS左 右 .
P D控制算 法 的流 程如 图 2昕示 I
| H 一
图 3 压 力 参 数运 行 界 面
文 章 编 号 :0 6 3 6 ( 0 0 0 —0 5 —0 1 0 — 2 92 1 )1 0 8 2
ห้องสมุดไป่ตู้
基 于组态 王的供 水 管 道 压 力 的 P D控制 I
路 成 钢 ,王 燕
( . 州大 学 物 理 工 程 学 院 , 南 郑 州 4 0 0 ; .中原 工 学 院 , 南 郑 州 4 0 0 ) 1郑 河 501 2 河 5 0 7
・
5 ・ 8
《 组 技术 与 生产 现 代 化 》2 1 第 2 成 0 0年 7卷 第 1 期
K
一
上
l
在组态 王 的应 用程序命 令语 言 中编 写 以上控制
算 法 , 统 经 过 参 数 整 定 和 调 试 后 运 行 止 常 , 3所 系 图
丁~ 丁 _ 』
丁一 丁
实验三 基于组态王的液位PID控制实验(水泵控制)(RTU通讯)PPT(手动)
计算机控制技术自动化学院黄国辉Email : hgh817@Tel: 86919133QQ: 511372733实验三基于组态王的液位PID 控制实验(水泵控制)第一步创建工程路径新建的工程(项目)第二步创建新画面双击双击快捷键F2能打开图库管理器找到左侧反应器一栏双击同理找出水泵和阀门选择管道从水泵出水口开始按水流方向画线,双击结束选择水箱选择图素前移选择矩形画图,在画面上画出矩形用作水槽选择填充选择过度色类型并选择图素前移,使水槽覆盖水管显示画刷类型增加水箱过度色选择管道属性可改变管道属性,流动效果属性,来设置不同的管道及流动效果。
更改所有管道属性,并移动水泵等位置,和水管位置相匹配。
可更改文字颜色插入文本注意:文字和后面的“####”分两次输入!!!选择按钮选择字符串替换,可更改按钮上的字在工具箱中选择“实时趋势曲线”,放置在合适位置。
保存!第三步配置设备组态王可以与一系列I/O设备进行通讯,支持的I/O设备包括:可编程控制器(PLC)、智能模块、板卡、智能仪表等等。
组态王与I/O设备之间的数据交换采用以下五种方式:串行通讯方式、板卡方式、网络模块、人机接口卡方式、DDE方式。
在本实验中选取ModbusRTU(unpack)通过串口方式进行数据交互。
组态王和单片机进行数据交互有严格的数据格式。
双击点击下拉,找到莫迪康选择COM口1代表下位机设备地址,地址范围为1-255。
添加设备成功ModbusRTU(unpack)协议格式:举例说明举例说明组态王莫迪康系列产品的Modbus RTU驱动帮助)ModBus功能码与组态寄存器对应关系此表为操作相关寄存器对应的功能码表格(主要用到了寄存器4相应的功能码为03,06。
)例如:功能码03,对寄存器4进行读操作,寄存器地址为4xxx功能码06,对寄存器4进行写操作,寄存器地址为4xxx地址为40101:使用寄存器名称为4,dd 为地址通道范围,0101为水泵1实际地址100加上1后的值,因为组态地址通道是从1开始的,没有00地址。
组态王PID控制控件使用方法
图1 控件画面3.设置动画连接:双击控件或选择右键菜单中动画连接,在弹出的属性页中设置控件名称等信息。
(1)常规:图2 动画连接属性—常规设置控件名称:应符合组态王中关于名称定义的规定,例如:PIDCtrl0。
优先级:是控件的操作优先级,范围在1~999。
安全区:安全区只允许选择。
(2)属性类型关联对象:图3动画连接属性—属性SP:FLOAT,控制器的设定值。
PV:FLOAT,控制器的反馈值。
YOUT:FLOAT,控制器的输出值。
Type:LONG,PID的类型。
CtrlPeriod:LONG,控制周期。
FeedbackFilter:BOOL,反馈加入滤波。
FillterTime:LONG,滤波时间常数。
CtrlLimitHigh:FLOAT,控制量高限。
CtrlLimitLow:FLOAT,控制量低限。
InputHigh:FLOAT,设定值SP的高限。
InputLow:FLOAT,设定值SP的低限。
OutputHigh:FLOAT,反馈值PV的高限。
OutputLow:FLOAT,反馈值PV的低限。
Kp:FLOAT,比例系数。
Ti:LONG,积分时间常数。
Td:LONG,微分时间常数。
Tf:LONG,滤波时间常数。
ReverseEffect:BOOL,反向作用。
IncrementOutput:BOOL,是否增量型输出。
DeadBandLow:Long,无效。
Status:BOOL,手自动状态。
M:FLOAT,手动设定值。
PercentRange:float,手动时调节的调节幅度,默认是1,(可以在运行时,点击参数按钮在手动调节比率里面调节此参数)。
新增功能。
注意:在使用变量关联时,只有控件所处的画面处于激活状态,控制功能才会执行。
(3)命令语言中的使用A、在使用变量关联时:此时,只有控件所处的画面处于激活状态,控制功能才会执行,如果工程中存在多个画面,并且PID控件画面并不总是处于激活状态,则应该采用命令语言的方式使用PID控件。
基于PLC和组态王的液位PID控制系统方案
目录1 《控制系统集成实训》任务书 (2)2 总体设计方案 (4)2.1 系统组成 (4)2.2 水箱液位控制系统构成 (4)2.3 水箱液位控制系统工作原理 (5)2.4 仪表选型 (6)2.4.1 GK-01电源控制屏 (6)2.4.2 GK-02传感器输出与显示 (7)2.4.3 GK-03单片机控制 (7)2.4.4 GK-07交流变频调速 (8)2.4.4 GK-08 PLC可编程控制 (8)2.5 PLC设计流程图 (9)3 外部接线图 (10)4 I/0分配 (10)5 梯形图 (11)6 组态王界面 (15)6.1 主界面 (16)6.2 数据词典 (16)6.3 曲线监控 (17)6.4 水流动画程序 (18)7 调试和运行结果 (19)7.1 比例控制 (19)7.2 比例积分调节 (20)心得体会 (23)参考文献 (24)1.《控制系统集成实训》任务书题目:基于PLC和组态王的液位PID控制系统一、实训任务本课题要求设计液位PID控制系统,它的任务是使水箱液位等于给定值所要求的高度,并通过PID控制减小或消除来自系统部或外部扰动的影响。
1.实训模块:1、THKGK-1过程控制实验装置GK-02、GK-07、GK-08。
2、计算机及STEP7运行环境(安装好演示程序)、MPI电缆线,组态王软件。
2.控制原理和控制要求:控制原理如图所示,测量值信号由S7-200PLC的AI通道进入,经程序比较测量值与设定值的偏差,然后通过对偏差的P或PI或PID调节得到控制信号(即输出值),并通过S7-200PLC 的AO通道输出。
用此控制信号控制变频器的频率,以控制交流电机的转速,从而达到控制水位的目的。
S7-200PLC和上位机进行通讯,并利用上位机组态王软件实现给定值和PID参数的设置、手动/自动无扰动切换、实时过程曲线的绘制等功能。
二、实训目的通过本次实训使学生掌握:1)实际控制方案的设计;2)编程软件的使用方法和梯形图语言的运用;2)程序的设计及实现方法;3)程序的调试和运行操作技术。
基于PLC和组态王的液位PID控制系统讲解
报告用纸目录1 《控制系统集成实训》任务书 (2)2 总体设计方案 (4)2.1 系统组成 (4)2.2 水箱液位控制系统构成 (4)2.3 水箱液位控制系统工作原理 (5)2.4 仪表选型 (6)2.4.1 GK-01电源控制屏 (6)2.4.2 GK-02传感器输出与显示 (7)2.4.3 GK-03单片机控制 (7)2.4.4 GK-07交流变频调速 (8)2.4.4 GK-08 PLC可编程控制 (8)2.5 PLC设计流程图 (9)3 外部接线图 (10)4 I/0分配 (10)5 梯形图 (11)6 组态王界面 (15)6.1 主界面 (16)6.2 数据词典 (16)6.3 曲线监控 (17)6.4 水流动画程序 (18)7 调试和运行结果 (19)7.1 比例控制 (19)7.2 比例积分调节 (19)心得体会 (21)参考文献 (22)1页第报告用纸1.《控制系统集成实训》任务书题目:基于PLC和组态王的液位PID控制系统一、实训任务本课题要求设计液位PID控制系统,它的任务是使水箱液位等于给定值所要求的高度,并通过PID 控制减小或消除来自系统内部或外部扰动的影响。
1.实训模块:1、THKGK-1过程控制实验装置GK-02、GK-07、GK-08。
2、计算机及STEP7运行环境(安装好演示程序)、MPI电缆线,组态王软件。
2.控制原理和控制要求:控制原理如图所示,测量值信号由S7-200PLC的AI通道进入,经程序比较测量值与设定值的偏差,然后通过对偏差的P或PI或PID调节得到控制信号(即输出值),并通过S7-200PLC的AO 通道输出。
用此控制信号控制变频器的频率,以控制交流电机的转速,从而达到控制水位的目的。
S7-200PLC和上位机进行通讯,并利用上位机组态王软件实现给定值和PID参数的设置、手动/自动无扰动切换、实时过程曲线的绘制等功能。
二、实训目的通过本次实训使学生掌握:1)实际控制方案的设计;2)编程软件的使用方法和梯形图语言的运用;2)程序的设计及实现方法;3)程序的调试和运行操作技术。
基于PLC和组态王的液位PID控制系统
目录1 《控制系统集成实训》任务书 (2)2 总体设计方案 (4)2.1 系统组成 (4)2.2 水箱液位控制系统构成 (4)2.3 水箱液位控制系统工作原理 (5)2.4 仪表选型 (6)2.4.1 GK-01电源控制屏 (6)2.4.2 GK-02传感器输出与显示 (7)2.4.3 GK-03单片机控制 (7)2.4.4 GK-07交流变频调速 (8)2.4.4 GK-08 PLC可编程控制 (8)2.5 PLC设计流程图 (9)3 外部接线图 (10)4 I/0分配 (10)5 梯形图 (11)6 组态王界面 (15)6.1 主界面 (16)6.2 数据词典 (16)6.3 曲线监控 (17)6.4 水流动画程序 (18)7 调试和运行结果 (19)7.1 比例控制 (19)7.2 比例积分调节 (19)心得体会 (21)参考文献 (22)1.《控制系统集成实训》任务书题目:基于PLC和组态王的液位PID控制系统一、实训任务本课题要求设计液位PID控制系统,它的任务是使水箱液位等于给定值所要求的高度,并通过PID控制减小或消除来自系统内部或外部扰动的影响。
1.实训模块:1、THKGK-1过程控制实验装置GK-02、GK-07、GK-08。
2、计算机及STEP7运行环境(安装好演示程序)、MPI电缆线,组态王软件。
2.控制原理和控制要求:控制原理如图所示,测量值信号由S7-200PLC的AI通道进入,经程序比较测量值与设定值的偏差,然后通过对偏差的P或PI或PID调节得到控制信号(即输出值),并通过S7-200PLC 的AO通道输出。
用此控制信号控制变频器的频率,以控制交流电机的转速,从而达到控制水位的目的。
S7-200PLC和上位机进行通讯,并利用上位机组态王软件实现给定值和PID参数的设置、手动/自动无扰动切换、实时过程曲线的绘制等功能。
二、实训目的通过本次实训使学生掌握:1)实际控制方案的设计;2)编程软件的使用方法和梯形图语言的运用;2)程序的设计及实现方法;3)程序的调试和运行操作技术。
组态软件MCGS的PID程序
组态软件MCGS的PID程序'* asng1DataValue(0) = PV'* asng1DataValue(1) = SV'* asng1DataValue(2) = OP'* asng1DataValue(3) = P'* asng1DataValue(4) = I'* asng1DataValue(5) = D' sng1ParP = 250 '* 比例系数P' sng1ParI = 50 '* 积分系数I' sng1ParD = 5 '* 微分系数D' sng1PvMin = 0 '* PV 值下限' sng1PvMax = 300 '* PV 值上限' sng1SvMin = 0 '* SV 值下限' sng1SvMax = 300 '* SV 值上限' sng1OpMin = 0 '* OP 值下限' sng1OpMax = 100 '* OP 值上限' sng1ChangeMin = 1 '* 死区范围' sng1ChangeMax = 10 '* 调节范围' sng1OutPutMax = 80 '* 超调时输出' sng1CtlDirection = 1 '* 调节方向' sng1ControlT = 100 '* PID的调控周期,和设备的采集周期相同' Dim sng1PVRange '* PV值的量程' Dim sng1Outdx '* PID计算出的输出增加值'' '* 确保控制周期不为0If sng1ControlT = 0 Then sng1ControlT = 1' '* 计算PV值的量程,并确保其不为0sng1PVRange = sng1PvMax - sng1PvMinIf sng1PVRange <= 0 Then sng1PVRange = 1' '* 把超调值由百分比转换成实际物理量' sng1ChangeMax = sng1PVRange * sng1ChangeMax / 100 '*======================================================================================' '* PV值和SV值必须在设定的限值范围之内If sng1Pv < sng1PvMin Then sng1Pv = sng1PvMinIf sng1Pv > sng1PvMax Then sng1Pv = sng1PvMaxIf sng1Sv < sng1SvMin Then sng1Sv = sng1SvMinIf sng1Sv > sng1SvMax Then sng1Sv = sng1SvMax' * ========================================= ========================================================' * 计算SV和PV值的差值,第一次计算时,取m_sng1SvPvdx1、m_sng1SvPvdx2值和m_sng1SvPvdx相同' m_sng1SvPvdx '* 本次调控时SV和PV值的差值' m_sng1SvPvdx1 '* 上次调控时SV和PV值的差值' m_sng1SvPvdx2 '* 调控过程中SV和PV值的差值的累计和m_sng1SvPvdx = sng1Sv - sng1Pvm_sng1SvPvdx2 = m_sng1SvPvdx2+m_sng1SvPvdxm_sng1SvPvdx1 = m_sng1SvPvdx'设定m_sng1SvPvdx1的初值为111111;标记是否第一次进行PID计算,防止m_sng1SvPvdx 和1m_sng1SvPvdx2的值为0 If m_sng1SvPvdx1 = 111111 Thenm_sng1SvPvdx1 = m_sng1SvPvdxm_sng1SvPvdx2 = m_sng1SvPvdxEndIf'* 进行PID运算,sng1ParI=0 和sng1ParI<>0的算法不一样'sng1ControlT :调节周期,和设备的采集周期相同(单位为:秒)If sng1ParI <> 0 Thensng1Outdx = sng1ParP * (m_sng1SvPvdx - m_sng1SvPvdx1 + m_sng1SvPvdx * sng1ControlT / sng1ParI + (m_sng1SvPvdx - 2 * m_sng1SvPvdx1 + m_sng1SvPvdx2) * sng1ParD / sng1ControlT) Elsesng1Outdx = sng1ParP * (m_sng1SvPvdx - m_sng1SvPvdx1 + (m_sng1SvPvdx - 2 * m_sng1SvPvdx1 + m_sng1SvPvdx2) * sng1ParD / sng1ControlT)EndIf'* 处在死区范围,输出值保持不变If !Abs(m_sng1SvPvdx) < !Abs(sng1ChangeMin) Then sng1Outdx = 0'* 当PID控制的调节方向方向不一样时,输出值的处理方法不一致If sng1CtlDirection = 1 Thensng1OP = sng1OP + sng1Outdx'* 正向控制时的超调处理If !Abs(m_sng1SvPvdx) >= sng1ChangeMax And sng1ChangeMax > 0 Then If m_sng1SvPvdx > 0 Then sng1OP = sng1OutPutMaxEndIfElsesng1OP = sng1OP - sng1Outdx'* 反向控制时的超调处理If !Abs(m_sng1SvPvdx) >= sng1ChangeMax And sng1ChangeMax > 0 Then If m_sng1SvPvdx < 0 Then sng1OP = sng1OutPutMaxEndIfEndIf'* OP值必须在设定的限值范围之内If sng1OP < sng1OpMin Then sng1OP = sng1OpMin If sng1OP > sng1OpMax Then sng1OP = sng1OpMax !SaveDataInit()!SaveSingleDataInit(sng1ParP)!SaveSingleDataInit(sng1ParI)!SaveSingleDataInit(sng1ParD)!SaveData(sng1OP )。
组态王PID控件
上位机为控制系统,在组态软件中使用PID控件:在工具箱中找到“插入通用控件”,在控件列表中选择“Kingview Pid Control”,单击“确定”,这时画面上鼠标就变成一个小十字,可以在任何位置点中鼠标左键,并拖动鼠标,确定控件的大小。
(1)控件属性设置:选中控件,并单击右键选中“控件属性”,弹出控件属性对话框。
其中各参数设置分别如下:
总体属性:控制周期默认1000ms;反馈滤波
根据需要自行设定;输出限幅根据输出模块的范
围设定。
图20 总体属性设置
设定/反馈变量范围:根据输入输出信号的范围设
定,无特殊要求时我们采用4~20mA电流信号,
设置如图21所
图
21 设定/反馈变量范围
参数选择:此处的参数选择是对控件的初始
化,需要注意的是“反向作用”前打钩,控件为
作用;反之控件为反作用。
图22 参数选择设置
(2)关联变量:双击画面中的PID控件,再弹出
的“动画连接属性”对话框中,对控件的动画效果进行连接。
常规与事件两项,如果无特殊要求可采用默认值。
属性:双击需要关联的变量,在弹出的变量选
择对话框中,选择变量。
如图23所示。
图23 控件属性
(3 )控件上的为手自动切换按钮,当
进入运行状态时,控件默认为自动状态;
为控件“PID参数设置”按钮,同样当进入运
行状态时,控件按初始化时的设置运行。
注意:这两个按钮只有在运行状态下才起作用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
综合以上几种改进的PID控制算法,根据温度控制的实际情况,编写以下程序可根据实际情况,改变L、H、K的值,实现简单PID算法、积分分离的PID 算法和带死区的PID算法。
也可以根据实际情况结合三种算法,实现最优控制。
程序框图如图6.18
在组态王大纲下,点击“命令语言”—“应用程序命令语言”在其窗口下编写如下程序。
应用程序命令语言如图7.19。
图7.19
源程序为:
if(\\本站点\自动开关==0)
{
\\本站点\ek0=\\本站点\sv-\\本站点\温度1;
if(abs(\\本站点\ek0)<\\本站点\L||\\本站点\ek0<0)
{
\\本站点\I=1/\\本站点\TI;
}
else {
\\本站点\I=0;
}
\\本站点\A=\\本站点\Pk*(1+\\本站点\I+\\本站点\TD);
\\本站点\B=\\本站点\Pk*(1+2*\\本站点\TD);
\\本站点\C=\\本站点\Pk*\\本站点\TD;
\\本站点\uk=\\本站点\A*\\本站点\ek0-\\本站点\B*\\本站点\ek01+\\本站点\C*\\本站点\ek02+\\本站点\uk01;
\\本站点\uk01=\\本站点\uk;
\\本站点\ek02=\\本站点\ek01;
\\本站点\ek01=\\本站点\ek0;
if(\\本站点\uk<1000)
{
if(\\本站点\uk>0)
{
if(abs(\\本站点\ek0)<\\本站点\H)
{\\本站点\uk1=\\本站点\K*\\本站点\uk;}
else {\\本站点\uk1=\\本站点\uk;}
}
else {\\本站点\uk1=0;}
}
else {\\本站点\uk1=1000;}
}。