《位置传感器接口支持多种传感器通信协议的实现方法.pdf》由会员分享,可在线阅读,更多相关《位置传感器接口支持多种传感器通信协议的实现方法.pdf(11页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN102045345A43申请公布日20110504CN102045345ACN102045345A21申请号201010554816022申请日20101123H04L29/06200601H04L12/4020060171申请人广州数控设备有限公司地址510663广东省广州市科学城彩频路11号软件园D栋7楼72发明人廖文高暨绵浩74专利代理机构广州市华学知识产权代理有限公司44245代理人裘晖54发明名称位置传感器接口支持多种传感器通信协议的实现方法57摘要本发明提供一种位置传感器接口支持多种传感器通信协议的实现方法,该方法可以实现支持TAMAGAWA接口数据传输协议、BI。
2、SS接口数据传输协议、SSI接口数据传输协议以及ENDAT接口数据传输协议,并且智能识别以上四种任意一种传感器传输协议的功能,大大方便了广大客户及现场技术人员的现场调试,具有很强的实用性。51INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书5页附图3页CN102045349A1/2页21一种位置传感器接口支持多种传感器通信协议的实现方法,其特征在于,具体步骤包括1对伺服控制系统上电后,FPGA模块以及外围电路开始工作,FPGA模块上的加载软件并开始运行;2FPGA模块开始工作后,默认为ENDAT通信协议并执行ENDAT通信功能,输出时钟CLK和发送模式命令通过48。
3、5芯片及双绞线给位置编码器;3FPGA模块的ENDAT通信模块等待是否收到从位置编码器中传来的数据,若未收到数据,继续步骤4,否则,检测从位置编码器中传来的数据类型;4FPGA模块换用BISS通信协议并执行BISS通信功能,发送读取位置编码器类型的命令给位置编码器;5FPGA模块的BISS通信模块判断是否收到位置编码器中传来的数据,若未收到数据,继续步骤5,否则,检测从位置编码器中传来的数据类型;6FPGA模块换用SSI通信协议并执行SSI通信功能,将时钟CLK拉为低电平,并将485芯片DE置为低电平控制485芯片处于接收数据状态;7FPGA模块将判断485芯片数据输出引脚DATAINPUT是。
4、否为低电平,若为高电平,继续步骤8,否则,判断类型总线的特征;8FPGA模块将执行UART通信协议执行UART通信功能,此时FPGA模块不输出时钟CLK,但将采用多摩川编码器读取位置值的通信命令以UART通信协议发送给位置编码器;9检测FPGA模块中的UART通信模块是否收到的数据,如果收到数据是UART通信协议类型的位置编码器的读取位置值的命令字及位置值,则FPGA模块将采用UART通信协议进行通信,如果未收到数据,则说明位置传感器接口没有接位置编码器或所接的位置编码器总线协议本设计未支持。2根据权利要求1所述的一种位置传感器接口支持多种传感器通信协议的实现方法,其特征在于,所述步骤3的检测。
5、从位置编码器中传来的数据类型,如果数据类型是属于ENDAT通信协议的数据格式,则FPGA模块采用ENDAT通信协议的位置编码器进行通信;如果数据类型不属于ENDAT通信协议的数据格式,则继续步骤4。3根据权利要求1所述的一种位置传感器接口支持多种传感器通信协议的实现方法,其特征在于,所述步骤5的检测从位置编码器中传来的数据类型,如果从位置编码器中传来的数据类型是BISS通信协议的位置编码器类型数据,则FPGA模块采用BISS通信协议位置编码器进行通信;如果从位置编码器中传来的数据类型不是BISS通信协议的位置编码器类型数据,则继续步骤6。4根据权利要求1所述的一种位置传感器接口支持多种传感器通。
6、信协议的实现方法,其特征在于,所述步骤7的判断类型总线的特征,如果判断类型总线的特征为符合支持SSI通信协议,则FPGA模块采用SSI通信协议位置编码器进行通信,否则,继续步骤8。5根据权利要求1所述的一种位置传感器接口支持多种传感器通信协议的实现方法,其特征在于,所述FPGA模块包括CPU模块接口控制单元,由数据、地址、读写控制总线组成,用于读取CPU模块写来的数据并将数据写入输入输出数据缓冲单元,和读取输入输出数据缓冲单元的位置传感器数据提供CPU模块读取,完成FPGA模块内部数据与CPU模块的交互;权利要求书CN102045345ACN102045349A2/2页3输入输出数据缓冲单元,。
7、由RAM、数据、地址和读写控制总线组成,用于完成缓存CPU模块写入的数据和各种通信模块写入的数据,以及提供CPU模块和通信模块读取数据;自动识别位置传感器控制单元,由主控制单元、读写数据及控制信号单元组成,用于完成自动发送命令、输出控制信号和接收位置传感器数据,根据发送的命令及控制信号和接收数据识别当前所接的位置传感器支持哪种通信协议;485控制逻辑单元模块,用于控制485芯片收发数据,使485芯片以差分信号与位置传感器对接通信;所述CPU模块接口控制单元与输入输出数据缓冲单元相连接,所述输入输出数据缓冲单元分别与UART通信协议模块、ENDAT通信协议模块、BISS通信协议模块、SSI通信协。
8、议模块以及自动识别位置传感器控制单元相连接,所述自动识别位置传感器控制单元分别与UART通信协议模块、ENDAT通信协议模块、BISS通信协议模块、SSI通信协议模块以及输入输出数据缓冲单元相连接,所述485控制逻辑单元分别与UART通信协议模块、ENDAT通信协议模块、BISS通信协议模块、SSI通信协议模块以及自动识别位置传感器控制单元相连接。权利要求书CN102045345ACN102045349A1/5页4位置传感器接口支持多种传感器通信协议的实现方法技术领域0001本发明涉及到伺服控制技术领域,尤其涉及一种位置传感器接口支持多种传感器通信协议的实现方法。背景技术0002现代制造业规模。
9、化生产对加工设备提出了高速度、高精度、高效率的要求,全数字化是伺服驱动技术发展的必然趋势。全数字化包括伺服驱动内部控制的数字化;伺服驱动到数控系统接口的数字化;测量单元数字化。伺服驱动单元内部位置、速度、电流三环的全数字化、网络控制连接接口、编码器到伺服驱动的数字化连接接口,成为全数字化的重要标志,如图1所示。0003高分辨率编码器成为减少伺服驱动系统转矩脉动的技术手段。德国海德汉公司HEIDENHAIN对不同分辨率的编码器对转矩脉动的影响进行了研究,并通过提高编码器分辨率,大大减少了伺服驱动的转矩脉动。德国HEIDENHAIN将各种类型的编码器,如绝对、增量式和正余弦编码器的细分功能,都统一。
10、到ENDAE22编码器连接协议中。细分过程在编码器内部完成,通过数字接口和伺服驱动连接起来。0004传感器通信电路一般采用并行或串行通信电路,虽然并行通信速度快,但需要的通信线路要很多,特别是通信线路很长的时候更不适合采用并行通信。因此绝大部分传感器通信一般为串行通信电路,串行通信协议一般分为IIC、1WIRE、UART、RS232、RS485、BISS、SSI、ENDAT总线协议,它们只需要一根或2根通信线路就可以完成通信,在长距离通信时一般它们都采用差分信号传输,这也只需要2根或4根通信线路。0005以下为四种常用传感器通讯协议00061、TAMAGAWA接口数据传输协议0007多摩川位置。
11、传感器接口遵循的是一种半双工的数据传输协议,电路信号遵循RS485差分电路信号标准,目前,多摩川已经推出最高达到36位的绝对式编码器,其中单回转20位,多回转16位。最大响应频率可以达到52MHZ。可以真正实现高速高精度实时控制,多摩川位置传感器接口电路如图2所示。00082、BISS接口数据传输协议0009BISS协议是一种新型全数字化双向传感器接口。它定义了工业控制系统中一台主站和若干从站传感器之间的通讯。BISS是一种新的技术标准,可以在无需许可的情况下使用。由于其高性能,它成为数据接口和模拟正弦/余弦增量输出的标准组合的一个有效的替代方案。0010BISS总共只需要6条线路4条数据线,。
12、2条电源线,因此控制器不需要处理模拟信号的任何硬件模拟信号电缆/驱动器内插电子电路,这样有助于降低系统成本,并且最多8个传感器可以与一个总线主站相连。对于多轴应用来说,连线和控制成本显著降低。00113、SSI接口数据传输协议0012SSI接口即同步串行接口具有传输速度快、连线简单、抗干扰能力强等优点,因而说明书CN102045345ACN102045349A2/5页5在光电编码器得到了广泛的应用;SSI接口光电编码器采用主机读取方法,是以2对符合RS422电平的信号线进行信号传输,1对数据DATA线,1对同步时钟CLOCLK线,SSI同步时钟频率决定数据传输速率,其范围较宽,为012MHZ,。
13、可以根据传输距离远近选择相应的传输速率。00134、ENDAT接口数据传输协议0014ENDAT数据接口是海德汉为位置传感器开发的一种数字式、全双工的数据传输接口,它不仅能为增量式或绝对式编码器传输位置数据,而且能够传输和存储编码1器参数、OEM数据以报警和诊断信息。在西门子、海德汉等数控系统中带有标准的ENDAT接口。ENDAT数据协议包括ENDAT22和ENDAT21,ENDAT22兼容ENDAT2的指令和时间序列,同时它具有更强的功能在传输位置信息的同时能够传输附加的信息和参数,它继承并扩展了ENDAT21的指令功能,优化了传输时钟。0015ENDAT接口提供了传输位置值以及附加信息;编。
14、码器数据存储区域包括编码器制造商参数、OEM厂商参数、运行参数、运行状态;编码器重置功能;监控和诊断功能,报警信息。报警条件包括光源失效、信号幅值不足、位置计算错误、运行电压太低或太高、电流消耗太大等;当编码器的一些极限值被接近或超过时提供警告信号。ENDAT接口遵循的是一种全双工的数据传输协议,电路信号遵循RS485差分电路信号标准,在后续电子设备的同步时钟激励下传输串行数据。ENDAT接口电路如图3所示。0016目前,一种位置传感器接口只能实现一种传感器通信协议,而并不能支持其他的传感器协议,以上四种接口也是如此,TAMAGAWA接口只能支持TAMAGAWA接口数据传输协议、BISS接口只。
15、能支持BISS接口数据传输协议、SSI接口只能支持SSI接口数据传输协议、ENDAT接口只能支持ENDAT接口数据传输协议,这些位置传感器接口大大的增加了技术人员的现场调试难度,在实用性上具有较强的局限性。发明内容0017本发明的目的在于克服现有技术的缺点与不足,提供一种位置传感器接口支持多种传感器通信协议的实现方法,该方法能够实现支持TAMAGAWA接口数据传输协议、BISS接口数据传输协议、SSI接口数据传输协议以及ENDAT接口数据传输协议,并且智能识别以上四种任意一种传感器传输协议的功能,大大方便了广大客户及现场技术人员的现场调试,具有很强的实用性。0018为了达到上述目的,本发明采用。
16、以下技术方案0019一种位置传感器接口支持多种传感器通信协议的实现方法,以下所述的FPGA模块也可以使采用CPLD模块实现,具体步骤包括00201对伺服控制系统上电后,FPGA模块以及外围电路开始工作,FPGA模块上的加载软件并开始运行;00212FPGA模块开始工作后,默认为ENDAT通信协议并执行ENDAT通信功能,输出时钟CLK和发送模式命令通过485芯片及双绞线给位置编码器;00223FPGA模块的ENDAT通信模块等待是否收到从位置编码器中传来的数据,若未收到数据,继续步骤4,否则,检测从位置编码器中传来的数据类型;00234FPGA模块换用BISS通信协议并执行BISS通信功能,发。
17、送读取位置编码器类型说明书CN102045345ACN102045349A3/5页6的命令给位置编码器;00245FPGA模块的BISS通信模块等待是否收到位置编码器中传来的数据,若未收到数据,继续步骤5,否则,检测从位置编码器中传来的数据类型;00256FPGA模块换用SSI通信协议并执行SSI通信功能,将时钟CLK拉为低电平,并将485芯片DE置为低电平控制485芯片处于接收数据状态;00267FPGA模块将判断485芯片数据输出引脚RO是否为低电平,若为高电平,继续步骤8,否则,判断类型总线的特征;00278FPGA模块将执行UART通信协议执行UART通信功能,此时FPGA模块不输出时。
18、钟CLK,但将采用多摩川编码器读取位置值的通信命令以UART通信协议发送给位置编码器;00289检测FPGA模块中的UART通信模块是否收到的数据,如果收到数据是UART通信协议类型的位置编码器的读取位置值的命令字及位置值,则FPGA模块将采用UART通信协议进行通信,如果未收到数据,则说明位置传感器接口没有接位置编码器或所接的位置编码器总线协议本设计未支持。0029所述步骤3的检测从位置编码器中传来的数据类型,如果数据类型是属于ENDAT通信协议的数据格式,则FPGA模块采用ENDAT通信协议的位置编码器进行通信;如果数据类型不属于ENDAT通信协议的数据格式,则继续步骤4。0030所述步骤。
19、5的检测从位置编码器中传来的数据类型,如果从位置编码器中传来的数据类型是BISS通信协议的位置编码器类型数据,则FPGA模块采用BISS通信协议位置编码器进行通信;如果从位置编码器中传来的数据类型不是BISS通信协议的位置编码器类型数据,则继续步骤6。0031所述步骤7的判断类型总线的特征,如果判断类型总线的特征为符合支持SSI通信协议,则FPGA模块采用SSI通信协议位置编码器进行通信,否则,继续步骤8。0032所述FPGA模块包括0033CPU模块接口控制单元,由数据、地址、读写控制总线组成,用于读取CPU模块写来数据并将数据写入输入输出数据缓冲单元,和读取输入输出数据缓冲单元的位置传感器。
20、数据提供CPU模块读取,完成FPGA模块内部数据与CPU模块的交互;0034输入输出数据缓冲单元,由RAM、数据、地址和读写控制总线组成,用于完成缓存CPU模块写入的数据和各种通信模块写入的数据,以及提供CPU模块和通信模块读取数据;0035自动识别位置传感器控制单元,由主控制单元、读写数据及控制信号单元组成,用于完成自动发送命令、输出控制信号和接收位置传感器数据,根据发送的命令及控制信号和接收数据识别当前所接的位置传感器支持哪种通信协议;0036485控制逻辑单元模块,用于控制485芯片收发数据,使485芯片以差分信号与位置传感器对接通信;0037所述CPU模块接口控制单元与输入输出数据缓冲。
21、单元相连接,所述输入输出数据缓冲单元分别与UART通信协议模块、ENDAT通信协议模块、BISS通信协议模块、SSI通信协议模块以及自动识别位置传感器控制单元相连接,所述自动识别位置传感器控制单元分别与UART通信协议模块、ENDAT通信协议模块、BISS通信协议模块、SSI通信协议模块以及输入输出数据缓冲单元相连接,所述485控制逻辑单元分别与UART通信协议模块、ENDAT通说明书CN102045345ACN102045349A4/5页7信协议模块、BISS通信协议模块、SSI通信协议模块以及自动识别位置传感器控制单元相连接。0038本发明相对于现有技术具有如下的优点及效果00391、本发。
22、明将目前市场上普遍使用的多种编码器协议完美的兼容在一起,驱动器具有智能识别以上任意一种编码器的功能。00402、本发明方法将大大方便了广大客户及现场技术人员的现场调试,具有很强的实用性。00413、本发明支持多种协议的通用接口可以在DAH系列驱动器中使用并大量用在数控机床,加工中心上。附图说明0042图1是现有技术中的全数字三闭环伺服控制系统结构示意图;0043图2是现有技术中的RS485接口电路示意图;0044图3是现有技术中的BISS、SSI、ENDAT接口电路示意图;0045图4是应用本发明支持多种传感器通信协议的位置传感器接口的伺服控制系统的结构示意图;0046图5是本发明所述的FPG。
23、A模块结构示意图;0047图6是本发明一个位置传感器接口支持多种传感器通信协议的实现方法的流程示意图。具体实施方式0048下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。0049实施例10050图4是应用本发明支持多种传感器通信协议的位置传感器接口的伺服控制系统的结构示意图,该系统包括CPU模块、FPGA模块、485芯片以及位置传感器接口,其中CPU模块与FPGA模块相连接,FPGA模块分别与两个485芯片连接,位置传感器分别与两个485芯片相连接。其中CPU模块只是用于读写FPGA模块里缓存的位置传感器数据及其他信息而已,CPU模块主要用于读到位置传感器数据后做具。
24、体的应用,如运动控制之类应用。CPU模块通过数据、地址、读写控制总线访问FPGA模块;FPGA模块在本设计属于核心作用,不仅实现了自动识别多种位置传感器的功能,而且可提供数据和接口供CPU模块总线读写数据,还控制了485芯片收发数据和输出时钟信号;485芯片主要完成将TTL电平和差分信号相互转换;位置传感器接口主要完成多种位置传感器信号的同一对接。0051图5是本发明所述FPGA模块的结构示意图,所述FPGA模块包括0052CPU模块接口控制单元,由数据、地址、读写控制总线组成,用于读取CPU模块写来数据并将数据写入输入输出数据缓冲单元,和读取输入输出数据缓冲单元的位置传感器数据提供CPU模块。
25、读取,完成FPGA模块内部数据与CPU模块的交互;0053输入输出数据缓冲单元,由RAM、数据、地址和读写控制总线组成,用于完成缓存CPU模块写入的数据和各种通信模块写入的数据,以及提供CPU模块和通信模块读取数据;说明书CN102045345ACN102045349A5/5页80054自动识别位置传感器控制单元,由主控制单元、读写数据及控制信号单元组成,用于完成自动发送命令、输出控制信号和接收位置传感器数据,根据发送的命令及控制信号和接收数据识别当前所接的位置传感器支持哪种通信协议;0055485控制逻辑单元模块,用于控制485芯片收发数据,使485芯片以差分信号与位置传感器对接通信;005。
26、6所述CPU模块接口控制单元与输入输出数据缓冲单元相连接,所述输入输出数据缓冲单元分别与UART通信协议模块、ENDAT通信协议模块、BISS通信协议模块、SSI通信协议模块以及自动识别位置传感器控制单元相连接,所述自动识别位置传感器控制单元分别与UART通信协议模块、ENDAT通信协议模块、BISS通信协议模块、SSI通信协议模块以及输入输出数据缓冲单元相连接,所述485控制逻辑单元分别与UART通信协议模块、ENDAT通信协议模块、BISS通信协议模块、SSI通信协议模块以及自动识别位置传感器控制单元相连接。0057图6是本发明一个位置传感器接口支持多种传感器通信协议的实现方法的流程示意图。
27、,当伺服控制系统上电后,FPGA模块和外围电路开始工作,FPGA模块加载软件并开始运行。如图6中的1,FPGA模块默认为ENDAT通信协议并执行ENDAT通信功能,输出时钟CLK和发送模式命令通过485芯片及双绞线给位置编码器。图6中的2,FPGA模块的ENDAT通信模块等待是否收到数据,未收到数据则执行图6中的3,如果收到数据就执行图6中的21,判断是否收到属于ENDAT通信协议的数据格式,如果是就执行图6中的22,FPGA模块采用ENDAT通信协议保持与支持ENDAT通信协议的位置编码器进行通信。图6中的21如果收到的不是ENDAT通信协议的数据格式,则执行图6中的3,FPGA模块换用BI。
28、SS通信协议并执行BISS通信功能,发送读取位置编码器类型的命令给位置编码器。图6中的4,FPGA的BISS通信模块是否收到数据,如果收到BISS类型的位置编码器类型数据,则执行图6中的41,FPGA模块采用BISS通信协议保持与支持BISS通信协议的位置编码器进行通信。如果图6中的4未收到位置编码器类型数据,则执行图6中的5,FPGA模块换用SSI通信协议并执行SSI通信功能,将时钟CLK拉为低电平,并控制将485芯片DE置为低电平控制485芯片处于接收数据状态。到图6中的6,FPGA模块将判断485芯片数据输出引脚RO是否为低电平,为低电平说明所接的位置编码器有相应,根据此类型总线的特征,。
29、图6中的61,FPGA模块可判断当前所接的位置编码器支持SSI通信协议,因此FPGA模块采用SSI通信协议。如果图6中的6,FPGA模块采用到485芯片数据输出引脚RO保持高电平,说明所接的位置编码器没有响应,不是SSI类型的通信协议,FPGA模块就执行图6中的7,FPGA模块将执行UART通信协议执行UART通信功能,此时FPGA模块不输出时钟CLK,但将采用多摩川编码器读取位置值的通信命令以UART通信协议发送给位置编码器。如果图6中的8收到数据,FPGA模块则判断图6中的81是否收到该类型的位置编码器的命令字及位置值,如果是则FPGA模块将采用图6中的82的UART通信协议。当未收到数据,则说明位置传感器接口没有接位置编码器或所接的位置编码器总线协议本设计未支持。0058上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。说明书CN102045345ACN102045349A1/3页9图1图2图3说明书附图CN102045345ACN102045349A2/3页10图4图5说明书附图CN102045345ACN102045349A3/3页11图6说明书附图CN102045345A。