杯雪盏月
看花羞,几人风流,往事愁来不得收。
级别: 探索解密
精华主题: 0
发帖数量: 140 个
工控威望: 191 点
下载积分: 942 分
在线时间: 61(小时)
注册时间: 2020-11-12
最后登录: 2024-09-24
查看杯雪盏月的 主题 / 回贴
楼主  发表于: 2022-01-10 16:42
图片:
图片:
图片:
如图,我程序上SET I1R2100时,它可以根据我I1的值去置位,但是我写RST I2R2100时它就直接报错了,PLC跳出RUN状态,还报成定位错误,但我那段程序没有关联到定位啊,请教给位前辈,能否指导下我这个是否是写法错误导致的
[ 此帖被杯雪盏月在2022-01-10 17:06重新编辑 ]
山城酒薄不堪饮,劝君且吸杯中月。
18998923978
级别: 探索解密
精华主题: 0
发帖数量: 48 个
工控威望: 112 点
下载积分: 2364 分
在线时间: 71(小时)
注册时间: 2021-10-09
最后登录: 2024-11-06
查看18998923978的 主题 / 回贴
1楼  发表于: 2022-01-10 17:24
留意I2里面的值,看是否超出范围。一般索引寄存器在使用之前是要赋值的,否则可能偏移到未预期的地址上,就会引起错误
18998923978
级别: 探索解密
精华主题: 0
发帖数量: 48 个
工控威望: 112 点
下载积分: 2364 分
在线时间: 71(小时)
注册时间: 2021-10-09
最后登录: 2024-11-06
查看18998923978的 主题 / 回贴
2楼  发表于: 2022-01-10 17:28
引用
引用第3楼杯雪盏月于2022-01-10 17:04发表的  :
刚刚试了下,把RST I2R2100改成RST I1R2100就可以复位,他这是一定要成对的啊(裂开)

不是要成对,是偏移地址的问题。你的程序中RST I2R2100前面有对I2进行+1操作,导致I2的值是变动的,最终结果是I2R2100寻址结果,超出R区
18998923978
级别: 探索解密
精华主题: 0
发帖数量: 48 个
工控威望: 112 点
下载积分: 2364 分
在线时间: 71(小时)
注册时间: 2021-10-09
最后登录: 2024-11-06
查看18998923978的 主题 / 回贴
3楼  发表于: 2022-01-11 08:42
引用
引用第9楼来电自动化于2022-01-10 20:35发表的  :



楼上的意思是10进制与16进制的关系错位了???


与进制没关系,偏移地址与索引寄存器地址内的数据有关系。在使用索引寄存器时,要注意寄存器内数据变化,必要时要先赋值,再使用,避免出现溢出问题。另外,PLC程序执行是循环扫描的,处理数据时要牢记。