粉丝376获赞5011


大家好,嗯,这段时间呢,我们花了若干的篇幅讲了这个模拟量的问题,包括模拟量的标准化处理, 以及模拟量输出是怎么处理的,这些都都有涉及到。既然讲到了模拟量了吗?那,呃,顺其自然呢,我们要就要把那个 p id 控制相关的一些功能块,我们来也做一下简单的介绍,主要是介绍啊库中的几个 p id 的 他的功能块,逻辑块。库中我们的标准库里面有 p id, ctublux, 总共给我们提供了五个 fb 块,这些都是与 p id 调节有关系的一些逻辑块。关于 p id 调节的内容呢,我记得 之前也有讲到过,但是偏低参数怎么调节呢?说实话我也不是特别再好,因为涉及到这方面的东西经验比较少,没有机会调试。 那么这段时间呢,我们就不讲他的 p id 参数调节了,我们就来从编程的角度来看一下这几个逻辑块他是怎么通过编程来实现的。今天我们先看一下 fb 四十一。 fb 四十一,他是所谓的连续控制的逻辑块,先不管他他的原理是什么,我们先 调用他一下,新建一个成一段,我们把它拉进来看一下这个,这个螺一块有这么老长,由于由于他是 fb 吗? 我必说一,需要给他观念一个背景数据块 bb 二零幺,随便二零幺。观念了背景数据块之后,接下来就是呃, 要给他这些相关的拐角,给他设置合适的纸,但这不是我们呃,这这一系列视频他的重点,我们重点是从编程的角度看一下这个块他是怎么实现的。首先我们看他的帮助文件里面 给了我们这个块他的原理框图,呃,这个原理框图呢?我们简单的捋一下他的逻辑,首先这是 sp 这个银内线吧,他这里这肯定是,这就是给定制的,他的给定制, 然后 pv 音以及这一路,这就是反馈纸,工工程量的反馈纸。这里有个选铜器吗?通过这个 pvpr 这个 信号进行选通。他等于零的时候,啊,这实际值就走这一路吗?过来,他等于一的时候就是走下面这一路过来,不管他等于零还等于一,他们,呃, 在这里就进行一个,呃,啊,给定值减去实际值,产生一个控制量, 哦,应该不叫控制量,应该叫偏差,呃,在偏差,嗯,产生控制量之前需要这个叫死去空间吗?死去空间就是当我们这个偏差,嗯,在死去空间以内的话,他就不产生 这个控制量,就认为他实际值已经呃到达给定值了,就不不调节了,当这个偏差在死去之外的话,他就 这个就是我们的偏差值吧。他就通过后面的这些逻辑来产生控制量。控制量有有三个选通期, 分别为这个 p 十来个,这是来选通 p 调节器的,他等于一的时候就是这个 p 调节器,他就选通了。同样的,这里 iclue 他就选择选通这个积分调节器。 第一次来就是选通微分调节器,一般我们我印象中常用到的要么就是只选通这个 pe 调节器,要么是选通 pi 调节器,要么是三个都选通。其没有单独 只用爱调节器,也不会单独只用微风调节器,无论选择哪一种调节方式,总之他会通,根据调节器的选择情况,嗯,然后呢,根据这个偏差值计算出一个控制量,这部分就是控制量。计算出控制量之后,然后呢,这里 这里还可以额外的加入一个扰动,叫干扰信号,这是干扰信号,控制量和干扰信号呃,共同来决定我们这个 p id 调节器输给执行机构,输出给执行机构多大的调节值, 通过他的调节作用,使我们的实际值这部分实际值趋向于给定值,这就是 p id 调节器他这个 fb 四一他的 基本逻辑。大家,这里这里这部分他含有一部分线幅和数据转化的相关的一些工作,因为我们计算出来的这个控制量,他是呃 时速计算的控制,他是时速,但是我们这个输出值他是通过模拟量输出模板输出的吗?输出值他是整形数,因此这部分内容他就是先是线幅,线幅之后将时速值通过转化转化成 整形锁。这部分应该很很熟悉的,其实和我们的前面介绍的 fc 幺零六它的相关的功能是类似的,同样的,前面这里啊工程值通过这个转化转换成 我们的实际值和给力值比较,这个这部分功能其实和我们的 fc 幺零五他是类似的,这就是 fb 四十一,他的整个的基本逻辑就是这样,我们再回头看一看,他的标用 还是这么这么大一个块,他的输入接口、输出接口都很多,其实配合我们的这个 他的原理图来看的话,他其实就很简单了。至于这个块从这边层上是怎么实现呢?我们下期视频再介绍吧,因为现在我这个落枕的脖子还没有好 编程,这种体力活实在是有心无力啊。好,今天这期视频就算做一个预告吧。好,今天的内容就分享到这里。

