在公式(1):中△L是移动距离,单位时毫米,Data2-Data1表示移动距离相对应的脉冲数。那么问题来了,由于位置分辨率的最小单位是0.01μm,如果根据上式中的计算结果在小数后面4位,比如是0.3125μm/pulse,那么你所输入的数值就只能是0.31或者0.32,也就是说机器人的随动速度会快或者慢于传送带的实际速度,这种情况对于某些要求精密的设备来说是非常致命的。
本文研讨一种更为直接的计算机器人位置分辨率的方法。
例如:现场使用伺服驱动系统,传动丝杠的导程是25mm,减速机的减速比是10:1,现场随动编码器使用的是2000rpp。
我们采用机器人手册的计算方法,我们实际算出来的结果是0.3125μm/pulse,那么我们只能采用0.31或者0.32的数值,这样就会导致机器人随动过程中与传送带的实际速度不一致。但是问题出在哪里我们很难查清楚。
如果我们先计算出来伺服电机转一圈传送带的移动距离:25÷10=2.5mm,就可以知道传送带移动2.5mm需要反馈2000个脉冲,那么算出来的位置分辨率就是2.5÷(2000×4)=0.3125μm,算式之中的4是因为机器人在接入编码器时都会做4倍频的处理,所以机器人收到的脉冲数是实际反馈脉冲的4倍。
从上面两种算法我们可以看出,我们算出来的位置分辨率的值是一致的,但是第二种算法更可以让我们找到问题的解决办法。也就是说,我们可以根据实际情况改动丝杠的导程、减速机的减速比或者随动编码器的型号,就可以改变位置分辨率的值的大小,保证精确到位置分辨率的最小单位。还是上面的例子,如果我们把随动编码器改为500rpp,那么我们算出来的位置分辨率就是:2.5÷(500×4)=1.25μm,可以保证机器人的随动速度跟传送带速度绝对的一致。当然,如果我们要求编码器的分辨率尽可能的高,那么我们可以改动丝杠的导程或者改动减速机的减速比,可以达到同样的效果。