首页 / 专利分类库 / 发电、变电或配电 / 电机控制方法及装置

电机控制方法及装置

申请号 CN202311827300.2 申请日 2023-12-28 公开(公告)号 CN117955397A 公开(公告)日 2024-04-30
申请人 中国第一汽车股份有限公司; 发明人 闫哲; 叶珂羽; 刘振宇;
摘要 本 申请 涉及 电机 控制技术领域,提供一种电机控制方法及装置。所述方法包括:根据传动机构中传动部件的当前转动 角 度,与所述传动部件移动至传动机构中 凸轮 的机械零位的目标转动角度,得到当前转动角度差;根据所述当前转动角度差,控制所述电机带动所述传动部件进行移动,直至所述当前转动角度差处于预设区间;确定所述当前转动角度差处于预设区间,控制所述电机生成零位 信号 。本申请 实施例 提供的电机控制方法能够准确地控制电机带动传动部件运动至凸轮的对应 位置 ,提高驱动模式切换的准确性。
权利要求

1.一种电机控制方法,其特征在于,包括:
根据传动机构中传动部件的当前转动度,与所述传动部件移动至传动机构中凸轮的机械零位的目标转动角度,得到当前转动角度差;
根据所述当前转动角度差,控制所述电机带动所述传动部件进行移动,直至所述当前转动角度差处于预设区间;
确定所述当前转动角度差处于预设区间,控制所述电机生成零位信号
2.根据权利要求1所述的电机控制方法,其特征在于,根据所述当前转动角度差,控制所述电机带动所述传动部件进行移动,直至所述转动角度差处于预设区间,包括:
根据所述当前转动角度差,确定所述电机的控制参数;
根据所述控制参数,控制所述电机带动所述传动部件朝所述机械零位移动,直至所述当前转动角度差处于预设区间;
其中,所述控制参数包括转动速度和转动方向。
3.根据权利要求2所述的电机控制方法,其特征在于,根据所述当前转动角度差,确定所述电机的控制参数:
根据所述当前转动角度差,确定所述传动部件的当前位置
根据所述当前位置,确定所述电机的控制参数。
4.根据权利要求3所述的电机控制方法,其特征在于,根据所述当前位置,确定所述电机的控制参数,包括:
在所述当前位置位于所述机械零位所在的目标区域内的情况下,确定所述电机的转动速度为第一转动速度;或者,
在所述当前位置位于所述机械零位所在的目标区域外的情况下,确定所述电机的转动速度为第二转动速度;
其中,所述第一转动速度小于所述第二转动速度。
5.根据权利要求1‑4任一项所述的电机控制方法,其特征在于,确定所述当前转动角度差处于预设区间,控制所述电机生成零位信号,包括:
确定所述当前转动角度差处于预设区间,控制所述电机执行挂挡操作;
确定完成所述挂挡操作,控制所述电机生成零位信号。
6.根据权利要求5所述的电机控制方法,其特征在于,确定完成所述挂挡操作,控制所述电机生成零位信号,包括:
确定完成所述挂挡操作,获取所述电机的当前扭矩以及所述当前转动角度差;
根据所述当前扭矩以及所述当前转动角度差,控制所述电机生成零位信号。
7.根据权利要求6所述的电机控制方法,其特征在于,确定完成所述挂挡操作,获取所述电机的当前扭矩以及所述当前转动角度差,包括:
确定完成所述挂挡操作,开启计时;
确定计时时长达到预设时长,获取所述电机的当前扭矩以及所述当前转动角度差。
8.根据权利要求6或7所述的电机控制方法,其特征在于,根据所述当前扭矩以及所述当前转动角度差,控制所述电机生成零位信号,包括:
确定所述当前扭矩小于预设扭矩,且所述当前转动角度差处于预设误差范围内,控制所述电机生成零位信号。
9.根据权利要求6或7所述的电机控制方法,其特征在于,根据所述当前扭矩以及所述当前转动角度差,控制所述电机生成零位信号,包括:
确定所述当前扭矩大于或等于预设扭矩,或所述当前转动角度差处于预设误差范围外,根据第三转动速度,控制所述电机降低所述当前扭矩,并带动所述传动部件朝所述机械零位移动,直至所述当前扭矩小于预设扭矩,且所述当前转动角度差处于预设误差范围内,控制所述电机生成零位信号。
10.根据权利要求1所述的电机控制方法,其特征在于,还包括:
确定所述当前转动角度差在预设时长内未处于所述预设区间,关闭所述电机。
11.一种电机控制装置,其特征在于,包括:
角度获取模,用于根据传动部件的当前转动角度,与所述传动部件移动至分动器中凸轮的机械零位的目标转动角度,得到当前转动角度差;
电机控制模块,用于根据所述当前转动角度差,控制所述电机带动所述传动部件进行移动,直至所述当前转动角度差处于预设区间;
信号生成模块,用于确定所述当前转动角度差处于预设区间,控制所述电机生成零位信号。
12.一种电子设备,包括处理器和存储有计算机程序存储器,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述的电机控制方法。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一项所述的电机控制方法。
14.一种车辆,其特征在于,包括如权利要求12所述的电子设备。

