FB100块 STL语言如何转SCL语言

已锁定

暖色coffee

  • 帖子

    28
  • 精华

    0
  • 被关注

    6

论坛等级:游侠

注册时间:2017-11-21

普通 普通 如何晋级?

FB100块 STL语言如何转SCL语言

3756

6

2017-11-24 09:43:51

 

西门子范例里的FB100  PID模拟仿真块  STL语言可读性差,看不懂,求转换SCL语言,或者有源文件

主要这个传递函数求法和公式结合起来看不懂,,自我推断是TM_LAG1== Hvar/(1.0+Hvar)???这个相等表示什么,

哪位大神能帮忙解释或转换SCL可发邮件505568729@qq.com,万分感谢。

1阶

Hvar := rCycle /(2.0*rTmLag1)。    Hvar := ((INV+DISV)*GAIN - sRueck1) * Hvar/(1.0+Hvar)。
OutvNew := sRueck1 + Hvar。 sRueck1 := sRueck1 + 2.0*Hvar。

 

2阶 :Hvar := rCycle /(2.0*rTmLag2)   (为啥要乘以2)

Hvar := (OutvNew – sRueck2) * Hvar/(1.0+Hvar)

OutvNew := sRueck2 + Hvar。

 sRueck2 := sRueck2+ 2.0*Hvar。


附:FB100原块   在step7中,“文件”菜单下点击"打开",选择“样例程序”下的zEn01_13_STEP7__PID-Temp。打开后,拷贝FB100到自己的项目。在OB35中调用FB100,相当于是一个模拟系统,可以仿真您的PID

FB100:process for continious PID control
SET 
SAVE 
= L 24.1
A #COM_RST
JCN M001
L #INV //complete restart routine
T #OUTV //write output data
T #sRueck1 //write static data
T #sRueck2
T #sRueck3
JU M002
M001: L #CYCLE //cycle mode routine
DTR //transform data type
T #rCycle
L #TM_LAG1
DTR 
T #rTmLag1
L #TM_LAG2
DTR 
T #rTmLag2
L #TM_LAG3
DTR 
T #rTmLag3
L #rCycle //limit TM_LAG1
L 5.000000e-001
*R 
L #rTmLag1
TAK 
<r JCN M003
L #rCycle //limit TM_LAG2
L 5.000000e-001
*R 
T #rTmLag1
M003: L #rCycle
L 5.000000e-001
*R 
L #rTmLag2
TAK 
<r JCN M004
L #rCycle
L 5.000000e-001
*R 
T #rTmLag2
M004: L #rCycle //limit TM_LAG3
L 5.000000e-001
*R 
L #rTmLag3
TAK 
<r JCN M005
L #rCycle
L 5.000000e-001
*R 
T #rTmLag3
M005: L 2.000000e+000 //1. lag first order algorithm
L #rTmLag1 //Hvar := rCycle /(2.0*rTmLag1)
*R 
L #rCycle
TAK 
/R 
T #Hvar
L #INV //Hvar := ((INV+DISV)*GAIN - sRueck1) *Hvar/(1.0+Hvar) 
L #DISV
+R 
L #GAIN
*R 
L #sRueck1
-R 
L #Hvar
*R 
L 1.000000e+000
TAK 
T LD 26
TAK 
L #Hvar
+R 
L LD 26
TAK 
/R 
T #Hvar
L #sRueck1 //OutvNew := sRueck1 + Hvar
+R 
T #OutvNew
L 2.000000e+000 //sRueck1 := sRueck1 + 2.0*Hvar
L #Hvar
*R 
L #sRueck1
+R 
T #sRueck1
L 2.000000e+000 //2. first lag order algorithm
L #rTmLag2
*R 
L #rCycle
TAK 
/R 
T #Hvar
L #OutvNew
L #sRueck2
-R 
L #Hvar
*R 
L 1.000000e+000
TAK 
T LD 26
TAK 
L #Hvar
+R 
L LD 26
TAK 
/R 
T #Hvar
L #sRueck2
+R 
T #OutvNew
L 2.000000e+000
L #Hvar
*R 
L #sRueck2
+R 
T #sRueck2
L 2.000000e+000 //3. lag first order algorithm
L #rTmLag3
*R 
L #rCycle
TAK 
/R 
T #Hvar
L #OutvNew
L #sRueck3
-R 
L #Hvar
*R 
L 1.000000e+000
TAK 
T LD 26
TAK 
L #Hvar
+R 
L LD 26
TAK 
/R 
T #Hvar
L #sRueck3
+R 
T #OutvNew
L 2.000000e+000
L #Hvar
*R 
L #sRueck3
+R 
T #sRueck3
L #OutvNew //write output
T #OUTV
M002: CLR 
A L 24.1
SAVE 
BE 

 

  


FB100块 STL语言如何转SCL语言 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54761条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

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