A camera module multi-axis control and correction system
By introducing a microcontroller and a nonlinear compensation module into the camera module, multi-axis motion control is optimized, solving the problems of high cost and high power consumption in the existing technology, and realizing efficient multi-axis control and camera tracking functions.
Patent Information
- Application Number
- CN202310106641.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-02-13
- Publication Date
- 2025-11-04
- Estimated Expiration
- 2043-02-13
AI Technical Summary
Existing multi-axis control algorithms and systems only support linear multi-axis motors, resulting in high system cost and power consumption when dealing with nonlinear problems, and they cannot effectively support camera tracking functions.
The system employs a microcontroller, multi-axis drive circuit, and multi-axis motor. It combines a multi-axis angle calculation module and a nonlinear compensation module to calculate the output value through nonlinear compensation equations, thereby optimizing multi-axis motion control, reducing errors, and improving system compatibility.
It reduces system cost and power consumption, improves the accuracy and consistency of multi-axis control, supports various multi-axis motors, and enhances the effect of camera tracking.
Smart Images

Figure CN116131690B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present invention relates to the technical field of camera module and control and auto-correction system of multi-axis motor. BACKGROUND
[0002] The motor referred in the present invention means the actuator composed of multiple magnets and coils, such as voice coil motor and servo motor.
[0003] In recent years, small mobile devices with shooting function are very popular, and the application range is also expanding, including smart phones, smart glasses, action cameras, law enforcement recorders and car recorders. In the small mobile devices, at least one zoom, auto-focus or fixed-focus small camera module is included. Therefore, the market of the module is very large, and the growth is also steadily rising.
[0004] When taking pictures and videos, the photos and videos taken by the small mobile devices may be blurred or shaky due to external vibration, affecting the quality of the photos and videos. When the vibration is more intense, or in low light conditions, the problem will be more serious.
[0005] In order to solve the above problems, many different anti-shake technologies have appeared in the market, which can effectively reduce the photo blur and video jitter caused by shaking, and improve the quality of photos and videos. The anti-shake technology requires anti-shake control and auto-correction algorithm and system. The existing mainstream anti-shake algorithm and system are divided into two categories. The first category is linear algorithm and system, which can achieve ideal anti-shake effect when cooperating with linear motor. The second category is to realize linear compensation in a discontinuous manner, which can provide certain linear compensation effect and support non-linear motor.
[0006] The first category of algorithm and system only supports linear multi-axis motor, which has a great limitation on motor design. If the motor has a large non-linear problem due to design or manufacturing error, the algorithm and system cannot provide better anti-shake effect, affecting the image quality and video stability. The second category of algorithm and system uses discontinuous linear compensation, so the error of linear compensation will be larger, resulting in suboptimal anti-shake effect. When the anti-shake system uses the second category of algorithm, the anti-shake system needs a large number of points to reduce the error. However, a large number of points lead to more calculation capacity and memory required by the algorithm, resulting in the increase of the cost and power consumption of the system.
[0007] In addition, some cameras require tracking function, which requires changing the direction of the camera to achieve the effect of tracking the target. The camera also requires the multi-axis motor and precise control system to achieve good tracking effect. SUMMARY
[0008] In view of the above, the present application aims to solve the technical problems of the prior art, and proposes a camera module multi-axis control and correction system.
[0009] To solve the technical problems of the prior art, the technical solution adopted by the present application is as follows:
[0010] A camera module multi-axis motion control system comprises a microcontroller, a multi-axis drive circuit and a multi-axis motor. After receiving a target multi-axis motion angle, the microcontroller calculates a target output value. The multi-axis drive circuit adjusts an output drive voltage according to the output value output by the microcontroller. The multi-axis motor changes the multi-axis motion angle of the lens to perform multi-axis motion control according to the drive voltage or current output by the multi-axis drive circuit. The microcontroller comprises a multi-axis angle calculation module and at least one nonlinear compensation module. The multi-axis angle calculation module reads a multi-axis motion angle and calculates a target multi-axis motion angle (u) and provides it to the nonlinear compensation module. The nonlinear compensation module comprises a plurality of equations as follows:
[0011]
[0012]
[0013]
[0014] The nonlinear compensation equation is as follows: represents a natural number (Natural Number) not containing zero, represents a real number (Real Number), each nonlinear compensation equation comprises an output value (v i ), a plurality of parameters (a i ) and a plurality of input values (u). After the nonlinear compensation equation and the plurality of input values are used, the plurality of output values are calculated and provided to the multi-axis drive circuit.
[0015] When the multi-axis motor is a 2-axis open-loop nonlinear multi-axis motor, the 2-axis open-loop nonlinear multi-axis motor can drive the lens to perform two-axis rotation multi-axis motion, corresponding to the multi-axis motion angles of the x and y axes, respectively. The nonlinear compensation equation comprises a cubic function, that is:
[0016] v1=f1(a1,u)=a 1,1 u1 3 u2 3 +a 1,2 u1 2 u23 +…+a 1,k u1 r u2 s +…+a 1,15 u2+a 1,16 ,
[0017] v2=f2(a2,u)=a 2,1 u1 3 u2 3 +a 2,2 u1 2 u2 3 +…+a 2,k u1 r u2 s +…+a 2,15 u2+a 2,16 ,
[0018]
[0019] u1 is the x-multi-axis motor movement angle; u2 is the y-multi-axis motor movement angle; represents a natural number containing zero; v1 is the x-drive voltage; v2 is the y-drive voltage.
[0020] When the multi-axis motor is a 2-axis closed-loop nonlinear multi-axis motor; the 2-axis closed-loop nonlinear multi-axis motor contains two position sensors (for example: Hall sensors), corresponding to the multi-axis movement angles of x and y axes respectively; the nonlinear compensation equation contains a linear function and a cubic root function, that is:
[0021] v3=f3(a3,u)=a 3,1 u1 1 u2 1 +a 3,2 u1 1 / 3 u2 1 +…+a 3,9 ,
[0022] v4=f4(a4,u)=a 4,1 u1 1 u2 1 +a 4,2 u1 1 / 3 u2 1 +…+a 4,9
[0023] v3 is the target voltage of the x-position sensor; v4 is the target voltage of the y-position sensor.
[0024] A camera module multi-axis control correction system, characterized in that the correction system comprises a camera module multi-axis control system, further comprising a target pattern, an image sensor and an electronic computer; the electronic computer changes the control of the multi-axis motor through the microcontroller and reads the image signal of the image sensor, optimizes the parameters (a i ) in the camera module multi-axis control system; the target pattern is a dot, when the electronic computer changes the control of the multi-axis motor (p j ), the dot changes the position in the collected image, according to the center position of the dot in the image, the diameter of the dot and the distance between the camera module lens and the target, the motion angle (q i,j ) of the multi-axis motor is calculated, the control is repeatedly changed, the motion angle is calculated and the control and the motion angle are recorded, and the following correction optimization equation is implemented:
[0025]
[0026]
[0027] q i,j is the jth measured output value corresponding to v i , p j,k is the jth measured input value corresponding to u k .
[0028] The optimized parameters a i are calculated; finally, the optimized parameters a i are stored in the driving chip.
[0029] The dot of the target pattern is replaced by a plurality of square dots, each dot comprising a two-dimensional identification code, so that the electronic computer can distinguish different target patterns and be used for calculating the multi-axis angle and displacement of the multi-axis motor.
[0030] The target pattern further comprises two straight lines; each straight line exceeds at least one side in the image read by the camera module lens, and the two straight lines are used for calculating the roll direction angle of the multi-axis motor.
[0031] The plurality of input values (u) are input voltage, analog-digital converter value, motor angle or displacement stroke; the plurality of output values (v i ) are output current, output voltage or digital-analog converter value; and the position sensor is a feedback sensor in the multi-axis motor or a position sensor externally arranged outside the motor.
[0032] The camera module multi-axis control system has the following beneficial effects: the camera module multi-axis control system adopts a continuous equation: v i = f(a i, u), the error in the non-continuous linear compensation equation (for example, linear interpolation) does not occur. In addition, the camera module multi-axis control system does not require too much computing power and memory for the operation, which can effectively reduce the cost and power consumption of the system. The camera module multi-axis control correction system of the present application collects multiple sensor signals and finds the optimal control parameters to reduce the error to near the theoretical minimum value. Therefore, the camera module multi-axis control correction system of the present application can reduce the correction error caused by sensor or control error, and improve the effect of multi-axis control. Finally, since the present application can support different continuous nonlinear models, it can support a variety of different multi-axis motors, such as the multi-axis motors disclosed in CN110500479B, CN113446485A, CN107340667B and CN115047581A, improve the compatibility of the system of the present application, improve the accuracy and consistency of multi-axis control, and reduce the design restrictions of the motor. BRIEF DESCRIPTION OF DRAWINGS
[0033] Figure 1 The multi-axis control effect diagram obtained by calculating the driving voltage according to the motion angle by using the nonlinear compensation module of the present application;
[0034] Figure 2 The multi-axis control effect diagram obtained by using a linear control algorithm;
[0035] Figure 3 The structure diagram of the camera module multi-axis control system of the present application;
[0036] Figure 4 The structure diagram of the camera module multi-axis control system of the present application when including a vibration sensor;
[0037] Figure 5 The structure diagram of the camera module multi-axis control correction system of the present application;
[0038] Figure 6 The correction control workflow diagram of the camera module multi-axis control correction system of the present application;
[0039] Figure 7 The pattern when the target pattern adopts multiple four-point dots, each dot containing a two-dimensional identification code;
[0040] Figure 8 The pattern when the target pattern adopts a circular dot and two straight lines. DETAILED DESCRIPTION
[0041] The preferred embodiments of the present application are further described below in combination with the drawings.
[0042] REFERENCE Figure 3As shown, this invention discloses a multi-axis control system for a camera module, comprising a microcontroller, a multi-axis drive circuit, and a multi-axis motor. After receiving the target multi-axis motion angle, the microcontroller calculates the target drive voltage. The multi-axis drive circuit outputs a drive voltage based on the target drive voltage output by the microcontroller. The multi-axis motor changes the lens multi-axis motion angle according to the drive voltage output by the multi-axis motion drive circuit to perform multi-axis control. The multi-axis drive circuit and the microcontroller are integrated into a single drive chip, reducing circuit cost and size. The microcontroller includes at least one nonlinear compensation module; this at least one nonlinear compensation module reads the multi-axis motion angle (u) and calculates at least one output value (v). i The nonlinear compensation module contains multiple nonlinear compensation equations; each nonlinear compensation equation contains an output value (v). i ), multiple parameters (a i The equations are: and multiple input values (u), and each nonlinear compensation equation is:
[0043]
[0044]
[0045]
[0046] Represents natural numbers that do not contain zero. This represents a real number. By using the above nonlinear compensation equation and inputting multiple input values, the multiple output values can be calculated.
[0047] When the multi-axis motor is a 2-axis open-loop nonlinear multi-axis motor; the 2-axis open-loop nonlinear multi-axis motor can drive the lens to perform two-axis rotational multi-axis motion, corresponding to the multi-axis motion angles of the x and y axes respectively; the nonlinear compensation equation contains a cubic function, that is:
[0048] v1 = f1(a1, u) = a 1,1 u1 3 u2 3 +a 1,2 u1 2 u2 3 +…+a 1,k u1 r u2 s +…+a 1,15 u2+a 1,16 ,
[0049] v2=f2(a2,u)=a 2,1 u1 3 u2 3+a 2,2 u1 2 u2 3 +…+a 2,k u1 r u2 s +…+a 2,15 u2+a 2,16 ,
[0050]
[0051] u1 is the x-multi-axis motor movement angle; u2 is the y-multi-axis motor movement angle; represents a natural number containing zero; v1 is the x-drive voltage; v2 is the y-drive voltage. Through the above algorithm, the non-linear problem of motor drive can be compensated, that is, the relationship between the movement angle and the drive voltage is not linear. As shown in Figure 1 , using the above continuity equation in the present application, the drive voltage can be calculated more accurately according to the movement angle, achieving better open-loop multi-axis movement effect. As shown in Figure 2 , if a linear control algorithm is used, the multi-axis control error will be large, affecting the multi-axis movement effect.
[0052] And when the multi-axis motor is a 2-axis closed-loop nonlinear multi-axis motor, for example: CN115047581A discloses a multi-axis motor; the 2-axis closed-loop nonlinear multi-axis motor includes two position sensors corresponding to the x and y-axis multi-axis movement angles; the nonlinear compensation equation includes a linear function and a cubic root function, that is:
[0053] v3=f3(a3,u)=a 3,1 u1 1 u2 1 +a 3,2 u1 1 / 3 u2 1 +…+a 3,9 ,
[0054] v4=f4(a4,u)=a 4,1 u1 1 u2 1 +a 4,2 u1 1 / 3 u2 1 +…+a 4,9
[0055] v3 is the target voltage of the x-position sensor; v4 is the target voltage of the y-position sensor.
[0056] By the above algorithm, the non-linear problem of the position sensor in the motor can be compensated, that is, the relationship between the motion angle and the voltage output by the position sensor is not linear. If a linear control algorithm is used, the multi-axis control error will be large, affecting the multi-axis motion effect. By using the above continuity equation in the application, the voltage output by the position sensor can be more accurately calculated according to the motion angle, achieving better closed-loop multi-axis motion effect.
[0057] Preferably, the above four equations can be simplified according to the situation, for example, some terms are deleted, for example: i,k u1 r u2 s , reducing the required operation capability and memory, achieving the effect of power saving and cost reduction.
[0058] Preferably, as shown in Figure 4 , a camera module anti-shake control system, based on Figure 3 , further comprises a vibration sensor (such as a gyroscope), the vibration sensor provides a vibration signal to the microcontroller, the multi-axis angle calculation module in the microcontroller calculates and outputs the multi-axis motion angle according to the vibration signal, the at least one non-linear compensation module calculates and outputs the target drive voltage according to the multi-axis motion angle, the multi-axis drive circuit outputs the drive voltage according to the target drive voltage output by the microcontroller, and the multi-axis motor changes the multi-axis motion angle of the lens to control the multi-axis motion according to the drive voltage output by the multi-axis drive circuit.
[0059] As shown in Figure 5 , the application is a camera module multi-axis control correction system, which comprises the camera module multi-axis control system, further comprising a target pattern 1, an image sensor and an electronic computer 2; the electronic computer 2 changes the control of the multi-axis motor 4 of the camera module lens 5 through the microcontroller 3, reads the image signal of the image sensor, and optimizes the parameters (a i ) in the camera module multi-axis control system 6; the target pattern can be a dot, as shown in Figure 6 , when the electronic computer changes the control (p j ) of the multi-axis motor, the dot will change position in the collected image, according to the center position of the dot in the image, the diameter of the dot, and the distance between the camera module lens and the target, the motion angle (q i,j ) of the multi-axis motor is calculated, the control is repeatedly changed, the motion angle is calculated and the control and motion angle are recorded, and then the following correction optimization is performed according to the following equation:
[0060]
[0061]
[0062] qi,j It corresponds to v i The j-th measurement output value, p j,k It corresponds to u k The j-th measurement input value;
[0063] Calculate the optimal parameter a i Finally, the optimal parameter a is... i It is stored in the driver chip.
[0064] Reference Figure 7 As shown, in the specific implementation process, the dots of the target pattern can be replaced by multiple square dots, each containing a two-dimensional identification code, allowing the calculator to distinguish different target patterns for calculating the multi-axis angles and displacements of the multi-axis motor. When the multi-axis motor changes its motion angle, some dots will disappear from the image, but some will remain. Based on the positions and identification of the dots still in the image, the calculator can calculate the motion angle.
[0065] Reference Figure 8 As shown, in other embodiments, the target pattern may include two straight lines and a dot; the two straight lines are used to calculate the tumbling direction angle of the multi-axis motor; each straight line extends beyond at least one side of the read image to improve the accuracy of the tumbling direction angle calculation.
[0066] In specific implementations of this invention, the plurality of input values (u) can be input voltage, analog-to-digital converter values, motor angles, or displacement strokes; the plurality of output values (v) i The output current, output voltage, or digital-to-analog converter value can be used; preferably, the position sensor can be a feedback sensor inside a multi-axis motor or an external sensor placed outside the motor, which is also within the scope of protection of this invention.
[0067] The above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A camera module multi-axis control system, comprising a microcontroller, a multi-axis drive circuit and a multi-axis motor; after receiving a target multi-axis motion angle, the microcontroller calculates an output value, the multi-axis drive circuit adjusts the output drive voltage or current according to the output value of the microcontroller, and the multi-axis motor changes the multi-axis motion angle of the lens for multi-axis control according to the drive voltage or current output by the multi-axis drive circuit; characterized in that: The microcontroller contains a multi-axis angle calculation module and at least one nonlinear compensation module; the multi-axis angle calculation module reads input target multi-axis motion angle (u), calculates multiple output values (v i ); the nonlinear compensation module contains multiple equations: nonlinear compensation equation; represents a natural number (Natural Number) not containing zero, represents a real number (Real Number), each of the nonlinear compensation equations contains an output value (v i ), a plurality of parameters (a i ), and a plurality of input values (u); the plurality of output values are calculated and provided to the multi-axis drive circuit after the nonlinear compensation equation and the plurality of input values are input. The multi-axis motor is a 2-axis open-loop non-linear multi-axis motor; the 2-axis open-loop non-linear multi-axis motor can drive the lens to perform two-axis rotation multi-axis movement, corresponding to the multi-axis movement angles of x and y axes respectively; the non-linear compensation equation comprises a cubic function, that is: v1 = f1(a1, u) = a 1,1 u1 3 u2 3 +a 1,2 u1 2 u2 3 +…+a 1,k u1 r u2 s +…+a 1,15 u2+a 1,16 , v2 = f2(a2, u) = a 2,1 u1 3 u2 3 +a 2,2 u1 2 u2 3 +…+a 2,k u1 r u2 s +…+a 2,15 u2+a 2,16 , u1 is the x-multi-axis motor movement angle; u2 is the y-multi-axis motor movement angle; represents a natural number containing zero; v1 is the x-drive voltage or current; v2 is the y-drive voltage or current; Alternatively, the multi-axis motor is a 2-axis closed-loop non-linear multi-axis motor; the 2-axis closed-loop non-linear multi-axis motor comprises two position sensors, corresponding to the multi-axis movement angles of x and y axes respectively; the non-linear compensation equation comprises a linear function and a cubic root function, that is: v3 = f3(a3, u) = a 3,1 u1 1 u2 1 +a 3,2 u1 1 / 3 u2 1 +…+a 3,9 , v4 = f4(a4, u) = a 4,1 u1 1 u2 1 +a 4,2 u1 1 / 3 u2 1 +…+a 4,9 v3 is a target output value of an x-position sensor; v4 is a target output value of a y-position sensor.
2. A camera module multi-axis control correction system, comprising: The correction system comprises the camera module multi-axis control system of claim 1, and further comprises a target pattern, an image sensor and an electronic computer; the electronic computer changes the control of the multi-axis motor through the microcontroller and reads the image signal of the image sensor to optimize the parameter (a i ) in the camera module multi-axis control system; the target pattern is a dot, when the electronic computer changes the control of the multi-axis motor (p j ), the dot changes the position in the collected image, according to the center position of the dot in the image, the diameter of the dot and the distance between the camera module lens and the target, the measured output value of the multi-axis motor is calculated, the control is repeatedly changed, the motion angle is calculated and the control and the motion angle are recorded, and then the following correction optimization equation is implemented: q i,j is the jth measurement output value corresponding to v i p j,k is the jth measurement input value corresponding to u k ; The optimized parameter a is calculated i ; finally, the optimized parameter a i is stored in the driving chip.
3. The multi-axis control correction system for camera modules of claim 2, wherein: The dots of the target pattern are replaced by a plurality of points, each point comprising a two-dimensional identification code, so that an electronic calculator can distinguish different target patterns and be used to calculate the multi-axis angles and displacements of the multi-axis motor.
4. The multi-axis control correction system for camera modules of claim 2, wherein: The target pattern further comprises two straight lines; each straight line exceeds at least one side in the image read by the camera module lens, and the two straight lines are used to calculate the roll direction angle of the multi-axis motor.
5. The multi-axis control correction system for camera modules of claim 2, wherein: The plurality of input values (u) are input voltages, analog to digital converter values, motor angles or displacement strokes; the plurality of output values (v i ) are position sensor output signals, output currents, output voltages or digital to analog converter values; the position sensor is a feedback sensor within a multi-axis motor or an external position sensor external to the motor.
Citation Information
Patent Citations
A miniature gimbal with integrated camera module for image stabilization
CN107340667B
A miniature gimbal for image stabilization that can drive a camera module
CN110500479B
Miniature anti-shake holder
CN113446485A
Miniature anti-shake pan-tilt camera module
CN115047581A