说明书全文

电机控制方法及装置

技术领域

[0001] 本申请涉及电机控制技术领域,具体涉及一种电机控制方法及装置。

背景技术

[0002] 乘用车四驱系统应用日趋广泛,采用以电机驱动的分动器的分时四驱系统是一种常见的驱动形式。而在实现车辆的驱动方式切换时,是在车辆上电后,根据电机生成的零位信号,来确定分动器的传动机构中传动部件当前位置为传动机构中凸轮的机械零位,然后根据需切换的驱动模式,控制电机带动传动部件运动至凸轮的对应位置,从而完成驱动模式的切换。
[0003] 然而,由于在下电再上电之后,电机会默认传动部件的当前位置为凸轮的机械零位,从而直接生成零位信号,这导致可能出现电机生成的零位信号与实际的机械零位不对应,从而导致无法准确地控制电机带动传动部件运动至凸轮的对应位置,影响驱动模式切换的准确性。发明内容
[0004] 本申请旨在至少解决相关技术中存在的技术问题之一。为此,本申请提出一种电机控制方法,能够准确地控制电机带动传动部件运动至凸轮的对应位置,提高驱动模式切换的准确性。
[0005] 根据本申请第一方面实施例的电机控制方法,包括:根据传动机构中传动部件的当前转动度,与所述传动部件移动至传动机构中凸轮的机械零位的目标转动角度,得到当前转动角度差;
根据所述当前转动角度差,控制所述电机带动所述传动部件进行移动,直至所述当前转动角度差处于预设区间;
确定所述当前转动角度差处于预设区间,控制所述电机生成零位信号。
[0006] 通过将传动机构中传动部件的当前转动角度,与传动部件移动至传动机构中凸轮的机械零位的目标转动角度,来得到当前转动角度差,以通过该当前转动角度差,控制电机带动传动部件进行移动,直至当前转动角度差处于预设区间后,再控制电机生成零位信号,从而使电机生成的零位信号与实际的机械零位相对应,进而使后续能够准确地控制电机带动传动部件运动至凸轮的对应位置,提高驱动模式切换的准确性。
[0007] 根据本申请的一个实施例,根据所述当前转动角度差,控制所述电机带动所述传动部件进行移动,直至所述转动角度差处于预设区间,包括:根据所述当前转动角度差,确定所述电机的控制参数;
根据所述控制参数,控制所述电机带动所述传动部件朝所述机械零位移动,直至所述当前转动角度差处于预设区间;
其中,所述控制参数包括转动速度和转动方向。
[0008] 根据本申请的一个实施例,根据所述当前转动角度差,确定所述电机的控制参数:根据所述当前转动角度差,确定所述传动部件的当前位置;
根据所述当前位置,确定所述电机的控制参数。
[0009] 根据本申请的一个实施例,根据所述当前位置,确定所述电机的控制参数,包括:在所述当前位置位于所述机械零位所在的目标区域内的情况下,确定所述电机的转动速度为第一转动速度;或者,
在所述当前位置位于所述机械零位所在的目标区域外的情况下,确定所述电机的转动速度为第二转动速度;
其中,所述第一转动速度小于所述第二转动速度。
[0010] 根据本申请的一个实施例,确定所述当前转动角度差处于预设区间,控制所述电机生成零位信号,包括:确定所述当前转动角度差处于预设区间,控制所述电机执行挂挡操作;
确定完成所述挂挡操作,控制所述电机生成零位信号。
[0011] 根据本申请的一个实施例,确定完成所述挂挡操作,控制所述电机生成零位信号,包括:确定完成所述挂挡操作,获取所述电机的当前扭矩以及所述当前转动角度差;
根据所述当前扭矩以及所述当前转动角度差,控制所述电机生成零位信号。
[0012] 根据本申请的一个实施例,确定完成所述挂挡操作,获取所述电机的当前扭矩以及所述当前转动角度差,包括:确定完成所述挂挡操作,开启计时;
确定计时时长达到预设时长,获取所述电机的当前扭矩以及所述当前转动角度差。
[0013] 根据本申请的一个实施例,根据所述当前扭矩以及所述当前转动角度差,控制所述电机生成零位信号,包括:确定所述当前扭矩小于预设扭矩,且所述当前转动角度差处于预设误差范围内,控制所述电机生成零位信号。
[0014] 根据本申请的一个实施例,根据所述当前扭矩以及所述当前转动角度差,控制所述电机生成零位信号,包括:确定所述当前扭矩大于或等于预设扭矩,或所述当前转动角度差处于预设误差范围外,根据第三转动速度,控制所述电机降低所述当前扭矩,并带动所述传动部件朝所述机械零位移动,直至所述当前扭矩小于预设扭矩,且所述当前转动角度差处于预设误差范围内,控制所述电机生成零位信号。
[0015] 根据本申请的一个实施例,还包括:确定所述当前转动角度差在预设时长内未处于所述预设区间,关闭所述电机。
[0016] 根据本申请第二方面实施例的电机控制装置,包括:角度获取模,用于根据传动部件的当前转动角度,与所述传动部件移动至分动器中凸轮的机械零位的目标转动角度,得到当前转动角度差;
电机控制模块,用于根据所述当前转动角度差,控制所述电机带动所述传动部件进行移动,直至所述当前转动角度差处于预设区间;
信号生成模块,用于确定所述当前转动角度差处于预设区间,控制所述电机生成零位信号。
[0017] 根据本申请第三方面实施例的电子设备,包括处理器和存储有计算机程序存储器,所述处理器执行所述计算机程序时实现上述任一实施例所述的电机控制方法。
[0018] 根据本申请第四方面实施例的计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一实施例所述的电机控制方法。
[0019] 根据本申请第五方面实施例的计算机程序产品,包括:所述计算机程序被处理器执行时实现如上述任一实施例所述的电机控制方法。
[0020] 根据本申请第四方面实施例的车辆,,包括如上述实施例所述的电子设备。附图说明
[0021] 为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0022] 图1是本申请实施例提供的分动器总成结构示意图;图2是本申请实施例提供的电机控制方法的第一流程示意图;
图3是本申请实施例提供的凸轮结构示意图;
图4是本申请实施例提供的电机控制方法的第二流程示意图;
图5是本申请实施例提供的电机控制方法的第三流程示意图;
图6是本申请实施例提供的电机控制方法的第四流程示意图;
图7是本申请实施例提供的电机控制方法的第五流程示意图;
图8是本申请实施例提供的电机控制装置的结构示意图;
图9是本申请实施例提供的电子设备的结构示意图。

