一种磁编码器校准方法及系统与流程

文档序号:11910872阅读:318来源:国知局
一种磁编码器校准方法及系统与流程

本发明涉及电机控制技术领域,尤其涉及一种磁编码器校准方法及系统。



背景技术:

编码器(Encoder)是将电信号或数据转换成为可用以通讯、传输和存储的信号形式的设备,编码器按照本身属性又可以分为光电编码器和磁编码器。磁编码器是一种新型的角度或者位移测量装置,其原理是采用磁阻或者霍尔元件对变化的磁性材料的角度或者位移值进行测量,磁性材料角度或者位移的变化会引起一定电阻或者电压的变化,通过放大电路对变化量进行放大,通过单片机处理后输出脉冲信号或者模拟量信号,达到测量的目的,由于众多非理想因素的影响,磁编码器的输出往往存在误差,若直接进行解调,必将造成较大的解调误差,需先对其进行校准,现有的校准方法一般采用基于模型的离线校准方法,效率较低,准确性不高。



技术实现要素:

本发明的主要目的在于提出一种磁编码器校准方法及系统,能够提高磁编码器的校准效率和准确性。

为实现上述目的,本发明提供的一种磁编码器校准方法,包括:

通过电调板驱动电机以预设的电角度步进旋转;

采集每个步进点的编码器数据;

采用线性插值法对所述编码器数据进行线性化校准,得到线性化的机械角度数据。

可选地,所述采集每个步进点的编码器数据包括:

根据所述预设的电角度计算所述电机的驱动信号;

依次向所述电机输出所述驱动信号,使所述电机按照机械角度旋转一圈,采集所述电机旋转一圈过程中每个步进点的编码器数据。

可选地,所述驱动信号包括初始位置驱动信号,通过电调板向电机输出初始位置驱动信号,使所述电机转动到初始位置,采集此时的机械角度数据,并根据所述机械角度数据获取电角度零偏。

可选地,所述采用线性插值法对所述编码器数据进行线性化校准,得到线性化的机械角度数据之前还包括:

对所述编码器数据进行校准验证,判断所述每个步进点的编码器数据是否递增,且相邻步进点的编码器数据的差值是否在预设的阈值内,若是,则验证成功。

可选地,所述电调板包括偏航电调板、横滚电调板和俯仰电调板,分别用于控制偏航电机、横滚电机和电机,每个电机上设置有一个编码器。

作为本发明的另一方面,提供的一种磁编码器校准系统,包括上位机和伺服电机系统,所述伺服电机系统包括电调板和电机,其中,

所述电调板,用于驱动电机以预设的电角度步进旋转;采集每个步进点的编码器数据;采用线性插值法对所述编码器数据进行线性化校准,得到线性化的机械角度数据;

所述上位机,用于与电调板进行交互。

可选地,所述采集每个步进点的编码器数据包括:

根据所述预设的电角度计算所述电机的驱动信号;

依次向所述电机输出所述驱动信号,使所述电机按照机械角度旋转一圈,采集所述电机旋转一圈过程中每个步进点的编码器数据。

可选地,所述驱动信号包括初始位置驱动信号,通过电调板向电机输出初始位置驱动信号,使所述电机转动到初始位置,采集此时的机械角度数据,并根据所述机械角度数据获取电角度零偏。

可选地,所述上位机还用于:

对所述编码器数据进行校准验证,判断所述每个步进点的编码器数据是否递增,且相邻步进点的编码器数据的差值是否在预设的阈值内,若是,则验证成功。

可选地,所述电调板包括偏航电调板、横滚电调板和俯仰电调板,分别用于控制偏航电机、横滚电机和电机,每个电机上设置有一个编码器。

本发明提出的一种磁编码器校准方法及系统,该方法包括:通过电调板驱动电机以预设的电角度步进旋转;采集每个步进点的编码器数据;采用线性插值法对所述编码器数据进行线性化校准,得到线性化的机械角度数据,能够提高磁编码器的校准效率和准确性。

附图说明

