一种线性马达的制动方法及装置与流程

文档序号:33505353发布日期:2023-03-18 00:02阅读:110来源:国知局
一种线性马达的制动方法及装置与流程

1.本发明涉及电子技术领域,尤其涉及一种线性马达的制动方法及装置。


背景技术:

2.线性马达,又称为直线电机,是一种可以将电能转换为“直线运动”形式机械能的传动装置。线性马达目前广泛的应用于手机、平板电脑、游戏手柄等电子设备,主要负责在人机交互环境下提供触觉反馈功能。
3.线性马达的驱动电流通常是周期性变化的电流,因此在电磁感应的作用下,线性马达的振子会受到周期性变化的电磁力,进而进行直线形式的往复运动。在线性马达需要停止工作时,则会被输入一个相位相反的驱动电流(或称为制动电流),以使振子受到反向电磁力的作用,从而实现快速制动。
4.在现有技术中,若要准确的施加反向电磁力,则需要实时检测振子的幅相,从而决定制动电流的数值。而检测振子幅相和输入制动电流需共用同一个驱动通道,即二者无法同时进行。所以现有技术中通常需要在半个周期中进行振子的幅相检测,在另外半个周期中输入制动电流以进行制动。即现有技术中的制动属于半周期制动,制动效率相对低下,制动所需的时间较长。


技术实现要素:

