双通道旋转变压器解码方法及解码电路

文档序号:1040687 发布日期:2020-10-09 浏览:6次 >En<

阅读说明:本技术 双通道旋转变压器解码方法及解码电路 (Decoding method and decoding circuit for dual-channel rotary transformer ) 是由 李少阳 于 2020-07-01 设计创作,主要内容包括:本发明公开了一种双通道旋转变压器解码电路,包括:FPGA模块、数模转化模块、信号放大与差分输出模块、双通道旋转变压器、模数转化模块、以及通讯接口输出模块;本发明可通过通讯接口,适用用于各种型号的旋转变压器,使用高精度的ADC对旋转变压器的信号采样,经过优化的CORDIC算法进行18次迭代,将粗精旋转变压器的角度进行处理,实现0~360度高精度的角度测量。(The invention discloses a dual-channel rotary transformer decoding circuit, which comprises: the system comprises an FPGA module, a digital-to-analog conversion module, a signal amplification and differential output module, a double-channel rotary transformer, an analog-to-digital conversion module and a communication interface output module; the invention can be applied to rotary transformers of various models through a communication interface, samples signals of the rotary transformers by using a high-precision ADC, performs 18 iterations through an optimized CORDIC algorithm, processes the angles of the coarse-fine rotary transformers, and realizes high-precision angle measurement of 0-360 degrees.)

双通道旋转变压器解码方法及解码电路

技术领域

本发明涉及本发明涉及电子控制领域,具体涉及一种双通道旋转变压器解码方法及解码电路。

背景技术

旋转变压器用于运动伺服控制系统中,作为角度位置的传感和测量使用。相比于光学编码器和磁性编码器,旋转变压器具有抗震动性好,抗干扰能力强,性能稳定可靠,适应各种恶劣环境。广泛应用在航空、航天、雷达、坦克火控等军事装备,也可用于数控机床和机器人等民用伺服控制系统中。

现有的一种常见方案是使用晶振等器件产生激励信号,输入到旋变初级,再通过旋变的次级线圈耦合输出,输出为包含角度信息的模拟正余弦电压信号,再通过分立器件搭建解码系统。此方法系统复杂,解算精度差,并且抗干扰能力差,体积大,功耗大。

为解决上述问题,出现了一种采用数字信号处理代方式替模拟信号处理的解码方案。将旋变输出的带有角度信息的模拟信号通过AD转换器采样,转换为数字信号,再由DSP/FPGA读取AD转换器的数字信号,最后通过查表或反正切运算算出旋变的角度。此方法结算精度严格受制于旋转变压的精度和ADC的量化位宽。

为了提高解码精度,出现了双通道的旋转变压器。双通道的旋转变压器同时包含粗级和精级两个旋转变压器,通过解码的粗精组合来提高解码的精度。目前的双通道解码都采用单通道解码后再通过MCU处理的方式来完成解码。系统复杂,体积大,抗干扰能力差,MCU处理串行工作,无法适应系统实时性的要求。因此,急需要设计一种简洁高效的双通道旋转变压器解码方案。

发明内容

为了解决上述技术问题,本发明的技术方案是这样实现的:

第一方面:本发明提供一种双通道旋转变压器解码方法,包括以下步骤:

S100:系统进行初始化后,FPGA模块中的DDS模块输出数字正弦信号至数模转化模块中,数模转化模块将数字正弦信号转化为模拟的正弦信号并输入至信号放大与差分输出模块,信号放大与差分输出模块将模拟的正弦信号进行同向和反向放大,形成差分的正弦信号并输入至双通道旋转变压器;

S200:双通道旋转变压器将差分的正弦信号通过粗级线圈和精级线圈耦合产生带有角度的信息的差分正弦和余弦信号并输入至模数转化模块中,模数转化模块将差分正弦和余弦信号转化为数字信号并输入至FPGA模块的CORDIC模块中,

S300:CORDIC模块对步骤S200中的数字信号进行迭代运算,分别得到粗级旋转变压器的解算角度和精级旋转变压器的解算角度,然后通过FPGA模块进行粗精处理,解算出双通道旋变解算角度,最后FPGA模块通过通讯接口与上位机连接。

进一步地,在步骤S100中,工作流程包括以下步骤:

S101:在DDS模块中,输入频率字K到频率字寄存器,经相位累加后,正弦ROM查找表输出正弦的一个信号点,然后通过时钟驱动,不断相位累加和正弦ROM查找表输出正弦的信号点,最后输出正弦信号;

