基于EnDat数据传输周期的多卡同步采集方法*
2016-02-07周楷涛姜歌东
周楷涛,姜歌东,b,陶 涛,b,邹 创
(西安交通大学 a.机械工程学院;b.机械制造系统工程国家重点实验室,西安 710049)
基于EnDat数据传输周期的多卡同步采集方法*
周楷涛a,姜歌东a,b,陶 涛a,b,邹 创a
(西安交通大学a.机械工程学院;b.机械制造系统工程国家重点实验室,西安 710049)
在基于内置传感器的数控机床性能测试中,以三通方式采集EnDat编码器信号与其它类型编码器信号时,存在同步不准的问题,故提出了一种以EnDat信号采集卡为主卡,EnDat数据传输周期分频信号作为采样时钟的多卡同步采集方法。基于CPLD+MCU实现了EnDat数据传输周期的获取及分频电路的设计。通过在数控磨齿机上进行EnDat数据传输周期获取实验,验证了EnDat数据传输周期获取方法及分频电路设计的正确性,并在该数控磨齿机的传动链测试实验中验证了基于EnDat数据传输周期的多卡同步采集方法的可行性。
EnDat编码器信号;数据传输周期;分频信号;同步采集
0 引言
EnDat接口是HEIDENHAIN公司推出的一种全双工数字式的同步串行传输协议[1],主要用于编码器和光栅尺位置数据的传输[2,3]。由于其传输速度快,抗干扰能力强,连线方式简单等特点,现已广泛应用于数控机床、高精度伺服系统的内部通信。
国内外一些公司和学者专门对此协议进行了研究和应用,HEIDENHAIN公司[4]、TI公司[5]、华中科技大学的huYongbing等[6]设计了针对EnDat2.2位置编码器的通信接口设备。然而,这些设备与EnDat编码器的通信都属于主动通信。在基于内置传感器的数控机床性能测试中[7-9],需要在机床正常工作、不改变数控系统通信状态情况下,读取编码器、光栅尺等数控机床反馈元件的信号,我们称这种方式为三通方式的信号采集[8-9]。EnDat接口在数控系统中采用了主动通信方式,在这种情况下,同样采用主动通信方式工作的采集卡和接口设备无法实现三通方式的信号采集。为此,西安交通大学的陶涛、范胜乾等[10]提出并开发了一种基于三通方式的EnDat信号采集卡,但其还未提出解决EnDat采集卡与其他类型采集卡的同步采集问题的方法。多通道数据同步采集是多传感器信息融合技术的关键[11]。数控机床各轴常见的位置反馈信号包括正余弦1Vpp、TTL和EnDat等多种形式,实现这些信号的同步采集,可以对机床的多轴联动性能进行分析。德国的ADDI-DATAGmbH公司[12]针对Endat接口,设计开发了APCI-8008等板卡,能够实现8个EnDat2.2编码器信号的同步采集,但其只是对一种形式的信号进行同步采集,且不能满足三通方式的采集需求。
因此,研究和实现基于三通方式的EnDat信号采集卡与其他板卡的同步采集技术对实现基于内置传感器的数控机床多轴信息获取和保证同步测试精度具有重要意义。
1 同步采集方案
1.1 EnDat接口简介
EnDat传输协议如图1所示,可带或不带附加信息。没有数据传输时,时钟信号线保持为高电平状态,每个传输周期开始时,时钟信号由高电平转变为低电平,数据传输期间,时钟信号高、低电平占空比为1:1。
一个传输周期结束时,时钟信号有一段恢复时间tm,其范围在10~30μs或1.25~3.75μs(fc≥1MHz),当时钟信号的高电平持续时间超过tm时,时钟信号的下降沿到来时刻标志着下一个传输周期的开始。
图1 EnDat传输协议
可以发现,后续电子设备与EnDat接口的编码器通信时,后续电子设备采用了主动方式去获取编码器的数据,不断地向编码器发送同步时钟信号,编码器在每个传输周期同步时钟信号的第一个下降沿到来时保存位置值,因此,其他采集卡也应该在此时刻锁存数据才能保证采集数据的同步性。
1.2 同步采集方案的确定
通过对EnDat接口同步时钟信号进行分析,可以利用CPLD设计电路生成EnDat数据传输周期信号status_idle,该信号时序如图2所示。
图2 EnDat传输周期信号时序图
数控系统位置反馈元件常见的接口形式有三类:正余弦1Vpp格式、TTL格式和EnDat格式。1Vpp信号由IK200计数卡采集;EnDat信号由基于三通方式的EnDat信号采集卡采集;TTL格式信号由PCI1784/CNT32等采集卡采集。以1Vpp和EnDat接口形式为例,要实现这两种格式信号的同步采集,可以有以下两种方案:
(1)IK220做主卡,向EnDat采集卡发送同步采样时钟。
(2)EnDat采集卡做主卡,向IK220发送同步采样时钟。
若采用IK200计数卡作为主卡向EnDat采集卡发送同步采样时钟,由于采样时钟可能出现在Status_idle一个周期的任意时刻,此时寄存器中锁存的数据将是上一个传输周期同步时钟第一个下降沿到达编码器时编码器保存的位置值,那么就有可能产生与通信周期同等量级的伪同步时间偏差,造成实际物理信号采集同步不准的问题。因此,本文采用第二种方案,预以Status_idle作为同步采样时钟信号。
1.3 多卡同步采集
IK220使用手册[4]中指出了其采集增量式编码器信号的最高采样频率可达10kHz,陶涛、范胜乾等[10]在其专利中说明了基于三通方式的EnDat信号采集卡的最高采样频率可达5kHz,HEIDENHAIN的技术资料[2]中指出了EnDat数据接口的传输时间不超过50μs,即EnDat数据传输频率至少为20kHz,远远超出了EnDat信号采集卡和IK220的最高采样频率,因此,不能直接将Status_idle信号作为同步采样时钟信号,需要先将Status_idle信号进行分频,以其分频信号作为IK220或其他类型采集卡的同步采样时钟信号。EnDat传输周期信号的十六分频信号Sample_Out如图3所示。
图3 EnDat传输周期信号的十六分频
EnDat接口数据传输周期的获取方案如图4所示。经过EnDat采集卡的预处理电路将差分时钟信号转换成单端时钟信号,并通过滤波电路提高了信号的质量,利用CPLD设计EnDat数据传输周期获取电路,然后通过MCU将传输周期的采样数据传送给上位机,进行显示并保存。
图4 基于三通方式的EnDat接口数据传输周期获取方案
EnDat信号采集卡的系统时钟为100MHz,综合对数据传输周期计算精度和芯片资源两方面考虑,最终选择利用系统时钟的八分频信号clk_12M对传输周期信号Status_idle进行计数,因此,获取的数据传输周期分辨率为80ns。EnDat数据传输周期计算模块如图5所示。
图5 EnDat数据传输周期计算模块
利用EnDat采集卡的扩展端口引脚向外输出分频信号,通过同步线输送到其他采集卡的同步时钟输入引脚。EnDat信号采集卡与1Vpp信号采集卡和TTL信号采集卡同步采集时,连线方式如图6所示。
图6 多卡同步连线示意图
2 实验
图7为国内某机床厂数控蜗杆砂轮磨齿机传动链测试现场。其中机床C轴采用EnDat接口的圆光栅反馈位置信息,其余各轴采用正余弦1Vpp格式的编码器或光栅尺反馈位置信息。
2.1 EnDat接口数据传输周期获取实验
为验证本文论述的EnDat接口数据传输周期获取方法的正确性,将测试系统切换为数据传输周期采集模式,得到的结果如图8所示。
图7 数控磨齿机传动链测试现场
图8 某机床上EnDat接口数据传输周期
由图8可知,该机床C轴圆光栅EnDat接口传输周期信号波动平稳,传输周期测试结果为50μs,分辨率为80ns,即传输频率为20kHz,远高于EnDat采集卡和IK220的最高采样频率。因此,两种类型的采集卡同步采集时,需要对Status_idle信号进行分频。
2.2 传输周期分频信号验证
为验证该机床EnDat接口数据传输周期就是50μs,将status_idle的四分频信号通过EnDat采集卡扩展接口的引脚输出,通过示波器观察四分频信号的波形和频率。示波器显示结果如图9所示。
图9 示波器显示status_idle四分频信号
由图9可知,示波器显示该机床C轴圆光栅EnDat接口传输周期四分频信号频率为5kHz,因此,Status_idle的频率为20kHz,周期为50μs,与测试系统显示结果相同,从而验证了EnDat接口传输周期获取方法的正确性以及分频电路设计的正确性。
2.3 EnDat采集卡做主卡的同步采集技术实验
数控蜗杆砂轮磨齿机采用展成法原理对齿轮进行磨削加工时,S、C、X、Y、Z五轴联动,S轴为砂轮主轴,C轴为齿轮旋转轴,X轴实现砂轮沿齿轮径向进给运动,Y轴实现砂轮沿齿轮切向进给运动,Z轴实现砂轮沿齿轮轴向进给运动,其中,S、C、Y、Z四轴之间存在如式(1)关系:
(1)
式中,PC、PS、PY、PZ分别表示这四根轴的位置值;KSC、KYC、KZC分别是S、Y、Z三轴与C轴的位置关系比例系数;NS、Nd分别为砂轮头数和齿轮齿数,Mr为齿轮法面模数,λ为砂轮导程角,β为齿轮螺旋角。
测试机床传动链性能时,程序设定S轴转速为1500rpm,磨削齿轮齿数为70,齿轮螺旋角为0,砂轮头数为1,导程角为20′,通过计算可知C轴转速为21.4286rpm。用EnDat信号采集卡采集C轴位置信号,IK220计数卡采集S、Y、Z三根轴位置信号,并通过EnDat采集卡给IK220发送同步采样时钟信号,采用Status_idle的16分频信号作为同步采样时钟信号,IK220在此采样时钟信号的下降沿到来时锁存计数值,保证了与EnDat接口的编码器同步锁存,采样频率通过计算可知为1250Hz。采集的位置信号经过该采样频率的计算,得到C轴和S轴的速度如图10所示。
图10 EnDat采集卡与IK220同步采集结果
由图10可知,C轴的转速和S轴的转速与机床程序设定值相同,波动平稳,结果说明EnDat信号采集卡做主卡,传输周期信号的分频时钟作为同步采样时钟信号的可行性和正确性。
机床实际运行过程中,由于传动链误差的存在,使得C轴与S、Y、Z三轴位置关系不可能完全相等,通过对这四根轴实际位置进行同步采样,根据C轴位置差来分析机床的传动链性能。C轴的理论位置可通过式(2)计算得到,C轴位置差由式(3)计算得到。
(2)
(3)
C轴位置差测试分析结果如图11所示,由此可知,该机床传动链误差量级大概在0.001°,若以IK220做主卡给Endat采集卡发送同步采样时钟信号,则采样脉冲可能出现在status_idle信号一个周期的任意时刻,与status_idle信号下降沿最大可能相差一个传输周期的时间50μs,当C轴转速为21.4286rpm,50μs的时间C轴将转动0.0064°,比传动链误差还大,测试数据将完全失真。因此,EnDat接口编码器与正余弦格式等编码器同步采集时,EnDat信号采集卡必须作为主卡。
图11 传动链误差分析结果
3 结论
本文介绍了一种基于EnDat数据传输周期的多卡同步采集方法,并得出以下结论:①基于三通方式的EnDat信号采集卡与其他采集卡同步采集时,EnDat采集卡必须作为主卡,向其他类型的采集卡提供同步时钟;②获取了EnDat数据传输周期,证明了EnDat主控设备与编码器的通信频率高于EnDat采集卡的最高采样频率;③采用EnDat传输周期分频信号作为同步采样时钟,实现了多卡同步采集。最终,通过实验验证了此方案的正确性。其中,EnDat数据传输周期的获取也为分频时钟倍率的选择和数控机床传动链性能后续分析提供了参数依据。
[1]HEIDENHAIN.EnDatInterfaceVERSION2.2BidirectionalSynchronousSerial-InterfaceforPositionEncoders[EB/OL].http://download.csdn.net/detail/sdhgood/4568886.
[2]HEIDENHAIN. 用于伺服驱动的编码器[EB/OL].http://www.heidenhain.de/.
[3]HEIDENHAIN.EnDat2.2-BidirectionalInterfaceforPositionEncoders[EB/OL].http://www.heidenhain.de/fileadmin/pdb/media/img/383942-27_EnDat_2-2_en.pdf.
[4]HEIDENHAIN.User’sManualIK220PCCounterCardforHEIDENHAINencoders[EB/OL].http://www.heidenhain.de/.2006.
[5]TI.InterfacetoanEnDat2.2PositionEncoder[EB/OL].http://www.ti.com/lit/ug/tidu368/tidu368.pdf.2014.
[6]HuYongbing,ZhouYunfei.ImplementationoftheEnDat2.2InterfaceProtocolBasedonVerilogforPositionEncoderSystem[J].JournalofConvergenceInformationTechnology(JCIT), 2013,8(10): 317-324.
[7] 周玉清,梅雪松,姜歌东,等. 基于内置传感器的大型数控机床状态检测技术[J]. 机械工程学报, 2009, 45(4): 125-130.
[8] 赵飞,梅雪松,李光东,等. 数控成形磨齿机加工误差在线监测及补偿[J]. 机械工程学报, 2013, 49(1): 171-177.
[9] 史建强,姜歌东,赵飞,等. 一种数控机床空间圆运动轨迹测试方法[J]. 组合机床与自动化加工技术, 2014(7): 57-61.
[10] 陶涛,范胜乾. 一种基于三通方式的EnDat信号采集卡:中国,CN103324116A[P] .2013-09-25.
[11]VladimirTerzija,MladenKezunovic.SynchronisedMeasurementTechnologyforAnalysisofTransmissionLinesFaults[C]. 2011IEEEInternationalConferenceonSystemSciences,Hawaii, 2011: 1530-1605.
[12]ADDI-DATAGmbH.http://addi-data.net/endat-2-2/.Web.
(编辑 李秀敏)
Synchronous Acquisition Method between DAQ Cards Based on EnDat Data Transmission Period
ZHOUKai-taoa,JIANGGe-donga,b,TAOTaoa,b,ZOUChuanga
(a.SchoolofMechanicalEngineering;b.StateKeyLaboratoryforManufacturingSystemsEngineering,Xi’anJiaotongUniversity,Xi’an710049,China)
IntheperformancetestofCNCmachinetoolbasedonbuilt-insensors,thereexistsaproblemthatsynchronizationisnotaccuratewhenEnDatencodersignalandtheotherencoderssignalareacquiredbyteeway.AmethodisproposedthatEnDatdataacquisitioncardservesasmaincard,andthefrequencydivisionsignalofEnDatdatatransmissionperiodisusedassampleclocktorealizesynchronousacquisitionbetweenmultipleDAQCards.TheacquisitionofEnDatdatatransmissionperiodandthedesignoffrequencydivisioncircuitwererealizedbasedonCPLD+MCU,whichhavebeenverifiedtobetruethroughanexperimentmadeonanumericalcontrolgeargrindingmachinetoacquireEnDatdatatransmissionperiod.Moreover,themethodfeasibilityofsynchronousacquisitionbetweenmultipleDAQCardsbasedonEnDatdatatransmissionperiodhasbeenprovedinthetestexperimentoftransmissionchainoftheCNCgeargrindingmachine.
EnDatencodersignal;datatransmissionperiod;frequencydivisionsignal;synchronousacquisition
1001-2265(2016)12-0009-04DOI:10.13462/j.cnki.mmtamt.2016.12.003
2015-12-31;
2016-01-27
国家科技支撑计划:陕西省数控一代机械产品创新应用示范工程(2013BAF04B01)
周楷涛(1990—),男,江西九江人,西安交通大学硕士研究生,研究方向为数控机床性能测试与分析,(E-mail)1184759264@qq.com。
TH166;TG
A