Control method, control device, terminal and computer readable storage medium

By obtaining the terminal jitter signal and determining the integral control amount and deflection control amount, the control motor smoothly transitions to the preset position during the anti-shake process, solving the problem of anti-shake function failure and ensuring the continuity and quality of the image.

CN115278062BActive Publication Date: 2025-03-28GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP LTD +1
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210790276.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-07-05
Publication Date
2025-03-28
Estimated Expiration
2042-07-05

AI Technical Summary

Technical Problem

During the anti-shake process, when the motor compensates and exceeds the limit, a reset operation is usually required, resulting in poor screen continuity and the anti-shake function is stopped.

Method used

By acquiring the jitter signal of the terminal, the integral control amount is determined, and when the motor is moved to a preset limit position according to the integral control amount, the reset state is determined. The deflection control amount is determined according to the reset state, the motor is reset to a preset position, and in the reset state, the motor movement is controlled based on the integral control amount and the deflection control amount.

Benefits of technology

It realizes that when the integral control amount exceeds the limit position, the motor smoothly transitions to the preset position, avoids the failure of the anti-shake function and ensures image quality.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115278062B_ABST
    Figure CN115278062B_ABST
Patent Text Reader

Abstract

The present application discloses a control method, a control device, a terminal and a non-volatile computer-readable storage medium. The control method includes: obtaining a jitter signal of a terminal to determine an integral control amount; determining to enter a reset state when the motor of the terminal is controlled to move to a preset limit position of a moving stroke according to the integral control amount; determining a deflection control amount according to the reset state so that the motor is reset to a preset position of the moving stroke according to the deflection control amount; and in the reset state, controlling the motor movement according to the integral control amount and the deflection control amount. The control method, control device, terminal and non-volatile computer-readable storage medium of the implementation mode of the present application can ensure that the motor can smoothly transition to the preset position of the moving stroke, and the motor will not be in a state where the anti-shake function fails, thereby ensuring that the anti-shake function continues to take effect during the anti-shake process to ensure the quality of the image captured by the terminal.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of optical image stabilization, and more specifically, to a control method, a control device, a terminal, and a non-volatile computer-readable storage medium. Background Art

[0002] Currently, when anti-shake is performed, if the motor exceeds the limit after compensation, a reset operation is generally required. At this time, the anti-shake function stops and the motor is directly reset to the preset position. The picture continuity during the reset process is poor. Summary of the invention

[0003] Embodiments of the present application provide a control method, a control device, a terminal, and a non-volatile computer-readable storage medium.

[0004] The control method of the embodiment of the present application includes acquiring a jitter signal of the terminal to determine an integral control amount; determining to enter a reset state when controlling the motor of the terminal to move to a limit position of a preset moving stroke according to the integral control amount; determining a deflection control amount according to the reset state, so that the motor is reset to the preset position of the moving stroke according to the deflection control amount; and in the reset state, controlling the movement of the motor according to the integral control amount and the deflection control amount.

[0005] The shooting device of the embodiment of the present application includes an acquisition module, a determination module, a reset module and a control module. The acquisition module is used to acquire the jitter signal of the terminal to determine the integral control amount. The determination module is used to determine the entry into the reset state when the motor of the terminal is controlled to move to the limit position of the preset moving stroke according to the integral control amount. The reset module is used to determine the deflection control amount according to the reset state, so that the motor is reset to the preset position of the moving stroke according to the deflection control amount. The control module is used to control the movement of the motor according to the integral control amount and the deflection control amount during the reset process.

[0006] The photographing device of the embodiment of the present application includes a processor. The processor is used to obtain a jitter signal of the terminal to determine an integral control amount; when the motor of the terminal is controlled to move to a preset limit position of a moving stroke according to the integral control amount, determine to enter a reset state; determine a deflection control amount according to the reset state, so that the motor is reset to a preset position of the moving stroke according to the deflection control amount; and during the reset process, control the movement of the motor according to the integral control amount and the deflection control amount.

[0007] The non-volatile computer-readable storage medium of the embodiment of the present application includes a computer program. When the computer program is executed by one or more processors, the processor executes the following control method: obtaining a jitter signal of the terminal to determine an integral control amount; determining to enter a reset state when controlling the motor of the terminal to move to a limit position of a preset moving stroke according to the integral control amount; determining a deflection control amount according to the reset state, so that the motor is reset to the preset position of the moving stroke according to the deflection control amount; and during the reset process, controlling the movement of the motor according to the integral control amount and the deflection control amount.

[0008] The shooting control method, control device, terminal and non-volatile computer-readable storage medium of the implementation mode of the present application determine the integral control amount and the deflection control amount, wherein the integral control amount can reflect the actual jitter amount of the terminal, and the deflection control amount can reflect the position of the motor at the current moment. In this way, when the motor is controlled to move to the limit position of the preset moving stroke according to the integral control amount, it is determined to enter the reset state, and in the reset state, the movement of the motor is controlled by the integral control amount and the deflection control amount, thereby ensuring that when the integral control amount exceeds the limit position of the moving stroke of the motor, that is, when the motor enters the reset state, the motor can smoothly transition to the preset position of the moving stroke, and the motor will not be in a state of anti-shake failure, thereby ensuring that the anti-shake function continues to take effect during the anti-shake process to ensure the quality of the image captured by the terminal.

[0009] Additional aspects and advantages of the embodiments of the present application will be given in part in the description below, and in part will become apparent from the description below, or will be learned through the practice of the embodiments of the present application. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] The above and / or additional aspects and advantages of the present application will become apparent and easily understood from the description of the embodiments in conjunction with the following drawings, in which:

[0011] Figure 1 is a flow chart of a control method of certain embodiments of the present application;

[0012] Figure 2 is a schematic diagram of a control device of certain embodiments of the present application;

[0013] Figure 3 is a schematic plan view of a terminal according to some embodiments of the present application;

