Crane anti-swing control method, controller, equipment and medium

By using the anti-sway control method of PLC controller, the load swing amplitude and angle are calculated based on the trolley acceleration, and the control strategy is dynamically selected to solve the problem of crane load swing, realize efficient and safe hoisting control, and reduce equipment and personnel risks.

CN121493786APending Publication Date: 2026-02-10BEIJING BESTPOWER INTELCONTROL TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202512047723.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-12-31
Publication Date
2026-02-10

AI Technical Summary

Technical Problem

Existing cranes experience severe load swaying during lifting, affecting positioning accuracy and safety. Furthermore, imported anti-sway controllers are expensive, have closed communication protocols, and are complex to debug, limiting their widespread application in China.

Method used

An anti-sway control method using a PLC controller to execute cyclically with a fixed execution cycle is adopted. The load acceleration is calculated by the acceleration of the trolley, and the load swing amplitude and angle are determined by the sampling integral method. The control strategy is dynamically selected, including the first and second control strategies, to achieve active cancellation of load swing.

Benefits of technology

It significantly reduces load sway, improves hoisting efficiency and positioning accuracy, avoids collisions and safety hazards, reduces equipment and personnel risks, and requires no external sensors, with highly reliable calculation results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121493786A_ABST
    Figure CN121493786A_ABST
Patent Text Reader

Abstract

The invention relates to a crane anti-swing control method, a controller, equipment and a medium, and the method comprises the following steps: determining a load acceleration relative to a trolley according to an obtained trolley acceleration; according to the load acceleration, a load swing value is determined through a sampling integration method; determining a load swing angle according to the load swing value and the obtained equivalent swing length; when the load swing angle reaches the maximum value and the speed of the trolley is smaller than half of the target speed, a first control strategy is executed; and when the load swing angle does not reach the maximum value and the trolley speed is greater than or equal to half of the target speed, executing a second control strategy. Thus, active counteracting of load swing is achieved, large-amplitude load swing is effectively restrained, and the risk of colliding with peripheral equipment, personnel or structures is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of crane technology, and in particular to a crane anti-sway control method, controller, equipment and medium. Background Technology

[0002] Cranes are widely used material handling equipment in industrial enterprises, with common types including gantry cranes, bridge cranes, and tower cranes. In traditional operations, material handling primarily relies on manual operation. However, during the transfer process, the frequent starting, accelerating, decelerating, and braking of the trolley and hoisting equipment cause significant swaying of the lifting equipment and its suspended load due to inertia. This swaying not only affects positioning accuracy, prolongs operation time, and reduces logistics efficiency, but also may pose safety hazards, thus limiting the application of cranes in high-density, high-paced production environments.

[0003] To suppress load sway, anti-sway control technology has been introduced into crane control systems. Early solutions relied on operational experience or simple speed smoothing strategies, which had limited effectiveness.

[0004] Furthermore, mature anti-sway controller products were first introduced by foreign manufacturers. With the improvement of domestic industrial automation and the growth in demand for unmanned cranes, domestic users have long relied on imported anti-sway controllers. However, imported products have problems such as high cost, closed communication protocols, insufficient localization support, and complex debugging, which have limited their promotion and application in large-scale projects. Summary of the Invention

[0005] In view of the above-mentioned problems of the prior art, this application provides a crane anti-sway control method, controller, device and medium to realize active cancellation of load sway, effectively suppress large load sway, and reduce the risk of collision with surrounding equipment, personnel or structures.

[0006] To achieve the above objectives, the first aspect of this application provides a crane anti-sway control method, which is executed cyclically by a PLC controller at a fixed execution cycle, the method comprising: Based on the obtained acceleration of the trolley, determine the load acceleration relative to the trolley; Based on the load acceleration, the load swing amplitude is determined by a sampling integration method. The load swing angle is determined based on the load swing amplitude value and the obtained equivalent swing length. When the load swing angle reaches its maximum value and the trolley speed is less than half of the target speed, the first control strategy is executed. When the load swing angle does not reach the maximum value and the vehicle speed is greater than or equal to half of the target speed, the second control strategy is executed.

[0007] Therefore, this application estimates the relative acceleration of the load in real time based on the trolley's acceleration, and uses a sampling integration method to calculate the load swing amplitude and angle. Then, based on the swing state and the ratio of the current speed to the target speed, it dynamically selects and executes different control strategies. This allows for the adoption of the most appropriate control measures for different load swing states and different trolley operating conditions, resulting in more precise control of load swing and reduced load sway amplitude. Through this control mechanism, the load sway amplitude and stabilization time are significantly reduced, improving not only the efficiency and positioning accuracy of hoisting operations but also avoiding safety hazards such as collisions, disengagement, or misoperation that may be caused by large swings, thus ensuring the safety of personnel and equipment at the crane operation site.

[0008] As one possible implementation, determining the load acceleration relative to the vehicle based on the acquired vehicle acceleration includes: After performing force analysis on the trolley and the load, the horizontal component of the load is determined to be mgsinθcosθ. Based on the trolley's acceleration, determine the load acceleration relative to the trolley as As = -a - gsinθcosθ; where As is the load acceleration, a is the trolley acceleration, g is the gravitational acceleration, and θ is the load swing angle.