图1为本发明实施例一提供的一种磁编码器校准方法流程图;

图2为本发明实施例二提供的一种磁编码器校准系统示范性结构框图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,"模块"与"部件"可以混合地使用。

实施例一

如图1所示,在本实施例中,一种磁编码器校准方法,包括:

S10、通过电调板驱动电机以预设的电角度步进旋转;

S20、采集每个步进点的编码器数据;

S30、采用线性插值法对所述编码器数据进行线性化校准,得到线性化的机械角度数据。

在本实施例中,本校准方法可自动执行,也可以对每个电机及电调板进行单独校准,能够提高磁编码器的校准效率和准确性。

在本实施例中,所述电调板通过控制器局域网(Controller Area Network)CAN总线与上位机连接。

在本实施例中,所述上位机用于向电调板发送电角度校准指令、验证指令等,并接收电调板返回的成功信号、失败信号及其他交互信号。

在本实施例中,所述电调板包括偏航电调板yaw、横滚电调板roll和俯仰电调板pitch,分别用于控制偏航电机、横滚电机和电机,每个电机上设置有一个编码器。

在本实施例中,该方法使用于产线步骤中,此时,电调板与电机完整安装,云台未完整装配,电机旋转运动未受云台对电机的卡位限制,电机能自由旋转一圈,yaw、roll、pitch电调板通过CAN总线连接,并同过USBCAN转接与PC上位机连接。

在本实施例中,所述预设的电角度是系统根据校准精度或用户要求来设置的电角度值,如60°、90°或120°等便于计算的电角度值,以电角度为60°为例,电机就可以每一步旋转60°,旋转6次既可以按照电角度旋转一圈。

在本实施例中,电机每对极在定子内圆上所占的角度360°/p指的是实际的空间几何角度,这个角度被称为机械角度;在四极及以上极数(p≥4)的电机中常常把一对极所占的机械角度定义为360度电角度,这是因为绕组中感应电势变化一个周期为360°;对于两极电机,其定子内圆所占电角度和机械角度相等均为360°;而p对极电机,其定子内圆全部电角度为360°*p,但机械角度却仍为360°,所以二者存在以下关系:

电角度=机械角度×极对数

在本实施例中,定子的极对数为4对,则电角度与机械角度之间的关系为4倍。

作为另一种实施例,所述定子的极对数也可以是其他数量,皆可以采用本方法进行校准。

在本实施例中,所述步骤S20包括:

根据所述预设的电角度计算所述电机的驱动信号;

依次向所述电机输出所述驱动信号,使所述电机按照机械角度旋转一圈,采集所述电机旋转一圈过程中每个步进点的编码器数据。

在本实施例中,所述驱动信号包括初始位置驱动信号,通过电调板向电机输出初始位置驱动信号,使所述电机转动到初始位置,采集此时的机械角度数据,并根据所述机械角度数据获取电角度零偏。

在本实施例中,上位机通过CAN总线发送电角度校准指令,电调板接收到校准指令后,关闭伺服控制环,包括角度环、速度环、电流环以及空间矢量脉宽调制(Space Vector Pulse Width Modulation)SVPWM单元,从SVPWM模式切换到脉宽调制(Pulse Width Modulation)PWM模式,电调板向电机输出(0,T,T)信号驱动电机到电角度-180°处,此处,(0,T,T)信号即为初始位置驱动信号,(0,T,T)信号表示三相电机中其中一相没有通电(以0表示),其他两相通电(以T表示),并通过编码器数据变化程度判断电机是否已经被锁死,若电机已锁死,表示电机已经按照驱动信号到达步进点,记录下此时编码器给出的机械角数据,直到电机完成线性化校准回到校准起始点,对比起始点与终止点的机械角度数据,若相差位于阈值以内,判定此次校准成功,此时把线性化后的机械角度转换成电角度并加上-180°,写入FALSH中作为电角度零偏。

