您现在所在的是:

西门子SIEMENS

回帖:2个,阅读:1831 [上一页] [1] [下一页]
677
非人勿语
文章数:2
年度积分:50
历史总积分:677
注册时间:2012/11/15
发站内信
发表于:2013/7/26 18:03:51
#0楼
300PLC,主程序OB1及两个子程序FC1.FC2,各如下:
附件
附件
附件
其中FC1中"#a1"为临时变量,用PLCSIM仿真,结果如下:
附件
不明白FC1中的m0.1为何一值接通,试过将#a1用实际M点代替,则m0.1正常不通,删除FC2或在FC2中
加入一个临时变量,再仿真,则m0.1变回正常不通,求师傅解疑,谢谢
38110
cvlsam 版主
文章数:12488
年度积分:721
历史总积分:38110
注册时间:2001/12/22
发站内信
2018论坛贡献奖
2017论坛贡献奖
2016论坛贡献奖
2015论坛贡献奖
2013论坛贡献奖
2012论坛贡献奖
2011论坛贡献奖
2011国庆活动
2010论坛杰出贡献奖
发表于:2013/7/26 19:42:20
#1楼
FC中的临时变量需要遵循先赋值后使用的原则。

西门子在Fc调用完毕后并不负责清除临时区内容。

例如:Fc1有2个临时变量,Fc2也有两个临时变量。
首先调用Fc1,两个临时变量的值分别为10,20,调用完毕后,临时区被系统收回并重新分配。
此时调用Fc2,Fc2如果不遵循先赋值后使用的原则,那么Fc2将的临时变量将使用10,20作为其值。

Good Luck~
11823
gzg_00
文章数:8996
年度积分:50
历史总积分:11823
注册时间:2009/10/1
发站内信
发表于:2013/7/26 20:27:08
#2楼
以下是引用cvlsam2013/7/26 19:42:20的发言:
FC中的临时变量需要遵循先赋值后使用的原则。

西门子在Fc调用完毕后并不负责清除临时区内容。

例如:Fc1有2个临时变量,Fc2也有两个临时变量。
首先调用Fc1,两个临时变量的值分别为10,20,调用完毕后,临时区被系统收回并重新分配。
此时调用Fc2,Fc2如果不遵循先赋值后使用的原则,那么Fc2将的临时变量将使用10,20作为其值。

Good Luck~
C大分析让人恍然大悟
+10

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2025 Gkong.com, All Rights Reserved

46.8003