技术论坛

FB41 PID使用问题

作者 主题
新手

经验值: 13
发帖数: 5
精华帖: 0
主题:FB41 PID使用问题


只看楼主 只看精华 楼主 2010-03-31 07:44:02
我想了解FB41设定值SP_INT的值和PV_IN的设定规则。例如我现场用量程是-40度-120度的温度变送器测温送给PLC,然后通过PID控制输出控制调节阀。那么我的SP_int能不能直接设定我工艺要求的温度,比如说80度。因为我已经把温度变送上来的0-27648的数转换成了工程值(上位机显示),PV_IN能不能直接用我转换好的工程值呢?
 
以下网友喜欢您的帖子:

  
重要声明:

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=672579&b_id=4&s_id=0&num=52

奇侠

经验值: 7344
发帖数: 2057
精华帖: 22
回复:FB41 PID使用问题


只看楼主 只看精华 3楼 2010-03-31 09:02:55
PV_IN上是用经过转换后的实数值,不是测量值
 
以下网友喜欢您的帖子:

  
至圣

经验值: 10907
发帖数: 4325
精华帖: 26
回复:FB41 PID使用问题


只看楼主 只看精华 4楼 2010-03-31 11:08:34
在PID调节中有不同的物理量,因此在参数设定中需将其规格化:
1.规格化概念及方法:
  PID参数中重要的几个变量,给定值,反馈值和输出值都是用0.0~1.0之间的实数表示,
  而这几个变量在实际中都是来自与模拟输入,或者输出控制模拟量的
  因此,需要将模拟输入转换为0.0~1.0的数据,或将0.0~1.0的数据转换为模拟输出,这个过程称为规格化  
  规格化的方法:(即变量相对所占整个值域范围内的百分比 对应与27648数字量范围内的量)
  对于输入和反馈,执行:变量*100/27648,然后将结果传送到PV-IN和SP-INT
  对于输出变量 ,执行:LMN*27648/100,然后将结果取整传送给PQW即可;

2.例:
输入参数:
SP_INT(给定值):0--100%的实数。
假定模块的输入变量量程为0-10Mpa,则SP_IN的范围0.0-1.00对应0-10Mpa.可以根据这一比例关系来设置给定值。例:如给定5.0Mpa
SP_INT(给定值)=5.0/(10.0-0.0)*100.0=50.0(50%)

PV_IN(过程值,即反馈值):0--100%的实数。
此值来自与阀门阀位(开度)的相应的压力反馈值。其范围0.0-1.0对应0-100%.即,当模拟量模板输入为数值为27648时则对应100%(量程的上限),数值为0时则对应0%(量程的下限)。
可以根据这一比例关系来换算PV_IN值。例:如输入数值为12000时
PV_IN(过程值,即反馈值)=12000/27648*100.0=43.403(43.403%)
输出参数:
当通过PID控制器(FB41)运算后,即得出调节值LMN_PER,该值已转化范围为0-27648的整型数值。例如经运算为43.403%,
LMN_PER=43.403*27648/100,取整后为12000,将LMN_PER送入模拟量输出模板即可.

上述调节阀门是"气开"式的,即输入20mA时阀门全开,4mA时全闭(失电全闭)。若调节阀门是"气闭"式的,即输入20mA时阀门全闭,4mA时全开(失电全开),FB41的SP_INT 与 PV_IN的数值互换即可(按制冷调节即可),此时如需输入MAN数值也应作相应处理。


一日三省吾身
以下网友喜欢您的帖子:

  
侠士

经验值: 1795
发帖数: 1188
精华帖: 1
回复:FB41 PID使用问题


只看楼主 只看精华 5楼 2010-03-31 16:08:03
呵呵,很有耐心,解释的也很到位,FB41系统功能块,300里同时可以运行记录PID呀?
知识改变未来
以下网友喜欢您的帖子:

  
版主

经验值: 76166
发帖数: 19135
精华帖: 378
回复:FB41 PID使用问题


只看楼主 只看精华 6楼 2010-03-31 16:13:45
阿鸣说的不错,但不完整,最后的建议有违人们的一般思维逻辑,能不能提出个符合一般思维逻辑的编程方法,借楼主的的问题抛出个讨论题,期望大家踊跃参与讨论
题目如下:
1.加热/制冷,正作用/反作用,气开/气闭阀这3组条件的各取其一排列组合
2.双向作用,正作用/反作用,双向阀(4-12ma加热,12-20ma制冷/或反之)

要求尽量利用FB41的自身功能完成,并且符合人们的正向思维逻辑
Zane 注册自动化系统工程师 Always save before download
以下网友喜欢您的帖子:

  
新手

经验值: 13
发帖数: 5
精华帖: 0
回复:FB41 PID使用问题


