博图报关于数据长度错误的思考-------写给初学者

已锁定

聿舟工控

西门子1847工业学习平台

  • 帖子

    201
  • 精华

    2
  • 被关注

    4

论坛等级:侠士

注册时间:2018-05-04

黄金 黄金 如何晋级?

博图报关于数据长度错误的思考-------写给初学者

5248

5

2019-12-05 17:20:16

       今天,公司新来的同事提出一个问题,就是在FB块中建一个数组,用冒泡法做个简单的程序,总是报FB数据长度错误,PLC即刻停机。如图是程序和PLC诊断。

      其实这是个简单的错误,本没有必要再次分享,但在网上搜了一下,答案要么太笼统,要么没人理会。基本没有初学者满意的回复。

       对于高手来说,不可能犯这样的错误;对于刚接触博图和SCL语言的初学者来说,本身不是很明白一些概念,这样的程序写出来,看着没有一点问题,就是不能运行。让许多初学者很郁闷,PLC怎么这么麻烦。失去了继续学习的兴趣。

     今天贴出来,希望高手不要见笑。希望初学者增强信心,继续努力学习!

       这个问题的根本不在于数组在那建立,不在于for循环的语法问题。而在于冒泡法做循环时一定注意下表不能超过已建数组的最大下表。

      像此问题,数组下表是0-3,当循环+1时,3+1=4,数组最大下表就访问到Any_out[4],二这个是数组没有定义的。所以无法访问的地址。这是初学者在使用SCL编程时,在数组、结构体、循环、引用等经常容易忽视的。有的初学者觉得S7-300有模拟器,随便建硬件组态,而模拟时不看硬件的地址,随便写个地址,模拟就会出现同样的错误。希望谨记

    

捕获.PNG

捕获2.PNG


博图报关于数据长度错误的思考-------写给初学者 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1500系列

共有11101条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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