Voice coil motor control system and method

By using laser light sources, interferometers and square wave circuits in the voice coil motor control system to generate square wave signals, obtain time sequences and determine the velocity feedback value, the hysteresis problem in voice coil motor motion speed control is solved, and higher control accuracy and vibration resistance are achieved.

CN120263020APending Publication Date: 2025-07-04HANGZHOU KUANGXIN TECH CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202510572911.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-30
Publication Date
2025-07-04

AI Technical Summary

Technical Problem

In the prior art, the movement speed control of voice coil motors inside the spectrometer has long feedback cycles and hysteresis problems, especially in the case of external disturbances, which affects the accuracy of movement speed control and the signal-to-noise ratio of infrared spectral signals.

Method used

The combination of laser light source, interferometer, square wave circuit and processing unit is adopted to generate a square wave signal by generating an interference signal and voltage threshold, obtain a time sequence, and determine the speed feedback value using the target duration and reference distance to achieve accurate control of the movement speed of the voice coil motor.

Benefits of technology

The speed feedback cycle is shortened, the hysteresis time is reduced, the accuracy of motion speed control is improved, the anti-vibration characteristics of the voice coil motor are enhanced, and the signal-to-noise ratio of the infrared spectral signal is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120263020A_ABST
    Figure CN120263020A_ABST
Patent Text Reader

Abstract

The invention provides a voice coil motor control system and method. The voice coil motor control system comprises a voice coil motor, a laser light source, an interferometer, a square wave circuit and a processing unit. The laser light source is used for transmitting a laser signal to the interferometer; the interferometer is used for generating an interference signal based on the laser signal; the square wave circuit is used for generating n square wave signals based on the interference signal and n voltage thresholds; the processing unit is used for acquiring a moment sequence, and traversing each moment from the (2n + 1) th moment of the moment sequence as a current moment; determining a target duration based on the current moment and a reference moment before the current moment; determining a speed feedback value based on the target duration and the reference distance; and the processing unit is used for determining a speed deviation value based on the speed feedback value and the obtained target speed value, and controlling the movement speed of the voice coil motor based on the speed deviation value. According to the technical scheme, the feedback period of the speed feedback value is short, and the accuracy of motion speed control is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of motor control, and particularly to a voice coil motor control system and method. Background Art

[0002] A spectroscope is a scientific instrument that decomposes complex light into spectral lines and is composed of a prism or a diffraction grating, etc. Using a spectroscope, the light reflected from the surface of an object can be measured. The seven-color light in sunlight is the visible part (visible light) to the naked eye. However, if sunlight is decomposed by a spectroscope and arranged according to wavelength, the visible light only occupies a very small range in the spectrum, and the rest are spectra that cannot be distinguished by the naked eye, such as infrared rays, microwaves, ultraviolet rays, X-rays, etc. By capturing the light information through a spectroscope, the elements contained in an item can be detected. Spectroscopes are widely used in the detection of air pollution, water pollution, food hygiene, metal industry, etc.

[0003] A voice coil motor is a special form of direct drive motor, which has characteristics such as simple structure, small volume, high speed, and fast high-acceleration response. The working principle of a voice coil motor is that when a current-carrying coil (conductor) is placed in a magnetic field, a force will be generated, and the magnitude of the force is proportional to the current applied to the current-carrying coil. Based on this principle, the motion form of the manufactured voice coil motor can be linear or circular arc.

[0004] With the rapid development of voice coil motor technology, a voice coil motor can be deployed inside a spectroscope. When deploying a voice coil motor inside a spectroscope, there is no effective control method for how to control the motion speed of the voice coil motor in the related art. There are problems such as a long feedback period of the motion speed and a certain hysteresis, which greatly affect the accuracy of motion speed control. Especially in the case of external disturbances (such as a vibration environment), the error caused by the hysteresis between the feedback speed and the actual speed is further amplified, affecting the signal-to-noise ratio of the infrared spectrum signal. Summary of the Invention

[0005] This application provides a voice coil motor control system. The voice coil motor control system includes a voice coil motor, a laser light source, an interferometer, a square-wave shaping circuit, and a processing unit, where:

[0006] The laser light source is configured to emit a laser signal to the interferometer;

[0007] The interferometer is configured to generate an interference signal based on the laser signal; wherein, during the motion of the voice coil motor, every time the voice coil motor moves a reference distance, the intensity change of the interference signal presents a sine period; the reference distance is determined based on the wavelength of the laser signal;

[0008] The square-wave conversion circuit is configured to generate n square-wave signals based on the interference signal and n configured voltage thresholds; where n is a positive integer and the n voltage thresholds are different;

[0009] The processing unit is configured to obtain a time sequence, the time sequence including the rising-edge time and the falling-edge time of each square-wave signal; traverse each time starting from the (2n + 1)-th time in the time sequence as the current time; determine a target duration based on the current time and a reference time before the current time, the interval between the reference time and the current time being 2n; and determine a speed feedback value based on the target duration and the reference distance;

[0010] The processing unit is configured to determine a speed deviation value based on the speed feedback value and a obtained target speed value, and control the movement speed of the voice coil motor based on the speed deviation value.

[0011] This application provides a method for controlling a voice coil motor, which is applied to a processing unit of a voice coil motor control system. The voice coil motor control system further includes a voice coil motor, a laser light source, and an interferometer. The method includes:

[0012] Obtain a time sequence, the time sequence including the rising-edge time and the falling-edge time of n square-wave signals; where when the laser light source emits a laser signal to the interferometer, the interferometer generates an interference signal based on the laser signal, and the n square-wave signals are generated based on the interference signal and n configured voltage thresholds, n being a positive integer and the n voltage thresholds being different; where during the movement of the voice coil motor, when the voice coil motor moves a reference distance, the intensity change of the interference signal presents a sine period, and the reference distance is determined based on the wavelength of the laser signal;

[0013] Traverse each time starting from the (2n + 1)-th time in the time sequence as the current time; determine a target duration based on the current time and a reference time before the current time, and determine a speed feedback value based on the target duration and the reference distance; where the interval between the reference time and the current time is 2n;

[0014] Determine a speed deviation value based on the speed feedback value and a obtained target speed value, and control the movement speed of the voice coil motor based on the speed deviation value.

[0015] As can be seen from the above technical solutions, in the embodiments of the present application, n square wave signals are generated based on the interference signal and n voltage thresholds, and a time sequence is obtained. The time sequence includes the rising edge time and the falling edge time of each square wave signal. Starting from the (2n + 1)-th time of the time sequence, each time is traversed as the current time, the target duration is determined based on the current time and the reference time, and the speed feedback value is determined based on the target duration and the reference distance. In this way, the feedback period of the speed feedback value is short, and the hysteresis time is short. When controlling the movement speed of the voice coil motor based on the speed feedback value, the accuracy of the movement speed control can be improved. Even under external disturbances (such as a vibration environment, etc.), the error between the speed feedback value and the actual speed caused by hysteresis is small, and the accuracy of the movement speed control is high, improving the signal-to-noise ratio of the infrared spectral signal. When deploying the voice coil motor inside the spectrometer, the movement speed of the voice coil motor can be effectively controlled. The characteristics of square wave conversion of the interference signal can be utilized to compare the interference signal with different threshold voltages to obtain different square wave counting information, and then the rising edge time and the falling edge time after square wave conversion are used as the basis for the speed feedback value, shortening the feedback period of the voice coil motor speed, making the sampled speed feedback value more consistent with the current actual running speed, so that the control is more accurate and the voice coil motor has stronger anti-vibration characteristics. Description of the Drawings

[0016] Figure 1 is a schematic structural diagram of a voice coil motor control system in an embodiment of the present application;

[0017] Figure 2 is a schematic structural diagram of a voice coil motor control system in an embodiment of the present application;

[0018] Figure 3 is a schematic diagram of the square wave conversion processing of the interference signal in an embodiment of the present application;

[0019] Figure 4 is a schematic structural diagram of a voice coil motor control system in an embodiment of the present application;

[0020] Figure 5 is a schematic diagram of the position change of the baffle, the output signal of the photoelectric gate, the displacement of the voice coil motor, and the speed of the voice coil motor in an embodiment of the present application;

[0021] Figure 6 is a schematic flowchart of a method for controlling the stroke of a voice coil motor in an embodiment of the present application;

[0022] Figure 7 is a schematic flowchart of a method for controlling a voice coil motor in an embodiment of the present application. Detailed Embodiments