5.本发明提供一种线性马达的制动方法及装置,以实现全周期制动。
6.第一方面,本发明提供了一种线性马达的制动方法,包括:
7.在满足制动条件时,对线性马达的振子进行幅相检测,以确定幅相信息;
8.根据所述幅相信息确定增益系数;
9.利用所述增益系数和预设的制动波形函数,确定制动电流;
10.向所述线性马达输入所述制动电流,以使所述线性马达制动。
11.优选的,所述对线性马达的振子进行幅相检测,以确定幅相信息包括:
12.利用模数转换器对所述线性马达的振子进行幅相检测,以确定所述振子的加速度达到参照数值时的变化趋势,以及所述加速度的最大值;
13.将所述加速度的变化趋势和所述加速度的最大值作为所述幅相信息。
14.优选的,所述根据所述幅相信息确定增益系数包括:
15.根据所述加速度的变化趋势确定所述增益系数的正负值;
16.根据所述加速度的最大值确定所述增益系数的绝对值。
17.优选的,还包括:确定制动维持参数;
18.则所述根据所述加速度的最大值确定所述增益系数的绝对值包括;根据所述加速度的最大值和所述制动维持参数,确定所述增益系数的绝对值。
19.优选的,还包括:
20.根据所述线性马达的性能参数,确定所述制动波形函数。
21.优选的,所述根据所述线性马达的性能参数,确定所述制动波形函数包括:
22.u(t)=a*v(t)
23.其中,u(t)代表制动波形函数,a代表线性马达的性能参数,v(t)代表线性马达的等效指数正弦函数,t代表时间自变量。
24.优选的,所述向所述线性马达输入所述制动电流包括:
25.确定所述振子的加速度达到参照数值的时刻;
26.根据所述加速度达到参照数值的时刻,确定所述制动电流的输入时刻;
27.在所述制动电流的输入时刻,向所述线性马达输入所述制动电流。
28.第二方面,本发明提供了一种线性马达的制动装置,包括:
29.幅相信息确定模块,用于在满足制动条件时,对线性马达的振子进行幅相检测,以确定幅相信息;
30.增益系数确定模块,用于根据所述幅相信息确定增益系数;
31.制动电流确定模块,用于利用所述增益系数和预设的制动波形函数,确定制动电流;
32.制动电流输入模块,用于向所述线性马达输入所述制动电流,以使所述线性马达制动。
33.第三方面,本发明提供了一种可读介质,包括执行指令,当电子设备的处理器执行所述执行指令时,所述电子设备执行如第一方面中任一所述的方法。
34.第四方面,本发明提供了一种电子设备,包括处理器以及存储有执行指令的存储器,当所述处理器执行所述存储器存储的所述执行指令时,所述处理器执行如第一方面中任一所述的方法。
35.本发明提供了一种线性马达的制动方法及装置,在制动过程中通过一次幅相检测确定线性马达的幅相信息和增益系数,利用增益系数和制动波形函数,确定全驱信号形式的制动电流;向线性马达输入该制动电流,以实现全周期制动,提高了线性马达的制动效率。
36.上述的非惯用的优选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
37.为了更清楚地说明本发明实施例或现有的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
38.图1为现有技术中半驱信号的示意图;
39.图2为本发明一实施例提供的一种线性马达的制动方法的流程示意图;
40.图3为本发明一实施例提供的一种线性马达的制动方法中检测振子幅相信息的示意图;
41.图4为本发明一实施例提供的一种线性马达的制动方法中驱动信号和制动电流的示意图;
42.图5为本发明一实施例提供的另一种线性马达的制动方法的流程示意图;
43.图6为本发明一实施例提供的一种线性马达的制动装置的结构示意图;
44.图7为本发明一实施例提供的一种电子设备的结构示意图。
具体实施方式
45.为使本发明的目的、技术方案和优点更加清楚,下面将结合具体实施例及相应的附图对本发明的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
46.线性马达的驱动电流通常是周期性变化的电流,因此在电磁感应的作用下,线性马达的振子会受到周期性变化的电磁力,进而进行直线形式的往复运动。在线性马达需要停止工作时,则会被输入一个相位相反的驱动电流(或称为制动电流),以使振子受到反向电磁力的作用,从而实现快速制动。
47.在现有技术中,若要准确的施加反向电磁力,则需要实时检测振子的幅相,从而决定制动电流的数值。所谓检测幅相,即包括检测振子的幅值和相位。一般来说可以检测振子的反向电动势bemf(back electromotive force),来判断振子的加速度曲线经过0点的时刻和方向。由此确定制动电流的绝对值和正负值。制动电流可以采用半驱信号的形式。周期性的调节制动电流的数值,可以保证振子所受的电磁力始终与加速度的方向相反。从而完成振子的制动。
48.而检测bemf和输入制动电流需共用同一个驱动通道,即二者无法同时进行。所以现有技术中通常需要在半周期中检测bemf,在另外半周期中输入制动电流。例如图1所示,在振子加速度为正值的半个周期中,需要利用1/4周期的时间检测bemf。图1中的制动电流为半驱的方波信号,所以根据bemf的检测结果可以确定接下来输入的制动电流的绝对值、正负值以及持续时长。在另外1/4个周期中可按此结果输入制动电流。在振子加速度为负值的半个周期中亦是同理。
49.可见现有技术在制动电流为半驱信号的情况下,全周期中只有半个周期实现了有效的制动,另外半个周期只能用于检测。这种方式可称为半周期制动。在实践中发现,半周期制动一般需要4~6个周期才能够完成制动。显然半周期制动的制动效率相对低下,制动所需的时间较长。
50.与半周期制动相对的全周期制动,在制动过程中输入的制动电流为全驱信号。因此全周期制动能够在几乎全周期内进行有效的制动,从而提高制动效率。但是现有技术中,缺少一种针对线性马达的全周期制动方法。
51.有鉴于此,本发明提供一种线性马达的制动方法。参见图2所示,为本发明提供的线性马达的制动方法的具体实施例。本实施例中,所述方法包括:
52.步骤201、在满足制动条件时,对线性马达的振子进行幅相检测,以确定幅相信息。
53.当线性马达的正常工作任务执行结束,需要停止工作时,可视为满足制动条件。此时可以对线性马达进行制动,以使其振子尽快的停止运动。为了实现在制动过程中准确的输入制动电流,本实施例中方法亦需要对振子进行幅相检测。不同于现有技术的是,本实施例中仅在满足制动条件时,即线性马达的工作任务结束之初,对振子进行一次幅相检测;而
后续不再进行幅相检测。此为本实施例中方法实现全周期制动的前提条件。
54.本实施例中,可以利用模数转换器(analog to digital converter,简称adc)检测振子的反向电动势bemf,从而实现对于振子的幅相检测,获取振子的幅相信息。该幅相信息中包括振子的幅值和相位两部分信息。具体的,可以在线性马达的工作任务结束后的第一个(或者前几个)周期内,利用adc对线性马达的振子进行幅相检测,以确定振子的加速度达到参照数值时的变化趋势(代表振子的相位),以及加速度的最大值(代表振子的幅值)。该加速度的变化趋势和最大值即可作为幅相信息。如图3所示。
55.图3中的正弦曲线,为线性马达工作时振子加速度的变化曲线。所谓振子的加速度达到参照数值,反映在图3中也就是加速度曲线经过0点(经过横坐标轴)的情况。换言之该参照数值即为0。可以看出加速度曲线经过0点,又分为“自上而下”经过0点,和“自下而上”经过0点两种情况。以图3中a点为例,在a点处加速度由正值逐渐降低,经过0点后变为负值,即自上而下的经过0点。同理b点则属于自下而上的经过0点。加速度曲线经过0点的方向,也就是所谓的加速度达到参照数值时的变化趋势。
56.可以理解的是,这一变化趋势将决定制动电流的相位,或者说决定制动电流在具体时刻上的正负值。制动电流的正负值应当与加速度的正负值始终保持相反,如此可确保其产生的电磁力为反向电磁力,能够达到制动效果(而非驱动效果)。
57.另外加速度的最大值也就相当于图3中正弦曲线的幅值。该幅值反应了振子携带的动能的大小。幅值越大则需要的制动力越大,也就需要电流值更高的制动电流。因此加速度的最大值与制动电流的电流绝对值具有相关性。
58.在图3中,假设线性马达的工作任务在p点处结束。而在p点之后的a点处,加速度曲线首次经过0点。在一些情况下,adc可在p点之后立刻启动,并在a点附近完成振子的幅相检测。另一些情况下,也可能由于p点和a点距离较近,adc来不及在a点处完成振子的幅相检测。本实施例中假设adc在c点处启动,所以其应当在启动后的第一个“过0点”也就是b点附近完成振子的幅相检测。
59.并且,adc可以在b点处直接开始振子的幅相检测,亦可以在识别到b点之后延迟一定的时间再进行幅相检测,以避免信号冲突。例如延迟f0/1024秒进行检测,f0为振子的谐振频率。adc可以采用64mhz的频率进行采样检测,从而得到幅相信息。本实施例中,对于adc的检测方式不做限定,任何可实现相同或类似功能的检测方式均可结合在本实施例整体方案中。
60.步骤202、根据幅相信息确定增益系数。
61.前述已知的是,幅相信息中包括加速度的变化趋势和最大值。加速度的变化趋势影响到制动电流的幅相(制动电流在具体时刻上的正负值),而加速度的最大值影响到制动电流的电流绝对值。因此可以根据幅相信息确定增益系数,增益系数是对本实施例中最终输出的制动电流进行调节的系数。也就是说,增益系数可以调节制动电流的幅相(正负)以及幅值比例。
62.具体的,可以根据加速度的变化趋势确定增益系数的正负值;根据加速度的最大值确定增益系数的绝对值。本实施例中,增益系数可以表示为g。
63.还需要说明的是,通常根据加速度的最大值确定增益系数的绝对值,是以“实现最快制动”为目的。不过另外在一些情况下,也可能不需要实现最快制动,而是需要故意的延
长制动时间,以实现某些特殊的触觉反馈体验。在这种情况下,可以另外的设置一个制动维持参数;然后根据加速度的最大值和制动维持参数,共同确定增益系数的绝对值。由此实现对于制动时间长度的调节,达到理想的触觉反馈体验。本实施例中,制动维持参数可以表示为g’。
64.步骤203、利用增益系数和预设的制动波形函数,确定制动电流。
65.由于本实施例中只对振子进行一次幅相检测,后续不再继续幅相检测;所以需要利用预设的制动波形函数,将制动电流的波形形态预先确定下来。换言之,制动电流波形的基础形态将与制动波形函数一致。
66.然后根据上述步骤,可以通过一次的幅相检测确定幅相信息以及增益系数。进而根据增益系数和制动波形函数确定制动电流。也就是说,增益系数的数值可以改变制动波形函数的幅值,并且增益系数的正负值可以使制动波形函数基于横坐标轴(时间轴)镜像翻转。但是增益系数并不会改变制动波形函数的波形的基础形态。
67.在本实施例中,制动波形函数可以表示为u(t),其中t代表时间自变量。本实施例中对于制动波形函数的具体函数关系不做限定,任何能够实现相同或类似效果的函数关系,均可作为本实施例中的制动波形函数。例如,制动波形函数可以是正弦函数或者类正弦的其他函数。
68.本实施例中,制动电流可以表示为u。则在上述的基础之上,根据增益系数和制动波形函数所确定的制动电流为u=g*u(t)。另外,根据增益系数、制动维持参数和制动波形函数所确定的制动电流为u=g*g’*u(t)。
69.步骤204、向线性马达输入制动电流,以使线性马达制动。
70.在确定的制动电流的形态之后,即可向线性马达输入制动电流,即输入制动电流,以使线性马达制动。如图4所示,为向线性马达输入的驱动信号和制动电流的示意图。其中,虚线左侧的正弦波形为驱动电流,虚线右侧的波形为制动电流。结合上述确定制动电流的过程,并结合图4可见,本实施例中所确定的制动电流是一种随时间连续变化的全驱信号。因此本实施例中向线性马达输入该全驱信号实行的制动电流,便实现了对于线性马达的全周期制动。实践中可以测得,在全周期制动过程中最快只需1~2个周期即可完成制动,显著的提高了制动效率。
71.另外还需要说明的是,因为制动电流的正负值应当与加速度的正负值始终保持相反,方可产生的电磁力为反向电磁力,能够达到制动效果。反之若制动电流的正负值应当与加速度的正负值相同,则不仅不能产生制动效果,还能够反向的产生驱动效果。因此,制动电流输入的时机是需要保证精确的。例如,可以通过以下的方式确定输入制动电流的时刻:确定振子的加速度达到参照数值的时刻;根据加速度达到参照数值的时刻,确定制动电流的输入时刻;在制动电流的输入时刻,向线性马达输入制动电流。
72.也就是说,可以将满足制动条件之后,振子加速度首次达到参照数值的时刻,即加速度曲线首次过0点的时刻作为参照。一些情况下,可以直接在该时刻输入制动电流。
73.通过以上技术方案可知,本实施例存在的有益效果是:在制动过程中通过一次幅相检测确定线性马达的幅相信息和增益系数,利用增益系数和制动波形函数,确定全驱信号形式的制动电流;向线性马达输入该制动电流,以实现全周期制动,提高了线性马达的制动效率。
74.图2所示仅为本发明所述方法的基础实施例,在其基础上进行一定的优化和拓展,还能够得到所述方法的其他优选实施例。
75.如图5所示,为本发明所述一种线性马达的制动方法的另一个具体实施例。本实施例在前述实施例的基础上,进一步的描述制动波形函数的确定过程。本实施例中,所述方法包括以下步骤:
76.步骤501、根据线性马达的性能参数,确定制动波形函数。
77.线性马达的性能参数,涉及到诸多种基于其本身元器件的特性而确定的具体参数。在本领域中,此类性能参数均可视为已知的数值。制动波形函数,即为结合性能参数进行运算而确定的函数关系。在本实施例中,制动波形函数可以具体为:
78.u(t)=a*v(t)
79.其中,u(t)代表制动波形函数,a代表线性马达的性能参数,v(t)代表线性马达的等效指数正弦函数,t代表时间自变量。通常,性能参数a取决于线性马达中元器件的性能,在本领域中可针对线性马达实测得到,亦可根据经验估算得到;本实施例中可将其视为一个已知的数值。
80.等效指数正弦函数v(t)具体如下:
81.v(t)=e
ξt
*sin(wt+α)
82.其中,ξ代表线性马达的等效阻尼系数,w代表线性马达振子的自然频率,α代表振子的初始相位。
83.根据上述计算过程,本实施例中实现了根据线性马达的性能参数确定制动波形函数。
84.步骤502、在满足制动条件时,对线性马达的振子进行幅相检测,以确定幅相信息。
85.步骤503、根据幅相信息确定增益系数;利用增益系数和制动波形函数确定制动电流。
86.步骤504、向线性马达输入制动电流。
87.上述步骤502~步骤504中内容与前述实施例一致,在此不重复叙述。
88.如图6所示,为本发明所述一种线性马达的制动装置的一个具体实施例。本实施例所述装置,即用于执行图2~5所述方法的实体装置。其技术方案本质上与上述实施例一致,上述实施例中的相应描述同样适用于本实施例中。本实施例中所述装置包括:
89.幅相信息确定模块601,用于在满足制动条件时,对线性马达的振子进行幅相检测,以确定幅相信息。
90.增益系数确定模块602,用于根据幅相信息确定增益系数。
91.制动电流确定模块603,用于利用增益系数和预设的制动波形函数,确定制动电流。
92.制动电流输入模块604,用于向线性马达输入制动电流,以使线性马达制动。
93.图7是本发明实施例提供的一种电子设备的结构示意图。在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(random-access memory,ram),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
94.处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是isa(industry standard architecture,工业标准体系结构)总线、pci(peripheral component interconnect,外设部件互连标准)总线或eisa(extended industry standard architecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
95.存储器,用于存放执行指令。具体地,执行指令即可被执行的计算机程序。存储器可以包括内存和非易失性存储器,并向处理器提供执行指令和数据。
96.在一种可能实现的方式中,处理器从非易失性存储器中读取对应的执行指令到内存中然后运行,也可从其它设备上获取相应的执行指令,以在逻辑层面上形成线性马达的制动装置。处理器执行存储器所存放的执行指令,以通过执行的执行指令实现本发明任一实施例中提供的线性马达的制动方法。
97.上述如本发明图6所示实施例提供的线性马达的制动装置执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
98.结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
99.本发明实施例还提出了一种可读介质,该可读存储介质存储有执行指令,存储的执行指令被电子设备的处理器执行时,能够使该电子设备执行本发明任一实施例中提供的线性马达的制动方法,并具体用于执行如图2或图5所示的方法。
100.前述各个实施例中所述的电子设备可以为计算机。
101.本领域内的技术人员应明白,本发明的实施例可提供为方法或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例,或软件和硬件相结合的形式。
102.本发明中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
103.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包
括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
104.以上所述仅为本发明的实施例而已,并不用于限制本发明。对于本领域技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1