只看楼主 只看精华 楼主 7楼 2010-03-31 19:38:33
谢谢各位,请问如果是热电阻信号的话,还是按照上面说的归格化?热电阻输入乘0.1就是实际的温度值,但是热电阻的范围怎么确定?不同情况下我外部测
温的实际范围是不同的,难道都统一处理?
还有,手册里面说也可以输入物理值,只要设定和输入都是同样的单位,是不是意味着我可以用实际的工程值给SP_iNT赋值,用实际的测量工程值给PV_IN赋值。通俗点,比如我现场要实现一个压力控制,压力测量量程是
-150Kpa~+150KPa,设定值工艺要求是10Kpa,比如现场测量的压力值是110Kpa,那么压力变送器输出4-20ma信号,送给AD采样后的值应该为0-27648这个范围,我再经过FC105转换后的数据就是110Kpa,那么我能不能直接把设定值10Kpa赋值给sp_int,把采样转换后的值110Kpa赋值给Pv_int?

 
以下网友喜欢您的帖子:

  
奇侠

经验值: 9077
发帖数: 639
精华帖: 57
回复:FB41 PID使用问题
精华帖精华帖星级1级


只看楼主 只看精华 8楼 2010-03-31 21:35:38
1、设定值SP_INT是可以直接赋值实际的测量工程值单位的,前提是测量值也必需是先被转换为实际的测量工程值单位(例如:使用FC105块)后,再接入FB41块的PV_IN引脚。否则,SP_INT和PV_IN的单位就不统一了,没法进行偏差ER比较!总之,必需保持SP_INT和PV_IN的单位统一,才能进行偏差ER比较。
2、关于热电阻温度信号值的范围(即:PV_IN的测量量程),这就必需查看实际安装在现场的热电阻传感器的铭牌标识,厂家通常会将这个测温量程参数标识在铭牌上的!
大学之道,在明明德,在亲民,在止于至善。
以下网友喜欢您的帖子:

  
新手

经验值: 13
发帖数: 5
精华帖: 0
回复:FB41 PID使用问题


只看楼主 只看精华 楼主 9楼 2010-03-31 22:45:06
谢谢!若直接采用工程值,那么pid调节后的LMN输出范围是多少呢?是0-1之间吗?为什么有人说必须规格化?有没有人提供个实例程序啊
 
以下网友喜欢您的帖子:

  
奇侠

经验值: 9077
发帖数: 639
精华帖: 57
回复:FB41 PID使用问题


只看楼主 只看精华 10楼 2010-03-31 23:31:47
quote:以下是引用sunny007在2010-03-31 22:45:06的发言:
谢谢!若直接采用工程值,那么pid调节后的LMN输出范围是多少呢?是0-1之间吗?为什么有人说必须规格化?有没有人提供个实例程序啊
关于S7-300/400系列FB41功能块的PID算法输出有LMN和LMN_PER这两个,简述如下:
1、LMN=(LMNLIMIT的输出)×LMN_FAC+LMN_OFF;
其中,“LMN_FAC”的默认值为“1”,“LMN_OFF”的默认值为“0”。
2、“CPR_OUT”功能可以将浮点值“LMN”转换为一个外围设备值,转换公式如下:
LMN_PER=LMN×27648/100
3、另外,查看FB41的帮助(F1键)中的功能图表后,就知道了!
大学之道,在明明德,在亲民,在止于至善。
以下网友喜欢您的帖子:

  
奇侠

经验值: 6118
发帖数: 1188
精华帖: 6
回复:FB41 PID使用问题


只看楼主 只看精华 11楼 2010-04-01 18:21:00
只要PLC的运行时间上没什么问题,例如不超过所在块的周期时间,PLC可以执行很多个PID运算
 
以下网友喜欢您的帖子:

  
侠客

经验值: 929
发帖数: 799
精华帖: 0
回复:FB41 PID使用问题


只看楼主 只看精华 12楼 2010-04-02 21:57:44
我目前用的最多的用一个315-DP做了12个PID控制12个泵,做恒压供水,效果还可以.
海纳百川,有容乃大;壁立千仞,无欲则刚! 工控联盟QQ交流群:27169600
以下网友喜欢您的帖子:

  
游侠

经验值: 323
发帖数: 126
精华帖: 1
回复:FB41 PID使用问题
精华帖精华帖星级1级


只看楼主 只看精华 13楼 2010-04-02 23:16:59
讲的很好,但要注意在OB100中要处理一下FB41的块复位。
 
以下网友喜欢您的帖子:

  
新手

经验值: 4
发帖数: 1
精华帖: 0
回复:FB41 PID使用问题


只看楼主 只看精华 14楼 2010-04-06 11:34:26
quote:以下是引用逍遥江湖在2010-04-02 21:57:44的发言:
我目前用的最多的用一个315-DP做了12个PID控制12个泵,做恒压供水,效果还可以.

小弟最近也做过一个恒压供水,但是跟踪时间总是太慢,工况基本是1个变频和2到3台工频泵同时工作,几个泵的功率是基本一样的,但是调试下来总是很长时间才能达到设定值,基本上得2到3分钟的样子,怎么能做到1分钟内呢?
可能是哪些地方调试有问题 请各位大侠帮忙~
 
以下网友喜欢您的帖子:

  
至圣

经验值: 21149
发帖数: 4995
精华帖: 57
回复:FB41 PID使用问题


只看楼主 只看精华 15楼 2010-04-06 14:11:42
那位仁兄能详细解释以下西门子PID的用法啊?我作个阀的调压控制,总是不能很好的跟踪啊?》》?》
The darkness is no darkness with thee.
以下网友喜欢您的帖子:

  
游民

经验值: 75
发帖数: 2
精华帖: 0
回复:FB41 PID使用问题


只看楼主 只看精华 17楼 2010-04-06 17:45:40
可以,注意一定要用实数。
 
以下网友喜欢您的帖子:

  
奇侠

经验值: 9077
发帖数: 639
精华帖: 57
回复:FB41 PID使用问题


只看楼主 只看精华 18楼 2010-04-07 14:36:05
quote:以下是引用Zane在2010-03-31 16:13:45的发言:
阿鸣说的不错,但不完整,最后的建议有违人们的一般思维逻辑,能不能提出个符合一般思维逻辑的编程方法,借楼主的的问题抛出个讨论题,期望大家踊跃参与讨论。题目如下:
1.加热/制冷,正作用/反作用,气开/气闭阀这3组条件的各取其一排列组合
2.双向作用,正作用/反作用,双向阀(4-12ma加热,12-20ma制冷/或反之)
要求尽量利用FB41的自身功能完成,并且符合人们的正向思维逻辑
关于版主的这个论题贴出这么久了,还没人论答,现我来谈一下吧!
1、关于PID功能块FB41如何简单、高效的实现“正/反”控制作用的问题(例如:加热/制冷问题、如何适应气动调节阀的气开/气关方向等问题),其实在“找答案”栏目中已多次有人问答了。
2、但是,大多数人都提出了和“阿鸣”相同的方案,即:将FB41功能块的SP_INT与PV_IN的连接引脚变量互换。
3、这种将FB41功能块的SP_INT与PV_IN的连接引脚变量互换的方法虽是可行,但却使PID功能块引脚定义与实际使用不符,带来了一些混乱!
4、最好的方法是:改变GAIN(比例增益)设置值的符号方向。例如:原比例增益值GAIN=2.5;如果需要输出值(LMN)反向,可直接修改为GAIN=-2.5,即可!
5、关于PID控制正/负作用方向问题,可参见以下我在“找答案”栏目中的类似回答:
http://www.ad.siemens.com.cn/service/answer/solution.asp?Q_id=47544&cid=1029
6、另外,关于版主提出的“双向和正/反作用,双向阀(4~12mADC加热,12~20mADC制冷,或反之)”问题。这在过程控制系统中称之为“分程调节”控制。也就是将PID调节输出(LMN)信号以半量程分界点(12mADC)为基准,比较判断PID调节输出(LMN)信号的正/反作用方向。
至于正/反作用方向,仍然是改变GAIN(比例增益)设置值的符号方向,只是需要增加对PID调节输出(LMN)信号值以12mADC为基准值的比较判断。
7、最后需要注意的是:分程调节控制时的半量程分界点基准值比较判断,还应增加死区(即:滞后Hysteresis)功能,以免出现PID调节输出(LMN)信号值在半量程分界点附近振荡现象!
大学之道,在明明德,在亲民,在止于至善。
以下网友喜欢您的帖子:

  
新手

经验值: 5
发帖数: 1
精华帖: 0
回复:FB41 PID使用问题


只看楼主 只看精华 19楼 2010-04-08 21:09:40
补充问一下:
FB41是不是需要以固定时间间隔去调用?是不是和CYCLE循环时间有关?
学无止境
以下网友喜欢您的帖子:

  
侠士

经验值: 1777
发帖数: 913
精华帖: 11
回复:FB41 PID使用问题


只看楼主 只看精华 20楼 2010-04-09 09:11:59
你只要别把FB41 放到OB1里面,并且无条件调用就行。
PID 需要的当然是等间隔调用,最好设置成与CYCLE 一样。
即使设置成不一样,不会报错。
CYCLE 最终确定的是PID的各项参数的比例因子。
师出无名
以下网友喜欢您的帖子:

  
游士

经验值: 262
发帖数: 86
精华帖: 0
回复:FB41 PID使用问题


只看楼主 只看精华 21楼 2010-04-09 12:50:53
可以直接写测量值啊,,包括 SP_INT 都可以直接写工程量不过得是实型变量LMN输出的值是由LMN_HLM
LMN_LIM引脚值所决定的
东西都学杂啦!啥都得掌握啊~
以下网友喜欢您的帖子:

  
游士

经验值: 187
发帖数: 162
精华帖: 0
回复:FB41 PID使用问题


只看楼主 只看精华 23楼 2010-04-10 13:31:33
问的好,说的也好,精彩.多多交流是我们共同的目标.
在摸索中前进,在前进中摸索.勇于探索.
以下网友喜欢您的帖子:

  
收起
FB41 PID使用问题
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。