S102:在数模转化模块中,数模转化模块将数字正弦信号转化为模拟的正弦信号;

S103:在信号放大与差分输出模块中,第一运算放大器和第二运算放大器分别对步骤S102中模拟的正弦信号进行同相放大和反向放大,形成差分的正弦信号。

进一步地,在步骤S101中,还可以通过幅度控制字对正弦信号的幅度大小进行控制。

进一步地,在步骤S300中,迭代运算的包括以下步骤:

S301:将数字信号的数据输入到Xin和yin,预处理电路根据Xin和yin数据的正负性,将数据处理到第一或者第四象限输出为X0和Y0

S302:X0和Y0分别通过多路进入到各自的寄存器中,x,y寄存器中的数据分成两路,一路送到移位寄存器,另一路直接送到加法/减法器,与从另一移位器来的数据做运算后,经过多路器又送回到寄存器;

S303:移位器随着迭代次数的增加,其移位位数也随之增加,z0初始值进入多路后到寄存器中,数据分为两路,一路直接送入到加法/减法器中,另一路作为x路和y路以及z路的多路的选择端,选择多路为加法器或者减法器;

其中constn数据来自查找表与z路数据进行运算,再送回到多路的输入端;随着迭代次数增加,其查找表的地址也随之增加,查找表中存放这旋转角度集;经过十八次迭代后运算后的数据进入到输出信号后处理器,将计算中扩大的数据进行还原为初始结果。

第二方面,本发明提供一种双通道旋转变压器解码电路,包括:FPGA模块、数模转化模块、信号放大与差分输出模块、双通道旋转变压器、模数转化模块、以及通讯接口输出模块;

所述FPGA模块与所述数模转化模块和模数转化模块连接;所述数模转化模块与信号放大与差分输出模块连接,所述信号放大与差分输出模块与双通道旋转变压器连接,所述双通道旋转变压器与模数转化模块连接;

所述FPGA模块通过通讯接口输出模块与上位机连接。

优选的,所述FPGA模块包括DDS模块和CORDIC模块。其中,所述DDS模块包括频率字寄存器、与所述频率字寄存器连接的数字振荡器;所述数字振荡器包括:N位相位累加器、相位累加寄存器以及正弦ROM查找表。

进一步地,所述DDS模块还包括幅度控制字。

优选的,所述信号放大与差分输出模块包括第一运算放大器和第二运算放大器。

本发明的双通道旋转变压器角度解算方案,其中激励信号的幅度和频率可通过通讯接口,适用用于各种型号的旋转变压器,使用高精度的ADC对旋转变压器的信号采样,经过优化的CORDIC算法进行18次迭代,将粗精旋转变压器的角度进行处理,实现0~360度高精度的角度测量。

本发明的其它优点、目标和特征将部分通过下面的说明体现,部分还将通过对本发明的研究和实践而为本领域的技术人员所理解。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明所提的双通道旋变解码框图。

图2为双通道旋变解码FPGA数据处理流程图。

图3为FPGA内部优化CORDIC电路结构。

图4为FPGA内部DDS电路结构图。

具体实施方式

下面结合附图对本发明做进一步的详细说明,以令本领域技术人员参照说明书文字能够据以实施。

应当理解,本文所使用的诸如“具有”、“包含”以及“包括”术语并不配出一个或多个其它元件或其组合的存在或添加。

如图1所示,本发明提供一种双通道旋转变压器解码电路,包括:FPGA模块1、数模转化模块(AD5621)2、信号放大与差分输出模块3、双通道旋转变压器4、模数转化模块(AD7609)5、以及通讯接口输出模块6(RS422);所述FPGA模块1与所述数模转化模块2和模数转化模块5连接;所述数模转化模块2与信号放大与差分输出模块3连接,所述信号放大与差分输出模块3与双通道旋转变压器4连接,所述双通道旋转变压器4与模数转化模块5连接;所述FPGA模块1通过通讯接口输出模块6与上位机7连接。

本发明的技术方案中,所述FPGA模块1包括DDS模块和CORDIC模块。其中,所述DDS模块包括频率字寄存器8、与所述频率字寄存器连接的数字振荡器;所述数字振荡器包括:N位相位累加器9、相位累加寄存器10以及正弦ROM查找表11。

可选的,在DDS模块中还可设有幅度控制字12对正弦信号的幅度大小进行改变。

可以理解,为了产生差分的正弦信号,在本发明的技术方案中,所述信号放大与差分输出模块4包括相同的第一运算放大器和第二运算放大器。

