不同型号的旋转编码器,其输出脉冲的相数也不同,有的旋转编码器输出A、B、Z三相脉冲,有的只有A、B相两相,最简单的只有A相。

如图所示是输出两相脉冲的旋转编码器与FX2N系列PLC的连接示意图。
编码器有4条引线,其中2条是脉冲输出线,1条是COM端线,1条是电源线。
编码器的电源可以是外接电源,也可直接使用PLC的DC24V电源。电源“-”端要与编码器的COM端连接,“+ ”与编码器的电源端连接。
编码器的COM端与PLC输入COM端连接,A、B两相脉冲输出线直接与PLC的输入端连接,连接时要注意PLC输入的响应时间。有的旋转编码器还有一条屏蔽线,使用时要将屏蔽线接地。

说明:本文以三菱FX2N系列PLC与欧姆龙E6B2-CWZ6C型旋转编码器为例,介绍编码器与PLC的硬件接线方式。对于其他系列以及使用高速计数模块时,接线方法要参考该手册说明。而接到某端子对应的计数器号,需要参考《三菱FX编程手册》中关于高速计数器的说明。
一般象你这种情况最好使用高速计数器来采集,因为你最高可能每秒会有100个脉冲,用常规计数器会丢脉冲。
定义高速计数器无外乎下面几个步骤:
1。建一个初始化程序,用SM01控制;
2。在初始化程序中,初始化高速计数器
21 设置控制寄存器(HSC0为SMB37),不同的计数器对应不同的DI点,HSC0为I00,HSC3为I01,HSC4为I02,HSC5为I03(222不支持HSC1和HSC2)
22 执行HDEF指令,你可以用模式0
23 置计数器初始值(HSC0为SMD38),如果从零启动就置零
24 置预置值(HSC0为SMD42),计数器计到这个值可以产生一个中断,一般利用这个中断调用相应的中断程序把当前值(SMD38)复零,否则计数器到头就不再计数了,当然你也可以置一个大点的值,在其他程序中清除当前值(SMD38),确保永远到不了头就可以了。
25 指定中断程序(ATCH),中断事件是12,程序号看你程序了
26 打开中断(ENI),这条指令没有的话,25是不起作用的
27 启动高速计数器(HSC),按前面的初始化,你就要启动HSC0,即N为0
3。程序中读取高速计数器的值,对于HSC0,HC0单元中的内容就是当前的计数值,这个单元只读不能写,你可以通过修改SMD38的内容改变当前的计数值。
不知道这样你是否能理解,不清楚可以给我邮件lijianjc@163com
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)