[0009] Thus, this application constructs a simple pendulum dynamics model based on Newtonian mechanics. The load acceleration formula As=−a-gsinθcosθ is directly derived from the force analysis of the trolley and the load, and has a clear physical meaning. Compared with methods that rely on empirical fitting or data-driven approaches, it does not require a large amount of training data and maintains good consistency under different load masses and speed conditions, thus improving the reliability of the calculation results.

[0010] As one possible implementation, determining the load swing value based on the load acceleration using a sampling integration method includes: Based on the load acceleration, the load speed is determined by a sampling integration method; Based on the load speed, the load swing value is determined by a sampling integration method.

[0011] As one possible implementation, the load speed is determined by the following formula: Vs+=As*Ta Where Vs is the load speed, As is the load acceleration, and Ta is the fixed execution cycle.

[0012] The load swing value is determined by the following formula: S+=(Vs+Vsl) / 2 Where S is the load swing value, Vs is the load speed, and Vsl is the load speed of the previous cycle.

[0013] Thus, this application achieves high-precision online reconstruction of the load's dynamic state without any external oscillation sensors by employing a two-stage sampling integration mechanism: first, the load acceleration As is integrated in the first order to obtain the load velocity Vs; then, the load velocity Vs is integrated in the second order using the trapezoidal integral method (average velocity method) to obtain the load swing amplitude S. Furthermore, the first-stage velocity integration uses the rectangular method, which is computationally efficient; the second-stage displacement integration uses the trapezoidal integral method, which effectively suppresses numerical errors and integration drift caused by sudden velocity changes or sampling discretization by taking the average of adjacent cycles. This is significantly superior to simple quadratic rectangular integration, ensuring the reliability of the estimation over long-term operation.

[0014] As one possible implementation, the load swing angle is determined by the following formula: θ = arcsin(S / L) Where θ is the load swing angle, S is the load swing value, and L is the equivalent swing length.

[0015] Thus, using the above formula, and with the estimated load swing amplitude S and the known equivalent swing length L, the load swing angle θ can be calculated accurately and in real time without any angle sensor. This swing angle is a key criterion for determining whether the load has reached its maximum swing amplitude, providing a reliable basis for the accurate triggering of the first and second control strategies.

[0016] As one possible implementation, the first control strategy includes: When an acceleration a is applied to the trolley, the load establishes a new static equilibrium angle α = arctan(a / g); When the load swings to the maximum swing amplitude 2α, the acceleration is switched to g*sin(2α) so that the load and the trolley remain relatively stationary and accelerate together; When the difference between the trolley's speed and the target speed is less than or equal to the speed corresponding to the moment of maximum swing, the initial acceleration 'a' is reapplied until the target speed is reached.

[0017] Thus, the first control strategy of this application achieves active cancellation of load swing under frictionless ideal conditions through three-stage acceleration scheduling, effectively suppressing large load swing and reducing the risk of collision with surrounding equipment, personnel or structures.

[0018] As one possible implementation, the second control strategy includes: Stop applying acceleration, allow the trolley to move at a constant speed, and determine the current swing angle; Monitor the load swing process. When the swing angle is less than the current swing angle, reapply the initial acceleration 'a' until the target speed is reached.

[0019] Thus, the second control strategy of this application achieves energy cancellation by pausing acceleration during the acceleration phase, recording the swing angle, and reapplying acceleration when the load swings back below that angle, thereby effectively preventing the swing amplitude from expanding. This method does not require waiting for natural decay and takes into account both operating efficiency and swing cancellation effect.

[0020] To achieve the above objectives, a second aspect of this application provides a crane anti-sway controller, comprising: The PLC controller is configured to execute the anti-sway control method as described in the first aspect at a fixed period Ta.

[0021] To achieve the above objectives, a third aspect of this application provides a computing device, comprising: processor, and A memory storing program instructions that, when executed by the processor, cause the processor to perform the anti-shake control method described in any of the first aspects above.

[0022] To achieve the above objectives, a fourth aspect of this application provides a computer-readable storage medium having program instructions stored thereon, which, when executed by a computer, cause the computer to implement the anti-shake control method described in any of the first aspects. Attached Figure Description

[0023] Figure 1 This is a flowchart of the main steps of a crane anti-sway control method provided in this application; Figure 2 This is a structural schematic diagram of the vehicle and load provided in this application; Figure 3 This is a schematic diagram of the simple pendulum dynamics model provided in this application; Figure 4 This is a force analysis diagram of the trolley and load provided in this application; Figure 5 This is the dynamic response curve of speed and swing angle under the first control strategy provided in this application; Figure 6 This is the dynamic response curve of speed and swing angle under the second control strategy provided in this application; Figure 7 This is a structural schematic diagram of a computing device provided in this application.

[0024] It should be understood that the dimensions and shapes of the blocks in the above structural diagrams are for reference only and should not constitute an exclusive interpretation of the embodiments of the present invention. The relative positions and inclusion relationships between the blocks presented in the structural diagrams are only schematic representations of the structural relationships between the blocks, and are not intended to limit the physical connection methods of the embodiments of the present invention. Detailed Implementation

