滑台找零点的问题 点击:1796 | 回复:42



姗姗

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 40回
  • 年度积分:0
  • 历史总积分:70
  • 注册:2007年9月07日
发表于:2008-01-23 14:26:00
楼主
步进电机控制滑台找零点,检测零点是用槽型光耦的来做的.
   测试过程:从光耦一端出发向前走3199步,然后后退检测到光耦就停止显示走的步数,但是显示出现一些步解的现象:就是这次比3199多了几步,下次还是多几步,在下次还是多,要么有连续几次都比3199少的现象.误差在正负5步.按照理论上说,应该是多或者少是轮流出现的吧.
   如果把3199换成9600,误差就在正负15步了,如果是光耦的问题,应该是无论是3199或者9600误差都是正负5步左右吧.
   测试频率也不是很高啊,500hz.到底是什么原因呢?



沧海一黍

  • 精华:0帖
  • 求助:0帖
  • 帖子:10帖 | 856回
  • 年度积分:0
  • 历史总积分:1192
  • 注册:2006年6月09日
发表于:2008-01-25 20:29:00
21楼
哦, 就是说,有时侯走的多了,有时候走少了,或者说记数有时候比3199多,有时候比3199少? 
那么我的意思在前面就说了,想让你确定下,实际移动的距离,比如做个小片安装在移动件上,当移动3199步后,让电机停下来,然后在距离这个小片的前面再安装一个固定挡片,2者的距离取一个整数,比如1MM,这个挡片安装在固定位置, 重新上电后再做原点寻找,第二次走到3199步时再停止,用千分尺测量2者间的距离,按照你说的,肯定会和1MM有差距,要么多了,要么少了,这样的话,肯定是机械移动或配合上的问题,比如连接轴,皮带,丝杠间隙; 要是没有误差,那么就是脉冲器或控制上的问题了.

波恩

  • 精华:10帖
  • 求助:0帖
  • 帖子:203帖 | 11028回
  • 年度积分:0
  • 历史总积分:36300
  • 注册:2003年6月12日
发表于:2008-01-26 10:13:00
22楼
原来是这样一个思路。在此建议楼主换个思路做做:

利用步进驱动的相序循环信号,配合光耦信号完成回零点工作。具体方法为:步进电机向光耦移动,越过光耦时产生触发信号,上位控制器根据此信号,执行定距离减速停车,并最终停止于确定的相序循环数和固定的相序位置上。这样做的好处是,只要光耦安装位置合适,信号触发点对应的位置偏差小于步进电机的一个相序循环(齿距)所对应的位移量,则始终可以保持回零点的一致性。

至于类似于3199之类的软计数值,则可以用作软逻辑的位置监测和软限位等作用。

刘岩利

  • [版主]
  • 精华:2帖
  • 求助:0帖
  • 帖子:16帖 | 8239回
  • 年度积分:397
  • 历史总积分:28760
  • 注册:2005年3月09日
发表于:2008-01-27 10:16:00
23楼
您的槽型光耦,本身的重现性是多少?滑台本身的机械部分,传动带来的误差,比如间隙,是多少?

姗姗

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 40回
  • 年度积分:0
  • 历史总积分:70
  • 注册:2007年9月07日
发表于:2008-01-29 11:18:00
24楼
    仓海的意思我明白了,但是也不排除是光耦的问题.可能控制也有点问题,因为我让电机的运行一直是匀速运行 的,这样如果停止的时候有可能会产生过冲现象,但是我把频率降到300hz的时候走了3199后停止,在回来找光耦的时候发生堵转现象.所以我想控制的方法要先改一天看看,让启动和停止都有个升速和降速的过程.程序还在进行中.
   波恩大哥的意思我就不是很明白了.
   还有刘老师的问题我也不知道怎么回答,光耦的重现性怎么测或者怎么知道呢?转动带来的误差是多少,我很难查得到,因为买的是二手的.