往前 sm 零点零啊,然后这些可以先给他藏起来啊。 这个地方是什么?测温?是不是测温的这个通道啊? aiw 三十二啊,我们测温是三十二,这个是预设的温度。 我写个 v d 零吧,我们给他起个名字啊,叫做预设是。嗯, 等一下啊,我把 a i w 三十二也删掉啊,在符号表里边。我把它这个 a i w 三十二。他本来是有有这个符号的啊,在系统符号里面吧,看在哪里啊?啊?这里是不是 aw 十六是吧,他叫 em 零输入零。这不好不好听啊,把他删掉 就是把系统自带的都给他上完啊。这个也可以给他上完,我们自己写好,上完了。好,这个地方是温度采集, 温度采集好,现在给他出来。这就正常了啊。这个地方是不是手自动转换?刚才说是不是写个 m 零点零,刚才有同学说要不直接写一看着没?是不是不让写。这是红色吗?不是,这不爆红色吗?不让写啊,你就必须写个。喂, 我们敲个 m 零点零,他就让你写。来给他备注一下啊。手自动,手自动啊, 这个地方是什么?是不是手动时候的变频器频率的百分比对不对?这个地方我们写个 vd 四啊。好,然后写个百分比。 百分比这个地方是什么? a q w 十六。对,这个地方是控制的变频器啊,模拟量输出。严格来说这个地方说模拟量输出也对啊,严格来说应该是 pid 的值。 不是经过 pid 这个公式运算了吗?嗯,他得到了一个值,这个值刚刚好是零到二七六四八之间的一个数。 这样写也行啊,你写个模拟纸也行啊,写个模拟量输出也行啊,都可以看懂了吧?我们现在给他下载进去啊,线已经接好了啊。

