Nonlinear secondary channel modeling method with extremely low additional operand
Patent Information
- Application Number
- CN202511421426.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-30
- Publication Date
- 2026-01-16
Smart Images

Figure CN121348858A_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of active vibration and noise control, specifically involving a nonlinear secondary channel modeling method with extremely low additional computational load. It addresses the problem of how to achieve high-precision modeling of nonlinear secondary channels with extremely low additional computation when actively controlling objects with strong responses such as vibration sources. This ensures that the active control system can maintain good control performance under both low and high output conditions, and is applicable to active vibration and noise control engineering scenarios using adaptive algorithms such as filtered least mean square (FxLMS). Background Technology
[0002] Active control technology is an effective means of solving low-frequency vibration and noise problems and has gradually entered the stage of engineering application. Based on the deployment location of the error point, active control strategies can be divided into three categories: first, active control targeting the vibration or noise source; second, active control targeting the vibration and noise transmission path; and third, active control targeting the object receiving the vibration and noise. In complex environments, controlling the source often makes it easier to achieve global control effects, but because the vibration magnitude of the equipment itself is large, a large amount of energy is usually required to drive the actuator to generate secondary excitation.
[0003] When using adaptive algorithms such as Filtered Least Mean Square (FxLMS) for control, as the control process progresses, the secondary channels gradually enter the nonlinear region during convergence. This leads to significant deviations between the offline identification results and the actual characteristics, and in severe cases, can even cause system divergence, undermining the effectiveness of active control. To ensure the performance of the control system, it is necessary to provide it with more accurate secondary channel modeling results.
[0004] While existing technologies can theoretically address the modeling bias caused by secondary channel nonlinearity, online identification introduces a significant computational burden in many engineering scenarios and negatively impacts control performance, making it difficult to meet practical application requirements. Traditional lookup table methods, although adaptable to secondary channel nonlinearity to some extent, require frequent judgment or comparison operations, significantly increasing the controller's computational burden, consuming available computing resources for active control, and affecting system real-time performance.
[0005] When applying control to strongly responsive objects such as vibration sources, the actuator output range spans a large range. Conventional offline identification results cannot cover the secondary channel characteristics under different output amplitudes, making it difficult to meet the global convergence requirements of the control system. Therefore, there is an urgent need for a nonlinear secondary channel modeling method that can minimize additional computational load while ensuring modeling accuracy, so as to balance the control effect and real-time performance of the active control system. Summary of the Invention
[0006] (I) Purpose of the Invention
[0007] This invention aims to address the technical problems in the existing field of active vibration and noise control, where secondary channels easily enter the nonlinear region when controlling strong-response objects such as vibration sources, resulting in insufficient modeling accuracy. Furthermore, existing online identification and traditional table lookup indexing modeling methods suffer from high additional computational load, consume a lot of computing resources, and affect the real-time performance or control effect of the system. This invention provides a nonlinear secondary channel modeling method with extremely low additional computational load, achieving a balance between high-precision modeling and low additional computational load.
[0008] (II) Technical Solution
[0009] This invention acquires multiple sets of secondary channel impulse response sequences through offline identification, constructs a two-dimensional array to store modeling data, and utilizes the built-in instructions of a digital processor (DPS) to achieve fast indexing during the control process. The specific steps are as follows:
[0010] (1) Offline identification and acquisition of impulse response sequences:
[0011] Before active control begins, the target frequency to be controlled is determined, and N sinusoidal signals with sequentially increasing increments are selected as excitation signals. Offline modeling is then performed on the secondary channel to obtain N sets of impulse response sequences. Let the length of each impulse response sequence be M, and let the i-th impulse response sequence be denoted as S. i =[s i1 ,s i2 ,······,s iM ], where i = 1, 2, ..., N, s ij Let j be the impulse response value of the j-th group of the i-th sequence, where j = 1, 2, ..., M.
[0012] Preferably, considering the output range of commonly used digital signal processors in active control systems (usually -5V to 5V) and hardware protection requirements, the output of a single channel is limited to no more than 3.5V. N=4 is selected, and the excitation signal amplitudes are 0.5V, 1V, 2V, and 3V, respectively, to obtain 4 sets of pulse response sequences.
[0013] (2) Construct a two-dimensional array of secondary channel coefficients:
[0014] Using the N sets of impulse response sequences obtained in step 1, construct a two-dimensional array of secondary channel coefficients, Weight_SecPath[M][N], with M rows and N columns. The array element Weight_SecPath[j][i] corresponds to the (j+1)th impulse response value in the i-th impulse response sequence (i.e., Weight_SecPath[j][i] = s). i(j+1) This enables the orderly storage of secondary channel characteristics with different excitation amplitudes.
[0015] When N=4 and the excitation amplitude is 0.5V, 1V, 2V, or 3V, construct a two-dimensional array Weight_SecPath[M][4] with M rows and 4 columns. In the array, Weight_SecPath[j][0] corresponds to the (j+1)th impulse response value under 0.5V excitation, Weight_SecPath[j][1] corresponds to the (j+1)th impulse response value under 1V excitation, Weight_SecPath[j][2] corresponds to the (j+1)th impulse response value under 2V excitation, and Weight_SecPath[j][3] corresponds to the (j+1)th impulse response value under 3V excitation.
[0016] (3) Real-time output of rounded index number:
[0017] During the operation of the active control algorithm, the output signal y of the controller at each moment is rounded to the nearest integer using the built-in round instruction of the digital processor (DPS). The rounded result is assigned to the variable ind_act as the index number of the secondary channel coefficient, thereby realizing the rapid matching of the secondary channel characteristics corresponding to the current output amplitude.
[0018] (4) Index access to secondary channel coefficients:
[0019] When filtering the reference signal, the secondary channel coefficient corresponding to the current output is retrieved from the two-dimensional array Weight_SecPath[M][N] using the index number ind_act obtained in step 3. That is, the (j+1)th secondary channel coefficient is obtained by indexing Weight_SecPath[j][ind_act] (j=0,1,……,M-1), providing accurate secondary channel model support for the adaptive control algorithm.
[0020]
[0021] (III) Beneficial Effects
[0022] High modeling accuracy: This invention uses N excitation signals with progressively increasing amplitudes for offline identification to obtain the secondary channel pulse response sequence under different output amplitudes. The constructed two-dimensional array can cover the secondary channel characteristics within the actuator output range (e.g., 0.5V to 3.5V), effectively adapting to secondary channel nonlinearity and avoiding modeling deviations caused by changes in excitation energy amplitude. This ensures that the system can obtain accurate secondary channel models at both the initial low amplitude output and the high amplitude output after convergence, guaranteeing control performance.
[0023] The additional computational load is extremely low: During the control process, the index number can be obtained by performing a rounding operation on the output signal once through the built-in round instruction of the digital processor. This operation consumes very few clock cycles (taking the TIC66XX series DPS as an example, executing the round function once consumes about 4 clock cycles, which is equivalent to the clock cycle of a single multiplication operation). The additional computational load is negligible and far lower than online identification and traditional table lookup indexing methods, thus avoiding crowding out active control computing resources.
[0024] The system has excellent real-time performance: Compared with the traditional table lookup index method, which requires frequent judgment and comparison operations, this invention directly calls the secondary channel coefficients through the rounding index. The process is simple and efficient, and the real-time performance of the control system will not be damaged by retrieving the secondary channel model coefficients, ensuring the stable and efficient operation of the adaptive control algorithm.
[0025] No additional noise interference: Unlike online identification, which requires the introduction of additional noise to achieve real-time modeling, this invention builds a model based on offline identification data. No additional noise needs to be introduced during the control process, thus avoiding the adverse effects of additional noise on the performance of the control system and further ensuring control stability and reliability. Attached Figure Description
[0026] Figure 1 This is a schematic diagram showing the correspondence between the secondary channel coefficients and the controller output range of the present invention. Detailed Implementation
[0027] To make the technical solution, objectives, and advantages of the present invention clearer and more explicit, the following description is provided in conjunction with the appendix. Figure 1 The present invention provides a detailed description of the nonlinear secondary channel modeling method with extremely low additional computational load through specific embodiments. This embodiment uses a single-channel active vibration control system as an application scenario. This system employs a filtered least mean square (FxLMS) adaptive algorithm, and the digital signal processor (DPS) is a TIC66XX series, with a typical output range of -5V to 5V. To protect the hardware, the maximum output amplitude of a single channel is limited to no more than 3.5V.
[0028] Example: Nonlinear secondary channel modeling based on four sets of incrementally increasing excitations
[0029] Step 1: Determine the control parameters and perform offline identification to obtain the impulse response sequence.
[0030] First, the target frequency to be controlled is defined (in this embodiment, the target frequency is set to 100Hz, which can be adjusted according to the actual vibration and noise control requirements). Before the active control algorithm is started, four sinusoidal signals with sequentially increasing amplitudes are selected as excitation signals. The amplitudes of the excitation signals are set to 0.5V, 1V, 2V, and 3V respectively (covering the effective output range of the controller from 0 to 3.5V, and the interval between adjacent amplitudes is reasonable to ensure coverage of different nonlinear states of the secondary channel). The secondary channel is then modeled offline in sequence.
[0031] For each amplitude of the excitation signal, the impulse response sequence of the secondary channel is obtained using an impulse response test method: a 100Hz sinusoidal excitation signal of the corresponding amplitude is input into the secondary channel, and the response signal at the output of the secondary channel is acquired by a sensor. After processing by the DPS, the impulse response sequence under that excitation amplitude is obtained. Let the four sets of impulse response sequences be denoted as S1, S2, S3, and S4, respectively. The length M of each sequence is 256 (the value of M can be adjusted according to the frequency response characteristics and control accuracy requirements of the secondary channel; usually, integer powers of 2 such as 256 or 512 are chosen for efficient DPS calculation).
[0032] S1=[s 11 ,s 12 ,······,s 1256 [This corresponds to the pulse response sequence under 0.5V excitation;]
[0033] S2=[s 21 ,s 22 ,······,s 2256 ], corresponding to the impulse response sequence under 1V excitation;
[0034] S3=[s 31 ,s 32 ,······,s 3256 ], corresponding to the impulse response sequence under 2V excitation;
[0035] S4=[s 41 ,s 42 ,······,s 4256 ], corresponding to the impulse response sequence under 3V excitation;
[0036] During offline identification, the stability of the excitation signal must be ensured, and the duration of each amplitude excitation should be no less than 5 signal cycles (in this embodiment, the 100Hz signal cycle is 10ms, so the duration of each amplitude excitation is set to 50ms) to ensure that the acquired response signal can accurately reflect the characteristics of the secondary channel and reduce the impact of random errors on the pulse response sequence.
[0037] Step 2: Construct a two-dimensional array of secondary channel coefficients
[0038] Using the four sets of impulse response sequences obtained in step 1, a two-dimensional array of secondary channel coefficients, Weight_SecPath
[256] [4], with M rows and 4 columns, is constructed in the storage unit of DPS. The assignment rule for array elements is as follows: the element Weight_SecPath[j][i] in the j-th row (j=0,1,……,255) and i-th column (i=0,1,2,3) corresponds to the (j+1)-th impulse response value in the (i+1)-th impulse response sequence, that is:
[0039] Weight_SecPath[j][0]=s 1(j+1) (Corresponding to the pulse response value under 0.5V excitation);
[0040] Weight_SecPath[j][1]=s 2(j+1) (Corresponding to the impulse response value under 1V excitation);
[0041] Weight_SecPath[j][2]=s 3(j+1) (Corresponding to the pulse response value under 2V excitation);
[0042] Weight_SecPath[j][3]=s 4(j+1) (Corresponding to the pulse response value under 3V excitation);
[0043] This two-dimensional array enables the ordered storage of secondary channel characteristics with different excitation amplitudes, and the array structure is compatible with the addressing mode of DPS, facilitating subsequent fast indexing and retrieval.
[0044] Step 3: Real-time output rounding to obtain the secondary channel coefficient index number.
[0045] After initiating the active control algorithm, the DPS calculates and outputs the controller's drive signal y (output amplitude range of 0–3.5V) in real time according to the FxLMS algorithm's operational logic. For each moment of the output signal y, the built-in round instruction (hardware instruction) of the TIC66XX series DPS is called to round y to the nearest integer. The rounded result is assigned to the variable ind_act as the index number of the secondary channel coefficient. The specific rounding rules are as follows:
[0046] When the output signal y satisfies 0≤y<0.5V, the round instruction rounds the result to 0, that is, ind_act=0;
[0047] When the output signal y satisfies 0.5V≤y<1.5V, the round instruction rounds the result to 1, that is, ind_act=1;
[0048] When the output signal y satisfies 1.5V≤y<2.5V, the round instruction rounds the result to 2, that is, ind_act=2;
[0049] When the output signal y satisfies 2.5V≤y<3.5V, the round instruction rounds the result to 3, that is, ind_act=3;
[0050] The rounding operation consumes only about 4 clock cycles (equivalent to the clock cycle of a multiplication operation performed by the TIC66XX series DPS), and the additional computational load is negligible, so it will not affect the real-time performance of the control system.
[0051] Step 4: Use indexed secondary channel coefficients to complete the reference signal filtering.
[0052] When the FxLMS algorithm filters the reference signal (vibration noise reference signal matching the target frequency of 100Hz), it retrieves the secondary channel coefficients corresponding to the current output from the two-dimensional array Weight_SecPath
[256] [4] based on the index number ind_act obtained in step 3.
[0053] When ind_act = 0, Weight_SecPath[j][0] (j = 0, 1, ..., 255) is called as the secondary channel coefficient to adapt to the secondary channel characteristics in the 0 to 0.5V output range;
[0054] When ind_act = 1, Weight_SecPath[j][1] (j = 0, 1, ..., 255) is called as the secondary channel coefficient to adapt to the secondary channel characteristics of the 0.5V to 1.5V output range;
[0055] When ind_act = 2, Weight_SecPath[j][2] (j = 0, 1, ..., 255) is called as the secondary channel coefficient to adapt to the secondary channel characteristics of the 1.5V to 2.5V output range;
[0056] When ind_act = 3, Weight_SecPath[j][3] (j = 0, 1, ..., 255) is called as the secondary channel coefficient to adapt to the secondary channel characteristics of the 2.5V to 3.5V output range;
[0057] Right now:
[0058]
[0059] The secondary channel coefficients obtained by the index are substituted into the filtering formula of the FxLMS algorithm to complete the filtering process of the reference signal, generate a control signal that adapts to the characteristics of the current secondary channel, drive the actuator to generate secondary excitation, and realize precise active control of vibration noise of the vibration source.
[0060] Example 1 Verification of Effect
[0061] Using the modeling method described in the above embodiments, active control testing of vibration noise from the vibration source was conducted. In the scenario of Embodiment 1, the secondary channel modeling error of the control system in the 0-3.5V output range was less than 3%. Compared with traditional single offline identification (modeling error of 15%-20%) and online identification (additional computational load increased by 30%), the present invention ensures modeling accuracy while the additional computational load is negligible. Furthermore, there is no additional noise interference during the control process, the system converges stably, and no divergence occurs, fully verifying the effectiveness and practicality of the method of the present invention.
Claims
1. A method of modeling a nonlinear secondary path with very low additional computational effort, characterized by The method comprises the following steps: (1) Offline identification of impulse response sequence: before the start of active control, determine the target frequency to be controlled, select N sinusoidal signals with sequentially increasing amplitude as excitation signals, perform offline modeling on the secondary channel, and obtain N groups of impulse response sequences; let the length of each group of impulse response sequence be M, and the i-th group of impulse response sequence be S i = [s i1 , s i2 , ···, s iM ], where i = 1, 2, …, N, s ij is the j-th impulse response value in the i-th group of sequence j = 1, 2, …, M; (2) Constructing the secondary path coefficient two-dimensional array: based on the N sets of impulse response sequences obtained in step (1), constructing an M row N column secondary path coefficient two-dimensional array Weight_SecPath[M][N], array element Weight_SecPath[j][i] = s i(j+1) , j = 0, 1, …, M-1, i = 0, 1, …, N-1, realizing the ordered storage of the secondary path characteristics under different excitation amplitudes; (3) Real-time output rounding index acquisition: during the operation of the active control algorithm, the output signal y of the controller at each moment is rounded by using the built-in round instruction of the digital processor (DPS), and the rounding result is assigned to the variable ind_act as the index number of the secondary path coefficient; (4) Index calling of the secondary path coefficient: when filtering the reference signal, the index number ind_act obtained in step (3) is used to call the secondary path coefficient corresponding to the current output from the two-dimensional array Weight_SecPath[M][N], that is, the j+1th secondary path coefficient is obtained through Weight_SecPath[j][ind_act] (j=0, 1, …, M-1), thereby providing the adaptive control algorithm with the support of the secondary path model.
2. The method of claim 1, wherein, In step (1), the output of a single channel is limited to not more than 3.5V, and (N=4) is selected, according to the output range (-5V~5V) of the commonly used digital signal processor of the active control system and the hardware protection requirement, and the amplitudes of the excitation signals are 0.5V, 1V, 2V and 3V, respectively, corresponding to 4 groups of impulse response sequences.
3. The method of claim 2, wherein, In step (2), a two-dimensional array Weight_SecPath[M][4] of M rows and 4 columns of secondary path coefficients is constructed, wherein: Weight_SecPath[j][0] = s 1(j+1) corresponding to the impulse response value at 0.5V excitation; Weight_SecPath[j][1] = s 2(j+1) corresponding to the impulse response value under 1V excitation; Weight_SecPath[j][2] = s 3(j+1) corresponding to the impulse response value under 2V excitation; Weight_SecPath[j][3] = s 4(j+1) corresponding to the impulse response value under 3V excitation; j=0, 1, …, M-1.
4. The method of claim 1, wherein the method is characterized by, In step (1), the impulse response sequence is obtained by inputting a sine excitation signal with a corresponding amplitude into the secondary path, collecting the response signal at the output end of the secondary path through a sensor, and processing the signal by a digital processor to obtain the impulse response sequence under the excitation amplitude; and the duration of each amplitude excitation is not less than 5 signal periods.
5. The method of claim 1, wherein the method is characterized by, In step (1), the value of M is an integer power of 2, specifically 256 or 512, which adapts to the high-efficiency operation requirement of the digital processor.
6. The method of claim 1, wherein the method is characterized by, In step (3), the digital processor is a TIC66XX series DPS, and the execution of the round instruction consumes 4 clock cycles, which is equivalent to the clock cycle of a single multiplication operation of the series DPS.
7. The method of claim 1, wherein the method is characterized by, The adaptive control algorithm is a filtered-x least mean square (FxLMS) algorithm, the method is applied to the scene of active vibration noise control, and the control object is a strong response object such as a vibration source.
8. The method of claim 1, wherein the method is characterized by, In step (3), the rounding rule of the output signal y is as follows: When the output signal y satisfies 0≤y<0.5V, the rounding result of the round instruction is 0, that is, ind_act=0; When the output signal y satisfies 0.5V≤y<1.5V, the rounding result of the round instruction is 1, that is, ind_act=1; When the output signal y satisfies 1.5V≤y<2.5V, the rounding result of the round instruction is 2, that is, ind_act=2; When the output signal y satisfies 2.5V≤y<3.5V, the rounding result of the round instruction is 3, that is, ind_act=3.