当前位置:
工控论坛
> >
产品
>
PLC
>
西门子(Siemens)PLC
我要发帖
首页
上一页
1
2
3
4
5
6
下一页
尾页
使用FB41进行PID调整的说明
点击:
12767
| 回复:
104
如火
关注
私信
精华:172帖
求助:0帖
帖子:803帖 | 5249回
年度积分:0
历史总积分:0
注册:1900年1月01日
发表于:2005-08-03 11:31:00
楼主
FB41称为连续控制的PID用于控制连续变化的模拟量,与FB42的差别在于后者是离散型的,用于控制开关量,其他二者的使用方法和许多参数都相同或相似。 PID的初始化可以通过在OB100中调用一次,将参数COM-RST置位,当然也可在别的地方初始化它,关键的是要控制COM-RST; PID的调用可以在OB35中完成,一般设置时间为200MS, 一定要结合帮助文档中的PID框图研究以下的参数,可以起到事半功倍的效果 以下将重要参数用黑体标明.如果你比较懒一点,只需重点关注黑体字的参数就可以了。其他的可以使用默认参数。 A:所有的输入参数: COM_RST: BOOL: 重新启动PID:当该位TURE时:PID执行重启动功能,复位PID内部参数到默认值;通常在系统重启动时执行一个扫描周期,或在PID进入饱和状态需要退出时用这个位; MAN_ON: BOOL:手动值ON;当该位为TURE时,PID功能块直接将MAN的值输出到LMN,这可以在PID框图中看到;也就是说,这个位是PID的手动/自动切换位; PEPER_ON: BOOL:过程变量外围值ON:过程变量即反馈量,此PID可直接使用过程变量PIW(不推荐),也可使用 PIW规格化后的值(常用),因此,这个位为FALSE; P_SEL: BOOL:比例选择位:该位ON时,选择P(比例)控制有效;一般选择有效; I_SEL: BOOL:积分选择位;该位ON时,选择I(积分)控制有效;一般选择有效; INT_HOLD BOOL:积分保持,不去设置它; I_ITL_ON BOOL:积分初值有效,I-ITLVAL(积分初值)变量和这个位对应,当此位ON时,则使用I-ITLVAL变量积分初值。一般当发现PID功能的积分值增长比较慢或系统反应不够时可以考虑使用积分初值; D_SEL : BOOL:微分选择位,该位ON时,选择D(微分)控制有效;一般的控制系统不用; CYCLE : TIME:PID采样周期,一般设为200MS; SP_INT: REAL:PID的给定值; PV_IN : REAL:PID的反馈值(也称过程变量); PV_PER: WORD:未经规格化的反馈值,由PEPER-ON选择有效;(不推荐) MAN : REAL:手动值,由MAN-ON选择有效; GAIN : REAL:比例增益; TI : TIME:积分时间; TD : TIME:微分时间; TM_LAG: TIME:我也不知道,没用过它,和微分有关; DEADB_W: REAL:死区宽度;如果输出在平衡点附近微小幅度振荡,可以考虑用死区来降低灵敏度; LMN_HLM: REAL:PID上极限,一般是100%; LMN_LLM: REAL:PID下极限;一般为0%,如果需要双极性调节,则需设置为-100%;(正负10V输出就是典型的双极性输出,此时需要设置-100%); PV_FAC: REAL:过程变量比例因子 PV_OFF: REAL:过程变量偏置值(OFFSET) LMN_FAC: REAL:PID输出值比例因子; LMN_OFF: REAL:PID输出值偏置值(OFFSET); I_ITLVAL:REAL:PID的积分初值;有I-ITL-ON选择有效; DISV :REAL:允许的扰动量,前馈控制加入,一般不设置; B:部分输出参数说明: LMN :REAL:PID输出; LMN_P :REAL:PID输出中P的分量;(可用于在调试过程中观察效果) LMN_I :REAL:PID输出中I的分量;(可用于在调试过程中观察效果) LMN_D :REAL:PID输出中D的分量;(可用于在调试过程中观察效果) C:规格化概念及方法: PID参数中重要的几个变量,给定值,反馈值和输出值都是用0.0~1.0之间的实数表示, 而这几个变量在实际中都是来自与模拟输入,或者输出控制模拟量的 因此,需要将模拟输出转换为0.0~1.0的数据,或将0.0~1.0的数据转换为模拟输出,这个过程称为规格化 规格化的方法:(即变量相对所占整个值域范围内的百分比 对应与27648数字量范围内的量) 对于输入和反馈,执行:变量*100/27648,然后将结果传送到PV-IN和SP-INT 对于输出变量 ,执行:LMN*27648/100,然后将结果取整传送给PQW即可; D:PID的调整方法: 一般不用D,除非一些大功率加热控制等惯大的系统;仅使用PI即可, 一般先使I等于0,P从0开始往上加,直到系统出现等幅振荡为止,记下此时振荡 的周期,然后设置I为振荡周期的0.48倍,应该就可以满足大多数的需求。我记得网络上有许多调整PID的方法,但不记得那么多了,先试试吧。 附录:PID的调整可以通过“开始—>SIMATIC->STEP7->PID调整”打开PID调整的控制面板,通过选择不同的PID背景数据块,调整不同回路的PID参数。 注:本文由zzj1382提供,工控网整理,感谢zzj1382的支持!
分享到:
收藏
邀请回答
回复楼主
举报
MEXICO
关注
私信
精华:0帖
求助:0帖
帖子:18帖 | 68回
年度积分:0
历史总积分:127
注册:2004年11月14日
发表于:2006-01-17 16:06:00
21楼
我怎么没看到啊,是啥东西,在哪找啊
回复
引用
举报
怪石
关注
私信
精华:1帖
求助:1帖
帖子:117帖 | 250回
年度积分:0
历史总积分:915
注册:2003年9月08日
发表于:2006-01-24 14:34:00
22楼
初始化的目的是什么呢?必须吗?
回复
引用
举报
如火
关注
私信
精华:172帖
求助:0帖
帖子:803帖 | 5249回
年度积分:0
历史总积分:0
注册:1900年1月01日
发表于:2006-01-24 14:54:00
23楼
不是必须的,初始化主要恢复算法内部各临时变量的值,可以把他认为是硬件上的复位开关。
回复
引用
举报
不打好人
关注
私信
精华:0帖
求助:0帖
帖子:19帖 | 24回
年度积分:0
历史总积分:90
注册:2005年10月25日
发表于:2006-01-24 16:14:00
24楼
回复
引用
举报
JLCWZF
关注
私信
精华:0帖
求助:0帖
帖子:9帖 | 25回
年度积分:0
历史总积分:92
注册:2004年12月23日
发表于:2006-03-02 11:15:00
25楼
谢谢,你有使用FB58,41的例子吗?我希望看到,发给我邮箱
jlcwzz@yeah.net
回复
引用
举报
如火
关注
私信
精华:172帖
求助:0帖
帖子:803帖 | 5249回
年度积分:0
历史总积分:0
注册:1900年1月01日
发表于:2006-03-02 11:16:00
26楼
楼上网友可以到资料库下载。
回复
引用
举报
南极火
关注
私信
精华:1帖
求助:0帖
帖子:25帖 | 169回
年度积分:0
历史总积分:677
注册:2003年11月25日
发表于:2006-03-04 17:59:00
27楼
我想问斑竹!PID中FB41的背景数据块怎么用!
回复
引用
举报
一心向前
关注
私信
精华:0帖
求助:0帖
帖子:8帖 | 33回
年度积分:0
历史总积分:187
注册:2003年8月21日
发表于:2006-03-08 10:12:00
28楼
首先在BLOCK中添加一个背景数据块,然后在程序中添加一个FB41,最后在FB41块的顶上把背景数据块名添上就可使用
回复
引用
举报
如火
关注
私信
精华:172帖
求助:0帖
帖子:803帖 | 5249回
年度积分:0
历史总积分:0
注册:1900年1月01日
发表于:2006-03-08 12:45:00
29楼
首先在BLOCK中添加一个数据块,修改数据块属性为instance db,然后选择fb41,即可生成,使用同上。
回复
引用
举报
南极火
关注
私信
精华:1帖
求助:0帖
帖子:25帖 | 169回
年度积分:0
历史总积分:677
注册:2003年11月25日
发表于:2006-03-09 16:03:00
30楼
斑竹!资料下载中心PID的例子不全,只有上半部分,不知下半部分在哪?
回复
引用
举报
风清杨
关注
私信
精华:0帖
求助:0帖
帖子:9帖 | 22回
年度积分:0
历史总积分:147
注册:2003年11月11日
发表于:2006-03-09 18:50:00
31楼
真的很不错,是个学习的好地方!!继续精彩,我们都很欢迎!!
回复
引用
举报
king0815
关注
私信
精华:1帖
求助:0帖
帖子:34帖 | 196回
年度积分:0
历史总积分:826
注册:2005年6月23日
发表于:2006-03-10 18:28:00
32楼
这个太好了!谢谢版主. 还能不能提供其它用于PID控制的块的资料,如:SFB41,SFB42,SFB43,FB42,FB43. 再次谢谢!
回复
引用
举报
一大幅度
关注
私信
精华:0帖
求助:0帖
帖子:7帖 | 262回
年度积分:0
历史总积分:183
注册:2001年5月24日
发表于:2006-03-11 19:04:00
33楼
C:规格化概念及方法:
PID参数中重要的几个变量,给定值,反馈值和输出值都是用0.0~1.0之间的实数表示,
-------------------------
这句话我不同意。
建议最好用0-100.0范围
也就是pv、sp、op和lmn都是0-100
回复
引用
举报
南极火
关注
私信
精华:1帖
求助:0帖
帖子:25帖 | 169回
年度积分:0
历史总积分:677
注册:2003年11月25日
发表于:2006-03-12 10:16:00
34楼
靠!这样有什么意思呢!
一定要拿出证据来才有说服力!
回复
引用
举报
盖世孤狼
关注
私信
精华:0帖
求助:0帖
帖子:6帖 | 28回
年度积分:0
历史总积分:146
注册:2006年4月06日
发表于:2006-04-16 21:14:00
35楼
zzj1382:
“PV_PER: WORD:未经规格化的反馈值,由PEPER-ON选择有效;(不推荐)”
为什么不推荐啊?
回复
引用
举报
南极火
关注
私信
精华:1帖
求助:0帖
帖子:25帖 | 169回
年度积分:0
历史总积分:677
注册:2003年11月25日
发表于:2006-04-26 15:02:00
36楼
C:规格化概念及方法:
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帖
求助:0帖
帖子:38帖 | 247回
年度积分:0
历史总积分:514
注册:2004年4月30日
发表于:2006-05-25 21:52:00
37楼
PID的初始化可以通过在OB100中调用一次,将参数COM-RST置位,当然也可在别的地方初始化它,关键的是要控制COM-RST;
这段话我不理解,不知道是什么意思,是一定要初始化吗?我问西门子公司技术支持,他们说不用啊。我后来也没有初始化,直接在OB35里调用就可以了,效果很好。这个初始化是什么意思?是把模块参数恢复到默认值?
回复
引用
举报
思维
关注
私信
精华:0帖
求助:0帖
帖子:0帖 | 16回
年度积分:0
历史总积分:151
注册:2002年9月06日
发表于:2006-05-26 15:44:00
38楼
那个PID背景模块怎么用呢?
回复
引用
举报
努力认清自己
关注
私信
精华:0帖
求助:0帖
帖子:5帖 | 13回
年度积分:0
历史总积分:52
注册:2004年9月26日
发表于:2006-05-27 16:34:00
39楼
LMN-PER可以输出控制值到PQW吗?请教。
回复
引用
举报
qd_yzy
关注
私信
精华:0帖
求助:0帖
帖子:1帖 | 13回
年度积分:0
历史总积分:67
注册:2006年4月05日
发表于:2006-06-23 11:24:00
40楼
TO:激情如火老师:
能不能给我发一个FB41 PID调节的例子,谢谢,急需解决问题。
不胜感激!!!邮箱:yzy1979@126.com
回复
引用
举报
热门招聘
相关主题
工控TV推出“三菱PLC视频教程...
[13521]
欧姆龙PLC编程软件CXP9.3绿色...
[17420]
MAM KY02S PLC 是哪家生产的...
[39089]
请教:MODBUS‘06’单个寄存器写...
[7106]
威纶触摸屏与S7-200 PLC 通讯...
[11456]
PLC的输入口可以当输出口用吗...
[8158]
西门子PLC S7-200∕300∕400∕1...
[8466]
松下plc脉冲控制问题 错误代...
[7197]
用PLC怎样控制伺服电机按正弦...
[7910]
求一个按钮控制电机启停程序
[9344]
官方公众号
智造工程师
客服
小程序
公众号
首页
上一页
1
2
3
4
5
6
下一页
尾页