回复:大批量仪表量程转换(修正版)

柳叶飘飘

  • 帖子

    95
  • 精华

    7
  • 被关注

    194

论坛等级:侠圣

注册时间:2016-12-08

黄金 黄金 如何晋级?

发布于 2017-12-24 17:08:55

39楼

展开查看
以下是引用tyfeixian在2017-12-24 12:16:56的发言 >38楼

在项目中用过这类得方法。结果后期修改程序时太麻烦。有下列几个大坑。


 坑1:DB块有64KB得大小,数据多了需要分DB处理。含义就是下列

    // 量程上限 REAL

    // 量程下限 REAL

    // 修正偏差 REAL

无法存储足够得数量。


坑2:不断得循环处理双极型及报警,浪费CPU资源。

坑3:一次扫描只能处理一个通道,处理完全部通道需要1000个扫描周期。

坑4:既然使用SCL处理通道,就不要在乎复制粘贴了。

坑5:单独增加一个,或删除无法做到。


直接向下列方式处理,不是更好??

    SCALE(IN :=  PIW256 ,I_LIM :=100.0,LO_LIM := 0.0,BIPOLAR := 1 ,OUT :=  DB1.dd0);     //备注  
    SCALE(IN :=  PIW256 ,I_LIM :=100.0,LO_LIM := 0.0,BIPOLAR := 1 ,OUT :=  DB1.dd0);     //备注
    SCALE(IN :=  PIW256 ,I_LIM :=100.0,LO_LIM := 0.0,BIPOLAR := 1 ,OUT :=  DB1.dd0);     //备注
    SCALE(IN :=  PIW256 ,I_LIM :=100.0,LO_LIM := 0.0,BIPOLAR := 1 ,OUT :=  DB1.dd0);     //备注
    SCALE(IN :=  PIW256 ,I_LIM :=100.0,LO_LIM := 0.0,BIPOLAR := 1 ,OUT :=  DB1.dd0);     //备注
   
    SCALE(IN :=  PIW256 ,I_LIM :=100.0,LO_LIM := 0.0,BIPOLAR := 1 ,OUT :=  DB1.dd0);     //备注
    SCALE(IN :=  PIW256 ,I_LIM :=100.0,LO_LIM := 0.0,BIPOLAR := 1 ,OUT :=  DB1.dd0);     //备注
    SCALE(IN :=  PIW256 ,I_LIM :=100.0,LO_LIM := 0.0,BIPOLAR := 1 ,OUT :=  DB1.dd0);     //备注
    SCALE(IN :=  PIW256 ,I_LIM :=100.0,LO_LIM := 0.0,BIPOLAR := 1 ,OUT :=  DB1.dd0);     //备注
    SCALE(IN :=  PIW256 ,I_LIM :=100.0,LO_LIM := 0.0,BIPOLAR := 1 ,OUT :=  DB1.dd0);     //备注


用的是FOR循环所以是一个扫描周期,不是多个扫描周期!需要注意的是一个扫描周期要大于这个FOR循环周期,置于你要增加和删除一个并不影响程序,因为大程序的PIW都是连续的,你只是改了DB块而已而DB可以用EXCEL生成根本就不是问题,若没接线的通道作为备用,若要用到就使用该变量就可以了,说穿了,你的硬件组态好了里面的通道地址就确定了,你再改啥也最多挪个通道而已。你说的64K限制这个是有的,但是你算算64KB得能处理多少个数了。。不够用多使用几个DB就可以了。你说的复制粘贴代码,你的是思路是每次要去改代码,我的思路是我只改数据而不动代码。再有就是你即使复制粘贴就不浪费块的大小么?若多了你要复制多少?而且一个块的大小也是有限制的。当然你看的这个批量处理程序只是我其中的一个,你可以再看看我的另外的一篇文章,将转换后的值单独放在另外的DB块当中的程序。(可以将我的另一个批处理改为FC),还一个个粘贴早就过时了。批量处理是该程序的核心价值。不喜就算了哈,只是发给大家参考交流的。

努力赚钱 养家糊口
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54618条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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