[0025] The technical solutions provided in this application will be further described below with reference to the accompanying drawings and embodiments. It should be understood that the system architecture and business scenarios provided in the embodiments of this application are mainly for illustrating possible implementations of the technical solutions of this application and should not be construed as the sole limitation on the technical solutions of this application. Those skilled in the art will recognize that the technical solutions provided in this application are equally applicable to similar technical problems as system architectures evolve and new business scenarios emerge.

[0026] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. In case of any inconsistency, the meaning set forth in this specification or derived from the content described herein shall prevail. Furthermore, the terminology used herein is for the purpose of describing embodiments of this application only and is not intended to limit the scope of this application.

[0027] Before introducing the embodiments of this application, the following content will be introduced first: A crane typically consists of three parts: a trolley, a crane carriage, and a main hook. The main hook is used to lift the load, while the trolley and carriage work together to transfer the load horizontally. To achieve effective anti-sway control, the drive systems of the trolley and carriage need to be controlled by frequency converters to ensure precise adjustment of their operating speed or acceleration, thus providing the necessary execution basis for the anti-sway algorithm.

[0028] This application provides a crane anti-sway control method, such as... Figure 1 As shown, the PLC controller executes the process cyclically with a fixed execution cycle, including: S101. Based on the obtained trolley acceleration, determine the load acceleration relative to the trolley; S102. Based on the load acceleration, determine the load swing amplitude value using a sampling integration method; S103. Determine the load swing angle based on the load swing value and the obtained equivalent swing length; S104. When the load swing angle reaches its maximum value and the trolley speed is less than half of the target speed, the first control strategy is executed. S105. When the load swing angle does not reach the maximum value and the trolley speed is greater than or equal to half of the target speed, the second control strategy is executed.

[0029] In step S103, the equivalent pendulum length can be understood as the straight line length between the suspension point (i.e., the suspension point of the trolley or the main trolley) and the center of mass of the load when the crane hook and the load are regarded as a single pendulum system.

[0030] Therefore, this application estimates the relative acceleration of the load in real time based on the trolley's acceleration, and uses a sampling integration method to calculate the load swing amplitude and angle. Then, based on the swing state and the ratio of the current speed to the target speed, it dynamically selects and executes different control strategies. This allows for the adoption of the most appropriate control measures for different load swing states and different trolley operating conditions, resulting in more precise control of load swing and reduced load sway amplitude. Through this control mechanism, the load sway amplitude and stabilization time are significantly reduced, improving not only the efficiency and positioning accuracy of hoisting operations but also avoiding safety hazards such as collisions, disengagement, or misoperation that may be caused by large swings, thus ensuring the safety of personnel and equipment at the crane operation site.

[0031] In some embodiments, determining the load acceleration relative to the vehicle based on the acquired vehicle acceleration includes: After performing force analysis on the trolley and the load, the horizontal component of the load is determined to be mgsinθcosθ. Based on the trolley's acceleration, determine the load acceleration relative to the trolley as As = -a - gsinθcosθ; where As is the load acceleration, a is the trolley acceleration, g is the gravitational acceleration, and θ is the load swing angle.

[0032] Specifically, the following will provide a detailed explanation: like Figure 2 , Figure 3 and Figure 4 As shown, the crane hoisting system is simplified into a single pendulum physical model, and the relevant parameters are defined as follows: O: Equivalent center point of the vehicle; L: Equivalent pendulum length (unit: mm), refers to the distance from the suspension point O to the center of mass of the load, corresponding to the effective length of the suspension rope; S: Load swing amplitude relative to the trolley (unit: mm); g: Gravitational acceleration (value taken as 9800 mm / s²) ² ); V: Speed ​​of the trolley (unit: mm / s); a: Acceleration of the trolley (unit: mm / s²) ² ); Vs: Relative to the load speed of the trolley (unit: mm / s); θ: Load swing angle, i.e., the angle at which the suspension rope deviates from the vertical direction.

[0033] Under ideal conditions, a detailed physical force analysis of the trolley and the load suspended below it reveals that during its swing, the horizontal restoring force always points towards the vertical centerline O of the trolley. This restoring force originates from the horizontal component of gravity, which can be decomposed into mgsinθcosθ, where m is the mass of the load.

[0034] When the car edge Figure 3 When an acceleration a is applied in the direction of the medium velocity V, in a non-inertial coordinate system with the trolley as the reference frame, the load, in addition to the restoring force mentioned above, also experiences an inertial force −ma in the opposite direction to the acceleration of the trolley. Therefore, the acceleration corresponding to the net force on the load in the Vs direction (i.e., the horizontal direction relative to the trolley) is: As = −a - gsinθcosθ.

[0035] Thus, this application constructs a simple pendulum dynamics model based on Newtonian mechanics. The load acceleration formula As=−a-gsinθcosθ is directly derived from the force analysis of the trolley and the load, and has a clear physical meaning. Compared with methods that rely on empirical fitting or data-driven approaches, it does not require a large amount of training data and maintains good consistency under different load masses and speed conditions, thus improving the reliability of the calculation results.

