回复:关于临时存储区TEMP变量,1200/1500中与300/400临时变量数据保持与清零的变化

Haohaobb

  • 帖子

    1637
  • 精华

    39
  • 被关注

    254

论坛等级:至圣

注册时间:2011-08-25

黄金 黄金 如何晋级?

发布于 2018-07-24 18:12:29

8楼

展开查看
以下是引用我家牛在2018-07-24 17:06:52的发言 >6楼

施耐德也有temp变量,

搞笑的是施耐德的SATA变量是全局共用的,同一个名字。

以下是引用Haohaobb在2018-07-24 13:10:00的发言 >楼主:关于对临时存储区的...

引用楼主详细内容:

关于对临时存储区的使用,对于很多新接触西门子产品的人来说,如果用不好是容易出现一定问题的,因为其存储区的特性,数据无法保持到下一次扫描,所以基本的原则是先赋值后使用。


之前有印象在300/400里面,临时存储区相同的数据是保持上一次写入的数据的,比如

FC1里面使用了LD0,并且写入了数据100,如果程序扫描完FC1,继续扫描FC2,如果FC2只是读取了LD0里面的数据,而读取之前并没有对其赋值,则LD0里的数据依然是100.。因此如果在一个程序块里面,如果使用L存储区之前没有对其进行赋值,那里面的数据可能是很混乱的,因为之前程序不确定是写入的什么数据。这对编程的新手来说如果没有注意到这一点,是可能会造成很多纠结。


但是到了1200/1500,个人猜测可能是西门子出于这方面的考虑,L存储区在每个程序块结束扫描之后都自动清零,比如上面说到的FC1里面LD0里面写了100,但是到了FC2里面,即使使用之前先不赋值,则实际的数据也不会是保持上个程序块写入的数据了,而是自动变成了0,所以个人认为,这应该是plc系统内部自己加了个清零的功能。


貌似临时存储区在主流PLC品牌里面,只有西门子有,如果是用好了,还是能节省一定的功能,方便和简化编程的。

目前为止还没接触过施耐德的,长知识了。

见过三菱和ab的。

天道酬勤
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有15105条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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