一种基于FPGA的多编码器数据交互系统及方法技术方案

技术编号:24408211 阅读:25 留言:0更新日期:2020-06-06 08:01
本发明专利技术提供了一种基于FPGA的多编码器数据交互系统及方法,在FPGA芯片内部的编码器通信模块例化一个串行通信模块和多个针对不同类型串行通信编码器进行数据交互的编码器模块;所述编码器模块的数量与外接的伺服电机轴端编码器的数量相匹配,且每个所述编码器模块都支持多种类型的伺服电机轴端编码器;各伺服电机轴端编码器通过对应的编码器模块连接至所述串行通信模块,所述串行通信模块与伺服驱动器连接,以建立多个伺服电机轴端编码器与伺服驱动器之间的数据传输通道。本发明专利技术的有益效果是:可以减少线材需求、减小布线复杂度、降低干扰的影响,同时不限制使用编码器或光栅尺的类型;同时保证各编码器位置反馈采样点的一致性。

A multi encoder data interaction system and method based on FPGA

【技术实现步骤摘要】
一种基于FPGA的多编码器数据交互系统及方法
本专利技术涉及伺服驱动器与编码器等位置检测装置之间的适配
,尤其涉及一种基于FPGA的多编码器数据交互系统及方法。
技术介绍
在现代高精度伺服驱动器控制系统中,有需要同时采集电机轴端位置反馈和被控制对象端位置反馈的需求。电机轴端位置反馈通常采用旋转编码器等装置来检测,被控制对象端位置反馈通常采用光栅尺等装置来检测。伺服驱动器主要通过被动接收脉冲信号或者串行通信的方式来获取位置反馈。其中,串行通信需要有数据交互的过程,且由伺服驱动器主动发起;同时,不同厂家的编码器交互内容也不相同。在单轴伺服控制系统中,在同时需要电机轴端位置反馈和被控制对象端位置反馈的情况下,需要分别与1个电机轴端编码器和1个被控制对象端光栅尺进行通信链接。在多轴伺服控制系统中,需要分别与多个电机轴端编码器进行通信链接,在需要被控制对象端位置反馈的情况下,还需要与1个被控制对象端光栅尺进行通信链接。在上述使用过程中,每个编码器或者光栅尺都需要通过物理连线的方式与伺服驱动器连接,同时伺服驱动器上需要放置多个物理端口。增加了电柜布线的复杂度,增加了干扰引入的路径。同时在电柜与被控制对象距离较远的情况下,线材的需求量就会成倍增加。在串行通信编码器可以设定通信地址的条件下,可以将各编码器按照RS485的网络进行组网连接,通过给各编码器设定不同的地址来进行寻址链接。在此种应用过程中,可以减小电柜布线的复杂度,节省线材的用量,但是对组网的编码器功能上有特定要求,以及伺服驱动器与各串行编码器进行数据交互在时间上有先后顺序,不能保证位置反馈采样点的一致性。
技术实现思路
为了解决上述问题,本专利技术提供了一种基于FPGA的多编码器数据交互系统及方法;一种基于FPGA的多编码器数据交互系统,应用于多数量多类型伺服电机轴端编码器与伺服驱动器之间的数据交互过程中,其特征在于:在FPGA芯片内部的编码器通信模块例化一个串行通信模块和多个针对不同类型串行通信编码器进行数据交互的编码器模块;所述编码器模块的数量与外接的伺服电机轴端编码器的数量相匹配,且每个所述编码器模块都支持多种类型的伺服电机轴端编码器;各伺服电机轴端编码器通过对应的编码器模块连接至所述串行通信模块,所述串行通信模块与伺服驱动器连接,以建立多个伺服电机轴端编码器与伺服驱动器之间的数据传输通道。进一步地,每个所述编码器模块中包括:第一多路选择器、第二多路选择器、第三多路选择器和编码器子模块;所述编码器子模块中包括多个针对不同类型编码器的编码器单元,使每个所述编码器模块可以匹配多种类型的编码器;所述编码器子模块中的各所述编码器单元的数据输出端口分别与所述第一多路选择器、所述第三多路选择器的对应数据输入端口连接,各所述编码器单元的数据输入接口分别于所述第二多路选择器的对应数据输出端口连接;所述第一多路选择器输出端口及所述第二多路选择器的输入端口均与对应的伺服电机轴端编码器电性连接;各编码器模块中的第三多路选择器的数据输出端分别与所述串行通信模块电性连接;所述第一多路选择器、所述第二多路选择器及所述第三多路选择器的选择信号线均连接至所述串行通信模块,伺服驱动器通过所述串行通信模块对各编码器模块中的多路选择器进行选择设定。进一步地,所述FPGA芯片通过非隔离接口电路与各伺服电机轴端编码器电性连接,通过隔离电路与伺服驱动器电性连接。进一步地,每个编码器模块中,所述第一多路选择器、所述第二多路选择器和所述第三多路选择器的类型一样,且具体类型与所述编码器子模块中的编码器单元的个数相匹配。进一步地,一种基于FPGA的多编码器数据交互方法,应用于所述的一种基于FPGA的多编码器数据交互系统中,所述一种基于FPGA的多编码器数据交互方法,包括如下步骤:S101:根据实际外接的伺服电机轴端编码器的数量,在FPGA芯片内部的编码器通信模块例化相同数量的编码器模块;并按照各伺服电机轴端编码器的物理接口的位置顺序依次将各编码器模块编号为1~N;其中,N为所述编码器模块的总个数;S102:初始化:伺服驱动器发送包含1~N个物理接口的编码器类型的请求数据到串行通信模块;串行通信模块依据接收到的编码器类型的请求数据发送1~N物理接口的编码器类型的类型选择信号至各编码器模块;以此来初始化各编码器模块中编码器子模块使用的多路选择器;同时编码器模块返回响应数据给伺服驱动器,表示初始化设置完成;其中,包含编码器类型的请求数据和响应数据的格式使用厂家自定的格式;S103:周期通信阶段:伺服驱动器发送包含触发信号的请求数据到串行通信模块,串行通信模块依据接收到的包含触发信号的请求数据生成触发信号,触发信号同时输出给所有的编码器模块;S104:各编码器模块中的编码器子模块均内置有对应类型编码器位置请求数据;各编码器模块接收到所述触发信号后,被第一多路选择器选中的编码器单元输出的对应类型编码器位置请求数据被发送到对应的伺服电机轴端编码器,伺服电机轴端编码器输出的编码器响应数据被第二多路选择器选中的编码器单元接收并解析,被第三多路选择器选中的编码器单元输出的解析数据被作为各编码器模块的输出数据;所述输出数据即为伺服电机轴端编码器的位置和状态数据;其中,包含触发信号的请求数据和响应数据的格式使用厂家自定的格式;S105:按照1~N的顺序将各个编码器模块获取的对应伺服电机轴端编码器的位置和状态数据依次填充到串行通信模块内部的1~N个存储单元;串行通信模块将1~N个存储单元中存储的位置和状态数据打包反馈给伺服驱动器。进一步地,所述编码器子模块接收到完整数据时,需要同时发起对相应伺服电机轴端编码器的数据交互过程,或者延时预设时间后重新开始对伺服电机轴端编码器返回脉冲的计数。本专利技术提供的技术方案带来的有益效果是:可以减少线材需求、减小布线复杂度、降低干扰的影响,同时不限制使用编码器或光栅尺的类型;同时保证各编码器位置反馈采样点的一致性。附图说明下面将结合附图及实施例对本专利技术作进一步说明,附图中:图1是本专利技术实施例中一种基于FPGA的多编码器数据交互系统的结构图;图2是编码器模块内部结构示意图;图3和图4均为是本专利技术实施例中一种基于FPGA的多编码器数据交互系统的数据交互原理示意图;图5是本专利技术实施例中串行通信模块原理示意图;1-编码器模块、2-伺服电机轴端编码器、3-伺服驱动器、4-串行通信模块;11-第一多路选择器、12-第二多路选择器、13-第三多路选择器、14-编码器子模块。具体实施方式为了对本专利技术的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本专利技术的具体实施方式。本专利技术的实施例提供了一种基于FPGA的多编码器数据交互系统及方法;所述一种基于FPGA的多编码器数据交互系统,应用于多数量多类型伺服电机轴端编码器与伺服驱动器之间的数据交互过程中;请参考图1,图1是本专利技术实施例中一本文档来自技高网
...

