1.本技术涉及安防监控和镜头技术领域,尤其涉及摄像机和摄像机用音圈电机驱动方法。
背景技术:2.目前,常见的光学变倍镜头,从最小倍率变倍到最大倍率,通常需要2秒至10秒左右的时间,而聚焦动作,也需要消耗1秒至3秒左右的时间,因此,传统的光学变倍镜头,对于快速移动的物体,无法实现快速的监控抓拍。
3.例如,若抓拍任务为:“抓拍正在行驶过程中的车辆驾驶员是否有使用手机的动作”时,由于传统的光学变倍镜头无法在短时间内完成变倍动作和聚焦动作,因此在处理这类任务时,通常需要拍摄大范围的图像,然后利用数字变倍抠图技术,在大范围的图像中抠出感兴趣的区域,进行图像行为分析。由于抠图图像像素数量较少,大大降低了图像质量,因此后期图像分析难度高且成功率低。
4.因此,亟待一种快速变倍聚焦方案,能够在短时间内实现光学镜头的变倍动作和/或聚焦动作。
技术实现要素:5.本技术提供摄像机和摄像机用音圈电机驱动方法,能够使光学镜头快速实现变倍和/或聚焦。
6.第一方面,本技术提供一种摄像机,包括:透镜组、音圈电机、隧道磁阻tmr元件和控制装置;透镜组包括变倍透镜组和聚焦透镜组中的至少一个透镜组;音圈电机,用于驱动透镜组沿摄像机的光轴方向移动;tmr元件包括tmr磁头和tmr磁条;其中,tmr磁条用于产生磁场;tmr磁头用于切割tmr磁条产生的磁场以产生电信号;tmr磁条与透镜组固定连接,且tmr磁条与tmr磁头相对设置;在透镜组沿着光轴方向移动时,tmr磁条与透镜组保持相对静止,且tmr磁头与tmr磁条之间产生相对位移;其中,在透镜组可移动的路程内,tmr磁头通过切割磁场产生目标电信号,目标电信号具有多个信号周期,每一个信号周期所对应的单位移动距离相同;控制装置被配置用于:获取tmr磁头输出的目标电信号,目标电信号为两相信号,包括:第一信号和第二信号;第一信号和第二信号之间具有相位差;控制装置,还用于基于相位差和目标电信号的信号周期数,确定透镜组在当前时刻的当前位置;控制装置,还用于基于透镜组的当前位置和透镜组的目标位置,生成驱动信号;控制装置,还用于采用驱动信号,驱动音圈电机,以使得透镜组从当前位置调整至目标位置。
7.可以理解的是,本技术实施例将音圈电机应用于摄像机中,解决了传统摄像机用步进电机驱动变倍或聚焦速度慢的问题,相比于步进电机,音圈电机可将速度提高十倍。此外,本技术还引入了tmr元件来检测实时位置,作为反馈,实现了精准的闭环控制。因此,本技术实施例提供的摄像机,能够在短时间内实现镜头的变倍动作和/或聚焦动作,进而快速完成抓拍等动作。
8.在一种可能的实现方式中,控制装置生成相邻两个驱动信号之间的时间差小于或等于预设阈值。
9.另一种可能的实现方式中,第一信号与第二信号之间的相位差为90度。
10.另一种可能的实现方式中,第一信号的波形满足正弦信号的波形,第二信号的波形满足余弦信号的波形;透镜组在当前时刻的当前位置由第一信号与第二信号之间的比值确定。
11.另一种可能的实现方式中,透镜组在当前时刻的当前位置是以目标电信号的信号周期的个数和比值为参变量的函数确定的。
12.另一种可能的实现方式中,控制装置还包括存储器,存储器中存储着多个角度的反正切值;控制装置,具体用于根据比值在存储器中寻址到目标反正切值,并根据目标反正切值、目标电信号的信号周期的个数和单位移动距离,确定透镜组在当前时刻的当前位置。
13.另一种可能的实现方式中,控制装置,具体用于;根据第一信号的电压值与第二信号的电压值之间的正负关系,以及目标反正切值,确定目标角度;根据目标角度,确定透镜组在单周期内的位置;根据透镜组在单周期内的位置、目标电信号的信号周期的个数和单位移动距离,确定透镜组在当前时刻的当前位置。
14.另一种可能的实现方式中,控制装置,具体用于:在第一信号的电压值大于或等于零,且第二信号的电压值大于零的情况下,确定目标角度等于目标反正切值;在第一信号的电压值小于零,且第二信号的电压值大于或等于零的情况下,确定目标角度为180度与目标反正切值之差;第一信号的电压值小于或等于零,且第二信号的电压值小于零的情况下,确定目标角度为180度与目标反正切值之和;第一信号的电压值大于零,且第二信号的电压值小于零的情况下,确定目标角度为360度与目标反正切值之差。
15.另一种可能的实现方式中,控制装置,具体用于获取第一信号的电压值的绝对值,和第二信号的电压值的绝对值;并根据第一信号的电压值的绝对值与第二信号的电压值的绝对值之间的大小关系,确定目标反正切值;其中,在第一信号的电压值的绝对值大于第二信号的电压值的绝对值的情况下,比值为第二信号的电压值的绝对值比上第一信号的电压值的绝对值,则根据比值在存储器中寻址到的目标反正切值为比值的反正切值;在第一信号的电压值的绝对值小于或等于第二信号的电压值的绝对值的情况下,比值为第一信号的电压值的绝对值比上第二信号的电压值的绝对值,则根据比值在存储器中寻址到的目标反正切值为90度与比值的反正切值之差。
16.第二方面,本技术提供一种驱动方法,应用于摄像机,摄像机包括:透镜组、音圈电机、隧道磁阻tmr元件和控制装置;透镜组包括变倍透镜组和聚焦透镜组中的至少一个透镜组;音圈电机,用于驱动透镜组沿摄像机的光轴方向移动;tmr元件包括tmr磁头和tmr磁条;其中,tmr磁条用于产生磁场;tmr磁头用于切割tmr磁条产生的磁场以产生电信号;tmr磁条与透镜组固定连接,且tmr磁条与tmr磁头相对设置;在透镜组沿着光轴方向移动时,tmr磁条与透镜组保持相对静止,且tmr磁头与tmr磁条之间产生相对位移;其中,在透镜组可移动的路程内,tmr磁头通过切割磁场产生目标电信号,目标电信号具有多个信号周期,每一个信号周期所对应的单位移动距离相同;方法包括:控制装置获取tmr磁头输出的目标电信号,目标电信号为两相信号,包括:第一信号和第二信号;第一信号和第二信号之间具有相位差;控制装置基于相位差和目标电信号的信号周期数,确定透镜组在当前时刻的当前位
置;控制装置基于透镜组的当前位置和透镜组的目标位置,生成驱动信号;控制装置采用驱动信号,驱动音圈电机,以使得透镜组从当前位置调整至目标位置。
17.第三方面,本技术提供一种驱动方法,镜头包括:透镜组、与透镜组分别连接的音圈电机和隧道磁阻tmr元件,音圈电机用于控制透镜组移动;tmr元件用于在透镜组移动的过程中产生电信号;上述方法包括:获取tmr元件产生目标电信号在第一时刻时的第一参数值;其中,目标电信号是tmr元件在第一时刻与当前时刻之间产生的电信号;第一时刻在当前时刻之前,第一参数值用于表征目标电信号的两相信号之间的比值;根据目标电信号的多个第一参数值与目标电信号在单周期的多个角度之间的对应关系,以及目标电信号在第一时刻时的第一参数值,确定目标电信号在第一时刻时的目标角度;其中,第一参数值与角度一一对应;至少基于目标角度,确定透镜组在当前时刻的当前位置;基于透镜组的当前位置和透镜组的目标位置,生成驱动信号;采用驱动信号,驱动音圈电机,以使得透镜组从当前位置调整至目标位置。
18.基于本技术提供的技术方案,至少可以产生以下有益效果:获取tmr元件产生的目标电信号在第一时刻时的第一参数值,并根据第一参数值与角度的对应关系,确定目标电信号在第一时刻时的目标角度;进而基于目标角度确定透镜组的当前位置,根据当前位置与目标位置,生成驱动信号,使得音圈单机根据该驱动信号驱动透镜组从当前位置调整至目标位置。可以理解的是,在确定驱动信号的过程中,若单片机需要实时解算目标角度,会耗费大量的时间和计算资源,因此,基于本技术实施例提供的方法,能够根据第一参数值与角度的对应关系确定目标角度,无需实时计算目标角度,能够快速确定透镜组的当前位置,进而根据透镜组的当前位置与目标位置,生成驱动信号。本技术实施例提供的方法在应用于摄像机镜头时,能够提高摄像机镜头的变倍速率和聚焦速率,进而能够在短时间内实现镜头的变倍动作和/或聚焦动作。
19.在一种可能的实现方式中,第一参数值与存储地址一一对应,其中,一个存储地址用于存储一个预设值,预设值与角度一一对应;上述根据目标电信号的多个第一参数值与目标电信号在单周期的多个角度之间的对应关系,以及目标电信号在第一时刻时的第一参数值,确定目标电信号在第一时刻时的目标角度,包括:根据目标电信号在第一时刻时的第一参数值,确定目标存储地址;从目标存储地址所指示的存储空间中读取目标预设值;其中,目标预设值用于确定目标角度。
20.另一种可能的实现方式中,上述目标电信号的两相信号包括:第一信号和第二信号,第一信号与第二信号之间的相位差为90度;第一参数值由第一信号的电压值与第二信号的电压值的比值确定;预设值由第一参数值的反正切值确定。
21.另一种可能的实现方式中,上述根据目标电信号的多个第一参数值与目标电信号在单周期的多个角度之间的对应关系,以及目标电信号在第一时刻时的第一参数值,确定目标电信号在第一时刻时的目标角度,还包括:根据第一信号在第一时刻时的电压值与第二信号在第一时刻时的电压值之间的正负关系,以及目标预设值,确定目标角度。
22.另一种可能的实现方式中,上述至少基于目标角度,确定透镜组在当前时刻的当前位置,包括:获取目标电信号在第一时刻与当前时刻之间的信号周期数,以及单位移动距离;其中,单位移动距离是指一个信号周期内透镜组的移动距离;基于目标角度、信号周期数和单位移动距离,确定透镜组在当前时刻的当前位置。
23.另一种可能的实现方式中,上述基于目标角度、信号周期数和单位移动距离,确定透镜组在当前时刻的当前位置,包括:基于目标角度,确定在单周期内tmr元件的位置;其中,tmr元件包括:tmr磁头和tmr磁条;tmr磁头用于产生磁场,tmr磁条用于切割tmr磁头产生的磁场;tmr元件的位置表示tmr磁头相对于tmr磁条的位置;根据单周期内tmr元件的位置、信号周期数和单位移动距离,确定透镜组在当前时刻的当前位置。
24.另一种可能的实现方式中,上述基于透镜组的当前位置和透镜组的目标位置,生成驱动信号,包括:确定透镜组的当前位置与透镜组的目标位置之间的差值;对透镜组的当前位置与透镜组的目标位置之间的差值,进行比例微分积分pid运算,生成驱动信号。
25.另一种可能的实现方式中,在获取tmr元件产生目标电信号在第一时刻时的第一参数值之前,上述方法还包括:对目标电信号进行放大处理和滤波处理中的至少一种。
26.第四方面,本技术提供一种驱动装置,镜头包括:透镜组、与透镜组分别连接的音圈电机和隧道磁阻tmr元件,音圈电机用于控制透镜组移动;tmr元件用于在透镜组移动的过程中产生电信号;上述驱动装置包括:获取模块,用于获取tmr元件产生目标电信号在第一时刻时的第一参数值;其中,目标电信号是tmr元件在第一时刻与当前时刻之间产生的电信号;第一时刻在当前时刻之前,第一参数值用于表征目标电信号的两相信号之间的比值;确定模块,用于根据目标电信号的多个第一参数值与目标电信号在单周期的多个角度之间的对应关系,以及目标电信号在第一时刻时的第一参数值,确定目标电信号在第一时刻时的目标角度;其中,第一参数值与角度一一对应;确定模块,还用于至少基于目标角度,确定透镜组在当前时刻的当前位置;驱动模块,用于基于透镜组的当前位置和透镜组的目标位置,生成驱动信号;驱动模块,还用于采用驱动信号,驱动音圈电机,以使得透镜组从当前位置调整至目标位置。
27.在一种可能的实现方式中,第一参数值与存储地址一一对应,其中,一个存储地址用于存储一个预设值,预设值与角度一一对应;确定模块,具体用于根据目标电信号在第一时刻时的第一参数值,确定目标存储地址;从目标存储地址所指示的存储空间中读取目标预设值;其中,目标预设值用于确定目标角度。
28.另一种可能的实现方式中,上述目标电信号的两相信号包括:第一信号和第二信号,第一信号与第二信号之间的相位差为90度;上述第一参数值由第一信号的电压值与第二信号的电压值的比值确定;上述预设值由第一参数值的反正切值确定。
29.另一种可能的实现方式中,确定模块,还用于根据第一信号在第一时刻时的电压值与第二信号在第一时刻时的电压值之间的正负关系,以及目标预设值,确定目标角度。
30.另一种可能的实现方式中,确定模块,具体用于获取目标电信号在第一时刻与当前时刻之间的信号周期数,以及单位移动距离;其中,单位移动距离是指一个信号周期内透镜组的移动距离;基于目标角度、信号周期数和单位移动距离,确定透镜组在当前时刻的当前位置。
31.另一种可能的实现方式中,确定模块,具体用于基于目标角度,确定在单周期内tmr元件的位置;其中,tmr元件包括:tmr磁头和tmr磁条;tmr磁头用于产生磁场,tmr磁条用于切割tmr磁头产生的磁场;tmr元件的位置表示tmr磁头相对于tmr磁条的位置;根据单周期内tmr元件的位置、信号周期数和单位移动距离,确定透镜组在当前时刻的当前位置。
32.另一种可能的实现方式中,驱动模块,具体用于确定透镜组的当前位置与透镜组
的目标位置之间的差值;对透镜组的当前位置与透镜组的目标位置之间的差值,进行比例微分积分pid运算,生成驱动信号。
33.另一种可能的实现方式中,上述驱动装置还包括:放大/滤波模块,用于对目标电信号进行放大处理和滤波处理中的至少一种。
34.第五方面,本技术提供一种驱动装置,包括:一个或多个处理器;一个或多个存储器;其中,一个或多个存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当一个或多个处理器执行计算机指令时,驱动装置执行上述第一方面所提供的任一种驱动方法。
35.第六方面,本技术提供一种计算机可读存储介质,计算机可读存储介质存储有计算机执行指令,当计算机执行指令在计算机上运行时,使得计算机执行上述第一方面所提供的任一种驱动方法。
附图说明
36.图1为本技术实施例提供的一种摄像机的结构示意图一;
37.图2为本技术实施例提供的一种摄像机的结构示意图二;
38.图3为本技术实施例提供的一种控制装置的结构示意图;
39.图4为本技术实施例提供的一种信号处理流程的示意图;
40.图5为本技术实施例提供的一种驱动方法的流程图一;
41.图6为本技术实施例提供的一种tmr元件的示意图;
42.图7为本技术实施例提供的一种电信号的示意图一;
43.图8为本技术实施例提供的一种电信号的示意图二;
44.图9为本技术实施例提供的一种驱动方法的流程图二;
45.图10为本技术实施例提供的一种驱动方法的流程图三;
46.图11为本技术实施例提供的一种透镜组的运动周期的示意图;
47.图12为本技术实施例提供的一种驱动方法的流程图四;
48.图13为本技术实施例提供的一种线性信号的示意图;
49.图14为本技术实施例提供的一种反正切函数的示意图;
50.图15为本技术实施例提供的一种正切值的示意图;
51.图16为本技术实施例提供的一种驱动方法的流程图五;
52.图17为本技术实施例提供的一种电信号的周期计数的示意图;
53.图18为本技术实施例提供的一种驱动装置的结构示意图一;
54.图19为本技术实施例提供的一种驱动装置的结构示意图二。
具体实施方式
55.本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。
56.本技术的说明书以及附图中的术语“第一”和“第二”等是用于区别不同的对象,或者用于区别对同一对象的不同处理,而不是用于描述对象的特定顺序。
57.此外,本技术的描述中所提到的术语“包括”和“具有”以及它们的任何变形,意图
在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选的还包括其他没有列出的步骤或单元,或可选的还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
58.需要说明的是,本技术实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本技术实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
59.在本技术的描述中,除非另有说明,“多个”的含义是指两个或两个以上。
60.如背景技术所述,目前,常见的光学变倍镜头,从最小倍率变倍到最大倍率,通常需要2秒至10秒左右的时间,而聚焦动作,也需要消耗1秒至3秒左右的时间,因此,传统的光学变倍镜头,对于快速移动的物体,无法实现快速的监控抓拍。
61.例如,若抓拍任务为:“抓拍正在行驶过程中的车辆驾驶员是否有使用手机的动作”时,由于传统的光学变倍镜头无法在短时间内完成变倍动作和聚焦动作,因此在处理这类任务时,通常需要拍摄大范围的图像,然后利用数字变倍抠图技术,在大范围的图像中抠出感兴趣的区域,进行图像行为分析。由于抠图图像像素数量较少,大大降低了图像质量,因此后期图像分析难度高且成功率低。
62.因此,亟待一种快速变倍聚焦方案,能够在短时间内实现光学镜头的变倍动作和/或聚焦动作。
63.针对上述技术问题,本技术实施例提供了一种摄像机,包括:变倍透镜组和聚焦透镜组中的至少一个透镜组;音圈电机,用于驱动透镜组沿摄像机的光轴方向移动;tmr元件包括tmr磁头和tmr磁条;tmr磁条用于产生磁场;tmr磁头通过切割磁场产生目标电信号;控制装置,用于获取tmr磁头输出的目标电信号,目标电信号的两相信号之间具有相位差;控制装置,还用于基于相位差和目标电信号的信号周期数,确定透镜组在当前时刻的当前位置,进而基于透镜组的当前位置和透镜组的目标位置,生成驱动信号,以使得音圈电机驱动透镜组从当前位置调整至目标位置。
64.可以理解的是,本技术实施例将音圈电机应用于摄像机中,解决了传统摄像机用步进电机驱动变倍或聚焦速度慢的问题,相比于步进电机,音圈电机可将速度提高十倍。此外,本技术还引入了tmr元件来检测实时位置,作为反馈,实现了精准的闭环控制。因此,本技术实施例提供的摄像机,能够在短时间内实现镜头的变倍动作和/或聚焦动作,进而快速完成抓拍等动作。
65.下面结合说明书附图,对本技术提供的实施例进行具体介绍。
66.请参考图1,其示出本技术实施例提供的一种摄像机的结构示意图。如图1所示,该摄像机包括:镜头100和控制装置200。其中,镜头110和控制装置200可以独立设置,也可以集成设置,下文中均以二者独立设置为例进行说明。
67.其中,镜头100可以包括:变倍(zoom)群组和聚焦(focus)群组。
68.如图2所示,变倍群组包括:变倍透镜组111、变倍音圈电机112、变倍隧道磁阻(tunnel magneto resistance,tmr)磁条113、变倍tmr磁头114。
69.变倍音圈电机112,用于驱动变倍透镜组111沿着镜头光轴方向运动。
70.变倍tmr磁条113,用于产生多周期的磁场。
71.变倍tmr磁头114,变倍tmr磁头114固定在镜头100的外壳上,且变倍tmr磁头114与变倍tmr磁条113相对设置。变倍tmr磁头114用于切割变倍tmr磁条113产生的磁场以产生电信号。
72.具体的,变倍透镜组111与变倍tmr磁条113固定连接(硬连接),当变倍音圈电机112驱动变倍透镜组111沿着镜头光轴方向运行时,变倍tmr磁条113与变倍透镜组111保持相对静止,且变倍tmr磁条113与变倍tmr磁头114发生相对位移,此时,变倍tmr磁头114切割变倍tmr磁条113产生的磁场,从而产生目标电信号。其中,目标电信号具有多个信号周期,每一个信号周期对应的单位移动距离相同。
73.可选的,变倍tmr磁头114产生的目标电信号为相位差为90度的两相信号。
74.在一些实施例中,变倍tmr磁头114还用于将产生的目标电信号发送给控制装置200。
75.如图2所示,聚焦群组包括:聚焦透镜组121、聚焦音圈电机122、聚焦tmr磁条123、聚焦tmr磁头124。
76.聚焦音圈电机122,用于驱动聚焦透镜组121沿着镜头光轴方向运动。
77.聚焦tmr磁条123,用于产生多周期的磁场。
78.聚焦tmr磁头124,聚焦tmr磁头124固定在镜头100的外壳上,且聚焦tmr磁头124与聚焦tmr磁条123相对设置。聚焦tmr磁头124用于切割聚焦tmr磁条123产生的磁场以产生电信号。
79.具体的,聚焦透镜组121与聚焦tmr磁条123固定连接(硬连接),当聚焦音圈电机122驱动聚焦透镜组121沿着镜头光轴方向运行时,聚焦tmr磁条123与聚焦透镜组121保持相对静止,且聚焦tmr磁条123与聚焦tmr磁头124发生相对位移,此时,聚焦tmr磁头124切割聚焦tmr磁头124产生的磁场,从而产生目标电信号。其中,目标电信号具有多个信号周期,每一个信号周期对应的单位移动距离相同。
80.可选的,聚焦tmr磁头124产生的目标电信号为相位差为90度的两相信号。
81.在一些实施例中,聚焦tmr磁头124还用于将产生的目标电信号发送给控制装置200。
82.控制装置200,用于根据变倍tmr磁头114发送的目标电信号,生成变倍音圈电机112的驱动信号,来驱动变倍音圈电机112运转。
83.控制装置200,还用于根据聚焦tmr磁头124发送的目标电信号,生成聚焦音圈电机122的驱动信号,来驱动聚焦音圈电机122运转。
84.在一些实施例中,如图3所示,控制装置200可以包括:信号放大模块210、低通滤波模块220、模数转换模块230、逻辑控制模块240和脉冲调制模块250中的一个或多个模块。
85.其中,信号放大模块210,用于放大电信号。可以理解的是,由于tmr磁头产生的目标电信号较微弱,因此,为了使目标电信号能够有效的经过导线传输到逻辑控制模块240中进行处理,需要将目标电信号经过信号放大模块210进行放大处理。
86.低通滤波模块220,用于滤除电信号中的噪声。可以理解的是,由于信号放大模块210在放大原始目标电信号的同时,也会放大目标电信号中的噪声信号,因此,需要通过低通滤波模块220,对放大后的目标电信号进行修正,以剔除噪声信号。
87.模数转换模块230,用于将电信号由模拟信号转换为数字信号。
88.逻辑控制模块240,用于对电信号进行处理,得到音圈电机的驱动信号。
89.示例性的,驱动信号可以为脉冲宽度调制(pulse width modulation,pwm)信号。
90.脉冲调制模块250,用于根据驱动信号驱动音圈电机运转。
91.在一些实施例中,tmr磁头产生的目标电信号可以为两相信号,两相信号分别为:第一信号与第二信号,则如图4所示,将两相信号同时输入控制装置200,依次通过信号放大模块210、低通滤波模块220、模数转换模块230、逻辑控制模块240和脉冲调制模块250进行处理,最终生成驱动信号,驱动音圈电机(m)运转。
92.在一些实施例中,第一信号与第二信号之间的相位差为90度。
93.在一些实施例中,第一信号的波形满足正弦信号的波形,第二信号的波形满足余弦信号的波形。
94.在一些实施例中,控制装置200,还用于基于相位差和目标电信号的信号周期数,确定透镜组在当前时刻的当前位置。
95.可选的,透镜组在当前时刻的当前位置由第一信号与第二信号之间的比值确定。示例性的,透镜组在当前时刻的当前位置是以目标电信号的信号周期的个数和第一信号与第二信号之间的比值为参变量的函数确定的。具体的,可以参见下文中步骤s103的内容。
96.在一些实施例中,控制装置200还包括存储器,该存储器中存储着多个角度的反正切值。则控制装置200,具体用于根据比值在存储器中寻址到目标反正切值,并根据目标反正切值、目标电信号的信号周期的个数和单位移动距离,确定透镜组在当前时刻的当前位置。具体的,可以参见下文中步骤s102-s103的内容。
97.可以理解的是,控制装置200无需实时解算目标反正切值,通过寻址的方式即可确定目标反正切值,进而使得控制装置200确定透镜组在当前时刻的当前位置需要消耗的时间较小,也即,能够快速的产生驱动信号,进而提高摄像机的变倍速率和/或聚焦速率。
98.在一些实施例中,控制装置200,具体用于根据第一信号的电压值与第二信号的电压值之间的正负关系,以及目标反正切值,确定目标角度;根据目标角度,确定透镜组在单周期内的位置;根据透镜组在单周期内的位置、目标电信号的信号周期的个数和单位移动距离,确定透镜组在当前时刻的当前位置。具体的,可以参见下文中步骤s203-s206的内容。
99.在一些实施例中,控制装置200,具体用于:在第一信号的电压值大于或等于零,且第二信号的电压值大于零的情况下,确定目标角度等于目标反正切值;在第一信号的电压值小于零,且第二信号的电压值大于或等于零的情况下,确定目标角度为180度与目标反正切值之差;第一信号的电压值小于或等于零,且第二信号的电压值小于零的情况下,确定目标角度为180度与目标反正切值之和;第一信号的电压值大于零,且第二信号的电压值小于零的情况下,确定目标角度为360度与目标反正切值之差。具体的,可以参见下文中步骤s203的内容。
100.在一些实施例中,控制装置200,具体用于获取第一信号的电压值的绝对值,和第二信号的电压值的绝对值;并根据第一信号的电压值的绝对值与第二信号的电压值的绝对值之间的大小关系,确定目标反正切值。
101.其中,在第一信号的电压值的绝对值大于第二信号的电压值的绝对值的情况下,比值为第二信号的电压值的绝对值比上第一信号的电压值的绝对值,则根据比值在存储器中寻址到的目标反正切值为比值的反正切值;在第一信号的电压值的绝对值小于或等于第
二信号的电压值的绝对值的情况下,比值为第一信号的电压值的绝对值比上第二信号的电压值的绝对值,则根据比值在存储器中寻址到的目标反正切值为90度与比值的反正切值之差。
102.具体的,可以参见下文中步骤s203的内容。
103.在一些实施例中,控制装置200,还用于基于透镜组的当前位置和透镜组的目标位置,生成驱动信号。具体的,可以参见下文中步骤s104的内容。
104.其中,控制装置200生成相邻两个驱动信号之间的时间差小于或等于预设阈值。
105.可以理解的是,控制装置200生成相邻两个驱动信号之间的时间差小于或等于预设阈值,说明音圈电机能够及时的接收到驱动信号,进而音圈电机驱动透镜组运动的速率加快,提高摄像机的变倍速率和/或聚焦速率。
106.在一些实施例中,控制装置200,还用于采用驱动信号,驱动音圈电机,以使得透镜组从当前位置调整至目标位置。具体的,可以参见下文中步骤s105的内容。
107.可以理解的是,本技术实施例将音圈电机应用于摄像机中,解决了传统摄像机用步进电机驱动变倍或聚焦速度慢的问题,相比于步进电机,音圈电机可将速度提高十倍。此外,本技术还引入了tmr元件来检测实时位置,作为反馈,实现了精准的闭环控制。此外,本技术实施例提供的摄像机,无需实时计算目标角度,而是通过寻址的方式获取目标角度对应的反正切值,进而确定目标角度,能够快速确定透镜组的当前位置,进而根据透镜组的当前位置与目标位置,生成驱动信号,来驱动摄像机镜头的变倍和/或聚焦。
108.因此,本技术实施例提供的的摄像机,能够在短时间内实现镜头的变倍动作和/或聚焦动作,进而快速完成抓拍等动作。
109.下面对本技术实施例提供的一种驱动方法进行详细说明。
110.本技术实施例提供的一种驱动方法可以由图1中所示的控制装置来执行。可选的,本技术实施例提供的驱动方法可以用于变倍群组中,使得变倍音圈电机驱动变倍透镜组;或者,本技术实施例提供的驱动方法可以用于聚焦群组中,使得聚焦音圈电机驱动聚焦透镜组。
111.如图5所示,本技术实施例提供了一种驱动方法,该方法包括以下步骤:
112.s101、获取tmr元件产生目标电信号在第一时刻时的第一参数值。其中,目标电信号是tmr元件在第一时刻与当前时刻之间产生的电信号。第一时刻在当前时刻之前。
113.在一些实施例中,tmr元件包括:tmr磁头和tmr磁条。由于tmr磁条与透镜组固定连接(硬连接),且tmr磁头固定在镜头上,因此音圈电机在驱动透镜组运动的过程中,使得tmr磁头和tmr磁条之间发生相对位移,产生目标电信号。
114.由于音圈电机没有保持力,在没有驱动信号的情况下,音圈电机会沿着重力的方向滑动失控,因此音圈电机的驱动信号不能中断,也即控制装置需要实时计算并输出驱动信号,使得音圈电机稳定保持在目标位置。在一个示例中,控制装置生成驱动信号的流程(也即步骤s101-s105)可以以一个固定的周期进行循环(例如,一个循环可以看作一个运动周期),循环开始时先检测目标位置;随后通过接收tmr磁头输出的目标电信号,计算音圈电机的当前位置,并根据当前位置与目标位置的差异,确定驱动信号。
115.其中,如果一个循环内,控制装置确定不需要调节倍率/焦距,则下一个循环中透镜组的目标位置可以与该循环结束时的目标位置相同。如果当前循环内,控制装置确定需
要调节倍率/焦距,则当前循环内透镜的目标位置可以是重新确定的目标位置,该目标位置与上一循环结束时的目标位置不同。例如,控制装置可以在用户的指示下确定需要调节倍率/焦距,或者自动确定需要调节倍率/焦距,如基于摄像机的视野范围内的拍摄场景自动调节倍率/焦距。
116.示例性的,以如果一个循环内,控制装置确定不需要调节倍率/焦距为例:若第一循环(或第一运动周期)为将音圈电机从第一当前位置调整至第一目标位置,则音圈电机在第一驱动信号的驱动下由第一当前位置运动到第一目标位置之后,由于没有驱动信号的驱动,音圈电机沿着重力的方向滑动失控,那么此时,将开始第二循环(或第二运动周期),控制装置确定音圈电机的第二当前位置(第二当前位置为音圈电机沿着重力方向滑动到的位置),并根据第二当前位置与第一目标位置(上一个循环的目标位置)之间的差异,确定第二驱动信号,进而根据第二驱动信号再次驱动音圈电机从第二当前位置调整至第一目标位置。
117.可以理解的是,由于音圈电机与透镜组固定连接,因此音圈电机的位置反映了透镜组的位置。
118.在一些实施例中,第一时刻可以为当前循环(或当前运动周期)的开始时刻;或者,第一时刻可以为上一个循环(或上一个运动周期)的结束时刻。
119.在一些实施例中,目标电信号可以为两相信号。如图6所示,tmr磁头中具有两个相位(例如,a相和b相),这两个相位分别可以将该位置的磁场强度转换为电压,进而输出两相信号。tmr磁头中的两个相位之间具有相位差,因此输出的两相信号之间具有相位差,例如,两个相位之间的相位差可以为90度,则tmr磁头输出的两相信号之间的相位差可以为90度。
120.tmr磁头从tmr磁条的n极移动(相对位移)到tmr磁条的s极,产生的电信号为一个信号周期,由于tmr磁条在音圈电机的驱动下进行运动,因此,tmr磁头可以输出具有多个周期的电信号。示例性的,tmr磁头输出的电信号可以如图7所示,其中,该电信号是连续的,具有多个信号周期。该电信号的两相信号分别为:a相信号和b相信号,其中,a相信号可以满足正弦信号的波形,b相信号可以满足余弦信号的波形。
121.示例性的,如图8所示,若当前时刻为t1时刻,则第一时刻为t0时刻,在t0时刻与t1时刻之间产生的电信号为目标电信号。可选的,目标电信号可以包括n(n为大于0的整数)个周期。
122.在一些实施例中,第一参数值用于表征目标电信号的两相信号之间的比值。示例性的,第一参数值可以用于表征目标电信号的两相信号的电压值之间的比值。
123.在一些实施例中,上述方法还包括:对目标电信号进行放大处理和滤波处理中的至少一种。
124.可以理解的是,由于信号在沿导线传输的过程中会发生损耗,因此对目标电信号进行放大处理,可以使目标电信号能够有效的沿着导线进行传输。由于放大处理在放大信号的同时,也会放大信号中的噪声,因此,对放大后的目标电信号进行滤波处理,可以有效的滤除目标电信号中的噪声信号,进而获得稳定的目标电信号。
125.在一些实施例中,上述方法还包括:对目标电信号进行模数转换处理。示例性的,将目标电信号输入模数转换芯片中,得到目标电信号的数字信号。目标电信号的数字信号可以包括离散的电压值。
126.可以理解的是,本技术实施例提供的控制装置可以为单片机芯片,通常单片机芯片只能对数字信号进行处理,因此需要将模拟信号转换为数字信号。
127.s102、根据目标电信号的多个第一参数值与目标电信号在单周期的多个角度之间的对应关系,以及目标电信号在第一时刻时的第一参数值,确定目标电信号在第一时刻时的目标角度。
128.在一些实施例中,上述单周期指的是第一时刻时的目标电信号所处的信号周期。示例性的,若目标电信号包括五个信号周期,其中,第一时刻时的目标电信号为处于第一个信号周期,则单周期为第一个信号周期。
129.在一些实施例中,第一参数值与角度一一对应。示例性的,若目标电信号的两相信号分别为第一信号和第二信号,其中第一信号的电压值为valuea,第二信号的电压值为valueb,则第一参数值可以为:valuea/valueb;若角度为θ,则第一参数值与角度之间的对应关系可以表示为:θ=g(valuea/valueb)。可选的,g(
·
)可以为线性函数,例如反正切函数。
130.可以理解的是,由于根据第一参数值得到角度的运算过程较为复杂,若实时运算可能会造成处理时间变长。此外,在实际的使用中,信号处理过程运行在单片机内,由于单片机的运算速率有限,若直接在单片机内进行角度的运算,会影响单片机的处理进度,使得产生音圈电机的驱动信号的时间周期较长,使得摄像机的变倍速率和聚焦速率降低。
131.因此,针对上述问题,本技术实施例利用单片机存储空间大但处理速度有限的特点,提出一种以空间换取时间的思路。
132.具体的,第一参数值与存储地址一一对应,其中,一个存储地址用于存储一个预设值,预设值与角度一一对应。
133.可以理解的是,首先在单片机的内存空间中预存一段预设值,然后采用寻址的方式读取该内容。如此,在实际运行的过程中,单片机内部无需进行角度的运算,仅根据存储地址,即可读取预设值,有效提高了处理速度,使得单片机能够实时处理多路电信号。
134.示例性的,第一参数值、存储地址以及角度之间的对应关系可以如以下表1所示:
135.表1
[0136][0137][0138]
其中,x表示第一参数值,n表示存储地址,d表示预设值,a表示角度。n=f(x)表示第一参数值与存储地址之间的对应关系,可以看出,一个第一参数值唯一的确定一个存储地址;d=g(n)表示存储地址与预设值之间的对应关系,可以看出,一个存储地址,仅用于存储一个预设值;a=w(d)表示预设值与角度之间的对应关系,可以看出,一个预设值唯一的确定一个角度。
[0139]
在一些实施例中,目标电信号的两相信号包括:第一信号和第二信号,第一信号与第二信号之间的相位差为90度。其中,第一参数值可以由第一信号的电压值与第二信号的电压值的比值确定;预设值可以由第一参数值的反正切值确定。
[0140]
示例性的,第一信号的电压值可以用sinθ来表示,第二信号的电压值可以用cosθ来表示;则第一参数值可以为sinθ/cosθ(也即第一参数值可以满足正切函数);预设值可以满足arctan(sinθ/cosθ),如此,根据预设值arctan(sinθ/cosθ),可以确定角度为θ。
[0141]
可选的,如图9所示,上述步骤s102可以实现为以下步骤:
[0142]
s1021、根据目标电信号在第一时刻时的第一参数值,确定目标存储地址。
[0143]
示例性的,若第一时刻的第一参数值为x1,目标存储地址为:n1=f(x1)。
[0144]
在一些实施例中,上述目标存储地址,可以根据基地址和偏移地址确定。其中,基地址为每个存储段的起始地址,偏移地址为每个基地址上的偏移量。
[0145]
具体的,目标存储地址=基地址(b)+偏移地址(n),其中,0≤n≤n
max
,n
max
可以根据单片机芯片的内存大小和需求精度确定。
[0146]
s1022、从目标存储地址所指示的存储空间中读取目标预设值。
[0147]
其中,目标预设值用于确定目标角度。
[0148]
示例性的,若目标存储地址为:n1=f(x1),则目标预设值为d1=g(n1)。根据目标预设值确定的目标角度为:a1=w(d1)。
[0149]
s103、至少基于目标角度,确定透镜组在当前时刻的当前位置。
[0150]
在一些实施例中,如图10所示,上述步骤s103可以实现为以下步骤:
[0151]
s1031、获取目标电信号在第一时刻与当前时刻之间的信号周期数,以及单位移动距离。
[0152]
其中,单位移动距离是指一个信号周期内透镜组的移动距离。可以理解的是,如图2所示,由于透镜组和tmr磁条硬连接,因此透镜组的移动距离也即tmr磁条的移动距离。
[0153]
信号周期数表示目标电信号的周期数。示例性的,目标电信号从第一象限到第四象限是一个完整的信号周期,每个信号周期内目标电信号的曲线是重复的,通过计数目标电信号中重复的信号段即可得到信号周期数。
[0154]
s1032、基于目标角度、信号周期数和单位移动距离,确定透镜组在当前时刻的当前位置。
[0155]
具体的,步骤s1032可以实现为以下步骤:
[0156]
步骤a1、基于目标角度,确定在单周期内tmr元件的位置。
[0157]
其中,tmr元件的位置表示tmr磁头相对于tmr磁条的位置。
[0158]
由于tmr磁条的长度固定(假设tmr磁条的长度为s),因此tmr磁条在音圈电机的带动下运动,使得tmr磁头从tmr磁条的n极到s极之间切割磁场,在此期间,tmr磁条的单位移动距离为s,且tmr磁头产生一个电信号。因此,一个电信号的信号周期0
°
~360
°
对应的单位移动距离为0~s。示例性的,若单位移动距离s为600微米(um),那0
°
~360
°
对应0~600um,则1
°
对应1.666666um,2
°
对应3.33333um,以此类推。
[0159]
因此,在单周期内tmr元件的位置满足以下公式(1):
[0160]
[0161]
其中,t表示tmr元件的位置,angle表示目标角度,n
max
表示偏移地址的最大值,s表示单位移动距离。
[0162]
示例性的,若目标角度为66781,单位移动距离s为600um,n
max
=1000,则单周期内tmr元件的位置=[(66781/1000)/360]*s=111.3um。
[0163]
又一实例性的,若目标角度为157903,单位移动距离s为600um,n
max
=1000,则单周期内tmr元件的位置=[(157903/1000)/360]*s=263.172um。
[0164]
步骤a2、根据单周期内tmr元件的位置、信号周期数和单位移动距离,确定透镜组在当前时刻的当前位置。
[0165]
可以理解的是,由于透镜组在一个信号周期移动的距离为单位移动距离,因此,根据信号周期数与单位移动距离的乘积,以及在单周期内tmr元件的位置,即可确定透镜组在当前时刻的当前位置。
[0166]
示例性的,如图11所示,若当前运动周期的目标电信号包括4.5个信号周期,则tmr元件当前时刻的当前位置=4.5
×
单位移动距离+单周期内tmr元件的位置。
[0167]
在一些实施例中,透镜组在当前时刻的当前位置满足以下公式(2):
[0168]
pos=t
·
s+t
ꢀꢀ
公式(2)
[0169]
其中,pos表示透镜组在当前时刻的当前位置,t表示信号周期数。
[0170]
s104、基于透镜组的当前位置和透镜组的目标位置,生成驱动信号。
[0171]
具体的,步骤s104可以实现以下步骤:
[0172]
步骤b1、确定透镜组的当前位置与透镜组的目标位置之间的差值。
[0173]
示例性的,若透镜组的当前位置为pos1,透镜组的目标位置为pos2,则透镜组的当前位置与目标位置之间的差值为:pos2-pos1。
[0174]
步骤b2、根据透镜组的当前位置与透镜组的目标位置之间的差值,进行比例积分微分(proportion integral differential,pid)运算,生成驱动信号。
[0175]
其中,pid运算指的是,分别进行比例(proportion)、积分(integral)和微分(differential)的闭环运算。pid运算的基础是比例运算;积分运算可消除稳态误差,但可能增加超调;微分运算可加快大惯性系统响应速度以及减弱超调趋势。如此,基于pid运算确定的驱动信号能够较好的纠正系统。
[0176]
在一些实施例中,上述驱动信号可以为脉冲宽度调制(pulse width modulation,pwm)信号。
[0177]
在一些实施例中,一个运动周期对应一个驱动信号,控制装置生成相邻两个驱动信号之间的时间差小于或等于预设阈值。如此,使得音圈电机能够及时的接收到驱动信号,进而音圈电机驱动透镜组运动的速率加快,提高摄像机的变倍速率和/或聚焦速率。
[0178]
在一些实施例中,在通过pid运算生成驱动信号之后,该方法还包括:对生成的驱动信号进行低通滤波处理和/或均值滤波处理。
[0179]
可以理解的是,通过pid运算生成的驱动信号中可能会包括一些噪声信号,若直接根据该驱动信号驱动音圈电机,则音圈电机的运转可能不稳定(例如,可能会存在一个较大驱动信号使得音圈单机猛然提高转速;或者,可能会存在一个较小驱动信号使得音圈单机猛然降低转速),因此,通过低通滤波处理和/或均值滤波处理可以优化驱动信号,使得音圈电机的运转更加稳定。
[0180]
s105、采用驱动信号,驱动音圈电机,以使得透镜组从当前位置调整至目标位置。
[0181]
在一些实施例中,采用pwm信号的占空比,控制音圈电机运转,以使得透镜组从当前位置调整至目标位置。
[0182]
其中,pwm信号的占空比是一个脉冲周期内pwm信号的高电平在整个脉冲周期占的比例。例如,1秒高电平1秒低电平的pwm信号的占空比是50%。
[0183]
可以理解的是,音圈电机可以根据驱动信号,驱动聚焦透镜组从当前位置调整至目标位置,从而实现聚焦;或者,音圈电机可以根据驱动信号,驱动变倍透镜组从当前位置调整至目标位置,从而实现变倍。
[0184]
基于本技术实施例提供的技术方案,至少可以产生以下有益效果:获取tmr元件产生的目标电信号在第一时刻时的第一参数值,并根据第一参数值与角度的对应关系,确定目标电信号在第一时刻时的目标角度;进而基于目标角度确定透镜组的当前位置,根据当前位置与目标位置,生成驱动信号,使得音圈单机根据该驱动信号驱动透镜组从当前位置调整至目标位置。可以理解的是,在确定驱动信号的过程中,若单片机需要实时解算目标角度,会耗费大量的时间和计算资源,因此,基于本技术实施例提供的方法,能够根据第一参数值与角度的对应关系确定目标角度,无需实时计算目标角度,能够快速确定透镜组的当前位置,进而根据透镜组的当前位置与目标位置,生成驱动信号。本技术实施例提供的方法在应用于摄像机镜头时,能够提高摄像机镜头的变倍速率和聚焦速率,进而能够在短时间内实现镜头的变倍动作和/或聚焦动作。
[0185]
下面为便于理解,以单片机中存储的预设值为目标电信号的第一参数值的反正切值为例,对本技术实施例所提供的驱动方法进行说明。具体的,如图12所示,本技术实施例提供的驱动方法还可以实现为以下步骤:
[0186]
s201、获取tmr元件产生的目标电信号。其中,目标电信号的两相信号表示为sinθ和cosθ。目标电信号是tmr元件在第一时刻与当前时刻之间产生的电信号。第一时刻在当前时刻之前。
[0187]
s202、确定目标电信号在第一时刻时的第一参数值。其中,第一参数值为第一信号的电压值(即valuea=sinθ)与第二信号的电压值(即valueb=cosθ)的比值(即x=valuea/valueb=sinθ/cosθ=tanθ)。
[0188]
s203、根据目标电信号的多个第一参数值与目标电信号在单周期的多个角度之间的对应关系,以及目标电信号在第一时刻时的第一参数值,确定目标电信号在第一时刻时的目标角度。其中,第一参数值与角度一一对应。
[0189]
示例性的,如图13所示,目标电信号的多个第一参数值与目标电信号在单周期的多个角度之间的对应关系可以用反正切函数来表示。例如,若第一参数值为sinθ/cosθ,目标电信号在单周期的角度可以为arctan(sinθ/cosθ)=θ,也即对第一参数值求反正切即可得到目标电信号在单周期的角度。
[0190]
可以理解的是,由于目标电信号的第一信号与第二信号为复杂的三角函数信号,因此,为简化计算过程,在根据目标电信号的第一参数值确定目标电信号在单周期的角度时,考虑将复杂的信号转换为较为简单的线性信号来计算,提高计算速率。例如,反正切三角函数在单周期内是线性的,因此可以对第一参数值求反正切,得到目标电信号在单周期的角度。
[0191]
但是,由于控制装置运行在单片机内,单片机的运算速率有限,若直接在单片机内进行三角函数运算,其控制效果较差,具体原因如下:一方面,单片机对三角函数的计算通常需要消耗大量的时间,无法快速解析目标电信号得到目标角度;另一方面,由于音圈电机没有保持力,需要频繁给音圈电机传输驱动信号,而给其驱动信号的产生速率取决于图1所示的驱动方法循环一次所消耗的时间。为了得到更平滑、稳定的控制效果,需要处理流程越快越好,根据目前实验得出的结论,循环频率需在50khz以上,才能实现同时使变倍音圈电机和聚焦音圈电机得到较好的控制效果,也就意味着一次处理流程需在20us内完成,且单片机需要同时处理多个音圈电机,那么目标电信号的解析需在1us内完成,但是目前来说显然是无法完成。
[0192]
因此,本技术实施例采用寻址的方式确定目标电信号的反正切值。具体的,首先在单片机的内存空间中预存一段预设值,然后采用寻址的方式读取该内容。其中,上述预设值为第一参数值的反正切值。
[0193]
在一些实施例中,第一参数值与存储地址一一对应,其中,一个存储地址用于存储一个预设值,预设值与角度一一对应。
[0194]
在一些实施例中,上述存储地址=基地址(b)+偏移地址(n)。
[0195]
示例性的,偏移地址可以根据第一参数值确定,例如偏移地址可以满足以下公式(3):
[0196]
n=x
·nmax
ꢀꢀ
公式(3)
[0197]
其中,n表示偏移地址,x表示第一参数值,第一参数值x由第一信号的电压值与第二信号的电压值的比值确定,示例性的,若absa≥absb,则第一参数值x可以为absb/absa,则偏移地址n=absb/absa
·
nmax;若absa《absb,则第一参数值x可以为absa/absb,则偏移地址n=absa/absb
·
nmax。其中,absa表示第一信号的电压值的绝对值,absb表示第二信号的电压值的绝对值。此外,为避免浮点型对单片机的压力,在计算时需乘以nmax,将小数值变成整数值处理,示例性的,nmax的值可以为1000。
[0198]
可以看出,一个第一参数值可以唯一的确定一个存储地址,也即第一参数值与存储地址一一对应。
[0199]
示例性的,上述存储地址中存储的预设值可以满足以下公式(4):
[0200]
d=arctan(n/nmax)
·
nmax
ꢀꢀ
公式(4)
[0201]
其中,d为四舍五入后的整数。此外,为避免浮点型对单片机的压力,在计算时需乘以nmax。
[0202]
示例性的,如以下表2所示,若nmax=1000,则在偏移地址为n=0时,在存储地址b+0的存储空间中存储的预设值d≈arctan(0/1000)
·
1000=0;在偏移地址为n=1时,在存储地址b+1的存储空间中存储的预设值d≈arctan(1/1000)
·
1000=57;在偏移地址为n=2时,在存储地址b+2的存储空间中存储的预设值d≈arctan(2/1000)
·
1000=115;在偏移地址为n=1000时,在存储地址b+1000的存储空间中存储的预设值d≈arctan(1000/1000)
·
1000=45000。
[0203]
表2
[0204]
偏移地址存储地址预设值0b+0d≈arctan(0/1000)
·
1000=0
1b+1d≈arctan(1/1000)
·
1000=572b+2d≈arctan(2/1000)
·
1000=1151000b+1000d≈arctan(1000/1000)
·
1000=45000
[0205]
在一些实施例中,如图14所示,反正切函数的图像为值域范围在[-90
°
,90
°
]的中心对称函数,当值域在[0
°
,45
°
]范围内时,随着定义域的增大,反正切函数图形的斜率较高,当值域在[45
°
,90
°
]范围内时,随着定义域的增大(直至无穷),反正切函数图形的斜率接近0,且无限接近于0。可以看出,在存储预设值时,无法对值域在[45
°
,90
°
]范围内的反正切值进行存储(即,存储这部分的预设值将消耗大量的内存),因此,本技术实施例仅针对值域在[0,45
°
]范围的反正切值作为预设值进行存储,然后利用角度转换关系,进行0
°
至360
°
的反正切运算。
[0206]
示例性的,由于第一参数值(第一信号的电压值与第二信号的电压值之间的比值)反映的是正切值,且tan(0
°
)=0,tan(45
°
)=1,因此第一参数值的范围在0至1之间,因此在存储地址中存储的第一参数值的反正切值的范围在arctan(0)至arctan(1)之间。例如,单片机的存储地址中存储的预设值可以为以下表3所示:
[0207]
表3
[0208]
valuea/valueb(tan0
°
~tan45
°
)偏移地址n预设值d00arctan(0)
·
10000.0011arctan(0.001)
·
10000.0022arctan(0.002)
·
10000.0033arctan(0.003)
·
1000
………………
11000arctan(1)
·
1000
[0209]
以上是单片机内存储的值域在[0
°
,45
°
]范围的预设值,下面介绍如何根据单片机内存储的预设值,以及valuea与valueb之间的关系,确定目标电信号在单周期内的实际角度。
[0210]
1、首先,根据第一信号的电压值valuea的绝对值absa,和第二信号的电压值valueb的绝对值absb之间的大小关系,确定目标电信号的角度是否位于0
°
~45
°
之间。
[0211]
若absa》absb,则确定目标电信号的角度在0
°
~45
°
之间。
[0212]
若absa≤absb,则确定目标电信号的角度在45
°
~90
°
之间。
[0213]
可以理解的是,由于正切值是指是直角三角形中,某一锐角的对边与另一相邻直角边的比值。如图15所示,以valuea为x轴,valueb为y轴,则absa和absb确定的角度在第一象限内。其中,如图15中的(a)所示,若角度θ1在0
°
~45
°
之间,则tanθ1=absb1/absa1;且absa1》absb1;如图15中的(b)所示,若角度θ2在45
°
~90
°
之间,则tanθ2=absb2/absa2;且absa2≤absb2。因此,本技术实施例可以根据absa与absb之间的大小关系,来确定目标电信号的角度是否位于0
°
~45
°
之间。
[0214]
2、其次,根据目标电信号的角度的范围,确定偏移地址。
[0215]
若目标电信号的角度在0~45
°
内,则确定偏移地址n=absb/absa
·
nmax。
[0216]
若目标电信号的角度在45~90
°
内,则确定偏移地址n=absa/absb
·
nmax。
[0217]
3、进而,根据偏移地址确定存储地址,并从存储地址中取出预设值d。
[0218]
其中,存储地址=基地址(b)+偏移地址(n)。在存储地址中存储的预设值d=arctan(n/nmax)
·
nmax。
[0219]
4、根据预设值d确定反正切值atan。
[0220]
由于,存储地址中存储的预设值即为第一参数值的反正切值,因此预设值d应当等于反正切值,但是,在absa≤absb时(即目标电信号的角度在45~90
°
内),确定的偏移地址为n=absa/absb
·
nmax,即将目标电信号的角度变换到0
°
至45
°
之间了,因此目标电信号的实际角度与arctan(absb/absa)确定的角度互为余角,因此,当n=absb/absa
·
nmax时,根据预设值d确定的反正切值atan=90
°
·
nmax-d。
[0221]
具体的:
[0222]
若absa》absb,则偏移地址n=absb/absa
·
nmax,则预设值d=arctan(n/nmax)
·
nmax,则反正切值atan=d。
[0223]
若absa≤absb,则偏移地址n=absa/absb
·
nmax,则预设值d=arctan(n/nmax)
·
nmax,则反正切值atan=90
°
·
nmax-d。
[0224]
5、根据valuea与valueb之间的正负关系,以及反正切值atan,确定角度angle。
[0225]
若valuea≥0且valueb》0,则角度angle=atan。
[0226]
若valuea《0且valueb≥0,则角度angle=180
°
·
nmax-atan。
[0227]
若valuea≤0且valueb《0,则角度angle=180
°
·
nmax+atan。
[0228]
若valuea》0且valueb《0,则角度angle=360
°
·
nmax-atan。
[0229]
因此,在单片机中存储有预设值,以及单片机中定义了预设值、正切值以及角度的对应关系的基础上,上述步骤s202可以实现为以下步骤:
[0230]
步骤c1、根据目标电信号在第一时刻时的第一参数值,确定目标存储地址。
[0231]
示例性的,目标存储地址为:基地址(b)+目标偏移地址(n1),其中,目标偏移地址n1由第一时刻时的第一参数值确定。若第一时刻时,目标电信号的第一信号的电压值为valuea1,第二信号的电压值为valueb1,其中valuea1的绝对值为absa1,valueb1的绝对值为absb1,且absa1》absb1,则第一参数值x1=absb1/absa1,则目标偏移地址为n1=(absb1/absa1)
·
nmax。
[0232]
例如,若nmax的取值为1000;在第一时刻时目标电信号的第一信号的电压值valuea1为(-30)v,第二信号的电压值valueb1为20v,则valuea1的绝对值absa1为30,valueb1的绝对值absb1为20,由于30》20,则第一参数值x1=absb1/absa1=20/30=0.667,则目标存储地址为n1=(absb1/absa1)
·
nmax=(20/30)
·
nmax=0.667
×
1000=667。
[0233]
步骤c2、从目标存储地址所指示的存储空间中读取目标预设值。
[0234]
示例性的,若目标存储地址为:b+n,则目标预设值d=arctan(n/nmax)
·
nmax。
[0235]
在一些实施例中,目标预设值用于确定目标角度。具体的,可以实现为以下步骤:
[0236]
在一些实施例中,上述方法还包括:根据第一信号在第一时刻时的电压值与第二信号在第一时刻时的电压值之间的正负关系,以及目标预设值,确定目标角度。具体可以实现为:首先根据目标预设值,确定目标电信号的反正切值。进而根据目标电信号的反正切值,以及目标电信号的第一信号的电压值与第二信号的电压值之间的正负关系,确定目标角度。
[0237]
为便于理解,下面以图16为例,对上述步骤s202进行说明。示例性的,上述步骤
s202实现为以下步骤:
[0238]
sd1、求取第一时刻时第一信号的电压值valuea的绝对值absa,和第二信号的电压值valueb的绝对值absb。
[0239]
sd2、判断absa》absb是否满足。
[0240]
若是,则执行步骤sd3。
[0241]
若否,则执行步骤sd5。
[0242]
sd3、确定目标存储地址n=absb/absa
·
nmax。
[0243]
sd4、根据目标存储地址中存储的目标预设值d,确定反正切值atan=d。
[0244]
其中,d=arctan(n/nmax)
·
nmax。
[0245]
sd5、确定目标存储地址n=absa/absb
·
nmax。
[0246]
sd6、根据目标存储地址中存储的目标预设值d,确定反正切值atan=90
·
nmax-d。
[0247]
其中,d=arctan(n/nmax)
·
nmax。
[0248]
sd7、根据第一信号的电压值valuea与第二信号的电压值valueb之间的正负关系,以及反正切值atan,确定目标角度。
[0249]
示例性的,若valuea=1200,valueb=2800,nmax=1000;则absa=1200,absb=2800,则absa《absb,因此n=absa/absb
·
nmax=(1200/2800)
×
1000=428.5714286≈429,因此,d=arctan(n/nmax)
·
nmax=arctan(429/1000)
×
1000=23219;则atan=90
°×
1000-23219=66781;进而,valuea》0,valueb》0,因此目标角度为66781。
[0250]
又一示例性的,若valuea=-3200,valueb=1300,nmax=1000;则absa=3200,absb=1300,则absa》absb,因此n=absb/absa
·
nmax=(1300/3200)
×
1000=406.25≈406,因此,d=arctan(n/nmax)
·
nmax=arctan(406/1000)
×
1000=22097;则atan=22097;进而,valuea《0,valueb》0,因此目标角度为180
°
·
nmax
–
atan=180
°×
1000-22097=157903。
[0251]
s204、基于目标角度,确定在单周期内tmr元件的位置。
[0252]
具体的,可以参见上文中步骤s1032中的步骤a1的内容。
[0253]
s205、获取目标电信号在第一时刻与当前时刻之间的信号周期数,以及单位移动距离。
[0254]
其中,信号周期数表示目标电信号的周期数。示例性的,如图17中的(a)所示,目标电信号由第一象限到第四象限是一个完整的信号周期,每个信号周期内目标电信号的曲线是重复的,通过计数目标电信号中重复的信号段即可得到信号周期数。
[0255]
又一示例性的,若目标电信号的亮相信号为第一信号和第二信号,如图17中的(b)所示,以第一信号(sin)为横坐标,第二信号(cos)为纵坐标,建立坐标系,并在坐标系中标注出目标电信号的值,绘制出圆形,通过计数目标电信号的圆形的圈数,即可确定信号周期数。
[0256]
s206、基于单周期内tmr元件的位置、信号周期数和单位移动距离,确定透镜组在当前时刻的当前位置。
[0257]
具体的,可以参见上文中步骤s1032中的步骤a2的内容。
[0258]
s207、确定透镜组的当前位置与透镜组的目标位置之间的差值。
[0259]
具体的,可以参见上文中步骤s104中的步骤b1的内容。
[0260]
s208、根据透镜组的当前位置与透镜组的目标位置之间的差值,进行pid运算,生成驱动信号。
[0261]
具体的,可以参见上文中步骤s104中的步骤b2的内容。
[0262]
s209、采用驱动信号,驱动音圈电机,以使得透镜组从当前位置调整至目标位置。
[0263]
具体的,可以参见上文中的步骤s105的内容。
[0264]
如图18所示,本技术实施例提供了一种驱动装置,用于执行如图5所示的驱动方法。该驱动装置300包括:获取模块301、确定模块302和驱动模块303。在一些实施例中,该驱动装置300,还包括:放大/滤波模块304。
[0265]
获取模块301,用于获取tmr元件产生目标电信号在第一时刻时的第一参数值;其中,目标电信号是tmr元件在第一时刻与当前时刻之间产生的电信号;第一时刻在当前时刻之前,第一参数值用于表征目标电信号的两相信号之间的比值。
[0266]
确定模块302,用于根据目标电信号的多个第一参数值与目标电信号在单周期的多个角度之间的对应关系,以及目标电信号在第一时刻时的第一参数值,确定目标电信号在第一时刻时的目标角度;其中,第一参数值与角度一一对应。
[0267]
确定模块302,还用于至少基于目标角度,确定透镜组在当前时刻的当前位置;驱动模块,用于基于透镜组的当前位置和透镜组的目标位置,生成驱动信号。
[0268]
驱动模块303,还用于采用驱动信号,驱动音圈电机,以使得透镜组从当前位置调整至目标位置。
[0269]
在一种可能的实现方式中,第一参数值与存储地址一一对应,其中,一个存储地址用于存储一个预设值,预设值与角度一一对应;确定模块302,具体用于根据目标电信号在第一时刻时的第一参数值,确定目标存储地址;从目标存储地址所指示的存储空间中读取目标预设值;其中,目标预设值用于确定目标角度。
[0270]
另一种可能的实现方式中,上述目标电信号的两相信号包括:第一信号和第二信号,第一信号与第二信号之间的相位差为90度;上述第一参数值由第一信号的电压值与第二信号的电压值的比值确定;上述预设值由第一参数值的反正切值确定。
[0271]
另一种可能的实现方式中,确定模块302,还用于根据第一信号在第一时刻时的电压值与第二信号在第一时刻时的电压值之间的正负关系,以及目标预设值,确定目标角度。
[0272]
另一种可能的实现方式中,确定模块302,具体用于获取目标电信号在第一时刻与当前时刻之间的信号周期数,以及单位移动距离;其中,单位移动距离是指一个信号周期内透镜组的移动距离;基于目标角度、信号周期数和单位移动距离,确定透镜组在当前时刻的当前位置。
[0273]
另一种可能的实现方式中,确定模块302,具体用于基于目标角度,确定在单周期内tmr元件的位置;其中,tmr元件包括:tmr磁头和tmr磁条;tmr磁头用于产生磁场,tmr磁条用于切割tmr磁头产生的磁场;tmr元件的位置表示tmr磁头相对于tmr磁条的位置;根据单周期内tmr元件的位置、信号周期数和单位移动距离,确定透镜组在当前时刻的当前位置。
[0274]
另一种可能的实现方式中,驱动模块303,具体用于确定透镜组的当前位置与透镜组的目标位置之间的差值;对透镜组的当前位置与透镜组的目标位置之间的差值,进行比例微分积分pid运算,生成驱动信号。
[0275]
另一种可能的实现方式中,上述驱动装置300还包括:放大/滤波模块304,用于对
目标电信号进行放大处理和滤波处理中的至少一种。
[0276]
在采用硬件的形式实现上述集成的模块的功能的情况下,本技术实施例提供了上述实施例中所涉及的驱动装置的另一种可能的结构示意图。如图19所示,该驱动装置400包括:处理器402,通信接口403,总线404。可选的,该驱动装置还可以包括存储器401。
[0277]
处理器402,可以是实现或执行结合本技术公开内容所描述的各种示例性的逻辑方框,模块和电路。该处理器402可以是中央处理器,通用处理器,数字信号处理器,专用集成电路,现场可编程门阵列或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本技术公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器402也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。
[0278]
通信接口403,用于与其他设备通过通信网络连接。该通信网络可以是以太网,无线接入网,无线局域网(wireless local area networks,wlan)等。
[0279]
存储器401,可以是只读存储器(read-only memory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
[0280]
作为一种可能的实现方式,存储器401可以独立于处理器402存在,存储器401可以通过总线404与处理器402相连接,用于存储指令或者程序代码。处理器402调用并执行存储器401中存储的指令或程序代码时,能够实现本技术实施例提供的驱动方法。
[0281]
另一种可能的实现方式中,存储器401也可以和处理器402集成在一起。
[0282]
总线404,可以是扩展工业标准结构(extended industry standard architecture,eisa)总线等。总线404可以分为地址总线、数据总线、控制总线等。为便于表示,图19中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0283]
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将驱动装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
[0284]
本技术实施例还提供了一种计算机可读存储介质。上述方法实施例中的全部或者部分流程可以由计算机指令来指示相关的硬件完成,该程序可存储于上述计算机可读存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。计算机可读存储介质可以是前述任一实施例的或内存。上述计算机可读存储介质也可以是上述驱动装置的外部存储设备,例如上述驱动装置上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,上述计算机可读存储介质还可以既包括上述驱动装置的内部存储单元也包括外部存储设备。上述计算机可读存储介质用于存储上述计算机程序以及上述驱动装置所需的其他程序和数据。上述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
[0285]
本技术实施例还提供一种计算机程序产品,该计算机产品包含计算机程序,当该
计算机程序产品在计算机上运行时,使得该计算机执行上述实施例中所提供的任一项驱动方法。
[0286]
尽管在此结合各实施例对本技术进行了描述,然而,在实施所要求保护的本技术过程中,本领域技术人员通过查看附图、公开内容、以及所附权利要求书,可理解并实现公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
[0287]
尽管结合具体特征及其实施例对本技术进行了描述,显而易见的,在不脱离本技术的精神和范围的情况下,可对其进行各种修改和组合。相应地,本说明书和附图仅仅是所附权利要求所界定的本技术的示例性说明,且视为已覆盖本技术范围内的任意和所有修改、变化、组合或等同物。显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
[0288]
以上,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何在本技术揭露的技术范围内的变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应该以权利要求的保护范围为准。