如图2所示,本发明还提供了一种双通道旋转变压器解码方法,包括以下步骤:

S100:系统进行初始化后,FPGA模块1中的DDS模块输出数字正弦信号至数模转化模块2中,数模转化模块2将数字正弦信号转化为模拟的正弦信号并输入至信号放大与差分输出模块3,信号放大与差分输出模块3将模拟的正弦信号进行同向和反向放大,形成差分的正弦信号并输入至双通道旋转变压器4;

S200:双通道旋转变压器4将差分的正弦信号通过粗级线圈和精级线圈耦合产生带有角度的信息的差分正弦和余弦信号并输入至模数转化模块5中,模数转化模块5将差分正弦和余弦信号转化为数字信号并输入至FPGA模块1的CORDIC模块中,

S300:CORDIC模块对步骤S200中的数字信号进行迭代运算,分别得到粗级旋转变压器的解算角度和精级旋转变压器的解算角度,然后通过FPGA模块进行粗精处理,解算出双通道旋变解算角度,最后FPGA模块通过通讯接口与上位机连接。

如图1、2、3、4所示,对本发明的技术方案进行详细的解释说明。

在FPGA模块中,使用DDS模块电路产生频率和幅度可配置的数字正弦信号,其中可通过上位机下发指令,对DDS模块产生的数字正弦信号的频率和幅度配置。将上述所述的正弦信号输入到与之相连接的数模转换模块AD5621芯片中,经过数模转换产生模拟的正弦信号。将模拟正弦信号,分别输入到两个OPA551运算放大器中,其中一路运放产生同向放大,另外一路运放产生反向放大,用来产生差分的正弦信号。

如图4所示,具体的工作流程包括以下步骤:在DDS模块中,输入频率字K到频率字寄存器,经相位累加后,正弦ROM查找表输出正弦的一个信号点,然后通过25MHz的时钟驱动,不断相位累加和正弦ROM查找表输出正弦的信号点,最后输出正弦信号;还可以通过幅度控制字对正弦信号的幅度大小进行控制;在数模转化模块中,数模转化模块将数字正弦信号转化为模拟的正弦信号;在信号放大与差分输出模块中,第一运算放大器和第二运算放大器分别对步骤S102中模拟的正弦信号进行同相放大和反向放大,形成差分的正弦信号。

将产生的差分的正弦信号作为双通道旋转变压器的激励信号。双通道旋转变压器接收到激励信号后,通过双通道旋转变压器的粗级线圈和精级线圈耦合产生带有角度的信息的差分sin和cos信号。模数转换模块采用AD7609芯片,将双通道旋转变压器产生的差分sin和cos信号,转化为数字信号,FPGA通过对每一个通道上的模拟信号量化成为数字信号进行读取,在FPGA内部通过CORDIC算法经过18次迭代运算,分别得到粗级旋转变压器的角度和精级旋转变压器的高精度解算角度。再由FPGA通过粗精处理,将粗级旋转变压器的角度和精级旋转变压器的角度进行处理,最终得到高精度的双通道旋变解算角度。

如图3所示,具体的迭代运算的包括以下步骤:将数字信号的数据输入到Xin和yin,预处理电路根据Xin和yin数据的正负性,将数据处理到第一或者第四象限输出为X0和Y0;X0和Y0分别通过多路进入到各自的寄存器中,x,y寄存器中的数据分成两路,一路送到移位寄存器,另一路直接送到加法/减法器,与从另一移位器来的数据做运算后,经过多路器又送回到寄存器;移位器随着迭代次数的增加,其移位位数也随之增加,z0初始值进入多路后到寄存器中,数据分为两路,一路直接送入到加法/减法器中,另一路作为x路和y路以及z路的多路的选择端,选择多路为加法器或者减法器;其中constn数据来自查找表与z路数据进行运算,再送回到多路的输入端;随着迭代次数增加,其查找表的地址也随之增加,查找表中存放这旋转角度集;经过十八次迭代后运算后的数据进入到输出信号后处理器,将计算中扩大的数据进行还原为初始结果。

最后,上位机可通过RS422接口实时发送读取指令获取解算角度结果。

尽管本发明的实施方案已公开如上,但其并不仅限于说明书和实施方式中所列运用。它完全可以被适用于各种适合本发明的领域。对于熟悉本领域的人员而言,可容易地实现另外的修改。因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里示出与描述的图例。

10页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:光编码器和光编码器的计算方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类