[0014] Figure 4 is a schematic diagram of a control method for certain embodiments of the present application;

[0015] Figure 5 is a flow chart of a control method of certain embodiments of the present application;

[0016] Figure 6 is a flow chart of a control method of certain embodiments of the present application;

[0017] Figure 7 is a schematic diagram of a control method for certain embodiments of the present application;

[0018] Figure 8 is a flow chart of a control method of certain embodiments of the present application;

[0019] Fig. 9 is a flow chart of a control method of certain embodiments of the present application;

[0020] Fig.10 is a flow chart of a control method of certain embodiments of the present application;

[0021] Fig.11 is a flow chart of a control method of certain embodiments of the present application;

[0022] Fig.12 It is a schematic diagram of the connection status of a non-volatile computer-readable storage medium and a processor in certain embodiments of the present application. DETAILED DESCRIPTION

[0023] The embodiments of the present application are described in detail below, and examples of the embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals represent the same or similar elements or elements having the same or similar functions from beginning to end. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain the embodiments of the present application, and cannot be understood as limiting the embodiments of the present application.

[0024] See also Figure 1 and Figure 2 , the embodiment of the present application provides a control method. The control method comprises the steps of:

[0025] 01: Obtain a jitter signal of the terminal 100 to determine an integral control amount; and

[0026] 03: When the motor 40 of the terminal 100 is moved to a limit position of a preset moving stroke according to the integral control amount, it is determined to enter a reset state;

[0027] 05: Determine the deflection control amount according to the reset state, so that the motor 40 is reset to a preset position of the moving stroke according to the deflection control amount; and

[0028] 07: In the reset state, the movement of the motor 40 is controlled according to the integral control amount and the deflection control amount.

[0029] See also Figure 3, the embodiment of the present application provides a control device 10. The control device 10 includes an acquisition module 11, a determination module 12, a reset module 13 and a second control module 14. The control method of the embodiment of the present application can be applied to the control device 10. Among them, the acquisition module 11, the determination module 12, the reset module 13 and the second control module 14 are used to execute step 01, step 03, step 05 and step 07. That is, the acquisition module 11 is used to acquire the jitter signal of the terminal 100 to determine the integral control amount. The determination module 12 is used to determine the entry into the reset state when the motor 40 of the terminal 100 is controlled to move to the limit position of the preset moving stroke according to the integral control amount. The reset module 13 is used to determine the deflection control amount according to the reset state, so that the motor 40 is reset to the preset position of the moving stroke according to the deflection control amount. The control module 14 is used to control the movement of the motor 40 according to the integral control amount and the deflection control amount during the reset process.

[0030] See also Figure 2 , the embodiment of the present application also provides a terminal 100. The control method of the embodiment of the present application can be applied to the terminal 100. The terminal 100 includes a processor 20. The processor 20 is used to execute step 01, step 03, step 05 and step 07. That is, the processor 20 is used to obtain a jitter signal of the terminal 100 to determine an integral control amount; when the motor 40 of the terminal 100 is controlled to move to a preset limit position of a moving stroke according to the integral control amount, it is determined to enter a reset state; the deflection control amount is determined according to the reset state, so that the motor 40 is reset to the preset position of the moving stroke according to the deflection control amount; and in the reset state, the motor 40 is controlled to move according to the integral control amount and the deflection control amount.

[0031] The terminal 100 may be a mobile phone, a tablet computer, a digital camera, a laptop computer, a smart watch, a head-mounted display device, a game console, etc. Figure 2 As shown, the implementation manner of the present application is described by taking the terminal 100 being a mobile phone as an example. It can be understood that the specific form of the terminal 100 is not limited to a mobile phone.

[0032] The terminal 100 further includes a housing 30, a motor 40 and a lens 50. The housing 30 can be used to install functional modules such as a display device, an imaging device, a power supply device, and a communication device of the terminal 100, so that the housing 30 provides dustproof, drop-proof, waterproof and other protections for the functional modules. The motor 40 is used to drive the lens 50 of the terminal 100 to move. Among them, the motor 40 can be the motor 40 of the camera module (not shown) in the terminal 100.

[0033] Among them, when the terminal 100 is shooting an image, there will be shaking. The motor 40 can drive the lens 50 of the terminal 100 to move so that the captured image has an anti-shake effect. For example, when the terminal 100 is shooting an image, there is shaking to the right. The motor 40 can drive the lens 50 of the terminal 100 to move to the left to ensure the anti-shake ability of the terminal 100, thereby ensuring that the anti-shake effect of the captured image is good.

[0034] Specifically, during the image shooting process, the terminal 100 can obtain the current jitter signal through a filter or the like, and the processor 20 can determine the integral control amount based on the jitter signal, thereby controlling the motor 40 to generate a movement that is in the opposite direction of the jitter signal according to the integral control amount to drive the lens 50 to move, so as to offset the interference of the terminal 100 jitter on the lens 50 of the terminal 100, that is, to perform anti-shake, thereby ensuring the anti-shake effect of the captured image.

[0035] However, since the range of movement of the lens 50 is limited, that is, the movement stroke of the motor 40 is limited, during the anti-shake process, the integral control amount often exceeds the maximum travel range that the motor 40 can reach, resulting in anti-shake failure. In this case, it is necessary to control the motor 40 to move in the reverse direction so that the lens 50 returns to the preset position, thereby ensuring that the lens 50 always has anti-shake capability. The preset position can be the center position of the movement stroke of the motor 40, or the left side of the center position of the movement stroke of the motor 40, or the right side of the movement stroke of the motor 40.

[0036] It can be understood that the anti-shake signal represents the actual degree of shake of the terminal 100, and the integral control amount represents the distance that the motor 40 needs to move the lens 50 in the opposite direction according to the actual shake of the terminal 100. Therefore, when the processor 20 determines the integral control amount, the processor 20 can control the motor 40 to move within the movement range of the motor 40 according to the integral control amount, so that the terminal 100 performs anti-shake compensation.

