光栅尺的原理是什么? 这个问题很多次闪现在我的脑海中,也多次百度,但是都解释得不太清楚,或者一点都不形象,很难理解。 因为最近的项目上用到了1D Plus光栅尺(后续我会专门写写这种光栅尺的应用),我又想起了这个基本的问题,这次,我通过多方的资源,对光栅尺,比以前有了更多的认识。 下面,我用对话的方式,分享一下。 罗罗,我们很多运动平台,都会用到光栅尺,用来做闭环控制,我想问一下,光栅尺的原理的是什么? 光栅尺啊,简单理解就是一把尺子。 打个比方,游标卡尺都用过吧,再或者卷尺用过吧,尺子上面有刻度,这些刻度作为基准,你只需要把要测的物件,和卡尺上的刻度做比较,就可以用来衡量长度、大小、深度等信息。 同样地,光栅尺上也有“刻度”,这种刻度叫光栅,是通过光刻刻在尺子上的,只不过,它不是通过人眼来读取信息,而是通过配套的读数头,来读取位置信息。 你的比喻,我明白了,但是实际原理是不是要复杂得多? 没错。实际原理确实复杂很多:光栅是在玻璃或钢带尺上,制作的一系列条纹和狭缝,一个条纹和一个狭缝的宽度称为栅距,常见栅距20um。 读数头每扫描一个栅距,就产生一个正弦波信号周期,此信号再通过一个电子电路进行细分(读数头内置的或者外部细分盒),比如5,10,50,100倍的细分,所以可以达到很高的分辨率。 比如,一个20um栅距,经过50倍细分,那一个周期就是0.4um,这就是厂商说的分辨率。 我有点明白了。不过我还想问一下:读数头怎么可以扫描光栅读取数据呢? 如上图,读数头中有和尺体栅距一样的指示光栅(Scanning reticle),并且读数头中本身有LED光源,当读数头相对于光栅尺(Scale)移动时,LED光在经过了聚焦镜后(Condenser lens),照射到光栅尺上,然后光通过光栅狭缝,衍射到读数头的光电探测器上(Photocells),这样就在探测器平面上,产生了明暗相间的正弦干涉条纹。 接着,探测器把这些条纹,转换成正弦波变化的电信号,再经过电路的放大和整形后,得到两个相位差90度的正弦波,或方波信号A和B。
正弦波或方波的周期数,与移动距离成正比。尺体正向移动时,A信号超前B信号90度,尺体反向移动时,A信号滞后B信号90度。 如果转换成方波信号,做4倍频细分,一个周期里有4个上升沿,这个时候的分辨率只对应着一个上升沿,也就是1/4周期(脉冲)。
需要注意的是,实际情况,光电探测器和LED在光栅尺的同一侧,都集成在读数头中。当光照射到光栅尺后,有一部分光会反射回去,然后通过聚焦镜,照射回光电探测器,形成电信号。
我明白光栅尺的原理了。 那为什么不直接用卡尺测量呢? 你真调皮,一般卡尺只能人眼读数,怎么把你读到的数据,传送到机器运动轴呢,就更不用说位置没有走对时,如何去反馈做校正了。就算你用能够输出读数的卡尺,精度也没有光栅尺的高嘛。 那一般光栅尺的精度可以达到多少? ±15μm,±5μm,±3μm,±1μm都有。 需要注意的是,这里说的精度,是光栅尺的制造误差,指每走1m实际可能的误差,而如果小距离行走,误差会更小,比如±0.275μm/10mm,±0.750μm/50mm,就是说运动10mm和50mm可能产生的误差分别是±0.275μm和±0.750μm,这是光栅的本身制造精度,也是选择光栅尺的一个重要参考。 比如,我们经常希望一个轴的定位精度是±3um/100mm或者±5um/100mm之类的,那么选择光栅尺的时候,首先,它的精度就要比这个要求高,比如±0.5um/100mm或者±1um/100mm。 另外,这里±1um/100mm并不能推导出±10um/1000mm,因为这里没有线性关系,往往光栅尺本身,会标注一两个短行程误差。比如精度±10um/m,往往100mm内的误差会小于±1um。 当然,读数头在细分信号的时候,也会引入误差,叫做差分误差,不过这个误差很小。比如一根光栅尺,栅距20um,分辨率为0.1um,周期误差(电子细分误差SDE)±0.15um。指的是栅距为20um的光栅,经过200倍细分,分辨率是20/200=0.1um,在这20um的栅距内,因为系统信号处理带来的误差是±0.15um。 好的,我知道了。 不过,我还想知道,光栅尺的测量精度还与哪些因素有关? 通常还和导轨的精度、结构刚性、光栅尺和末端点的距离有关系,对温度敏感的系统,还和环境温度及光栅尺附近热源有很大关系。 通常导轨有直线度和平行度误差,读数头只能读取到光栅尺位置的信息,而我们关心的位置通常不是光栅尺位置,而是结构上功能点的位置,也就是存在阿贝误差。 结构刚性,光栅尺和末端点的距离都会影响阿贝误差。 温度的上升和下降,会导致光栅尺的热膨胀,也会引入误差,因为基准变化了,读数头会认为是光栅尺有一个微小运动。 光栅尺栅距这么小,那刻度是怎么刻上去的?光栅尺尺子一般都是哪些材料? 上面已经提到了,光栅一般刻在玻璃或钢带基体上,玻璃一般用于短行程尺子,大长度尺子,比如10米、30米,用钢带作为基体。 至于说栅距怎么刻上去的,前面也说了,是用光刻的原理刻上去的。 那光刻是个什么东西?我不是很理解,你能解释一下吗? 好吧,我来打个比方。 比如说,你看集成电路板,上面不是有一条一条金属线么? 那个线不是画上去的,是整个刷一层铜到硅板上,然后上面刷一层蜡,然后你用刀子把没有导线的部分的蜡“刻”下去,然后把这块板子扔到腐蚀液里,没有蜡覆盖的地方就会被腐蚀掉,然后你把它拿出来,集成电路板就做好了。 嗯,有点意思,你继续说吧,光栅刻线怎么做出来的。 做光栅尺的时候呢,也是这个样子,但是光栅尺上的栅距非常非常小,间距是微米级别的,已经没有任何物理的刀子可以去刻出来了,这个时候我们就用“光刻”了。 因为光可以被分的很纤细的,光刻是在被刻材料表面铺一层感光膜,然后用光去照它,被光照到的地方,感光膜就会被“烧掉”,然后这个时候你用一个上面画着刻线的“纸片”,去挡一下光,这样就把光栅要保留的地方留下来了,然后扔到对应的液体里一泡,光栅尺也就做好了。 好的,我终于明白了。 罗罗,我还有一个问题。 增量式光栅尺和绝对式光栅尺有什么区别?分别用于什么场合?
增量式光栅由周期性刻线组成。位置信息的读取需要参考点,通过和参考点的对比,来计算移动平台所在的位置。 由于必须用绝对参考点确定位置值,因此增量光栅尺上,还刻有一个或多个参考点。由参考点确定的位置值,可以精确到一个信号周期,也就是分辨率。绝大多数场合,都使用这种光栅尺,因为它比绝对式光栅尺便宜。 而绝对式光栅,绝对位置信息来自光栅码盘,它由一系列刻在尺子上的绝对码组成。所以,编码器通电时,就可立即得到位置值,并随时供后续信号电路读取,不用移动轴,执行参考点回零操作。 因为回零会浪费一定时间,如果机器有多个轴,那么回零循环可能变得既复杂又耗时。这种情况下,使用绝对式光栅尺是有利的。 另外,从速度和精度方面考虑,增量式光栅的最大扫描速度,取决于接收电子装置的最大输入频率 (MHz) 和所需的分辨率。但是,由于接收电子装置的最大频率已固定,所以提高分辨率将导致最大速度相应降低,反之亦然。 而绝对式光栅,不会受到这种情况的影响,可确保高速和高分辨率运行。这是因为位置根据需求和使用串行通信确定。绝对式光栅最典型的应用,是表面贴装技术 (SMT) 行业中的贴片机,在该行业中,同时提高定位速度和精度,是永远追求的目标。 好的,明白了。 一般根据哪些数据去选择合适的光栅尺呢? 第一, 是精度。 第二, 分辨率。 第三,行程。 第四,最大检测速度。 第五,电接口及电线长度。 第六,安装方式及安装空间。 第七,抗振动性能。 第八,价格。绝对式光栅尺一般贵20%。 一般来说,精度和分辨率是我们选择光栅尺的首要因素。 那我想问了,如何根据定位精度,或者是重复定位精度要求,来选择光栅尺? 这个,我举个例子吧。 比如,要做一个行程100mm,系统定位精度是±0.01mm(±10um)的移动平台,我们可以选择行程是120mm,精度是±0.5um/1m,分辨率是0.02/10=0.002mm的光栅尺。 这样,行程有20mm的余量,可以用于做硬件保护,而光栅尺本身的精度±0.5um也很常见。 关于分辨率,之所以取定位精度的1/10来选择分辨率,是因为存在控制误差,通常在±10cnt,这里所说的1cnt,是指的,在光栅尺本身分辨率基础之上,做了细分处理之后的分辨率,通常有4倍或者8倍细分。 比如4倍细分,那么上面分辨率为0.002mm的光栅尺,分辨率将达到0.002mm/4=0.5um。±10cnt也就是±5um,留了一倍的余量,这个主要考虑,系统还存在机械误差,比如传动系统,结构刚性等,这些因素也会吃掉一部分精度。当然这些是几何误差的范畴,可以通过测量,获得误差曲线,进行一部分的补偿,但是,还是有不一部分动态误差,无法补偿。 另外,很多时候,我们并不关心绝对定位精度,而只关心重复定位精度。一般来说,系统的重复定位精度的数值为定位精度的1/2~1/3,最多不会超过一个数量级,即1/10。比如,此例子中,一般来说重复定位精度在±0.01mm/2~±0.01mm/10=±0.005mm~±0.001mm之间。 当然,还有一点,系统的重复定位精度,一般介于分辨率和定位精度之间。 好了,关于光栅尺的选择,我就说这么多吧。 好的,罗罗,我可以再问最后一个问题吗? 你问题真多,说吧。 光栅尺的安装最需要注意的地方是什么?说一两点就可以了。 第一,我觉得需要预留好调整空间吧,因为很多时候空间不足,不好调整读数头,造成调试花太多时间,维护也很麻烦。安装后必须进行精确调整,根据指示灯的颜色来判断调整好坏。 另外,一般光栅尺的安装面,要和导轨面保持一定的平行度,比如0.1mm,这个要求,往往比安装的摇摆平行度要求高一倍,比如摇摆平行度要求0.2mm。 好的,我明白了,感谢你的回答。 客气了。
|