打印
[DSP编程]

qep电路与增量式编码器链接没

[复制链接]
1853|18
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wangrunpeng|  楼主 | 2015-12-16 16:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
wangrunpeng|  楼主 | 2015-12-16 16:35 | 只看该作者
希望大神来帮忙,不胜感激

使用特权

评论回复
板凳
zhangmangui| | 2015-12-16 22:51 | 只看该作者
看到好多人遇到的情况是  接入了编码信号   不计数  
我觉得你的问题是可能没有将通用计数器配置给编码信号
而是工作在计数状态下    你查一下配置吧

使用特权

评论回复
地板
zhangmangui| | 2015-12-16 22:51 | 只看该作者
是哪一款mcu

使用特权

评论回复
5
wangrunpeng|  楼主 | 2015-12-22 10:09 | 只看该作者
2812

使用特权

评论回复
6
wangrunpeng|  楼主 | 2015-12-22 10:10 | 只看该作者

使用特权

评论回复
7
wangrunpeng|  楼主 | 2015-12-22 10:12 | 只看该作者
zhangmangui 发表于 2015-12-16 22:51
看到好多人遇到的情况是  接入了编码信号   不计数  
我觉得你的问题是可能没有将通用计数器配置给编码信号 ...

这个我配置了时钟信号,我的计数器在计数,只不过计数不准确,就是没有脉冲也计数,我怀疑是不是编码器传过来信号和dsp直接相连有干扰

使用特权

评论回复
8
zhangmangui| | 2015-12-22 21:52 | 只看该作者
wangrunpeng 发表于 2015-12-22 10:12
这个我配置了时钟信号,我的计数器在计数,只不过计数不准确,就是没有脉冲也计数,我怀疑是不是编码器传 ...

你还是没理解     计数器肯定是在计数    而我们要做的就是去捕获
也就是送入的编码信号比如上升沿要捕获    那就是上升沿到来后触发将计数器当前的值存入
下一个沿来了  在此捕获  存入计数器的值  这样就知道两个沿之间的计数器差值  也就能计算出
两个沿之间的时间    也就可以反馈速度了

使用特权

评论回复
9
wangrunpeng|  楼主 | 2015-12-23 15:35 | 只看该作者
zhangmangui 发表于 2015-12-22 21:52
你还是没理解     计数器肯定是在计数    而我们要做的就是去捕获
也就是送入的编码信号比如上升沿要捕获 ...

谢谢您的指导,关键我的电路是没上升延下降沿,计数器也在计数·。我怀疑是不是编码器出来信号不稳定造成的,编码器和dsp之间用不用加光耦隔离什么的

使用特权

评论回复
10
zhangmangui| | 2015-12-23 21:12 | 只看该作者
wangrunpeng 发表于 2015-12-23 15:35
谢谢您的指导,关键我的电路是没上升延下降沿,计数器也在计数·。我怀疑是不是编码器出来信号不稳定造成 ...

光电编码器一般输出是5V吧  
和CAP脚是怎么接的    最好是加个光耦   
不加也没什么影响   

使用特权

评论回复
11
wangrunpeng|  楼主 | 2015-12-24 10:19 | 只看该作者
zhangmangui 发表于 2015-12-23 21:12
光电编码器一般输出是5V吧  
和CAP脚是怎么接的    最好是加个光耦   
不加也没什么影响   

我用电阻分压法达到接近3伏,但是不加光耦出现我说的问题,不知道怎么解决了

使用特权

评论回复
12
风呼呼| | 2017-7-12 16:03 | 只看该作者
zhangmangui 发表于 2015-12-16 22:51
看到好多人遇到的情况是  接入了编码信号   不计数  
我觉得你的问题是可能没有将通用计数器配置给编码信号 ...

前辈,我现在也在学习配置编码器模块的程序,参考网上提供地例程(前篇一律,基本上都是一样的),计数器现在可以计数了,但是,有时计数器计数的方向与资料上给的方向是相反的(本来应该向上计数,可是却出现了向下计数的现象),这是什么原因呢?

使用特权

评论回复
13
zhangmangui| | 2017-7-12 21:34 | 只看该作者
风呼呼 发表于 2017-7-12 16:03
前辈,我现在也在学习配置编码器模块的程序,参考网上提供地例程(前篇一律,基本上都是一样的),计数器 ...

你确定是向下计数吗    是不是记满了  
然后溢出了     所以看着是向下了

使用特权

评论回复
14
风呼呼| | 2017-7-13 14:53 | 只看该作者
zhangmangui 发表于 2017-7-12 21:34
你确定是向下计数吗    是不是记满了  
然后溢出了     所以看着是向下了
...

我确定有时候刚进入仿真时,按下Run,会出现向下计数的情况(本来应该向上计数的)。。

那个CH1和CH2两个通道必须都要输入脉冲信号才可以吗,且保证相位上相差90°?
我是需要保证CH1通道输入脉冲,且计数发生在上升沿,而CH2通道要么一直保持低电平,要么一直保持高电平。按照资料上显示来说,应该是可以向上或者向下计数的,可是有时计数方向却是相反的......

使用特权

评论回复
15
zhangmangui| | 2017-7-13 22:35 | 只看该作者
风呼呼 发表于 2017-7-13 14:53
我确定有时候刚进入仿真时,按下Run,会出现向下计数的情况(本来应该向上计数的)。。

那个CH1和CH2两个 ...

从你的描述  应该是溢出了    让你以为反向计数了   
溢出后计算时 需要将结果+ffff
不需要相位关系   

使用特权

评论回复
16
zhangmangui| | 2017-7-13 22:35 | 只看该作者
如果要确定电机是正转还是反转   就需要相位差90的的输入

使用特权

评论回复
评分
参与人数 1威望 +3 收起 理由
风呼呼 + 3 赞一个!
17
风呼呼| | 2017-7-14 16:30 | 只看该作者
zhangmangui 发表于 2017-7-13 22:35
从你的描述  应该是溢出了    让你以为反向计数了   
溢出后计算时 需要将结果+ffff
不需要相位关系     ...

我发送的脉冲频率是1KHz,那计数器的值到65535需要一分钟多点,不可能刚一输入脉冲就发生溢出吧?
另外,即使溢出了,它也该恢复正常的计数方向吧?

使用特权

评论回复
18
风呼呼| | 2017-7-14 16:36 | 只看该作者
zhangmangui 发表于 2017-7-13 22:35
如果要确定电机是正转还是反转   就需要相位差90的的输入

我也配置过给两个通道发送两路正交的脉冲信号,结果计数器计数的方向都能够按照资料上显示的进行计数。可就是只给一个通道发送脉冲,另一个通道保持某种电平不变,计数器计数的方向就出现问题了,改了好久了也没有找出问题出在哪里

使用特权

评论回复
19
kikimonkey| | 2017-8-9 16:08 | 只看该作者
ABIO设成上拉使能,使AB的输入状态确定

使用特权

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

本版积分规则

11

主题

40

帖子

0

粉丝