申明一下光电编码器(VCC,0v,A,B,Z,屏蔽端子),接法:将A,B脉冲相分别接入I0.0,I0.1,0v接入CPU226的M端,DC24V接在VCC上,不记数,难道接错线了吗?hsc0,模式9。
刚才把PLC 输出24V接上I0.0,I0.1分别试了一下
点一下I0.0,计数1,放开为0;点一下i0.1,计数-1,放开为0
程序如下:
网络1
LD SM0.1
CALL HSC_INIT:SBR1//调用HSC
网络2
LD SM0.1
MOVB 200, SMB34
ATCH INT_0:INT0, 10
----------------------------------------
HSC_INIT:SBR1程序
LD SM0.0
MOVB 16#F8, SMB37 //设置控制位:增计数;4X 速率;已使能;
MOVD +0, SMD38 //装载 CV
MOVD +0, SMD42 //装载 PV
HDEF 0, 9
ENI
HSC 0
------------------------------------------
中断程序(通过编码器计算速度的)
网络1
LD SM0.0
MOVD HC0, VD424
AENO
-D VD420, VD424
AENO
DTR VD424, AC0
AENO
/R 100.0, AC0
AENO
*R 编码器一圈的长度:VD1032, AC0
AENO
MOVR AC0, VD428
AENO
/R 0.2, VD428
AENO
MOVR VD428, VD432
网络2:
LD SM0.0
MOVD HC0, VD420
问题补充:
0V接入CPU226的L端 M(M和1M,2M都联一起)接在VCC上,电脑就连不上PLC了,换一下就能通讯上。
最佳答案
如果你按照我说的操作了 那么就是编码器接线的问题了
或者编码器自身问题
你按照我说的短接说明计数程序没有问题
你在这样试试:
0V接入CPU226的L端 M接在VCC上
另外 0V的M你是否接在L+边上的M 如果接在别的M上 所有M要串联
0v接入CPU226的M端,DC24V接在VCC上\
问题补充 如果短接I0.0 0.1 有计数
但是你的编码器不计数 换一个编码器 应该是编码器出问题了
提问者对于答案的评价:
xixie
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc320955.html