具体实施方式

[0023] 为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0024] 在本申请实施例的描述中,技术术语“第一”“第二”等仅用于区别不同对象,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量、特定顺序或主次关系。在本申请实施例的描述中,“多个”的含义是两个以上,除非另有明确具体的限定。
[0025] 在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
[0026] 在本申请实施例的描述中,术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
[0027] 在本申请实施例的描述中,术语“多个”指的是两个以上(包括两个),同理,“多组”指的是两组以上(包括两组),“多片”指的是两片以上(包括两片)。
[0028] 在本申请实施例的描述中,除非另有明确的规定和限定,技术术语“安装”“相连”“连接”“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;也可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请实施例中的具体含义。
[0029] 乘用车四驱系统应用日趋广泛,采用以电机驱动的分动器的分时四驱系统是一种常见的驱动形式。示例性的,如图1所示,提供了一种分动器总成结构,包括控制器10、电机20、传动机构30、离合器40、链轮链条50、行星排60、输入轴70、后输出轴80、前输出轴90。传动机构30中包括传动部件和凸轮,其中,凸轮预设有多个位置,来实现车辆在不同工况下运转。控制器10通过控制电机20驱动传动部件移动至凸轮的对应位置,来实现驱动模式的切换。具体的,传动机构30包括叉臂的凸轮盘,控制器10通过控制电机,来驱动带有叉臂的凸轮盘,使得叉臂,即传动部件与凸轮的配合位置处于不同位置,从而控制车辆在不同工况下运转。如当控制器10控制电机20驱动传动部件转动到凸轮的4H位置,即对应高速四驱的位置时,离合器40按扭矩需求压紧,动经过发动机变速器到达分动器输入轴70,挡位位于高挡位,部分扭矩经离合器40、链轮链条50向前输出轴90传递,实现四驱功能;当控制器10控制电机20驱动传动部件转动到凸轮的2H位置,即对应双轮驱动的位置时,动力经过发动机变速器到达分动器输入轴70,挡位位于高挡位,动力直接经后输出轴80输出至后差速器,从而驱动汽车的两个后轮,实现双轮驱动;当控制器10控制电机20驱动传动部件转动到凸轮的4L位置,即对应低速四驱的位置时,动力经过发动机变速器到达分动器输入轴70,挡位位于低挡位,部分扭矩直接经链轮链条50向前输出轴90传递,实现四驱功能。
[0030] 在当需要实现车辆的驱动方式切换时,会在车辆上电后,会根据电机生成的零位信号,来确定传动机构30中传动部件的当前位置对应凸轮的机械零位,即传动部件当前位于凸轮的2H位置。然后根据需切换的驱动模式,控制电机带动传动机构30中的传动部件,从当前位置移动至凸轮的对应位置,从而完成驱动模式的切换。
[0031] 然而,由于在车辆进行下电再上电之后,电机会默认传动部件的当前位置为凸轮的机械零位,从而直接生成零位信号,这导致当前传动部件的位置并未处于机械零位,但电机却生成了零位信号的情况。如车辆进行下电再上电之后,传动部件当前位于凸轮的非机械零位处,但电机却生成了零位信号,使得电机生成的零位信号与实际的机械零位不对应,从而导致后续无法准确地控制电机带动传动部件运动至凸轮的对应位置,影响驱动模式切换的准确性。
[0032] 针对上述技术问题,本申请实施例通过将传动机构中传动部件的当前转动角度,与传动部件移动至传动机构中凸轮的机械零位的目标转动角度,来得到当前转动角度差,以通过该当前转动角度差,控制电机带动传动部件进行移动,直至当前转动角度差处于预设区间后,再控制电机生成零位信号,从而使电机生成的零位信号与实际的机械零位相对应,进而使后续能够准确地控制电机带动传动部件运动至凸轮的对应位置,提高驱动模式切换的准确性。
[0033] 根据本申请的一些实施例,本申请实施例提供了一种电机控制方法,该方法可应用于前述的控制器10中,用于实现电机控制。如图2所示,该电机控制方法包括:步骤101,根据传动机构中传动部件的当前转动角度,与所述传动部件移动至传动机构中凸轮的机械零位的目标转动角度,得到当前转动角度差;
步骤102,根据所述当前转动角度差,控制所述电机带动所述传动部件进行移动,直至所述当前转动角度差处于预设区间;
步骤103,确定所述当前转动角度差处于预设区间,控制所述电机生成零位信号。
[0034] 在一些实施例中,传动机构可以包括凸轮和带有叉臂的凸轮盘,该带有叉臂的凸轮盘即为传动部件。其中,凸轮可以为异形凸轮。异形凸轮为图1所示的分动器总成的核心部件之一,其可以是一种非圆形的凸轮,可以具有复杂多样的轮廓形状。该异形凸轮可以在一个转动周期内,提供多种不同的凸起形状和位置,以实现不同的控制功能。示例性的,如图3所示,异形凸轮上设置有1号位置、2号位置以及3号位置,各位置分别对应4H挡位位置,机械零位,即2H挡位位置以及4L挡位位置。作为一种可能的实施方式,2号位置的中心点即为机械零位。
[0035] 当电机驱动凸轮盘的叉臂运动至异形凸轮的任一挡位位置时,可控制车辆在不同驱动模式下运行。如电机驱动凸轮盘的叉臂运动至1号位置,则可实现4H驱动;电机驱动凸轮盘的叉臂运动至2号位置,则可实现2H驱动;电机驱动凸轮盘的叉臂运动至3号位置,则可实现4L驱动。
[0036] 在进行电机控制之前,可先在传动部件移动至凸轮的机械零位的情况下,获取传动部件的转动角度,作为传动部件移动至传动机构中凸轮的机械零位的目标转动角度。如在传动部件移动至凸轮的机械零位的情况下,通过设置在传动机构中的角度传感器,来获取传动部件的转动角度,作为目标转动角度;或者,在传动部件移动至凸轮的机械零位的情况下,通过角度传感器获取传动部件与凸轮之间的相对角度,来作为目标转动角度。
[0037] 在车辆上电后,可先通过角度传感器,来获取传动部件的当前转动角度。其中,若目标转动角度为传动部件移动至凸轮的机械零位的情况下,传动部件的转动角度,则传动部件的当前转动角度为在车辆上电的情况下,当前传动部件的转动角度;若目标转动角度为传动部件移动至凸轮的机械零位的情况下,传动部件与凸轮之间的相对角度,则传动部件的当前转动角度为在车辆上电的情况下,当前传动部件与凸轮之间的相对角度。
[0038] 在得到传动部件的当前转动角度,以及机械零位的目标转动角度后,即可将这两个角度的差值,来作为当前转动角度差。示例性的,假设当前转动角度为30°,而目标转动角度为20°,则可确定当前转动角度差为10°。
[0039] 在得到当前转动角度差后,检测该当前转动角度差是否处于预设区间。其中,该预设区间可根据实际情况进行设定,如可通过大量实验,来得到电机生成零位信号时,传动部件的当前位置与机械零位所允许的误差,从而基于该误差,来确定预设区间。如该预设区间可以为[‑5°,5°]。若当前转动角度差处于该预设区间,则可确定传动部件处于凸轮的机械零位,此时则可控制电机生成零位信号,即表示机械零位的位置信号,并记录此刻电机生成的零位信号。若当前转动角度差未处于该预设区间,则可确定传动部件未处于凸轮的机械零位,此时则可根据该当前转动角度差,控制电机的输出扭矩,以带动传动部件进行移动,并实时更新该当前转动角度差,直至检测到当前转动角度差处于预设区间内的情况下,控制电机生成零位信号。
[0040] 通过将传动机构中传动部件的当前转动角度,与传动部件移动至传动机构中凸轮的机械零位的目标转动角度,来得到当前转动角度差,以通过该当前转动角度差,控制电机带动传动部件进行移动,直至当前转动角度差处于预设区间后,再控制电机生成零位信号,从而使电机生成的零位信号与实际的机械零位相对应,进而使后续能够准确地控制电机带动传动部件运动至凸轮的对应位置,提高驱动模式切换的准确性。
[0041] 而为提高传动部件移动至机械零位的效率,在一些实施例中,如图4所示,根据所述转动角度差,控制所述电机带动所述传动部件进行移动,直至所述转动角度差处于预设区间,包括:步骤201,根据所述当前转动角度差,确定所述电机的控制参数;
步骤202,根据所述控制参数,控制所述电机带动所述传动部件朝所述机械零位移动,直至所述转动角度差处于预设区间;
其中,所述控制参数包括转动速度和转动方向。
[0042] 在一些实施例中,控制器可预先设定有转动角度差与电机的移动方向的对应关系。如转动角度差为正,则控制电机正向转动;若转动角度差为负,则控制电机反向转动。同时,控制器可预先设定转动角度差与电机的转动速度的函数模型,如y=ax,其中y表示转动速度,x表示转动角度差的绝对值,a为常数,即转动角度差与转动速度成正比。
[0043] 在得到当前角度差后,即可根据当前角度差,来确定需要控制电机正向转动还是方向转动,同时将该当前角度差的绝对值,代入上述函数模型,从而得到电机的转动速度。
[0044] 在得到电机的转动方向和转动速度后,即可控制电机按照该转动方向和转动速度进行转动,以带动与电机连接的传动部件朝凸轮的机械零位移动,直至当前转动角度差处于预设区间内。而在控制电机转动的过程中,可实时更新当前转动角度差,以基于实时更新的当前转动角度差,来调整电机的转动方向和转动速度。
[0045] 通过当前转动角度差,确定电机的转动速度和转动方向,以根据电机的转动速度和转动方向,来控制电机带动传动部件朝机械零位移动,从而使电机能够更快地带动传动部件移动至机械零位,以更快地生成零位信号,进而提高对电机的控制效率。
[0046] 而为更准确地确定对电机地控制参数,在一些实施例中,根据所述当前转动角度差,确定所述电机的控制参数:根据所述当前转动角度差,确定所述传动部件的当前位置;
根据所述当前位置,确定所述电机的控制参数。
[0047] 在一些实施例中,控制器可通过大量实验,预先记录传动部件位于凸轮的不同位置时,其对应的转动角度差。在得到当前转动角度差后,即可根据该当前转动角度差,来确定传动部件当前位于凸轮的位置,作为传动部件的当前位置。在得到传动部件的当前位置后,即可根据该当前位置,确定传动部件位于机械零位的左侧还是右侧,以及传动部件与机械零位的距离。若传动部件位于机械零位的左侧,则可确定电机的转动方向为正向转动,以控制电机正向转动,带动传动部件位从左向右移动至机械零位。同时,可根据传动部件与机械零位的距离,来调整电机的转动速度。其中,传动部件与机械零位的距离越大,则电机的转动速度越大。
[0048] 而为进一步提高对电机的控制效率,在一些实施例中,如图5所示,根据所述当前位置,确定所述电机的控制参数,包括:步骤301,在所述当前位置位于所述机械零位所在的目标区域内的情况下,确定所述电机的转动速度为第一转动速度;或者,
步骤302,在所述当前位置位于所述机械零位所在的目标区域外的情况下,确定所述电机的转动速度为第二转动速度;
其中,所述第一转动速度小于所述第二转动速度。
[0049] 在一些实施例中,目标区域为凸轮中对应双轮驱动工况的区域,即传动部件在运动至该目标区域时,可车辆的驱动模式可切换至双轮驱动。示例性的,假设凸轮为如图3所示的异形凸轮,则目标区域为2号位置所示的凹槽,凹槽的中心点则为凸轮的机械零位。
[0050] 在一些实施例中,控制器可通过大量实验,预先记录传动部件位于目标区域的左侧边界点以及右侧边界点时,其对应的转动角度差,从而得到目标区域所对应的角度差范围。在获取到当前转动角度差时,即可通过判断该当前转动角度差是否位于该角度差范围内,来判断传动部件的当前位置是否位于机械零位所在的目标区域内。示例性的,假设目标区域对应的角度差范围为(‑5°,+5°),而当前转动角度差为3°,则可确定传动部件的当前位置位于机械零位所在的目标区域内。
[0051] 若当前位置位于机械零位所在的目标区域内,则表示传动部件距离机械零位的位置较近,此时则可确定电机的转动速度为第一转动速度,如1000rpm,以控制电机以1000rpm的转动速度,带动传动部件运转至机械零位。若当前位置位于机械零位所在的目标区域内,则表示传动部件距离机械零位的位置较远,此时则可确定电机的转动速度为第二转动速度,如3000rpm,以控制电机以3000rpm的转动速度,带动传动部件运转至机械零位。这样,便能够在传动部件远离机械零位时,控制电机带动传动部件快速靠近机械零位,提高控制效率,而在传动部件离机械零位较近时,控制电机带动传动部件以较慢速度靠近机械零位,减少因速度过快而出现传动部件因惯性而偏离机械零位的情况,提高电机控制的可靠性。
[0052] 而在控制电机带动传动部件朝机械零位移动时,若当前转动角度差处于预设区间,则可控制电机生成零位信号。而考虑到控制器与角度传感器以及电机之间的通信存在时延,假设电机带动传动部件运行,使当前转动角度差处于预设区间的时刻为t0,而控制器与角度传感器之间的传输时延为T1,控制器与电机之间的传输时延为T2,则控制器检测到当前转动角度差处于预设区间的时刻为t0+T1,而控制电机生成零位信号的时刻为t0+T1+T2,这导致电机在生成零位信号时,已经带动传动部件又运行了T1+T2的时长,使得生成的零位信号可能与机械零位的偏差较大。因此,为进一步减少生成的零位信号与机械零位的误差,在一些实施例中,如图6所示,确定所述当前转动角度差处于预设区间,控制所述电机生成零位信号,包括:步骤401,确定所述当前转动角度差处于预设区间,控制所述电机执行挂挡操作;
步骤402,确定完成所述挂挡操作,控制所述电机生成零位信号。
[0053] 在一些实施例中,在确定当前转动角度差处于预设区间的情况下,控制器可向电机发送挂挡指令,以控制电机带动传动部件和凸轮执行挂挡操作。在控制电机执行挂挡操作后,可在等待预设时长后,通过挡位传感器检测电机是否完成挂挡操作。其中,预设时长根据电机从执行挂挡操作到完成挂挡操作所需的时长确定,如30ms。若挡位传感器反馈信号为0,即挂挡操作出现顶齿,则继续等待;若挂挡传感器反馈信号为1,即挂挡成功,则表示完成挂挡操作,此时则控制电机生成零位信号。若长时间挂挡失败,则关闭电机,或者控制电机停止挂挡操作,并重新根据当前转动角度差,控制电机带动传动部件进行移动,以重新控制传动部件运动至机械零位。
[0054] 通过在确定当前转动角度差处于预设区间的情况下,控制电机执行挂挡操作,以在确定电机完成挂挡操作后,再控制电机生成零位信号,使得在向电机下发生成零位信号的控制指令时,不会因传输时延而导致传动部件的位置与机械零位的偏差较大,从而减少生成的零位信号与机械零位的误差,进一步提高后续驱动模式切换的准确性。
[0055] 而为进一步提高获取到的零位信号的准确性,在一些实施例中,如图7所示,确定完成所述挂挡操作,控制所述电机生成零位信号,包括:步骤501,确定完成所述挂挡操作,获取所述电机的当前扭矩以及所述当前转动角度差;
步骤502,根据所述当前扭矩以及所述当前转动角度差,控制所述电机生成零位信号。
[0056] 在一些实施例中,在确定电机完成挂挡操作后,可获取电机的当前扭矩,以及传动部件的当前转动角度,与传动部件移动至凸轮的机械零位的目标转动角度的当前角度差,以检测当前扭矩是否小于预设扭矩,以及当前转动角度差是否处于预设误差范围内。而在获取电机的当前扭矩以及当前转动角度差之前,可在确定电机完成挂挡操作的情况下,开启计时,以在确定计时时长达到预设时长,如30ms,再获取电机的当前扭矩以及当前转动角度差,以检测当前扭矩是否小于预设扭矩,以及当前转动角度差是否处于预设误差范围内。其中,预设扭矩以及预设误差范围可根据实际情况确定。若确定当前扭矩小于预设扭矩,且当前转动角度差处于预设误差范围内,则控制电机生成零位信号。
[0057] 若确定当前扭矩大于或等于预设扭矩,或当前转动角度差处于预设误差范围外,则根据第三转动速度,控制电机降低所述当前扭矩,并带动传动部件朝所述机械零位移动,直至当前扭矩小于预设扭矩,且当前转动角度差处于预设误差范围内,控制电机生成零位信号。
[0058] 其中,第三转动速度小于第一转动速度和第二转动速度。示例性的,第三转动速度可以为50rpm。
[0059] 而在检测到当前扭矩小于预设扭矩,且当前转动角度差处于预设误差范围内时,则控制电机停止转动,以使传动部件保持在处于机械零位的状态,并控制电机生成零位信号。这样,便可使电机生成的零位信号,与机械零位的误差更小。
[0060] 在一些实施例中,在根据当前转动角度差,控制电机带动传动部件进行移动的过程中,可对该过程进行计时。若当前转动角度差在预设时长内未处于预设区间,则表示电机运行过程中超过预设运动时间而未满足预期状态,此时则表示电机控制出现异常,从而关闭电机,同时生成提示电机控制异常的提示信息。
[0061] 下面对本申请提供的电机控制装置进行描述,下文描述的电机控制装置与上文描述的电机控制方法可相互对应参照。
[0062] 在一实施例中,如图8所示,提供了一种电机控制装置,包括:角度获取模块210,用于根据传动部件的当前转动角度,与所述传动部件移动至分动器中凸轮的机械零位的目标转动角度,得到当前转动角度差;
电机控制模块220,用于根据所述当前转动角度差,控制所述电机带动所述传动部件进行移动,直至所述当前转动角度差处于预设区间;
信号生成模块230,用于确定所述当前转动角度差处于预设区间,控制所述电机生成零位信号。
[0063] 通过将传动机构中传动部件的当前转动角度,与传动部件移动至传动机构中凸轮的机械零位的目标转动角度,来得到当前转动角度差,以通过该当前转动角度差,控制电机带动传动部件进行移动,直至当前转动角度差处于预设区间后,再控制电机生成零位信号,从而使电机生成的零位信号与实际的机械零位相对应,进而使后续能够准确地控制电机带动传动部件运动至凸轮的对应位置,提高驱动模式切换的准确性。
[0064] 在一实施例中,电机控制模块220具体用于:根据所述当前转动角度差,确定所述电机的控制参数;
根据所述控制参数,控制所述电机带动所述传动部件朝所述机械零位移动,直至所述当前转动角度差处于预设区间;
其中,所述控制参数包括转动速度和转动方向。
[0065] 在一实施例中,电机控制模块220具体用于:根据所述当前转动角度差,确定所述传动部件的当前位置;
根据所述当前位置,确定所述电机的控制参数。
[0066] 在一实施例中,电机控制模块220具体用于:在所述当前位置位于所述机械零位所在的目标区域内的情况下,确定所述电机的转动速度为第一转动速度;或者,
在所述当前位置位于所述机械零位所在的目标区域外的情况下,确定所述电机的转动速度为第二转动速度;
其中,所述第一转动速度小于所述第二转动速度。
[0067] 在一实施例中,信号生成模块230具体用于:确定所述当前转动角度差处于预设区间,控制所述电机执行挂挡操作;
确定完成所述挂挡操作,控制所述电机生成零位信号。
[0068] 在一实施例中,信号生成模块230具体用于:确定完成所述挂挡操作,获取所述电机的当前扭矩以及所述当前转动角度差;
根据所述当前扭矩以及所述当前转动角度差,控制所述电机生成零位信号。
[0069] 在一实施例中,信号生成模块230具体用于:确定完成所述挂挡操作,开启计时;
确定计时时长达到预设时长,获取所述电机的当前扭矩以及所述当前转动角度差。
[0070] 在一实施例中,信号生成模块230具体用于:确定所述当前扭矩小于预设扭矩,且所述当前转动角度差处于预设误差范围内,控制所述电机生成零位信号。
[0071] 在一实施例中,信号生成模块230具体用于:确定所述当前扭矩大于或等于预设扭矩,或所述当前转动角度差处于预设误差范围外,根据第三转动速度,控制所述电机降低所述当前扭矩,并带动所述传动部件朝所述机械零位移动,直至所述当前扭矩小于预设扭矩,且所述当前转动角度差处于预设误差范围内,控制所述电机生成零位信号。
[0072] 在一实施例中,信号生成模块230还用于:确定所述当前转动角度差在预设时长内未处于所述预设区间,关闭所述电机。
[0073] 图9示例了一种电子设备的实体结构示意图,如图9所示,该电子设备可以包括:处理器(processor)810、通信接口(Communication Interface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的计算机程序,以执行电机控制方法,例如包括:根据传动机构中传动部件的当前转动角度,与所述传动部件移动至传动机构中凸轮的机械零位的目标转动角度,得到当前转动角度差;
根据所述当前转动角度差,控制所述电机带动所述传动部件进行移动,直至所述当前转动角度差处于预设区间;
确定所述当前转动角度差处于预设区间,控制所述电机生成零位信号。
[0074] 此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘只读存储器(ROM,Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0075] 另一方面,本申请实施例还提供一种存储介质,存储介质包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,计算机程序被处理器执行时,计算机能够执行上述各实施例所提供的电机控制方法。
[0076] 另一方面,本申请实施例还提供一种车辆,该车辆包括上述实施例所提供的电子设备。
[0077] 以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0078] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0079] 最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
QQ群二维码
意见反馈