CN102394639A - 基于fpga实现伺服驱动器的任意数分频方法及任意数分频器 - Google Patents
基于fpga实现伺服驱动器的任意数分频方法及任意数分频器 Download PDFInfo
- Publication number
- CN102394639A CN102394639A CN2011103286295A CN201110328629A CN102394639A CN 102394639 A CN102394639 A CN 102394639A CN 2011103286295 A CN2011103286295 A CN 2011103286295A CN 201110328629 A CN201110328629 A CN 201110328629A CN 102394639 A CN102394639 A CN 102394639A
- Authority
- CN
- China
- Prior art keywords
- pulse
- level
- orthogonal
- output
- state machine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Manipulation Of Pulses (AREA)
Abstract
一种基于FPGA实现伺服驱动器的任意数分频方法及任意数分频器,其方法包括对A相、B相反馈脉冲信号滤波;对滤波后的A相、B相信号正交脉冲解码,并输出正交脉冲方向和正交解码脉冲;根据正交脉冲方向和正交解码脉冲计数;把计数值与分频比的分子相乘,并存入被除数寄存器,把分频比的分母存入除数寄存器;调用除法器,把商值存入寄存器;将商值与该商值前面相邻的商值相比较,判断所得商值是否发生变化,如果该商值变化,输出脉冲置高电平;如果该商值没有变化,输出脉冲置低电平;把输出脉冲和正交脉冲方向输入到脉冲发生器,脉冲发生器产生分频后的脉冲。本方法具有占用资源少,能够精确跟踪两路编码器反馈脉冲的频率,脉冲数,脉冲相位等。
Description
技术领域
本发明涉及伺服驱动以及分频方法技术领域,更具体的说是涉及一种应用于伺服驱动器的任意数分频方法以及基于FPGA实现的任意数分频器。
背景技术
目前,伺服驱动器在工业自动化领域得到广泛的应用,而在应用伺服驱动器的绝大部分场合都会用到编码器反馈脉冲的分频输出。分频输出的脉冲一般会接入到控制***中,控制***会根据接收到的反馈脉冲数进行机器动作的控制。所以,编码器反馈脉冲的分频输出相当重要,它关系到控制***乃至整个机器能否正确执行动作。
在目前的伺服驱动器中,国外品牌的一般具有任意数分频,而国产伺服大部分都还只具有整数分频,不过整数分频应用场合受限。部分具有任意数分频的也还存在分频的频率不够均匀,脉冲个数不够精确等缺点。伺服驱动器的编码器反馈脉冲具有频率不确定性、脉冲个数不确定性,而且是两路正交脉冲,但是其分频输出脉冲必须按照分频比精确的输出脉冲频率和脉冲个数,而且绝对不能够有累积误差,还必须保证输出的两路脉冲保持正交相位。这对其分频算法提出了较高的要求。
在目前现有的分频技术中,有很多是针对单一频率的脉冲进行分频,而且对输出的脉冲只要求频率均匀,并没有脉冲个数的要求,当然比较简单,主要有锁相环法,直线插补法等。在伺服驱动器中应用的分频技术,目前主要有基于计数器的整数分频和基于双模前置的小数分频,一般都是在FPGA中实现。
整数分频,分为偶数分频和奇数分频,一般采用计数器来实现。当进行偶数分频时,对输入脉冲的上升沿计数,当计数器值从0到N/2-1时,输出脉冲电平进行翻转,并对计数器进行复位,计数器从零开始计数。如此反复循环,就可以得到所需要的偶数分频脉冲。当进行奇数分频时,对输入脉冲的上升沿计数,当计数器值从0到(N-1)/2时,输出脉冲电平进行翻转,产生一路输出脉冲。对输入脉冲的下降沿也进行计数,当计数器值从0到(N-1)/2时,输出脉冲电平进行翻转,产生另一路输出脉冲。然后把这两路产生的脉冲进行相或运算,就可以得到所需要的奇数分频脉冲。
小数分频一般采用双模前置方法来实现。双模前置方法就是在若干个输入脉冲周期中根据分频数值使输出脉冲每隔几个周期多输出一个脉冲,从而使输出脉冲总体平均意义上获得一个小数分频比。这种方法输出的分频脉冲相位抖动较大,而且输出脉冲占空比不均匀。当伺服电机进行长时间反复旋转时,还会有比较大的累积误差。另外当小数位较多时,会占用非常多的FPGA资源,从现实来讲基本上不可实现。
综上所述,目前分频技术方案的主要缺点有:一是方案实现复杂,算法实现困难。二是分频输出的脉冲频率抖动大,占空比不均匀。三是有累积误差,会导致接收脉冲的控制***判断错误,最终导致机器误动作。四是占用FPGA的资源量较大,特别是小数分频时,小数位数较多的情况下,几乎很难实现。
发明内容
鉴于现有技术的不足,本发明的目的在于提供一种能够应用于伺服驱动器的任意数分频方法,并且能够基于FPGA实现的任意数分频器。它具有实现简单,占用资源少,能够精确跟踪两路编码器反馈脉冲的频率,脉冲数,脉冲相位等。
本发明的技术方案是:提供一种基于FPGA实现伺服驱动器的任意数分频方法,包括如下步骤:
110、对A相、B相反馈脉冲信号进行滤波;
120、对滤波后的A相、B相信号进行正交脉冲解码,并输出正交脉冲方向和正交解码脉冲;
130、根据正交脉冲方向和正交解码脉冲进行计数;
140把130步得出的计数值与分频比的分子相乘,并将所得的积存入被除数寄存器,把分频比的分母存入除数寄存器;
150调用除法器进行计算,并把所得商值存入寄存器;
160、将150步所得商值与该商值前面相邻的商值相比较,判断150步所得商值是否发生变化,如果该商值发生变化,输出脉冲置高电平;如果该商值没有发生变化,输出脉冲置低电平;
170把160步骤输出脉冲和120步骤正交脉冲方向同时输入到脉冲发生器,脉冲发生器会根据逻辑时序产生分频后的脉冲。
作为对本发明的改进,所述步骤120进一步包括:
121 上电初始化,把正交解码脉冲和正交脉冲方向置零;
122 当A相输入脉冲电平为高,则正交解码脉冲输出电平为高,正交脉冲方向置1,并进入步骤123;当B相输入脉冲电平为高,则正交解码脉冲输出电平高,正交脉冲方向置0,并进入步骤125;
123 当B相输入脉冲电平为高,则正交解码脉冲输出电平为高,正交脉冲方向置1,并进入步骤124;当A相输入脉冲电平为低,则正交解码脉冲输出电平高,正交脉冲方向置0,并进入步骤122;
124 当A相输入脉冲电平为低,则正交解码脉冲输出电平为高,正交脉冲方向置1,并进入步骤125;当B相输入脉冲电平为低,则正交解码脉冲输出电平高,正交脉冲方向置0,并进入步骤123;
125 当B相输入脉冲电平为低,则正交解码脉冲输出电平为高,正交脉冲方向置1,并进入步骤122;当A相输入脉冲电平为高,则正交解码脉冲输出电平高,正交脉冲方向置0,并进入步骤124。
作为对本发明的改进,所述步骤170进一步包括:
171 上电初始化,把输出正交脉冲OA和OB电平置低;
172 把输出正交脉冲OA和OB电平置低,当输入脉冲为高电平且正交脉冲方向也为高电平时,则进入步骤173;当输入脉冲为高电平且正交脉冲方向为低电平时,则进入步骤175;
173 把输出正交脉冲OA电平置高,OB电平置低;当输入脉冲为高电平且正交脉冲方向也为高电平时,则进入步骤174;当输入脉冲为高电平且正交脉冲方向为低电平时,则进入步骤172;
174 把输出正交脉冲OA电平置高,OB电平置高;当输入脉冲为高电平且正交脉冲方向也为高电平时,则进入步骤175;当输入脉冲为高电平且正交脉冲方向为低电平时,则进入步骤173;
175 把输出正交脉冲OA电平置低,OB电平置高;当输入脉冲为高电平且正交脉冲方向也为高电平时,则进入步骤172;当输入脉冲为高电平且正交脉冲方向为低电平时,则进入步骤174。
本发明还提供一种基于FPGA实现的任意数分频器,包括:信号滤波单元、正交解码单元、脉冲计数单元、乘法器单元,除法器单元、数值鉴别单元、脉冲发生单元;其中:
所述信号滤波单元,用于把A相输入脉冲信号、B相输入脉冲信号进行滤波,滤除尖脉冲等干扰信号;
所述正交解码单元,用于把滤波后的A相、B相信号进行正交解码,输出正交解码脉冲和正交脉冲方向信号;
所述脉冲计数单元,用于根据正交解码脉冲和正交脉冲信号来进行计数,并将计数值保存到寄存器;
所述乘法器单元,用于把脉冲计数值与分频比的分子相乘,并把值保存到被除数寄存器;
所述除法器单元,用于把乘法器输出值与分频比的分母相除,并把商值保存到寄存器;
所述数值鉴别单元,用于鉴别商值是否有变化;如果有变化,则输出高电平;如果无变化,则输出低电平;
所述脉冲发生单元,用于根据正交脉冲方向和数值鉴别单元输出脉冲而生成的两路分频后的正交脉冲。
作为对上述任意数分频器的改进,所述正交解码单元包括:状态机初始化单元,状态机第一状态单元,状态机第二状态单元,状态机第三状态单元,状态机第四状态单元;其中:
所述状态机初始化单元,用于初始化状态机的初始值,以及初始化正交解码脉冲和正交脉冲方向;
所述状态机第一状态单元,用于判定当A相信号为高或者B相信号为高时,输出正交解码脉冲和正交脉冲方向,以及状态机的状态变化;
所述状态机第二状态单元,用于判定当A相信号为低或者B相信号为高时,输出正交解码脉冲和正交脉冲方向,以及状态机的状态变化;
所述状态机第三状态单元,用于判定当A相信号为低或者B相信号为低时,输出正交解码脉冲和正交脉冲方向,以及状态机的状态变化;
所述状态机第四状态单元,用于判定当A相信号为高或者B相信号为低时,输出正交解码脉冲和正交脉冲方向,以及状态机的状态变化。
作为对上述任意数分频器的改进,所述脉冲发生单元包括:状态机初始化单元,状态机第一状态单元,状态机第二状态单元,状态机第三状态单元,状态机第四状态单元;其中:
所述状态机初始化单元,用于初始化状态机的初始值,以及初始化两路输出正交脉冲OA和OB的初始电平;
所述状态机第一状态单元,用于输出正交脉冲OA电平为低,OB电平为低;并且判定当输入脉冲上升沿触发时,随不同的正交脉冲方向而输出不同的状态变化;
所述状态机第二状态单元,用于输出正交脉冲OA电平为高,OB电平为低;并且判定当输入脉冲上升沿触发时,随不同的正交脉冲方向而输出不同的状态变化;
所述状态机第一状态单元,用于输出正交脉冲OA电平为高,OB电平为高;并且判定当输入脉冲上升沿触发时,随不同的正交脉冲方向而输出不同的状态变化;
所述状态机第一状态单元,用于输出正交脉冲OA电平为低,OB电平为高;并且判定当输入脉冲上升沿触发时,随不同的正交脉冲方向而输出不同的状态变化。
本发明提供的能够应用于伺服驱动器的任意数分频方法以及基于FPGA实现的任意数分频器,方案简单,实现较容易,占用FPGA资源少,并且能够在伺服电机频繁加减速,反复正反转等情况下,可以根据分频比精确的跟踪编码器反馈脉冲的输出频率,输出相位以及输出脉冲个数,而且分频后的脉冲和编码器输出的脉冲相位延迟很小,实时性很好。当分频后的脉冲输入到控制***时,控制***就可以实时地精确的知道伺服电机的位置和速度,这样控制***就可以发出正确的动作指令,并且能够保证整机的加工精度较高。本发明和传统的分频方法相比较,抛弃了传统方法需要将分频比分为整数和小数,然后分别实施的思路,而是采用了乘法器,除法器,脉冲发生器等,只需要输入分频的分子和分母,就可以得到输出频率精确,输出相位一致,输出脉冲个数准确的两路正交脉冲,从根本上克服了传统方法中的输出频率不准,输出相位变化大,输出脉冲个数有累计误差等影响应用的缺点,在实际应用中,无疑更加具有优势。
附图说明
图1是本发明应用于伺服驱动器的任意数分频方法的详细流程示意图;
图2是图1中对滤波后的A相、B相信号进行正交脉冲解码,并输出正交脉冲方向和正交解码脉冲的详细流程示意图;
图3是图1中把160输出脉冲和120正交脉冲方向同时输入到脉冲发生器,脉冲发生器会根据逻辑时序产生分频后的脉冲的详细流程示意图;
图4是本发明基于FPGA实现的任意数分频器的结构示意图。
具体实施方式
本发明实施例提供一种能够应用于伺服驱动器的任意数分频方法和基于FPGA实现的任意数分频器。其原理是当编码器脉冲计数值与分频比的倍数发生变化时,其相除的商值也必然发生变化,此时就可以根据商值的变化和正交脉冲的方向而输出分频脉冲。
本发明实施例提供了一种不同于传统思路的分频方法。对于伺服驱动器来说,不仅仅是分频前的频率和分频后的频率保持着分频比倍数关系,而且分频前的脉冲数与分频后的脉冲数也要保持着分频比倍数关系,分频后的脉冲相位也要与分频前的脉冲相位保持一致。伺服电机的转动很不规律,频繁加减速和反复正反转,所以编码器反馈脉冲的频率、相位、脉冲个数也处于随时的变化中,而编码器脉冲的这些信息都会实时体现在其脉冲计数值上,那么我们就从其脉冲计数值上解析出分频后的脉冲频率、相位、脉冲个数信息。当把其脉冲计数值除以分频比后,其商值分别包含了分频后的脉冲个数,分频后的脉冲频率信息。再利用检测商值变化而生成的脉冲和脉冲正交方向共同驱动触发脉冲发生器,这样就能完全重构出两路保持正交相位,脉冲个数和脉冲频率精确的分频脉冲。
本发明实施例提供了一种能够应用于伺服驱动器的任意数分频方法,如图1所示,包括:
110、对A相、B相反馈脉冲信号进行滤波;
120、对滤波后的A相、B相信号进行正交脉冲解码,并输出正交脉冲方向和正交解码脉冲;
130、根据正交脉冲方向和正交解码脉冲进行计数;
140、把上述计数值与分频比的分子相乘,并存入被除数寄存器,把分频比的分母存入除数寄存器;
150、调用除法器,并把商存入寄存器;
160、判断商值是否变化,如果商值发生变化,输出脉冲置高电平;如果商值没有发生变化,输出脉冲置低电平;
170、把160输出脉冲和120正交脉冲方向同时输入到脉冲发生器,脉冲发生器会根据逻辑时序产生分频后的脉冲;
其中,在进一步的实施例中,如图2所示,该图是图1中对滤波后的A相、B相信号进行正交脉冲解码,并输出正交脉冲方向和正交解码脉冲(步骤120)的详细流程图:
该步骤120进一步包括:
121、上电初始化,把正交解码脉冲和正交脉冲方向置零;
122、当A相输入脉冲电平为高,则正交解码脉冲输出电平为高,正交脉冲方向置1,并进入步骤123;当B相输入脉冲电平为高,则正交解码脉冲输出电平高,正交脉冲方向置0,并进入步骤125;
123、当B相输入脉冲电平为高,则正交解码脉冲输出电平为高,正交脉冲方向置1,并进入步骤124;当A相输入脉冲电平为低,则正交解码脉冲输出电平高,正交脉冲方向置0,并进入步骤122;
124、当A相输入脉冲电平为低,则正交解码脉冲输出电平为高,正交脉冲方向置1,并进入步骤125;当B相输入脉冲电平为低,则正交解码脉冲输出电平高,正交脉冲方向置0,并进入步骤123;
125、 当B相输入脉冲电平为低,则正交解码脉冲输出电平为高,正交脉冲方向置1,并进入步骤122;当A相输入脉冲电平为高,则正交解码脉冲输出电平高,正交脉冲方向置0,并进入步骤124;
其中,在进一步的实施例中,如图3所示,是图1中把160输出脉冲和120正交脉冲方向同时输入到脉冲发生器,脉冲发生器会根据逻辑时序产生分频后的脉冲(步骤170)的详细流程图,
该步骤170进一步包括:
171、上电初始化,把输出正交脉冲OA和OB电平置低;
172、把输出正交脉冲OA和OB电平置低,当输入脉冲为高电平且正交脉冲方向也为高电平时,则进入步骤173;当输入脉冲为高电平且正交脉冲方向为低电平时,则进入步骤175;
173、把输出正交脉冲OA电平置高,OB电平置低;当输入脉冲为高电平且正交脉冲方向也为高电平时,则进入步骤174;当输入脉冲为高电平且正交脉冲方向为低电平时,则进入步骤172;
174、把输出正交脉冲OA电平置高,OB电平置高;当输入脉冲为高电平且正交脉冲方向也为高电平时,则进入步骤175;当输入脉冲为高电平且正交脉冲方向为低电平时,则进入步骤173;
175、把输出正交脉冲OA电平置低,OB电平置高;当输入脉冲为高电平且正交脉冲方向也为高电平时,则进入步骤172;当输入脉冲为高电平且正交脉冲方向为低电平时,则进入步骤174;
本发明实施例还提供一种基于FPGA实现的分频器,如图4所示,其包括:信号滤波单元100、正交解码单元200、脉冲计数单元300、乘法器单元400,除法器单元500、数值鉴别单元600、脉冲发生单元700;其中:
所述信号滤波单元100,用于把A相输入脉冲信号、B相输入脉冲信号进行滤波,滤除尖脉冲等干扰信号;
所述正交解码单元200,用于把滤波后的A相、B相信号进行正交解码,输出正交解码脉冲和正交脉冲方向信号;
所述脉冲计数单元300,用于根据正交解码脉冲和正交脉冲信号来进行计数,并将计数值保存到寄存器;
所述乘法器单元400,用于把脉冲计数值与分频比的分子相乘,并把值保存到被除数寄存器;
所述除法器单元500,用于把乘法器输出值与分频比的分母相除,并把商值保存到寄存器;
所述数值鉴别单元600,用于鉴别商值是否有变化;如果有变化,则输出高电平;如果无变化,则输出低电平;
所述脉冲发生单元700,用于根据正交脉冲方向和数值鉴别单元输出脉冲而生成的两路分频后的正交脉冲。
进一步的实施例中,如图4所示,所述正交解码单元200包括:
状态机初始化单元201,状态机第一状态单元202,状态机第二状态单元203,状态机第三状态单元204,状态机第四状态单元205;其中:
所述状态机初始化单元201,用于初始化状态机的初始值,以及初始化正交解码脉冲和正交脉冲方向;
所述状态机第一状态单元202,用于判定当A相信号为高或者B相信号为高时,输出正交解码脉冲和正交脉冲方向,以及状态机的状态变化;
所述状态机第二状态单元203,用于判定当A相信号为低或者B相信号为高时,输出正交解码脉冲和正交脉冲方向,以及状态机的状态变化;
所述状态机第三状态单元204,用于判定当A相信号为低或者B相信号为低时,输出正交解码脉冲和正交脉冲方向,以及状态机的状态变化;
所述状态机第四状态单元205,用于判定当A相信号为高或者B相信号为低时,输出正交解码脉冲和正交脉冲方向,以及状态机的状态变化。
进一步的实施例中,如图4所示,所述脉冲发生单元700包括:
状态机初始化单元701,状态机第一状态单元702,状态机第二状态单元703,状态机第三状态单元704,状态机第四状态单元705;其中:
所述状态机初始化单元701,用于初始化状态机的初始值,以及初始化两路输出正交脉冲OA和OB的初始电平;
所述状态机第一状态单元702,用于输出正交脉冲OA电平为低,OB电平为低;并且判定当输入脉冲上升沿触发时,随不同的正交脉冲方向而输出不同的状态变化;
所述状态机第二状态单元703,用于输出正交脉冲OA电平为高,OB电平为低;并且判定当输入脉冲上升沿触发时,随不同的正交脉冲方向而输出不同的状态变化;
所述状态机第一状态单元704,用于输出正交脉冲OA电平为高,OB电平为高;并且判定当输入脉冲上升沿触发时,随不同的正交脉冲方向而输出不同的状态变化;
所述状态机第一状态单元705,用于输出正交脉冲OA电平为低,OB电平为高;并且判定当输入脉冲上升沿触发时,随不同的正交脉冲方向而输出不同的状态变化。
应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。
Claims (6)
1.一种基于FPGA实现伺服驱动器的任意数分频方法,其特征在于,包括:
110、对A相、B相反馈脉冲信号进行滤波;
120、对滤波后的A相、B相信号进行正交脉冲解码,并输出正交脉冲方向和正交解码脉冲;
130、根据正交脉冲方向和正交解码脉冲进行计数;
140把130步得出的计数值与分频比的分子相乘,并将所得的积存入被除数寄存器,把分频比的分母存入除数寄存器;
150调用除法器进行计算,并把所得商值存入寄存器;
160、将150步所得商值与该商值前面相邻的商值相比较,判断150步所得商值是否发生变化,如果该商值发生变化,输出脉冲置高电平;如果该商值没有发生变化,输出脉冲置低电平;
170把160步骤输出脉冲和120步骤正交脉冲方向同时输入到脉冲发生器,脉冲发生器会根据逻辑时序产生分频后的脉冲。
2.根据权利要求1所述任意数分频方法,其特征在于,所述步骤120进一步包括:
121 上电初始化,把正交解码脉冲和正交脉冲方向置零;
122 当A相输入脉冲电平为高,则正交解码脉冲输出电平为高,正交脉冲方向置1,并进入步骤123;当B相输入脉冲电平为高,则正交解码脉冲输出电平高,正交脉冲方向置0,并进入步骤125;
123 当B相输入脉冲电平为高,则正交解码脉冲输出电平为高,正交脉冲方向置1,并进入步骤124;当A相输入脉冲电平为低,则正交解码脉冲输出电平高,正交脉冲方向置0,并进入步骤122;
124 当A相输入脉冲电平为低,则正交解码脉冲输出电平为高,正交脉冲方向置1,并进入步骤125;当B相输入脉冲电平为低,则正交解码脉冲输出电平高,正交脉冲方向置0,并进入步骤123;
125 当B相输入脉冲电平为低,则正交解码脉冲输出电平为高,正交脉冲方向置1,并进入步骤122;当A相输入脉冲电平为高,则正交解码脉冲输出电平高,正交脉冲方向置0,并进入步骤124。
3.根据权利要求1所述任意数分频方法,其特征在于,所述步骤170进一步包括:
171 上电初始化,把输出正交脉冲OA和OB电平置低;
172 把输出正交脉冲OA和OB电平置低,当输入脉冲为高电平且正交脉冲方向也为高电平时,则进入步骤173;当输入脉冲为高电平且正交脉冲方向为低电平时,则进入步骤175;
173 把输出正交脉冲OA电平置高,OB电平置低;当输入脉冲为高电平且正交脉冲方向也为高电平时,则进入步骤174;当输入脉冲为高电平且正交脉冲方向为低电平时,则进入步骤172;
174 把输出正交脉冲OA电平置高,OB电平置高;当输入脉冲为高电平且正交脉冲方向也为高电平时,则进入步骤175;当输入脉冲为高电平且正交脉冲方向为低电平时,则进入步骤173;
175 把输出正交脉冲OA电平置低,OB电平置高;当输入脉冲为高电平且正交脉冲方向也为高电平时,则进入步骤172;当输入脉冲为高电平且正交脉冲方向为低电平时,则进入步骤174。
4.一种基于FPGA实现的任意数分频器,其特征在于,包括:信号滤波单元、正交解码单元、脉冲计数单元、乘法器单元,除法器单元、数值鉴别单元、脉冲发生单元;其中:
所述信号滤波单元,用于把A相输入脉冲信号、B相输入脉冲信号进行滤波,滤除尖脉冲等干扰信号;
所述正交解码单元,用于把滤波后的A相、B相信号进行正交解码,输出正交解码脉冲和正交脉冲方向信号;
所述脉冲计数单元,用于根据正交解码脉冲和正交脉冲信号来进行计数,并将计数值保存到寄存器;
所述乘法器单元,用于把脉冲计数值与分频比的分子相乘,并把值保存到被除数寄存器;
所述除法器单元,用于把乘法器输出值与分频比的分母相除,并把商值保存到寄存器;
所述数值鉴别单元,用于鉴别商值是否有变化;如果有变化,则输出高电平;如果无变化,则输出低电平;
所述脉冲发生单元,用于根据正交脉冲方向和数值鉴别单元输出脉冲而生成的两路分频后的正交脉冲。
5.如权利要求4所述任意数分频器,其特征在于,所述正交解码单元包括:状态机初始化单元,状态机第一状态单元,状态机第二状态单元,状态机第三状态单元,状态机第四状态单元;其中:
所述状态机初始化单元,用于初始化状态机的初始值,以及初始化正交解码脉冲和正交脉冲方向;
所述状态机第一状态单元,用于判定当A相信号为高或者B相信号为高时,输出正交解码脉冲和正交脉冲方向,以及状态机的状态变化;
所述状态机第二状态单元,用于判定当A相信号为低或者B相信号为高时,输出正交解码脉冲和正交脉冲方向,以及状态机的状态变化;
所述状态机第三状态单元,用于判定当A相信号为低或者B相信号为低时,输出正交解码脉冲和正交脉冲方向,以及状态机的状态变化;
所述状态机第四状态单元,用于判定当A相信号为高或者B相信号为低时,输出正交解码脉冲和正交脉冲方向,以及状态机的状态变化。
6.如权利要求4所述任意数分频器,其特征在于,所述脉冲发生单元包括:状态机初始化单元,状态机第一状态单元,状态机第二状态单元,状态机第三状态单元,状态机第四状态单元;其中:
所述状态机初始化单元,用于初始化状态机的初始值,以及初始化两路输出正交脉冲OA和OB的初始电平;
所述状态机第一状态单元,用于输出正交脉冲OA电平为低,OB电平为低;并且判定当输入脉冲上升沿触发时,随不同的正交脉冲方向而输出不同的状态变化;
所述状态机第二状态单元,用于输出正交脉冲OA电平为高,OB电平为低;并且判定当输入脉冲上升沿触发时,随不同的正交脉冲方向而输出不同的状态变化;
所述状态机第一状态单元,用于输出正交脉冲OA电平为高,OB电平为高;并且判定当输入脉冲上升沿触发时,随不同的正交脉冲方向而输出不同的状态变化;
所述状态机第一状态单元,用于输出正交脉冲OA电平为低,OB电平为高;并且判定当输入脉冲上升沿触发时,随不同的正交脉冲方向而输出不同的状态变化。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011103286295A CN102394639A (zh) | 2011-10-26 | 2011-10-26 | 基于fpga实现伺服驱动器的任意数分频方法及任意数分频器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011103286295A CN102394639A (zh) | 2011-10-26 | 2011-10-26 | 基于fpga实现伺服驱动器的任意数分频方法及任意数分频器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102394639A true CN102394639A (zh) | 2012-03-28 |
Family
ID=45861850
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011103286295A Pending CN102394639A (zh) | 2011-10-26 | 2011-10-26 | 基于fpga实现伺服驱动器的任意数分频方法及任意数分频器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102394639A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104647331A (zh) * | 2015-03-23 | 2015-05-27 | 常州米泽智能装备科技有限公司 | 一种主从随动示教工业机器人*** |
US9059646B2 (en) | 2013-09-12 | 2015-06-16 | Rdc Semiconductor Co., Ltd. | Pulse processor of servo motor system |
CN104821771A (zh) * | 2015-05-21 | 2015-08-05 | 中国科学院自动化研究所 | 基于cpld的光电码盘正交分频方法 |
CN106595724A (zh) * | 2016-12-02 | 2017-04-26 | 中国科学院自动化研究所 | 一种增量式编码器分频电路 |
CN109245637A (zh) * | 2018-11-16 | 2019-01-18 | 庸博(厦门)电气技术有限公司 | 伺服驱动器任意分频输出方法及伺服驱动器 |
CN109839064A (zh) * | 2017-11-27 | 2019-06-04 | 中国航空工业集团公司西安航空计算技术研究所 | 一种位移或角度测量的光栅数据采集*** |
CN110798205A (zh) * | 2019-11-14 | 2020-02-14 | 西安微电子技术研究所 | 一种正交编码脉冲信号的零位检测方法及*** |
CN112653427A (zh) * | 2020-12-11 | 2021-04-13 | 深圳市英威腾电气股份有限公司 | 分频方法、装置以及计算机可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1999056424A1 (en) * | 1998-04-28 | 1999-11-04 | Daewoo Electronics Co., Ltd. | Orthogonal frequency division multiplexing receiver system |
CN1963398A (zh) * | 2006-11-24 | 2007-05-16 | 南京航空航天大学 | 基于正交编码信号的分频电路 |
-
2011
- 2011-10-26 CN CN2011103286295A patent/CN102394639A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1999056424A1 (en) * | 1998-04-28 | 1999-11-04 | Daewoo Electronics Co., Ltd. | Orthogonal frequency division multiplexing receiver system |
CN1963398A (zh) * | 2006-11-24 | 2007-05-16 | 南京航空航天大学 | 基于正交编码信号的分频电路 |
Non-Patent Citations (1)
Title |
---|
刘继磊等: "基于FPGA的伺服驱动器分数分周比设计与实现", 《微特电机》, no. 6, 28 June 2011 (2011-06-28), pages 56 - 58 * |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9059646B2 (en) | 2013-09-12 | 2015-06-16 | Rdc Semiconductor Co., Ltd. | Pulse processor of servo motor system |
TWI494720B (zh) * | 2013-09-12 | 2015-08-01 | Rdc Semiconductor Co Ltd | 伺服馬達系統中之脈波處理器 |
CN104647331A (zh) * | 2015-03-23 | 2015-05-27 | 常州米泽智能装备科技有限公司 | 一种主从随动示教工业机器人*** |
CN104821771A (zh) * | 2015-05-21 | 2015-08-05 | 中国科学院自动化研究所 | 基于cpld的光电码盘正交分频方法 |
CN104821771B (zh) * | 2015-05-21 | 2017-09-22 | 中国科学院自动化研究所 | 基于cpld的光电码盘正交分频方法 |
CN106595724A (zh) * | 2016-12-02 | 2017-04-26 | 中国科学院自动化研究所 | 一种增量式编码器分频电路 |
CN106595724B (zh) * | 2016-12-02 | 2019-07-30 | 中国科学院自动化研究所 | 一种增量式编码器分频电路 |
CN109839064B (zh) * | 2017-11-27 | 2021-03-26 | 中国航空工业集团公司西安航空计算技术研究所 | 一种位移或角度测量的光栅数据采集*** |
CN109839064A (zh) * | 2017-11-27 | 2019-06-04 | 中国航空工业集团公司西安航空计算技术研究所 | 一种位移或角度测量的光栅数据采集*** |
CN109245637A (zh) * | 2018-11-16 | 2019-01-18 | 庸博(厦门)电气技术有限公司 | 伺服驱动器任意分频输出方法及伺服驱动器 |
CN110798205A (zh) * | 2019-11-14 | 2020-02-14 | 西安微电子技术研究所 | 一种正交编码脉冲信号的零位检测方法及*** |
CN110798205B (zh) * | 2019-11-14 | 2023-02-07 | 西安微电子技术研究所 | 一种正交编码脉冲信号的零位检测方法及*** |
CN112653427A (zh) * | 2020-12-11 | 2021-04-13 | 深圳市英威腾电气股份有限公司 | 分频方法、装置以及计算机可读存储介质 |
CN112653427B (zh) * | 2020-12-11 | 2024-05-31 | 深圳市英威腾电气股份有限公司 | 分频方法、装置以及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102394639A (zh) | 基于fpga实现伺服驱动器的任意数分频方法及任意数分频器 | |
CN102200541B (zh) | 一种对电机转速进行测量的方法及装置 | |
CN104317253A (zh) | 一种用于伺服电机位置控制的***方法 | |
CN104202040B (zh) | 位电平检测电路以及方法 | |
CN104660220B (zh) | 一种产生整数频率脉冲的信号发生器及信号产生方法 | |
CN101825481B (zh) | 一种应用编码器计数的方法和装置 | |
CN108535507B (zh) | 用于增量式编码器测速的计算机存储介质 | |
CN103353543A (zh) | 一种具有串行协议触发和解码功能的数字示波器 | |
CN102759633A (zh) | 基于fpga的伺服电机实时转速检测模块 | |
CN104063847A (zh) | 一种基于fpga的引导滤波器及其实现方法 | |
CN105159205A (zh) | 应用于运动控制器的高速位置捕捉实现方法及装置 | |
US10620914B2 (en) | Method and system for performing division/multiplication operations in digital processors, corresponding device and computer program product | |
CN101458511A (zh) | 基于可编程逻辑器件的硬件插补方法 | |
CN104881268A (zh) | 一种光量子随机源装置及随机位提取方法 | |
CN103916104A (zh) | Pwm信号生成电路、打印机以及pwm信号生成方法 | |
CN102636107B (zh) | 马达转子的角度检测装置及检测方法 | |
CN106645785A (zh) | 用于测量编码器信号频率的装置、方法及运行检测装置 | |
CN104133409A (zh) | 一种对称性可调的三角波合成装置 | |
CN105653238A (zh) | 一种计时方法及装置 | |
JP2015230187A (ja) | 回転位相速度検出装置 | |
CN103713154A (zh) | 一种利用触发器和编码器判断电机转向的方法 | |
CN106253763B (zh) | 编码器的滤波方法及装置 | |
CN108555906B (zh) | 机器人的控制方法、装置及机器人 | |
CN100494907C (zh) | 基于正交编码信号的分频电路 | |
CN108075697A (zh) | 一种位置信号倍频的开关磁阻电机相电流迭代学习控制方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20120328 |