[0037] like Figure 4 As shown, point A to point B is the preset moving stroke of the motor 40, and point A is the positive direction as an example. Point A is the limit position of the preset moving stroke in the positive direction, that is, the maximum stroke in the positive direction, and point B is the limit position of the preset moving stroke in the negative direction, that is, the maximum stroke in the negative direction (a negative number). Among them, point O is the return center position of the preset moving stroke, that is, the zero position. When the motor 40 is at point O, the terminal 100 is in a state where the anti-shake function is not turned on. Generally, point O is located in the middle position between point A and point B. When the motor 40 moves from point O to point A or point B, it means that the terminal 100 has turned on the anti-shake function.

[0038] After the processor 20 determines the integral control amount, the processor 20 can control the motor 40 to move between point A and point B according to the integral control amount. When the processor 20 controls the motor 40 of the terminal 100 to move to point A or point B according to the integral control amount, it means that the motor 40 has moved to the limit position of the preset movement stroke, and the motor 40 can no longer move to a position away from point O.

[0039] If the integral control amount is greater than the preset limit position of the moving stroke, such as Figure 4 As shown, the integral control amount is greater than the distance L1 between point O and point A, or greater than the distance L2 between point O and point B. After the motor 40 moves to point A or point B, theoretically, the motor 40 still needs to move away from point O, but in fact, the motor 40 can no longer move away from point O. At this time, the processor 20 determines to enter the reset state. It can be understood that when the processor 20 controls the motor 40 to move to the limit position of the preset movement stroke according to the integral control amount, if it is found that the integral control amount is greater than the maximum stroke in the positive direction or the maximum stroke in the negative direction, it will be determined that the motor 40 enters the reset state.

[0040] After the processor 20 determines that the motor 40 enters the reset state, the processor 20 can determine the deflection control amount according to the reset state. The deflection control amount represents the distance between the motor 40 and the return center position at the current moment. Figure 4 As shown, when the motor 40 moves to point A, the reset state is that the motor 40 moves from point A to point O; when the motor 40 moves to point B, the reset state is that the motor 40 moves from point B to point O. It can be understood that when the processor 20 determines that the motor 40 enters the reset state, that is, when the processor 20 moves the motor 40 to the limit position of the preset movement stroke according to the integral control amount, the deflection control amount is the maximum stroke in the positive direction or the maximum stroke in the negative direction.

[0041] As time goes by, the processor 20 will also control the motor 40 to reset to the preset position of the moving stroke according to the deflection control amount. Among them, the preset position of the moving stroke is the return position of the moving stroke. It can be understood that during the resetting process of the motor 40, the deflection control amount will gradually change. When the deflection control amount is 0, it means that the motor 40 has moved to the return position. That is, after the motor 40 moves to the preset position of the moving stroke, the lens 50 of the terminal 100 has the ability to have the same anti-shake compensation amount in the positive direction and the negative direction.

[0042] The motor 40 can be reset to the preset position of the moving stroke according to the deflection control amount by controlling the motor 40 to reset according to a certain linear relationship. Figure 4As shown, if the distance between point A and point O is 1, the processor 20 can control the motor 40 to move 0.1 every 0.1 seconds, that is, after 1 second, the motor 40 is moved from the maximum stroke in the positive direction to the return position, thereby ensuring that the motor 40 can smoothly transition to the center position of the stroke, thereby ensuring that when the motor 40 pushes the lens 50 to return to the center, the image captured by the terminal 100 is relatively continuous, thereby ensuring the shooting quality.

[0043] While the motor 40 is being reset to a preset position of the moving stroke according to the deflection control amount, the processor 20 will also control the movement of the motor 40 according to the integral control amount and the deflection control amount.

[0044] Specifically, after the processor 20 determines to enter the reset state, the processor 20 will first clear the integral control amount that has been acquired to reacquire the integral control amount. It can be understood that if the integral control amount acquired again is not zero, it means that the terminal 100 is still shaking, that is, the motor 40 still needs to control the lens 50 to move accordingly to perform anti-shake compensation, thereby ensuring the shooting quality of the final captured image.

[0045] At this time, if the integral control amount is too large or too small, the motor 40 will be unable to move to achieve the target position of the anti-shake effect beyond the limit position of the moving stroke, and the motor 40 will be unable to move, resulting in anti-shake failure. Therefore, when the integral control amount is too large or too small, so that the motor 40 needs to move to achieve the target position of the anti-shake effect beyond the limit position of the moving stroke, the processor 20 needs to clear the integral control amount to ensure that the processor 20 can control the motor 40 to move, thereby ensuring that the motor 40 does not enter the anti-shake failure state.

[0046] Taking the case where the motor 40 is reset from the maximum stroke in the positive direction to the preset position of the moving stroke according to the deflection control amount, the deflection control amount gradually decreases from the maximum stroke in the positive direction to zero. Figure 4 , the motor 40 gradually resets from point A to point O. When the motor 40 is at point A, the deflection control amount is L1. If the integral control amount is positive, it means that the motor 40 still needs to deviate away from point O relative to the current position (point A). At this time, the motor 40 can no longer deviate away from point O. The motor 40 remains at the current position (point A). The processor 20 resets the integral control amount again and controls the motor 40 to move when the integral control amount is negative or zero.

[0047] For example, when the integral control amount is zero, the processor 20 controls the motor 40 to reset to a preset position of the moving stroke according to the deflection control amount, thereby ensuring that the anti-shake function of the motor 40 of the terminal 100 does not fail during the resetting process.

