询问个确定位置的问题,具体看帖

[复制链接]
4591|24
 楼主| cumtgirl 发表于 2008-9-22 10:56 | 显示全部楼层 |阅读模式
采用的红外对管进行位置检测,图中0是表盘的心,1和2是待检测的两个位置,在这待检测的两个位置处分别设了两个孔,表盘内正对这两个孔的位置处放了两对红外对管。请问,如何检测才能使误差最小!当指针经过时候,对管会有高电平输出,但是这个高电平是有宽度的。可不可以直接用中断检测高电平的上升沿确定指针到达了该位置?有没有别的好方法<br />&nbsp;<br />&nbsp;<br />
tyw 发表于 2008-9-22 17:35 | 显示全部楼层

参考一下

<br />中断选择边沿触发有好处地有坏处<br />对于较纯净的信号,边沿触发可省去前向信号调理硬件<br />但对于命题环境,可能会有一个临界抖晃脉冲串,这就会让中断多次触发<br />选用电平触发在于采用了适当的信号调理(例如微分+SMT整形,单稳态延时等)可以有效地避开这些干扰.<br />&nbsp;<br />对于相同孔径,指针a1的摆角比a2的要大.因此指针遮挡小孔,a2比a1只需要较小增量.<br />&nbsp;<br /><img src="https://bbs.21ic.com/upfiles/img/200711/2007117174022546.gif"><br /><br />
tyw 发表于 2008-9-22 11:09 | 显示全部楼层

指针若是停在小孔上,会多次进入中断

可以加个RC微分电路来避免这个现象,地道点再加个SMT整形电路<br />小孔的分布园半径大些精度高些
chunyang 发表于 2008-9-22 13:23 | 显示全部楼层

最好将传感器输出用于触发单稳态电路,然后再做中断源

&nbsp;&nbsp;&nbsp;&nbsp;目的就是为了避免临界抖动,楼上的意思也是如此。单稳态电路的时间周期取大于窗口时间(指额定转速下光耦的输出脉宽)但小于最高转速下两个相邻脉冲的间隔时间,后者优先保证。当然,如果处理器速度足够且程序结构合理的话,也可以用软件实现前述功能。
 楼主| cumtgirl 发表于 2008-9-22 13:32 | 显示全部楼层

re

“小孔的分布园半径大些精度高些”<br />为什么呢
chunyang 发表于 2008-9-22 13:56 | 显示全部楼层

是周长和半径的关系啊

  
 楼主| cumtgirl 发表于 2008-9-22 14:36 | 显示全部楼层

‘指针若是停在小孔上,会多次进入中断’

不会吧&nbsp;上升沿触发或下降沿触发而已
 楼主| cumtgirl 发表于 2008-9-22 16:31 | 显示全部楼层

另外

不明白,为什么“小孔的分布园半径大些精度高些”<br />
twz8858877 发表于 2008-9-22 18:05 | 显示全部楼层

不要用这种电路

我已经吃过亏了,表盘旋转速度较快时不会有问题,就怕转速很慢时会有多个脉冲出现,特别是转动时出现震动情况。
谈的元 发表于 2008-9-22 23:05 | 显示全部楼层

呵呵,楼主能否留个QQ,楼上的也留个QQ

  
chunyang 发表于 2008-9-22 23:47 | 显示全部楼层

理论上,任何检测方法都会出现临界情况

处理得当自然不会吃亏。
twz8858877 发表于 2008-9-23 08:56 | 显示全部楼层

re

我原来对居民机械电度表进行改造,做小区集抄系统,上海有家电度表厂的表盘正好有个小孔,大约3mm直径,我就用了一个红外对管,希望将表盘的转动信息取出来,结果在实验室下运行正常,装到现场后,部分出现多计情况,原因就是有些用户用电量很小时且电度表使用年限较长时边缘出现多个脉冲,而且脉冲宽度与间隔有时与正常情况一样,改了很多次算法,还是没能全部消除。
 楼主| cumtgirl 发表于 2008-9-23 09:47 | 显示全部楼层

re

用定时器捕获功能怎样?
tyw 发表于 2008-9-23 10:06 | 显示全部楼层

确实是有点麻烦

有时全家只开了–盏蜡烛灯,电表几乎不转,刚好到小孔时任你多长延时也算不准它.<br />象这类项目只有与电表厂勾结起来搞,问题就简单多了
chunyang 发表于 2008-9-23 11:06 | 显示全部楼层

