Method for suppressing motor thrust fluctuation of flexible magnetic drive conveying system
Patent Information
- Application Number
- CN202611191261.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-07
- Publication Date
- 2026-10-20
- Estimated Expiration
- 2046-08-07
AI Technical Summary
[0004]1.现有方法多采用快速傅里叶变换提取电流谐波,需要至少一个完整周期的数据窗,导致谐波检测滞后于负载变化,较难实现实时调节;
[0047]针对响应延迟较明显的问题,本发明采用dq旋转坐标系变换代替FFT,通过低通滤波直接提取谐波幅值与相位,无需等待整周期数据窗,延迟显著降低,满足动态载荷下的实时调节需求;
Smart Images

Figure CN122697936B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of motor control technology, specifically relating to a method for suppressing motor thrust fluctuations in a flexible magnetic drive conveyor system, which is particularly applicable to flexible magnetic drive conveyor systems driven by permanent magnet synchronous linear motors. Background Technology
[0002] The existing method for suppressing motor thrust fluctuations in a flexible magnetic drive conveyor system mainly relies on fixed-parameter harmonic injection. This method can only perform offline calibration and compensation for no-load or single-load conditions, and it is difficult to meet the operational requirements of variable load, high dynamics, and multiple operating conditions.
[0003] Specifically, the following technical defects exist:
[0004] 1. Existing methods mostly use fast Fourier transform to extract current harmonics, which requires at least one complete cycle of data window, causing harmonic detection to lag behind load changes and making it difficult to achieve real-time adjustment;
[0005] 2. When the weight of the mover load changes, the saturation of the motor's magnetic circuit and the drift of the operating point increase, the deviation between the fixed compensation parameters and the amplitude and phase of the actual required reverse harmonic increases, and the thrust fluctuation suppression accuracy is more likely to decrease.
[0006] 3. The harmonic frequency distribution differs significantly between light and heavy load conditions. Existing methods do not classify the load, resulting in wasted computational resources under light load conditions and insufficient suppression of high-order harmonics under heavy load conditions, leading to poor overall integration.
[0007] 4. The communication link between the controller and the driver lacks redundancy design. Once a signal is lost or a command frame is incorrect, the system is more likely to shut down directly and lacks the ability to maintain operation.
[0008] In summary, existing technologies have difficulty in achieving adaptive suppression of thrust fluctuations across the entire load range, and their communication reliability and dynamic response performance are poor, resulting in a poor user experience. Summary of the Invention
[0009] To address the shortcomings of existing technologies, this invention provides a method for suppressing motor thrust fluctuations in a flexible magnetic drive conveyor system. Through a collaborative mechanism of load classification and discrimination, real-time extraction via dq transformation, redundant communication for fault tolerance, and closed-loop adaptive adjustment, it achieves precise suppression of thrust fluctuations under all operating conditions, enabling users to obtain smooth and stable conveying motion and a lower rate of unplanned downtime, thus overcoming the deficiencies of existing technologies.
[0010] To achieve the above objectives, the present invention provides the following technical solution:
[0011] This invention provides a method for suppressing motor thrust fluctuations in a flexible magnetic drive conveyor system, including...
[0012] Step 1: The load weight information of the mover is obtained in real time through the load sensing unit. At least two independent redundant communication links are set between the load sensing unit and the controller, and between the controller and the driver module.
[0013] Step 2: Acquire three-phase current signals in real time, perform CRC check on the signals, and extract the amplitude and phase of the specified harmonic components through dq transformation after the check passes.
[0014] Step 3: The controller level discrimination module receives the load weight information and compares it with the threshold. , In comparison, they are classified into one of three levels: light load, medium load, or heavy load.
[0015] Step 4: The harmonic injection parameter calculation module receives harmonic data and level identifiers, selects the corresponding suppression strategy based on the level identifiers, and calculates the amplitude compensation coefficient, phase compensation coefficient, and amplitude and phase of each injection of the reverse harmonic injection current.
[0016] The calculation results are packaged into current command frames, with a sequence number and CRC check code attached, and synchronously sent to each driver module via redundant communication links;
[0017] Step 5: The driver module receives the current command frame, performs serial number verification and CRC verification, and after confirming that there are no errors, generates a reverse harmonic injection current and superimposes it on the fundamental current command to drive the motor to run.
[0018] If a redundant communication link fails to receive valid command frames three times in a row, it is determined that the link signal is lost, and it is automatically switched to another backup link. Open-loop hold control is performed based on the load weight information of the most recent valid cycle and the preset state observer model until communication is restored. If both links fail, shutdown is performed according to the preset safety policy.
[0019] Step 6: Collect thrust data and actual current in real time, and calculate the suppression effect evaluation value;
[0020] The deviation between the evaluated value and the current harmonic component relative to the target value is fed back to the harmonic injection parameter calculation module for online adjustment of the compensation coefficient. The thrust data collected during the evaluation process is accompanied by a timestamp and sequence number, which the receiving end uses to make out-of-order reordering and packet loss retransmission requests.
[0021] Preferably, the method for extracting harmonic components through dq transformation in step 2 is as follows: Clarke and Park transformations are performed on the three-phase current signal to convert the current components in the three-phase stationary coordinate system into DC components and harmonic components in the two-phase rotating coordinate system; in the dq rotating coordinate system, the first... The subharmonic current vector satisfies:
[0022] ,
[0023] in, For the first dq rotating coordinate system d-axis component of the subharmonic current; For the first dq rotating coordinate system q-axis component of the second harmonic current. For the first The amplitude of the second harmonic. For the first Phase angle of the subharmonic, Let be the initial phase difference between the dq coordinate system and the harmonic vector.
[0024] Preferably, the specific configuration of the three inhibition levels in step 3 is as follows:
[0025] Light load: Load range 0≤ < After the controller level discrimination module outputs the level identifier, the harmonic injection parameter calculation module calculates the reverse injection parameters for the 5th to 7th harmonics using a feedforward compensation method.
[0026] Medium load: Load range ≤ ≤ The harmonic injection parameter calculation module uses a closed-loop adaptive method to calculate the reverse injection parameters for the 5th to 13th harmonics.
[0027] Heavy load: Load range > The harmonic injection parameter calculation module calculates the reverse injection parameters for the 5th to 19th harmonics using a weighted composite injection method; wherein... For 0.3 to 0.5 times the rated load, It is 0.8 to 1.0 times the rated load.
[0028] Preferably, in step 3, the controller level discrimination module uses a hysteresis criterion to switch between the three suppression levels:
[0029] When the load level changes from low to high, the following must be met: When the load decreases from a high level to a low level, the following conditions must be met. ,in, This is the threshold load. The coefficient for load transitioning from a lower to a higher level. This is a coefficient used when the load decreases from a high level to a low level. and The values range from 0.02 to 0.08; during the level switching process,
[0030] The harmonic injection parameter calculation module performs linear interpolation on the suppression parameters before and after the switch; and, during the level switch, the redundant communication link synchronously sends multiple copies of the switch command, and the driver module at the receiving end performs a majority vote on the received multiple copies, confirming the command as valid when at least two copies are consistent.
[0031] Preferably, the expression for the reverse harmonic injection current generated by the harmonic injection parameter calculation module in step 4 in the three-phase stationary coordinate system is:
[0032] ,
[0033] in, , This is the amplitude compensation coefficient; , This refers to the phase compensation coefficient; This is the compensation offset angle related to the load level.
[0034] Preferably, in step 4, when the suppression level is Level II, the harmonic injection parameter calculation module uses a closed-loop adaptive method to adjust the amplitude compensation coefficient online. and phase compensation coefficient :
[0035] ,
[0036] ,
[0037] in The amplitude deviation is taken from the difference between the measured harmonic amplitude in step 2 and the target value. This is due to phase deviation; , As the initial value, , , , These are the PID control coefficients.
[0038] Preferably, in step 4, when the suppression level is Level III, the total compensation current calculated by the harmonic injection parameter calculation module is composed of the weighted superposition of each harmonic injection component:
[0039] ,
[0040] ,
[0041] in It is the set of orders of odd-order harmonics in the range of 5th to 19th. , Coefficient and + =1, For the first Weighting coefficients for subharmonics To preset the basic weights, For the first The injected current component of the subharmonic; To Measurements related to subharmonics Sum.
[0042] Preferably, the inhibition effect evaluation value in step 6 The calculation formula is:
[0043] ,
[0044] in For the i-th thrust value collected, For the desired thrust, The number of sampling points within an evaluation period; when When the value is ≤3, the current suppression parameter remains unchanged.
[0045] when >3. The harmonic injection parameter calculation module is activated at any time to perform closed-loop adaptive adjustment of the injection parameters; and, during the evaluation process, the thrust data collected, along with timestamps and sequence numbers, is fed back to the controller via redundant communication links, and the receiving end uses this information to request out-of-order reordering and packet loss retransmission.
[0046] This invention provides a method for suppressing motor thrust fluctuations in a flexible magnetic drive conveyor system. It offers the following advantages:
[0047] To address the issue of significant response delay, this invention replaces FFT with dq rotating coordinate system transformation and directly extracts harmonic amplitude and phase through low-pass filtering, eliminating the need to wait for an entire data window, thus significantly reducing delay and meeting the real-time adjustment requirements under dynamic loads.
[0048] To address the issue of low control accuracy, this invention introduces online PID adjustment of amplitude compensation coefficient and phase compensation coefficient under medium and heavy load levels, enabling the injection parameters to be automatically updated in accordance with load changes, effectively compensating for deviations caused by operating point drift, and controlling the thrust fluctuation amplitude within 3% of the rated thrust across the entire load range.
[0049] To address the issue of poor fusion across multiple load levels, this invention divides the load into three levels: light load, medium load, and heavy load. Different sets of harmonic injection orders and feedforward / adaptive / weighted composite suppression modes are configured for each level. Light load saves resources, while heavy load improves performance. The load levels are smoothly switched through hysteresis criteria, resulting in a significant improvement in fusion.
[0050] To address the issue of weak offline fault tolerance, this invention establishes at least two independent redundant communication links between the controller, driver, and load sensing unit. Each link is equipped with CRC check and timeout retransmission. When signal loss is detected, the link automatically switches and maintains operation in an open loop based on the state observer. When switching levels, multiple copies are sent and majority voting confirmation instructions are used, significantly improving fault tolerance and field reliability. Attached Figure Description
[0051] Figure 1 This is a flowchart of the overall method of the present invention.
[0052] Figure 2 This is a flowchart of the communication fault tolerance and redundant link switching of the present invention.
[0053] Figure 3 This is a flowchart of the hierarchical suppression strategy of the present invention. Detailed Implementation
[0054] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0055] like Figure 1 As shown, in one embodiment, a method for suppressing motor thrust fluctuations in a flexible magnetic drive conveyor system includes...
[0056] Step 1: Load awareness and data distribution.
[0057] The load weight information of the mover is acquired in real time through a load sensing unit (which is mounted on the mover and includes a weight sensor or a module that indirectly calculates the weight through current). At least two independent redundant communication links are provided between the load sensing unit and the controller, and between the controller and the driver module (each link refers to a physically separate communication channel, such as CAN bus, EtherCAT, or wireless and wired backup).
[0058] Each redundant communication link is configured with a data verification and timeout retransmission mechanism (data verification includes CRC verification, and timeout retransmission means waiting for confirmation after sending, and retransmitting if no confirmation is received within the timeout period).
[0059] The load weight information The data is sent to the controller level discrimination module via a redundant communication link. This module is a software functional unit within the controller, responsible for classifying the level according to the load weight, and also caches a copy in the local non-volatile memory as a backup in case of communication loss.
[0060] Step 2: Current harmonic extraction.
[0061] Real-time acquisition of three-phase current signals (Sampling is performed using a Hall current sensor or shunt, with a sampling frequency at least 10 times the motor's fundamental frequency.) This signal is then subjected to CRC (Cyclic Redundancy Check, using a 16-bit or 32-bit polynomial to detect data transmission errors). After passing the check, the amplitude of the specified harmonic component is extracted using dq transform (a mathematical transformation that transforms a three-phase stationary coordinate system to a two-phase rotating coordinate system, including Clarke transform and Park transform). and phase ;
[0062] Extract the results , The parameters are sent to the harmonic injection parameter calculation module via the same set of redundant communication links. This module is another software functional unit within the controller and is responsible for calculating the reverse harmonic injection parameters.
[0063] Step 3: Load level determination.
[0064] The controller level discrimination module receives load weight information. Compare it with the threshold , (This is a preset constant, calibrated according to the rated load of the motor) Comparison, classify into one of three levels: light load (Level I), medium load (Level II), or heavy load (Level III), and send the level identifier to the harmonic injection parameter calculation module;
[0065] Step 4: Calculation of reverse harmonic injection parameters.
[0066] The harmonic injection parameter calculation module receives harmonic data. , Based on the level identifier, the corresponding suppression strategy (feedforward compensation / closed-loop adaptive / weighted composite) is selected. Feedforward compensation refers to directly providing the injection value based on the offline calibration table; closed-loop adaptive refers to adjusting according to real-time error feedback; weighted composite refers to superimposing different order harmonics after assigning weights) and the amplitude compensation coefficient of the reverse harmonic injection current is calculated. Phase compensation coefficient and the amplitude of each injection and phase ;
[0067] The calculation results are packaged into current command frames, with a sequence number appended for detecting packet loss, out-of-order delivery, and CRC checksums. These frames are then synchronously sent to each driver module via redundant communication links. Each driver module corresponds to a stator coil segment and is responsible for generating the drive current.
[0068] Step 5: Current command superposition and execution.
[0069] like Figure 2 As shown, the driver module receives the current command frame, performs serial number verification and CRC verification (verifying the continuity of the serial number and the correctness of the CRC code), and generates a reverse harmonic injection current after confirming that there are no errors. And superimposed on the fundamental current command (The fundamental current command is output by the speed loop or position loop PID controller), driving the motor to run;
[0070] If a redundant communication link fails to receive a valid command frame three times consecutively (three consecutive times means no frame received or verification failed within three consecutive transmission cycles), the link signal is determined to be lost. The system automatically switches to another backup link and performs open-loop hold control based on the load weight information of the most recent valid cycle and a preset state observer model (an estimation algorithm based on the motor model, such as an extended Kalman filter or a Luneburg observer, used to estimate the mover position and speed when communication is unavailable). This means the system no longer relies on real-time feedback and operates at a constant current or speed according to the last valid command until communication is restored. If both links fail, a shutdown or speed-limited operation is executed according to a preset safety policy (the safety policy refers to immediately decelerating to zero or continuing operation at a set safe speed).
[0071] Step 6: Thrust effect evaluation and closed-loop feedback.
[0072] Real-time acquisition of thrust data (Obtained via force sensor or estimated based on current and position) and actual current Calculate the inhibition effect evaluation value ;
[0073] Will The deviation of the current harmonic component from the target value is fed back to the harmonic injection parameter calculation module for online adjustment. and This forms a closed control loop; the thrust data collected during the evaluation process is accompanied by a timestamp (absolute or relative time in milliseconds or microseconds) and a sequence number. The receiving end uses this information to perform out-of-order reordering (reordering the received out-of-order data packets according to the sequence number) and packet loss retransmission requests (actively requesting retransmission when a missing sequence number is detected).
[0074] Specifically, the method for extracting harmonic components through dq transformation in step 2 is as follows: performing Clarke transformation on the three-phase current signal (transforming...) Transformed into a two-phase stationary coordinate system ) and Park transformation (to Transformed into a two-phase rotating coordinate system The rotational angular velocity is the electric angular velocity of the motor. The current components in the three-phase stationary coordinate system are converted into DC components and harmonic oscillation components in the two-phase rotating coordinate system. In the dq rotating coordinate system, the first... The subharmonic current vector satisfies:
[0075] ,
[0076] in, For the first dq rotating coordinate system d-axis component of the subharmonic current; For the first dq rotating coordinate system q-axis component of the second harmonic current. For the first The amplitude of the second harmonic. For the first Phase angle of the subharmonic, The initial phase difference between the dq coordinate system and the harmonic vector is used; the harmonic vector is extracted through low-pass filtering (cutoff frequency is lower than half the fundamental frequency). , You can get and .
[0077] Specifically, such as Figure 3 As shown, the specific configuration of the three inhibition levels in step 3 is as follows:
[0078] Light load (Class I): Load range 0≤ < After the controller level discrimination module outputs the level identifier, the harmonic injection parameter calculation module uses a feedforward compensation method for the 5th to 7th harmonics (the feedforward compensation value is a fixed amplitude and phase calibrated in advance through offline experiments and stored in a lookup table) to calculate the reverse injection parameters.
[0079] Medium load (Class II): Load range ≤ ≤ The harmonic injection parameter calculation module uses a closed-loop adaptive method (referring to dynamically correcting the injection parameters through a PID controller by utilizing the real-time feedback thrust fluctuation error) to calculate the reverse injection parameters for the 5th to 13th harmonics.
[0080] Heavy load (Level III): Load range > The harmonic injection parameter calculation module calculates the reverse injection parameters for the 5th to 19th harmonics using a weighted composite injection method (assigning different weight coefficients to different harmonics, which are then superimposed as the total compensation current); wherein For 0.3 to 0.5 times the rated load, It is 0.8 to 1.0 times the rated load.
[0081] Specifically, in step 3, the controller level discrimination module uses a hysteresis criterion (hysteresis criterion refers to a buffer set to avoid frequent switching near the threshold, which requires a certain amount of time to exceed the threshold before switching) to switch between the three suppression levels:
[0082] When the load level changes from low to high, the following must be met: When the load decreases from a high level to a low level, the following conditions must be met. ,in, This is the threshold load. The coefficient for load transitioning from a lower to a higher level. This is a coefficient used when the load decreases from a high level to a low level. and The values range from 0.02 to 0.08 (i.e., the hysteresis width is 2% to 8% of the threshold); during the level switching process,
[0083] The harmonic injection parameter calculation module performs linear interpolation on the suppression parameters before and after the switch (e.g., gradually transitioning from the old parameters to the new parameters over several control cycles to avoid abrupt changes); and, during the level switch, the redundant communication link synchronously sends multiple copies of the switching command (e.g., sending three copies simultaneously). The driver module at the receiving end performs a majority vote on the received copies, and confirms the command is valid when at least two copies are identical (i.e., a two-out-of-three mechanism).
[0084] Specifically, the expression for the reverse harmonic injection current generated by the harmonic injection parameter calculation module in step 4 in the three-phase stationary coordinate system is as follows:
[0085] ,
[0086] in, , This is the amplitude compensation coefficient (ranging from 0.8 to 1.2, used to correct amplitude deviations caused by non-ideal system characteristics). , This is the phase compensation coefficient (with a value range of -30° to +30°, used to correct phase lag). The compensation offset angle is related to the load level (the preset additional phase for different levels, such as 0° for light load and +10° for heavy load). and Provided via redundant communication links from step 2.
[0087] Specifically, in step 4, when the suppression level is Level II, the harmonic injection parameter calculation module uses a closed-loop adaptive method to adjust the amplitude compensation coefficient online. and phase compensation coefficient :
[0088] ,
[0089] ,
[0090] in The amplitude deviation (the difference between the measured harmonic amplitude and the target value of 0) is taken from the difference between the measured harmonic amplitude and the target value in step 2. Phase deviation (the difference between the measured harmonic phase and the phase of the reverse-injected signal); , The initial value (either through offline calibration or a preset typical value). , , , The PID control coefficients (tuned using the Ziegler-Nichols method or trial and error); adjusted , Used to update the injection parameters in step 4, and then sent to the driver module in step 5.
[0091] Specifically, in step 4, when the suppression level is Level III, the total compensation current calculated by the harmonic injection parameter calculation module is composed of the weighted superposition of each harmonic injection component:
[0092] ,
[0093] ,
[0094] in It is the set of orders of odd-order harmonics in the range of 5th to 19th. , Coefficient and + =1 (usually α is taken as 0.3 to 0.7, and β is taken as the corresponding value, so that the weights include both preset experience and adapt to real-time harmonic content). For the first Weighting coefficients for subharmonics Preset basic weights (e.g., 5th harmonic weight 0.3, 7th harmonic weight 0.25, 11th harmonic weight 0.2, 13th harmonic weight 0.15, 17th harmonic weight 0.05, 19th harmonic weight 0.05). For the first The subharmonic injection current component (from step 5) (Generation of single harmonic terms) To Measurements related to subharmonics Summation, calculation results The output of step 4 is sent to step 5.
[0095] Specifically, the inhibition effect evaluation value in step 6 The calculation formula is:
[0096] ,
[0097] in For the i-th thrust value collected, The desired thrust (determined based on the velocity loop output or a given command). The number of sampling points within an evaluation period (e.g., E is calculated once every 100 sampling points); when When the value is ≤3, the current suppression parameter remains unchanged.
[0098] when >3. The harmonic injection parameter calculation module is activated at any time to perform closed-loop adaptive adjustment of the injection parameters; and, during the evaluation process, the thrust data collected, along with timestamps and sequence numbers, is fed back to the controller via redundant communication links, and the receiving end uses this information to request out-of-order reordering and packet loss retransmission.
[0099] Specifically: when a sequence number change is detected, a request is made to the sender to retransmit the lost data packet; when a sequence number is received that is disordered, it is reassembled according to the sequence number and then used.
[0100] In one embodiment, this system is applied to a ring-shaped flexible magnetic drive conveyor system. Its stator track is composed of 12 standard straight modules and 4 curved modules, with a total length of approximately 8 meters. The system is equipped with:
[0101] Load sensing unit: A single-point weighing sensor (range 0~10kg, accuracy ±5g) is integrated at the bottom of each mover (a total of 8 independent movers), with a sampling period of 10ms.
[0102] Controller: Uses Beckhoff CX5130 embedded PC, running TwinCAT 3 real-time kernel, with a control cycle of 250μs.
[0103] Driver module: Each stator track corresponds to an independent servo driver (16 in total), which are connected via EtherCAT bus.
[0104] Redundant communication links: Two independent EtherCAT ring networks (network A and network B) are deployed between the controller and the driver. Each link is configured with CRC32 check and timeout retransmission (timeout threshold 2ms, retransmission up to 3 times).
[0105] Current sampling: The current of each phase is sampled by a Hall effect sensor at a sampling frequency of 20kHz and a 16-bit ADC.
[0106] The steps for implementing the suppression method are as follows;
[0107] Step 1: Load awareness and data distribution.
[0108] After the system is powered on, the load cell of each mover continuously outputs load weight data. For example, if a mover is currently carrying a 0.85kg workpiece, the load cell measures... =0.85kg. This data is simultaneously transmitted to the controller level discrimination module in the controller via two redundant links, A and B. At the same time, the load values of the most recent 5 cycles are cached in the local non-volatile memory (FRAM) of the mover for use in case of communication interruption.
[0109] The controller receives load weight information for each mover every 2ms. If a link fails to receive a valid data frame for 3 consecutive times (i.e., within 6ms) (CRC check failure or timeout), the controller automatically switches to another link. If both links fail, a speed limit command (reducing to 30% of the rated speed) is sent to the driver module associated with that mover, and an alarm is triggered.
[0110] Step 2: Current harmonic extraction.
[0111] For the stator segment (segment 5) where the mover is currently located, the driver collects the three-phase current in real time. After performing CRC verification on each group of sampled values, the following dq transform is performed to extract the 5th, 7th, 11th, and 13th harmonics (the number of extractions is determined based on the subsequent classification level, but this step can pre-extract up to the 13th harmonic):
[0112] Clarke transform:
[0113] ,
[0114] ,
[0115] Park transform:
[0116] 1. ,
[0117] in The electric angle of the mover is obtained through the encoder.
[0118] Harmonic separation: A notch filter constructed using a second-order generalized integrator (SOGI) is used to extract harmonics. and The 5th, 7th, 11th, and 13th harmonic components are extracted. Let the extracted 5th harmonic component on the dq axis be... , Then the amplitude phase Similarly, the amplitudes and phases of the 7th, 11th, and 13th harmonics were obtained.
[0119] Extraction results The signal is transmitted to the harmonic injection parameter calculation module via a redundant link.
[0120] Step 3: Load level determination.
[0121] The controller level determination module determines the level based on the data received in step 1. The system is classified into grades based on a load capacity of 0.85 kg. The system's rated load is 2 kg. The settings are as follows:
[0122] ,
[0123] ,
[0124] Since 0.8 ≤ 0.85 ≤ 1.8, it is classified as Level II (medium load). The level identifier "II" is sent to the harmonic injection parameter calculation module.
[0125] To avoid frequent load switching at threshold boundaries, the hysteresis parameter is set to... =0.05, =0.05. That is, only when the load exceeds 0.8 × 1.05 = 0.84 kg can it move from Level I to Level II (currently 0.85 kg is met). To move from Level II back to Level I, the load needs to be lower than 0.8 × 0.95 = 0.76 kg, and there will be no shaking.
[0126] Step 4: Calculation of reverse harmonic injection parameters.
[0127] The harmonic injection parameter calculation module simultaneously receives the harmonic data from step 2. =0.12A, =1.23 rad; =0.08A, =2.45 rad; =0.03A, =0.67 rad; =0.02A, =3.12rad) and the level identifier "Ⅱ" in step 3. Since the level is level Ⅱ, a closed-loop adaptive strategy is adopted.
[0128] Initialize amplitude compensation coefficient ==0.95, initial value of phase compensation coefficient =0.05rad, =−0.03rad, =0.02rad, =−0.01rad. The PID control coefficient is set to... =0.8, =20, =0.5, =15.
[0129] Based on the deviation between the current measured harmonic amplitude and the target value (target is 0) ,calculate:
[0130] ,
[0131] (The integral term is actually implemented by discrete accumulation, taking the accumulated value after the last adjustment.) Assuming the current integral accumulation is 0.02, then... Similarly, calculate the phase compensation coefficients for each harmonic. .
[0132] Then, the expression for the reverse harmonic injection current is generated (only the 5th harmonic is listed as an example):
[0133] ,
[0134] ,
[0135] ,
[0136] Similarly, calculate the components for the 7th, 11th, and 13th orders, and sum them. .
[0137] After the calculation is completed, the current command is packaged into an EtherCAT frame, with an additional sequence number (incrementing from 0) and a CRC32 checksum, and sent simultaneously on both network A and network B.
[0138] Step 5: Current command superposition and execution.
[0139] After receiving a command frame, the driver module verifies that the sequence number (continuous, without jumps) and CRC are correct. If a frame is lost on a certain link (e.g., two consecutive frames with increasing sequence numbers are not received), the driver immediately switches to another link to obtain commands; if both links receive no valid commands three times consecutively, the driver maintains open-loop control based on the most recently saved load weight information (0.85kg) and the built-in state observer (a simplified second-order motor model), outputs holding current, and reports a fault.
[0140] Under normal operating conditions, the driver will reverse the harmonic current. Superimposed on the fundamental current command The output is modulated by SVPWM and sent to the inverter to drive the actuator to move.
[0141] Step 6: Thrust effect evaluation and closed-loop feedback.
[0142] During the movement of the rotor, the thrust value is collected in real time by thin-film pressure sensors integrated on the stator guide rails (one at each end of each stator segment, with a range of 50N). Data is collected every 1 ms, and each evaluation cycle is 100 ms (N=100). Expected thrust. =10N (base value when running at a constant speed).
[0143] Calculate the evaluation value:
[0144] ,
[0145] If the measured average fluctuation is 2.5 (i.e., E=2.5), since 2.5≤3, the current injection parameters remain unchanged. If, within a certain period, external disturbances cause E=4.2, the harmonic injection parameter calculation module in step 4 is triggered to readjust K and And inject again until E≤3.
[0146] During the evaluation process, thrust data, accompanied by timestamps (1ms accuracy) and sequence numbers, is fed back to the controller via a redundant link. If packet loss occurs in the feedback link, the controller can request retransmission based on the sequence number and rearrange the out-of-order data according to the timestamps before calculating the evaluation value.
[0147] Assuming the same mover is subsequently loaded to 1.9 kg (exceeding...) =1.8kg), entering Level III (heavy load). During level switching, the controller level determination module simultaneously sends three copies of the switching command through links A and B. After receiving the three copies, the driver compares them one by one. If two of the three copies are consistent (switching to Level III), the switch is confirmed to be valid. If only one arrives or only one is consistent with the others, the switch command is discarded and retransmitted.
[0148] During the switching process, the harmonic injection parameter calculation module performs linear interpolation to transition the injection parameters of Level II (only 5th, 7th, 11th, and 13th harmonics) with the predetermined parameters of Level III (adding 17th and 19th harmonics, with different weights for each harmonic). The transition time is 5ms to prevent secondary fluctuations caused by parameter abrupt changes.
[0149] Using the above methods, the thrust fluctuation of the flexible magnetic drive conveyor system under different loads (no load, 0.85 kg, 1.9 kg) was controlled within 2.8% of the rated thrust, meeting the design requirements. When the A network connection was manually disconnected, the system automatically switched to the B network within 2 ms, with no significant change in thrust fluctuation (fluctuation increment <0.5%). When both networks were interrupted simultaneously, the system decelerated to 0.3 m / s according to the preset strategy and triggered an alarm, without any loss of control.
[0150] The above embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to limit it. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A method for suppressing motor thrust fluctuations in a flexible magnetic drive conveyor system, characterized in that, include Step 1: The load weight information of the mover is obtained in real time through the load sensing unit. At least two independent redundant communication links are set between the load sensing unit and the controller, and between the controller and the driver module. Step 2: Acquire three-phase current signals in real time, perform CRC check on the signals, and extract the amplitude and phase of the specified harmonic components through dq transformation after the check passes. Step 3: The controller level discrimination module receives the load weight information and compares it with the threshold. , In comparison, they are classified into one of three levels: light load, medium load, or heavy load. Step 4: The harmonic injection parameter calculation module receives harmonic data and level identifiers, selects the corresponding suppression strategy based on the level identifiers, and calculates the amplitude compensation coefficient, phase compensation coefficient, and amplitude and phase of each injection of the reverse harmonic injection current. The calculation results are packaged into current command frames, with a sequence number and CRC check code attached, and synchronously sent to each driver module via redundant communication links; Step 5: The driver module receives the current command frame, performs serial number verification and CRC verification, and after confirming that there are no errors, generates a reverse harmonic injection current and superimposes it on the fundamental current command to drive the motor to run. If a redundant communication link fails to receive valid command frames three times in a row, it is determined that the link signal is lost, and it is automatically switched to another backup link. Open-loop hold control is performed based on the load weight information of the most recent valid cycle and the preset state observer model until communication is restored. If both links fail, shutdown is performed according to the preset safety policy. Step 6: Collect thrust data and actual current in real time, and calculate the suppression effect evaluation value; The deviation between the evaluated value and the current harmonic component relative to the target value is fed back to the harmonic injection parameter calculation module for online adjustment of the compensation coefficient. The thrust data collected during the evaluation process is accompanied by a timestamp and sequence number, which the receiving end uses to make out-of-order reordering and packet loss retransmission requests. The specific configuration of the three inhibition levels in step 3 is as follows: Light load: Load range 0≤ < After the controller level discrimination module outputs the level identifier, the harmonic injection parameter calculation module calculates the reverse injection parameters for the 5th to 7th harmonics using a feedforward compensation method. Medium load: Load range ≤ ≤ The harmonic injection parameter calculation module uses a closed-loop adaptive method to calculate the reverse injection parameters for the 5th to 13th harmonics. Heavy load: Load range > The harmonic injection parameter calculation module calculates the reverse injection parameters for the 5th to 19th harmonics using a weighted composite injection method; wherein... For 0.3 to 0.5 times the rated load, For 0.8 to 1.0 times the rated load; In step 3, the controller level discrimination module uses a hysteresis criterion to switch between the three suppression levels: When the load level changes from low to high, the following must be met: ; When the load decreases from a high level to a low level, the following must be met: ,in, This is the threshold load. The coefficient for load transitioning from a lower to a higher level. This is a coefficient used when the load decreases from a high level to a low level. and The values range from 0.02 to 0.08; during the level switching process, The harmonic injection parameter calculation module performs linear interpolation on the suppression parameters before and after the switching. Furthermore, during level switching, the redundant communication link synchronously sends multiple copies of the switching command. The driver module at the receiving end performs a majority vote on the received multiple copies, and confirms the command is valid when at least two copies have the same content.
2. The method according to claim 1, characterized in that, In step 2, the method for extracting harmonic components through dq transformation is as follows: Clarke and Park transformations are performed on the three-phase current signal to convert the current components in the three-phase stationary coordinate system into DC components and harmonic components in a two-phase rotating coordinate system; in the dq rotating coordinate system, the first... The subharmonic current vector satisfies: , in, For the first dq rotating coordinate system d-axis component of the subharmonic current; For the first dq rotating coordinate system q-axis component of the second harmonic current. For the first The amplitude of the second harmonic. For the first Phase angle of the subharmonic, Let be the initial phase difference between the dq coordinate system and the harmonic vector.
3. The method according to claim 1, characterized in that, The expression for the reverse harmonic injection current generated by the harmonic injection parameter calculation module in step 4 in the three-phase stationary coordinate system is as follows: , in, , This is the amplitude compensation coefficient; , This refers to the phase compensation coefficient; This is the compensation offset angle related to the load level.
4. The method according to claim 3, characterized in that, In step 4, when the suppression level is Level II, the harmonic injection parameter calculation module uses a closed-loop adaptive method to adjust the amplitude compensation coefficient online. and phase compensation coefficient : , , in The amplitude deviation is taken from the difference between the measured harmonic amplitude in step 2 and the target value. This is due to phase deviation; , As the initial value, , , , These are the PID control coefficients.
5. The method according to claim 4, characterized in that, In step 4, when the suppression level is III, the total compensation current calculated by the harmonic injection parameter calculation module is composed of the weighted superposition of each harmonic injection component: , , in It is the set of orders of odd-order harmonics in the range of 5th to 19th. , Coefficient and + =1, For the first Weighting coefficients for subharmonics To preset the basic weights, For the first The injected current component of the subharmonic; To Measurements related to subharmonics Sum.
6. The method according to claim 1, characterized in that, The inhibition effect evaluation value in step 6 The calculation formula is: , in For the i-th thrust value collected, For the desired thrust, The number of sampling points within an evaluation period; when When the value is ≤3, the current suppression parameter remains unchanged. when >
3. The harmonic injection parameter calculation module is activated at any time to perform closed-loop adaptive adjustment of the injection parameters; and, during the evaluation process, the thrust data collected, along with timestamps and sequence numbers, is fed back to the controller via redundant communication links, and the receiving end uses this information to request out-of-order reordering and packet loss retransmission.
Citation Information
Patent Citations
LED driving power supply and output control method thereof
CN120812794A
Weak magnetic sensor push-pull output detection method and system based on row and column scanning
CN121164992A