[0023] In an embodiment of the present application, a voice coil motor control system is proposed. Refer to Figure 1 As shown in

[0024] The laser light source is used to emit a laser signal to the interferometer.

[0025] The interferometer is used to generate an interference signal based on the laser signal. During the movement of the voice coil motor, each time the voice coil motor moves a reference distance, the intensity change of the interference signal can present a sine period. The reference distance can be determined based on the wavelength of the laser signal.

[0026] The square wave conversion circuit is used to generate n square wave signals based on the interference signal and n configured voltage thresholds. Here, n can be a positive integer, and the n voltage thresholds are different.

[0027] The processing unit is used to obtain a time sequence, which can include the rising edge time and falling edge time of each square wave signal. Starting from the (2n + 1)-th time of the time sequence, each time is traversed as the current time. The target duration is determined based on the current time and the reference time in front of the current time. The interval between the reference time and the current time is 2n. The speed feedback value is determined based on the target duration and the reference distance.

[0028] The processing unit is used to determine the speed deviation value based on the speed feedback value and the obtained target speed value, and control the movement speed of the voice coil motor based on the speed deviation value.

[0029] Exemplarily, the voice coil motor control system may further include a laser receiving circuit and a signal conditioning circuit; wherein: the laser receiving circuit is configured to receive the interference signal output by the interferometer, perform optoelectronic conversion on the interference signal to obtain a converted interference signal, and output the converted interference signal. The signal conditioning circuit is configured to receive the converted interference signal, perform signal conditioning operations on the interference signal to obtain a conditioned interference signal, and output the conditioned interference signal. The square wave conversion circuit is configured to receive the conditioned interference signal, and for each voltage threshold, generate a square wave signal corresponding to the voltage threshold based on the interference signal; wherein, for each signal position of the square wave signal, if the voltage value corresponding to the signal position in the interference signal is greater than the voltage threshold, the signal position corresponds to a high level in the square wave signal, and if the voltage value corresponding to the signal position in the interference signal is not greater than the voltage threshold, the signal position corresponds to a low level in the square wave signal; or, if the voltage value corresponding to the signal position in the interference signal is greater than the voltage threshold, the signal position corresponds to a low level in the square wave signal, and if the voltage value corresponding to the signal position in the interference signal is not greater than the voltage threshold, the signal position corresponds to a high level in the square wave signal.

[0030] Exemplarily, the target duration may represent the duration required for the voice coil motor to move a reference distance; wherein, the distance that the voice coil motor drives the interferometer to move until the optical path difference between two coherent light beams is λ is the reference distance, and λ represents the wavelength of the laser signal. When the processing unit determines the speed feedback value based on the target duration and the reference distance, the speed feedback value may be the quotient between the reference distance and the target duration. When the processing unit determines the speed deviation value based on the speed feedback value and the target speed value, the speed deviation value may be the difference between the speed feedback value and the target speed value. Among them, the voice coil motor control system may be applied to a spectrometer, and the target speed value is determined based on the scanning frequency of the spectrometer, the wavelength of the laser signal, and the configured value, and the scanning frequency is a parameter pre-configured for controlling the movement speed of the voice coil motor.

[0031] Exemplarily, when the processing unit controls the movement speed of the voice coil motor based on the speed deviation value, it is specifically configured to: determine a target voltage value based on the speed deviation value; wherein, the target voltage value can be used to determine a target power value, and the target power value is used to control the movement speed of the voice coil motor.

[0032] For example, when the processing unit determines the target voltage value based on the speed deviation value, it is specifically configured to: determine the target voltage value based on the voltage value at the first moment before the current moment, the speed deviation value at the current moment, the speed deviation value at the first moment before the current moment, the speed deviation value at the second moment before the current moment, the obtained proportional coefficient, the obtained integral coefficient, and the obtained differential coefficient.

[0033] Exemplarily, the voice coil motor control system may further include a baffle, which is fixedly connected to the voice coil motor. When the voice coil motor moves in the first direction, the baffle moves in the first direction along with the voice coil motor. When the voice coil motor moves in the second direction, the baffle moves in the second direction along with the voice coil motor. The first direction and the second direction may be opposite directions. For example, the processing unit is further configured to, during the movement of the voice coil motor in the first direction, if it is determined that the baffle corresponds to the zero position of the voice coil motor, start counting the movement stroke of the voice coil motor; if the movement stroke reaches the obtained first stroke target value, the voice coil motor can be controlled to move in the second direction; during the movement of the voice coil motor in the second direction, if it is determined that the baffle corresponds to the zero position of the voice coil motor, start counting the movement stroke of the voice coil motor; if the movement stroke reaches the obtained second stroke target value, the voice coil motor can be controlled to move in the first direction.

[0034] Exemplarily, the voice coil motor control system may further include a photoelectric gate, and the distance between the photoelectric gate and the zero position of the voice coil motor is not greater than a preset threshold; wherein, when the baffle corresponds to the zero position of the voice coil motor, the baffle can block the photosensitive surface of the photoelectric gate. For example, the photoelectric gate is configured to output a first level when the voice coil motor moves in the first direction, and can output a second level when it senses that the photosensitive surface of the photoelectric gate is blocked by the baffle; output a second level when the voice coil motor moves in the second direction, and can output a first level when it senses that the photosensitive surface of the photoelectric gate is blocked by the baffle; wherein, the first level may be a high level and the second level is a low level, or the first level may be a low level and the second level is a high level. In addition, the processing unit is further configured to, if it is determined that the output level of the photoelectric gate switches from the first level to the second level, determine that the baffle corresponds to the zero position of the voice coil motor; or, if it is determined that the output level of the photoelectric gate switches from the second level to the first level, determine that the baffle corresponds to the zero position of the voice coil motor.

[0035] Exemplarily, the sum of the first stroke target value and the second stroke target value is the stroke target value. For example, the stroke target value may be between the minimum stroke and the maximum stroke, and the maximum stroke may be the sum value of the configured first maximum stroke and the configured second maximum stroke. The first maximum stroke represents the maximum stroke of the baffle in the first direction, and the second maximum stroke represents the maximum stroke of the baffle in the second direction. In addition, the minimum stroke is determined based on the wavenumber resolution of the spectrometer and the configured stroke parameters of the voice coil motor, and the wavenumber resolution is a parameter preconfigured for controlling the stroke of the voice coil motor.

[0036] As can be seen from the above technical solutions, in the embodiments of the present application, n square wave signals are generated based on the interference signal and n voltage thresholds, and a time sequence is obtained. The time sequence includes the rising edge time and the falling edge time of each square wave signal. Starting from the (2n + 1)-th time of the time sequence, each time is traversed as the current time, the target duration is determined based on the current time and the reference time, and the speed feedback value is determined based on the target duration and the reference distance. In this way, the feedback period of the speed feedback value is short, and the hysteresis time is short. When controlling the movement speed of the voice coil motor based on the speed feedback value, the accuracy of the movement speed control can be improved. Even in the case of external disturbances (such as a vibration environment), the error between the speed feedback value and the actual speed caused by hysteresis is small, and the accuracy of the movement speed control is high, which improves the signal-to-noise ratio of the infrared spectral signal. When deploying a voice coil motor inside a spectrometer, the movement speed of the voice coil motor can be effectively controlled. By utilizing the characteristics of the square wave of the interference signal, the interference signal is compared with different threshold voltages to obtain different square wave counting information, and then the rising edge time and the falling edge time after square wave conversion are used as the basis for the speed feedback value, shortening the feedback period of the voice coil motor speed, making the sampled speed feedback value more consistent with the current actual running speed, thereby making the control more accurate and enabling the voice coil motor to have stronger anti-vibration characteristics.

[0037] The above technical solutions of the embodiments of the present application will be described below in conjunction with specific application scenarios.

[0038] When deploying a voice coil motor inside a spectrometer, in the case of external vibration, in the control of the voice coil motor inside the spectrometer, there is no effective control method in the related art, and there are problems such as a long feedback period of the movement speed and a certain hysteresis, which affect the accuracy of the movement speed control. Especially in the case of external disturbances (such as a vibration environment), the error between the feedback speed and the actual speed caused by hysteresis is further amplified, affecting the signal-to-noise ratio of the infrared spectral signal.

