SCL语言数据查找

已锁定

fivvyl02013-06-07 17:28:33

  • 帖子

    3
  • 精华

    0
  • 被关注

    5

论坛等级:新手

注册时间:2013-03-10

普通 普通 如何晋级?

SCL语言数据查找

931

0

2017-09-16 09:04:29

展开查看
引用自找答案,问题ID:173224

找出这两个数组中相同编号且启动值=1的个数。

提问者:fivvyl02013-06-07 17:28:33


Setrarin 回答道:

“起始值”的定义 :

用户需定义变量的起始值,CPU 启动后将应用此起始值。 
保持性变量具有特殊状态。只有在“冷启动”之后,保持性变量才会采用所定义的起始值。“暖启动”之后,这些变量会保留自身的值,不会复位为起始值。
通过程序只能比较当前值,当前值并不一定等于起始值。
比较当前值的程序:
#count := 0;
FOR #i := 1 TO 10 DO
    IF "DB".A[#i]="DB".A[#i] AND "DB".A[#i] = 1 THEN
        #count := #count + 1;
    END_IF;
END_FOR;

补充:

对于PLC而言,比较1000个,甚至10000个都是小case的事情,更关键的是人更写出来精炼可复用的代码出来。你不会是担心PLC受累吧?PLC本身就在不停的执行程序的,只要执行的循环周期不是太长,都没关系的。这个比较程序,可能连1ms都用不到。

还有3人在找答案上回答了该问题,查看全部>
这是用PLC的SCL语言FOR指令实现指定数据查找的小程序,欢迎大家一起探讨,互相学习,共同进步!
SCL语言数据查找 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有15095条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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