大家好, prd 多用于对温度、压力、流量等过程变量的闭环控制,是 plc 不可缺少的功能之一。 本小节我们就来介绍 s 七杠三百中的 prd 控制。首先我们来看一下 prd 控制的定义。 在工程实际中应用最为广泛的调节器,控制规律为比例积分微分控制,简称 prd 控制,又称 prd 调节。 prd 控制器问世至今 有近七十年历史,他以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制的主要技术之一。 当被控对象的结构和参数不能完全掌握或得不到精确的数学模型时, 控制理论的其他技术难以采用时,系统控制器的结构和参数必须依靠经验和现场调试来确定。 这时运用 prd 控制技术最为方便,即当我们不完全了解一个系统和被控对象,或不能通过有效的测量手段来获得系统参数时,最适合用 prd 控制技术。 prd 控制器就是根据系统的物 查,利用比例积分微分计算出控制量进行控制的。下面我们讲一下 prd 的具体含义。 比例控制是一种最简单的控制方式,其控制器的输出与输入误差信号成比例关系。 当仅有比例控制时,系统输出存在稳态误差。在积分控制中,控制器的输出与输入误差信号的积分呈正比关系。 对于一个自动控制系统,如果在进入稳态后存在稳态误差,则称这个控制系统是有稳态误差的,或简称有差系统。为了消除稳态误差,在控制 气中必须引入积分向。在微分控制中,控制器的输出与输入误差信号的微分成正比关系。 自动控制系统在克服误差的调节过程中可能会出现震荡甚至斯文。 解决的办法是使抑制误差的作用的变化超前。这就是说在控制器中仅引入比例向往往是不够的,而需要增加微分向,他能预测误差变化的趋势。 p、 i 和 d 三个字母体现了控制的方法,那么该方法的核心是什么呢?核心就是 prd 控制器的参数 整定,他是根据被控过程的特性确定 prd 控制器的比例系数、积分时间和微分时间的大小。 prd 控制器参数整定的方法很多,概括起来有两大类,一是理论计算整定法, 他主要是依赖系统的数学模型,经过理论计算确定控制器参数。这种方法所得到的计算数据未必可以直接使用,还必须经过工程实际进行调整和修改。 二是工程整定方法,它主要是依赖工程经验,直接在控制系统的实验中进行,且方法简单,易于掌握,在工程实际中被广泛采用。 现在我们对 prd 控制已经有所了解了,那么他是如何在 s 七杠三百中实现的呢? 利用 s 七杠三百所具有的 prd 功能,可以方便的进行调试,得到各个参数的设定,大大节省工程时间。 下面我们依然以三幺四 c 杠二 pndp 为例,来看一下 prd 控制在 s 七杠三百中的实线。 由于对积分、微分时间的精确计算, prd 函数必须在循环中段中调用。为此,在薄涂界面,首先在项目数中点击添加新块, 选择组织块中的 clic 杠、 rnt 五及 ob 三十五。 ob 三十五是一个循环中断,组织块每隔一定时间岂会自动调用,执行一次改间隔时间的设置方法如图,在项目书中双击设备主态,再双击 cpu 模块, 找到下方常规向的中段,点选其中的循环中段, ob 三十五所对应的直行时间就是这个间隔时间。这里我们设置为二百毫米 ob 三十五块。添加后就会打开 ob 三十五块的程序编写界面,在该界面下我们就可以调用 prd 函数了。 依次选择右侧指定中的工艺 prd 控制 prd 基本函数。将 cont 杠 c 添加到编程界面, 常用的 prd 函数为 cont 杠 c 及连续控制器函数,控制具有连续输入和输出变量的工艺过程,实现一个完整的 prd 控制器。 该函数虽然具有众多参数,但是其中很多参数并不需要修改,使用默认设置即可。 下面我们集合参数说明,仅强调一下那些常用和重要的参数。首先是听途左侧的输入参数部分, c o m 杠 rst 波尔形重新启动 prd, 当为触时, prd 执行重启动功能。 m n 杠欧恩固耳型,当为触时, prd 功能块直接将 mn 的词输出到 lmn, 也就是说这个味是 prd 的手动自动切换位。 c y c l e 碳母型 prd 采样周期,该值需于 ob 三十五的调用时间相匹配。 s p 杠 rnt 瑞奥型是 prd 的给定值, pv 杠阿恩瑞奥型 是 prd 的反馈值,也称过程变量。 mnn 瑞耀型手动值由 mnn 杠欧温选择有效 g a r n r 型比例争议及 prd 的 pt i 碳母型积分时间及 prd 的 i d e a d b 杠 w 弱型死区宽度。如果输出在平衡点附近微小幅度震荡,可以考虑用死区来降低灵敏度。 l m n 杠 h l m 瑞奥型 prd 上级线一般 是百分之百, l m n 杠 l l m 弱型 prd 下级线一般为百分之零。如果需要双击性调节,则需设置为负百分之一百。 再看一下梯形图右侧的输出参数部分, l m n r 型 prd 输出不可直接于控制器输出互联。 l m 杠 p r word 型 prd 输出可直接于控制器输出互联。 prd 函数的参数大家知道,那他的运行效果如何来看呢?如果没有实物设备,我们可以 利用仿真器 plc sim 来查看其工作情况。首先我们看一下这个小粒子所设置的参数,如表所示。 接着我们在 ob 三十五中编写 t 型图程序,将这些参数都设置好, 然后打开绑定器 plcc, 下载硬件主菜和程序块,并监视程序运行。 使用 p l c c 五设置 md 三零为五十点零。如果 m 零点零为零, 可以看到当 m 零点一为一时,五十点零被直接送到 md 四零。而如果 m 零点零为一,则 md 四零 被复位为零。初始状态下,使用 plccm 设置 md 幺零为六十点零, md 二零为五十五点零,则会看到 md 四零中的数值从零开始逐渐增大,直至一百点零, md 幺零为六十点零不变。将 md 二零设为六十二点零,则会看到 md 四零中的数值开始逐渐减小,直至零。 不管是在仿真器 plccm 中观察 prd 函数的运行状况,还是在 ob 三十五中设置 prd 函数的参数,都需要多步操作,还有窗口的来回切换。为了使大家能够方便的 使用和调整 prd 函数,国土软件提供了主态和调试窗口供用户使用。我们可以通过图示两处打开主态或调试窗口。 主态窗口用于参数的设置,大家如果要修改参数,可以直接在该窗口修改,而无需再回到梯形图中修改。调试窗口用来观察 prd 的控制效果以及参数状态,非常直观。 以上我们讲了许多 prd 控制的相关内容,有了 plc 的 prd 控制功能,我们就能方便的对温度、压力、流量等过程变量实现闭环控制调节,这也是常见的 量应用,希望大家能够掌握。