[0048] For another example, when the integral control amount is a negative number, and the sum of the integral control amount and the deflection control amount is less than the maximum stroke in the positive direction, it means that the motor 40 still needs to be offset in the direction close to point O relative to the current position (point A), that is, the processor 20 can control the movement of the motor 40. If the integral control amount is -(L1-L3), the motor 40 needs to be offset to point C relative to the current position (point A), and the processor 20 controls the motor 40 to move quickly to point C, thereby performing anti-shake compensation for the image taken by the terminal 100, and after the integral control amount is zero, the motor 40 is controlled to gradually reset to the preset position of the moving stroke according to the current deflection control amount (i.e., L3), thereby ensuring that the anti-shake function of the motor 40 will not fail during the reset process.

[0049] For example, if the integral control amount is a small negative number, and the sum of the integral control amount and the deflection control amount is less than the maximum stroke in the negative direction, it means that the motor 40 needs to be offset relative to the position of point B to a position away from point O. If the integral control amount is -(L1+L2+L4), the motor 40 needs to be offset to the position of point D relative to the position of point B, and the motor 40 cannot move to the position of point D. The processor 20 will first control the motor 40 to move quickly to the position of point B, and then clear the integral control amount, so that the motor 40 can gradually reset to the preset position of the moving stroke according to the current deflection control amount (i.e., L2), thereby ensuring that the anti-shake function of the motor 40 will not fail during the reset process.

[0050] When the motor 40 is reset from the maximum stroke in the positive direction to the preset position of the moving stroke according to the deflection control amount, the judgment principle is the same as the above, and will not be repeated here. In addition, if the integral control amount is always 0, that is, the terminal 100 does not shake, the processor 20 controls the motor 40 to gradually reset to the preset position of the moving stroke through the deflection control amount.

[0051] It can be understood that when the processor 20 controls the movement of the motor 40 according to the integral control amount and the offset control amount while the motor 40 is resetting to the preset position of the moving stroke according to the deflection control amount, it can ensure that the motor 40 can smoothly transition to the center position and the anti-shake function will not fail.

[0052] The control method, control device 10 and terminal 100 of the implementation mode of the present application control the movement of the motor 40 by determining the integral control amount and the deflection control amount, wherein the integral control amount can reflect the actual jitter amount of the terminal 100, and the deflection control amount can reflect the position of the motor 40 at the current moment. In this way, when the motor 40 is controlled to move to the limit position of the preset moving stroke according to the integral control amount, it is determined to enter the reset state, and in the reset state, the movement of the motor 40 is controlled by the integral control amount and the deflection control amount, thereby ensuring that when the integral control amount exceeds the limit position of the moving stroke of the motor 40, that is, when the motor 40 enters the reset state, the motor 40 can smoothly transition to the preset position of the moving stroke, and the motor 40 will not be in a state of anti-shake failure, thereby ensuring that the anti-shake function continues to take effect during the anti-shake process to ensure the quality of the image taken by the terminal 100.

[0053] See also Figure 2 , Figure 3 and Figure 5 In some embodiments, step 03: when the motor 40 of the terminal 100 is moved to a limit position of a preset moving stroke according to the integral control amount, determining to enter a reset state comprises the steps of:

[0054] 031: When the motor 40 moves to the first limit position, it is determined to enter the first reset state;

[0055] 033: When the motor 40 moves to the second limit position, it is determined to enter the second reset state.

[0056] In some embodiments, the determination module 12 is used to execute step 031 and step 033. That is, the determination module 12 is used to determine that the first reset state is entered when the motor 40 moves to the first limit position, and to determine that the second reset state is entered when the motor 40 moves to the second limit position.

[0057] In some embodiments, the processor 20 is used to execute step 031 and step 033. That is, the processor 20 is used to determine that the first reset state is entered when the motor 40 moves to the first limit position; and to determine that the second reset state is entered when the motor 40 moves to the second limit position.

[0058] Specifically, the preset limit position of the moving stroke includes a first limit position and a second limit position. When the processor 20 determines to enter the first reset state, the first limit position can be determined as the maximum position in the positive direction, and when the processor 20 determines to enter the second reset state, the first limit position can be determined as the maximum position in the negative direction. The preset position is located between the first limit position and the second limit position. Figure 4As shown, the first limit position is point A, the second limit position is point B, and the preset position can be point O (i.e., the midpoint between point A and point B), or any point between point A and point B. Preferably, the preset position is point O, which ensures that when the motor 40 is at point O, the motor 40 has the same anti-shake compensation capability in both the positive and negative directions.

[0059] More specifically, see Figure 4 When the processor 20 determines the first reset state, the motor 40 is located at the first limit position, that is, point A. At this time, the distance from the maximum position of the deflection control amount in the positive direction to the preset position can be determined, that is, L1. When the processor 20 determines the second reset state, the motor 40 is located at the second limit position, that is, point B. At this time, the distance from the maximum position of the deflection control amount in the negative direction to the preset position can be determined, that is, L2.

[0060] Thus, when the processor 20 determines that the motor 40 enters the reset state, that is, when the processor 20 controls the motor 40 to move beyond the limit position according to the integral control amount, there are two situations:

[0061] When the motor 40 moves to the first limit position, it can be determined that it enters the first reset state; when the motor 40 moves to the second limit position, it can be determined that it enters the second reset state. Figure 4 When the first limit position is the maximum positive position, that is, point A, the deflection control amount is equal to L1, then the first reset state is the positive reset state, and the processor 20 controls the motor 40 to reset from the maximum positive position (point A) to the preset position (point O); when the second limit position is the maximum negative limit position, that is, point B, the deflection control amount is equal to L2, then the second reset state is the negative reset state, and the processor 20 controls the motor 40 to reset from the maximum negative position (point B) to the point O.

[0062] See also Figure 2 , Figure 3 and Figure 5 In some embodiments, part of step 05: determining the deflection control amount according to the reset state so that the motor 40 is reset to a preset position of the moving stroke according to the deflection control amount, comprises the steps of:

[0063] 051: Obtaining a mapping relationship between a reset state and a deflection control amount; and

[0064] 053: Determine the deflection control amount according to the current moment and the mapping relationship.

[0065] In some embodiments, the reset module 13 is used to execute step 051 and step 053. That is, the reset module 13 is used to obtain a mapping relationship between the reset state and the deflection control amount; and determine the deflection control amount according to the current time and the mapping relationship.

[0066] In some implementations, the processor 20 is used to execute step 051 and step 053. That is, the processor 20 is used to obtain a mapping relationship between the reset state and the deflection control amount; and determine the deflection control amount according to the current moment and the mapping relationship.

[0067] Specifically, when the processor 20 determines the deflection control amount according to the reset state, the processor 20 may first obtain a mapping relationship between the reset state and the deflection control amount according to the reset state, and then determine the deflection control amount according to the current time and the mapping relationship.

[0068] According to the above, the reset state includes the first reset state and the second reset state. Figure 6 The processor 20 can obtain a first mapping relationship corresponding to the first reset state according to the first reset state, and can also obtain a second mapping relationship corresponding to the second reset state according to the second reset state. The first mapping relationship and the second mapping relationship have opposite changing trends.

[0069] According to the above, it can also be known that the deflection control amount can reflect the current position of the motor 40. When the processor 20 determines to enter the first reset state, the motor 40 is located in the maximum positive direction, and the deflection control amount is the distance from the maximum positive direction to the preset position; and when the processor 20 determines to enter the second reset state, the motor 40 is located in the maximum positive direction, and the deflection control amount is the distance from the maximum negative direction to the preset position.

[0070] Taking the time when the processor 20 determines to enter the reset state as time zero as an example, at this time, the deflection control amount is the distance from the maximum positive direction to the preset position or the distance from the maximum negative direction to the preset position.

[0071] Please combine Figure 4 Taking point O as the zero point, point A as the maximum positive position, and point B as the maximum negative position as an example, it can be understood that when the processor 20 determines to enter the first reset state, in the process of resetting to the preset position according to the deflection control amount, the deflection control amount gradually decreases, and when the processor 20 determines to enter the second reset state, in the process of resetting to the preset position according to the deflection control amount, the deflection control amount gradually increases.

[0072] For example, the first mapping relationship is F(x)=x-0.1t, and the second mapping relationship is F(x)=x+0.1t, where F(x) is the deflection control amount at the current moment, x is the deflection control amount when the processor 20 determines to enter the reset state, and t is time.

[0073] It can be seen that when the processor 20 determines to enter the first reset state, the deflection control amount is a positive number, and when the processor determines to enter the second reset state, the deflection control amount is a negative number. In this way, the change trends of the first mapping relationship and the second mapping relationship are opposite.

[0074] For example, the distance from the maximum positive position to the preset position is 1, and the distance from the maximum negative position to the preset position is -1.

[0075] When t=0, that is, when the processor 20 determines to enter the reset state, if it is determined to enter the first reset state, F(x)=1, that is, the deflection control amount at time 0 is 1; if it is determined to enter the second reset state, F(x)=-1, that is, the deflection control amount at time 0 is -1.

[0076] When t=1, that is, the motor resets and moves according to the deflection control amount for one second, if it is determined that the first reset state is entered, then F(x)=1-0.1=0.9, that is, after one second, the deflection control amount at the current moment is 0.9; if it is determined that the second reset state is entered, then F(x)=-1+0.1=-0.9, that is, after one second, the deflection control amount at the current moment is -0.9. It can be understood that every second, the motor 40 moves a distance of 0.1 to the preset position until F(x)=0, which means that the motor moves to the preset position.

[0077] In this way, the processor 20 can determine the deflection control amount according to the current time and the mapping relationship.

[0078] In certain embodiments, Figure 7 As shown, it can be seen that when the motor 40 is in the first reset state, for example, when the current moment is t1, the deflection control amount is 1.5, and when the current moment is t2, the deflection control amount is 1. It can be understood that the deflection control amount corresponding to each moment on the first deflection control curve is different. Similarly, when the motor 40 is in the second reset state, for example, when the current moment is t4, the deflection control amount is -1.5, and when the current moment is t45, the deflection control amount is -1. It can be understood that the deflection control amount corresponding to each moment on the second deflection control curve is different.

[0079] See also Figure 2 , Figure 3 and Figure 8 In some embodiments, step 07: in the reset state, controlling the movement of the motor 40 according to the integral control amount and the deflection control amount comprises the steps of:

[0080] 071: When it is determined that the reset state has been entered, the acquired integral control amount is cleared to zero, and the integral control amount is acquired again;

[0081] 073: Calculate the target control amount according to the reacquired integral control amount and deflection control amount; and

[0082] 075: Control the movement of the motor 40 according to the target control amount.

[0083] In some embodiments, the control module 14 is used to execute step 071, step 073, and step 075. The control module 14 is used to clear the acquired integral control amount and reacquire the integral control amount when determining to enter the reset state; calculate the target control amount according to the reacquired integral control amount and the deflection control amount; and control the movement of the motor 40 according to the target control amount.

[0084] In some embodiments, the processor 20 is used to execute step 071, step 073, and step 075. That is, the processor 20 is used to clear the acquired integral control amount and reacquire the integral control amount when it is determined that the reset state has been entered; calculate the target control amount according to the reacquired integral control amount and the deflection control amount; and control the movement of the motor 40 according to the target control amount.

[0085] Specifically, when the processor 20 determines to enter the reset state, the processor 20 first clears the integral control amount obtained for the first time and re-acquires the integral control amount. As can be seen from the above, the integral control amount represents the degree of jitter that occurs when the user uses the terminal 100. In this way, when the processor 20 clears the integral control amount obtained for the first time and re-acquires the integral control amount, if the re-acquired integral control amount is not zero, it means that the terminal 100 still has a certain degree of jitter.