[0036] In some embodiments, determining the load swing value based on the load acceleration using a sampling integration method includes: Based on the load acceleration, the load speed is determined by a sampling integration method; Based on the load speed, the load swing value is determined by a sampling integration method.

[0037] In some embodiments, the load speed is determined by the following formula: Vs+=As*Ta Where Vs is the load speed, As is the load acceleration, and Ta is the fixed execution cycle.

[0038] It's important to note that the load speed Vs is not directly measured, but rather calculated and accumulated gradually. Specifically, since speed = acceleration * time, the new increment in load speed within the current tiny time interval Ta is equal to As * Ta. This new increment is added to the existing speed value from the previous period, thus continuously updating the current speed estimate.

[0039] For example, assume the load acceleration As calculated for the current cycle is 200 mm / s². ² The execution cycle of the PLC controller is Ta=0.01s, or 10ms. Therefore, the speed increase in this cycle is 200×0.01=2mm / s. If the Vs of the previous cycle was 5mm / s, then the updated Vs will become 7mm / s.

[0040] The load swing value is determined by the following formula: S+=(Vs+Vsl) / 2 Where S is the load swing value, Vs is the load speed, and Vsl is the load speed of the previous cycle.

[0041] Similarly, the load swing value S is not directly measured, but calculated by integrating the load speed Vs. This application uses the trapezoidal integration method (also known as the average speed method) to improve integration accuracy. Specifically, within the current control cycle, the average speed of the load is approximately taken as the arithmetic mean of the current cycle speed Vs and the previous cycle speed Vsl, i.e., (Vs+Vsl) / 2. This average speed multiplied by the execution cycle Ta is the displacement increment within the current cycle. This displacement increment is added to the existing displacement in the previous cycle, thereby continuously updating the current displacement.

[0042] For example, assuming the current cycle load speed Vs = 6 mm / s, the previous cycle speed Vsl = 4 mm / s, and the PLC execution cycle Ta = 0.01s, then the average speed of this cycle is (6+4) / 2 = 5 mm / s, and the corresponding displacement increment is 5 × 0.01 = 0.05 mm. If the previous cumulative load swing value S = 10.00 mm, then the updated load swing value S = 10.05 mm.

[0043] Thus, this application achieves high-precision online reconstruction of the load's dynamic state without any external oscillation sensors by employing a two-stage sampling integration mechanism: first, the load acceleration As is integrated in the first order to obtain the load velocity Vs; then, the load velocity Vs is integrated in the second order using the trapezoidal integral method (average velocity method) to obtain the load swing amplitude S. Furthermore, the first-stage velocity integration uses the rectangular method, which is computationally efficient; the second-stage displacement integration uses the trapezoidal integral method, which effectively suppresses numerical errors and integration drift caused by sudden velocity changes or sampling discretization by taking the average of adjacent cycles. This is significantly superior to simple quadratic rectangular integration, ensuring the reliability of the estimation over long-term operation.

[0044] In some embodiments, the load swing angle is determined by the following formula: θ = arcsin(S / L) Where θ is the load swing angle, S is the load swing value, and L is the equivalent swing length.

[0045] Thus, using the above formula, and with the estimated load swing amplitude S and the known equivalent swing length L, the load swing angle θ can be calculated accurately and in real time without any angle sensor. This swing angle is a key criterion for determining whether the load has reached its maximum swing amplitude, providing a reliable basis for the accurate triggering of the first and second control strategies.

[0046] In some embodiments, the first control strategy includes: When an acceleration a is applied to the trolley, the load establishes a new static equilibrium angle α = arctan(a / g); When the load swings to the maximum swing amplitude 2α, the acceleration is switched to g*sin(2α) so that the load and the trolley remain relatively stationary and accelerate together; When the difference between the trolley's speed and the target speed is less than or equal to the speed corresponding to the moment of maximum swing, the initial acceleration 'a' is reapplied until the target speed is reached.

[0047] Specifically, the first control strategy is based on the dynamics of a simple pendulum and the principle of energy conservation. Under ideal frictionless conditions, it actively suppresses or even completely eliminates load sway by rationally scheduling the start and stop times of acceleration. This strategy includes the following three stages: Phase 1 (Initial Acceleration): The trolley is given a constant acceleration 'a'. Under the combined action of inertia and gravity, the load establishes a new static equilibrium angle α = arctan(a / g), where g is the acceleration due to gravity. Under this acceleration, the load will perform a pendulum motion around this equilibrium angle, with a maximum swing amplitude relative to the vertical direction of 2α.

[0048] The second stage (force balance synchronous acceleration): When the load swings to its maximum amplitude (i.e., the swing angle is 2α), its instantaneous velocity is equal to that of the trolley. At this point, the trolley's acceleration is switched to a = g * sin(2α). The inertial force generated by this acceleration is exactly equal in magnitude and opposite in direction to the horizontal component of gravity at the current swing angle, thus making the net force on the load zero and bringing it into a state of relative rest. Afterward, the load and the trolley accelerate synchronously with the same acceleration, and no new swinging occurs.

