发表于:2021/3/28 16:30:35
#0楼
本人在学校学过一段时间PLC,准备用它做毕业设计,程序中有一段是使用指针在一段地址中循环存储数据(VB100—VB109),模拟时发现了这个问题,困扰了我一天,情况是这样的:
首先程序编译没问题,初始运行前几位写入也没有问题,但是后面到了最后几位或者再次循环的前几位开始,就再也无法写入数据了,不一定是哪一位开始,这是最困扰我的,后来在监控运行的过程中我无意间检查看了PLC状态,发现里面的非致命错误中显示了间接寻址错误(如图1),我查看帮助说是可能是在程序执行过程中被改为一个指向超出范围的地址(如图三),这是什么意思没看懂。
另外在后面几次模拟时,我着重又关注了PLC状态,有时候数据写入出错时,会显示间接寻址错误,有时又不显示。
后来我把这一段程序单独拿出来运行,监控了十几分钟也没出错!!??
这是什么原因啊啊啊啊啊?求大佬指点迷津或者给点思路也行!!!!
注:图二的程序就是在PLC状态中提示的间接寻址错误发生的位置。就是这一段,我没看出有什么问题啊!!!
首先程序编译没问题,初始运行前几位写入也没有问题,但是后面到了最后几位或者再次循环的前几位开始,就再也无法写入数据了,不一定是哪一位开始,这是最困扰我的,后来在监控运行的过程中我无意间检查看了PLC状态,发现里面的非致命错误中显示了间接寻址错误(如图1),我查看帮助说是可能是在程序执行过程中被改为一个指向超出范围的地址(如图三),这是什么意思没看懂。
另外在后面几次模拟时,我着重又关注了PLC状态,有时候数据写入出错时,会显示间接寻址错误,有时又不显示。
后来我把这一段程序单独拿出来运行,监控了十几分钟也没出错!!??
这是什么原因啊啊啊啊啊?求大佬指点迷津或者给点思路也行!!!!
注:图二的程序就是在PLC状态中提示的间接寻址错误发生的位置。就是这一段,我没看出有什么问题啊!!!