您现在所在的是:

单片机论坛

回帖:2个,阅读:955 [上一页] [1] [下一页]
5140
liguoxing
文章数:1691
年度积分:56
历史总积分:5140
注册时间:2006/4/21
发站内信
发表于:2008/8/13 9:33:00
#0楼
有个难题我始终不能解开,望单片机高手们指点迷津.
本人想实现在一块89C51的单片机上实现可设置系数的计数测速仪,在计数方面已解决,但在测速上还没个头绪.
功能要求:计数和测速的设置系数均为0.001~2.000.被测信号频率范围为2~166Hz[用来测量马达的转数(120转/分~9999转分之间)和定型机上的出布速度---也就是车速(0~9999米/分).显示的值为0~9999个计数值和0~9999转/分钟(每转一个信号脉冲)
举例:
      若实际脉冲个数为50,设置系数为0.440,则显示的计数值50*0.440=22
      若实际的测速值为1000转/分种,设置系数为1.220.则显示的测速值为1000*1.220=1200个/分钟
计数方面的实现办法为:

每个的信号脉冲引发INT0中断,并加一次所设计数系数的值,如0.440.则当3个信号时所累计的值为0.440+0.440+0.440=1.32,则显示1,当10个信号时内存值为4.4,而显示值为4.


现在问题因为被测信号的频率很低,只有2~100Hz,那么若按每秒钟的脉冲个数来计算测速的办法,精确度极低.所以需要用测量被测信号的间隔时间值来计算,计算的公式为:(60/脉宽时间)*设置系数=[60,000,000/脉宽值(10,000uS~50,000uS之间)}*设置系数
问题是用上面的公式能精确的计算出每分钟的转速,但由于计算量太大了,象这样的8位单片在计算象10mS的信号时,光计算一次转数值就估计要花几秒时间,这样设计出来的是不实用的.

所以烦请哪位高手指点一下.


[此贴子已经被作者于2008-8-13 9:35:50编辑过]
呜呜。我没有个性化Logo,谁能帮我设计个?拜托啦。
1392
lgx1213
文章数:249
年度积分:50
历史总积分:1392
注册时间:2003/9/4
发站内信
发表于:2008/8/22 22:13:00
#1楼
《电子报》今年介绍过一篇长度测量的案例,可以去参考一下!
全球第一本<单片机技术应用>电子杂志,欢迎免费下载!
WWW.MCU-SYS.COM
5140
liguoxing
文章数:1691
年度积分:56
历史总积分:5140
注册时间:2006/4/21
发站内信
发表于:2008/8/24 14:27:00
#2楼
谢谢斑竹指点
呜呜。我没有个性化Logo,谁能帮我设计个?拜托啦。

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

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

31.2002