[0039] In view of the above findings, a voice coil motor control system is proposed in the embodiments of the present application. The voice coil motor control system can be applied to a spectrometer, and the spectrometer can be a Fourier spectrometer (such as a Fourier transform infrared spectrometer), or other types of spectrometers, which is not limited herein. Taking a Fourier spectrometer as an example, the Fourier spectrometer is used to realize the determination of the performance of optoelectronic materials and the determination of the composition and structure of chemical substances. By deploying a voice coil motor control system inside the Fourier spectrometer, the voice coil motor can be controlled.

[0040] See Figure 2 As shown in the figure, it is a schematic structural diagram of the voice coil motor control system. The voice coil motor control system may include, but is not limited to: a voice coil motor, a laser light source, an interferometer, a laser receiving circuit, a signal conditioning circuit, a square wave conversion circuit, a processing unit, a DA output circuit, and a power driving circuit.

[0041] A laser light source for emitting a laser signal to an interferometer.

[0042] For example, a laser light source is an electric light source that emits light through the stimulated emission of excited particles. It is a coherent light source with an output wavelength range from short-wave ultraviolet to far-infrared. Laser light sources can be classified into solid laser sources (such as crystals and neodymium glass), gas laser sources (including atoms, ions, molecules, excimers, etc.), liquid laser sources (including organic dyes, inorganic liquids, chelates, etc.), and semiconductor laser sources according to their working substances (also known as active substances). Regardless of the type of laser light source, it can emit a laser signal. In this embodiment, the laser light source can emit a laser signal to the interferometer.

[0043] An interferometer for generating an interference signal based on the laser signal.

[0044] For example, the interferometer may include an interferometer moving mirror and an interferometer fixed mirror. The interferometer moving mirror is mounted on a voice coil motor, and the reciprocating movement of the interferometer moving mirror is achieved through the reciprocating movement of the voice coil motor. For example, when the voice coil motor moves in the first direction, the interferometer moving mirror moves in the first direction with the voice coil motor, and the moving distances of the voice coil motor and the interferometer moving mirror are the same. When the voice coil motor moves in the second direction, the interferometer moving mirror moves in the second direction with the voice coil motor, and the moving distances of the voice coil motor and the interferometer moving mirror are the same. Obviously, the interferometer moving mirror is fixed to the voice coil motor, and the two move synchronously. In addition, the position of the interferometer fixed mirror is fixed, and the interferometer fixed mirror does not move with the movement of the voice coil motor.

[0045] For example, after receiving the laser signal output by the laser light source, the interferometer can generate an interference signal (i.e., interference fringes) based on the laser signal, that is, the laser signal forms interference fringes after passing through the interferometer.

[0046] For example, the working principle of the interferometer is that the superposition of two quasi-monochromatic waves with a fixed phase difference will cause a change in amplitude, so that the phase information of the wave can be obtained by measuring the amplitude, and the phase information of the wave can be obtained by using the superposition property of the wave. In this embodiment, the interferometer generates an interference signal based on the laser signal, and the generation method of this interference signal is not limited, and the interference signal is input to the laser receiving circuit.

[0047] A laser receiving circuit for receiving the interference signal output by the interferometer, performing optoelectronic conversion on the interference signal to obtain a converted interference signal, and outputting the converted interference signal to the signal conditioning circuit.

[0048] For example, the interference signal output by the interferometer is an optical signal. After the laser receiving circuit receives this optical signal (i.e., the interference signal), it can perform optoelectronic conversion on the interference signal to obtain the converted interference signal. The converted interference signal is an electrical signal, and the implementation method of this optoelectronic conversion is not limited.

[0049] A signal conditioning circuit, configured to receive the converted interference signal, perform signal conditioning operations on the interference signal to obtain the conditioned interference signal, and output the conditioned interference signal to the square-wave shaping circuit.

[0050] For example, the interference signal output by the laser receiving circuit is an electrical signal, but this interference signal may be weak. Therefore, the signal conditioning circuit can perform signal amplification operations on the interference signal to obtain the amplified interference signal. Of course, in addition to signal amplification operations, signal conditioning operations can also involve other operations, such as signal interference elimination operations, etc. The method of this signal conditioning operation is not limited.

[0051] A square-wave shaping circuit, configured to receive the conditioned interference signal, generate n square-wave signals based on the interference signal and n configured voltage thresholds. n can be a positive integer, and the n voltage thresholds are different from each other.

[0052] Exemplarily, n voltage thresholds can be pre-configured, such as voltage threshold 1, voltage threshold 2, voltage threshold 3, etc. These voltage thresholds can be configured according to actual requirements. For example, when configuring the voltage thresholds, the voltage thresholds need to be between the amplitudes of the conditioned interference signal and cannot exceed the amplitude range.

[0053] For each voltage threshold, the square-wave shaping circuit can generate a square-wave signal corresponding to the voltage threshold based on the interference signal, that is, obtain n square-wave signals corresponding to the n voltage thresholds, and input the n square-wave signals to the processing unit. The square-wave shaping circuit can be a comparator, and perform square-wave shaping processing by comparing the interference signal and the voltage threshold to obtain the square-wave signal (laser square-wave signal) corresponding to the voltage threshold.

[0054] For example, for each signal position of the square-wave signal, if the voltage value corresponding to the signal position in the interference signal is greater than the voltage threshold, the signal position in the square-wave signal can correspond to a high level; if the voltage value corresponding to the signal position in the interference signal is not greater than the voltage threshold, the signal position in the square-wave signal can correspond to a low level. Or, for each signal position of the square-wave signal, if the voltage value corresponding to the signal position in the interference signal is greater than the voltage threshold, the signal position in the square-wave signal can correspond to a low level; if the voltage value corresponding to the signal position in the interference signal is not greater than the voltage threshold, the signal position in the square-wave signal can correspond to a high level.

[0055] For example, seeFigure 3 As shown, it is a schematic diagram of the square wave processing of the interference signal. In Figure 3 , the interference signal can be the conditioned interference signal, and two voltage thresholds are pre-configured, namely LVEL1 and LVEL2, that is, the value of n is 2. From Figure 3 it can be seen that in the square wave signal corresponding to LVEL1, for each signal position of the square wave signal, if the voltage value corresponding to this signal position in the interference signal is greater than LVEL1, then this signal position corresponds to a low level in the square wave signal; if the voltage value corresponding to this signal position in the interference signal is not greater than LVEL1, then this signal position corresponds to a high level in the square wave signal.

[0056] Similarly, from Figure 3 it can be seen that in the square wave signal corresponding to LVEL2, for each signal position of the square wave signal, if the voltage value corresponding to this signal position in the interference signal is greater than LVEL2, then this signal position corresponds to a low level in the square wave signal; if the voltage value corresponding to this signal position in the interference signal is not greater than LVEL2, then this signal position corresponds to a high level in the square wave signal.

[0057] In summary, based on the two pre-configured voltage thresholds, namely LVEL1 and LVEL2, the square wave circuit can generate the square wave signal corresponding to LVEL1 and the square wave signal corresponding to LVEL2, and input the square wave signal corresponding to LVEL1 and the square wave signal corresponding to LVEL2 to the processing unit.

[0058] The processing unit is used to receive n square wave signals and obtain a time sequence based on the n square wave signals. The time sequence can include the rising edge time and the falling edge time of each square wave signal.

[0059] For example, the processing unit can be an MCU (Microcontroller Unit, microprocessing unit), an SOC (System on Chip, system on a chip), etc., or an FPGA (Field Programmable Gate Array, field programmable logic gate array), a CPLD (Complex Programmable Logic Device, complex programmable logic device), an ASIC (Application Specific Integrated Circuit, application specific integrated circuit), etc. There is no limit to this, and the hardware with processing functions can be used as the processing unit.

[0060] See Figure 3As shown, taking two square wave signals as an example, based on the square wave signal corresponding to LVEL1, time t1 is the rising edge time of this square wave signal, time t4 is the falling edge time of the square wave signal, time t5 is the rising edge time of this square wave signal, time t8 is the falling edge time of the square wave signal, time t9 is the rising edge time of this square wave signal, time t12 is the falling edge time of the square wave signal, time t13 is the rising edge time of this square wave signal, time t16 is the falling edge time of the square wave signal, time t17 is the rising edge time of this square wave signal, time t20 is the falling edge time of the square wave signal, and so on. Based on the square wave signal corresponding to LVEL2, time t2 is the rising edge time of this square wave signal, time t3 is the falling edge time of the square wave signal, time t6 is the rising edge time of this square wave signal, time t7 is the falling edge time of the square wave signal, time t10 is the rising edge time of this square wave signal, time t11 is the falling edge time of the square wave signal, time t14 is the rising edge time of this square wave signal, time t15 is the falling edge time of the square wave signal, time t18 is the rising edge time of this square wave signal, time t19 is the falling edge time of the square wave signal, and so on.

