检测编码器位置的程序问题 点击:753 | 回复:8



陈长兵

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 16回
  • 年度积分:0
  • 历史总积分:89
  • 注册:2006年11月08日
发表于:2008-03-12 16:51:00
楼主
我写了一个检测编码器位置的程序.
检测到位置信号以后,显示出来.
编码器是增量式编码器,512线的.
电机是两对极,4个平衡位置.
安装的时候电机和编码器的位置是固定的.
电机正转时,定时器加计数,反转时,减计数.
转一圈,来一个Z信号,捕捉到这个Z信号以后,
定时器清0.
正常情况下,正转到一个平衡位置,显示350左右的一个数.
反转到一个平衡位置,显示160左右的一个数.
可是现在的情况是正转显示正确,反转显示90左右的一个数.
请问高手,哪里出了毛病?
谢谢!




@Q

  • 精华:7帖
  • 求助:0帖
  • 帖子:42帖 | 2199回
  • 年度积分:0
  • 历史总积分:4414
  • 注册:2003年2月20日
发表于:2008-03-12 20:05:00
1楼
这个程序中,你Z信号清0的意义是什么?

陈长兵

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 16回
  • 年度积分:0
  • 历史总积分:89
  • 注册:2006年11月08日
发表于:2008-03-13 10:14:00
2楼
谢谢您的回复!
上次我说错了一点,转一圈,来4个Z信号,不好意思.
清0的意义是防止干扰,避免累计误差.
以前做的时候,只清一次,结果是
正转到一个平衡位置,显示350左右的一个数.
反转到一个平衡位置,显示330左右的一个数.
总之都和理论不符.
请您多多指教!

猎隼

  • 精华:1帖
  • 求助:1帖
  • 帖子:151帖 | 1661回
  • 年度积分:0
  • 历史总积分:8983
  • 注册:2005年9月28日
发表于:2008-03-13 10:40:00
3楼
你的光电编码器一圈多少个脉冲,四个Z信号是一圈平均分配的吗,Z信号接通的时候是清零还置数?

陈长兵

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 16回
  • 年度积分:0
  • 历史总积分:89
  • 注册:2006年11月08日
发表于:2008-03-13 11:50:00
4楼
谢谢您的回复!
一圈512个脉冲。
Z信号不是平均分配,但误差不大,
Z信号的中心在U相的上升沿。
Z信号接通的时候是清零。
请您多指教!

猎隼

  • 精华:1帖
  • 求助:1帖
  • 帖子:151帖 | 1661回
  • 年度积分:0
  • 历史总积分:8983
  • 注册:2005年9月28日
发表于:2008-03-14 09:54:00
5楼
你所说的平衡位置与Z相信号有关系吗?编码器转一圈一共清4次零吗?

陈长兵

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 16回
  • 年度积分:0
  • 历史总积分:89
  • 注册:2006年11月08日
发表于:2008-03-14 12:04:00
6楼
谢谢您的回复!
我真惭愧,又说错了,转一圈1个Z信号。
请您原谅,耽误了您那么多宝贵的时间。
编码器一圈512个脉冲,经过DSP4倍频,
共2048个脉冲。所以每两个平衡位置之间
是512个脉冲。平衡位置和Z相信号的位置
是固定的。编码器转一圈清一次零。
请您多指教,谢谢!

@Q

  • 精华:7帖
  • 求助:0帖
  • 帖子:42帖 | 2199回
  • 年度积分:0
  • 历史总积分:4414
  • 注册:2003年2月20日
发表于:2008-03-14 13:06:00
7楼
我还是这个问题:这个程序中,你Z信号清0的意义是什么?看来你没有明白我的意思。

增量编码器,如果有清0程序,那么清0以前的计数就当是不准确的了(相对于清0后),上面,你正转350,反转时经过了Z,被清过0了,当然就不是162了,清0前与清0后的比较,当然不对了。但这次清0后,你再正反转看看,是不是又对了?

用绝对的,不就没有这问题了吗,现在绝对的没贵多少。

陈长兵

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 16回
  • 年度积分:0
  • 历史总积分:89
  • 注册:2006年11月08日
发表于:2008-03-17 11:44:00
8楼
谢谢您的回复!
问题解决了。

热门招聘
相关主题

官方公众号

智造工程师