您现在所在的是:

PLC论坛

回帖:14个,阅读:8236 [上一页] [1] [2] [下一页]
1859
yyddyym
文章数:201
年度积分:50
历史总积分:1859
注册时间:2007/10/4
发站内信
发表于:2012/7/27 19:56:38
#0楼
如题,要是在程序里把寄存器里的数转移后清零,由于程序扫描的延迟丢失的脉冲如何处理?
1859
yyddyym
文章数:201
年度积分:50
历史总积分:1859
注册时间:2007/10/4
发站内信
发表于:2012/7/27 20:15:03
#1楼
请教高手
1859
yyddyym
文章数:201
年度积分:50
历史总积分:1859
注册时间:2007/10/4
发站内信
发表于:2012/7/28 11:54:57
#2楼
是我描述得不太清楚么
44016
YXBK 版主
文章数:20152
年度积分:1395
历史总积分:44016
注册时间:2007/4/14
发站内信
2015论坛优秀版主
2015春节活动
2013论坛优秀版主
2012论坛优秀版主
发表于:2012/7/29 8:20:11
#3楼
是要清零计数器吗?
大家一起学习
1859
yyddyym
文章数:201
年度积分:50
历史总积分:1859
注册时间:2007/10/4
发站内信
发表于:2012/7/29 21:59:46
#4楼
感谢版主回复,是清零,PLC里用于编码器计数应该是硬件计数吧,跟程序扫描无关,我指的是当需要计的脉冲超过一个32位寄存器的最大值,就需要把它保存到另一个寄存器,然后清零,但这些操作是在程序里执行的,当执行这些操作时脉冲没有停止,那不是就会出现计数不准?
1859
yyddyym
文章数:201
年度积分:50
历史总积分:1859
注册时间:2007/10/4
发站内信
发表于:2012/7/29 22:03:28
#5楼
好像单片机里有计数中断,可以中断里执行,PLC里要如何做?
776
learndozen
文章数:5
年度积分:50
历史总积分:776
注册时间:2011/9/20
发站内信
发表于:2012/7/29 22:48:01
#6楼
32位的计数器的数值是非常大的,估计你没那么容易搞得它溢出,如果真有,不妨要以这样:
拿16位的举例,因为32位的数太大了
16位如果是正负计数的话,拿32000与当前值作比较,如果超过该值则立刻将值移出,然后复零就不担心溢出的问题了
1859
yyddyym
文章数:201
年度积分:50
历史总积分:1859
注册时间:2007/10/4
发站内信
发表于:2012/7/30 14:34:06
#7楼
回楼上,我现在的问题就指的是你移除到复零,需要一定的扫描时间,要是计数脉冲快过程序的扫时间,不是会丢脉冲的么
匿名用户
文章数:N/A
年度积分:0
历史总积分:0
注册时间:2012/3/16
发站内信
发表于:2012/7/30 16:11:59
#8楼
该用户被锁定,回复内容不予显示!
1859
yyddyym
文章数:201
年度积分:50
历史总积分:1859
注册时间:2007/10/4
发站内信
发表于:2012/7/31 9:28:54
#9楼
回楼上,只是讨论下这个情况,并不是实际遇到的问题

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2025 Gkong.com, All Rights Reserved

78.0005