[0061] In summary, a time sequence can be obtained. This time sequence can include time t1, time t4, time t5, time t8, time t9, time t12, time t13, time t16, time t17, time t20, time t2, time t3, time t6, time t7, time t10, time t11, time t14, time t15, time t18, and time t19. Then, sort these times in chronological order to obtain the sorted time sequence, which can include time t1, time t2, time t3, time t4, time t5, time t6, time t7, time t8, time t9, time t10, time t11, time t12, time t13, time t14, time t15, time t16, time t17, time t18, time t19, and time t20.

[0062] Among these times in this time sequence, the processing unit can know which times are rising edge times (the rising edge times of which square wave signal), which times are falling edge times (the falling edge times of which square wave signal), and can also know the total number of rising edge times, the total number of falling edge times, etc.

[0063] A processing unit for obtaining a reference distance. Exemplarily, during the movement of the voice coil motor, every time the voice coil motor moves a reference distance, the intensity change of the interference signal (i.e., the interference signal generated by the interferometer based on the laser signal) can present a sine period, and this reference distance can be determined based on the wavelength of the laser signal. For example, the reference distance is related to the optical system design. The distance that the voice coil motor drives the interferometer to move until the optical path difference between the two coherent light beams reaches λ is the reference distance, where λ represents the wavelength of the laser signal.

[0064] For example, a light source enters and is split into two coherent light beams, a reflected beam and a transmitted beam, by a beam splitter. One beam is reflected by the moving mirror of the interferometer, and the other beam is reflected by the fixed mirror of the interferometer. When the moving mirror of the interferometer moves λ / 2, the optical path difference between the two coherent light beams is λ, and during this process, the intensity of the interference fringes changes by one period. In summary, the reference distance can be λ / 2. Of course, in the case of different optical system designs, the change in the optical path difference corresponding to the movement distance of the moving mirror of the interferometer will be different, but when the optical path difference reaches λ, the intensity change of the interference fringes is one period. For the convenience of description, taking the reference distance as λ / 2 as an example, there is no limitation on this.

[0065] For example, referring to Figure 3 As shown, during the movement of the voice coil motor, every time the voice coil motor moves a distance of λ / 2, the intensity change of the interference signal presents a sine period change. Therefore, when obtaining the reference distance, the reference distance represents the moving distance of the voice coil motor when the intensity change of the interference signal presents a sine period.

[0066] For example, in optics, when the distance of an interference signal is completed, the intensity change of the interference signal presents a sine period change. Since the interference signal distance is in a 2-fold relationship with the movement distance of the voice coil motor, in this way, during the movement of the voice coil motor, every time the voice coil motor moves a distance of λ / 2, then the intensity change of the interference signal will present a sine period change. Therefore, λ / 2 can be used as the reference distance.

[0067] A processing unit for starting from the (2n + 1)-th moment of the time series and sequentially traversing each moment as the current moment; determining a target duration based on the current moment and the reference moment before the current moment, and the interval between the reference moment and the current moment is 2n, that is, the interval between the reference moment and the current moment is 2n moments. In addition, the target duration can represent the duration required for the voice coil motor to move the reference distance, that is, the duration required to move a distance of λ / 2.

[0068] For example, referring to Figure 3As shown, during the movement of the voice coil motor, within the time between time t5 and time t1, the voice coil motor moves a distance of λ / 2; within the time between time t6 and time t2, the voice coil motor moves a distance of λ / 2; within the time between time t7 and time t3, the voice coil motor moves a distance of λ / 2; within the time between time t8 and time t4, the voice coil motor moves a distance of λ / 2; within the time between time t9 and time t5, the voice coil motor moves a distance of λ / 2; within the time between time t9 and time t1, the voice coil motor moves a distance of λ. Further, within the time between time t10 and time t6, the voice coil motor moves a distance of λ / 2, and so on.

[0069] In summary, it can be seen that when n takes the value of 2, that is, for 2 square wave signals, starting from the 5th (2n + 1)th moment in the time sequence, each moment is traversed in turn as the current moment. For example, when traversing time t5 as the current moment for the first time, that is, when the current time (i.e., the real time) is time t5, time t5 is added to the time sequence and time t5 is used as the current moment. When time t5 is the current moment, since the reference moment is 4 (2n) moments away from the current moment, the reference moment is time t1. In this way, the target duration can be determined based on time t5 and time t1, that is, the difference between time t5 and time t1 is used as the target duration. From the above analysis, it can be seen that within the time between time t5 and time t1, the voice coil motor moves a distance of λ / 2. In this way, the target duration represents the duration required for the voice coil motor to move the reference distance, that is, the duration required to move a distance of λ / 2.

[0070] When traversing time t6 as the current moment for the second time, that is, when the current time (i.e., the real time) is time t6, time t6 is used as the current moment. When time t6 is the current moment, the reference moment is time t2. The target duration is determined based on time t6 and time t2, that is, the difference between time t6 and time t2 is used as the target duration.

[0071] When traversing time t7 as the current moment for the third time, the reference moment is time t3. The target duration is determined based on time t7 and time t3, that is, the difference between time t7 and time t3 is used as the target duration, and so on.

[0072] Exemplarily, when n takes the value of 3, that is, for 3 square wave signals, it can start from the 7th (2n + 1)th moment in the time sequence, and each moment is traversed in turn as the current moment. For example, when traversing time t7 as the current moment for the first time, since the reference moment is 6 (2n) moments away from the current moment, the reference moment is time t1. In this way, the difference between time t7 and time t1 can be used as the target duration.

[0073] The second traversal time t8 is used as the current time, the reference time is time t2, and the difference between time t8 and time t2 can be used as the target duration. The third traversal time t9 is used as the current time, the reference time is time t3, and the difference between time t9 and time t3 can be used as the target duration, and so on.

[0074] Exemplarily, when the value of n is 4, that is, for 4 square wave signals, it can start from the 9th (2n + 1)th moment of the time sequence, and traverse each moment in turn as the current time, and so on.

[0075] In summary, the processing unit can start from the (2n + 1)th moment of the time sequence, traverse each moment in turn as the current time, and the reference time is separated from the current time by 2n moments. In this way, the processing unit takes the difference between the current time and the reference time as the target duration, that is, the duration required to move a distance of λ / 2.

[0076] The processing unit is used to determine the speed feedback value based on the target duration and the reference distance. For example, the speed feedback value can be the quotient of the reference distance and the target duration. For example, the reference distance can be λ / 2, the target duration can be the difference between the current time and the reference time, and the quotient of the two is used as the speed feedback value.

[0077] For example, taking 2 square wave signals as an example, the speed feedback value can be determined by the following formula (1):

[0078]

[0079] In formula (1), v k can represent the speed feedback value at time k, where k is 5, 6, 7, 8, 9, etc., and t k can represent the current time, t k-4 can represent the reference time, the reference time is separated from the current time by 4 (2n) moments, t k The difference from t k-4 can represent the target duration, and λ / 2 can represent the reference distance. When k is 5, it means the current time t k is time t5, when k is 6, it means the current time t k is time t6, and so on.

[0080] The processing unit is used to determine the speed deviation value based on the speed feedback value and the obtained target speed value. For example, the speed deviation value can be the difference between the speed feedback value and the target speed value. For example, the speed deviation value can be determined by the following formula: e(k) = v k -v d . In the above formula, e(k) represents the speed deviation value, and v krepresents the speed feedback value at time k, v d represents the obtained target speed value. Thus, based on the obtained target speed value v d , and the speed deviation value is related to the number of square waves.

[0081] For example, for the target speed value, if the voice coil motor control system is applied to a spectrometer, the target speed value can be determined based on the scanning frequency of the spectrometer, the wavelength of the laser signal, and the configured value, and the scanning frequency is a parameter pre-configured for controlling the movement speed of the voice coil motor.

[0082] For example, the following formula can be used to determine the target speed value: In the above formula, fre represents the scanning frequency of the spectrometer, which can be the scanning frequency set by the user, with the unit of kHz. The scanning frequency is a parameter for controlling the movement speed of the voice coil motor and can be configured according to experience. λ represents the wavelength of the laser signal, with the unit of nm, which is a parameter of the laser light source and can be a known value. λ / 2 can represent the reference distance. 1000 can be the configured value and can be set according to actual requirements. The unit of the target speed value v d can be mm / s. Obviously, the target speed value can be determined based on the scanning frequency of the spectrometer, the reference distance, and the configured value.

