设为首页收藏本站积分获取及使用技巧附件上传须知[求助-西门子PLC300/400]S-300 FP,FN 为什么要给他位地址

追梦工控论坛|工控论坛-专业的Intouch论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始


总共8066条微博

动态微博

站内全文搜索,由百度和追梦工控论坛合作提供
查看: 6493|回复: 3

[求助-西门子PLC300/400]S-300 FP,FN 为什么要给他位地址

[复制链接]

升级  35%

该用户从未签到

发表于 2014-3-26 19:58:26 | 显示全部楼层 |阅读模式

上传分享工控资料得追梦点,下载积分获取办法点击进入 ☆追梦点充值入口
发帖回帖赚金币兑换下载积分。上传附件须知点击进入

×

马上注册,结交更多工控达人,分享经验,让你轻松玩转追梦工控论坛。

已有帐号?  点击登录   或者        

支付宝扫一扫领红包
A #relay_dimming_e //每秒减2
A M 0.5
FP M 12.1
JNB _002
L #dimming_scale
L 2
-I
T #dimming_scale
_002: NOP 0</P>M0.5是一秒脉冲
上升沿触发
M12.1 为什么加啊
这样,如果这段程序做成FC,多次调用,岂不是我要给每个FC定义上升沿的位地址。
求大神啊!改进改进吧。

        问题补充:
各位大神,我把这个FC改成FB,然后全部的temp全部改成STAT,大神觉得可行么?
上升沿那个我已经懂了,谢谢大神么啊!!

让我们联手拒绝网络伸手党,下载积分获取办法&附件上传须知 ☆追梦点充值入口






+1
6496°C
3
  • vgocaxg
  • qoevdav
  • liudazhi222
过: 他们

升级  35%

该用户从未签到

发表于 2014-3-26 20:33:15 | 显示全部楼层
1、M12.1 为什么加啊?
因为FP,FN需要两个扫描周期才能完成的指令,系统需要将RLO状态为与前一个周期获得的结果进行比较,才能确定是RLO状态是否有变化,即确定是否有跳变。那么必须将前一个周期的RLO状态存入一个边沿标志地址中,例如M12.1 中。
2、必须给出这个边沿标志地址。
3、见:
《用于S7-300 和S7-400 的语句表(STL)编程手册》下载:
http://www.ad.siemens.com.cn/download/SearchResult.aspx?searchText= 1008
                                                                                                                                                                                                                                                              
                                                        

升级  33%

该用户从未签到

发表于 2014-3-26 21:23:08 | 显示全部楼层
西门子天生的啊,没办法呀!可能这也体现了它们的严谨*。
                                                                                                                                                                                                                                                                                                                                   
                                                                                                                                                                                                            1、因为你的程序可能是100ms扫描一次,那么如果不加上升沿判断的话,那么m0.5为1的时候“
      L     #dimming_scale
      L     2
      -I   
      T     #dimming_scale
这部分程序就被执行了5次,很显然这不是你想要的。所有用上升沿检测来做。
2、把fc改成fb用stat变量保存上升沿是可以的。
                                                                                                                                                                                                                                                                                                                                   
                                                                                                                                                                                                            西门子上升下降沿除了临时变量不能使用外,其他位变量如M,共享数据块数据,FB内定义的静态变量等等都可以使用,把FC改成FB将Temp变量改成静态变量可行没有问题,其实FB内也可以定义Temp变量
对于temp变量做到先赋值后使用就不会岀错,且不能用于上升下降沿,

升级  12.5%

  • TA的每日心情
    奋斗
    2016-3-5 08:32
  • 签到天数: 2 天

    [LV.1]工兵

    发表于 2016-3-5 08:27:23 | 显示全部楼层
    都是大神吗 顶礼膜拜

    评分

    参与人数 1金币 -3 收起 理由
    黑羽盗一 -3 请认真回帖!

    查看全部评分

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    请珍惜自己的ID,严禁发布垃圾水贴,诸如adsf......顶......纯表情......多次重复回帖刷积分......轻则删帖警告,重则封禁!★请分享资料、经验或者赞助论坛,贡献一份力量★

    关闭

    最新活动上一条 /1 下一条

    小黑屋|手机版|追梦工控论坛|工控论坛-专业的Intouch论坛 ( 皖ICP备10012005号 )|网站地图

    GMT+8, 2024-6-14 13:48 , Processed in 0.103351 second(s), 35 queries , Gzip On, APCu On.

    Created by 工控论坛

    Copyright © 2001-2021, Tencent Cloud & Dreamyiyi.

    快速回复 返回顶部 返回列表