告诉大家一个诀窍

&nbsp;&nbsp;&nbsp;&nbsp;这类检测要用双传感器,不论反射式还是透射式,双传感器的位置布置有讲究,任何条件下同一时刻只能有一个传感器导通,原理和处理工艺应该不用多讲了吧,留给有心者思考。<br />&nbsp;&nbsp;&nbsp;&nbsp;楼主的图示开了两个孔,我以为已有这方面的考虑,看来还不是,要好好动动脑筋。<br />&nbsp;&nbsp;&nbsp;&nbsp;如果是改造电表,无论开孔还是喷涂色标,都要和厂家协同,因为自行处理会影响电表精度,也会破坏铅封,行业规则是不允许的。最佳的改造方法是在轴上加个开了十字槽的圆形遮光片,然后用双透射传感器呈45度排列,这是十几年前我的“发明”,这种结构完全对称,转矩也很小,仅靠微微调节电表本身已有的机械校正装置即可保证原设计精度且毫无附加影响,同时这种结构不但可以避免边沿干扰问题,还能判读出转盘运转方向甚至可以计算得出瞬时功率。如果现在还有人要做类似的设计/产品等,不妨考虑用这招,不过记得是俺老汉的“提醒”哦……
杨真人 发表于 2008-9-23 12:16 | 显示全部楼层

哎,都在瞎子摸象...

帖子我看过了……<br />8楼的图解:a2的精度要比a1高。<br /><br />抖动是难免的。事实上需要软硬件结合。硬件方法我已经在QQ里提到过。但是仪表太小,实现起来不容易.<br /><br />楼主这个是医疗用表针式血压计。指针好象是游标卡尺那样的表针。具体我没数。楼主也没交代。
 楼主| cumtgirl 发表于 2008-9-24 14:29 | 显示全部楼层

re

对你这结果感兴趣:“最佳的改造方法是在轴上加个开了十字槽的圆形遮光片,然后用双透射传感器呈45度排列“具体是什么样子?<br />单从描述还有不解。关键是看你说的这种结构可以避免边沿干扰!
linjing 发表于 2008-9-24 20:57 | 显示全部楼层

楼主的要求没太看明白,不过要记数最可靠的还用两个传感

两个传感器,&nbsp;表盘上开一个孔,在中心对称的位置上放两对检测管,用干簧管也行,在表盘上装一个磁体,在中心两边放两个干簧管,&nbsp;<br /><br />输出接到一个R-S触发器上,嗯,可能是R-S触发器吧,不用延时去抖,触发器本身就是去抖用的。<br /><br />用程序则可以如下<br />while(1){<br />&nbsp;&nbsp;while(&nbsp;第1个传感器没信号&nbsp;){}<br />&nbsp;&nbsp;while(&nbsp;第2个传感器没信号&nbsp;){}<br />&nbsp;&nbsp;计数器++<br />}<br />
sinanjj 发表于 2008-9-24 21:16 | 显示全部楼层

也没看明白chunyang 前辈说的

不过解决方法很明确了----加限制.&nbsp;<br /><br />chunyang&nbsp;前辈是在轴上加限制---------轴不太会振吧<br /><br />同样可以考虑加其他限制,&nbsp;比如时间:&nbsp;接收一次信号后多长时间后的信号才有效,&nbsp;这个看具体应用了.&nbsp;注意应用的特点.<br /><br />最搞的就是12楼,&nbsp;想法在算法上该进
chunyang 发表于 2008-9-25 00:28 | 显示全部楼层

我所说的是针对机械式电度表的改造方法

&nbsp;&nbsp;&nbsp;&nbsp;沿抖动是无法消除的,但我说的那个结构可以不受沿抖动的影响,脉冲计数是基于两个传感器分别产生的顺次脉冲,其中一个再抖又有什么关系?处理器只需记录脉冲事件是否产生即可,两个传感器的脉冲发生事件即为一个真正的计数脉冲。<br />&nbsp;&nbsp;&nbsp;&nbsp;附加装置加在轴上不是为了什么“振不振”的问题,而是为了取得一个较小且均匀的转矩,这样不会影响原结构的精度,这种方法主要是提供给电表生产厂以很低的成本即可在原有机械式产品上实现脉冲输出功能。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

140

主题

293

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部