[0086] When the re-acquired integral control amount is not zero, the processor 20 needs to calculate the target control amount according to the re-acquired integral control amount and the deflection control amount.

[0087] See also Fig. 9 , the target control amount is the sum of the deflection control amount and the integral control amount. Taking the motor 40 in the first reset state as an example, when the motor 40 just enters the first reset state, the deflection control amount is the maximum stroke in the positive direction, such as 1.0°. At this time, the integral control amount obtained for the first time is cleared, and the target control amount is equal to the maximum stroke in the positive direction. If the processor 20 re-acquires the integral control amount, and the integral control amount is not zero, the following four situations will occur:

[0088] 1. The integral control amount is greater than zero, such as the integral control amount is 0.2°, the deflection control amount is 1.0°, and the maximum stroke in the positive direction is 1.0°, then the sum of the integral control amount and the deflection control amount is greater than the maximum stroke in the positive direction, that is, the target control amount is greater than the maximum stroke in the positive direction. At this time, the processor 20 controls the movement of the motor 40 according to the target control amount, and controls the motor 40 to remain at the maximum stroke position in the positive direction, and resets the reset state, that is, re-enters the first reset state, then the deflection control amount is reset to 1.0, and the integral control amount is cleared, and the cycle continues until the sum of the integral control amount and the deflection control amount is less than or equal to the maximum stroke in the positive direction, that is, the target control amount is less than or equal to the maximum stroke in the positive direction, and the processor 20 controls the motor 40 to gradually move from the current position to the preset position of the moving stroke, that is, the return position.

[0089] 2. The integral control amount is greater than zero, and the sum of the integral control amount and the deflection control amount is less than the maximum stroke in the positive direction, that is, the target control amount is less than the maximum stroke in the positive direction. The processor 20 controls the motor 40 to move to the target control amount position according to the target control amount. For example, if the integral control amount is 0.1° and the deflection control amount is 0.8°, that is, the target control amount is 0.9°, the processor 20 controls the motor 40 to move to the 0.9° position to ensure the anti-shake capability, and then moves from the 0.9° position to the preset position of the moving stroke, that is, the return position.

[0090] 3. The integral control amount is less than zero, such as the integral control amount is -0.2, the deflection control amount is 0.8, the maximum stroke in the positive direction is 1.0°, and the sum of the integral control amount and the deflection control amount is less than the maximum stroke in the positive direction, that is, the target control amount is less than the maximum stroke in the positive direction. The processor 20 controls the motor 40 to move to the target control amount position according to the target control amount, that is, to the 0.6° position, to ensure the anti-shake capability, and then moves from the 0.6° position to the preset position of the moving stroke, that is, the return position.

[0091] 4. The integral control amount is much less than zero, such as the integral control amount is -2°, the deflection control amount is 0.8°, the maximum stroke in the negative direction is -1.0°, and the sum of the integral control amount and the deflection control amount is less than the maximum stroke in the negative direction, that is, the target control amount is less than the maximum stroke in the negative direction. The processor 20 controls the motor 40 to move to the target control amount position according to the target control amount, and the target control amount is less than the maximum stroke in the negative direction. The processor 20 can only control the motor 40 to move to the preset limit position of the moving stroke, that is, the -1.0° position, according to the target control amount, and reset the reset state. At this time, it means that the first reset state is switched to the second reset state, and the deflection control amount is reset to the maximum stroke in the negative direction, and the integral compensation amount is cleared, and the cycle continues until the sum of the integral control amount and the deflection control amount is less than or equal to the maximum stroke in the negative direction, that is, the target control amount is less than or equal to the maximum stroke in the negative direction, and the processor 20 controls the motor 40 to gradually move from the current position to the preset position of the moving stroke, that is, the return position.

[0092] More specifically, please combine Fig.10 When the processor 20 controls the motor 40 of the terminal 100 to move to the first limit position of the preset moving stroke (such as the maximum stroke position in the positive direction) according to the target control amount, the processor 20 resets the reset state to the first reset state (positive reset state); when the processor 20 controls the motor 40 of the terminal 100 to move to the second limit position of the preset moving stroke (such as the maximum stroke position in the negative direction) according to the target control amount, the processor 20 resets the reset state to the second reset state (negative reset state).

[0093] Please combine Figure 4 and Figure 7 , the first reset state is a positive reset, and the second reset state is a negative reset for illustration, wherein the curve output by the algorithm can reflect the speed and position of the actual control motor 40 to move:

[0094] First, according to the curve of the integral control amount, it can be found that before time t1, the integral control amount is always located at the preset position of the preset moving stroke of the motor 40 (i.e., the return center position, near point O). At this time, the deflection control amount is zero, and the processor 20 controls the motor 40 to move near the return center position according to the integral control amount.

[0095] At time t1, it can be seen that the integral control amount increases, so that the processor 20 controls the motor 40 to move to the preset limit position of the moving stroke according to the integral control amount. At this time, the integral control amount is greater than the maximum stroke in the positive direction, that is, L1, and it is determined to enter the first reset state. At this time, the processor 20 clears the integral control amount, and the deflection control amount is the maximum stroke in the positive direction, that is, L1.

[0096] From the curve of the integral control amount at the moment t1 to t2, it can be seen that the integral control amount re-obtained after being cleared is still greater than 0, and the sum of the integral control amount and the deflection control amount, that is, the target control amount, is greater than the maximum stroke in the positive direction, and the processor 20 continuously clears the integral control amount and re-obtains the integral control amount. According to the algorithm output curve, it can be seen that the processor 20 controls the motor 40 to always remain at the limit position in the positive direction and resets the first reset state, and the re-determined deflection control amount is still the maximum stroke in the positive direction, that is, L1.

