阮子
级别: 工控侠客
精华主题: 0
发帖数量: 662 个
工控威望: 4416 点
下载积分: 5359 分
在线时间: 250(小时)
注册时间: 2009-12-27
最后登录: 2015-10-29
查看阮子的 主题 / 回贴
楼主  发表于: 2011-11-06 15:59
大家好,我是一个刚开始学习S7-300编程的菜鸟,想请问一下大家在功能块FB的局部变量声明表中,OUT与IN_OUT的问题。就是在什么情况最好把参数写在OUT下,什么情况下最好把参数写在IN_OUT下。(我是用一个星三角启动停止例子来练习的,但是不管我是把三个输出全放在OUT内,或者是三个都放在IN_OUT内,还是一个放在OUT内另外两个放在IN_OUT,在程序仿真的时候都看不来有什么区别),希望大家能帮忙给我解释一下,谢谢

cvlsam
富士低压,POD(觸摸屏),PLC专卖
级别: VIP会员

精华主题: 3 篇
发帖数量: 6769 个
工控威望: 38370 点
下载积分: 2965 分
在线时间: 9505(小时)
注册时间: 2006-09-13
最后登录: 2024-11-18
查看cvlsam的 主题 / 回贴
1楼  发表于: 2011-11-06 16:42
OUT   输出变量,对于FB来说,其相当于只写变量
IN_OUT   输入输出变量,对于FB来说,其相当于读写变量。

如果你有高级语言的编程经验,那么IN_OUT变量相当于地址传递,其向FB传递的是地址,而非值。

当你仅仅需要FB向你输出一个变量的值时,你可以选用OUT变量,而当你需要这个值不仅仅要输出,并且要参与下一次的运算时,应选用IN_OUT.
本帖最近评分记录:
  • 下载积分:+5(阮子) 热心助人
    gpp0603
    静水无为
    级别: 略有小成
    精华主题: 0
    发帖数量: 251 个
    工控威望: 327 点
    下载积分: 10094 分
    在线时间: 212(小时)
    注册时间: 2009-11-12
    最后登录: 2024-11-16
    查看gpp0603的 主题 / 回贴
    2楼  发表于: 2011-11-06 17:18
    学习了
    阮子
    级别: 工控侠客
    精华主题: 0
    发帖数量: 662 个
    工控威望: 4416 点
    下载积分: 5359 分
    在线时间: 250(小时)
    注册时间: 2009-12-27
    最后登录: 2015-10-29
    查看阮子的 主题 / 回贴
    3楼  发表于: 2011-11-06 19:28
    引用
    引用第1楼cvlsam于2011-11-06 16:42发表的  :
    OUT   输出变量,对于FB来说,其相当于只写变量
    IN_OUT   输入输出变量,对于FB来说,其相当于读写变量。

    如果你有高级语言的编程经验,那么IN_OUT变量相当于地址传递,其向FB传递的是地址,而非值。

    .......

    感谢你的详细解释,谢谢
    recoiler
    级别: 探索解密
    精华主题: 0
    发帖数量: 8 个
    工控威望: 127 点
    下载积分: 621 分
    在线时间: 38(小时)
    注册时间: 2011-08-20
    最后登录: 2017-10-03
    查看recoiler的 主题 / 回贴
    4楼  发表于: 2011-11-06 23:33
    学习了
    hanqin
    级别: 论坛先锋
    精华主题: 0
    发帖数量: 1237 个
    工控威望: 1226 点
    下载积分: 2922 分
    在线时间: 925(小时)
    注册时间: 2009-01-09
    最后登录: 2023-10-27
    查看hanqin的 主题 / 回贴
    5楼  发表于: 2011-11-07 08:40
    很有道理。