[0049] The third stage (recovery and acceleration to the target speed): During the second stage of operation, the speed of the trolley corresponding to the moment when the load reaches its maximum swing amplitude is recorded, denoted as Vsmax. When the difference between the trolley speed V and the target speed Vt satisfies Vt−V≤Vsmax, the initial acceleration a is reapplied, and acceleration continues until the target speed Vt is reached. According to the principle of energy conservation, the increase in kinetic energy during this process exactly offsets the potential energy stored in the previous swing, ultimately achieving the ideal control effect of stopping immediately upon reaching the target speed with no residual swing.

[0050] Thus, the first control strategy of this application achieves active cancellation of load swing under frictionless ideal conditions through three-stage acceleration scheduling, effectively suppressing large load swing and reducing the risk of collision with surrounding equipment, personnel or structures.

[0051] In some embodiments, the second control strategy includes: Stop applying acceleration, allow the trolley to move at a constant speed, and determine the current swing angle; Monitor the load swing process. When the swing angle is less than the current swing angle, reapply the initial acceleration 'a' until the target speed is reached.

[0052] Specifically, the second control strategy, based on pendulum dynamics and the principle of energy conservation, effectively suppresses load oscillations by rationally scheduling the start and stop times of acceleration. It includes the following three stages: Phase 1: Stop applying acceleration and allow the trolley to enter a constant speed running state. At this time, the system records the current swing angle of the load, denoted as θrecord. Under no external force, the load will continue to swing to its natural maximum swing amplitude and then begin to swing back (i.e., move in the opposite direction to the vertical direction).

[0053] Phase Two: During the load swing back, continuously monitor the swing angle. When the load swing angle is detected to be less than the recorded θrecord again (i.e., the swing back passes the recording point and moves closer to the equilibrium position), reapply the same acceleration a as in Phase One, and continue accelerating until the trolley reaches the target speed Vt.

[0054] According to the principle of energy conservation, since the acceleration 'a' applied in the second stage is the same as the acceleration 'a' before the first stage, and the duration of application corresponds to the symmetrical oscillation phase, the energy input to the system is exactly used to offset the potential energy stored in the previous oscillation. Therefore, under ideal frictionless conditions, the load sway will tend to zero at the end of acceleration, achieving a smooth stop without residual oscillation.

[0055] Thus, the second control strategy of this application achieves energy cancellation by pausing acceleration during the acceleration phase, recording the swing angle, and reapplying acceleration when the load swings back below that angle, thereby effectively preventing the swing amplitude from expanding. This method does not require waiting for natural decay and takes into account both operating efficiency and swing cancellation effect.

[0056] In summary, the first control strategy is suitable for the initial acceleration stage when the trolley speed is less than half the target speed, focusing on actively offsetting sway energy through three-stage acceleration. The second control strategy is suitable for the mid-to-late acceleration stage when the trolley speed is greater than or equal to half the target speed, focusing on preventing further expansion of the sway amplitude due to continuous acceleration. The two strategies intelligently switch based on the dynamic combination of load sway state and trolley speed, complementing each other and jointly covering the anti-sway control requirements throughout the entire process from start-up, acceleration to positioning, providing a complete and robust solution for fully automated and unmanned crane operation.

[0057] To more clearly illustrate the above anti-shake control method, this application provides a specific embodiment.

[0058] This embodiment takes the trolley running process of a bridge crane as an example. The goal is to smoothly and quickly transport the load from the starting point A to the ending point B, achieving automatic anti-sway control without residual sway.

[0059] The parameters are set as follows: Gravitational acceleration g = 9800 mm / s ² ; Equivalent pendulum length L = 4000 mm; Target speed Vt = 150 mm / s; The fixed execution cycle Ta of the PLC controller is 10 ms; Initial acceleration a = 80 mm / s ² .

[0060] The current position of the trolley is at the starting point, and the load is in a static vertical state (θ = 0) The control process is as follows: Step 1: The PLC outputs an acceleration command a = 80 mm / s to the frequency converter ² , and the trolley starts to accelerate from a standstill; meanwhile, the control system enters a periodic state estimation loop, which is executed every 10 ms to update the parameters in Steps 2 to 5; Step 2: According to the acceleration a and the load swing angle θ estimated in the previous cycle, determine the load acceleration As relative to the trolley as As = -a - gsinθcosθ; It should be noted that since the trolley starts to move from a standstill and θ = 0 at the initial moment, the load swing angle θ estimated in the previous cycle is zero, and at this time the load acceleration As = -a. However, in subsequent cycles, the load acceleration As is calculated according to the real-time estimated load swing angle θ.

[0061] Step 3: According to the load acceleration As, determine the load speed Vs+ = As * Ta; Step 4: According to the load speed, determine the load swing amplitude S+ = (Vs + Vsl) / 2; Step 5: According to the load swing amplitude S and the equivalent length L, calculate the load swing angle θ = arcsin(S / L); Step 6: If it is detected that the load swing angle θ has reached the maximum value 2α and the current trolley speed V < Vt / 2 = 75 mm / s, trigger the first control strategy; Among them, the first control strategy includes: (1), The trolley starts to move with an acceleration a from a standstill; Specifically, through force analysis, the static equilibrium angle α = arctan(a / g) is obtained. Calculate the equilibrium angle α = arctan(a / g) ≈ arctan(80 / 9800) ≈ 0.467°; the current maximum swing amplitude theoretical value is 2α ≈ 0.934°; (2) The switching acceleration is a = g * sin(2α) ≈ 160 mm / s² ² This allows the load to accelerate in sync with the trolley; (3) Record the speed of the trolley at the moment when the load reaches the maximum swing amplitude, and denote it as Vsmax. When the difference between the trolley speed V and the target speed Vt satisfies Vt-V≤Vsmax, reapply the initial acceleration a and continue to accelerate until the target speed Vt is reached.