王公,什么是 pid 呢? pid 就是比例、积分为分这三种组合的一种控制算法,然后来保持我们物理的一个很稳定运行。 那么他有哪一些运用场合?运用场合,我们常见的像温度控制,呃,液压,四周飞行器,嗯,以及平衡小车。那我如果控制一个热的快,我直接用一个细节的插 d 杠一二 tc 温度模块,嗯,我来监控他的温度,嗯,他温度高于我设定的设定的目标,那我就不让他加热,嗯,让他低于了我设定的目标,那我就让他加热,那这样不是很简单吗?为什么要用到 pi? 对,没毛病啊,就是我们在要求不高的情况下确实可以这么干吧。他如果换一种说法,你可能就知道问题出在哪里。比如说 我控制对象是一辆汽车嘞,我希望我们汽车的车速保持在五十公里每小时,你还敢不敢这样干, 对吧?嗯,思想一下,假如汽车定速巡航是在某一时间段,车速是四十公里每小时,他就会控制发动机高速马上加速,结果发动机就百分之百全油门,懵的一下,汽车就会加速到六十公里每小时, 这时电脑又发出命令刹车,导致的结果就是什么乘客会晕车,嗯,受。 在大多数情况下,我们用开关量控制一个物理量,就显得比较简单粗暴, 但是无法保持这个线性稳定。嗯,所以说他的控制对象是有惯性的, 比如说我刚才那个加热器,如果把他的电断开,嗯,那么他还会有余热,让他继续加热。嗯,哦,所以说这就是产生惯性的一个原因。 对,嗯,这叫热惯性嘛。嗯啊,那产生热惯性我们怎么去克服?这个时候就需要用到我们经久不衰的这个 pid 算法。那么 pid 中的 kp 是什么? kp? 我还是举刚刚你说的烧水的例子啊。嗯,水温有他的当前温度,也有我们期望的目标温, 如果两者差距不大的话。嗯,是吧?然后我就让加热器轻轻加热一下,对吧?如果水温和我们的目标温度有一定的差距,我们就会稍稍用力加热, 但是如果水温和目标温度相差特别大,那我们就卯足劲去加热,是这个道理吗?啊?你尽快达到我们的一个目标值,这个时候的这个 作用啊,就是批这起作用。他跟开关量相比的话,这种控制方式是不是相对显得比较温文尔雅?哦,那么意思就是说他的 k b 值越大,他的调节就越激进,反之越小他就越保守。对,可以这么说。 那么 kd 是什么呢? kd, 我们上面说了 p 的这个作用如同控制水温和平衡车,他水温也是晃晃悠悠嘛,而平衡车也是在平衡角度附近来回这样一个抖动, 好像整个系统看起来不是很稳定,对不对?嗯啊,就是我们心里这样想一想, 假如说我在平衡位置上有一根弹法,我们用手这样拉一下松开,他会来回震荡, 而且正当的时间相对比较长,对不对?如果我把这根弹簧放在水里面,然后再拉动弹簧松开它, 这个是不是他来回震荡的时间就会变短?是啊。哦,那他这就是代表了水的阻力吗? 是一种长形式。嗯,可以理解为就是说谁的主力,这个主力就是我们这个刚刚问的 d 在起作用,因为当接近目标的时候啊,我 p 的作用已经很小了,越接近目标,我 p 的作用就越温柔 啊,有很多内在或者外在的一些因素,死的控制量发生小范围的这样一个摆动,但第一的作用就是向相反的方向啊,死家作用力,尽量杀住这个变化。 那么你刚才提到的 k d 跟 k p, 嗯,他都已经有这么好的效果了,那 k i 的存在的意义是什么呢?嗯,问的很对,其实我们正常 pd 啊,然后已经达到这个效果了。嗯,那我干嘛还要上 i 呢?是不是 k i 呢?嗯,显得是不行的。就是我还是以 以这个热水为例啊,就是我把一壶水放在室外,但是这个室外的环境温度可能比较低,嗯,对不对?然后在 p 的作用下,我的目标温度要加到一百度,烧开。嗯,在 p 的作用下,我再逐步加温, 接近到九十五度的时候,嗯,他加不上去了,因为天气太冷。天气太冷呢,就是水散热的这个速度和我 p 加温的这个速度他已经相等了。嗯,啊,加不上去,那这个时候怎么办 啊?就是,嗯,像皮兄弟就在想,我离目标温度已经很接近了,只需要轻轻加热就行了,但是始终加不上去。但低兄弟在想呢,加热和散热他已经相等,对不对?嗯, 温度没有什么太大的波动,我也不需要去调整啊,于是水温永远停留在九十五度,也烧不到一百度。那这个时候 k i 这个值应该是一个偏差积分吧, 他应该起到的是反向补偿的作用。嗯,可以理解为偏差积分,只要在一定时间内没有达到我的一个目标的一个温度啊,我积分量就不断的往上增加,系统就慢慢意识到啊,我该增加功率了。然后达到目标温度的时候啊,假设我温度没有波动, 积分值就不会再变动,这时候加入功率仍然等于我散入功率,但是这样子我就可以稳稳的保持在一百度。 所以,呃,你说的这个 k 的值啊,越大他积分的时候成的系数就越大,效果越明显。 所以说爱的作用就是减少我们的一个静态误差,让受控物理量啊变得更接近目标值。那么他这个积分哎应该有一个上限限制吧。对, 如果你刚开始调的很大,那他会不会变得特别难以控制呢?是,这个是我们家有上线 是吧去把它限制。但是我发现啊,清洁我们清洁的漂洗软件里面他的本体可以有一个 pid 指定。嗯,然后他的温控模块里面也有一个 pid, 那么他们有什么不一样呢?呃,两者的这个 都是一样的,就是基于 pid 运算一个范围哦。哎,那你刚才提到那个 pid 运算范围是什么?呃, pid 运算范围就是 官方叫做贷款范围,我们可以通俗点计较为就是 pid 死人呐开启的一个范围条件, 有没有通俗一点的说法?嗯, pid 贷款范围,比如说啊,我目标温度是一百度, pid 运算范围我设定为十,那我实际我 pid 运算范围就是在呃,九十到一百一之间,这就是 pid 这个运算范围。

