首页 上一页 1 2 下一页 尾页

单圈绝对值编码器如何实现多圈应用 点击:8590 | 回复:37



lhjc51

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 13回
  • 年度积分:0
  • 历史总积分:33
  • 注册:2015年12月07日
发表于:2015-12-07 11:38:34
楼主

    单圈绝对值编码器可以记录设备在运转一周内的位置,当设备进行多圈运转时单圈编码器无法记录位置。我通过程序对编码器数据进行处理,可以得到多圈计数的功能。但是程序会经常出错,希望知道的高手可以给一个程序,并稍加说明,谢谢!




李东泽

  • [版主]
  • 精华:7帖
  • 求助:25帖
  • 帖子:1209帖 | 6375回
  • 年度积分:216
  • 历史总积分:44409
  • 注册:2010年3月25日
发表于:2015-12-07 16:02:23
1楼

楼主现在中国工控网在举办答题有奖活动:

http://bbs.gongkong.com/d/201510/640210_1.shtml

(给力奖上奖)每日求助优秀答疑者月度评奖活动第一期

所以建议楼主在帖子前面加上求助:


dark19881001

  • 精华:0帖
  • 求助:0帖
  • 帖子:16帖 | 83回
  • 年度积分:0
  • 历史总积分:291
  • 注册:2014年4月04日
发表于:2015-12-07 16:35:17
2楼

楼主你好:

单圈绝对值本应就是在360度单圈内使用,如果超过360度还想使用,就要用计数的方法去用,等于不再是绝对值的了,那还不如直接用增量编码器计数的简单方便。目前很多电机用单圈绝对值加计数的方法,是在通电时读取电机在360度内的绝对位置,反馈驱动方向的,然后再用计数累加的方法。如果你真正要用到多圈位置控制,应该用绝对值真多圈编码器,目前国产化的机械齿轮箱的绝对值真多圈编码器早已推向市场多年,已有很多成功应用了,(例如上海精浦的绝对值编码器都有出口),价格也不贵了,完全可以考虑选用。信号的接口有SSI,RS485(自由协议),modbus rtu,4--20mA等很多种可选,信号可靠稳定,进口国产PLC都已经有很多应用了。

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2015-12-17 12:24:22
3楼

我跟你聊。上程序。

我做过这个。

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2015-12-17 12:28:04
4楼

我的程序在停电状态下做正负半周移动,都可以在通电后得知位置。超过半圈的话要神仙来做了。

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2015-12-17 12:52:18
5楼

你的程序肯定是处理不好过零问题。

我的程序已经做好成宏了。FX1S以上适用。调用后仔细填上参数,就可以使用。而且子程序只有一个,并不像常规的,调用几次出现几个。我的无限调用也只有一个子程序。扫描执行。输入编码器当前值,输出累计圈数和本次增量两个值。(本次增量:两次执行之间编码器走过的格数。)

程序价值55MP。你要不?

lhjc51

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 13回
  • 年度积分:0
  • 历史总积分:33
  • 注册:2015年12月07日
发表于:2015-12-21 16:01:19
6楼


回复内容:

对: 芳季 你的程序肯定是处理不好过零问题。我的程序已经做好成宏了... 内容的回复!

芳季老师您好,首先非常感谢您能看到我的帖子。我的QQ2924567960.希望您能加我,我随时都可以联系。注明一下名字,谢谢。您也可以留号码,我加您。

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2015-12-21 16:29:54
7楼

不用加了吧。你可愿意铺开来谈?加私聊的话,那么论坛就变成马云家了。如果成市场了的话,这程序绝对不止收55块钱啦。

你的程序既然有问题,那么上上来大家讨论一下什么回事嘛。

lhjc51

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 13回
  • 年度积分:0
  • 历史总积分:33
  • 注册:2015年12月07日
发表于:2015-12-22 10:56:14
8楼

我用X0口接8为绝对值编码器,利用PLC的扫描周期分析编码器的过零,C223为圈数,D0为当前码值,D1为上周期的码值,最终码值为D9.

程序的最后一行写错了,应该将D0改为D1。程序有时会记错圈,希望指教。

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2015-12-22 14:08:20
9楼

k200是怎么得来的?为什么不是128。

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2015-12-22 14:22:46
10楼

看不懂你的思路。

8位最大码值是256。

上次是255本次是1,减法得到254,比较大于200,加一圈。是这个意思吗?

再看反向过零。

上次是1,本次255,第二个减法得254,大于200,哪里说明是减一圈啊?

lhjc51

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 13回
  • 年度积分:0
  • 历史总积分:33
  • 注册:2015年12月07日
发表于:2015-12-22 14:23:14
11楼


回复内容:

对: 芳季 k200是怎么得来的?为什么不是128。 内容的回复!

就是在编码器255到0或0到255变换时,差值与200比较,大于200标志过圈

lhjc51

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 13回
  • 年度积分:0
  • 历史总积分:33
  • 注册:2015年12月07日
发表于:2015-12-22 14:25:41
12楼

是的,C223是加减计数器由M1223控制计数器的加减。

lhjc51

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 13回
  • 年度积分:0
  • 历史总积分:33
  • 注册:2015年12月07日
发表于:2015-12-22 14:52:33
13楼


回复内容:

对: 芳季 看不懂你的思路。8位最大码值是256。上次是255本次... 内容的回复!

    M1223置位C223即为减计数器,C223得电一次其数值减1.

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2015-12-22 15:07:47
14楼

哦。基本OK。关键是11楼的事情了。差值大于200就认为是过零啊?

以下下来的事情因为用255计算比较复杂,我们转个视角希望楼主可以跟随。我们看着墙上的钟。11之后过零。定义为这个编码器只有12等分,好吗?

下面请楼主根据你刚才说200的来历,定义一下现在面向分度只有12分的编码器确定一个什么数?

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2015-12-22 15:11:00
15楼

这个原因是因为如果我说255,大家一定知道这个刻度就在最后一个格。要是我说192这个点,基本很难感觉到这是在哪里。数来数去才知道这是四分之三的地方。所以就想把头脑里面的东西先简约一下。

lhjc51

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 13回
  • 年度积分:0
  • 历史总积分:33
  • 注册:2015年12月07日
发表于:2015-12-22 15:26:37
16楼


回复内容:

对: 芳季 哦。基本OK。关键是11楼的事情了。差值大于200就认... 内容的回复

   200只是个大约的值,就是在过零时处理不好,至于您说的192我不是很理解,我觉得过圈判断的数值稍微大一点就好,应该不会影响整个程序。


芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2015-12-22 15:27:27
17楼

当做你确定在10吧。

差值大于10表示过零。

那么上次是11,这次是0,差值是11,大于10 判断为过零。没错。

上次是9这次是1,差值是8,没有大于10,判断为没有过零。但是实际上已经过零了。

发生什么事了?


lhjc51

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 13回
  • 年度积分:0
  • 历史总积分:33
  • 注册:2015年12月07日
发表于:2015-12-22 15:33:07
18楼

对,很对。我觉得就是PLC的采样周期与编码器的转速有关。就是请教您关于这方面的问题。

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2015-12-22 15:41:52
19楼

慢慢解答。


过去是9刻度,现在是多少刻度便可以认为发生正向过零?

lhjc51

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 13回
  • 年度积分:0
  • 历史总积分:33
  • 注册:2015年12月07日
发表于:2015-12-22 15:46:59
20楼

1刻度就可以了,对么


热门招聘
相关主题

官方公众号

智造工程师
    首页 上一页 1 2 下一页 尾页