一种编码器动态误码检测系统的设计及实现 (1)
- 格式:pdf
- 大小:238.40 KB
- 文档页数:5
第28卷第8期增刊2007年8月
仪器仪表学报
ChineseJournalofSc:ientificInstrumentVoL28No.8Aug.2007
一种编码器动态误码检测系统的设计及实现万秋华1,刘焕雨1’2,李葆勇1,舍容红1(1中国科学院长春光学精密机械与物理研究所吉林长春130033;2中国科学院研究生院北京100039)
摘要:介绍了一种光电轴角编码器动态误码检测系统的结构和工作原理。克服光电轴角编码器误码检测传统方法的一系列不足,利用稳速驱动装置驱动编码器匀速旋转,并利用数据采集和计算机处理技术进行自动检测,在0.6。/s120。/s转速
范围工作状态下,实现了光电轴角编码器动态误码的检测。关键词:光电轴角编码器;动态误码;检测技术;数据采集;DSP;VC++
Developmentofasystemfordetectingdynamicerrorcode
ofphotoelectricalrotaryencoder
WanQiuhual,LiuHuanyul一,LeBaoyong,SeRonghong
(1ChangchunInstituteofOptics,FineMechanicsandPhysics,theChineseAcademyof
Sciences,
Changchun130033,China;2GraduateSchooloftheChineseAcademyofSciences,Beijing100039,China)
Abstract:Constitutionandoperatingprincipleofasystemfordetectingdynamicerrorcodeofphotoelectricalrotary
encoderispresented.Overcomeaseriesshortcomingofconventionalmethodfordetectingerrorcodeofphotoelec—
tricalrotaryencoder,drivenencoderisuniformlyrotatingbysteady-speeddrivingdevice,anddetectionisdoneby
datapickingandcomputerprocessingtechnicology.Inworkingconditionwithrotationalspeedat
0.6/s"--120/s,
detectingofdynamicerror
codeofphotoelectricalrotaryencoderisrealized.
Keywords:photoelectricalrotaryencoder;dynamicerrorcode;detectingtechnicology;Datasampling;DSP;VC++
1引言光电轴角编码器是一种精密测角装置,广泛应用于光电经纬仪等跟瞄测控系统中。由于光电编码器中的光电转换器件、放大电路的频响特性、温度特性和机械安装偏差等原因,使得编码器在工作时出现误码[1]。在实际应用中,测控系统要求编码器输出无错码。编码器在出厂前通常由人工进行误码检测,其方法是利用发光二极管构成进位阵列,手动缓慢旋转编码器,肉眼观察编码器输出值的状态。这种方法用时长,对检测人员的操作经验要求高,当编码器转速较快时,用肉眼无法准确识别出错码,因此不能进行动态误码的检测,只能进行准静态条件下的误码检测。因此,开展光电轴角编码器动态误码检测系统的研制具有重要意义。使用所研制的编码器动态误码检测系统,在编码器动态匀速旋转的工作状态下,自动进行误码检测,从而实现了对光电轴角编码器的动态误码检测。2编码器动态误码检测系统的组成编码器动态误码检测系统的组成如图1所示。稳速驱动装置使被检编码器以一定速度旋转,数据采集卡接收到采集命令后发出采样脉冲进行采样;当编码器收到采样脉冲后,将采样脉冲起始时刻的角度值通过串口(或并口)发出。数据采集卡将接收到的编码器角度值存储在数据寄存器中。通过数据采集卡,笔记228仪器仪表学报第28卷
本电脑读取编码器角度值,由软件实现对数据的采集、存储、进制转换,误码值检测及曲线图形绘制显示。瞒}谭I础I。。。。。。一‘’1’。。。。。。。。。一l稳速驱为装置L图1编码器动态误码检测系统的结构3数据采集卡的硬件电路和微处理器程序设计3.1数据采集卡的采样时序数据采集卡的采样时序如图2所示。当数据采集卡发出采样脉冲后,进行数据处理,大约200“s之后,数据采集卡通过串口(或并口)接收到编码器角度值。1.25ms司区五二__厂一信羔二u.!二!!竺’卜—————-J.——————.{・———————一镶翁鲞产串行通汛数据存储图2编码器工作时序图(采样频率为800Hz,负脉冲工作方式)3.2数据采集卡硬件电路设计数据采集卡硬件原理图如图3所示。采网R翮型…窒掣医吉{]啊赢‘御I兰!竺I兰篓篷:I图3数据采集卡硬件原理图微处理器采用TI公司的TMs320LF2407DSP芯片,此微处理器内嵌32K字Flash程序存储器,可用于掉电后程序的存储。其内部事件管理模块中包含比较单元(CⅧ)和脉冲宽度调变(PWM)电路,用比较单元和通用计时器(T妃NT)相比较,能够自行输出指定时间的波形[2]。利用此功能产生采样信号,脉冲宽度为5~10/Is,将采样信号从接口卡的串行端口或并行端口中的冗余管脚引入编码器。数据采集卡与编码器之间的数据传送可通过串行方式,也可通过并行方式进行。并行方式采用3位地址线8位数据线形式,在每一同步周期中,通过3位地址线的位值组合分别取出编码器并口专用寄存器中的三字节数据。微处理器的八支通用I/0引脚经上拉后,通过八位拨码开关接地,即可手动改变这些I/o引脚的状态,在程序复位时通过查询拨码开关的电平,进行不同功能选项的初始化,如表1所示。微处理器从编码器取出数据后,由并口传输给笔记本电脑。表l功能选择I/o状态位的标记功能表I/0脚序号状态位的标记功能I、2采样脉冲频率选择(400Hz,800Hz,1kHz)3采样脉冲极性选择(负脉冲方式,正脉冲方式)4串口、并口选择
;。串口波特率选择“”(9600bps,11.52kbps,23.04kbps)
7串口通讯方式选择(方式1,方式2)
8带(或不带)奇偶校验位选择
3.3采集卡上微处理器程序的设计微处理器程序流程图如图4所示。
DSP上电复位,CPU初始化,检查功能进I/O状态,进行不同功能选项的初始化。
接收PC机命令
启动定时器产牛脉冲,查询判断脉冲下降沿标志周期开始标志为1
兰堡!旦i.\呈堡登堡/查
/判断串并
串口采集和存储fi垄壁旦并口采集和存储l并口为读状态/检测并口\并口为写状态广——_\读写状态/l
/是否已发\/接收—个字节\
!剐
是八鲨簋抑否发送一字Il是广—上一
型病军
l\里垄堡堡查/图4微处理器程序流程图DSP上电复位后检查I/O引脚状态,进行不同功能选项的初始化。开始查询等待主计算机的指令,如通过并口收到主机指令,且为开始工作指令,则启动定时器产生并输出采样脉冲,并设定脉冲上升沿(或下降第8期增刊万秋华等:一种编码器动态误码检测系统的设计及实现229沿)产生中断。每当中断产生,进入数据采集程序。对于串口通讯方式,采用查寻等待方式,接收并存储三字节数据。对于并口通讯方式,等待200弘s后,依次给出三字节数据地址选通信号,并将接收到的数据存储到DSP芯片的内存中。每当三字节数据采集和存储结束后,转入下一位数据采集。在并口传输过程中,DSP不断查询主机有无控制指令发出,若有则通过并I:1接收并判断,若为采集结束指令,则停止计时器计时和采集工作。4计算机上的软件设计4.1并口通讯及数据采集主计算机采用笔记本电脑,在CMOS中设置并口试配器为增强型并口(EPPl.9)工作方式,并口地址为378H。在VC++环境下,利用并口输入/输出函数m3编制采集程序,向采集卡发送控制命令,从采集卡接收编码器输出数据。并口写操作的时序如图5所示。在ta时刻,应用程序向EPP数据口写数据,启动EPPI/0写周期。t2时刻,主机将nWRITE置低,并将数据置于数据线ADO~AD7上。此时,如果主机检测nWAIT是底电平,在t3时刻将置nDATASTB为低电平,数据传输开始。外设接到信号后,在t4时刻将置nWAIT为高电平。作为响应,主机在ts时刻,置nDATASTB为高电平。在t6时刻,主机nWRITE和IOW置为高电平,结束i/o周期。并口读操作时nWRITE一直置高,主机通过检测nWAIT的电平判断外设是否已经准备好数据。图5并口数据写周期时序图4.2数据存储及数据格式转换在VC++环境下,调用MyFile.Open()函数哺3创建一个“原始数据.txt”文件,调用MyFile.Write()函数将采集到的二进制数据存储。调用MyFile.Open()函数打开存储数据的“原始数据.txt”文件,将角度值由二进制转换为十进制整型数(度、分、秒),存储到一个中间数组中,创建一个“用户观察文件.txt”文件,将中间数组中的数据存入。创建一个“绘图数据文件.txt”文件,将中间数组中的数据存入。4.3编码器误码值检测及曲线绘制将检测出的误码值及其相对应的采样点序号一同存入“误码值文件.txt”文件。以采样点序号为横坐标,以编码器输出角度值为纵坐标绘制曲线图。为便于观察,图形的显示具有坐标伸缩和位置调整功能。
5实验结果及结论应用所研制的系统对某20位光电轴角编码器进行动态误码检测,编码器单向匀速旋转,转速范围0.6"--120。/s。图6为编码器在转速120。/s工作状态下的输出值曲线图。经观察发现左下角处有图形跳变存在,与此同时“误码值文件”中显示有误码存在,通过误码值对应的采样点序号对显示坐标进行调整,获得图7的显示效果。对误码情况进行分析及经编码器调整后,进行同等条件下检测不再出现误码现象。
‘rt㈣●
』|l|/||///』
|l/fi||7|
|fJf||
—、JJ7J|{|fJf/
f/
lyj/||/{|ff/
,fl
√
图6编码器输出值曲线图
图7坐标调整后编码器输出值曲线图本系统实现了对光电轴角编码器的动态误码检测,为编码器动态特性的确认和研究提供了实用有效的测试仪器。