在执行上述电角度校准步骤后,依次向电机输出以下(0,T,T)、(0,0,T)、(T,0,T)、(T,0,0)、(T,T,0)、(0,T,0),驱动电机沿电角度正方向步进,每步进一步都通过编码器数据判断电机是否已到达步进点,直到电机已到达步进点,才输出下一步的PWM信号,继续驱动电机前进,步进角度为电角度60°,并依次记录所在步进点的编码器数据,直到电机旋转完机械角一圈,写入RAM和FALSH中,供线性化处理使用,最后向上位机回复结束信号。

在本实施例中,所述编码器采集到的数据为机械角度数据,当电角度旋转60°时,根据电角度与机械角度之间的转换关系可知,电机的机械角度旋转15°,而本方法是通过采集电机按照机械角度旋转一圈过程中每个步进点的编码器数据来进行校准的,因此就需要需要电机按照电角度旋转4圈,共需采集24次机械角度数据,由于众多非理想因素的影响,这些机械角度数据呈非线性关系,这就需要对这些机械角度数据进行线性化。

作为另一种实施例,所述预设的电角度为90°时,驱动信号的数量为4个,具体算法为现有技术,兹不赘述。

在本实施例中,线性化校准使用线性插值的方法,以实际电角度作为参考点,对编码器的原始机械角进行线性插值处理,输出线性化后的机械角度数据,线性化后的机械角度乘以极对数p转化成电角度单位并减去电角度零偏得到电角度,最后输出给SVPWM模块使用。线性化后的机械角度减去机械角度零偏输出机械角度给伺服环进行位置伺服控制或输出给姿态环用于姿态的解耦控制。

在本实施例中,所述步骤S30之前还包括:

对所述编码器数据进行校准验证,判断所述每个步进点的编码器数据是否递增,且相邻步进点的编码器数据的差值是否在预设的阈值内,若是,则验证成功,电调板向上位机返回成功信号,不符合条件时,回复失败信号;校准验证步骤目的是为了排除出校准失败的情况,当校准过程有外力阻碍电机运动,或者由于电机本身问题,比如三相线中有某一相线断路,会导致校准失败。

实施例二

如图2所示,在本实施例中,一种磁编码器校准系统,包括上位机10和伺服电机系统,所述伺服电机系统包括电调板20和电机30,其中,

所述电调板,用于驱动电机以预设的电角度步进旋转;采集每个步进点的编码器数据;采用线性插值法对所述编码器数据进行线性化校准,得到线性化的机械角度数据;

所述上位机,用于与电调板进行交互。

在本实施例中,本校准方法可自动执行,也可以对每个电机及电调板进行单独校准,能够提高磁编码器的校准效率和准确性。

在本实施例中,所述电调板通过控制器局域网(Controller Area Network)CAN总线与上位机连接。

在本实施例中,所述上位机用于向电调板发送电角度校准指令、验证指令等,并接收电调板返回的成功信号、失败信号及其他交互信号。

在本实施例中,所述电调板包括偏航电调板yaw、横滚电调板roll和俯仰电调板pitch,分别用于控制偏航电机、横滚电机和电机,每个电机上设置有一个编码器。

在本实施例中,该方法使用于产线步骤中,此时,电调板与电机完整安装,云台未完整装配,电机旋转运动未受云台对电机的卡位限制,电机能自由旋转一圈,yaw、roll、pitch电调板通过CAN总线连接,并同过USBCAN转接与PC上位机连接。

在本实施例中,所述预设的电角度是系统根据校准精度或用户要求来设置的电角度值,如60°、90°或120°等便于计算的电角度值,以电角度为60°为例,电机就可以每一步旋转60°,旋转6次既可以按照电角度旋转一圈。

在本实施例中,电机每对极在定子内圆上所占的角度360°/p指的是实际的空间几何角度,这个角度被称为机械角度;在四极及以上极数(p≥4)的电机中常常把一对极所占的机械角度定义为360度电角度,这是因为绕组中感应电势变化一个周期为360°;对于两极电机,其定子内圆所占电角度和机械角度相等均为360°;而p对极电机,其定子内圆全部电角度为360°*p,但机械角度却仍为360°,所以二者存在以下关系:

电角度=机械角度×极对数

在本实施例中,定子的极对数为4对,则电角度与机械角度之间的关系为4倍。

作为另一种实施例,所述定子的极对数也可以是其他数量,皆可以采用本方法进行校准。

在本实施例中,所述采集每个步进点的编码器数据包括:

根据所述预设的电角度计算所述电机的驱动信号;

依次向所述电机输出所述驱动信号,使所述电机按照机械角度旋转一圈,采集所述电机旋转一圈过程中每个步进点的编码器数据。

在本实施例中,所述驱动信号包括初始位置驱动信号,通过电调板向电机输出初始位置驱动信号,使所述电机转动到初始位置,采集此时的机械角度数据,并根据所述机械角度数据获取电角度零偏。

在本实施例中,上位机通过CAN总线发送电角度校准指令,电机板接收到校准指令后,关闭伺服控制环,包括角度环、速度环、电流环以及空间矢量脉宽调制(Space Vector Pulse Width Modulation)SVPWM单元,从SVPWM模式切换到脉宽调制(Pulse Width Modulation)PWM模式,电调板向电机输出(0,T,T)信号驱动电机到电角度-180°处,此处,(0,T,T)信号即为初始位置驱动信号,(0,T,T)信号表示三相电机中其中一相没有通电(以0表示),其他两相通电(以T表示),并通过编码器数据变化程度判断电机是否已经被锁死,若电机已锁死,表示电机已经按照驱动信号到达步进点,记录下此时编码器给出的机械角数据,直到电机完成线性化校准回到校准起始点,对比起始点与终止点的机械角度数据,若相差位于阈值以内,判定此次校准成功,此时把线性化后的机械角度转换成电角度并加上-180°,写入FALSH中作为电角度零偏。

在执行上述电角度校准步骤后,依次向电机输出以下(0,T,T)、(0,0,T)、(T,0,T)、(T,0,0)、(T,T,0)、(0,T,0),驱动电机沿电角度正方向步进,每步进一步都通过编码器数据判断电机是否已到达步进点,直到电机已到达步进点,才输出下一步的PWM信号,继续驱动电机前进,步进角度为电角度60°,并依次记录所在步进点的编码器数据,直到电机旋转完机械角一圈,写入RAM和FALSH中,供线性化处理使用,最后向上位机回复结束信号。

在本实施例中,所述编码器采集到的数据为机械角度数据,当电角度旋转60°时,根据电角度与机械角度之间的转换关系可知,电机的机械角度旋转15°,而本方法是通过采集电机按照机械角度旋转一圈过程中每个步进点的编码器数据来进行校准的,因此就需要需要电机按照电角度旋转4圈,共需采集24次机械角度数据,由于众多非理想因素的影响,这些机械角度数据呈非线性关系,这就需要对这些机械角度数据进行线性化。

作为另一种实施例,所述预设的电角度为90°时,驱动信号的数量为4个,具体算法为现有技术,兹不赘述。

在本实施例中,线性化校准使用线性插值的方法,以实际电角度作为参考点,对编码器的原始机械角进行线性插值处理,输出线性化后的机械角度数据,线性化后的机械角度乘以极对数p转化成电角度单位并减去电角度零偏得到电角度,最后输出给SVPWM模块使用。线性化后的机械角度减去机械角度零偏输出机械角度给伺服环进行位置伺服控制或输出给姿态环用于姿态的解耦控制。

在本实施例中,所述上位机还用于:

对所述编码器数据进行校准验证,判断所述每个步进点的编码器数据是否递增,且相邻步进点的编码器数据的差值是否在预设的阈值内,若是,则验证成功,电机板向上位机返回成功信号,不符合条件时,回复失败信号;校准验证步骤目的是为了排除出校准失败的情况,当校准过程有外力阻碍电机运动,或者由于电机本身问题,比如三相线中有某一相线断路,会导致校准失败。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1