[0097] At time t2, it can be seen that the integral control amount is cleared, and from time t2 to t3, the integral control amount is less than 0, and the sum of the integral control amount and the deflection control amount, that is, the target control amount, is less than the maximum stroke in the positive direction. The processor 20 controls the motor 40 to move back to the center position according to the target control amount, and the deflection control amount gradually decreases, that is, the motor 40 starts to reset.

[0098] At time t3, it can be seen that the reacquired integral control amount increases again, so that the sum of the deflection control amount and the integral control amount at time t3, that is, the target control amount, is again greater than the maximum stroke in the positive direction. The processor 20 begins to continuously clear the integral control amount and reacquire the integral control amount. According to the algorithm output curve, the processor 20 controls the motor 40 to always remain at the limit position in the positive direction and resets the first reset state. The re-determined deflection control amount is still the maximum stroke in the positive direction, that is, L1, until the sum of the integral control amount and the deflection control amount, that is, the target control amount, is less than the maximum stroke in the positive direction. According to the algorithm output, it can be seen that the processor 20 controls the motor 40 to move back to the center position according to the target control amount, and the deflection control amount gradually decreases, that is, the motor 40 begins to reset.

[0099] At time t4, according to the curve of the integral control amount, it can be seen that the integral control amount is much less than zero, so that the integral control amount and the deflection control amount, that is, the target control amount, are less than the maximum stroke in the negative direction. The processor 20 clears the integral control amount and re-acquires the integral control amount. According to the algorithm output curve, the processor 20 first controls the motor 40 to quickly move to the limit position in the negative direction, that is, point B, according to the target control amount, and switches from the first reset state to the second reset state. The re-determined deflection control amount is the maximum stroke in the negative direction, that is, L2.

[0100] At time t4 to t5, the integral control amount is greater than zero, so that the integral control amount and the deflection control amount, that is, the target control amount, are greater than the maximum stroke in the negative direction. At this time, the processor 20 controls the motor 40 to move back to the center position according to the target control amount, and the deflection control amount gradually increases, that is, the motor 40 starts to reset.

[0101] See also Figure 2 , Figure 3 and Fig.11 The control method of the embodiment of the present application further includes the steps of:

[0102] 09: When the motor 40 is controlled to move to a preset position, the reset state is exited, and the motor 40 is controlled to move according to the integral control amount.

[0103] In some embodiments, the control device 10 further includes an exit module 15, which is used to execute step 09. That is, the exit module 15 is used to exit the reset state when the motor 40 is controlled to move to a preset position, and control the motor 40 to move according to the integral control amount.

[0104] In some embodiments, the processor 20 is used to execute step 09. That is, the processor 20 is used to exit the reset state when the motor 40 is controlled to move to a preset position, and control the motor 40 to move according to the integral control amount.

[0105] Specifically, in the reset state, the processor 20 controls the motor 40 according to the integral control amount and the deflection control amount, that is, after the processor 20 controls the motor 40 to move, when the motor 40 is reset to the preset position of the moving stroke according to the deflection control amount, the processor 20 knows that the motor 40 has completed the reset, and thus exits the reset state. After exiting the reset state, when the processor 20 controls the motor 40 to move again, it controls the motor 40 to move according to the integral control amount.

[0106] The preset position of the moving stroke is the center position of the moving stroke. When the motor 40 moves to the preset position, the anti-shake compensation capability of the motor 40 in the positive and negative directions of the preset position is the same. At this time, the motor 40 will exit the anti-shake state, that is, change to the normal anti-shake state.

[0107] As can be seen from the above, the integral compensation amount can reflect the degree of shaking of the terminal 100. When performing normal anti-shake compensation, the processor 20 controls the movement of the motor 40 according to the integral compensation amount.

[0108] according to Figure 7 It can be seen that at time t5, the deflection control amount is 0, that is, the motor 40 is reset to the preset position of the moving stroke according to the deflection control amount. At this time, it exits the reset state to perform normal anti-shake compensation. According to time t5 to t6, it can be seen that the integral control amount is small, and the processor 20 only controls the movement of the motor 40 according to the integral control amount.

[0109] See also Fig.12 The present application also provides a non-volatile computer-readable storage medium 300 including a computer program 301. When the computer program 301 is executed by one or more processors 20, the one or more processors 20 execute the control method of any of the above embodiments.

[0110] For example, when the computer program 301 is executed by one or more processors 20, the processor 20 performs the following control method:

[0111] 01: Obtain a jitter signal of the terminal 100 to determine an integral control amount; and

[0112] 03: When the motor 40 of the terminal 100 is moved to a limit position of a preset moving stroke according to the integral control amount, it is determined to enter a reset state;

[0113] 05: Determine the deflection control amount according to the reset state, so that the motor 40 is reset to a preset position of the moving stroke according to the deflection control amount; and

[0114] 07: In the reset state, the movement of the motor 40 is controlled according to the integral control amount and the deflection control amount.

[0115] In the description of this specification, the descriptions with reference to the terms "certain embodiments", "in an example", "exemplarily", etc., mean that the specific features, structures, materials or characteristics described in conjunction with the embodiments or examples are included in at least one embodiment or example of the present application. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine the different embodiments or examples described in this specification and the features of the different embodiments or examples, unless they are contradictory.

[0116] Any process or method description in a flowchart or otherwise described herein may be understood to represent a module, segment or portion of code that includes one or more executable instructions for implementing the steps of a specific logical function or process, and the scope of the preferred embodiments of the present application includes alternative implementations in which functions may not be performed in the order shown or discussed, including performing functions in a substantially simultaneous manner or in the reverse order depending on the functions involved, which should be understood by technicians in the technical field to which the embodiments of the present application belong.

[0117] Although the embodiments of the present application have been shown and described above, it can be understood that the above embodiments are exemplary and cannot be understood as limitations on the present application. Ordinary technicians in this field can change, modify, replace and modify the above embodiments within the scope of the present application.