[0062] Specifically, see Figure 5 As shown in the figure, there are two graphs: the upper graph represents the speed of the trolley, and the lower graph represents the swing angle of the load.

[0063] Combining the left half of the diagram above, the first stage applies an initial acceleration 'a' to start operation; the second stage switches to force balance acceleration 'g*sin(2α)', making the net force on the load zero and achieving acceleration without swaying; the third stage applies acceleration 'a' again to complete the remaining speed increase.

[0064] Referring to the left half of the figure below, in the second stage, the swing amplitude quickly converges to zero and remains stable, indicating that the system effectively suppresses load oscillation; although the third stage produces a slight oscillation due to renewed acceleration, the amplitude is significantly reduced.

[0065] Step 7: If the load swing angle θ is not detected to reach the maximum value 2α, and the current trolley speed V>Vt / 2=75mm / s, the second control strategy is triggered; The second control strategy includes: (1) Immediately stop the acceleration output (a=0), and the trolley will switch to uniform speed operation; (2) Record the current swing angle θrecord; continuously monitor the swing angle during the load swing process. When the load swing angle is detected to be less than the recorded θrecord again, reapply a = 80 mm / s. ² Continue accelerating to the target speed Vt.

[0066] Specifically, see Figure 6 As shown in the figure, there are two graphs: the upper graph represents the speed of the trolley, and the lower graph represents the swing angle of the load.

[0067] Based on the left half of the diagram above, the first stage involves applying an initial acceleration 'a' to start operation; the second stage involves setting the acceleration to zero, allowing the vehicle to enter a constant-speed running state; and the third stage involves applying acceleration 'a' again to complete the remaining acceleration when the load is detected to have swung back to near the equilibrium position. Referring to the left half of the diagram below, in the first stage, the oscillation is accelerated and the amplitude gradually increases; in the second stage, the trolley runs at a constant speed, the load completes the free oscillation cycle and begins to swing back; in the third stage, by applying synchronous acceleration in the swing back phase, the kinetic energy is canceled out by utilizing the symmetry of the oscillation energy, causing the amplitude to significantly decrease and tend to zero.

[0068] Thus, the above technical solution achieves active cancellation of load swing, effectively suppresses large load swing, and reduces the risk of collision with surrounding equipment, personnel or structures.

[0069] It is worth noting that the above embodiment describes the acceleration process of the vehicle. The deceleration process of the vehicle follows the same principle, only with the acceleration signs reversed. Furthermore, the curves showing the vehicle speed and load swing angle under the first and second control strategies corresponding to the deceleration process can be found in [reference needed]. Figure 5 , Figure 6 The right half of the diagram. To avoid repetition, the specific steps of the deceleration process will not be elaborated here, but those skilled in the art can directly derive and implement the corresponding deceleration control scheme based on the aforementioned acceleration control method.

[0070] This application provides a crane anti-sway controller, including: The PLC controller is configured to execute the anti-shake control method as described above at a fixed period Ta.

[0071] The PLC controller is an independent programmable logic controller, which serves as the hardware carrier of the anti-sway controller. The execution program of the aforementioned anti-sway control method is encapsulated inside it.

[0072] This embodiment uses a Siemens S7 series PLC (such as S7-1200) as the preferred hardware platform, which has good industrial compatibility and expandability. Its features include: Flexible interface: Supports configuring different quantities and types of digital / analog I / O signals according to actual engineering needs; The communication protocol is scalable: various industrial fieldbus protocols, such as Profinet and Profibus-DP, can be selected or extended according to the user's system architecture, thereby improving the integration capability of the anti-sway controller and the upper crane control system. Integrated hardware and software packaging: After downloading the complete anti-shake control program to the PLC, a fully functional, plug-and-play dedicated anti-shake controller module is formed, which does not require external sensors or additional computing units, making it easy to deploy and maintain.

[0073] Thus, through the above design, the PLC controller not only achieves efficient execution of the anti-shake algorithm, but also takes into account flexibility, compatibility and cost-effectiveness in engineering applications.

[0074] In some embodiments, the anti-sway controller provides a standardized control interface and a corresponding communication driver file. Users can integrate this driver file into the crane's main control system (such as a host PLC) and configure network communication (such as Profinet I / O communication) according to a predefined interface protocol, thereby achieving real-time data interaction with the anti-sway controller.

[0075] The input interface definitions for the anti-sway controller are as follows, see Tables 1 to 3.

[0076] Table 1. General Interface Definition

[0077] Table 2. Crane Trolley Interface Definition

[0078] Table 3. Crane Trolley Interface Definition