[0083] The processing unit is used to determine the target voltage value based on the speed deviation value e(k). The target voltage value is used to determine the target power value, and the target power value is used to control the movement speed of the voice coil motor.

[0084] Exemplarily, the processing unit can determine the target voltage value based on the voltage value at the first moment before the current moment, the speed deviation value at the current moment, the speed deviation value at the first moment before the current moment, the speed deviation value at the second moment before the current moment, the obtained proportional coefficient, the obtained integral coefficient, and the obtained differential coefficient. For example, the following formula (2) can be used to determine the target voltage value. Of course, formula (2) is just an example and is not limited thereto. The target voltage value is related to the above parameters. In formula (2), taking the current moment as time t8 as an example, the meanings of the parameters are described.

[0085] u(k) = u(k - 1) + K p ·[e(k) - e(k - 1)] + K i ·e(k) + K d ·[e(k) - 2e(k - 1) + e(k - 2)] Formula (2)

[0086] In formula (2), u(k) represents the target voltage value at the current moment, that is, the target voltage value at time t8. u(k - 1) represents the voltage value at the first moment before the current moment, that is, the voltage value at time t7 (that is, when time t7 is the current moment, the calculated target voltage value at time t7). e(k) represents the speed deviation value at the current moment, that is, the speed deviation value at time t8. e(k - 1) represents the speed deviation value at the first moment before the current moment, that is, the speed deviation value at time t7 (that is, when time t7 is the current moment, the calculated speed deviation value at time t7). e(k - 2) represents the speed deviation value at the second moment before the current moment, that is, the speed deviation value at time t6 (that is, when time t6 is the current moment, the calculated speed deviation value at time t6).

[0087] K p represents the obtained proportionality coefficient, K i represents the obtained integral coefficient, K d represents the obtained differential coefficient. The initial values of the proportionality coefficient, integral coefficient, and differential coefficient can be configured according to experience. During operation, the proportionality coefficient, integral coefficient, and differential coefficient can be optimized and adjusted, and no restrictions are imposed on this.

[0088] Exemplarily, after obtaining the target voltage value, the processing unit can input the target voltage value to a DA (Digital Analog) output circuit. The DA output circuit is a digital - to - analog conversion circuit used to convert digital signals into analog signals and can also be referred to as a DA converter. After receiving the target voltage value, which is a digital signal, the DA output circuit converts the target voltage value to obtain a voltage signal, which is an analog signal, and inputs the voltage signal to the power drive circuit.

[0089] After receiving the voltage signal, the power drive circuit can convert the voltage signal into a power signal and control the movement speed of the voice - coil motor through the power signal. For example, the power drive circuit can determine the target power value based on the voltage signal and control the movement speed of the voice - coil motor through the target power value. When controlling the movement speed of the voice - coil motor through the target power value, the control objective is to make the speed feedback value at the next moment closer to the target speed value v d There is no restriction on this. The voltage signal can drive the voice - coil motor through the power drive circuit to achieve the uniform reciprocating motion of the voice - coil motor.

[0090] So far, the control of the movement speed of the voice - coil motor is completed. To achieve the control of the voice - coil motor, the stroke control of the voice - coil motor may also be involved. The following describes the stroke control of the voice - coil motor.

[0091] See Figure 4As shown, it is a schematic structural diagram of a voice coil motor control system. In addition to the voice coil motor, laser light source, interferometer, laser receiving circuit, signal conditioning circuit, square wave conversion circuit, processing unit, etc., the voice coil motor control system also includes a baffle ( Figure 4 not shown) and a photoelectric switch. The working principle of the photoelectric switch is that a change in illuminance causes a change in the resistance value of the photoresistor, thereby causing a change in the voltage across the photoresistor. The voltage change signal is transmitted to a counter through a sensor for counting and timing. One end of the photoelectric switch is a linear light source, and the other end is a photoresistor. When there is no object blocking in the photoelectric switch, light shines on the photoresistor, and the resistance value of the photoresistor decreases when there is light, and the voltage across the photoresistor is low. When there is an object blocking in the photoelectric switch, the illuminance received by the photoresistor decreases, the resistance increases, and the voltage across the photoresistor is high. In other words, when there is no object blocking between the photoelectric switches, the internal circuit is disconnected; when there is an object blocking between the photoelectric switches, the internal circuit is connected.

[0092] When deploying the photoelectric switch, the photoelectric switch is installed near the zero position of the voice coil motor, that is, the distance between the photoelectric switch and the zero position of the voice coil motor is not greater than a preset threshold (which can be configured according to actual needs and can be a relatively small threshold). The zero position of the voice coil motor means that assuming the zero position of the voice coil motor is position O, the voice coil motor moves from position O to the boundary position A in the first direction, and then moves in the reverse direction from the boundary position A to the boundary position B in the second direction. During the movement, it needs to pass through position O, and position O can be the central position or an approximate central position (i.e., near the central position) between the boundary position A and the boundary position B.

[0093] Considering that the moving mirror of the interferometer is installed on the voice coil motor, the zero position of the moving mirror of the interferometer is the same as or close to the zero position of the voice coil motor. Therefore, the photoelectric switch can also be installed near the zero position of the moving mirror of the interferometer, that is, the distance between the photoelectric switch and the zero position of the moving mirror of the interferometer is not greater than a preset threshold (which can be configured according to actual needs).

[0094] When deploying the baffle, the baffle is fixedly connected to the voice coil motor. For example, the baffle can be installed on the interferometer and fixedly connected to the voice coil motor, or the baffle can be installed on the voice coil motor and fixedly connected to the voice coil motor. The baffle being fixedly connected to the voice coil motor means that when the voice coil motor moves in the first direction, the baffle moves in the first direction along with the voice coil motor, and when the voice coil motor moves in the second direction, the baffle moves in the second direction along with the voice coil motor. The first direction and the second direction can be opposite directions. For example, the first direction can be the upper side direction, the second direction can be the lower side direction, the first direction can be the lower side direction, the second direction can be the upper side direction, the first direction can be the left side direction, the second direction can be the right side direction, the first direction can be the right side direction, and the second direction can be the left side direction.

[0095] When deploying the baffle, the following conditions need to be met: when the voice coil motor moves in the first direction, the baffle moves in the first direction along with the voice coil motor. When the voice coil motor moves to the zero position of the voice coil motor (the baffle corresponds to the zero position of the voice coil motor), the baffle can block the photosensitive surface of the optoelectronic switch. When the voice coil motor leaves the zero position of the voice coil motor (the baffle does not correspond to the zero position of the voice coil motor), the baffle no longer blocks the photosensitive surface of the optoelectronic switch. When the voice coil motor moves in the second direction, the baffle moves in the second direction along with the voice coil motor. When the voice coil motor moves to the zero position of the voice coil motor (the baffle corresponds to the zero position of the voice coil motor), the baffle can block the photosensitive surface of the optoelectronic switch. When the voice coil motor leaves the zero position of the voice coil motor (the baffle does not correspond to the zero position of the voice coil motor), the baffle no longer blocks the photosensitive surface of the optoelectronic switch.

[0096] In the above deployment method, when the voice coil motor moves in the first direction, the optoelectronic switch can output a first level. During the movement of the voice coil motor, if the voice coil motor moves to the zero position of the voice coil motor (the baffle corresponds to the zero position of the voice coil motor), the baffle can block the photosensitive surface of the optoelectronic switch, and the optoelectronic switch senses that the photosensitive surface of the optoelectronic switch is blocked by the baffle. At this time, the optoelectronic switch needs to perform a level switch and output a second level, that is, switch from the first level to the second level. Similarly, when the voice coil motor moves in the second direction, the optoelectronic switch can output a second level. During the movement of the voice coil motor, if the voice coil motor moves to the zero position of the voice coil motor (the baffle corresponds to the zero position of the voice coil motor), the baffle can block the photosensitive surface of the optoelectronic switch, and the optoelectronic switch senses that the photosensitive surface of the optoelectronic switch is blocked by the baffle. At this time, the optoelectronic switch needs to perform a level switch and output a first level, that is, switch from the second level to the first level. For example, the first level is a high level and the second level is a low level, or the first level is a low level and the second level is a high level.

