s7-200,模拟量处理PID控制问题请教,高手还请看看,谢谢 点击:3579 | 回复:12



鸿蒙三少

    
  • 精华:0帖
  • 求助:7帖
  • 帖子:7帖 | 29回
  • 年度积分:0
  • 历史总积分:90
  • 注册:2011年12月24日
发表于:2012-07-28 09:49:56
楼主
求助帖10分-已结帖

各位好,问题是这样的,我用的PLC224,模拟量模块用的EM231,EM232,用的PID向导,

模拟量检测上来的4~20mA信号给了PID,PID向导里边输入输出都是用的20%偏移量,然后PID的输出,输出了然后怎么处理,我模拟量输出接的电机,需要0~10V的电压,除了模拟输出模块接线接成输出,PID输出的的程序怎么处理?直接给到AQW吗?感觉还得处理一下,这个怎么处理?哪位高手指点一下啊,谢谢。




鸿蒙三少

  • 精华:0帖
  • 求助:7帖
  • 帖子:7帖 | 29回
  • 年度积分:0
  • 历史总积分:90
  • 注册:2011年12月24日
发表于:2012-07-28 09:53:07
1楼
这是PID向导,程序,各位看看。

酷客

  • [版主]
  • 精华:9帖
  • 求助:31帖
  • 帖子:1460帖 | 7990回
  • 年度积分:457
  • 历史总积分:59176
  • 注册:2004年7月13日
发表于:2012-07-28 10:36:11
2楼

 关于PID设定值(VD204)确认:

假定我们将控制温度定位23.5;以单极性为例,首先应确定输入信号是010V电压信号还是420mA电流信号?,这在PID设定值中非常重要。

如是010V电压输入信号对应032000,温度范围0100,设定值为可直接算出: VD204=23.5/100-0=0.235

若是电流420mA,其对应数值应为640032000,温度范围0100,则设定值应为0.388

原因:模拟模块中032000对应020mA;其中640032000对应420mA对应0100;这就必须进行相关的计算,23.5电流计算方式:

