回复:引用了UDT的数据块DB,在UDT修改之后如何更新DB呢?

逐渐变晕

  • 帖子

    136
  • 精华

    2
  • 被关注

    7

论坛等级:侠客

注册时间:2010-11-15

普通 普通 如何晋级?

发布于 2011-10-23 14:04:26

7楼

举个例子吧,
假如DB1块中你引用了UTD1 、UDT2,在DB中UDT1占得字节为2,UDT2也占用了2字节。此时UTD1开始的地址是0.0 而UDT2起始地址为2.0。
现在你要修改UDT1,修改后UDT1大小为3字节了。全部更新后,UDT2的此时的起始地址变为了3.0。
当然PLC程序里引用的都是内存地址,他并不能识别UDT2的起始地址已经变为3.0,还是从2.0开始读,这样就会产生逻辑上的错误,所以那样的的话你PLC程序的每个引用也必须更改,如果UDT1不止UDT2还有UDT3、4、5、6......那更新起来是相当麻烦的,所以我建议重新建一个UDT,而不是去重建DB数据块,直接在DB块最后引用新建的UTD,前面错误的先不要管,当然这样会浪费些内存。
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54658条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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