CN116708958A - 马达控制方法及电子设备 - Google Patents
马达控制方法及电子设备 Download PDFInfo
- Publication number
- CN116708958A CN116708958A CN202211444629.6A CN202211444629A CN116708958A CN 116708958 A CN116708958 A CN 116708958A CN 202211444629 A CN202211444629 A CN 202211444629A CN 116708958 A CN116708958 A CN 116708958A
- Authority
- CN
- China
- Prior art keywords
- motor
- abnormal sound
- electronic device
- electronic equipment
- acceleration
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 111
- 230000002159 abnormal effect Effects 0.000 claims abstract description 241
- 230000001133 acceleration Effects 0.000 claims description 115
- 238000001514 detection method Methods 0.000 claims description 58
- 230000015654 memory Effects 0.000 claims description 52
- 230000008569 process Effects 0.000 claims description 18
- 230000008859 change Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 12
- 230000006870 function Effects 0.000 description 36
- 238000004891 communication Methods 0.000 description 21
- 238000012545 processing Methods 0.000 description 16
- 238000010295 mobile communication Methods 0.000 description 12
- 238000012360 testing method Methods 0.000 description 9
- 238000004458 analytical method Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 6
- 238000004804 winding Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000036962 time dependent Effects 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000003416 augmentation Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000002035 prolonged effect Effects 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 238000005282 brightening Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000001020 rhythmical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003238 somatosensory effect Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P23/00—Arrangements or methods for the control of AC motors characterised by a control method other than vector control
- H02P23/04—Arrangements or methods for the control of AC motors characterised by a control method other than vector control specially adapted for damping motor oscillations, e.g. for reducing hunting
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P23/00—Arrangements or methods for the control of AC motors characterised by a control method other than vector control
- H02P23/20—Controlling the acceleration or deceleration
Landscapes
- Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Studio Devices (AREA)
Abstract
本申请公开了一种马达控制方法及电子设备,该方法包括:检测电子设备是否晃动,在检测到电子设备晃动的情况下,再判断马达是否处于工作状态,若马达处于工作状态,则控制马达保持该工作状态;若马达处于非工作状态,则控制马达中的动子的位置固定。从而使得马达中的动子不跟随电子设备的晃动而晃动,进而不会产生异响,以及在避免马达异响的同时还能保证马达正常工作,提高用户体验。
Description
技术领域
本申请涉及终端领域,尤其涉及一种马达控制方法及电子设备。
背景技术
如今,大多数电子设备上都会配置有至少一个马达,该马达安装在电子设备的相应模组中。以相机模组中的马达为例,马达的周围设置有镜片等,马达用于和镜片配合使用以实现对焦功能。具体的,该马达中的动子在相机模组中存有一定的活动空间,该活动空间用于相机应用运行时(马达处于工作状态时),能够通过动子振动推动镜片移动,以实现对焦功能。
但是,当相机应用关闭(马达处于非工作状态)时,若电子设备晃动,则动子会随着电子设备的晃动在所述活动空间内振动,从而与相机模组中的周围部件碰撞进而产生异常的响声。
如何解决上述技术问题即避免马达异响,则是亟待解决的问题。
发明内容
本申请公开了一种马达控制方法及电子设备,该方法包括:在检测到电子设备晃动的情况下,判断马达是否处于工作状态,若马达处于工作状态,则控制马达保持该工作状态;若马达处于非工作状态,则控制马达中的动子的位置固定。从而使得马达中的动子不跟随电子设备的晃动而晃动,进而不会产生异响,以及在避免马达异响的同时还能保证马达正常工作,提高用户体验。
第一方面,本申请提供了一种马达控制方法,该方法应用于包含相机模组的电子设备,该相机模组包括马达和镜片;当该马达上电后,该马达中的动子移动时,带动该镜片移动;该方法包括:当该电子设备运行相机应用时,控制该马达上电,使得该马达中的动子固定在第一位置;当检测到该相机应用的焦距改变时,控制该马达中的动子移动至第二位置,该第二位置与该第一位置不同;在该电子设备运行该相机应用的过程中,当检测到该电子设备晃动时,继续通过控制该马达中动子的位置执行该相机应用的对焦业务;当该电子设备停止运行该相机应用后,控制该马达下电;在该电子设备停止运行该相机应用之后,当检测到该电子设备晃动时,控制该马达上电,使得该马达中动子固定在第三位置,该第三位置与该第一位置相同或不同。
实施第一方面提供的方法后,在保障马达正常执行相机应用的对焦业务的前提下,可以通过控制马达中的动子的位置,避免在电子设备晃动时导致马达中动子晃动,进而避免马达产生异响,延长马达使用寿命,提高用户体验。
结合第一方面提供的方法,在该电子设备停止运行该相机应用之后,且在该电子设备控制该马达上电,使得该马达中动子固定在第三位置的过程中,该电子设备处于以下任意一种情况:息屏、显示锁屏界面、显示解锁后的界面,或者显示该相机应用以外的应用的界面。
这样,在电子设备处于多种场景下,都能在检测到电子设备晃动时,通过控制马达的动子位置固定,避免产生异响。
结合第一方面提供的方法,当检测到该电子设备晃动时,该电子设备继续通过控制该马达中动子的位置执行该相机应用的对焦业务,或者,控制该马达上电,使得该马达中动子固定在第三位置,具体包括:该电子设备进行异响场景检测;在检测到该电子设备进入异响场景后,该电子设备判断该马达的当前状态;在确定该马达的当前状态为工作状态时,则控制该马达继续处于该工作状态;在确定该马达的当前状态为非工作状态时,则控制该马达处于消除异响状态;其中,进行异响场景检测指对该电子设备进行晃动检测;检测到进入异响场景指检测到该电子设备晃动;该工作状态包括,该马达上电且通过控制该马达中动子的位置执行该相机应用的对焦业务的状态;该非工作状态包括,该马达下电的状态;该消除异响状态包括,该马达上电且该马达中动子固定在第三位置的状态。
这样,在电子设备检测到进入异响场景时,可以进一步通过判断当前状态,来确定如何控制马达即确定马达的目标状态,进而能够在不影响马达正在执行的工作的前提下,控制马达处于消除异响的状态,进而避免马达产生异响,延长马达使用寿命,提高用户体验。
结合第一方面提供的方法,在该电子设备控制该马达上电,使得该马达中动子固定在第三位置之后,该方法还包括:当未检测到该电子设备晃动时,则控制该马达下电。
这样,在电子设备停止晃动时,马达则不会产生异响,此时控制马达下电,可以避免浪费电子设备的功耗。
结合第一方面提供的方法,当未检测到该电子设备晃动时,则控制该马达下电,具体包括:该电子设备进行异响场景检测;在检测到该电子设备退出异响场景后,该电子设备判断该马达的当前状态;在确定该马达的当前状态为消除异响状态时,则控制该马达处于非工作状态;其中,进行异响场景检测指对该电子设备进行晃动检测;检测到退出异响场景指未检测到该电子设备晃动;该消除异响状态包括,该马达上电且该马达中动子固定在第三位置的状态;该非工作状态包括,该马达上电且通过控制该马达中动子的位置执行该相机应用的对焦业务的状态。
这样,在电子设备检测到退出异响场景时,可以进一步通过判断当前状态,来确定如何控制马达即确定马达的目标状态,进而能够在不影响马达正在执行的工作的前提下,控制马达处于非工作状态即下电状态,进而避免马达产生异响,提高用户体验。
结合第一方面提供的方法,在该电子设备控制该马达上电,使得该马达中动子固定在第三位置之后,该方法还包括:在该相机应用运行时,则通过控制该马达中动子的位置以执行该相机应用的对焦业务;在该相机应用未运行时,则继续控制该马达上电,使得该马达中动子固定在该第三位置。
这样,在电子设备晃动时控制马达的位置固定后,若相机应用运行,则马达仍然可以正常执行相机应用的对焦业务。
结合第一方面提供的方法,在该相机应用运行时,则通过控制该马达中动子的位置以执行该相机应用的对焦业务;在该相机应用未运行时,则继续控制该马达上电,使得该马达中动子固定在该第三位置,具体包括:该电子设备判断是否有该相机应用的业务通知;在有该相机应用的业务通知的情况下,该电子设备则控制该马达处于工作状态;在没有该相机应用的业务通知的情况下,该电子设备根据最后一次异响场景检测结果来控制马达;当该最后一次异响场景检测结果为进入异响场景时,则控制该马达处于消除异响状态;当该最后一次异响场景检测结果为退出异响场景时,则控制该马达处于非工作状态;其中,有该相机应用的业务通知表征该相机应用正在运行;没有该相机应用的业务通知表征该相机应用停止运行;检测结果为进入异响场景指检测到该电子设备晃动;检测结果为退出异响场景指未检测到该电子设备晃动;该工作状态包括,该马达上电且通过控制该马达中动子的位置执行该相机应用的对焦业务的状态;该消除异响状态包括,该马达上电且该马达中动子固定在该第三位置的状态。该非工作状态包括,该马达上电且通过控制该马达中动子的位置执行该相机应用的对焦业务的状态。
这样,电子设备可以实时检测相机应用的业务通知,在有相机应用的业务通知时,及时响应该业务通知,在没有相机应用的业务通知时,则根据异响场景检测结果来控制马达,使得马达在没有相机应用的业务通知,且电子设备进入异响场景时,及时处于消除异响状态,进而避免马达产生异响,提高用户体验。
结合第一方面提供的方法,该电子设备晃动具体包括:该电子设备的晃动程度大于或等于阈值。
这样,可以避免在晃动程度不足以导致马达产生异响时,控制马达处于消除异响状态,节约电子设备的功耗。
结合第一方面提供的方法,该电子设备的晃动程度根据低功耗传感器采集的多个加速度来确定。
这样,可以通过实时检测电子设备的加速度,根据一段内的多个加速度来衡量电子设备的晃动程度,提高本方案的可实施性。
结合第一方面提供的方法,该阈值包括第一阈值和第二阈值,该第一阈值和该第二阈值,通过以下方法确定后预置在该电子设备中:采集第二设备在多个晃动场景下的加速度;对比第一加速度和第二加速度,来确定该第一阈值和该第二阈值;其中,该第一加速度为该第二设备中的马达出现异响的情况下所采集到的加速度,该第二加速度为该第二设备中的马达未出现异响的情况下所采集到的加速度;其中,该第一阈值和该第二阈值满足以下条件:该第一阈值小于或等于,该第一加速度中出现加速度大于第一值的次数,并且,该第一阈值大于,该第二加速度中出现加速度大于该第一值的次数;该第一值为该第一加速度中的峰值和该第二加速度中的峰值的中间值;该第二阈值,小于或等于该第一加速度中的峰值出现的次数,并且,大于该第二加速度中的峰值出现的次数。
这样,可以通过严谨的分析过程,得到更加准确的可能导致马达产生异响的晃动程度的阈值,既可以预先检测到马达可能产生异响,又可以避免在马达不会异响的场景下就控制马达上电节省电子设备功耗。
结合第一方面提供的方法,该阈值包括第一阈值和第二阈值,该第一阈值和该第二阈值,通过以下方法确定后预置在该电子设备中:控制第二设备以第一加速度和第一晃动频次晃动;在该第二设备中的马达没有出现异响的情况下,逐渐增加加速度和晃动频次,控制该第二设备晃动,直至该第二设备中的马达出现异响;根据该第二设备中的马达出现异响时的第二加速度确定第一阈值,根据该第二设备中的马达出现异响时的第二晃动频次确定该第二阈值。
这样,可以通过实测的方式,得到更加精确的可能导致马达产生异响的晃动程度的阈值,既可以预先检测到马达可能产生异响,又可以避免在马达不会异响的场景下就控制马达上电节省电子设备功耗。
第二方面,本申请提供一种电子设备,该电子设备包括马达、存储器、一个或多个处理器;该存储器与该一个或多个处理器耦合,该存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令,该一个或多个处理器调用该计算机指令以使得该电子设备执行如第一方面中任一项所描述的方法。
第三方面,本申请提供了一种芯片,该芯片应用于电子设备,该芯片包括一个或多个处理器,该处理器用于调用计算机指令以使得该电子设备执行如第一方面中任一项所描述的方法。
第四方面,本申请提供了一种计算机可读存储介质,该计算机可读存储介质包括指令,当该指令在电子设备上运行时,使得该电子设备执行如第一方面中任一项所描述的方法。
附图说明
图1为本申请实施例提供的一种马达在相机模组中的结构示意图;
图2为本申请实施例提供的一种电子设备硬件架构图;
图3为本申请实施例提供的一种电子设备软件架构图;
图4为本申请实施例提供的一种马达控制方法流程图;
图5A-图5I为本申请实施例提供的一组电子设备在不同晃动场景下的加速度变化示意图。
具体实施方式
下面将结合附图对本申请实施例中的技术方案进行清楚、详尽地描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;文本中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为暗示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征,在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本申请所描述的实施例可以与其它实施例相结合。
本申请以下实施例中的术语“用户界面(user interface,UI)”,是应用程序或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。用户界面是通过java、可扩展标记语言(extensible markuplanguage,XML)等特定计算机语言编写的源代码,界面源代码在电子设备上经过解析,渲染,最终呈现为用户可以识别的内容。用户界面常用的表现形式是图形用户界面(graphicuser interface,GUI),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的文本、图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。
如今,越来越多的电子设备上都会置有至少一个马达。以手机为例,手机通常会置有振动马达,该振动马达可用于来电振动提示,也可以用于在其他不同的应用场景下产生不同的振动反馈效果,例如时间提醒,接收信息,闹钟,游戏、视频等应用场景。并且随着手机应用功能的升级,相机应用为了提供对焦功能,相应的需要在相机模组上配置马达,该马达例如可以是自动对焦(Auto Focus,AF)马达或者还可以被称为其他名称,其主要作用是为相机应用提供对焦功能,包括自动对焦以及手动对焦等。
接下来,以相机中的马达为例,来简单介绍马达在相机模组中的组成结构。
图1示例性示出马达在相机模组中的结构示意图。
如图1所示,相机模组主要包括:马达、镜片。其中,马达主要包括动子、定子,并且马达周围还包括相机模组中的其他部件,例如壳体等。其中定子为线圈绕组,并且线圈绕组上下分别连接有弹簧片。通常相机模组还会包含图1未示出的感光元件、驱动芯片等等,这里不再一一示出。
当图1中的马达为AF马达时,当相机应用启动时,电子设备会控制马达工作,即电子设备会控制AF马达上电,即向线圈绕组通电,在线圈绕组通电的情况下,通电线圈绕组在磁场中受安培力的影响使得弹簧片运动,进而使得动子在活动空间内振动以推动镜片移动,当镜片移动至不同位置时,电子设备的相机会捕获不同清晰度的图像,电子设备通过相应算法获取到清晰度高于预设值最高的图像所对应的镜头的位置后,控制动子静止,以保持镜头处于该位置,这一过程即AF马达实现自动对焦的过程。
在马达下电的情况下,即在线圈未通电的情况下,则磁场内没有电流,弹簧片和动子不会被安培力控制而振动,但是动子不是固定的,因此会在机身晃动的情况下,在活动空间内晃动,进而与周围的模组例如壳体产生碰撞,进而产生异响。
图1所述的马达结构仅以相机模组中的AF马达为例来示出,在另一些可能的示例中,当马达为振动马达时,其结构具体还可以为其他,但通常都会有一定的活动空间来供动子振动,且活动空间外置有电子设备的其他模组,因此本申请暂不对其他马达的结构进行详细介绍。
通过对图1的分析,可以知道,在马达处于工作状态的情况下,由于电子设备为马达上电,则可以控制马达中的动子处于既定位置,该既定位置是电子设备根据业务需求使得马达处于一个可控的位置,通常情况下马达中的动子不会受到机身晃动的影响而脱离既定位置,进而不会因晃动产生异响。在马达处于非工作状态的情况下,由于电子设备没有为马达上电或者上电电流较小,则无法控制马达中的动子处于既定位置,因此,在电子设备晃动的情况,马达中的动子会受到机身晃动的影响在所述活动空间内晃动,从而与周围的模组碰撞进而产生异常的响声。
为了解决上述技术问题,本申请提供了一种马达控制方法及电子设备,该方法包括:检测电子设备的晃动程度是否大于或等于阈值,在检测到电子设备的晃动程度大于或等于阈值的情况下,再判断马达是否处于工作状态,若马达处于工作状态,则控制马达保持该工作状态;若马达处于非工作状态,则控制马达中的动子的位置固定。从而使得马达中的动子不跟随电子设备的晃动而晃动,进而不会产生异响。
可见,采用本申请提供的马达控制方法及电子设备后,可以带来以下有益效果:
实时检测电子设备是否进入异响场景,在检测到异响场景的情况下,可以控制马达不会跟随电子设备的晃动而晃动,进而不会产生异响,给用户更好的使用体验。并且,实施本申请提供的方法,可以在不影响马达在所处业务中正常工作的情况下,实现消除马达异响的目的,从而保证了用户的业务体验。
在一些实施方式中,电子设备可以采用低功耗传感器来采集电子设备的运动数据,并根据该运动数据判断电子设备的晃动程度大于或等于阈值。具体的低功耗传感器是指挂载在独立于CPU的其他芯片(例如传感集线器(Sensor hub)上的传感器。并且,目前为了实现一些常见的功能,Sensor hub已经控制传感器采集电子设备的运动数据,并通过分析该运动数据来实现这些常见的功能,例如计算运动步数、抬手亮屏等的功能。本申请提供的马达控制方法中所涉及的运动数据可以直接复用现有已经采集到的运动数据实施上述方式后,由于Sensor hub这种低量级的芯片要比CPU这种系统级芯片(System on Chip,SOC)的功耗小,因此采用Sensor hub来控制传感器采集电子设备的运动数据,以及根据运动数据来检测晃动程度,无需唤醒CPU来做检测工作,能够极大的减少电子设备的功耗。以及本申请提供的马达控制方法中所涉及的运动数据可以直接复用现有已经采集到的运动数据,进而无需再次采集运动数据,进一步减少电子设备的功耗。
在一些实施方式中,本申请提供的马达控制方法适用于电子设备中安装的多种马达,包括但不限于振动马达、相机模组中的马达(例如AF马达)等等。
实施上述方式后,可以避免电子设备中配备的多种马达都能避免产生异响。
在本申请涉及的低功耗传感器是指挂载在传感集线器(Sensor hub)上的传感器,由于Sensor hub是独立于CPU的芯片,因此在CPU休眠的情况下,Sensor hub可以自行控制加速度传感器实时采集电子设备的运动数据。也就是说,电子设备无需唤醒CPU来控制传感器工作。
接下来,先介绍本申请涉及的电子设备的形态以及软硬件架构。
电子设备可以是搭载或者其它操作系统的便携式终端设备,例如手机、平板电脑、桌面型计算机、膝上型计算机、手持计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmented reality,AR)设备、虚拟现实(virtual reality,VR)设备、人工智能(artificial intelligence,AI)设备、可穿戴式设备、车载设备、智能家居设备和/或智慧城市设备,等等。
图2示出了电子设备100的硬件结构示意图。
如图2所示,电子设备100可以包括:处理器110,外部存储器接口120,内部存储器130,显示屏140,摄像头150,传感器模块160、马达170、移动通信模块180,无线通信模块190。其中,传感器模块包括但不限于:加速度传感器160A、陀螺仪传感器160B等等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图2所示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图2所示的部件可以以硬件,软件或软件和硬件的组合实现。例如,电子设备100还可以包括图2未示出的音频模块,如扬声器、受话器、麦克风、耳机接口,按键,指示器、以及用户标识模块(subscriber identificationmodule,SIM)卡接口等。其中传感器模块160还可以包括压力传感器,气压传感器,磁传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I5C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
在本申请实施例中,处理器110可用于接收到传感器模块160中Sensorhub发送的电子设备的晃动程度的检测结果(后文也可称为异响场景的检测结果),使得处理器110根据检测结果以及马达的当前状态来确定如何控制马达,控制方式具体包括:
此外,处理器110可用于在接收到应用或服务模块发起的业务通知后,根据具体的业务通知以及马达当前状态来确定如何控制马达响应对应业务,控制方式具体包括:
关于处理器110在接收到异响场景的检测结果后,根据调用马达的业务开启与否以及当前马达的运行状态,确定马达的目标状态的具体实现方法可以参考后文的方法实施例的描述,在此暂不赘述。
内部存储器130可以包括一个或多个随机存取存储器(random access memory,RAM)和一个或多个非易失性存储器(non-volatile memory,NVM)。
随机存取存储器可以包括静态随机存储器(static random-access memory,SRAM)、动态随机存储器(dynamic random access memory,DRAM)、同步动态随机存储器(synchronous dynamic random access memory,SDRAM)、双倍资料率同步动态随机存取存储器(double data rate synchronous dynamic random access memory,DDR SDRAM,例如第五代DDR SDRAM一般称为DDR5 SDRAM)等;
非易失性存储器可以包括磁盘存储器件、快闪存储器(flash memory)。
快闪存储器按照运作原理划分可以包括NOR FLASH、NAND FLASH、3D NAND FLASH等,按照存储单元电位阶数划分可以包括单阶存储单元(single-level cell,SLC)、多阶存储单元(multi-level cell,MLC)、三阶储存单元(triple-level cell,TLC)、四阶储存单元(quad-level cell,QLC)等,按照存储规范划分可以包括通用闪存存储(英文:universalflash storage,UFS)、嵌入式多媒体存储卡(embedded multi media Card,eMMC)等。
随机存取存储器可以由处理器110直接进行读写,可以用于存储操作系统或其他正在运行中的程序的可执行程序(例如机器指令),还可以用于存储用户及应用程序的数据等。
非易失性存储器也可以存储可执行程序和存储用户及应用程序的数据等,可以提前加载到随机存取存储器中,用于处理器110直接进行读写。
外部存储器接口120可以用于连接外部的非易失性存储器,实现扩展电子设备100的存储能力。外部的非易失性存储器通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部的非易失性存储器中。
在本申请实施例中,上述存储器可存储有,用于确定马达目标状态的真值表。
具体的,在处理器110接收到马达异响场景的检测结果后,结合当前马达的运行状态,可以从存储器中预存的真值表中查询到目标状态,并控制马达处于该目标状态。关于该真值表的内容具体可以参见下文的表1。关于对表1的具体应用方法还可以参考后文的方法流程处S401-S408的描述。
具体的,在处理器110接收到上层应用或者服务模块发起的业务通知后,结合马达异响场景的检测结果,可以从存储器中预存的真值表中查询到目标状态并控制马达处于该目标状态。关于该真值表的内容具体可以参见下文的表2。关于对表2的具体应用方法还可以参考后文的方法流程处S409-S411的描述。
表1为真值表的一种实现方式。表1示出的真值表反映了马达在不同状态下,以及,电子设备100接收到不同的异响场景检测结果时,分别对应的目标状态。
表1
如表1所示,马达目标状态或当前状态都至少包括三种状态,即工作状态(记作Normal)、非工作状态(记作Close)、消除异响状态(记作Shake)。异响场景检测结果则包括两种:进入/处于异响场景(记作Shake enable),退出/未处于异响场景(记作Shakedisable)。
其中,工作状态是指,电子设备控制马达上电,并且控制马达根据具体的业务通知执行相应的操作,当具体的业务通知不同时,马达所执行的相应的操作也不同。也就是说,只要马达处于工作状态,则马达上电并为应用或者服务模块提供相应的服务,其中马达所提供的服务视具体的业务通知而定。当业务通知为相机应用发起时,该业务通知可以是相机应用的对焦业务,通常对焦业务包括两种,第一种是指,在相机应用启动后刚开始运行的阶段,相机应用发起的对焦业务为对焦到默认的固定焦距处,这种情况下马达处于工作状态具体包括:AF马达上电后,AF马达中的动子直接移动至默认位置(还可以称为第一位置)处,使得相机模组中的镜片处于默认的固定焦距处。第二种是指,在相机应用运行过程中,若开启自动对焦功能,相机应用发起的对焦业务为进入自动对焦模式,这种情况下马达处于工作状态具体包括:AF马达上电后,AF马达中的动子通过振动以推动相机模组中的镜头移动,以获取不同位置处的镜头所采集的图像,在确定出图像清晰度高于预设值时镜头所在焦距后所对应的镜头的位置(还可以称为第二位置)后,控制动子停止振动并将镜头固定在该焦距处。
其中,非工作状态是指,电子设备控制马达下电,马达中的动子所处的位置不受控,其会根据外界因素,例如机身的晃动而晃动,进而产生异响。例如,在相机应用拍摄的场景中,当相机应用发起的业务通知为退出自动对焦模式时,则AF马达处于非工作状态具体包括:将AF马达中的动子恢复默认到默认的位置后,控制AF马达下电,或者在AF马达的动子处于成功对焦后的位置处,直接控制AF马达下电。
其中,消除异响状态是指,电子设备在检测到马达进入异响场景并且马达当前状态不是工作状态时,控制马达上电,并且使得马达中的动子的位置固定的一种状态。例如,在相机应用未启动,AF马达处非工作状态的场景中,当异响场景检测结果指示马达进入异响场景时,则AF马达处于消除异响状态具体包括:AF马达上电后,AF马达中的动子处于固定位置,该固定位置可以被称为第三位置,具体可以是动作所在活动空间中的任意位置处,使得该动子不会随机身晃动而晃动,进而不会产生异响。
可见,工作状态和消除异响状态虽然都是指马达上电,但两者在马达上电后马达的具体状态不同,具体的,工作状态是指由于上层应用或者服务发起的业务通知,从而控制马达上电,使得马达中的动子处于既定位置,进而执行业务通知所指示的事件。然而消除异响状态是指,由于接收到进入异响场景的通知,从而控制马达上电,使得马达中的动子的位置固定,避免马达晃动产生异响。
继续参见表1,在不同的异响场景检测结果下,处理器110控制马达的规则如下:
(1)在进入或处于异响场景时,若当前马达处于工作状态,则控制马达保持该工作状态;若马达处于非工作状态,则控制马达中的动子的位置固定;若马达中的动子的位置固定,则继续控制马达中的动子的位置固定。
(2)在退出或未处于异响场景时,若当前马达处于工作状态,则控制马达继续处于工作状态;若马达处于非工作状态,则继续控制马达处于非工作状态;若马达中的动子的位置固定,则控制马达切换为非工作状态。从而使得马达在退出异响场景后,可以继续正常工作,不会影响电子设备的正常业务。
表2为真值表的一种实现方式。表2示出的真值表反映了不同异响场景检测结果下,以及,电子设备100接收到不同的业务通知时,分别对应的目标状态。
表2
如表2所示,业务通知包括:进入业务场景的通知(记作Normalenable)、退出业务场景的通知(记作Normaldisable)。其中,进入/退出业务场景的通知可能包含具体的业务类型等,本申请实施例对此不作限制。
继续参见表2,从表2中记载的内容来确定的目标状态的规则具体如下:
(1)在接收到进入业务场景的通知后,无论最新接收到的异响场景检测结果指示马达处于/未处于异响场景,目标状态都为工作状态。从而使得马达可以正常执行业务通知对应的操作,保证用户的正常使用体验。
(2)在接收到退出业务场景的通知后,若最新接收到的异响场景检测结果指示马达处于异响场景,则目标状态为消除异响状态;若最新接收到的异响场景检测结果指示马达未处于异响场景,则目标状态为非工作状态。
在一种可实施的方式中,表1和表2所述的内容具体可以存储在一张表中,也可以分别存储在两张表中,本申请实施例对此不作限制。
电子设备100通过GPU,显示屏140,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏140和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏140用于显示图像,视频等。显示屏140包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD)。显示屏面板还可以采用有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode,AMOLED),柔性发光二极管(flexlight-emitting diode,FLED),miniled,microLed,micro-oled,量子点发光二极管(quantum dot light emitting diodes,QLED)等制造。在一些实施例中,电子设备100可以包括1个或N个显示屏140,N为大于1的正整数。
电子设备100可以通过ISP,摄像头150,视频编解码器,GPU,显示屏140以及应用处理器等实现拍摄功能。
ISP用于处理摄像头150反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头150中。
摄像头150用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头150,N为大于1的正整数。
当摄像头150为长焦摄像头时,长焦摄像头还可以与AF马达配合工作以实现自动对焦功能,关于长焦摄像头(相当于图1中的镜片)和AF马达的组成结构可以参考前文对图1的示例性描述,在此暂不赘述。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
传感器模组160包括Sensorhub,挂载在Sensorhub中的传感器,以及挂载在CPU中的传感器等等。其中挂载在Sensorhub中的传感器例如可以有加速度传感器160A等。
加速度传感器160A可检测电子设备100在各个方向上(一般为三轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。
陀螺仪传感器160B可以用于确定电子设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器160B确定电子设备100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器160B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器160B检测电子设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备100的抖动,实现防抖。陀螺仪传感器160B还可以用于导航,体感游戏场景。
在本申请实施例中,Sensor hub相当于微程序控制器(Microprogrammed ControlUnit,MCU),该MCU上可以运行多个传感器驱动程序,用于连接并处理来自各种传感器设备的数据,实现对传感器的集中控制,以减少中央处理器(Central Processing Unit,CPU)的负荷。
可以理解的是,Sensorhub这一名称仅为示例,其本质为MCU,其作用已详细记载在下文,本申请对Sensorhub这一名称不作限制。
接下里,具体介绍Sensor hub包括的两个基本功能:
(1)Sensor hub控制传感器采集数据。
Sensor hub可以支持挂载传感器,包括但不限于加速度传感器。也就是说,Sensorhub中运行有控制加速度传感器工作的驱动程序。由于Sensor hub是独立于CPU的芯片,因此在CPU休眠的情况下,Sensor hub仍然可以自行控制加速度传感器实时采集电子设备的运动数据。并且,Sensor hub这种低量级的芯片要比CPU这种系统级芯片(System on Chip,SOC)的功耗小,因此采用Sensor hub来控制传感器工作能够极大的减少电子设备的功耗。
(2)Sensor hub接收并处理传感器采集到的数据。
Sensor hub可以接收挂载其上的传感器所采集的数据,包括但不限于加速度传感器采集的电子设备的运动数据。之后,Sensor hub中的算法模块可以根据需要,将不同传感器的数据进行融合,以实现多种传感器数据结合才能实现的功能,例如,Sensorhub Motion模块根据加速度传感器和陀螺仪传感器分别采集电子设备的运动数据进行融合后实现晃动场景检测功能。或者Sensor hub中的算法模块根据需要,只根据一种传感器数据来实现对应功能。例如,Sensorhub Motion模块根据加速度传感器采集电子设备的运动数据实现晃动场景检测功能。
值得注意的是,Sensor hub基于介绍到的电子设备的运动数据后,可以自行检测晃动场景,无需上报CPU中的应用处理器(AP)由CPU去做判断。在Sensor hub检测到晃动场景的情况下,则Sensor hub才会通过核间通信的方式,将晃动场景发送至CPU中,由CPU进一步结合马达所处的业务来确定马达的目标状态,并控制马达处于该目标状态,从而使得处于目标状态下的马达不会跟随电子设备的晃动而晃动,进而不会产生异响。
其中,Sensor hub所具备的上述第一种功能,是目前大多数电子设备已经具有的功能,即大多数电子设备需要通过加速度传感器实时采集到的电子设备的运动数据,用以实现一些常见的功能,如实现屏幕的自动翻转功能,如在游戏场景中通过转动电子设备控制游戏中的人物或者物体跟随手机转动方向运动等等。
Sensor hub所具备的上述第二种功能,是为了实现本申请提供的马达控制方法所新增的功能,该新增的功能所需要的运动数据即目前电子设备为了实现其他常见功能已经实时采集的到的运动数据,也就是说,Sensor hub控制加速度传感器采集到的数据可以被复用到不同的算法模块中,用于实现不同的功能。可见本申请提供的马达控制方法中所涉及的采集电子设备运动数据可以直接复用现有已经采集到的运动数据,进而无需再次采集运动数据,减少电子设备的功耗。
马达170可以包括一个或多个,例如可以包括相机模组中的马达如AF马达,以及产生振动提示的振动马达等。关于AF马达的结构及工作原理可以参考前文的描述,在此暂不赘述。振动马达可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏140不同区域的触摸操作,马达170也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
可见,当马达的类型不同时,马达所处的工作状态具体不同。具体的,以AF马达为例,在电子设备的相机应用或者相机服务模块发起业务通知,例如该业务通知是进入自动对焦模式时,则控制AF马达处于工作状态具体是指控制AF马达上电并通过振动实现相机的自动对焦功能。以振动马达为例,在电子设备的短信、电话应用或者通知服务模块发起业务通知,例如该业务通知是进入播放提示音模式时,则控制振动马达处于工作状态具体是指控制振动马达上电并通过振动输出相应的提示音。
此外,在电子设备的马达为同一类型时,由于具体的业务通知不同,控制马达所处的工作状态具体也可以不同。以振动马达为例,当具体的业务通知为输出短信提示音时,则控制振动马达处于工作状态具体是指控制马达上电并且以较小的强度振动以输出较小的提示音;当具体的业务通知为输出来电提示音时,则控制振动马达处于工作状态具体是指控制马达上电并且以较大的强度以及特定的频率来振动以输出较大且有节奏感的提示音。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块180,无线通信模块190,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块180可以提供应用在电子设备100上的包括5G/3G/4G/5G等无线通信的解决方案。移动通信模块180可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块180可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块180还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块180的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块180的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏140显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块180或其他功能模块设置在同一个器件中。
无线通信模块190可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块190可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块190经由天线2接收电磁波,将电磁波信号解调以及滤波处理,将处理后的信号发送到处理器110。无线通信模块190还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备100的天线1和移动通信模块180耦合,天线2和无线通信模块190耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备100的软件结构。
下面结合图3示例性示出的一种电子设备的软件架构,来介绍本申请提供的一种马达控制方法。
如图3所示,该软件架构包括应用程序层、应用程序框架层、硬件抽象层(HardwareAbstraction Layer,HAL)、内核层。
其中,应用程序中的相机应用(Camera app),应用程序框架层中的相机服务(Camera service),HAL层中的Cameraprovider,内核层中的Camera Driver等运行在电子设备中的CPU中。而应用程序框架层中的传感器服务(Sensor service)、内核层中的Sensorhubmotion则运行在电子设备的中的Sensor hub上。关于Sensor hub的介绍可以具体参考前文的描述,在此暂不赘述。
Camera app可以根据用户操作,执行对应的任务,具体的,若用户启用相机应用并且开启自动对焦功能,则Camera app可以通过Camera service、Cameraprovider向CameraDriver下发拍摄指令、自动对焦指令等,使得Camera Driver控制摄像头采集图像,以及控制AF马达实现自动对焦功能。
在本申请实施例中,Cameraprovider是在电子设备开机即系统启动后,会自启动的一个独立的进程。Cameraprovider可以通过核间通信的方式通过Sensor service向Sensor hubmotion发送检测异响场景的命令,以及还会通过核间通信的方式接收到Sensorservice返回的Sensor hubmotion检测到的结果。
在Cameraprovider接收到电子设备进入异响场景的结果后,则Cameraprovider还会向上层的Camera service获取当前Camera的业务,根据当前Camera的业务确定AF马达的目标状态,进而避免AF马达发生异响。
关于,Sensor hubmotion检测异响场景的具体实现方法、以及Cameraprovider确定AF马达的目标状态的具体实现方法可以参考方法流程的详细描述,在此暂不赘述。
可以理解的是,图3所示的电子设备的100的软件架构仅为示例,可选的电子设备100的软件架构还可以包括以下未示出的模块:
应用程序层可以包括一系列应用程序包,例如还可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。例如还可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
内核层是硬件和HAL之间的层。内核层例如还可以包含显示驱动,音频驱动。
接下来结合图4所示的方法流程,来详细介绍本申请提供的马达控制方法。
如图4所示,该方法流程包括以下步骤:
阶段一(S401):预处理,即获取电子设备进入异响场景所具备的条件,并将该条件预置在电子设备中。
S401,在电子设备的Sensor hub motion中预置异响场景对应的条件。
具体的,异响场景对应的条件可以由开发人员将其预置在电子设备中,例如预置在电子设备的Sensor hub motion模块中。该条件用于后续Sensor hub motion模块根据电子设备的运动数据来来判断是否符合异响场景对应的条件,若是,则认为电子设备进入或处于异响场景,否则,认为电子设备未进入或未处于异响场景以及是否退出异响场景。
通过前文分析可知,马达发生异响是在电子设备处于晃动场景下而导致的。然而在日常生活中,电子设备的晃动场景有很多,一些晃动场景可能不会导致马达异响,一些晃动场景却会导致马达异响。因此,开发人员可以通过多次模拟电子设备处于不同晃动场景的实验,测得导致马达出现异响几率较高的晃动场景,并采集马达出现异响几率较高的晃动场景下的电子设备的运动数据,通过分析这些运动数据的特征以得到异响场景对应的条件。
接下来,介绍开发人员通过大量实验获取异响场景对应的条件的具体方法。
1、首先,采集各种晃动场景(包括导致异响的快速晃动场景、不会导致异响的其他晃动场景)下电子设备的运动数据。
晃动场景可以包括但不限于:手持电子设备快速摇晃、手持电子设备慢速摇晃、手持电子设备快跑下楼、手持电子设备慢跑下楼、手持电子设备走下楼、将电子设备置于口袋中跑步、将电子设备置于口袋中走步、将电子设备放置桌面以及将电子设备从桌面拿起等。
在开发人员采集不同晃动场景下的电子设备的运动数据的过程中,还可以测试电子设备处于哪种晃动场景下马达会异响。
在一种可能实施的方式中,开发人员可以以AF马达是否发生异响为测试目标,通过多次模拟电子设备处于上述不同晃动场景下来测试AF马达是否发生异响。
在另一种可能实施的方式中,开发人员可以以振动马达是否发生异响为测试目标,通过多次模拟电子设备处于上述不同晃动场景下来测试振动马达是否发生异响。
在测试结果表明马达出现异响几率较高的晃动场景为手持电子设备快速摇晃,而其他晃动场景下马达出现异响几率较低或者不会出现异响的情况下,则接下来通过分析马达出现异响几率较高的晃动场景下的电子设备的运动数据,以确定异响场景对应的条件。
可以理解的是,针对不同的电子设备,或者不同类型的马达,测试得到的导致马达异响的结果可能不同,本申请对测试所得的结果不作限制,具体取决于测试对象,例如电子设备以及马达等。
示例性的,电子设备的运动数据可以是通过加速度传感器采集的加速度,或者还可以包括更多其他传感器采集的数据,本申请实施例对此不作限制。
本申请实施例仅以电子设备的加速度这一运动数据为例,来介绍电子设备在不同晃动场景下的加速度所具备的特征。具体的,通过采用工作频率为100Hz的加速度传感器在不同晃动场景下连续采集电子设备的加速度,并基于采集到的数据绘制而成处不同晃动场景下的加速变化曲线。具体可以参考下文对图5A-图5I的描述。
参考图5A-图5I,图5A-图5I示例性示出一组电子设备在不同晃动场景下的加速度变化曲线示意图。
如图5A所示,图5A示例性示出了在手持电子设备快速摇晃的场景下,电子设备分别在x、y、z三个方向上产生的加速度随时间变化的曲线。
类似的,图5B、图5C、图5D、图5E、图5F、图5G、图5H以及图5I示例性示出了在手持电子设备慢速手摇、手持电子设备快跑下楼、手持电子设备慢跑下楼、手持电子设备走下楼、将电子设备置于口袋中跑步、将电子设备置于口袋中走步、将电子设备放置桌面以及将电子设备从桌面拿起的场景下,电子设备分别在x、y、z三个方向上产生的加速度随时间变化的曲线。
图5A-图5I中示出的x方向为平行于电子设备短边屏幕的方向,y方向为平行于电子设备的长边屏幕的方向,z方向为垂直电子设备屏幕的方向。其中,横轴为时间,单位为秒,纵轴为对应方向上的加速度,单位为g*m/s^2,其中g为重力加速度,其值为9.8。
可以理解的是,图5A-图5I所示出的电子设备在不同晃动场景下的加速度变化曲线仅为示例,对于不同的电子设备,或者不同的加速度传感器来说,采集到电子设备在不同晃动场景下的加速变可能不同,进而绘制的曲线略有不同,本申请实施例对此不作限制。
2、最后,对比分析出现异响几率较高的晃动场景下以及其他未出现异响或者出现异响几率较低的晃动场景下的电子设备的运动数据所表征的晃动程度,确定出可能出现马达异响时电子设备的晃动程度所满足的条件。
具体的,通过分析出现异响的几率较高晃动场景下电子设备的晃动程度需要大于第一值,通过分析其他未出现异响或者出现异响几率较低的晃动场景下电子设备的晃动程度需要小于第二值,将第一值与第二值之间的某一值作为,马达处于异响场景下电子设备的晃动程度所满足的条件,该条件即晃动程度需要大于或者等于第一值与第二值之间的某一值(也称阈值)。
通过前述方法确定出阈值并基于此阈值来检测异响场景,可以使得电子设备能够预先检测到可能出现异响的情况,及时实施相应的消除异响的措施,进而有效避免异响情况的发生。也就是说,本申请所涉及的检测到的异响场景包括:异响还未发生但接下来极有可能发生的情况。在一种可能实现的方式中,用于表征晃动程度的数值可以有两种,第一种数值是指通过分析一段时长内的加速度变化情况,确定出加速度大于特定值的次数;第二种数值是指通过分析一段时长内的加速度变化情况,确定出加速度的波峰或者波谷所出现的次数,加速度的波峰出现或者波谷出现的次数即电子设备的晃动次数。
相应的,用于表征晃动程度的数值可以有两种时,则最终确定的可能出现马达异响时电子设备的晃动程度所满足大于或等于的阈值也包括两个阈值,可以分别称为第一阈值和第二阈值。
接下来,结合前文图5A-图5I所示出几种晃动场景下的电子设备的加速度变化情况,来举例说明第一阈值和第二阈值的确定方法。
在本申请实施例中,电子设备可以将x、y、z方向中任意一个方向上的加速度的特征作为分析对象,或者任意多个方向上合成加速度的特征作为分析对象,来确定出手持电子设备快速摇晃的场景(即异响场景)所具备的独有的特征,以作为异响场景所具备的条件,具体可以参考马达中的动子在活动空间中的主要振动方向。
以AF马达为例,AF马达的作用是使得动子沿着z方向振动来推动长焦镜头在垂直电子设备屏幕的方向(z方向)上移动以达到自动对焦的目的,可见,AF马达中的动子的活动空间主要在z方向上,因此接下来主要通过分析z方向上的加速度的特征,来确定出异响场景所具备的独有的特征,具体如下:
对比分析图5A中z方向上的加速度随时间的变化曲线,与,图5B-图5I中z方向上的加速度随时间的变化曲线可以知道:
在手持电子设备快速摇晃的场景下,电子设备在z方向上的加速度随时间的变化曲线具有稳定的特征,例如在每2s内的加速度变化曲线中,加速度的幅值大于特定值(例如40g)的次数要远大于20次,并且加速度出现波峰或者波谷的次数大于或等于20次。
也就是说,在晃动程度用晃动幅值大于特定值的次数和晃动频次(固定时长内波峰或波谷出现的次数)来表征的话,图5A所示的加速度变化曲线中,即的晃动程度大于第一值,包括加速度幅值大于特定值的次数大于第三值、晃动频次大于第四值。
在除了手持电子设备快速摇晃之外的其他场景下,电子设备在z方向上的加速度随时间的变化曲线不具备稳定的特征,例如在每2s内的加速度变化曲线中,加速度的幅值大于特定值(例如40g)的次数不固定,并且要小于15次,并且加速度出现波峰或者波谷的次数小于10次。
也就是说,在晃动程度用晃动幅值大于特定值的次数和晃动频次(固定时长内波峰或波谷出现的次数)来表征的话,图5B-图5I所示的加速度变化曲线中,晃动程度小于第二值,包括加速度幅值大于特定值的次数小于第五值、晃动频次小于第六值。
在本申请实施例中,用于开发人员进行上述测试的电子设备还可以称为第二设备。
上述仅仅介绍一种获取晃动程度的阈值的方法,在另一种可实现的方式中,开发人员还可以通过以下方式来获取阈值:
控制第二设备以第一加速度和第一晃动频次晃动。具体的,在一定时长内,该第一加速度是一组连续变化的加速度,该晃动频次是指在该一定时长内,加速的波峰或波谷出现的次数。
在前一次的晃动过程中,若第二设备中的马达没有出现异响的情况下,则逐渐增加加速度和晃动频次,控制第二设备晃动,直至第二设备中的马达出现异响;
根据第二设备中的马达出现异响时的第二加速度确定第一阈值,根据第二设备中的马达出现异响时的第二晃动频次确定第二阈值。
综上所述,为了保证能预先检测到可能出现异响的场景,因此将晃动程度所满足的调节定位至介于第一值和第二值之间,包括:将加速度幅值大于特定值的次数定为第三值和第五值之间,称作第一阈值,将晃动频次定位到第四值和第六值之间,称作第二阈值。其中特定值是指小于图5A中的波峰处加速度的幅值,且大于图5B-图5I中的波峰处加速度的幅值。
本申请实施例对上述第一值至第六值、以及各个阈值的具体数值不作限制。仅仅在采用工作频率为100Hz的加速度传感器采集电子设备的加速度的情况下,可以将2s的数据滑动窗口为基准,即通过检测2s内的200组加速度,确定出特定值为40g,第一阈值可以是16次,第二阈值可以是11次。
在本申请提供的马达控制方法中,前述阶段一通常在电子设备出厂前,由开发人员来执行,后文提及的阶段二以及阶段三是在电子设备出厂后,电子设备开机后所执行的。
阶段二(S402-S405):实时检测电子设备是否进入、退出异响场景。
S402:电子设备的Cameraprovider向Sensor hub motion发送检测异响场景的指令。
具体的,在电子设备开机之后,电子设备中的各个服务模块开始启动,包括cameraprovider。关于camera provider的具体描述还可以参考前文软件架构的描述,在此暂不赘述。camera provider在电子设备开机后,可以自启动一个独立的进程,具体的,cameraprovider可以通过核间通信的方式向sensorservice发送检测异响场景的指令,然后sensorservice再下向Sensor hub motion下发检测异响场景的指令。
优选的,在电子设备开机后,电子设备自启动的camera provider这一进程为常驻进程,该常驻进程可以实现,实时响应异响场景的检测结果,以便在电子设备进入异响场景时,及时作出相应的响应措施,例如控制马达处于消除异响状态。
在本申请实施例中,在电子设备开机后,无论电子设备处于息屏、显示锁屏界面、显示解锁后的界面,或是显示应用的界面时,电子设备的camera provider都可以控制响应的模块进行异响场景检测,并根据检测结果作出相应的响应措施。
可选的,上述Sensor hub motion仅为示例,电子设备的Cameraprovider还可以向其他控制低功耗马达的模块发送检测异响场景的指令,本申请对此不作限制。
S403:电子设备的Sensor hub motion向传感器发送用于采集电子设备的运动数据的指令。
具体的,在一种可实现的方式中,当Sensor hub motion接收到检测异响场景的指令后,则会控制相应的传感器采集电子设备的运动数据,在另一种可实现的方式中,Sensorhub motion接收到检测异响场景的指令后,则可以直接从sensorhub中的其他模块处获取所需的运动数据,这些运动数据是sensorhub在运行其他业务时,已经控制传感器采集而得到的。例如,电子设备开机后,sensorhub自动运行抬手亮屏、计算运动步数的等业务时,sensorhub中的相应模块则会控制加速度传感器等来采集电子设备的加速度。本申请实施例仅以加速度传感器采集电子设备的加速度为例进行介绍,在另一种可能实现的方式中,Sensor hub motion还可以控制更多的传感器来采集其他不同的电子设备的运动数据,例如控制陀螺仪传感采集电子设备的角速度,用于确定电子设备的运动姿态,本申请实施例对电子设备的运动数据的类型不作限制。
S404:电子设备的传感器向Sensor hub motion周期性上报所采集到的电子设备的运动数据。
具体的,本申请实施例中的传感器具体为工作频率为100Hz的加速度传感器,该加速度传感器可以周期性的向Sensor hub motion上报所采集到的电子设备的加速度,该周期例如可以是2s也可以是其他,本申请对此不作限制。也就是说,加速度传感器每2s会向Sensor hub motion发送一组数据,用于后续Sensor hub motion检测电子设备是否进入异响场景。
S405:电子设备的Sensor hub motion根据运动数据判断是否符合异响场景对应的条件。
具体的,电子设备的Sensor hub motion在每接收到一组电子设备的运动数据后,都会根据预置的异响场景对应的条件,来判断是否符合来检测异响场景对应的条件,即判断电子设备是否处于异响场景中。
结合前文S401中描述的异响场景所具备的条件来看,当Sensor hub motion从本次接收到的2s内一组加速度数据后,将该组数据与预存的符合异响场景的数据进行对比,来判断电子设备是否处于异响场景。在一个具体实施方式中,可以通过接收到的该组数据绘制一条z方向上的加速度随时间的变化曲线,来判断有该组数据所表征的晃动程度是否大于或等于预存的阈值,包括加速度大于特定值的次数是否大于第一阈值,以及晃动频次是否大于第二阈值,只有在满足上述两个条件的情况下,Sensor hub motion则认为检测到电子设备处于/进入异响场景,否则认为当前电子设备未处于/退出异响场景。
可以理解的是,Sensor hub motion执行S404中的异响场景检测是在每次接受到传感器上报的数据都会执行的,这样才能达到实时检测异响场景的目的。
可选的,Sensor hub motion在每检测完一组电子设备的运动数据后,会将已检测过的数据清除,从而减轻Sensor hub的存储压力。
可见,本申请提供的Sensor hub可以获取到电子设备的运动数据,并根据该运动数据以及结合预置的异响场景所具备的条件,来直接判断当前电子设备是否进入异响场景,无需将获取到的运动数据上报至CPU或者上报至CPU中的AP去判断,从而避免在没有检测到异响场景的情况下唤醒CPU,进而达到节省电子设备功耗的目的。
阶段三(S406-S409):在检测到异响场景的情况下,控制马达避免发生异响。
S406:电子设备的Sensor hub motion向Cameraprovider返回异响场景的检测结果。
在一种可实现的方式中,Sensor hub motion只有在检测结果发生切换的情况下,才会向Camera provider返回异响场景检测结果。该异响场景检测结果包括前文表1示出的,Shake enable(进入异响场景),和Shake disable(退出异响场景)。
例如,在Sensor hub motion根据前一组(如0-2s内)数据检测到电子设备未进入异响场景的情况下,若根据当前的一组(如2-4s内)数据检测到电子设备进入异响场景,则会向Camera provider返回异响场景检测结果。又例如,在Sensor hub motion根据前一组(如2-4s内)数据检测到电子设备进入异响场景的情况下,若根据当前的一组(如4-6s内)数据检测到电子设备仍然进入异响场景,则不会向Camera provider返回异响场景的检测结果。
在另一种可能实现的方式中,Sensor hub motion可以将每次异响场景检测得到的结果返回至Camera provider中。包括:检测到当前电子设备进入异响场景,以及未进入异响场景。
在另一种可能实现的方式中,Sensor hub motion可以将每次检测到电子设备进入异响场景的结果返回至Camera provider,而不会返回检测到电子设备未进入异响场景的检测结果。
S407:电子设备的Cameraprovider根据异响场景检测结果以及马达当前状态来确定马达的目标状态。
具体的,电子设备的Camera provider中预置有用于确定马达目标状态的真值表,具体可见前文表1的描述,在电子设备的Camera provider接收到异响场景检测结果,可以结合马达当前状态从预存的真值表中查询马达的目标状态。
从表1示出的内容可以知道,Camera provider确定马达目标状态的具体规则包括:
(1)在接收到的检测结果为晃动程度大于或等于阈值(也可称为电子设备进入或处于异响场景)时,
若马达的当前状态为工作状态,目标状态为工作状态;
若马达的当前状态非工作状态,则目标状态为消除异响状态,即马达中的动子的位置固定的状态;
若马达的当前状态为消除异响状态,则目标状态为消除异响状态。
(2)在接收到的检测结果为晃动程度小于阈值(也可称为电子设备退出或未处于异响场景)时,
若马达的当前状态为工作状态,目标状态为工作状态;
若马达的当前状态非工作状态,则目标状态为非工作状态;
若马达的当前状态为消除异响状态,则目标状态为非工作状态。
S408:电子设备的Cameraprovider控制AF马达处于目标状态。
在一种实现方式中,电子设备的Cameraprovider可以通过内核层的Camera驱动来控制硬件层中Camera模组中的AF马达,进而使其处于目标状态。
当目标状态为工作状态时,则电子设备的Cameraprovider可以通过内核层的Camera驱动来控制硬件层中Camera模组中的AF马达上电,使得马达中的动子处于既定位置,进而执行业务通知所指示的事件。这里的业务通知是指上层应用或者服务发起的业务通知,例如上层相机应用通过Cameraservice向Cameraprovider发送的业务通知,具体可以为进入自动对焦的业务通知。
当目标状态为非工作状态时,则电子设备的Cameraprovider可以通过内核层的Camera驱动来控制硬件层中Camera模组中的AF马达下电,使得马达中的动子所处的位置不受控制。
当目标状态为消除异响状态时,则电子设备的Cameraprovider可以通过内核层的Camera驱动来控制硬件层中Camera模组中的AF马达上电,并且使得AF马达中的动子的位置固定。本申请对该固定的位置不作限制。例如,如图1所示,控制AF马达中的动子的位置固定可以是控制动子处于活动空间中的最低端、最顶端或者中间等任意位置。在电子设备控制马达处于消除异响状态时,电子设备可以处于以下任意一种情况:息屏、显示锁屏界面、显示解锁后的界面,显示相机应用以外的应用的界面。
可以理解的是,上述S401-S408仅介绍了控制AF马达的方法,当控制其他类型的马达例如振动马达时,其控制方法类似,区别仅在与用于发起检测振动马达异响的模块不再是Cameraprovider,而是对接振动马达的模块,以及针对振动马达的业务的发起者不再是相机应用或者Cameraservice,而是短信、电话、闹钟等应用或者通知服务等。
可选的,在S408中控制马达处于消除异响状态之后,本申请提供的马达控制方法还包括以下步骤:
S409,电子设备的Camera provider接收到Camera service发送的业务通知。
具体的,电子设备的CameraAPP在接收到用户的操作而生成业务时,或者Cameraservice自发的生成业务时,则CameraAPP可以通过Camera service,或者Camera service可以直接向Camera provider发送业务通知。
业务通知包括:进入业务场景的通知、退出业务场景的通知。其中,进入/退出业务场景的通知可能包含具体的业务类型等,例如可以是进入自动对焦的业务通知,本申请实施例对此不作限制。
S410,电子设备的Camera provider根据业务通知和最新的异响场景检测结果来确定马达的目标状态。
具体的,电子设备的Camera provider中预置有用于确定马达目标状态的真值表,具体可见前文表2的描述,在电子设备的Camera provider接收到业务通知后,可以结合此前最新接收到的异响场景检测结果从预存的真值表中查询马达的目标状态。
从表2示出的内容可以知道,Camera provider确定马达目标状态的具体规则包括:
(1)在接收到进入业务场景的通知时,无论最新接收到的异响场景检测结果指示马达处于/未处于异响场景,目标状态都为工作状态。
(2)在接收到退出业务场景的通知时,若最新接收到的异响场景检测结果指示马达处于异响场景,则目标状态为消除异响状态;若最新接收到的异响场景检测结果指示马达未处于异响场景,则目标状态为非工作状态。
S411:电子设备的Camera provider控制AF马达处于目标状态。
关于对S411的具体实现方式,与前文S408的描述的具体实现方式相同,在此暂不赘述。
可以理解的是,上述S409-S411仅介绍了控制AF马达的方法,当控制其他类型的马达例如振动马达时,其控制方法类似,区别仅在与用于发起业务通知的模块不再是相机应用或者Cameraservice,而是短信、电话、闹钟等应用或者通知服务等,以及接收到业务通知的模块不再是Camera provider,而是控制振动马达的HAL层的模块。
应理解,本申请提供的上述方法实施例中的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
本申请还提供一种电子设备,该电子设备可以包括:存储器和处理器。其中,存储器可用于存储计算机程序;处理器可用于调用所述存储器中的计算机程序,以使得该电子设备执行上述任意一个实施例中的方法。
本申请还提供了一种芯片系统,所述芯片系统包括至少一个处理器,用于实现上述任意一个实施例中电子设备执行的方法中所涉及的功能。
在一种可能的设计中,所述芯片系统还包括存储器,所述存储器用于保存程序指令和数据,存储器位于处理器之内或处理器之外。
该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
可选地,该芯片系统中的处理器可以为一个或多个。该处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。
可选地,该芯片系统中的存储器也可以为一个或多个。该存储器可以与处理器集成在一起,也可以和处理器分离设置,本申请实施例并不限定。示例性地,存储器可以是非瞬时性处理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请实施例对存储器的类型,以及存储器与处理器的设置方式不作具体限定。
示例性地,该芯片系统可以是现场可编程门阵列(field programmable gatearray,FPGA),可以是专用集成芯片(application specific integrated circuit,ASIC),还可以是系统芯片(system on chip,SoC),还可以是中央处理器(central processorunit,CPU),还可以是网络处理器(network processor,NP),还可以是数字信号处理电路(digital signal processor,DSP),还可以是微控制器(micro controller unit,MCU),还可以是可编程控制器(programmable logic device,PLD)或其他集成芯片。
本申请还提供一种计算机程序产品,所述计算机程序产品包括:计算机程序(也可以称为代码,或指令),当所述计算机程序被运行时,使得计算机执行上述任一个实施例中电子设备执行的方法。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序(也可以称为代码,或指令)。当所述计算机程序被运行时,使得计算机执行上述任一个实施例中电子设备执行的方法。
本申请的各实施方式可以任意进行组合,以实现不同的技术效果。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid StateDisk)等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:ROM或随机存储记忆体RAM、磁碟或者光盘等各种可存储程序代码的介质。
总之,以上所述仅为本发明技术方案的实施例而已,并非用于限定本发明的保护范围。凡根据本发明的揭露,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种马达控制方法,其特征在于,所述方法应用于包含相机模组的电子设备,所述相机模组包括马达和镜片;当所述马达上电后,所述马达中的动子移动时,带动所述镜片移动;所述方法包括:
当所述电子设备运行相机应用时,控制所述马达上电,使得所述马达中的动子固定在第一位置;
当检测到所述相机应用的焦距改变时,控制所述马达中的动子移动至第二位置,所述第二位置与所述第一位置不同;
在所述电子设备运行所述相机应用的过程中,当检测到所述电子设备晃动时,继续通过控制所述马达中动子的位置执行所述相机应用的对焦业务;
当所述电子设备停止运行所述相机应用后,控制所述马达下电;
在所述电子设备停止运行所述相机应用之后,当检测到所述电子设备晃动时,控制所述马达上电,使得所述马达中动子固定在第三位置,所述第三位置与所述第一位置相同或不同。
2.根据权利要求1所述的方法,其特征在于,在所述电子设备停止运行所述相机应用之后,且在所述电子设备控制所述马达上电,使得所述马达中动子固定在第三位置的过程中,所述电子设备处于以下任意一种情况:息屏、显示锁屏界面、显示解锁后的界面,或者显示所述相机应用以外的应用的界面。
3.根据权利要求1或2所述的方法,其特征在于,当检测到所述电子设备晃动时,所述电子设备继续通过控制所述马达中动子的位置执行所述相机应用的对焦业务,或者,控制所述马达上电,使得所述马达中动子固定在第三位置,具体包括:
所述电子设备进行异响场景检测;
在检测到所述电子设备进入异响场景后,所述电子设备判断所述马达的当前状态;
在确定所述马达的当前状态为工作状态时,则控制所述马达继续处于所述工作状态;
在确定所述马达的当前状态为非工作状态时,则控制所述马达处于消除异响状态;
其中,进行异响场景检测指对所述电子设备进行晃动检测;检测到进入异响场景指检测到所述电子设备晃动;
所述工作状态包括,所述马达上电且通过控制所述马达中动子的位置执行所述相机应用的对焦业务的状态;
所述非工作状态包括,所述马达下电的状态;
所述消除异响状态包括,所述马达上电且所述马达中动子固定在第三位置的状态。
4.根据权利要求1-3中任一项所述的方法,其特征在于,在所述电子设备控制所述马达上电,使得所述马达中动子固定在第三位置之后,所述方法还包括:
当未检测到所述电子设备晃动时,则控制所述马达下电。
5.根据权利要求4所述的方法,其特征在于,当未检测到所述电子设备晃动时,则控制所述马达下电,具体包括:
所述电子设备进行异响场景检测;
在检测到所述电子设备退出异响场景后,所述电子设备判断所述马达的当前状态;
在确定所述马达的当前状态为消除异响状态时,则控制所述马达处于非工作状态;
其中,进行异响场景检测指对所述电子设备进行晃动检测;检测到退出异响场景指未检测到所述电子设备晃动;
所述消除异响状态包括,所述马达上电且所述马达中动子固定在第三位置的状态;
所述非工作状态包括,所述马达上电且通过控制所述马达中动子的位置执行所述相机应用的对焦业务的状态。
6.根据权利要求1-5中任一项所述的方法,其特征在于,在所述电子设备控制所述马达上电,使得所述马达中动子固定在第三位置之后,所述方法还包括:
在所述相机应用运行时,则通过控制所述马达中动子的位置以执行所述相机应用的对焦业务;
在所述相机应用未运行时,则继续控制所述马达上电,使得所述马达中动子固定在所述第三位置。
7.根据权利要求6所述的方法,其特征在于,在所述相机应用运行时,则通过控制所述马达中动子的位置以执行所述相机应用的对焦业务;在所述相机应用未运行时,则继续控制所述马达上电,使得所述马达中动子固定在所述第三位置,具体包括:
所述电子设备判断是否有所述相机应用的业务通知;
在有所述相机应用的业务通知的情况下,所述电子设备则控制所述马达处于工作状态;
在没有所述相机应用的业务通知的情况下,所述电子设备根据最后一次异响场景检测结果来控制马达;当所述最后一次异响场景检测结果为进入异响场景时,则控制所述马达处于消除异响状态;当所述最后一次异响场景检测结果为退出异响场景时,则控制所述马达处于非工作状态;
其中,有所述相机应用的业务通知表征所述相机应用正在运行;没有所述相机应用的业务通知表征所述相机应用停止运行;
检测结果为进入异响场景指检测到所述电子设备晃动;检测结果为退出异响场景指未检测到所述电子设备晃动;
所述工作状态包括,所述马达上电且通过控制所述马达中动子的位置执行所述相机应用的对焦业务的状态;
所述消除异响状态包括,所述马达上电且所述马达中动子固定在所述第三位置的状态;
所述非工作状态包括,所述马达上电且通过控制所述马达中动子的位置执行所述相机应用的对焦业务的状态。
8.根据权利要求1-7中任一项所述的方法,其特征在于,所述电子设备晃动具体包括:所述电子设备的晃动程度大于或等于阈值。
9.根据权利要求8所述的方法,其特征在于,所述电子设备的晃动程度根据低功耗传感器采集的多个加速度来确定。
10.根据权利要求8或9所述的方法,其特征在于,所述阈值包括第一阈值和第二阈值,所述第一阈值和所述第二阈值,通过以下方法确定后预置在所述电子设备中:
采集第二设备在多个晃动场景下的加速度;
对比第一加速度和第二加速度,来确定所述第一阈值和所述第二阈值;其中,所述第一加速度为所述第二设备中的马达出现异响的情况下所采集到的加速度,所述第二加速度为所述第二设备中的马达未出现异响的情况下所采集到的加速度;
其中,所述第一阈值和所述第二阈值满足以下条件:所述第一阈值小于或等于,所述第一加速度中出现加速度大于第一值的次数,并且,所述第一阈值大于,所述第二加速度中出现加速度大于所述第一值的次数;所述第一值为所述第一加速度中的峰值和所述第二加速度中的峰值的中间值;
所述第二阈值,小于或等于所述第一加速度中的峰值出现的次数,并且,大于所述第二加速度中的峰值出现的次数。
11.根据权利要求8或9所述的方法,其特征在于,所述阈值包括第一阈值和第二阈值,所述第一阈值和所述第二阈值,通过以下方法确定后预置在所述电子设备中:
控制第二设备以第一加速度和第一晃动频次晃动;
在所述第二设备中的马达没有出现异响的情况下,逐渐增加加速度和晃动频次,控制所述第二设备晃动,直至所述第二设备中的马达出现异响;
根据所述第二设备中的马达出现异响时的第二加速度确定第一阈值,根据所述第二设备中的马达出现异响时的第二晃动频次确定所述第二阈值。
12.一种电子设备,其特征在于,所述电子设备包括马达、存储器、一个或多个处理器;所述存储器与所述一个或多个处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,所述一个或多个处理器调用所述计算机指令以使得所述电子设备执行如权利要求1-11中任一项所述的方法。
13.一种芯片,所述芯片应用于电子设备,其特征在于,所述芯片包括一个或多个处理器,所述处理器用于调用计算机指令以使得所述电子设备执行如权利要求1-11中任一项所述的方法。
14.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在电子设备上运行时,使得所述电子设备执行如权利要求1-11中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211444629.6A CN116708958B (zh) | 2022-11-18 | 2022-11-18 | 马达控制方法及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211444629.6A CN116708958B (zh) | 2022-11-18 | 2022-11-18 | 马达控制方法及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116708958A true CN116708958A (zh) | 2023-09-05 |
CN116708958B CN116708958B (zh) | 2024-06-14 |
Family
ID=87844005
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211444629.6A Active CN116708958B (zh) | 2022-11-18 | 2022-11-18 | 马达控制方法及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116708958B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117451173A (zh) * | 2023-12-18 | 2024-01-26 | 荣耀终端有限公司 | 马达检测方法及相关设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014176274A (ja) * | 2013-03-13 | 2014-09-22 | Tamron Co Ltd | 定在波型超音波モータ、及びそれを備えたレンズユニット、カメラ |
US20180152620A1 (en) * | 2016-11-28 | 2018-05-31 | Olympus Corporation | Focus adjustment device, focus adjustment method, and non-transitory storage medium for storing focus adjustment programs |
CN111432102A (zh) * | 2020-04-01 | 2020-07-17 | Oppo广东移动通信有限公司 | 一种摄像头、电子装置及摄像头控制方法 |
CN112839177A (zh) * | 2021-01-20 | 2021-05-25 | 北京小米移动软件有限公司 | 镜头控制方法、镜头控制装置及存储介质 |
CN114721108A (zh) * | 2020-12-18 | 2022-07-08 | 北京小米移动软件有限公司 | 驱动装置、消除镜头撞击噪声的方法、设备及介质 |
CN114915720A (zh) * | 2021-02-09 | 2022-08-16 | 华为技术有限公司 | 拍摄模组对焦、下电的方法、电子设备和可读介质 |
CN115132224A (zh) * | 2021-03-25 | 2022-09-30 | 北京小米移动软件有限公司 | 异常声音处理方法、装置、终端及存储介质 |
-
2022
- 2022-11-18 CN CN202211444629.6A patent/CN116708958B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014176274A (ja) * | 2013-03-13 | 2014-09-22 | Tamron Co Ltd | 定在波型超音波モータ、及びそれを備えたレンズユニット、カメラ |
US20180152620A1 (en) * | 2016-11-28 | 2018-05-31 | Olympus Corporation | Focus adjustment device, focus adjustment method, and non-transitory storage medium for storing focus adjustment programs |
CN111432102A (zh) * | 2020-04-01 | 2020-07-17 | Oppo广东移动通信有限公司 | 一种摄像头、电子装置及摄像头控制方法 |
CN114721108A (zh) * | 2020-12-18 | 2022-07-08 | 北京小米移动软件有限公司 | 驱动装置、消除镜头撞击噪声的方法、设备及介质 |
CN112839177A (zh) * | 2021-01-20 | 2021-05-25 | 北京小米移动软件有限公司 | 镜头控制方法、镜头控制装置及存储介质 |
CN114915720A (zh) * | 2021-02-09 | 2022-08-16 | 华为技术有限公司 | 拍摄模组对焦、下电的方法、电子设备和可读介质 |
CN115132224A (zh) * | 2021-03-25 | 2022-09-30 | 北京小米移动软件有限公司 | 异常声音处理方法、装置、终端及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117451173A (zh) * | 2023-12-18 | 2024-01-26 | 荣耀终端有限公司 | 马达检测方法及相关设备 |
CN117451173B (zh) * | 2023-12-18 | 2024-05-24 | 荣耀终端有限公司 | 马达检测方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN116708958B (zh) | 2024-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115473957B (zh) | 一种图像处理方法和电子设备 | |
CN115866121B (zh) | 应用界面交互方法、电子设备和计算机可读存储介质 | |
WO2020000448A1 (zh) | 一种柔性屏幕的显示方法及终端 | |
CN110543287B (zh) | 一种屏幕显示方法及电子设备 | |
CN108028891B (zh) | 电子设备和照相方法 | |
CN112351156B (zh) | 一种镜头切换方法及装置 | |
CN116360725B (zh) | 显示交互系统、显示方法及设备 | |
CN113641271A (zh) | 应用窗口的管理方法、终端设备及计算机可读存储介质 | |
CN114879894B (zh) | 功能启动方法、用户界面及电子设备 | |
CN115333941B (zh) | 获取应用运行情况的方法及相关设备 | |
CN116708958B (zh) | 马达控制方法及电子设备 | |
CN116156044A (zh) | 设备协同方法及相关装置 | |
CN114500732B (zh) | 一种界面显示的方法和电子设备、存储介质 | |
CN115119048B (zh) | 一种视频流处理方法及电子设备 | |
CN117687708A (zh) | 开机方法及电子设备 | |
CN114006698B (zh) | token刷新方法、装置、电子设备及可读存储介质 | |
CN116592756B (zh) | 折叠屏夹角的检测方法及电子设备 | |
CN115513571B (zh) | 电池温度的控制方法和终端设备 | |
CN116723382B (zh) | 一种拍摄方法及相关设备 | |
CN117707659B (zh) | 息屏显示方法和终端设备 | |
CN117995137B (zh) | 一种调节显示屏色温的方法、电子设备及相关介质 | |
CN117707243B (zh) | 一种电子设备的温度控制方法 | |
CN117729561B (zh) | 系统升级方法、终端及存储介质 | |
CN117687501A (zh) | 横竖屏切换的显示方法及相关装置 | |
CN116668997A (zh) | 定位方法、用户界面及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |