各位老师好!在这里再次请教一些问题。
1.在400H系统下,看冗余指南,调用OB36,但是我添加OB36系统会报错,这是为什么?
2在冗余指南中,OB35内要读取I/O,是所有的I/O都要写进去吗?把他们之间的逻辑关系写出来?
3.关于几个冗余的库函数,例如FB450 FB451这些函数,他们的管脚定义是什么?填写在管脚处的字节有什么要求?是随意分配的,还是与冗余I/O相关的?
请各位老师指导,谢谢!!
最佳答案
1.报什么错,你的cpu型号是声明什么?2.OB35对应的PIP1区,IO卡件的刷新周期也设置成PIP1,这里是为了IO卡信号的读写周期和程序的扫描周期一致,所有IO的规格化和采集做到这里 ,逻辑关系可以写在这里也可以在ob36里 3.FB450 451的引脚一个是返回值,一个是故障信息,这两个类型都是word,FB453是查看冗余状态的,只需给IOID和LADDR赋变量即可,其他引脚不是必须,建议每对冗余的卡件都调用1次FB453查看冗余状态
提问者对于答案的评价:
老师您好,CPU是412-5H的。请问我这样理解可以吗。OB35负责采集信号,把AI/DI传递给一个中间变量。OB36负责模板化的输出。
还有 RED_STATUS读取IO冗余状态,LADDR这个管脚的值时怎么计算的。
感谢老师百忙之中的回答!
最佳答案作者回复:
这里ob35 和36的作用是一样的,只是刷新周期不一样,教程中距离ob35 和36中都有编程是为了给读者示例看的,你可以全写在35里,不需要36.
LADDR就是你的冗余io的低地址卡件的起始输入地址,这里是16进制的,如起始地址是512,那么转化为16#200
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc350621.html