波恩

  • 精华:10帖
  • 求助:0帖
  • 帖子:203帖 | 11028回
  • 年度积分:0
  • 历史总积分:36300
  • 注册:2003年6月12日
发表于:2008-01-29 12:54:00
25楼
暂时不明白很正常,等楼主逐渐对定长控制,加减速规划,步进驱动的相序等问题有更多实践经验和更深刻的切身体会后,自然会慢慢明白的。先想办法做出一个可行的方案。

姗姗

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 40回
  • 年度积分:0
  • 历史总积分:70
  • 注册:2007年9月07日
发表于:2008-01-29 13:41:00
26楼
现在是想利用加减速来控制运行,看看是不是过冲问题?还是光耦本身的问题

波恩

  • 精华:10帖
  • 求助:0帖
  • 帖子:203帖 | 11028回
  • 年度积分:0
  • 历史总积分:36300
  • 注册:2003年6月12日
发表于:2008-01-29 14:04:00
27楼
没有加减速控制的起停过程,必然会有过冲。这是基本力学原理的限制,不可能逾越。

姗姗

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 40回
  • 年度积分:0
  • 历史总积分:70
  • 注册:2007年9月07日
发表于:2008-01-29 14:36:00
28楼
嗯,也许是过冲的问题,我在试着编写加减速的程序.
但是加减速的控制不是也有讲究的吗?
每隔多少步加或者减,加或者减的量是多少.
这些都怎么定的呢?

刘岩利

  • [版主]
  • 精华:2帖
  • 求助:0帖
  • 帖子:16帖 | 8239回
  • 年度积分:397
  • 历史总积分:28760
  • 注册:2005年3月09日
发表于:2008-01-29 22:41:00
29楼
"光耦的重现性怎么测或者怎么知道呢"
如果有具体的型号,可以找一下这个对射开关的资料,上面应该有这个数据.

"但是加减速的控制不是也有讲究的吗?"
是啊,比较简单的是梯型加速,也就是匀加速.

姗姗

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 40回
  • 年度积分:0
  • 历史总积分:70
  • 注册:2007年9月07日
发表于:2008-01-30 09:51:00
30楼
不知道这个光耦的重现性有什么关系呢?光耦的型号是LG-JT02 421
网上没有找到这种槽型光耦的相关资料呢?

沧海一黍

  • 精华:0帖
  • 求助:0帖
  • 帖子:10帖 | 856回
  • 年度积分:0
  • 历史总积分:1192
  • 注册:2006年6月09日
发表于:2008-01-30 11:10:00
31楼
如果是光槽的问题,那么多或少的步数就不会那么有规律了;肯定是随机的,这和传感器的灵敏度调节在临界点的道理类似,不会每次都那么规律地犯错;个人建议还是先确定问题大致的方向。

姗姗

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 40回
  • 年度积分:0
  • 历史总积分:70
  • 注册:2007年9月07日
发表于:2008-01-31 10:25:00
32楼
昨天又测试了一下:向右走每次都是3200步
然后记录向左走的步数,即找到光耦的步数为:
(一组:-14 +17 -12 +4 -6 +3 +2 -6 -3)
(二组:+5 +3 +21 0 -5 +3 -4 +5 -7 +1)
误差的步数应该是所有误差的平均值,那就是说光耦感应的范围是很宽,多运行几次就可以减小误差的步数,随着电机的运行,电流也越来也越高.所以运行次数也有限制.这种方法好像不是很好.

但是现在问题出在哪里我又不知道了

姗姗

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 40回
  • 年度积分:0
  • 历史总积分:70
  • 注册:2007年9月07日
发表于:2008-01-31 11:03:00
33楼
误差的步数应该是所有误差的平均值...这个说错了 

应该是把所有误差的步数相加起来 
就可以知道误差的步数了
但是误差的步数很大哦 才走两圈就有0.01mm的误差

沧海一黍

  • 精华:0帖
  • 求助:0帖
  • 帖子:10帖 | 856回
  • 年度积分:0
  • 历史总积分:1192
  • 注册:2006年6月09日