20-4):(100-0=X-4:23.5;

解方程:X=7.76(mA)

设定值:VD204=7.76/20=0.388.

4.         关于PID输出值(VD208)确认:

以单极性为例,应确定输出信号是010V电压信号还是420mA电流信号对应着032000

若是输出信号AQW0对应电压信号,比如010V,则

AQW0=(实数VD208*32000在转化成整数)即可;

若是输出信号AQW0对应电流信号,比如420 mA,则

AQW0=(实数VD208*32000在转化成整数+6400)。

5.         关于PID恒温控制实际:

通过上机实验可知:PID恒温控制是围绕着设定值进行调节的。若设定温度为23.5;当温度低于设定值时,加温蒸汽调节阀始终处于全部打开状态,;当温度达到23.5,加温用的蒸汽调节阀开始逐渐关闭,在关闭过程中,温度有可能仍在渐渐上升,温度偏离越大,关闭速度越快;知道全部关闭为止;当温度再次低于设定值时,加温蒸汽调节阀则会逐渐打开,打开速度取决于温度偏离值的大小,偏离越大,打开速度越快;直到温度再次达到设定值。若温度长时间未达到设定值,调节功能会将调节阀全部打开,这就是我所观察到的PID恒温控制情况。所以,我们可以根据实控情况进行必要的编程,有效的利用低于设定值时PID控制时段;切断高于设定值部分的PID控制,在温度高于设定值后,即可根据生产要求干脆部分或全部关闭加温阀。以防温度上升过高。来求得优越的温控效果。

鸿蒙三少

  • 精华:0帖
  • 求助:7帖
  • 帖子:7帖 | 29回
  • 年度积分:0
  • 历史总积分:90
  • 注册:2011年12月24日
发表于:2012-07-28 10:46:48
3楼
我擦,楼上正解,谢谢谢谢,找了好几天,谢谢谢谢

等待戈多的傻子

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 7回
  • 年度积分:0
  • 历史总积分:7
  • 注册:2012年7月11日
发表于:2012-07-28 11:07:33
4楼

                         学习                      学习

welfare87

  • 精华:0帖
  • 求助:4帖
  • 帖子:44帖 | 2827回
  • 年度积分:0
  • 历史总积分:25853
  • 注册:2009年2月20日
发表于:2012-07-28 13:54:26
5楼

在向导里要设置好PID 参数
      1、
定义回路设定值(SP,即给定)的范围:
    在低限(Low Range)和高限(High Range)输入域中输入实数,缺省值为0.0 100.0,表示给定值的取值范围占过程反馈量程的百分比。这个范围是给定值的取值范围。它也可以用实际的工程单位数值表示。参见:设置给定-反馈的量程范围。
   以下定义PID 回路参数,这些参数都应当是实数:
       2、 Gain
(增益): 即比例常数。
       3、Integral Time
(积分时间):如果不想要积分作用,可以把积分时间设为无穷大:9999.99
       4、Derivative Time
(微分时间):如果不想要微分回路,可以把微分时间设为0
       5、Sample Time
(采样时间):是PID 控制回路对反馈采样和重新计算输出值的时间间隔。

    在向导完成后,若想要修改此数,则必须返回向导中修改,不可在程序中或状态表中修改。
    注意:关于具体的PID 参数值,每一个项目都不一样,需要现场调试来定,没有所谓经验参数。

love2006

  • 精华:5帖
  • 求助:0帖
  • 帖子:209帖 | 1300回
  • 年度积分:23
  • 历史总积分:3382
  • 注册:2006年2月21日
发表于:2012-07-30 10:18:00
6楼
PID向导出来的,不用处理直接使用就可以

鸿蒙三少

  • 精华:0帖
  • 求助:7帖
  • 帖子:7帖 | 29回
  • 年度积分:0
  • 历史总积分:90
  • 注册:2011年12月24日
发表于:2012-07-30 15:21:55
7楼
回复内容:
对:love2006关于PID向导出来的,不用处理直接使用就可以 内容的回复:


我想控制的是输出需要0~10V,PID向导出来不用处理直接AQW0就行吗?直接就输出0~10V了吗?

鸿蒙三少

  • 精华:0帖
  • 求助:7帖
  • 帖子:7帖 | 29回
  • 年度积分:0
  • 历史总积分:90
  • 注册:2011年12月24日
发表于:2012-07-30 15:24:06
8楼
还有PID配置的时候,输出配置20%偏移量和不配置20%偏移量这个对PID向导的输出有啥影响吗?谢谢各位啊,呵呵

沧海一粟——王者之师

  • 精华:1帖
  • 求助:1帖
  • 帖子:8帖 | 1264回
  • 年度积分:99
  • 历史总积分:8209
  • 注册:2007年10月17日
发表于:2012-07-31 11:01:55
9楼

精解,20%的偏移应该是4MA的信号吧

鸿蒙三少

  • 精华:0帖
  • 求助:7帖
  • 帖子:7帖 | 29回
  • 年度积分:0
  • 历史总积分:90
  • 注册:2011年12月24日
发表于:2012-08-01 09:27:00
10楼

嗯,问西门子技术了,他们说要是输出电压,不用20%,用向导也不用处理,直接接AQW就行,

纵横军团----彬

  • 精华:2帖
  • 求助:0帖
  • 帖子:18帖 | 2044回
  • 年度积分:0
  • 历史总积分:2548
  • 注册:2009年6月24日
发表于:2012-08-08 21:14:06
11楼
直接接AQW就行了。 这几天也在做200 PID 几个回路/ 向导很方便的。

朶朶

  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 41回
  • 年度积分:0
  • 历史总积分:118
  • 注册:2017年4月18日
发表于:2018-04-20 20:51:36
12楼
s7-200PID向导功能中PID是如何形成块儿的? 如何定义每一个变量的地址,以及数据是如何存储的,比如VB103存储的路径是什么,存储的又是哪些数据? 在0-7个回路中,对于每一个回路,在向导里是如何管理这些地址的分配关系的?这些地址如何分配? 8个回路如何定义,内部结构是什么,生成一个子程序时,调用程序的内部路径,结构是怎样的?楼主知道吗

热门招聘
相关主题

官方公众号

智造工程师