【技术保护点】
1.一种基于FPGA的多编码器数据交互系统,应用于多数量多类型伺服电机轴端编码器与伺服驱动器之间的数据交互过程中,其特征在于:在FPGA芯片内部的编码器通信模块例化一个串行通信模块(4)和多个针对不同类型串行通信编码器进行数据交互的编码器模块(1);所述编码器模块(1)的数量与外接的伺服电机轴端编码器(2)的数量相匹配,且每个所述编码器模块(1)都支持多种类型的伺服电机轴端编码器(2);各伺服电机轴端编码器(2)通过对应的编码器模块(1)连接至所述串行通信模块(4),所述串行通信模块(4)与伺服驱动器(3)连接,以建立多个伺服电机轴端编码器(2)与伺服驱动器(3)之间的数据传输通道。/n

【技术特征摘要】
1.一种基于FPGA的多编码器数据交互系统,应用于多数量多类型伺服电机轴端编码器与伺服驱动器之间的数据交互过程中,其特征在于:在FPGA芯片内部的编码器通信模块例化一个串行通信模块(4)和多个针对不同类型串行通信编码器进行数据交互的编码器模块(1);所述编码器模块(1)的数量与外接的伺服电机轴端编码器(2)的数量相匹配,且每个所述编码器模块(1)都支持多种类型的伺服电机轴端编码器(2);各伺服电机轴端编码器(2)通过对应的编码器模块(1)连接至所述串行通信模块(4),所述串行通信模块(4)与伺服驱动器(3)连接,以建立多个伺服电机轴端编码器(2)与伺服驱动器(3)之间的数据传输通道。