[0097] The processing unit is used to start counting the movement stroke of the voice coil motor when it is determined that the baffle corresponds to the zero position of the voice coil motor (that is, the voice coil motor moves to the zero position of the voice coil motor) during the movement of the voice coil motor in the first direction; if the movement stroke reaches the obtained first stroke target value, control the voice coil motor to move in the second direction, that is, the voice coil motor moves in the reverse direction. When the voice coil motor moves in the second direction, if it is determined that the baffle corresponds to the zero position of the voice coil motor (that is, the voice coil motor moves to the zero position of the voice coil motor), start counting the movement stroke of the voice coil motor; if the movement stroke reaches the obtained second stroke target value, control the voice coil motor to move in the first direction, that is, the voice coil motor moves in the reverse direction.

[0098] For example, when the photoelectric gate outputs the first level, the first level can be output to the processing unit. When the photoelectric gate outputs the second level, the second level can be output to the processing unit. Based on this, during the movement of the voice coil motor in the first direction, if the processing unit determines that the output level of the photoelectric gate switches from the first level to the second level, it determines the zero position of the baffle corresponding to the voice coil motor (i.e., the voice coil motor moves to the zero position of the voice coil motor), and starts to count the movement stroke of the voice coil motor. Or, during the movement of the voice coil motor in the second direction, if the processing unit determines that the output level of the photoelectric gate switches from the second level to the first level, it determines the zero position of the baffle corresponding to the voice coil motor (i.e., the voice coil motor moves to the zero position of the voice coil motor).

[0099] For example, refer to Figure 5 As shown, it is a schematic diagram of the baffle position change, the output signal of the photoelectric gate, the displacement of the voice coil motor, and the speed of the voice coil motor. The 5 positions in the baffle position change are denoted as position 1, position 2, position 3, position 4, and position 5. The downward direction is the first direction, and the upward direction is the second direction.

[0100] Before position 1, the voice coil motor moves in the first direction, and the photoelectric gate can output a low level (the first level). At position 1, the voice coil motor moves to the zero position of the voice coil motor, and the baffle (i.e., the trapezoid represents the baffle) can block the light-sensitive surface (i.e., the small rectangle) of the photoelectric gate (i.e., the large rectangle). The photoelectric gate senses that the light-sensitive surface is blocked by the baffle. Therefore, the photoelectric gate outputs a high level (the second level). When the processing unit determines that the output level of the photoelectric gate switches from the low level to the high level, it determines the zero position of the baffle corresponding to the voice coil motor and starts to count the movement stroke of the voice coil motor. If this movement stroke reaches the obtained first stroke target value, the processing unit controls the voice coil motor to move in the second direction. Refer to Figure 5 position 2 shown in

[0101] Before position 3, the voice coil motor moves in the second direction, and the photoelectric gate continues to output a high level. At position 3, the voice coil motor moves to the zero position of the voice coil motor, and the baffle can block the light-sensitive surface of the photoelectric gate. The photoelectric gate senses that the light-sensitive surface is blocked by the baffle. Therefore, the photoelectric gate outputs a low level. When the processing unit determines that the output level of the photoelectric gate switches from the high level to the low level, it determines the zero position of the baffle corresponding to the voice coil motor and starts to count the movement stroke of the voice coil motor. If this movement stroke reaches the obtained second stroke target value, the processing unit controls the voice coil motor to move in the first direction. Refer to Figure 5 position 4 shown in

[0102] Before position 5, the voice coil motor moves in the first direction, and the optoelectronic switch continues to output a low level. At position 5, the voice coil motor moves to the zero position of the voice coil motor, and the baffle can block the photosensitive surface of the optoelectronic switch. The optoelectronic switch senses that the photosensitive surface is blocked by the baffle. Therefore, the optoelectronic switch outputs a high level. When the processing unit determines that the output level of the optoelectronic switch switches from a low level to a high level, it determines that the baffle corresponds to the zero position of the voice coil motor and starts to count the movement stroke of the voice coil motor. And so on, just repeat the above operations.

[0103] Exemplarily, when the voice coil motor moves in the first direction, when the voice coil motor moves to the zero position, start to count the movement stroke of the voice coil motor. If the movement stroke reaches the first stroke target value, then control the voice coil motor to move in the second direction, that is, use the first stroke target value to control the movement direction.

[0104] Exemplarily, when the voice coil motor moves in the second direction, when the voice coil motor moves to the zero position, start to count the movement stroke of the voice coil motor. If the movement stroke reaches the second stroke target value, then control the voice coil motor to move in the first direction, that is, use the second stroke target value to control the movement direction.

[0105] For example, the sum value of the first stroke target value and the second stroke target value can be the stroke target value. For example, the stroke target value can be denoted as d, the first stroke target value can be denoted as d1, and the second stroke target value can be denoted as d2. In this way, d1 + d2 = d. For example, d1 can be d / 2 and d2 can be d / 2.

[0106] In the above embodiment, the stroke target value is involved. The stroke target value can be between the minimum stroke and the maximum stroke, that is, the stroke target value can be greater than or equal to the minimum stroke, and the stroke target value can be less than or equal to the maximum stroke. For example, the stroke target value is (minimum stroke + maximum stroke) / 2. There is no limitation on this, as long as the above relationship is satisfied. For the maximum stroke, the maximum stroke can be the sum value of the first maximum stroke and the second maximum stroke, and the maximum stroke can be XL + XR.

[0107] In the above embodiment, the first maximum stroke and the second maximum stroke are involved. The first maximum stroke can represent the maximum stroke of the baffle in the first direction, and the second maximum stroke can represent the maximum stroke of the baffle in the second direction. For example, the stroke target value d is calculated according to the wave number. There is a certain deviation between the actual installation position of the optoelectronic switch and the zero position (the zero position of the voice coil motor). Therefore, the values of the first maximum stroke XL and the second maximum stroke XR are not the same and there is a certain difference, and their sum is equal to the stroke target value d. Through zero position calibration, it can be ensured that the situation of the effective stroke d of the voice coil motor operation will not deviate in one direction and can ensure that the voice coil motor operates within the maximum range.

[0108] For the minimum stroke, the minimum stroke can be determined based on the wavenumber resolution of the spectrometer and the stroke parameters of the configured voice coil motor, and the wavenumber resolution is a parameter pre-configured for controlling the stroke of the voice coil motor. For example, the following formula can be used to determine the minimum stroke: In the above formula, res represents the wavenumber resolution of the spectrometer (i.e., the spectrometer resolution), which can be the wavenumber resolution set by the user, with the unit of cm -1 , and the wavenumber resolution is a parameter for controlling the stroke of the voice coil motor and can be configured according to experience. w is the stroke parameter of the voice coil motor, which is related to the optical system design. After the optical system is determined, the stroke parameter of the voice coil motor is determined. The minimum stroke distance d has the unit of mm.

[0109] So far, the stroke control of the voice coil motor is completed. In a possible implementation, for the stroke control method of the voice coil motor, reference can be made to Figure 6 As shown, the stroke control method of the voice coil motor includes:

[0110] Step 601: Calculate the speed feedback value, and the calculation method can refer to the above process.

[0111] Step 602: Determine whether the voice coil motor has moved to the zero position of the voice coil motor.

[0112] If so, that is, the baffle can block the photosensitive surface of the photoelectric gate, then execute Step 603.

[0113] If not, that is, the baffle does not block the photosensitive surface of the photoelectric gate, then execute Step 606.

[0114] Step 603: Starting from the zero position of the voice coil motor, count the movement stroke of the voice coil motor.

[0115] Step 604: Determine whether the movement stroke of the voice coil motor has reached the first stroke target value or the second stroke target value (the first stroke target value for the first direction and the second stroke target value for the second direction).

[0116] If so, then Step 605 can be executed; if not, then Step 606 can be executed

[0117] Step 605: Control the voice coil motor to turn around and move, and then return to Step 601.

[0118] Step 606: Control the voice coil motor to move in the current direction (the first direction or the second direction).

[0119] Step 607: Determine whether the voltage of the voice coil motor exceeds the threshold.

[0120] If so, report an exception, indicating that the voice coil motor is operating abnormally. If not, return to step 601.

[0121] In the above process, when controlling the movement of the voice coil motor (such as controlling the voice coil motor to maintain the current direction of movement), the movement of the voice coil motor can be controlled based on the speed feedback value, and this process will not be elaborated here.