如何实现 s 七幺五零零的 pid 功能?为了便于演示,在程序中调用了一个过程仿真函数。由于对积分、微分时间的精确计算, pid 函数必须在循环中断 ob 中调用。为此,首先在项目中点击添加新快, 选择组织快和 cyclic interrupt 类型,设置循环时间为五百毫秒,代表该欧比快,每隔五百毫秒被调用执行一次。 在指令栏中选择公益指令组,在 pid 控制文件夹中选择 pid compact 指令,将它拖放到循环中段 ob 中。在弹珠的调用选项对话框中可以定义新生成的 pid 公益对 及一个数据块的名称,点击确定,这样将创建一个 pid 公益对象。 pid 函数的设定值可以直接在数据块中复制。过程值 input 表示通过用户程序复制。 input gunpe2 表示通过模拟量进行反馈 视力中,过程指连接到过程仿真的输出 md 二十。同样, output 表示输出一个福点值, output gunpe2 表示直接通过模拟量输出视力中输出 md 二十四用于连接到过程仿真的输入。 复制完成后保存项目 其他的 bid 的参数设置 则通过 pid 公益对象进行参数化。在项目导航中打开公益对象,可以看到新建的 pid 公益对象低比一双击阻态图标进入参数化界面。 在基本设置栏中可以设置控制器类型,例如设置在 cpu 启动后, pid 的控制模式为自动。在 input output 参数栏中选择反馈和输出通道,必须与程序中调用 pid 函数的副值相匹配。 在过程值设置栏中可以设置过程值的上下线和模拟量反馈的标定值。 在高级设置栏中可以设置调节规则和 pid 参数, 在这里设置 pid 的采样时间必须与调用周期匹配,例如五百毫秒。 配置完成后,存盘编意并下载到 plc 中。 项目下载后可以开始进行 pid 的调节。点击调试图标,进入调试界面,选择视图的采样周期,例如零点三秒,点击 start 按钮,进入在线模式。 在调节模式中可以选择玉调节和精细调节。初始阶段可以选择玉调节,如果震荡则需要精细调节,如果直接选择精细调节,则先进行玉调节,然后再进行精细调节。视力中先进行玉调节。 参数调节需要一个设定,借阅作为出发条件,例如将设定值增加百分之五十, 然后点击 start 按钮,启动预调节功能。在调节状态栏中可以看到调节进度和状态信息, 几分钟后,从状态栏中可以看到与调节完成信息,但是从采样图中可以看到过程纸和输出纸反复震荡,说明调节效果不理想。 在这样情况下,可以选择精细调节,将操作模式选择精细调节,然后点击 star 的按钮,启动精细调节功能。 又过了几分钟,精细调节完成,过程值和输出值平滑效果理想。 可以将自调节的结果上传到离线项目中。 在阻态界面可以得到调节后 pid 具体的参数值。为了同步 pid 参数在 plc 中的装载值,可以将离线数据再次下载到 plc 中 操作,不会影响 pid 参数在 plc 的实际运行值,这样一路 pid 调试完毕。