2.如权利要求1所述的一种基于FPGA的多编码器数据交互系统,其特征在于:每个所述编码器模块(1)中包括:第一多路选择器(11)、第二多路选择器(12)、第三多路选择器(13)和编码器子模块(14);所述编码器子模块(14)中包括多个针对不同类型编码器的编码器单元,使每个所述编码器模块(1)可以匹配多种类型的编码器;
所述编码器子模块(14)中的各所述编码器单元的数据输出端口分别与所述第一多路选择器(11)、所述第三多路选择器(13)的对应数据输入端口连接,各所述编码器单元的数据输入接口分别于所述第二多路选择器(12)的对应数据输出端口连接;所述第一多路选择器(11)输出端口及所述第二多路选择器(12)的输入端口均与对应的伺服电机轴端编码器(2)电性连接;
各编码器模块(1)中的第三多路选择器(13)的数据输出端分别与所述串行通信模块(4)电性连接;所述第一多路选择器(11)、所述第二多路选择器(12)及所述第三多路选择器(13)的选择信号线均连接至所述串行通信模块(4),伺服驱动器(3)通过所述串行通信模块(4)对各编码器模块(1)中的多路选择器进行选择设定。


3.如权利要求1所述的一种基于FPGA的多编码器数据交互系统,其特征在于:所述FPGA芯片通过非隔离接口电路与各伺服电机轴端编码器(2)电性连接,通过隔离电路与伺服驱动器(3)电性连接。


4.如权利要求1所述的一种基于FPGA的多编码器数据交互系统,其特征在于:每个编码器模块(1)中,所述第一多路选择器(11)、所述第二多路选择器(12)和所述第三多路选择器(13)的类型一样,且具体类型与所述编码器子模块(14)中的编码器单元的个数相匹配。


5.一种基于FPG...

【专利技术属性】
技术研发人员:杜佳星吴潇潇
申请(专利权)人:武汉迈信电气技术有限公司
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1