签到有奖
消息提醒
运维工程师专区
官方商城
点击复制链接
关注该帖后,有多人参加探讨会对您通知与提示!
帖子
精华
被关注
论坛等级:至圣
注册时间:2011-08-25
黄金 如何晋级?
发布于 2018-07-24 18:12:29
8楼
施耐德也有temp变量,
搞笑的是施耐德的SATA变量是全局共用的,同一个名字。
引用楼主详细内容:
关于对临时存储区的使用,对于很多新接触西门子产品的人来说,如果用不好是容易出现一定问题的,因为其存储区的特性,数据无法保持到下一次扫描,所以基本的原则是先赋值后使用。
之前有印象在300/400里面,临时存储区相同的数据是保持上一次写入的数据的,比如
FC1里面使用了LD0,并且写入了数据100,如果程序扫描完FC1,继续扫描FC2,如果FC2只是读取了LD0里面的数据,而读取之前并没有对其赋值,则LD0里的数据依然是100.。因此如果在一个程序块里面,如果使用L存储区之前没有对其进行赋值,那里面的数据可能是很混乱的,因为之前程序不确定是写入的什么数据。这对编程的新手来说如果没有注意到这一点,是可能会造成很多纠结。
但是到了1200/1500,个人猜测可能是西门子出于这方面的考虑,L存储区在每个程序块结束扫描之后都自动清零,比如上面说到的FC1里面LD0里面写了100,但是到了FC2里面,即使使用之前先不赋值,则实际的数据也不会是保持上个程序块写入的数据了,而是自动变成了0,所以个人认为,这应该是plc系统内部自己加了个清零的功能。
貌似临时存储区在主流PLC品牌里面,只有西门子有,如果是用好了,还是能节省一定的功能,方便和简化编程的。
目前为止还没接触过施耐德的,长知识了。
见过三菱和ab的。
请填写推广理由:
AI 小西智伴登场,7×24 小时权威支援,让技术支持告别等待!
助你技有所长,论有所获
首次发帖探讨工控技术话题 立获新人礼包,100中奖哦! (包含周边、书籍、兑奖西币)
共有15105条技术帖
恭喜,你发布的帖子
快扫描右侧二维码晒一晒吧!
再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!
分享
只看 楼主
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!