发表于:2008-01-31 11:21:00
34楼
(一组:-14 +17 -12 +4 -6 +3 +2 -6 -3)
(二组:+5 +3 +21 0 -5 +3 -4 +5 -7 +1)
这里的每个数字是指多和少的步数么?看来随即性很大啊,建议先换个光槽看看。

姗姗

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 40回
  • 年度积分:0
  • 历史总积分:70
  • 注册:2007年9月07日
发表于:2008-01-31 11:29:00
35楼
刚才想了一下,觉得这样子控制应该没有问题的?
找零点的时候向右走的时候走的步数少点,误差就小点,这个找零点误差
找到零点后运行的误差就是丝杠本身存在的误差了
所以这样找零点的方法应该是对的
不知道大家意见怎么样

波恩

  • 精华:10帖
  • 求助:0帖
  • 帖子:203帖 | 11028回
  • 年度积分:0
  • 历史总积分:36300
  • 注册:2003年6月12日
发表于:2008-01-31 11:32:00
36楼
这么大的随机性,用来做零点显然已经有些不合适了。

姗姗

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 40回
  • 年度积分:0
  • 历史总积分:70
  • 注册:2007年9月07日
发表于:2008-01-31 13:08:00
37楼
那怎么样做零点才合适呢?是一圈10mm,1/8细分 分1600步走,这样即使误差有30步也才0.0187mm.会不会是返回来的时候因为不在起点停止,从新开始的要退回到起点这个问题引起的误差呢?

如果用步细分的话,一圈200步,每步都0.05mm了.即使步数来回都一样的话还是有误差的,并且这个误差我们是看不到的

现在不知道该怎么去找零点了?大家出个主意吧?

沧海一黍

  • 精华:0帖
  • 求助:0帖
  • 帖子:10帖 | 856回
  • 年度积分:0
  • 历史总积分:1192
  • 注册:2006年6月09日
发表于:2008-01-31 13:44:00
38楼
先别想着再找零点,把引起误差点消除先解决;否则误差还是存在;
“找零点的时候向右走的时候走的步数少点,误差就小点”----
就是说光槽在整个移动部件的中间?

波恩

  • 精华:10帖
  • 求助:0帖
  • 帖子:203帖 | 11028回
  • 年度积分:0
  • 历史总积分:36300
  • 注册:2003年6月12日
发表于:2008-01-31 13:45:00
39楼
这么说来我的说法确实有不够严谨的地方,现在需要明确的是,楼主对零点准确度的要求到底需要达到多高?

1/8细分 一圈1600步,不细分,一圈200步,相当于一个相序循环分别是32细分步,或者4整步。反观误差的步数:
(一组:-14 +17 -12 +4 -6 +3 +2 -6 -3)
(二组:+5 +3 +21 0 -5 +3 -4 +5 -7 +1)
可知,最大误差始终没有超越一个相序循环,因此再次建议楼主考虑我前面(2008-1-26 10:13:00 )提到的方法: 

换个思路做做

利用步进驱动的相序循环信号(多数驱动器会给出),配合光耦信号完成回零点工作。

具体方法为:步进电机向光耦移动,越过光耦时产生触发信号,上位控制器根据此信号,执行定距离减速停车,并最终停止于确定的相序循环数和固定的相序位置上(即越过光耦后,步进电机再转动数量确定的齿数并停止在这个齿距内的确定相位点上)。

这样做的好处是,只要光耦安装位置合适,信号触发点对应的位置偏差小于步进电机的一个相序循环(齿距)所对应的位移量,则始终可以保持回零点的一致性。
 

姗姗

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 40回
  • 年度积分:0
  • 历史总积分:70
  • 注册:2007年9月07日
发表于:2008-02-21 10:12:00
40楼
好久没来了,赫赫
检查了硬件,发现原来是联轴器的问题,现重新买个新的联轴器(型号是MST-16)看看,一般网上的哪个地方卖这些器件比较多呢?

热门招聘
相关主题

官方公众号

智造工程师