打印

用霍尔检测直流电机转数丢脉冲

[复制链接]
7171|25
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
chenyongand|  楼主 | 2010-12-22 11:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

      我这需要控制电机的行程,现在采用的方法是用霍尔在电机轴上检测转数,但实际运行中,可能要丢脉冲。
      假如我电机转100个圈,从起点走到终点,这个起点和终点的位置 是固定的,但是某一次,从起点运行后,丢了一个脉冲,但程序控制中仍然要检测到100个脉冲才判断到位置,这样的话,就比以前的终点多走了一个脉冲,再返回的时候,如果又不丢脉冲了,就会离起点差一个脉冲才停下,也就是没到位置就停了,时间长了,几个月或者一年两年的,起点和终点就会与原先设定的相差一截。

      怎么避免这个问题??

      不要增加行程开关来纠正,因为电机只是引出了霍尔信号线到控制盒,可以改动控制板,增加几个电气元件,或者改变程序思路之类的。

相关帖子

沙发
maychang| | 2010-12-22 11:12 | 只看该作者
你的方法,类似于用增量编码器检测,只是比增量编码器更不可靠。
增量编码器有个位置信号,每转一圈输出一个脉冲,这样就不会产生累积误差。但掉电后重新上电,在轴没有转到产生该位置信号之前读数是不确定的。
要绝对不会产生误差,只能用绝对编码器。

使用特权

评论回复
板凳
hxy6951| | 2010-12-22 11:49 | 只看该作者
为什么会丢?是磁钢和霍尔安装的位置有差异,还是电机转速过快霍尔反应速度不够,还是程序对霍尔信号的处理有问题。

使用特权

评论回复
地板
受不了了| | 2010-12-22 12:16 | 只看该作者
霍尔的响应速度极其快的,肯定是你程序有问题

使用特权

评论回复
5
受不了了| | 2010-12-22 12:21 | 只看该作者
本帖最后由 受不了了 于 2010-12-22 12:23 编辑

实在不行用大点的磁铁。楼主的设计也有点安全隐患,这样的机构一般前后都有限位开关的

使用特权

评论回复
6
armtft| | 2010-12-22 12:41 | 只看该作者
也有可能是一点点干扰,导致。

需要软硬件配合的。

使用特权

评论回复
7
chenyongand|  楼主 | 2010-12-22 16:14 | 只看该作者
4# 受不了了
那么在写程序的时候,要注意些什么问题呢???
我那霍尔接的是mcu的外部中断引脚,边沿触发中断。

使用特权

评论回复
8
chenyongand|  楼主 | 2010-12-22 16:17 | 只看该作者
6# armtft
可否说的详细点,我那电机的霍尔到控制板是三根线线连接的,(电源,地,信号线),长度大概在20cm左右。
软件硬件上具体有哪些需要注意?

使用特权

评论回复
9
chenyongand|  楼主 | 2010-12-22 16:19 | 只看该作者
2# maychang
换编码器成本太大了,领导很相中这霍尔,便宜,体积小,现在要不换霍尔,还要能避免丢脉冲

使用特权

评论回复
10
lhkjg| | 2010-12-22 16:34 | 只看该作者
那就自己用光耦跟简易的金属码盘模拟编码器,也很便宜的

使用特权

评论回复
11
zhaoyu2005| | 2010-12-22 17:01 | 只看该作者
既然你保证不了100%准确,就老实增加行程开关或者其他类似部件,能检测是否回到原点

即使你能检测准确,你能保证不出其他意外么?出了意外后,再上电怎么保证执行正确

使用特权

评论回复
12
grey0511| | 2010-12-22 17:08 | 只看该作者
不错,学习了








SIGNATURE..........................................................................................
徐州电脑维修
徐州网站制作
桑拿房 光波浴房

使用特权

评论回复
13
iC921| | 2010-12-22 17:46 | 只看该作者
脉冲不太多,可以通过模拟电路对脉冲进行积分-保持,或可结合A/D,进行分辨

      我这需要控制电机的行程,现在采用的方法是用霍尔在电机轴上检测转数,但实际运行中,可能要丢脉冲。
      假如我电机转100个圈,从起点走到终点,这个起点和终点的位置 是固定的,但是某一次,从起点运行后,丢了一个脉冲,但程序控制中仍然要检测到100个脉冲才判断到位置,这样的话,就比以前的终点多走了一个脉冲,再返回的时候,如果又不丢脉冲了,就会离起点差一个脉冲才停下,也就是没到位置就停了,时间长了,几个月或者一年两年的,起点和终点就会与原先设定的相差一截。

      怎么避免这个问题??

      不要增加行程开关来纠正,因为电机只是引出了霍尔信号线到控制盒,可以改动控制板,增加几个电气元件,或者改变程序思路之类的。

使用特权

评论回复
14
zjp8683463| | 2010-12-22 17:57 | 只看该作者
1.可以用分辨率更高的编码器,丢一个脉冲也没什么事情
2.用绝对编码器

使用特权

评论回复
15
maychang| | 2010-12-22 18:09 | 只看该作者
楼主还没有注意到掉电后恢复情况呢。

使用特权

评论回复
16
nongfuxu| | 2010-12-23 08:27 | 只看该作者
这个起点和终点的位置 是固定的,但是某一次,从起点运行后,丢了一个脉冲
单个霍尔元件一般地说是检测"以整圈为单位"的转动圈数, 所以LZ现有的三线输出霍尔传感器要达到你设计的要求比较难,而且每次正反转动的起始时刻,若有一次霍尔片正好在与磁铁重叠位置,此时传感器输出是什么信号?,若你的电路中仅仅是对脉冲数数,那这个起点位置上应该有的脉冲数就没有了.增加判断霍尔传感器输出是高电平,还是低电平电路可以改善起点位置判断,但最多只能做到"以整圈为单位"的转动圈数.
要精确控制"电机的行程",至少不撞墙的话,还是行程开关好,用霍尔开关嘛! 若用编码器那更好了.当然费用是成几何级数上升.

使用特权

评论回复
17
受不了了| | 2010-12-23 08:47 | 只看该作者
本帖最后由 受不了了 于 2010-12-23 08:50 编辑

楼主的霍尔信号都来不及检测更不要说编码器了;P
霍尔的可靠性很高,但质量也有好有坏,浙江洞头产的那种慎用,还有上面有网友提到的掉电存储也是个问题,所以比较合理的是有个零位,上电后手动回零一下,每次工作循环也回零一下,前后两边还要有个限位

使用特权

评论回复
18
lyz6118| | 2010-12-23 11:28 | 只看该作者
应该和起始时霍尔的位置有关系,应该设置个零位,每次上电后自动归零,再做其他动作。

使用特权

评论回复
19
chenyongand|  楼主 | 2010-12-23 16:25 | 只看该作者
回复所有人:::


我的霍尔是带保持的,比如这次是磁钢N极,让输出为1,即使磁钢离开了,仍然保持为1,除非有S极过来一下,然后变为0并保持,如此循环。
  
  另外,我这断电保存都有了,这个不用担心。现在主要就是偶尔的丢脉冲,造成累积误差,想换成别的检测方法都不行,领导规定了,必须要用霍尔的前体下,还要保证位置不错。其实中间要是有个参考点也好办,每次到那个店就自动纠正脉冲个数,现在根据实际情况,那个参考点也不好加,真让人头痛

使用特权

评论回复
20
mmax| | 2010-12-23 16:37 | 只看该作者
会不会是偶尔有停止的时候,霍尔刚好保持在那。
然后下次操作,你CPU检测就把这个给漏掉了。

CPU是用沿来检测吗?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

514

帖子

8

粉丝