编码器、电机、编码器数据处理方法及存储介质与流程

文档序号:16054814发布日期:2018-11-24 11:35阅读:334来源:国知局
本发明涉及信号处理领域,特别是一种编码器、电机、编码器数据处理方法,以及计算机可读存储介质。
背景技术
编码器是将信号或数据进行编制、转换为可用以通讯、传输和存储的信号形式的设备,其被广泛用于工业及医疗设备等领域进行速度和位置的检测。例如,在需要进行电机控制(motorcontrol)的场合,编码器一般与电机对应设置,例如,安装在电机的输出轴上等,用于检测电机转子的当前位置信息,之后由电机驱动器根据所述编码器检测的电子转子的当前位置信息以及其它相关信息对电机进行相应控制。其中,编码器的种类可有多种,例如,可以为光电编码器,也可以为电容式编码器等。对于采用电容式编码器的电机控制系统来说,电容式编码器和电机驱动器分别具有一独立的内部时钟源,如晶体振荡器,来进行时钟脉冲同步,并且二者通过一通信模块进行信息交换。技术实现要素:本发明实施例中一方面提出了编码器及电机,另一方面提出了编码器的数据处理方法,用以消除由于编码器与电机驱动器之间时钟不同步造成的电机驱动器侧计算的电机转速存在速度突变的问题,进而提高电机控制精度,改善产品质量。本发明实施例中提供的编码器,包括:一模拟采样电路、一模数转换模块、一数字信号处理模块和一通信模块,其中,所述模拟采样电路被构造为采集携带有电机转子位置信息的模拟采样信号;所述模数转换模块被构造为将采集的模拟采样信号转换为包括复数个数字采样点的数字采样信号;所述数字信号处理模块被构造为对所述数字采样信号进行处理,得到第一处理信号,该第一处理信号的采样率为第一采样率;所述通信模块被构造为与电机驱动器通信,包括:将待发送信号发送给一电机驱动器;此外,所述编码器进一步包括:升采样处理模块,被构造为对所述第一处理信号进行升采样处理,使得所述第一处理信号转换为第二处理信号,其中,该第二处理信号的采样率为第二采样率,且第二采样率高于第一采样率,并将所述第二处理信号作为待发送信号提供给所述通信模块。可见,本发明实施例中的第二处理信号在第一处理信号经过采样率提高等处理之后,缩短了两个采样点之间的角度差,从而极大地提高了采样点的准确度,进而削弱了由于时钟不同步问题造成的驱动器侧计算的电机转速信号存在的异常尖峰等问题。在一个实施方式中,所述升采样处理模块包括:一数据缓存子模块,被构造为接收并缓存来自所述数字信号处理模块的第一采样率的第一处理信号;一零值内插子模块,被构造为根据一设定的插值因子n,在所述第一采样率的第一处理信号中的每相邻的两个数字采样点之间均匀插入n-1个零,得到采样频率为第二采样率的中间信号;所述第二采样率是所述第一采样率的n倍;其中,n为正整数;和一内插滤波子模块,被构造为对所述第二采样率的中间信号进行内插滤波,得到第二处理信号,并将所述第二处理信号作为待发送信号提供给所述通信模块。本实施方式中,公开了一种升采样处理模块的具体实现方式,该实现方式简单易行,且相比于采用高采样率的数字采样模块来说,其成本低廉,并且分辨率较高。在一个实施方式中,所述n的取值下限为1,取值上限为所述升采样处理模块能够输出的数据频率的最大值与所述第一采样率的比值。本实施方式中,给出了n的一个具体取值范围。本发明实施例中提供的电机,包括上述任一实现方式中的编码器。可见,本实施例中的电机也具有上述有益效果。本发明实施例中提供的编码器的信号处理方法,包括:采集携带有电机转子位置信息的模拟采样信号;将所述模拟采样信号转换为包括复数个数字采样点的数字采样信号;对所述数字采样信号进行包括滤波在内的处理,得到第一处理信号;所述第一处理信号的采样率为第一采样率;此外,该方法进一步包括:对所述第一处理信号进行升采样处理,使得所述第一处理信号转换为第二处理信号,其中,所述第二处理信号的采样率为第二采样率,且所述第二采样率高于第一采样率;将所述第二处理信号发送给电机驱动器。可见,本发明实施例中的第二处理信号在第一处理信号经过采样率提高等处理之后,缩短了两个采样点之间的角度差,从而极大地提高了采样点的准确度,进而削弱了由于时钟不同步问题造成的驱动器侧计算的电机转速信号存在的异常尖峰等问题。在一个实施方式中,所述对第一采样率的第一处理信号进行升采样处理,使得所述第一采样率的第一处理信号转换为第二处理信号包括:根据一设定的插值因子n,在所述第一处理信号中的每相邻的两个数字采样点之间均匀插入n-1个零,得到采样频率为第二采样率的中间信号;所述第二采样率是所述第一采样率的n倍;其中,n为正整数;和对所述中间信号进行内插滤波,得到第二处理信号。本实施方式中,公开了一种升采样处理模块的具体实现方式,该实现方式简单易行,且相比于采用高采样率的数字采样模块来说,其成本低廉,并且分辨率较高。本发明实施例中提供的计算机程序产品,其执行如上述各实施方式的方法的步骤。本发明实施例中提供的计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的编码器的信号处理方法的步骤。可见,本实施例中的计算机可读存储介质也具有上述有益效果。附图说明下面将通过参照附图详细描述本发明的优选实施例,使本领域的普通技术人员更清楚本发明的上述及其它特征和优点,附图中:图1为一个示例中电机驱动器侧计算的不同电机转速信号的性能示意图。其中,上面的图示出的电机转速为375rpm(每分钟转),下面的图示出的电机转速为750rpm。图2为目前的一种电容式编码器的结构示意图。图3为本发明实施例中一种电容式编码器的示例性结构图。图4为本发明一个示例中的电容式编码器的结构示意图。图5为所述示例中第一处理信号xold(n)及其频谱xold(f)示意图。其中,左侧为第一处理信号xold(n)的示意图,右侧为第一处理信号xold(n)的频谱xold(f)示意图。图6为所述示例中以n=5为例时得到的中间信号xint(m)及其频谱xint(f)示意图。其中,左侧为中间信号xint(m)的示意图,右侧为中间信号xint(m)的频谱xint(f)示意图。图7为所述示例中经内插滤波后得到的第二处理信号xnew(m)及其频谱xnew(f)示意图。其中,左侧为第二处理信号xnew(m)的示意图,右侧为第二处理信号xnew(m)的频谱xnew(f)示意图。图8为所述示例中电机驱动器侧在接收到第二处理信号后计算得到的电机转速信号的性能示意图。其中,上面的图示出的电机转速为375rpm(转/分钟),下面的图示出的电机转速为750rpm。图9为本发明实施例中电容式编码器的信号处理方法的示例性流程图。其中,附图标记如下:标号含义210模拟采样电路220模数转换模块230数字信号处理模块240通信模块250升采样处理模块251数据缓存子模块252零值内插子模块253内插滤波子模块901~905步骤具体实施方式本实施例中的发明人发现:虽然晶体振荡器对一般电子设备来说是非常好的时钟源,但受限于制造精度,不同晶体振荡器的频率可能不完全一致,此外,晶体振荡器的频率还可能会随着温度、时间等的环境变化而发生偏移。即便是两个时钟源之间很小的偏离,都可能会导致一个较大的相位差,并进而影响产品性能。对于电容式编码器而言,由于其时钟源与电机驱动器的时钟源之间可能的不同步,会导致电容式编码器提供给电机驱动器的电机转子位置信息出现前后错位,例如,电机驱动器可能请求编码器提供其第50个采样点的电机转子位置数据,但由于二者时钟源的不同步,电容式编码器可能会将第49个采样点或第51个采样点的电机转子位置数据提供给电机驱动器,这就导致电机驱动器根据电容式编码器提供的电机转子位置数据确定出来的电机转速等信息存在错误,从而出现异常尖峰等问题。例如,图1为一个示例中电机驱动器侧计算的不同电机转速信号的性能示意图。图1中,横坐标为分钟,纵坐标为rpm(转/分钟)。其中,上面的图示出的电机转速为375rpm,下面的图示出的电机转速为750rpm。可见,电机驱动器在根据电容式编码器提供的电机转子位置信息确定出的电机转速信号中不仅存在不可避免的波动,而且存在异常尖峰,并且这些异常尖峰随着电机转速的不同而相应变化。图2为目前的一种电容式编码器的结构示意图。如图2所示,该编码器包括:模拟采样电路210、模数转换模块220、数字信号处理模块230和通信模块240。其中,模拟采样电路210,被构造为采集携带有电机转子位置信息的模拟采样信号。模数转换模块220被构造为将所述模拟采样电路210采集的模拟采样信号转换为包括复数个数字采样点的数字采样信号。所述第一处理信号的采样率为第一采样率。数字信号处理模块230被构造为对所述数字采样信号进行滤波等处理,得到第一处理信号。通信模块240被构造为将所述第一处理信号发送给电机驱动器。本发明实施例中,为了消除由于时钟源不同步造成的电机驱动器侧的信号存在异常尖峰等问题,可考虑如图3所示,在编码器内增加一个升采样处理模块250,被构造为对所述第一处理信号进行升采样处理,使得采样频率为第一采样率的第一处理信号转换为采样频率为第二采样率的第二处理信号,其中第二采样率高于第一采样率。之后由通信模块230将所述第二处理信号发送给电机驱动器。此时的第二处理信号在第一处理信号经过采样率提高处理之后,缩短了两个采样点之间的角度差,从而极大地提高了采样点的准确度,进而削弱了由于时钟不同步问题造成的驱动器侧计算的电机转速信号存在的异常尖峰等问题。举例说明,假设第一处理信号为一个10khz(赫兹)的正弦波输入信号,且第一采样率为400khz,则相当于一个周期内采样40个点,此时,若提供给电机驱动器的位置信息信号(即第一处理信号)出现采样点的前后错位情况,则两个采样点之间的角度差为第一角度差,即360°/40=9°。相应地,若将采样率提高到2000khz的话,则相当于一个周期内采样200个点,此时,若提供给电机驱动器的位置信息信号(即第二处理信号)出现采样点的前后错位情况,则两个采样点之间的角度差为第二角度差,即360°/200=1.8°。显然,第二角度差远远小于第一角度差,因此可以极大地提高采样点的准确度,进而削弱由于时钟不同步问题造成的驱动器侧计算的电机转速信号存在的异常尖峰等问题。具体实现时,升采样处理可以有不同的实现方式,例如,可以是对第一处理信号进行零值内插及内插滤波处理,得到第二处理信号。或者,也可以是利用一高采样率的数字采样模块进行数字采样,得到第二处理信号。为使本发明的目的、技术方案和优点更加清楚,以下举实施例对本发明进一步详细说明。图4为本发明一个示例中的电容式编码器的结构示意图。如图4所示,该电容式编码器中的升采样处理模块250可具体包括:数据缓存子模块251、零值内插子模块252、内插滤波子模块253。其中,数据缓存子模块251被构造为接收并缓存来自所述数字信号处理模块230的第一采样率的第一处理信号。图5示出了本示例中数据缓存子模块251接收的第一处理信号xold(n)及其频谱xold(f)示意图。其中,左侧为第一处理信号xold(n)的示意图,右侧为第一处理信号xold(n)的频谱xold(f)示意图。可见,在图5中,采样周期为ts,采样频率为fs。零值内插子模块252被构造为根据一设定的插值因子n,在所述第一处理信号中每相邻的两个数字采样点之间均匀插入n-1个零,得到采样频率为第二采样率的中间信号;所述第二采样率是所述第一采样率的n倍。其中,n为正整数,且n的最大取值为升采样处理模块250能够输出的数据频率的最大值与第一采样率的比值。图6示出了本示例中以n=5为例时得到的中间信号xint(m)及其频谱xint(f)示意图。其中,左侧为中间信号xint(m)的示意图,右侧为中间信号xint(m)的频谱xint(f)示意图。可见,在图6中,采样周期ts,new=ts/5,采样频率fs,new=5fs,即采样率提高了5倍。内插滤波子模块253被构造为对所述第二采样率的中间信号进行内插滤波(例如包括低通滤波在内的处理),以滤除高频镜像频谱,得到采样频率为第二采样率的第二处理信号,并将所述第二处理信号作为待发送信号提供给所述通信模块240。图7示出了本示例中经内插滤波后得到的第二处理信号xnew(m)及其频谱xnew(f)示意图。其中,左侧为第二处理信号xnew(m)的示意图,右侧为第二处理信号xnew(m)的频谱xnew(f)示意图。可见,在图7中,通过采用插值因子5进行零采样值填充及内插滤波之后,采样率增加了5倍。当然,实际应用中,根据升采样处理模块250之后的处理流程对数据频率的要求不同,插值因子可做相应的调整。其中,插值因子的下限取值为1,上限取值为升采样处理模块250可输出的数据频率的最大值与第一采样率的比,例如,还可以为其它取值,如10、15、20、25、30等。图8为所述示例中电机驱动器侧在接收到第二处理信号后计算得到的电机转速信号的性能示意图。图8中,横坐标为分钟,纵坐标为rpm(转/分钟)。其中,上面的图示出的电机转速为375rpm,下面的图示出的电机转速为750rpm。可见,在计算出的不同电机转速信号下均消除了由于时钟源不同步造成的异常尖峰等问题。本实施例中,模数转换模块220、数字信号处理模块230、升采样处理模块250和通信模块240可通过软件实现,也可通过硬件实现,或者通过软件和硬件相结合的方式实现。同样,升采样处理模块250中的各个子模块也可以是通过软件实现,或通过硬件实现,又或者通过软件和硬件相结合的方式实现。图9为本发明实施例中电容式编码器的信号处理方法的示例性流程图。如图9所示,该方法可包括如下步骤:步骤901,采集携带有电机转子位置信息的模拟采样信号。步骤902,将所述模拟采样信号转换为数字采样信号。步骤903,对所述数字采样信号进行包括滤波在内的处理,得到第一采样率的第一处理信号。步骤904,对所述第一采样率的第一处理信号进行升采样处理,使得所述第一采样率的第一处理信号转换为第二采样率的第二处理信号,其中第二采样率高于第一采样率。其中,升采样处理可以是零值内插以及内插滤波处理,或者也可以是利用一高采样率的数字采样模块得到第二处理信号。以进行零值内插以及内插滤波处理为例,本步骤904中,可根据一设定的插值因子n,在所述第一采样率的第一处理信号中每相邻的两个数字采样点之间均匀插入n-1个零,得到第二采样率的中间信号;所述第二采样率是所述第一采样率的n倍;其中,n为正整数,且n小于升采样处理模块250的工作频率与第一处理信号的数据频率的比值;之后,对所述第二采样率的中间信号进行内插滤波,以滤除高频镜像频谱,得到第二采样率的第二处理信号。其中,插值因子可以为1、5、6、7、8、9、10、……、15、……、20、……、25、……、30、……。具体地,插值因子的下限取值为1,上限取值为执行本步骤904的升采样处理模块可输出的数据频率的最大值与第一采样率的比。步骤905,将所述第二采样率的第二处理信号发送给电机驱动器。本发明还提供了一种机器可读的存储介质,存储被构造为使一计算机执行如本文所述的电容式编码器的信号处理方法中的全部或部分指令。具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或cpu或mpu)读出并执行存储在存储介质中的程序代码。在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。被构造为提供程序代码的存储介质实施例包括云、软盘、硬盘、磁光盘、光盘(如cd-rom、cd-r、cd-rw、dvd-rom、dvd-ram、dvd-rw、dvd+rw)、磁带、非易失性存储卡、rom、pc机、手机以及各种智能设备等。可选择地,可以由通信网络从服务器计算机上下载程序代码。此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展单元上的cpu等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1