朋友们大家好,今天我们来介绍如何使用图形化编程实现 pid 运算。首先第一步我们是打开需要进行 pid 运算的数据配置工程。 第二步,打开图形化编辑器。第三步,我们来介绍一下 p i 的函数。 p i 的函数对应的参数有七个,第一个当前指点名,即实际要被控制的设备的点名。 第二个设定值点名,记当前的这个值你需要设定的初始比例或者是某一个设定的范围值。第三个 比例值点名,即你需要绑定的 pi 函数的比例值。积分值点名,即 pi 函数的积分值,初始值即当前这个 pi 函数初始的输出千分比。 敏感带标志记单前值和设定值的差值。举个例子,单前值和设定值的差值假如是十,你设置的敏感带标志假如说是一百,那在一百以内的差值他都会执行单前的这个 在一百以内的这个差值他都不会执行 pi 函数,只有超过了敏感贷标志,他就会执行当前的 pi 函数运行周期,记当前这个 pi 函数执行的周期。 最后我们就可以进入图形化编程,编辑相应的 pi 逻辑。下面我们就进入 xlv 软件,演示一下具体的操作过程。 首先我们打开 xtv, 进入需要调试的 pi 的同一工程,进入图形编辑器, 首先我们拉取相应的控制选择 pi, 选择 pi 的时候,他让你选单前指,那我们就选择需要外部变量的单前指,然后外部变量的设定值 比例积分,然后初始值我们可以选择数学, 然后初始值我们可以定义相应的变量, 然后我们顺便也将敏感带隐形周期都命名一下 运行周期,然后我们拿去处使值,然后在上面将处使值进行一个副值 处置,我们复制为一千,继续输出一个单间的千文笔 敏感贷,我们输出为十,即在十以内我们不运行偏爱函数,十以后大于十,我们都执行偏爱函数进行 逻辑的整定,然后运行周期我们设置为一秒钟执行一次,即一千毫秒,然后执行相应的这个 pi, 选择密砍胎,然后下面的运行周期就绑定我们设定的运行周期,然后当前的这个 pi 结束以后,将指输出, 我们输出到外物边量正比例,因为通过我们当前这个模式计算出来的一个 pi 的千分比,它是一个正比例。如果我们需要获取相应的反比例值, 比如我们需要执行的是反笔,我们就可以选择数学, 通过一千去减我们获取到的这个外部的正比例, 这就是获取一个反比例指,因为我们得到的是一个千分比,用一千减去得到的千分比,他就是变成了一个反比例关系。 上面所介绍的整个过程,即通过上海巡航的网关使用图形编辑器实现 pi 操作。感谢大家的观看。