[0079] The output interface data of the anti-sway controller is as follows, please refer to Tables 4 to 6: Table 4. General Interface Definition

[0080] Table 5. Crane Trolley Interface Definition

[0081] Table 6. Crane Trolley Interface Definition

[0082] Furthermore, since the anti-shake controller of this application adopts an encapsulated design, its internal control logic and algorithm program are not disclosed to users. Therefore, in order to facilitate on-site debugging, parameter configuration and fault diagnosis, this invention has developed a dedicated software debugging tool.

[0083] The software debugging tool was developed based on the Microsoft Visual Studio platform and uses the Siemens S7 communication protocol to establish a connection with the anti-shake controller, supporting real-time access to the controller's internal operating status and parameter management. The tool mainly has the following functions: (1) Parameter upload and download Crane trolleys and other mechanisms have different process parameters in practical applications, such as maximum speed, acceleration, stroke range, and hoisting rope length. These data, which are closely related to anti-sway control performance, are stored as structured parameters in the non-volatile storage area of ​​the anti-sway controller. This tool allows users to easily upload and back up the current parameter configuration or download new parameter sets to adapt to different working conditions, significantly improving debugging efficiency.

[0084] (2) Oscillation period test and equivalent pendulum length calculation Since the anti-sway control algorithm is based on a simple pendulum dynamics model, one of its core parameters is the equivalent pendulum length L. Therefore, the software debugging tool includes a built-in timer function, which can manually or automatically trigger load oscillations and record the complete oscillation cycle to calculate the equivalent pendulum length, assisting users in measurement.

[0085] (3) Visualization of interface data status The software debugging tool provides interface data status display, which can intuitively display the signal status in the form of indicator lights, making it convenient for users to test the communication interface status and quickly analyze problems.

[0086] (4) Real-time curve recording and playback The software debugging tool offers a curve recording function, which records data in real time based on user-selected signals such as set speed, actual speed, set position, control signals, etc. Analyzing problems through curves provides a more intuitive understanding.

[0087] (5) Centralized display of alarm information It reads and displays the alarm codes and corresponding descriptions output by the anti-shake controller in real time, helping maintenance personnel to quickly identify and troubleshoot faults.

[0088] Thus, through the above functions, the software debugging tool of the present invention effectively solves the pain points of traditional anti-sway systems such as "debugging relies on experience, parameter adjustment is cumbersome, and fault location is difficult", and realizes an intelligent debugging experience with configurable parameters, observable process, and traceable problems, which significantly reduces the deployment threshold and maintenance cost of crane anti-sway function.

[0089] Figure 4 This is a structural schematic diagram of a computing device 600 provided in an embodiment of this application. The computing device performs the methods described above, such as... Figure 4 As shown, the computing device 600 includes: a processor 610, a memory 620, and a communication interface 630.

[0090] It should be understood that Figure 4 The communication interface 630 in the computing device 600 shown can be used to communicate with other devices, and may specifically include one or more transceiver circuits or interface circuits.

[0091] The processor 610 can be connected to the memory 620. The memory 620 can be used to store the program code and data. Therefore, the memory 620 can be a storage unit inside the processor 610, an external storage unit independent of the processor 610, or a component that includes both the storage unit inside the processor 610 and the external storage unit independent of the processor 610.

[0092] Optionally, the computing device 600 may also include a bus. The memory 620 and communication interface 630 can be connected to the processor 610 via the bus. The bus can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 4 The symbol is represented by a line without an arrow, but this does not mean that there is only one bus or one type of bus.

[0093] It should be understood that in the embodiments of this application, the processor 610 may be a central processing unit (CPU). The processor may also be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor. Alternatively, the processor 610 may employ one or more integrated circuits to execute relevant programs to implement the technical solutions provided in the embodiments of this application.

[0094] The memory 620 may include read-only memory and random access memory, and provides instructions and data to the processor 610. A portion of the processor 610 may also include non-volatile random access memory. For example, the processor 610 may also store device type information.

[0095] When the computing device 600 is running, the processor 610 executes computer execution instructions stored in the memory 620 to perform any of the operational steps of the above method and any of the optional embodiments thereof.

[0096] It should be understood that the computing device 600 according to the embodiments of this application can correspond to the corresponding subject in executing the methods according to the various embodiments of this application, and the above and other operations and / or functions of each module in the computing device 600 are respectively for implementing the corresponding processes of the methods of this embodiment. For the sake of brevity, they will not be described in detail here.

[0097] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0098] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.

[0099] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.

[0100] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0101] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.

[0102] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0103] This application also provides a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, is used to perform the above-described method, which includes at least one of the schemes described in the above embodiments.

[0104] The computer storage medium in this application embodiment can be any combination of one or more computer-readable media. The computer-readable medium can be a computer-readable signal medium or a computer-readable storage medium. For example, a computer-readable storage medium can be, but is not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of computer-readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this document, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.

[0105] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media may also be any computer-readable medium other than computer-readable storage media, capable of sending, propagating, or transmitting programs for use by or in connection with an instruction execution system, apparatus, or device.

[0106] The program code contained on a computer-readable medium may be transmitted using any suitable medium, including, but not limited to, wireless, wire, optical fiber, RF, etc., or any suitable combination thereof.