Claims

1. A control method, characterized in that: include: Obtain the jitter signal of the terminal to determine the integral control amount; In the case where the motor is controlled to move to a limit position of a preset moving stroke according to the integral control amount, determining to enter a reset state; determining a deflection control amount according to the reset state, so that the motor is reset to a preset position of the moving stroke according to the deflection control amount; and In the reset state, controlling the movement of the motor according to the integral control amount and the deflection control amount; In the reset state, controlling the motor movement according to the integral control amount and the deflection control amount includes: In the case of determining to enter the reset state, clearing the acquired integral control amount to zero, and reacquiring the integral control amount; When the reacquired integral control amount is not zero, calculating a target control amount according to the reacquired integral control amount and the deflection control amount; and The motor movement is controlled according to the target control amount.

2. The control method according to claim 1, characterized in that: The limit position includes a first limit position and a second limit position, the preset position is located between the first limit position and the second limit position, the reset state includes a first reset state and a second reset state, and when the motor of the terminal is controlled to move to the limit position of the preset moving stroke according to the integral control amount, determining to enter the reset state includes: When the motor moves to the first limit position, determining to enter the first reset state; When the motor moves to the second limit position, it is determined to enter the second reset state.

3. The control method according to claim 2, characterized in that: When entering the first reset state, determining the first limit position as the maximum position in the positive direction, and determining the deflection control amount according to the reset state so that the motor is reset to the preset position of the moving stroke according to the deflection control amount, include: The motor is controlled to reset from the maximum position in the positive direction to a preset position of the moving stroke.

4. The control method according to claim 2, characterized in that: When entering the second reset state, determining the second limit position as the maximum position in the negative direction, and determining the deflection control amount according to the reset state so that the motor is reset to the preset position of the moving stroke according to the deflection control amount, include: The motor is controlled to reset from the maximum position in the negative direction to a preset position of the moving stroke.

5. The control method according to claim 2, characterized in that: The step of determining the deflection control amount according to the reset state comprises: Acquire a mapping relationship between the reset state and the deflection control amount; The deflection control amount is determined according to the current moment and the mapping relationship.

6. The control method according to claim 5, characterized in that: The acquiring of a deflection control curve corresponding to the reset state comprises: In the first reset state, acquiring a first mapping relationship corresponding to the first reset state; or In the second reset state, acquiring a second mapping relationship corresponding to the second reset state, wherein the first mapping relationship and the second mapping relationship have opposite change trends; The step of determining the deflection control amount according to the current moment and the deflection control curve includes: In the first reset state, determining the deflection control amount according to the current moment and the first mapping relationship; or In the second reset state, the deflection control amount is determined according to the current time and the second mapping relationship.

7. The control method according to claim 1, characterized in that: The step of calculating the target control amount according to the reacquired integral control amount and the deflection control amount comprises: Determining the target control amount as the sum of the deflection control amount and the integral control amount; The controlling the motor movement according to the target control amount comprises: In the case where the motor of the terminal is controlled to move to a limit position of a preset moving stroke according to the target control amount, the reset state is reset, and the deflection control amount is re-determined according to the reset state after the reset.

8. The control method according to claim 7, characterized in that: The limit position includes a first limit position and a second limit position, the reset state includes a first reset state and a second reset state, and when the motor of the terminal is controlled to move to the limit position of a preset moving stroke according to the target control amount, resetting the reset state includes: Under the condition that the motor of the terminal is controlled to move to the first limit position of the preset moving stroke according to the target control amount, resetting the reset state to the first reset state; When the motor of the terminal is controlled to move to the second limit position of a preset moving stroke according to the target control amount, the reset state is reset to the second reset state.

9. The control method according to claim 7, characterized in that: The re-determining the deflection control amount according to the reset state after the reset includes: Acquiring a deflection control curve corresponding to the reset state after reset; and The deflection control amount is determined according to the current time and the deflection control curve.

10. The control method according to claim 1, characterized in that: Also includes: When the motor is controlled to move to the preset position, the reset state is exited, and the motor is controlled to move according to the integral control amount.

11. A control device, characterized in that: include: An acquisition module, the acquisition module is used to acquire a jitter signal of the terminal to determine an integral control amount; A determination module, the determination module being used to determine to enter a reset state when the motor of the terminal is controlled to move to a limit position of a preset moving stroke according to the integral control amount; A reset module, the reset module is used to determine a deflection control amount according to the reset state, so that the motor is reset to a preset position of the moving stroke according to the deflection control amount; A control module, the control module is used to control the movement of the motor according to the integral control amount and the deflection control amount during the resetting process; The control module is further configured to clear the acquired integral control amount to zero and reacquire the integral control amount when it is determined that the reset state has been entered; When the reacquired integral control amount is not zero, calculating a target control amount according to the reacquired integral control amount and the deflection control amount; and The motor movement is controlled according to the target control amount.

12. A terminal, characterized in that: comprising a processor configured to: Acquiring a jitter signal of the terminal to determine an integral control amount; In the case where the motor of the terminal is controlled to move to a limit position of a preset moving stroke according to the integral control amount, determining to enter a reset state; determining a deflection control amount according to the reset state, so that the motor is reset to a preset position of the moving stroke according to the deflection control amount; and During the resetting process, the motor movement is controlled according to the integral control amount and the deflection control amount; The processor is further configured to, when determining to enter the reset state, clear the acquired integral control amount to zero and reacquire the integral control amount; When the reacquired integral control amount is not zero, calculating a target control amount according to the reacquired integral control amount and the deflection control amount; and controlling the motor movement according to the target control amount.

13. A non-volatile computer-readable storage medium comprising a computer program, wherein when the computer program is executed by a processor, the processor executes the control method according to any one of claims 1 to 10.

Citation Information

Patent Citations

  • Semiconductor device and electronic device

    CN110035222A