S7-200plc中的高速计数器为何没法识别编码器的脉冲
我编码器(A/B相)来计算电机拖动皮带使皮带运动的位移。A相接I0.0,B相接I0.1。高速计数器使用HC0模式为9,发现编码器转轴在旋转时,高速计数器根本就没有计数。主...
我编码器(A/B相)来计算电机拖动皮带使皮带运动的位移。A相接I0.0,B相接I0.1。高速计数器使用HC0模式为9,发现编码器转轴在旋转时,高速计数器根本就没有计数。
主程序为:
网络1:
LD SM0.1
R Q0.0, 1
CALL 高速计数器初始化:SBR1
网络2:
LDD>= HC0, 50000
S Q0.1, 1
子程序为:
LD SM0.0
MOVB 16#F8, SMB37 //设置控制位:增计数;4X 速率;已使能;
MOVD +0, SMD38 //装载 CV
MOVD 30000, SMD42 //装载 PV
HDEF 0, 9
ATCH COUNT_EQ:INT1, 12 //中断程序 COUNT_EQ:HC0 的 CV = PV
ENI
HSC 0
中断子程序为:
LD SM0.0
S Q0.0, 1
下载运行后,进行状态监控,我发现编码器在旋转时,高速计数器根本没有在计数。因为我状态监视,发现HC0与SMD38的值一直为0,为什么会这样呢????
之后:
我把模式改为0,(就是忽略编码器B相得输入,但是B相仍然与I0.1连接)这时候我在状态监测上发现,转动编码器时,HC0有在计数,但是SMD38这个当前值一直为0,根本没有发生变化)
当我仍然用模式0,但是编码器B相没有与I0.1连接,只有A相与I0.0连接,这时候下载运行,发现HC0的值没有在变化,一直为0,SMD38这个当前值也一直为0。
为什么这两种情况,HC0的值,一种有发生变化,一种确一直为0呢???还有为何SMD38一直为0????
这三个问题困扰我好几天,希望高手们帮帮我。
我用的是S7-200 CPU:224
编码器有6根线。
编码器与PLC 的连接方式为:
编码器A相接PLC的I0.0 编码器B相接PLC的I0.1
编码器Z悬空 编码器的屏蔽线悬空
编码器的地线接PLC的M端 编码器的电源线接PLC的L+端
PLC的M端与1M端连接 展开
主程序为:
网络1:
LD SM0.1
R Q0.0, 1
CALL 高速计数器初始化:SBR1
网络2:
LDD>= HC0, 50000
S Q0.1, 1
子程序为:
LD SM0.0
MOVB 16#F8, SMB37 //设置控制位:增计数;4X 速率;已使能;
MOVD +0, SMD38 //装载 CV
MOVD 30000, SMD42 //装载 PV
HDEF 0, 9
ATCH COUNT_EQ:INT1, 12 //中断程序 COUNT_EQ:HC0 的 CV = PV
ENI
HSC 0
中断子程序为:
LD SM0.0
S Q0.0, 1
下载运行后,进行状态监控,我发现编码器在旋转时,高速计数器根本没有在计数。因为我状态监视,发现HC0与SMD38的值一直为0,为什么会这样呢????
之后:
我把模式改为0,(就是忽略编码器B相得输入,但是B相仍然与I0.1连接)这时候我在状态监测上发现,转动编码器时,HC0有在计数,但是SMD38这个当前值一直为0,根本没有发生变化)
当我仍然用模式0,但是编码器B相没有与I0.1连接,只有A相与I0.0连接,这时候下载运行,发现HC0的值没有在变化,一直为0,SMD38这个当前值也一直为0。
为什么这两种情况,HC0的值,一种有发生变化,一种确一直为0呢???还有为何SMD38一直为0????
这三个问题困扰我好几天,希望高手们帮帮我。
我用的是S7-200 CPU:224
编码器有6根线。
编码器与PLC 的连接方式为:
编码器A相接PLC的I0.0 编码器B相接PLC的I0.1
编码器Z悬空 编码器的屏蔽线悬空
编码器的地线接PLC的M端 编码器的电源线接PLC的L+端
PLC的M端与1M端连接 展开
3个回答
展开全部
smd38放的是设定的当前值,不是目前的当前值,没有变化是对的。编码器脉冲是要先转换为整数或者实数,然后存在某个位置
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
上海巴鲁图工程机械科技有限公司_
2022-05-15 广告
2022-05-15 广告
增量编码器一般输出信号是两路正交脉冲信号和一路参考信号,之所以叫增量是因为它的位置信号是通过对脉冲计数累加得到,依靠计数设备的内部记忆来记住位置,并且同每圈输出的参考信号来清除累计误差. 缺点就是断电后,需要重新寻找初始位置. 例如打印机扫...
点击进入详情页
本回答由上海巴鲁图工程机械科技有限公司_提供
展开全部
监控SMD38的值一直为0很正常,这个地址只是为了设定当前计数值,监控计数是在HC0,只要HC0有计数就正常。
至于楼主遇到的问题,我也很不解,程序是没有问题的,等待高手来回答
至于楼主遇到的问题,我也很不解,程序是没有问题的,等待高手来回答
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我同样遇到这问题,调用激动计速器,再给计数器SMB37赋值16#89就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询