[0107] Computer program code for performing the operations of this application can be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, and C++, and conventional procedural programming languages ​​such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0108] Furthermore, the terms "first, second, third, etc." or similar terms such as module A, module B, and module C used in the specification and claims are only used to distinguish similar objects and do not represent a specific ordering of objects. It is understood that, where permissible, a specific order or sequence may be interchanged so that the embodiments of this application described herein can be implemented in an order other than that illustrated or described herein.

[0109] In the above description, the labels of the steps involved, such as S110, S120, etc., do not mean that the steps will necessarily be executed. The order of the steps can be interchanged or executed simultaneously if permitted.

[0110] The term "comprising" as used in the specification and claims should not be construed as limiting itself to what follows; it does not exclude other elements or steps. Therefore, it should be interpreted as specifying the presence of the mentioned feature, integral, step, or component, but does not exclude the presence or addition of one or more other features, integrals, steps, or components, or groups thereof. Thus, the statement "device comprising means A and B" should not be limited to a device consisting solely of components A and B.

[0111] The terms "an embodiment" or "an embodiment" as used in this specification mean that a particular feature, structure, or characteristic described in conjunction with that embodiment is included in at least one embodiment of this application. Therefore, the terms "in one embodiment" or "in an embodiment" appearing throughout this specification do not necessarily refer to the same embodiment, but may refer to the same embodiment. Furthermore, in one or more embodiments, the particular features, structures, or characteristics can be combined in any suitable manner, as will be apparent to those skilled in the art from this disclosure.

[0112] Note that the above are merely preferred embodiments and the technical principles employed in this application. Those skilled in the art will understand that this application is not limited to the specific embodiments described herein, and various obvious changes, readjustments, and substitutions can be made without departing from the scope of protection of this application. Therefore, although this application has been described in detail through the above embodiments, this application is not limited to the above embodiments, and may include many other equivalent embodiments without departing from the concept of this application, all of which fall within the scope of protection of this application.

Claims

1. A crane anti-sway control method, characterized in that, The method, executed cyclically by a PLC controller at a fixed execution cycle, includes: Based on the obtained acceleration of the trolley, determine the load acceleration relative to the trolley; Based on the load acceleration, the load swing amplitude is determined by a sampling integration method. The load swing angle is determined based on the load swing amplitude value and the obtained equivalent swing length. When the load swing angle reaches its maximum value and the trolley speed is less than half of the target speed, the first control strategy is executed. When the load swing angle does not reach the maximum value and the vehicle speed is greater than or equal to half of the target speed, the second control strategy is executed.

2. The method according to claim 1, characterized in that, The step of determining the load acceleration relative to the vehicle based on the acquired vehicle acceleration includes: After performing force analysis on the trolley and the load, the horizontal component of the load is determined to be mgsinθcosθ. Based on the trolley's acceleration, determine the load acceleration relative to the trolley as As = -a - gsinθcosθ; where As is the load acceleration, a is the trolley acceleration, g is the gravitational acceleration, and θ is the load swing angle.

3. The method according to claim 1, characterized in that, The step of determining the load swing amplitude value based on the load acceleration using a sampling integration method includes: Based on the load acceleration, the load speed is determined by a sampling integration method; Based on the load speed, the load swing value is determined by a sampling integration method.

4. The method according to claim 3, characterized in that, The load speed is determined by the following formula: Vs+=As*Ta Where Vs is the load speed, As is the load acceleration, and Ta is the fixed execution cycle; The load swing value is determined by the following formula: S+=(Vs+Vsl) / 2 Where S is the load swing value, Vs is the load speed, and Vsl is the load speed of the previous cycle.

5. The method according to claim 1, characterized in that, The load swing angle is determined by the following formula: θ = arcsin(S / L) Where θ is the load swing angle, S is the load swing value, and L is the equivalent swing length.

6. The method according to claim 1, characterized in that, The first control strategy includes: When an acceleration a is applied to the trolley, the load establishes a new static equilibrium angle α = arctan(a / g); When the load swings to the maximum swing amplitude 2α, the acceleration is switched to g*sin(2α) so that the load and the trolley remain relatively stationary and accelerate together; When the difference between the trolley's speed and the target speed is less than or equal to the speed corresponding to the moment of maximum swing, the initial acceleration 'a' is reapplied until the target speed is reached.

7. The method according to claim 6, characterized in that, The second control strategy includes: Stop applying acceleration, allow the trolley to move at a constant speed, and determine the current swing angle; Monitor the load swing process. When the swing angle is less than the current swing angle, reapply the initial acceleration 'a' until the target speed is reached.

8. A crane anti-sway controller, characterized in that, include: The PLC controller is configured to perform the anti-shake control method as described in any one of claims 1 to 7 at a fixed period Ta.

9. A computing device, characterized in that, include: processor, and A memory having stored program instructions that, when executed by the processor, cause the processor to perform the anti-shake control method according to any one of claims 1-7.

10. A storage medium, characterized in that, It stores program instructions, which, when executed by a computer, cause the computer to perform the anti-shake control method according to any one of claims 1-7.