王凯旋,吕英俊,王亚洲,李合意,于 海
(1.山东科技大学电气与自动化工程学院,山东济南 250000;2.长光卫星技术有限公司测试与通信技术研究室,吉林长春 130000;3.中国科学院长春光学精密机械与物理研究所,吉林长春 130033)
光电编码器作为一种能够将转角位移转换为数字化角度信息的测量装置,以其高精度、高分辨力、高可靠性而被广泛应用[1-3]。在出厂前对编码器产品的测试,是测试产品性能的重要环节。
目前对于光电编码器的误差测试方法主要包括:角度基准标定法和多面棱体标定法[4-6]。其中,多面棱体标定法采用多面棱体与被测光电编码器主轴同轴连接,并由激光自准直仪对其转角进行标定。这种方法适用于对高精度和高分辨率的被测编码器误差标定。角度基准标定法是采用高精度的角度基准实现对被测光电编码器的误差标定,这种方法适用于分辨率不高的被测产品。由于小型光电编码器的分辨率一般不高于16位,传统方法对于小型产品的误差标定多采用角度基准标定法。将被测光电编码器与角度基准同轴连接,通过手动转动主轴实现对多个采样点的误差采集。采用手动转动方法,完成被测光电编码器的误差标定非常耗时耗力;人工记录误差数据存在一定的读数误差;高精度的角度基准一般体积庞大且笨重,不适合携带和移动。
文献[7-10]在光电编码器误差标定上做出了研究。但是这些检测方法大多只适合在实验室条件下进行检测,无法应用在工作现场。急需开展简单易行、精确可靠、便携的光电编码器误差标定技术研究。
为提高误差标定效率,本文研制了一种高分辨便携转台。首先,采用图像角位移识别技术,设计了高精度、高分辨率的角度基准,实现小体积的角度基准设计;然后,采用直流电机带动被测编码器与角度基准同轴连接,搭建了光电编码器误差标定系统。最后,根据系统功能设计各任务函数,并基于嵌入式操作系统μc/os对任务函数进行调度,实现电机定位、误差标定、显示及人机交互。经过测试,本文所设计转台的分辨率为0.15″(23位),不确定度为4.63″。转台能够对分辨率不高于16位的小型光电编码器产品进行误差标定。所设计的转台具有便携、易操作、分辨率高等优点,满足批量生产时对光电编码器的快速误差标定需求。
设计的转台是面向小型绝对式光电编码器产品的误差标定环节的。小型被测编码器的分辨率一般不高于16位,精度不低于60″。综合考虑,角度基准标定法非常适用于对本文中被测光电编码器的误差标定。采用角度基准标定法设计的转台原理如图1所示。
图1 转台原理图
工作时,直流电机通过联轴节与角度基准连接,用以控制转动。被测编码器通过弹性联轴节与角度基准同轴连接。当电机控制角度基准转动时,被测编码器与角度基准同轴转动。控制电箱输出PWM方波控制电机的转速,同时采集被测编码器和角度基准的数据,做差后得到误差数据,并将其显示在液晶屏幕上。
在传统的误差标定方法中,采用高精度光电编码器作为角度基准。但是传统的高精度编码器具有较大的体积,并不适用于便携装置。图像角位移识别技术是一种角度测量技术,它采用图像传感器实现对标定光栅上标线的识别,进转而实现“译码”和“细分”的运算。由于采用密集的像素信息代替传统的光电接收元件,进而采用数字化图像处理算法代替了传统的“莫尔条纹细分”技术,在计算角度位移时更容易实现高分辨率和高精度。角度基准原理如图2所示。
图2 角度基准原理图
图像传感器与标定光栅的纵向距离小于1 mm,使平行光源照射标定光栅时将光栅上的图案投影到图像传感器上。处理电路通过对图像传感器接收到的像素数据的处理计算,实现“译码”和“细分”。
1.2.1 标定光栅设计
图3为标定光栅标线图案的原理图,标定光栅圆周内包含有29=512条基准标线。为实现编码,光栅标线分为“宽基准标线”和“窄基准标线”,分别代表编码元“0”和“1”。所有的编码元按照M序列伪随机码的编码方式,即每一个编码元都是由前9个编码元的之间的异或计算得到。设第i个码元为mi,那么mi可以通过式(1)进行计算。
mi=mi-4⨁mi-9
(1)
式中⨁表示异或运算。
设初始值{m1,m2,…,m9}={0,0,…,0,1},通过式(1)的计算,共得到29个编码元。每相邻的9个码元{mi,mi+1,…,mi+8}为一组编码值,其对应的译码值就是i。将这些编码元对应的“宽、窄标线”按照等间隔等半径位置刻划到圆光栅上,形成了9位标定光栅(图3中所指示的编码为“111011100”)。
图3 标定光栅标线图案原理图
1.2.2 细分算法
为了进一步在相邻的标线之间实现“细分”计算。处理电路将根据图像传感器的图像信息计算相邻标线之间的位移。图4为标定光栅细分区域的示意图。
图4 细分原理
图4中,O为光栅圆心,L1和L2分别为光栅上相邻的两条标线,A和C分别是L1和L2刻线的质心。根据小角度近似,图中角度θ与两基准标线夹角的比值可以计算为[11]
(2)
A、C两点的位置可以通过“质心算法”计算得出。2m的取值越大,所实现的细分分辨率越高。文中取2m=214。那么角度基准所实现的分辨率为9+14=23位,即0.15″。
μc/os操作系统,具有可读性好、实时性能强、可裁剪和可移植性强等优点[12-13]。用户通过设置不同优先级的任务函数,可以通过调度内核实现对各优先级函数的调度。
为实现转台对被测光电编码器的误差标定,处理电路的工作主要分为:接收角度基准数据、接收被测光电编码器数据、控制电机实现定位、显示数据、接收按键信息、识别指令信息和发送指令信息。采用μc/os操作系统对这些工作进行调度时,需要设定好任务函数。根据需要,本系统的任务函数主要如下:
(Task1)初始化配置任务,优先级1;
(Task2)被测数据接收任务,优先级4;
(Task3)角度基准数据接收任务,优先级4;
(Task4)按键识别和指令发送任务,优先级2;
(Task5)液晶显示任务,优先级5;
(Task6)电机驱动任务,优先级3。
以上6个任务的优先级数字越低,代表调度内核越优先执行该任务。为实现数据的同步接收,被测数据和基准数据的接收优先级相同。μc/os内核对各个任务的调度原理如图5所示。
图5 各任务函数调度原理
图5中,任务越靠外圈,其优先级越低。在上电工作时,操作系统内核首先调度任务1进行工作,对系统进行初始化设置,包括:液晶的初始显示、电机的驱动初始化等工作。完成初始化后,操作系统将调用删除指令“删除”任务1,即不再执行任务1。其他任务将按照各自优先级依次运行,每个任务的执行间隔设置为1 ms。
在对被测光电编码器进行误差标定时,需要采用电机带动角度基准旋转到指定的角度值,实现对当前位置的测角误差标定。因此,本文采用PID闭环控制模型对电机的定位进行控制。其原理如图6所示。
图6 电机控制模型
控制模型将以角度基准的数值作为反馈,通过比较“给定角度值”与“角度基准”的差值,以PID控制模型进行计算,得出控制电压(PWM占空比),实现对直流电机的控制。此外,在电压输出端加入了“电压限制”,并设置最高电压U1和最低电压U2,防止电机失控。
所设计转台的高度为110 mm,直径为90 mm。所设计的角度基准的直径为80 mm,分辨率为0.15″(23位)。驱动电机为安装有蜗轮蜗杆的直流有刷电机,其最低转速可以达到5°/s。所有的控制电路全部封装在系统电箱中。所设计转台的实物图如图7所示。
图7 转台实物图
在电箱面板上包括:二进制数值显示灯、液晶屏和按键。其中,二进制数值显示灯负责实现对被测光电编码器和角度基准输出数值的实时显示,液晶屏上显示当前设定的转角位置和误差数值。4个按键分别为:正转、反转、角度基准清零和速度控制。
为验证所设计角度基准的性能,采用24多面体和激光自准直仪对所设计的角度基准进行误差测试。所测试的误差如图8所示。
图8 角度基准的误差
对图8中的误差数据进行标准差运算后,得到所设计的角度基准的精度评估指标为4.62″。该指标满足设计需求。
为测试转台系统的定位性能,通过电箱上的按钮控制电机转动,分别每隔30°实现一次定位,并记录下完成定位时角度基准的数据与给定角度的差值,如表1所示。
表1 定位测试结果
表1中差值数据的标准差为0.26″,该数值较小,满足使用要求。
影响误差标定准确度的因素主要包括:角度基准误差、定位误差以及机械安装误差。机械安装带来的误差主要是被测光电编码器与角度基准的同轴度。在安装时,转台的同轴度在±0.1 mm以内。同轴度的影响很小,可以忽略。因此,所设计的转台的不确定度为
(3)
实验采用的被测编码器为小型绝对式光电编码器,其外径为40 mm,设计指标为16位分辨率,精度优于60″。采用转台对该编码器进行误差标定,并与采用传统误差检测装置的标定数据进行对比,结果如图9所示。
图9 数据对比结果
图9中,采用转台的误差标准差为54.31″,传统装置标定的误差标准差为53.99″。同时,通过误差曲线对比可以发现,两者的误差变化趋势相同,这表明本文所设计转台的误差标定结果可信。
采用转台对被测光电编码器进行3次误差标定,所测得的误差数值如表2所示。误差的标准差分别为53.34″、55.21″、56.39″。可以看出,3次的标定结果相近,设计的转台重复性良好。
表2 重复性实验结果
为实现批量生产时,对小型光电编码器产品的误差标定,设计了一种高分辨率的误差标定转台。首先,采用对比法搭建了光电编码器误差标定系统;然后,采用图像式角位移识别技术设计了高精度的角度基准;最后,基于μc/os操作系统调度内核,设计了转台控制电路。实验表明,本文所设计的误差标定转台能够准确实现对被测光电编码器的误差标定。