Motor control method and device, electronic equipment and computer readable storage medium
By using motion sensors and preset step thresholds on the camera, the target stepping of the camera motor is determined, which solves the problem of abnormal motor noise, improves the user experience and maintains the performance of OIS anti-shake.
Patent Information
- Application Number
- CN202411919385.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-24
- Publication Date
- 2025-03-28
AI Technical Summary
In the existing OIS anti-shake technology, the motor sound abnormality problem is serious, affecting the user experience.
By installing a motion sensor on the camera, the motion component of the camera in each spatial direction is determined based on the motion sensing data, and the target step of the motor is determined in combination with a preset step threshold to avoid abnormal motor noise.
It effectively reduces the abnormal noise or noise generated by the motor, improves the user experience, and does not affect the performance of OIS anti-shake.
Smart Images

Figure CN119727476A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of terminals, and in particular to a motor control method, device, electronic device and computer-readable storage medium. Background Art
[0002] The Optical Image Stabilizer (OIS) on mobile phones or digital cameras uses a motor to drive the mechanical movement inside the lens to offset the blur caused by camera shake. The current OIS has a problem of loud motor noise, which affects the user experience. Summary of the invention
[0003] The present application hopes to provide a motor control method, device, electronic device and computer-readable storage medium, which can reduce abnormal sounds or noises generated by the motor and improve user experience.
[0004] The technical solution of this application is implemented as follows:
[0005] In a first aspect, the present application provides a motor control method, the method comprising:
[0006] Determine at least one corresponding motion component of the camera in at least one spatial direction according to motion sensing data of a motion sensor on the camera;
[0007] Based on the at least one motion component and at least one preset step threshold corresponding to the at least one spatial direction, the target step corresponding to the motor of the camera is determined; the at least one preset step threshold includes a maximum step predetermined in the at least one spatial direction that does not cause abnormal noise of the motor.
[0008] In a second aspect, the present application provides a motor control device, the device comprising:
[0009] A first determination module, configured to determine at least one motion component corresponding to the camera in at least one spatial direction according to motion sensing data of a motion sensor on the camera;
[0010] The second determination module is used to determine the target step corresponding to the motor of the camera based on the at least one motion component and at least one preset step threshold corresponding to the at least one spatial direction; the at least one preset step threshold includes a maximum step predetermined in the at least one spatial direction that does not cause abnormal noise of the motor.
[0011] In a third aspect, the present application provides an electronic device, including a memory and a processor; wherein:
[0012] The memory is used to store executable instructions;
[0013] The processor is used to implement the motor control method provided in the embodiment of the present application when executing the executable instructions stored in the memory.
[0014] In a fourth aspect, the present application provides a computer-readable storage medium storing executable instructions for causing a processor to execute and implement the motor control method provided in an embodiment of the present application.
[0015] In a fifth aspect, an embodiment of the present application provides a computer program product, including a computer program or instructions, which, when executed by a processor, implements the motor control method provided in the embodiment of the present application.
[0016] The present application provides a motor control method, device, electronic device and computer-readable storage medium, which can determine at least one motion component corresponding to the camera in at least one spatial direction based on the motion sensing data of the motion sensor on the camera; and determine the target step corresponding to the camera's motor based on at least one motion component and at least one preset step threshold corresponding to at least one spatial direction. Among them, at least one preset step threshold includes a maximum step predetermined in at least one spatial direction that does not cause abnormal motor noise. In this way, the target step that can not cause abnormal motor noise in the current motion state of the camera can be determined based on the maximum step predetermined in at least one spatial direction that does not cause abnormal motor noise and at least one motion component determined based on the current motion sensing data, thereby reducing abnormal noise or noise generated by the motor and improving user experience. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] Figure 1 Schematic diagram of the motor control method provided in the embodiment of the present application Figure 1 ;
[0018] Figure 2 Schematic diagram of the motor control method provided in the embodiment of the present application Figure 2 ;
[0019] Figure 3 Schematic diagram of the motor control method provided in the embodiment of the present application Figure 3 ;
[0020] Figure 4 Schematic diagram of the motor control method provided in the embodiment of the present application Figure 4 ;
[0021] Figure 5 Schematic diagram of the motor control method provided in the embodiment of the present application Figure 5 ;
[0022] Figure 6 A schematic diagram of the structure of a motor control device provided in an embodiment of the present application;
[0023] Figure 7 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0024] In order to make the purpose, technical solutions and advantages of the present application clearer, the present application will be further described in detail below in conjunction with the accompanying drawings. The described embodiments should not be regarded as limiting the present application. All other embodiments obtained by ordinary technicians in the field without making creative work are within the scope of protection of this application.
[0025] In the following description, reference is made to “some embodiments”, which describe a subset of all possible embodiments, but it will be understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.
[0026] In the following description, the terms "first\second\third" involved are merely used to distinguish similar objects and do not represent a specific ordering of the objects. It can be understood that "first\second\third" can be interchanged with a specific order or sequence where permitted, so that the embodiments of the present application described here can be implemented in an order other than that illustrated or described here.
[0027] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art to which this application belongs. The terms used herein are only for the purpose of describing the embodiments of this application and are not intended to limit this application.
[0028] At present, there is an increasing demand for OIS anti-shake on mobile phones or cameras, but the motor drive currently has the problem of loud noise when the motor is powered on and off, especially for some modules with large volume. The noise is very obvious. The current related technologies usually reduce noise by adding damping oil or buffer foam, but the noise reduction effect is prioritized. The abnormal noise generated by the motor can still be felt by users, affecting the user experience. Alternatively, there are related technologies that use structural solutions for optimization, but this will make the camera module larger and increase the risk of black spots and black masses on the camera.
[0029] The embodiments of the present application provide a motor control method, device, electronic device, and computer-readable storage medium, which can reduce abnormal sounds or noises generated by the motor. The motor control method provided in the embodiments of the present application is applied to electronic devices. In some embodiments, the electronic device may include various types of terminals such as cameras with camera modules and OIS anti-shake modules, smart phones, multimedia devices, tablet computers, smart watches, etc., but is not limited thereto.
[0030] The motor control method provided in the embodiment of the present application can be as follows: Figure 1 As shown, including S101-S102, as follows:
[0031] S101. Determine at least one corresponding motion component of the camera in at least one spatial direction according to motion sensing data of a motion sensor on the camera.
[0032] In an embodiment of the present application, a motion sensor is configured on the electronic device, and the motion sensor is used to detect the motion state of the camera in space. In some embodiments, the motion state includes the spatial posture and / or motion speed of the camera. Exemplarily, the motion sensor may include a gyroscope, a gravity sensor, an acceleration sensor, etc., and the specific selection is made according to the actual situation, and the embodiment of the present application is not limited.
[0033] In the embodiment of the present application, at least one motion component corresponding to the motion state of the camera in at least one spatial direction of the spatial coordinate system can be determined based on the motion sensing data of the motion sensor.
[0034] In some embodiments, the current posture corresponding to the camera can be determined based on the motion sensing data; and at least one motion component can be determined by calculating at least one posture difference between the current posture and the reference posture corresponding to at least one spatial direction.
[0035] Exemplarily, by calculating the camera posture based on the motion sensing data of the gyroscope, the angular velocity of the camera rotating along the spatial directions of +X, +Y, +Z, -X, -Y and -Z on the X, Y and Z axes of the three-dimensional spatial coordinate system can be obtained, and the angular velocities of the camera corresponding to the six spatial directions can be obtained; based on the angular velocities of the camera corresponding to the six spatial directions, the angular velocity changes in the six spatial directions relative to the reference posture are calculated, and the angular velocity changes corresponding to the six spatial directions are used as at least one motion component.
[0036] For example, in a right-hand coordinate system, +X represents: counterclockwise rotation around the X axis (viewed from the positive direction of the Y axis). +Y represents: counterclockwise rotation around the Y axis (viewed from the positive direction of the Z axis). +Z represents: counterclockwise rotation around the Z axis (viewed from the positive direction of the X axis). -X represents: clockwise rotation around the X axis (viewed from the positive direction of the Y axis). -Y represents: clockwise rotation around the Y axis (viewed from the positive direction of the Z axis) -Z represents: clockwise rotation around the Z axis (viewed from the positive direction of the X axis).
[0037] Exemplarily, the reference posture includes a predefined desired camera posture, such as a static posture, a horizontal posture, etc., which is specifically selected according to actual conditions and is not limited in the embodiments of the present application.
[0038] S102, determining a target step corresponding to a motor of a camera according to at least one motion component and at least one preset step threshold corresponding to at least one spatial direction.
[0039] In the embodiment of the present application, at least one spatial direction corresponds to at least one preset step threshold. The at least one preset step threshold includes: a maximum step predetermined in at least one spatial direction that does not cause abnormal motor noise. In this way, the motion component of the camera in each spatial direction is combined with the preset step threshold corresponding to the spatial direction to obtain the target step corresponding to the motor in the camera, so that the target step can be constrained within the maximum step that does not cause abnormal motor noise, preventing the target step from being too large to cause abnormal motor noise.
[0040] Here, the motor includes a driving module in the OIS anti-shake module of the electronic device, which is used to drive the mechanical movement inside the camera lens to offset the camera shake.
[0041] Here, the step of the motor refers to the distance or angle that the motor needs to move. In some embodiments, the step of the motor can be sent to the motor by a processor of the electronic device in the form of a signal so that the motor moves according to the corresponding step.
[0042] Through the study of motor hardware parameters, this application discovered that abnormal motor noise mainly comes from the posture and step of the motor. Among them, the motor structure has different noise performance levels under different postures and steps, that is, some motors have large abnormal noises, and some have basically no abnormal noises. Therefore, the principle of solving the abnormal noise in this application is to find the maximum step under different posture differences. Thereby, when solving the abnormal noise, the camera OIS performance is not sacrificed as much as possible. Since the key parameters of different motors are also different, considering the hardware individuality differences of the motors, at least one preset step threshold corresponding to at least one spatial direction can be collected in advance for the motors in different cameras according to their hardware parameters. Among them, the spatial direction can characterize the posture of the motor, so that the posture and step of the motor can be combined to find the maximum step that does not cause abnormal motor noise.
[0043] In some embodiments, before S102, the abnormal noise of the motor corresponding to at least one step can be detected in each spatial direction of at least one spatial direction to determine the preset step threshold corresponding to each spatial direction, thereby determining at least one preset step threshold.
[0044] Exemplarily, in each spatial direction of at least one spatial direction, starting from the preset maximum step, it is possible to detect in each spatial direction in a decreasing manner whether the first motor volume caused by at least one step is less than or equal to the first preset volume threshold; in the case where it is detected that the first motor volume is less than or equal to the first preset volume threshold, the step corresponding to the current detection is used as the preset step threshold corresponding to the spatial direction. In the case where it is detected that the first motor volume is greater than the first preset volume threshold, a gradient decrease is performed based on the step corresponding to the current detection, and the next detection is performed based on the step of the gradient decrease until the first motor volume is less than or equal to the first preset volume threshold.
[0045] That is to say, for each spatial direction, it is possible to first detect whether the preset maximum step in the spatial direction will cause abnormal motor noise, that is, first use the preset maximum step as the step of the current detection, obtain the motor volume caused by the step of the current detection as the first motor volume, and determine whether the first motor volume is less than or equal to the first preset volume threshold. If the first motor volume is greater than the first preset volume threshold, it means that the step of the current detection is too large, and the step of the current detection is reduced for the next detection, and so on until the first motor volume caused by the step of the current detection is less than or equal to the first preset volume threshold, and the step of the current detection is used as the preset step threshold corresponding to the spatial direction. It can be understood that the preset step threshold corresponding to a spatial direction represents the demarcation point of whether the step in the direction will cause abnormal motor noise. If it is greater than the preset step threshold, the step of the motor in the direction will cause abnormal noise. Therefore, the preset step threshold corresponding to a spatial direction represents the maximum step in the spatial direction that does not cause abnormal motor noise.
[0046] Exemplarily, the step of the current detection can be reduced in a gradient decreasing manner. The specific gradient of each reduction can be a fixed value or a variable value. The specific gradient value can also be determined according to actual conditions, and the embodiments of the present application do not make specific limitations.
[0047] In the embodiment of the present application, the first preset volume threshold is used to distinguish between abnormal sounds and non-abnormal sounds. When the first motor volume is greater than the first preset volume threshold, it means that the first motor volume is easily perceived, and it can be considered that the abnormal motor sound is caused. When the first motor volume is less than or equal to the first preset volume threshold, it means that the first motor volume is not easily perceived, and it can be considered that the abnormal motor sound is not caused. The first preset volume threshold can be determined according to actual conditions. For example, the first preset volume threshold can be 85dB, or it can be set to other values, which are not specifically limited in the present application.
[0048] Exemplarily, the detection of abnormal motor noise caused by step length in the embodiment of the present application may include: powering on and / or off the motor according to the corresponding step length, detecting the volume of the sound generated when the motor is powered on and / or off, and obtaining the first motor volume. Exemplarily, the highest volume when powered on and off can be used as the first motor volume.
[0049] For example, Figure 2 As shown, taking the first preset volume threshold of 85dB as an example, through the 6-axis posture difference test, that is, the posture difference test in 6 spatial directions (+X, +Y, +Z, -X, -Y and -Z), the steps corresponding to the 6-axis postures are collected. The steps are tested according to the gradient from large to small to determine whether the volume of the abnormal sound is less than 85dB. If it is greater than 85dB, the current step is gradually reduced and the next test is performed. If it is less than or equal to 85dB, the current step under the axis is recorded as the preset step threshold. Through Figure 2 The process shown can obtain the preset step thresholds (A1, A2, A3, A4, A5, A6) in 6 spatial directions, that is, 6 different postures.
[0050] In some embodiments, since abnormal noise from the motor is usually generated when the OIS anti-shake function is turned on and / or off, and when the motor is powered on and / or off, the movement of the motor when it is powered on and / or off can be controlled according to the target stepping speed to prevent abnormal noise caused by excessive stepping when the motor is powered on and / or off.
[0051] It can be understood that the embodiments of the present application can determine the target step that the camera can take without causing abnormal motor noise in the current motion state based on the maximum step that is predetermined in at least one spatial direction and at least one motion component determined based on the current motion sensor data, thereby reducing the abnormal sound or noise generated by the motor and improving the user experience.
[0052] In some embodiments, Figure 3 As shown, S103 can be implemented by executing the process of S1031-S1032 as follows:
[0053] S1031. Determine at least one component proportion of at least one motion component relative to the total motion amount.
[0054] The total amount of motion is determined by synthesizing at least one motion component. Here, the total amount of motion can be obtained by synthesizing the spatial coordinate system according to at least one motion component. Exemplarily, the angular velocity changes of the gyroscope on the three axes of X, Y, and Z are synthesized to obtain the total angular velocity change as the total amount of motion. The ratio of each motion component in at least one motion component to the total amount of motion is calculated to obtain at least one component ratio.
[0055] S1032: Weight at least one component proportion according to at least one preset step threshold to determine a target step.
[0056] In some embodiments, the target step can be determined by weighting the corresponding component proportion in at least one component proportion according to each preset step threshold in at least one preset step threshold, and summing the obtained at least one weighted component proportion. Here, the preset step threshold and the corresponding component proportion belong to the same spatial direction.
[0057] In some embodiments, at least one component proportion may be weighted and summed according to at least one preset step threshold to determine a composite step; and a target step may be determined according to a preset coefficient and the composite step.
[0058] For example, the target step S can be determined by the fitting function shown in formula (1), as follows:
[0059] S=K*(A1*K1+A2*K2+A3*K3+A4*K4+A5*K5+A6*K6) Formula (1)
[0060] Among them, K1 to K6 represent the proportion of 6 components corresponding to 6 spatial directions; the value range of K1 to K6 is 0 to 1; A1 to K6 represent 6 preset step thresholds corresponding to 6 spatial directions; (A1*K1+A2*K2+A3*K3+A4*K4+A5*K5+A6*K6) represents the synthetic step, and K is the preset coefficient. K can be 1 by default. Or it can be set to other values, which are not specifically limited in the embodiments of the present application.
[0061] In some embodiments, the initial target step can also be determined based on the preset coefficient and the synthetic step; by detecting whether the second motor volume caused by the initial target step is greater than the second preset volume threshold, the preset coefficient is adjusted and the target step is determined. In other words, the product of the preset coefficient and the synthetic step, such as S calculated by formula (1), can be used as the initial target step, and by detecting whether the initial target step will cause abnormal noise in the motor, the value of the preset coefficient K is adjusted until the abnormal noise volume of the motor is less than or equal to the second preset volume threshold. The second preset volume threshold can be the same as or different from the first preset volume threshold.
[0062] Exemplarily, it is possible to detect whether the second motor volume caused by the initial target step is greater than the second preset volume threshold; when the second motor volume is greater than the second preset volume threshold, the preset coefficient is adjusted, and the initial target step is updated using the adjusted preset coefficient and the synthesized step until the second motor volume is less than or equal to the second preset volume threshold, and the currently updated initial target step is used as the target step.
[0063] Among them, the process of detecting the volume of the second motor is similar to the process of detecting the volume of the first motor mentioned above, and will not be repeated here.
[0064] like Figure 4 As shown, the posture difference is confirmed by collecting gyroscope data, and then the XYZ space vector corresponding to the current posture difference is output, that is, at least one motion component, and the spatial vector ratio is confirmed to obtain at least one component ratio. According to at least one component ratio, the fitting function outputs the initial target step. The initial target step is used for abnormal sound detection. If an abnormal sound occurs, such as the volume of the second motor is greater than the second preset volume threshold, the fitting function is corrected by adjusting the value of the preset coefficient. If the volume of the second motor is less than or equal to the second preset volume threshold, the debugging is ended and the target step is obtained.
[0065] In summary, the motor control method provided in this application can be as follows Figure 5 As shown, in the hardware parameter collection stage, the maximum step of the motor in different postures is determined; in the algorithm adaptive optimization stage, the gyroscope sensor data is collected to determine the current step and posture of the camera, and the initial target step is determined based on the maximum step of the motor in different postures determined in the hardware parameter collection stage. The motor sound is detected based on the initial target step, and the initial target step is optimized to obtain the target step.
[0066] It is understandable that the embodiments of the present application make full use of the motor characteristics and collect the key parameters of the abnormal noise, which can fundamentally solve the abnormal noise. Moreover, through adaptive adjustment, the matching characteristics with the motor are better and the impact on performance is minimal. Furthermore, through closed-loop adjustment, not only can the abnormal noise of the test motor be solved, but also the abnormal noise caused by the change of motor characteristics during use can be optimized. Ultimately, the abnormal noise of the motor in the camera anti-shake scenario is reduced, and the user experience is improved.
[0067] The present application embodiment provides a motor control device 1, such as Figure 6 As shown, including:
[0068] A first determination module 11 is used to determine at least one motion component corresponding to the camera in at least one spatial direction according to motion sensing data of a motion sensor on the camera;
[0069] The second determination module is used to determine the target step corresponding to the motor of the camera based on the at least one motion component and at least one preset step threshold corresponding to the at least one spatial direction; the at least one preset step threshold includes a maximum step 12 predetermined in the at least one spatial direction that does not cause abnormal noise of the motor.
[0070] In some embodiments, the motor control device 1 also includes a third determination module, which is used to detect abnormal motor noise corresponding to at least one step in each spatial direction of the at least one spatial direction before determining the target step corresponding to the motor of the camera based on the at least one motion component and the at least one preset step threshold corresponding to the at least one spatial direction, and determine the preset step threshold corresponding to each spatial direction, thereby determining the at least one preset step threshold.
[0071] In some embodiments, the third determination module is also used to detect in each spatial direction, starting from a preset maximum step, in a descending manner whether the first motor volume caused by at least one step is less than or equal to a first preset volume threshold; when it is detected that the first motor volume is less than or equal to the first preset volume threshold, the step corresponding to the current detection is used as the preset step threshold corresponding to the spatial direction.
[0072] In some embodiments, the third determination module is also used to perform a gradient decrease based on the step corresponding to the current detection when it is detected that the volume of the first motor is greater than the first preset volume threshold, and perform the next detection based on the step of the gradient decrease until the volume of the first motor is less than or equal to the first preset volume threshold.
[0073] In some embodiments, the second determination module 12 is further used to determine the proportion of at least one motion component relative to the total motion amount; the total motion amount is determined by synthesizing the at least one motion component; and according to the at least one preset step threshold, the proportion of the at least one component is weighted to determine the target step.
[0074] In some embodiments, the second determination module 12 is further configured to perform weighted summation of the at least one component proportion according to the at least one preset step threshold to determine a composite step; and determine the target step according to a preset coefficient and the composite step.
[0075] In some embodiments, the second determination module 12 is further used to determine the initial target step according to the preset coefficient and the synthetic step; by detecting whether the second motor volume caused by the initial target step is greater than a second preset volume threshold, the preset coefficient is adjusted and the target step is determined.
[0076] In some embodiments, the second determination module 12 is further used to detect whether the second motor volume caused by the initial target step is greater than the second preset volume threshold; when the second motor volume is greater than the second preset volume threshold, the preset coefficient is adjusted, and the initial target step is updated using the adjusted preset coefficient and the synthetic step until the second motor volume is less than or equal to the second preset volume threshold, and the currently updated initial target step is used as the target step.
[0077] In some embodiments, the first determination module 11 is further used to determine the current posture of the camera based on the motion sensing data; and determine the at least one motion component by calculating at least one posture difference between the current posture and a reference posture corresponding to at least one spatial direction.
[0078] In some embodiments, the motor control device 1 further includes a control module, and the control module is used to control the movement of the motor when it is powered on and / or powered off according to the target step after determining the target step.
[0079] It should be noted that the description of the above device embodiment is similar to the description of the above method embodiment, and has similar beneficial effects as the method embodiment. For technical details not disclosed in the device embodiment of the present application, please refer to the description of the method embodiment of the present application for understanding.
[0080] The present application also provides an electronic device, Figure 7 This is an optional structural diagram of an electronic device provided in an embodiment of the present application. Figure 7 As shown, the electronic device 3 includes: a memory 32 and a processor 33. The memory 32 and the processor 33 are connected via a communication bus 34; the memory 32 is used to store executable instructions; the processor 33 is used to execute the executable instructions stored in the memory 32 to implement the motor control method provided in the embodiment of the present application.
[0081] An embodiment of the present application provides a computer-readable storage medium storing executable instructions, wherein executable instructions are stored. When the executable instructions are executed by the above-mentioned processor, the above-mentioned processor will execute the motor control method provided by the embodiment of the present application.
[0082] In some embodiments, the computer-readable storage medium may be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, flash memory, magnetic surface storage, optical disk, or CD-ROM; or it may be various devices including one or any combination of the above memories.
[0083] In some embodiments, executable instructions may be in the form of a program, software, software module, script or code, written in any form of programming language (including compiled or interpreted languages, or declarative or procedural languages), and may be deployed in any form, including as a stand-alone program or as a module, component, subroutine or other unit suitable for use in a computing environment.
[0084] As examples, executable instructions may, but need not, correspond to a file in a file system, may be stored as part of a file storing other programs or data, such as one or more scripts in a Hyper Text Markup Language (HTML) document, in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files storing one or more modules, subroutines, or code portions). As examples, executable instructions may be deployed to be executed on one computing device, or on multiple computing devices located at one location, or on multiple computing devices distributed at multiple locations and interconnected by a communication network.
[0085] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of hardware embodiments, software embodiments, or embodiments in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) that contain computer-usable program code.
[0086] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0087] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0088] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0089] The above is only a preferred embodiment of the present application and is not intended to limit the protection scope of the present application. Any modifications, equivalent substitutions and improvements made within the spirit and scope of the present application are included in the protection scope of the present application.
Claims
1. A motor control method, characterized in that: include: Determine at least one corresponding motion component of the camera in at least one spatial direction according to motion sensing data of a motion sensor on the camera; Based on the at least one motion component and at least one preset step threshold corresponding to the at least one spatial direction, the target step corresponding to the motor of the camera is determined; the at least one preset step threshold includes a maximum step predetermined in the at least one spatial direction that does not cause abnormal noise of the motor.
2. The method according to claim 1, characterized in that Before determining the target step corresponding to the motor of the camera according to the at least one motion component and the at least one preset step threshold corresponding to the at least one spatial direction, the method further includes: In each of the at least one spatial direction, abnormal motor noises corresponding to a plurality of steps are detected to determine a preset step threshold corresponding to each of the spatial directions, thereby determining the at least one preset step threshold.
3. The method according to claim 2, characterized in that The detecting of abnormal motor noises corresponding to a plurality of steps in each spatial direction of the at least one spatial direction and determining a preset step threshold corresponding to each spatial direction includes: In each of the spatial directions, in order of steps from large to small, sequentially detecting whether the volume of the first motor caused by the current step in the plurality of steps is less than or equal to a first preset volume threshold; When the first motor volume is less than or equal to the preset volume threshold, the current step is used as the preset step threshold corresponding to the spatial direction.
4. The method according to claim 3, characterized in that The method further comprises: When the volume of the first motor is greater than the preset volume threshold, the current step is gradually decreased; Determine whether the volume of the abnormal noise of the motor caused by the current step after the gradient decreases is less than or equal to a preset volume threshold.
5. The method according to any one of claims 1 to 4, characterized in that: Determining a target step corresponding to a motor of the camera according to the at least one motion component and at least one preset step threshold corresponding to the at least one spatial direction includes: Determine at least one component proportion of the at least one motion component relative to the total motion amount; the total motion amount is determined by synthesizing the at least one motion component; The at least one component proportion is weighted according to the at least one preset step threshold to determine the target step.
6. The method according to claim 5, characterized in that The step of weighting the at least one component proportion according to the at least one preset step threshold to determine the target step includes: According to the at least one preset step threshold, weighted summing the at least one component proportion is performed to determine a synthesis step; The target step is determined according to a preset coefficient and the synthetic step.
7. The method according to claim 6, characterized in that The step of determining the target step according to the preset coefficient and the synthetic step comprises: Determining an initial target step according to a preset coefficient and the synthetic step; By detecting whether the second motor volume caused by the initial target step is less than or equal to a second preset volume threshold, the preset coefficient is adjusted and the target step is determined.
8. The method according to claim 7, characterized in that The step of detecting whether the second motor volume caused by the initial target step is less than or equal to a second preset volume threshold, adjusting the preset coefficient and determining the target step comprises: Using the initial target step to drive the motor to move, and obtaining the volume of the second motor; When the volume of the second motor is greater than the second preset volume threshold, the preset coefficient is adjusted, and the initial target step is updated using the adjusted preset coefficient and the synthetic step until the volume of the second motor is less than or equal to the second preset volume threshold, and the currently updated initial target step is used as the target step.
9. A motor control device, characterized in that: The device comprises: A first determination module, configured to determine at least one motion component corresponding to the camera in at least one spatial direction according to motion sensing data of a motion sensor on the camera; The second determination module is used to determine the target step corresponding to the motor of the camera based on the at least one motion component and at least one preset step threshold corresponding to the at least one spatial direction; the at least one preset step threshold includes a maximum step predetermined in the at least one spatial direction that does not cause abnormal noise of the motor.
10. An electronic device, characterized in that: comprising a memory and a processor; wherein, The memory is used to store executable instructions; The processor is used to implement the method according to any one of claims 1 to 8 when executing the executable instructions stored in the memory.
11. A computer-readable storage medium, characterized in that: Executable instructions are stored, which are used to cause a processor to execute and implement the method according to any one of claims 1 to 8.
12. A computer program product, characterized in that The method comprises a computer program or an instruction, which, when executed by a processor, implements the method according to any one of claims 1 to 8.