例如一个编码器的ABZ3根线接到PLC的DI+0.0,DI+0.1,DI+0.2,第二个编码器的ABZ接到PLC的DI+1.0,DI+1.1,DI+1.2,第三个编码器的ABZ接到PLC的DI+2.0,DI+2.1,DI+2.2,那么是不是第一个编码器就用I0.2作为条件,来使计数器加1,得出编码器旋转了1圈吗?其他依此类推吗?读取脉冲数的话都用Sfb47,只是DB块号码不一样吗?例如sfB47,DB1对应编码器1,SFB47,DB2对应编码器2,SFB47,DB3对应编码器3?启动条件(即WATE门端子不一样,就可以分别启动吗?)另外S7300中上电后只执行扫描一次的指令是哪个指令?
问题补充:
后面的几个问题,麻烦大家解答一下吧,谢谢。我是用314作高速计数读取脉冲,用Z相上升沿来增计数得出旋转了几圈了。
最佳答案
1.314共有4个计数器通道计数频率最大可达60KHZ,第二个编码器的ABZ应接到PLC的DI+0.3,DI+0.4,DI+0.5,而不是DI+1.0。以此类推。
2.读取都可以用SFB47,DB块不同就可以,这个你说的是对的。
3.启动条件是SFB47中的“SW_GATE”输入为1,开始计数,输入为0,停止计数,计数数值保持不变,直到“SW_GATE”输入再次为1,计数值再次从0开始记起。上传图为SFB47的简单编程。
4.在OB100里的所有编程上电后只执行扫描一次。
图片说明:
提问者对于答案的评价:
谢谢!