[0122] As can be seen from the above technical solutions, in this embodiment, the feedback period of the speed feedback value is short, and the hysteresis time is short. When controlling the movement speed of the voice coil motor based on the speed feedback value, the accuracy of the movement speed control can be improved. Even under external disturbances, the error between the speed feedback value and the actual speed due to hysteresis is small, and the accuracy of the movement speed control is high, improving the signal-to-noise ratio of the infrared spectral signal. When deploying the voice coil motor inside the spectrometer, the movement speed of the voice coil motor can be effectively controlled. Utilizing the characteristic of the interference signal being squared, the interference signal is compared with different threshold voltages to obtain different square wave count information. Furthermore, the rising edge time and falling edge time after the signal is squared are used as the basis for the speed feedback value, shortening the feedback period of the voice coil motor speed, making the sampled speed feedback value more consistent with the current actual operating speed, making the control more precise, and enabling the voice coil motor to have stronger anti-vibration characteristics.

[0123] Based on the same technical concept as the above application, in an embodiment of the present application, a method for controlling a voice coil motor is proposed, which is applied to a processing unit of a voice coil motor control system. The voice coil motor control system further includes a voice coil motor, a laser light source, and an interferometer. Refer to Figure 7 As shown, it is a schematic flowchart of the method. The method includes:

[0124] Step 701: Obtain a time sequence, which may include the rising edge times and falling edge times of n square wave signals; wherein, when the laser light source emits a laser signal to the interferometer, the interferometer generates an interference signal based on the laser signal, and the n square wave signals are generated based on the interference signal and n configured voltage thresholds. n can be a positive integer, and the n voltage thresholds are different from each other.

[0125] Among them, during the movement of the voice coil motor, for each reference distance of movement of the voice coil motor, the intensity change of the interference signal presents a sine period, and the reference distance is determined based on the wavelength of the laser signal.

[0126] Step 702: Start traversing each moment from the (2n + 1)-th moment of the time sequence as the current moment; determine the target duration based on the current moment and the reference moment in front of the current moment, and determine the speed feedback value based on the target duration and the reference distance; wherein, the interval between the reference moment and the current moment is 2n.

[0127] Step 703: Determine the speed deviation value based on the speed feedback value and the obtained target speed value.

[0128] Step 704: Control the movement speed of the voice coil motor based on the speed deviation value.

[0129] Exemplarily, controlling the movement speed of the voice coil motor based on the speed deviation value may include, but is not limited to: determining a target voltage value based on the speed deviation value; wherein, the target voltage value is used to determine a target power value, and the target power value is used to control the movement speed of the voice coil motor.

[0130] Exemplarily, determining the target voltage value based on the speed deviation value may include, but is not limited to: determining the target voltage value based on the voltage value at the first moment before the current moment, the speed deviation value at the current moment, the speed deviation value at the first moment before the current moment, the speed deviation value at the second moment before the current moment, the obtained proportional coefficient, the obtained integral coefficient, and the obtained differential coefficient.

[0131] Exemplarily, the voice coil motor control system may further include a baffle, and the baffle is fixedly connected to the voice coil motor. When the voice coil motor moves in the first direction, the baffle can move in the first direction along with the voice coil motor. When the voice coil motor moves in the second direction, the baffle can move in the second direction along with the voice coil motor. The first direction and the second direction are opposite directions. On this basis, during the movement of the voice coil motor in the first direction, if it is determined that the baffle corresponds to the zero position of the voice coil motor, the movement stroke of the voice coil motor is started to be counted; if the movement stroke reaches the obtained first stroke target value, the voice coil motor can be controlled to move in the second direction; during the movement of the voice coil motor in the second direction, if it is determined that the baffle corresponds to the zero position of the voice coil motor, the movement stroke of the voice coil motor is started to be counted; if the movement stroke reaches the obtained second stroke target value, the voice coil motor can be controlled to move in the first direction.

[0132] Exemplarily, the target duration can represent the duration required for the voice coil motor to move a reference distance; wherein, the distance that the voice coil motor drives the interferometer to move so that the optical path difference between two coherent light beams is λ is the reference distance, and λ can represent the wavelength of the laser signal. When determining the speed feedback value based on the target duration and the reference distance, the speed feedback value can be the quotient of the reference distance and the target duration; when determining the speed deviation value based on the speed feedback value and the target speed value, the speed deviation value can be the difference between the speed feedback value and the target speed value; wherein, the voice coil motor control system can be applied to a spectrometer, and the target speed value can be determined based on the scanning frequency of the spectrometer, the wavelength of the laser signal, and the configured value. The scanning frequency can be a parameter pre-configured for controlling the movement speed of the voice coil motor.

[0133] Exemplarily, the voice coil motor control system further includes a photoelectric switch, and the distance between the photoelectric switch and the zero position of the voice coil motor is not greater than a threshold value; wherein, when the baffle corresponds to the zero position of the voice coil motor, the baffle can block the photosensitive surface of the photoelectric switch. Determining that the baffle corresponds to the zero position of the voice coil motor may include, but is not limited to: if it is determined that the output level of the photoelectric switch switches from a first level to a second level, it is determined that the baffle corresponds to the zero position of the voice coil motor; or, if it is determined that the output level of the photoelectric switch switches from the second level to the first level, it is determined that the baffle corresponds to the zero position of the voice coil motor. Wherein, when the photoelectric switch outputs the first level, if it senses that the photosensitive surface of the photoelectric switch is blocked by the baffle, it outputs the second level; when the photoelectric switch outputs the second level, if it senses that the photosensitive surface of the photoelectric switch is blocked by the baffle, it outputs the first level. The first level is a high level and the second level is a low level, or the first level is a low level and the second level is a high level.

[0134] Exemplarily, the sum of the first stroke target value and the second stroke target value is the stroke target value; wherein, the stroke target value is between the minimum stroke and the maximum stroke, and the maximum stroke is the sum value of the configured first maximum stroke and the configured second maximum stroke; the first maximum stroke represents the maximum stroke of the baffle in the first direction, and the second maximum stroke represents the maximum stroke of the baffle in the second direction; the minimum stroke is determined based on the wavenumber resolution of the spectrometer and the configured stroke parameters of the voice coil motor, and the wavenumber resolution is a parameter pre-configured for controlling the stroke of the voice coil motor.

[0135] Based on the same application concept as the above method, an embodiment of the present application proposes a spectrometer, which includes: a processor (such as the above processing unit) and a machine-readable storage medium, and the machine-readable storage medium stores machine-executable instructions that can be executed by the processor; the processor is used to execute the machine-executable instructions to implement the voice coil motor control method disclosed in the above examples of the present application.

[0136] Based on the same application concept as the above method, an embodiment of the present application further provides a machine-readable storage medium, on which a number of computer instructions are stored, and when the computer instructions are executed by a processor, the voice coil motor control method disclosed in the above examples of the present application can be implemented.

[0137] Wherein, the above machine-readable storage medium can be any electronic, magnetic, optical or other physical storage device, and can contain or store information, such as executable instructions, data, etc. For example, the machine-readable storage medium can be: RAM (Random Access Memory, random access memory), volatile memory, non-volatile memory, flash memory, storage drive (such as hard disk drive), solid state drive, any type of storage disk (such as optical disk, dvd, etc.), or similar storage media, or a combination thereof.

[0138] Based on the same application concept as the above method, an embodiment of the present application further provides a computer program product, and the computer program product may include a computer program. Among them, when the computer program is executed by a processor, it can implement the voice coil motor control method disclosed in the above examples of the present application.

[0139] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the embodiments of the present application can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk memories, CD-ROMs, optical memories, etc.) containing computer-usable program codes.

[0140] The above are only the embodiments of the present application and are not used to limit the present application. For those skilled in the art, various changes and modifications can be made to the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principle of the present application shall be included within the scope of the claims of the present application.

Claims

1. A voice coil motor control system, characterized in that The voice coil motor control system includes a voice coil motor, a laser light source, an interferometer, a square wave conversion circuit, and a processing unit, where: The laser light source is configured to emit a laser signal to the interferometer; The interferometer is configured to generate an interference signal based on the laser signal; during the movement of the voice coil motor, when the voice coil motor moves a reference distance, the intensity change of the interference signal presents a sine period; the reference distance is determined based on the wavelength of the laser signal; The square wave conversion circuit is configured to generate n square wave signals based on the interference signal and n configured voltage thresholds; where n is a positive integer and the n voltage thresholds are different; The processing unit is configured to obtain a time sequence, the time sequence including the rising edge time and the falling edge time of each square wave signal; starting from the (2n + 1)-th time of the time sequence, each time is traversed as the current time; a target duration is determined based on the current time and a reference time in front of the current time, the interval between the reference time and the current time being 2n; a speed feedback value is determined based on the target duration and the reference distance; The processing unit is configured to determine a speed deviation value based on the speed feedback value and a obtained target speed value, and control the movement speed of the voice coil motor based on the speed deviation value.

2. The voice coil motor control system according to claim 1, characterized in that The voice coil motor control system further includes a laser receiving circuit and a signal conditioning circuit; where: The laser receiving circuit is configured to receive the interference signal output by the interferometer, perform optoelectronic conversion on the interference signal to obtain a converted interference signal, and output the converted interference signal; The signal conditioning circuit is configured to receive the converted interference signal, perform signal conditioning operations on the interference signal to obtain a conditioned interference signal, and output the conditioned interference signal; The square wave conversion circuit is configured to receive the conditioned interference signal, and for each voltage threshold, generate a square wave signal corresponding to the voltage threshold based on the interference signal; where, for each signal position of the square wave signal, if the voltage value corresponding to the signal position in the interference signal is greater than the voltage threshold, the signal position corresponds to a high level in the square wave signal, and if the voltage value corresponding to the signal position in the interference signal is not greater than the voltage threshold, the signal position corresponds to a low level in the square wave signal; or, if the voltage value corresponding to the signal position in the interference signal is greater than the voltage threshold, the signal position corresponds to a low level in the square wave signal, and if the voltage value corresponding to the signal position in the interference signal is not greater than the voltage threshold, the signal position corresponds to a high level in the square wave signal.

3. The voice coil motor control system according to claim 1, wherein the target duration represents the duration required for the voice coil motor to move the reference distance; where the distance that the voice coil motor drives the interferometer to move until the optical path difference between two coherent light beams is λ is the reference distance, and λ represents the wavelength of the laser signal; when the processing unit determines the speed feedback value based on the target duration and the reference distance, the speed feedback value is the quotient between the reference distance and the target duration; When the processing unit determines a speed deviation value based on the speed feedback value and the target speed value, the speed deviation value is the difference between the speed feedback value and the target speed value; Wherein, the voice coil motor control system is applied to a spectrometer, the target speed value is determined based on the scanning frequency of the spectrometer, the wavelength of the laser signal, and a configured value, and the scanning frequency is a parameter pre-configured for controlling the movement speed of the voice coil motor.

4. The voice coil motor control system according to claim 1, characterized in that, When the processing unit controls the movement speed of the voice coil motor based on the speed deviation value, it specifically is used for: Determining a target voltage value based on the speed deviation value; wherein, the target voltage value is used to determine a target power value, and the target power value is used to control the movement speed of the voice coil motor; Wherein, when the processing unit determines the target voltage value based on the speed deviation value, it specifically is used for: Determining the target voltage value based on the voltage value at the first moment before the current moment, the speed deviation value, the speed deviation value at the first moment before the current moment, the speed deviation value at the second moment before the current moment, the obtained proportional coefficient, the obtained integral coefficient, and the obtained differential coefficient.

5. The voice coil motor control system according to claim 1, wherein The voice coil motor control system includes a baffle, the baffle is fixedly connected to the voice coil motor, when the voice coil motor moves in a first direction, the baffle moves in the first direction along with the voice coil motor, when the voice coil motor moves in a second direction, the baffle moves in the second direction along with the voice coil motor, and the first direction and the second direction are opposite directions; wherein: The processing unit is further used for, during the movement of the voice coil motor in the first direction, if it is determined that the baffle corresponds to the zero position of the voice coil motor, starting to count the movement stroke of the voice coil motor; if the movement stroke reaches the obtained first stroke target value, controlling the voice coil motor to move in the second direction; during the movement of the voice coil motor in the second direction, if it is determined that the baffle corresponds to the zero position of the voice coil motor, starting to count the movement stroke of the voice coil motor; if the movement stroke reaches the obtained second stroke target value, controlling the voice coil motor to move in the first direction.

6. The voice coil motor control system according to claim 5, wherein The voice coil motor control system further includes a photoelectric gate, and the distance between the photoelectric gate and the zero position of the voice coil motor is not greater than a preset threshold; wherein, when the baffle corresponds to the zero position of the voice coil motor, the baffle can block the photosensitive surface of the photoelectric gate; wherein: The photoelectric gate is configured to output a first level when the voice coil motor moves in the first direction, and output a second level when it senses that the light-sensitive surface of the photoelectric gate is blocked by the baffle; output a second level when the voice coil motor moves in the second direction, and output a first level when it senses that the light-sensitive surface of the photoelectric gate is blocked by the baffle; wherein, the first level is a high level and the second level is a low level, or the first level is a low level and the second level is a high level; The processing unit is further configured to determine that the baffle corresponds to the zero position of the voice coil motor if it determines that the output level of the photoelectric gate switches from the first level to the second level; Or, determine that the baffle corresponds to the zero position of the voice coil motor if it determines that the output level of the photoelectric gate switches from the second level to the first level.

7. The voice coil motor control system according to claim 5, wherein The sum of the first stroke target value and the second stroke target value is the stroke target value; Wherein, the stroke target value is between the minimum stroke and the maximum stroke; The maximum stroke is the sum of the configured first maximum stroke and the configured second maximum stroke; the first maximum stroke represents the maximum stroke of the baffle in the first direction, and the second maximum stroke represents the maximum stroke of the baffle in the second direction; The minimum stroke is determined based on the wavenumber resolution of the spectrometer and the configured stroke parameters of the voice coil motor, and the wavenumber resolution is a parameter pre-configured for controlling the stroke of the voice coil motor.

8. A voice coil motor control method, characterized in that, A processing unit applied to a voice coil motor control system, the voice coil motor control system further includes a voice coil motor, a laser light source, and an interferometer, the method includes: Obtain a time sequence, the time sequence includes the rising edge times and falling edge times of n square wave signals; wherein, when the laser light source emits a laser signal to the interferometer, the interferometer generates an interference signal based on the laser signal, and the n square wave signals are generated based on the interference signal and the configured n voltage thresholds, n is a positive integer, and the n voltage thresholds are different; wherein, during the movement of the voice coil motor, for each movement of the voice coil motor by a reference distance, the intensity change of the interference signal presents a sine period, and the reference distance is determined based on the wavelength of the laser signal; Start traversing each time as the current time from the (2n + 1)-th time of the time sequence; determine the target duration based on the current time and the reference time in front of the current time, and determine the speed feedback value based on the target duration and the reference distance; wherein, the interval between the reference time and the current time is 2n; Determine the speed deviation value based on the speed feedback value and the obtained target speed value, and control the movement speed of the voice coil motor based on the speed deviation value.

9. The method according to claim 8, wherein The controlling the movement speed of the voice coil motor based on the speed deviation value includes: Determine a target voltage value based on the speed deviation value; wherein, the target voltage value is used to determine a target power value, and the target power value is used to control the movement speed of the voice coil motor; Wherein, the determining the target voltage value based on the speed deviation value includes: Determine the target voltage value based on the voltage value at the first moment before the current moment, the speed deviation value, the speed deviation value at the first moment before the current moment, the speed deviation value at the second moment before the current moment, the obtained proportional coefficient, the obtained integral coefficient, and the obtained differential coefficient.

10. The method according to claim 8, wherein The voice coil motor control system further includes a baffle, which is fixedly connected to the voice coil motor. When the voice coil motor moves in the first direction, the baffle moves in the first direction along with the voice coil motor. When the voice coil motor moves in the second direction, the baffle moves in the second direction along with the voice coil motor. The first direction and the second direction are opposite directions; the method further includes: During the movement of the voice coil motor in the first direction, if it is determined that the baffle corresponds to the zero position of the voice coil motor, start counting the movement stroke of the voice coil motor; if the movement stroke reaches the obtained first stroke target value, control the voice coil motor to move in the second direction; During the movement of the voice coil motor in the second direction, if it is determined that the baffle corresponds to the zero position of the voice coil motor, start counting the movement stroke of the voice coil motor; if the movement stroke reaches the obtained second stroke target value, control the voice coil motor to move in the first direction.

Citation Information

Cited By

  • One-way valve, liquid chromatograph and one-way valve opening control method

    CN120739918A