Method and system for cooperative motion control of double-y-axis rack and pinion and xz-axis screw module
Patent Information
- Application Number
- CN202611365594.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-09-04
- Publication Date
- 2026-10-30
AI Technical Summary
其次,工作部件在横梁上的位置沿X轴方向不断变化,其重心到两条导轨的水平距离随之改变,两侧齿轮的承载比例始终处于动态变化之中,采用固定比例分配两侧驱动扭矩的方式无法与实际偏载状态相匹配,重载侧出力不足与轻载侧出力过剩的问题较为突出
[0015]由上可知,本申请提供的一种双Y轴齿轮齿条与XZ轴丝杆模组的协同运动控制方法及系统,通过根据工作部件的X向位置确定两侧齿轮的负载占比、结合Y轴运动方向确定方向相反的两路补偿扭矩、将补偿扭矩叠加至按负载占比分配的负载扭矩得到两侧电机的输出扭矩,并在运行过程中依据两侧电机的电流差值补偿两条导轨之间的平行度误差、在啮合频率接近丝杆固有频率或者两侧齿轮处于同步啮合状态时降低X轴方向的运动加速度,解决了双端齿轮齿条驱动中齿侧间隙引起的空程误差与模组扭摆、偏载状态下两侧驱动扭矩分配失配、以及平行度误差与啮合共振导致的定位精度下降的问题,具有能够根据工作部件的实际位置动态分配两侧驱动扭矩并实现双向消隙,提高大跨距运动平台的定位精度与运行平稳性的优点。
Smart Images

Figure CN123006771A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of motion control technology, and more specifically, to a method and system for coordinated motion control of a dual Y-axis gear rack and pinion and an XZ-axis lead screw module. Background Technology
[0002] In applications such as large CNC machining equipment, precision testing platforms, and automated production lines, gantry or frame-type motion platforms with large spans are often used. The working components are carried by beam-type motion modules, which perform long-stroke reciprocating motions along two parallel guide rails. In this type of double-end supported transmission structure, each end of the motion module is typically equipped with a gear and rack pair, driven by two separate motors to achieve stable feed under large span conditions.
[0003] However, the following challenges arise in the aforementioned specific scenarios. First, tooth backlash is unavoidable when gears and racks mesh. During dual-end drive, the backlash of the gears on both sides is inconsistent. When the module starts, reverses direction, or is subjected to uneven load, the teeth will move relative to each other within the tooth backlash, creating idle error and causing the module to wobble relative to the guide rails. Second, the position of the working component on the crossbeam changes continuously along the X-axis, altering the horizontal distance from its center of gravity to the two guide rails. The load-bearing ratio of the gears on both sides is constantly changing. A fixed ratio for distributing the drive torque on both sides cannot match the actual uneven load condition, resulting in insufficient output on the heavily loaded side and excessive output on the lightly loaded side. Third, the working component is also lifted vertically by the Z-axis lead screw. The higher the center of gravity, the more pronounced the overturning effect of its gravity on the gears on both sides, further amplifying the aforementioned uneven load difference and exacerbating the wobble and positioning errors. Furthermore, it is difficult to achieve ideal parallelism between the two guide rails after assembly. The parallelism error causes the distance that the gears on both sides need to roll in the same amount of time to be unequal, resulting in a continuous imbalance in the output of the motors on both sides. Moreover, the periodic meshing impact of the gears and racks is likely to be close to the natural frequency of the lead screw on the crossbeam, which can cause resonance and further affect the positioning accuracy of the working parts and the smooth operation of the equipment. Summary of the Invention
[0004] The purpose of this application is to provide a method and system for coordinated motion control of a dual Y-axis gear rack and XZ-axis lead screw module. This method has the advantages of dynamically distributing the driving torque of the gears on both sides according to the actual position of the working parts, and forming a preload on the racks on both sides with a compensating torque in opposite directions, thereby eliminating tooth backlash while suppressing module sway and improving positioning accuracy and running stability.
[0005] This application provides a method for coordinated motion control of a dual Y-axis gear rack and pinion and an XZ-axis lead screw module. The XZ-axis lead screw module is straddling a parallel first Y-axis guide rail and a second Y-axis guide rail. The module has a first gear at its first end and a second gear at its second end. The first gear meshes with a first rack on the first Y-axis guide rail, and the second gear meshes with a second rack on the second Y-axis guide rail. The first gear and the second gear are driven by a first motor and a second motor, respectively. The module has an X-axis lead screw with working parts. The method includes: Obtain the X-axis position of the working component and the Y-axis movement direction of the module; The first load percentage of the working component on the first gear and the second load percentage on the second gear are determined based on the X-axis position. Based on the Y-axis motion direction, the X-axis position, and the first load percentage and the second load percentage, the first compensation torque of the first gear and the second compensation torque of the second gear are determined, and the first compensation torque and the second compensation torque are in opposite directions. The first load torque and the second load torque are determined based on the first load ratio and the second load ratio, and the first compensation torque and the second compensation torque are respectively superimposed on the corresponding load torque to obtain the first output torque and the second output torque. The first motor and the second motor are controlled by the first output torque and the second output torque, respectively, to drive the module to move along the Y-axis.
[0006] Furthermore, obtaining the X-axis position of the working component includes: The rotation angle of the X-axis lead screw is obtained by an X-axis encoder mounted on the X-axis lead screw. Based on the rotation angle and the lead of the X-axis lead screw, calculate the X-axis position of the working part relative to the origin of the X-axis lead screw.
[0007] Furthermore, the XZ axis lead screw module is also equipped with a Z-axis lead screw; after obtaining the X-axis position of the working component, it further includes: Obtain the Z-axis position of the working component on the Z-axis lead screw; Based on the Z-axis position, determine the vertical distance from the center of gravity of the working component to the plane containing the first rack and the second rack, and use the vertical distance as the lever arm; The first load percentage and the second load percentage are corrected according to the lever arm, so that the difference between the first load percentage and the second load percentage increases as the lever arm increases, and the direction of the increase of the difference is consistent with the direction in which the working part approaches the first Y-axis guide rail or the second Y-axis guide rail along the X-axis direction.
[0008] Further, determining the first compensation torque of the first gear and the second compensation torque of the second gear based on the Y-axis movement direction, the X-axis position, and the first load percentage and the second load percentage includes: Based on the X-axis position, determine the first horizontal distance between the working component and the first Y-axis guide rail, and the second horizontal distance between the working component and the second Y-axis guide rail; The base value of the first compensation torque is determined based on the first horizontal distance, and the base value of the second compensation torque is determined based on the second horizontal distance; the smaller the first horizontal distance, the smaller the base value of the first compensation torque; the smaller the second horizontal distance, the smaller the base value of the second compensation torque.
[0009] Furthermore, it also includes: adjusting the base values of the first compensation torque and the second compensation torque in a coordinated manner based on the Y-axis movement direction, the first load percentage, and the second load percentage: when the first load percentage is greater than the second load percentage, decreasing the base value of the first compensation torque and increasing the base value of the second compensation torque, with the direction of the first compensation torque being the same as the Y-axis movement direction and the direction of the second compensation torque being opposite to the Y-axis movement direction; when the second load percentage is greater than the first load percentage, increasing the base value of the first compensation torque and decreasing the base value of the second compensation torque, with the direction of the first compensation torque being opposite to the Y-axis movement direction and the direction of the second compensation torque being the same as the Y-axis movement direction.
[0010] Further, the step of determining the first load torque and the second load torque based on the first load ratio and the second load ratio, and then superimposing the first compensation torque and the second compensation torque onto the corresponding load torques to obtain the first output torque and the second output torque, includes: The total load torque of the working component is determined based on the mass of the working component and the motion acceleration of the XZ axis lead screw module along the Y axis direction. The total load torque is distributed to the first gear according to the first load ratio to obtain the first load torque, and the total load torque is distributed to the second gear according to the second load ratio to obtain the second load torque; The first compensation torque is added to the first load torque to obtain the first output torque of the first motor; The second compensation torque is added to the second load torque to obtain the second output torque of the second motor.
[0011] Furthermore, it also includes: obtaining the first rotation angle of the first gear by the first encoder mounted on the first motor, and determining the first meshing position of the teeth of the first gear between two adjacent teeth of the first rack based on the first rotation angle and the tooth pitch of the first rack; The second rotation angle of the second gear is obtained by the second encoder mounted on the second motor. Based on the second rotation angle and the tooth pitch of the second rack, the second meshing position of the teeth of the second gear between two adjacent teeth of the second rack is determined. The meshing position difference is determined based on the first meshing position and the second meshing position; when the meshing position difference is less than a preset threshold, the acceleration of the working component moving along the X-axis lead screw is reduced, and it is determined that the first gear and the second gear are in a synchronous meshing state; the preset threshold is determined based on the tooth pitch of the first rack.
[0012] Furthermore, when controlling the first motor and the second motor according to the first output torque and the second output torque respectively to drive the module to move along the Y-axis, the method further includes: Obtain the first current value of the first motor and the second current value of the second motor; calculate the current difference between the first current value and the second current value. The current difference is low-pass filtered to remove the periodic fluctuations caused by the tooth profile errors of the first and second racks, and the DC component corresponding to the parallelism error between the first and second Y-axis guides is obtained. Adjust the first output torque or the second output torque according to the DC component so that the displacement of the first gear and the second gear along the Y-axis is consistent.
[0013] Furthermore, when adjusting the first output torque or the second output torque according to the DC component, the method further includes: obtaining the current movement speed of the XZ axis lead screw module along the Y-axis direction; calculating the meshing frequency of the first gear on the first rack based on the current movement speed and the tooth pitch of the first rack; obtaining the natural frequency of the X-axis lead screw; calculating the frequency difference between the meshing frequency and the natural frequency; and reducing the acceleration of the working component moving along the X-axis lead screw when the frequency difference is less than a set threshold.
[0014] Furthermore, this application also proposes a coordinated motion control system for a dual Y-axis gear rack and pinion and an XZ-axis lead screw module, comprising: Parallel arrangement of the first and second Y-axis guide rails; The first rack is fixed to the first Y-axis guide rail; The second rack is fixed to the second Y-axis guide rail; An XZ axis lead screw module is installed between the first Y axis guide rail and the second Y axis guide rail. The first end of the module is provided with a first gear and the second end is provided with a second gear. The first gear meshes with the first rack and the second gear meshes with the second rack. The module is provided with an X axis lead screw with working parts. An X-axis encoder is mounted on the X-axis lead screw and is used to detect the rotation angle of the X-axis lead screw. A first motor is connected to the first gear transmission; A second motor, connected to the second gear transmission; and a controller configured to perform the aforementioned method.
[0015] As can be seen from the above, the collaborative motion control method and system of the dual Y-axis gear rack and XZ-axis lead screw module provided in this application determines the load ratio of the two gears according to the X-axis position of the working part, determines two opposing compensation torques in combination with the Y-axis motion direction, and superimposes the compensation torques to the load torque distributed according to the load ratio to obtain the output torque of the two motors. During operation, it compensates for the parallelism error between the two guide rails based on the current difference between the two motors, and reduces the motion acceleration in the X-axis direction when the meshing frequency is close to the natural frequency of the lead screw or when the two gears are in synchronous meshing. This solves the problems of backlash error and module sway caused by tooth flank clearance in dual-end gear rack drive, mismatch of drive torque distribution on both sides under off-center load, and decreased positioning accuracy caused by parallelism error and meshing resonance. It has the advantages of being able to dynamically distribute the drive torque on both sides according to the actual position of the working part and achieve bidirectional backlash elimination, thereby improving the positioning accuracy and running stability of the large span motion platform. Attached Figure Description
[0016] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of this application and should not be regarded as a limitation of the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0017] Figure 1 This is a schematic diagram of the collaborative system structure of the dual Y-axis gear rack and XZ-axis lead screw module disclosed in the embodiments of this application; Figure 2 This is a schematic flowchart of the cooperative motion control method disclosed in the embodiments of this application. Detailed Implementation
[0018] 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 these embodiments belong; the terminology used herein and in the specification of the application is for the purpose of describing particular embodiments only and is not intended to limit these embodiments; the terms "comprising" and "having," and any variations thereof, in the specification of these embodiments and the foregoing drawings, are intended to cover non-exclusive inclusion. The terms "first," "second," etc., in the specification of these embodiments and the foregoing drawings are used to distinguish different objects, not to describe a particular order.
[0019] The implementation details of the technical solution in this embodiment are described in detail below: This application proposes a method for coordinated motion control of a dual Y-axis gear rack and pinion and an XZ-axis lead screw module. For example... Figure 1 The diagram shown is a schematic of the collaborative system structure of the dual Y-axis gear rack and XZ-axis lead screw module in this embodiment. Figure 2 The diagram shown is a schematic flowchart of the cooperative motion control method in this embodiment. The following section first combines... Figure 1 The structure of the cooperative motion control system provided in this embodiment will be described.
[0020] like Figure 1 As shown, the XZ-axis lead screw module 101 is straddling the parallel first Y-axis guide rail 102 and second Y-axis guide rail 103. The module 101 has a first gear 104 at its first end and a second gear 105 at its second end. The first gear 104 meshes with a first rack on the first Y-axis guide rail 102, and the second gear 105 meshes with a second rack on the second Y-axis guide rail 103. The first gear 104 and the second gear 105 are driven by a first motor 106 and a second motor 107, respectively. The module 101 also has an X-axis lead screw 109 with a working component 108. Furthermore, the first rack is fixed to the first Y-axis guide rail 102, the second rack is fixed to the second Y-axis guide rail 103, and an X-axis encoder is mounted on the X-axis lead screw 109. The X-axis encoder is used to detect the rotation angle of the X-axis lead screw 109. The system also includes a controller, which is electrically connected to the first motor 106, the second motor 107, and the X-axis encoder.
[0021] Specifically, the first Y-axis guide rail 102 and the second Y-axis guide rail 103 are arranged in parallel, together forming the support and guiding foundation for the XZ-axis lead screw module 101 to move along the Y-axis direction, ensuring that the module 101 maintains a defined motion trajectory during movement. The first rack is fixed to the first Y-axis guide rail 102, and the second rack is fixed to the second Y-axis guide rail 103. The two racks mesh with the first gear 104 and the second gear 105 respectively, thereby converting the rotational motion of the gears into linear motion of the module 101 along the Y-axis direction.
[0022] Specifically, the first gear 104 and the second gear 105 are respectively located at both ends of the XZ axis lead screw module 101, and are driven by the first motor 106 and the second motor 107 respectively. Since the two gears are located at both ends of the module 101 and mesh with their respective racks, both ends of the module 101 are driven and supported, avoiding the torsional swaying caused by force bias when using single-end drive. The first motor 106 and the first gear 104, and the second motor 107 and the second gear 105 can be directly connected or connected via a reducer; this is not limited here.
[0023] Specifically, the X-axis lead screw 109 is mounted on the XZ-axis lead screw module 101, and the working component 108 is mounted on the X-axis lead screw 109, which drives it to move along the X-axis direction. An X-axis encoder is mounted on the end of the X-axis lead screw 109 to detect its rotation angle. The controller determines the X-axis position of the working component 108 based on this rotation angle and the lead of the X-axis lead screw 109. The Y-axis movement direction of the module 101 is determined by the motion commands issued by the controller.
[0024] Specifically, the controller is electrically connected to the first motor 106, the second motor 107, and the X-axis encoder. It receives the rotation angle feedback from the X-axis encoder and sends torque commands to the first motor 106 and the second motor 107. The controller is configured to execute the cooperative motion control method described in this embodiment. The method includes the following steps: obtaining the X-axis position of the working part 108 and the Y-axis movement direction of the module 101; determining a first load ratio and a second load ratio based on the X-axis position; determining a first compensation torque and a second compensation torque in opposite directions based on the Y-axis movement direction and the first and second load ratios; superimposing the first compensation torque and the second compensation torque onto the corresponding load torques to obtain a first output torque and a second output torque; and controlling the first motor 106 and the second motor 107 to drive the module 101 to move along the Y-axis direction according to the first output torque and the second output torque, respectively.
[0025] Furthermore, the XZ axis lead screw module 101 is also equipped with a Z axis lead screw, and a Z axis encoder is mounted on the Z axis lead screw. The Z axis encoder is used to detect the rotation angle of the Z axis lead screw. The controller determines the Z-direction position of the working part 108 based on the rotation angle and the lead of the Z axis lead screw, and then determines the lever arm of the working part 108, and corrects the first load ratio and the second load ratio according to the lever arm.
[0026] Furthermore, the first motor 106 is equipped with a first encoder, and the second motor 107 is equipped with a second encoder. The first encoder and the second encoder are used to detect the first rotation angle of the first gear 104 and the second rotation angle of the second gear 105, respectively. The controller determines the first meshing position of the first gear 104 and the second meshing position of the second gear 105 based on the two rotation angles and in combination with the tooth pitch of the rack. Thus, when the difference in meshing position is less than a preset threshold and the gears on both sides are in a synchronous meshing state, the acceleration of the working part 108 moving along the X-axis lead screw 109 is reduced.
[0027] Furthermore, the system also includes a current detection unit connected in series in the power supply circuit of the first motor 106 and the second motor 107. The current detection unit is used to detect the first current value of the first motor 106 and the second current value of the second motor 107. The controller performs low-pass filtering based on the current difference between the two current values to obtain the DC component corresponding to the parallelism error between the first Y-axis guide rail 102 and the second Y-axis guide rail 103, and adjusts the first output torque or the second output torque accordingly to keep the displacement of the first gear 104 and the second gear 105 consistent along the Y-axis direction.
[0028] Specifically, the aforementioned controller can be implemented using devices with computation and control capabilities, such as programmable logic controllers, motion controllers, digital signal processors, or embedded microcontrollers. It internally stores program instructions or control logic for implementing the following steps. These program instructions or control logic, when running, cause the controller to execute the cooperative motion control method of this embodiment. The controller can be set up independently or integrated with a host computer; this is not limited here.
[0029] The following combination Figure 2 The steps of the cooperative motion control method provided in this embodiment will be described in detail. Figure 2 As shown, the method includes: S201, Obtain the X-axis position of the working component and the Y-axis movement direction of the module; The X-axis position of the working component refers to the distance of the working component relative to the origin of the X-axis lead screw along the X-axis axis. The origin of the X-axis lead screw is a pre-set position reference, for example, the travel endpoint on the X-axis lead screw near the first gear. The Y-axis movement direction of the module refers to the current direction of movement of the XZ-axis lead screw module along the Y-axis guide rail, including the positive and negative Y-axis directions.
[0030] Furthermore, obtaining the X-axis position of the working component includes: obtaining the rotation angle of the X-axis lead screw by using an X-axis encoder mounted on the X-axis lead screw; and calculating the X-axis position of the working component relative to the origin of the X-axis lead screw based on the rotation angle and the lead of the X-axis lead screw.
[0031] The X-axis encoder is mounted at the end of the X-axis lead screw and is used to detect the rotation angle of the X-axis lead screw. The lead of the X-axis lead screw refers to the distance that the working part moves along the X-axis direction when the X-axis lead screw rotates one full revolution, driven by the nut it is connected to. The working part is connected to the nut on the X-axis lead screw, and the rotational motion of the X-axis lead screw is converted into linear motion of the working part along the X-axis direction. Therefore, the X-axis position of the working part is proportional to the rotation angle of the X-axis lead screw.
[0032] Specifically, the X-axis position of the working part is determined by the following formula: X = θ ÷ 360 × L Where X is the X-axis position of the working part, θ is the rotation angle of the X-axis lead screw measured by the X-axis encoder, in degrees, and L is the lead of the X-axis lead screw.
[0033] For example, when the lead L of the X-axis lead screw is 10 mm and the rotation angle θ of the X-axis lead screw measured by the X-axis encoder is 180 degrees, the X-position X of the working part is 5 mm. By continuously detecting the rotation angle of the X-axis lead screw, the real-time position of the working part in the X-axis direction can be obtained.
[0034] Specifically, obtaining the module's Y-axis movement direction can be understood as obtaining the movement direction corresponding to the movement command currently issued by the controller. The movement command issued by the controller when driving the first and second motors to move the module along the Y-axis includes a direction flag. This direction flag indicates whether the module moves in the positive or negative direction of the Y-axis. Reading this direction flag yields the module's Y-axis movement direction. Alternatively, the module's Y-axis movement direction can also be determined based on the current rotation of the first and second motors; for example, the movement direction corresponding to the module when both the first and second motors are rotating forward can be taken as the positive Y-axis direction.
[0035] Furthermore, the XZ axis lead screw module is also equipped with a Z-axis lead screw; after obtaining the X-axis position of the working component, it further includes: Obtain the Z-axis position of the working component on the Z-axis lead screw; Based on the Z-axis position, determine the vertical distance from the center of gravity of the working component to the plane containing the first rack and the second rack, and use the vertical distance as the lever arm; The first load percentage and the second load percentage are corrected according to the lever arm, so that the difference between the first load percentage and the second load percentage increases as the lever arm increases, and the direction of the increase of the difference is consistent with the direction in which the working part approaches the first Y-axis guide rail or the second Y-axis guide rail along the X-axis direction.
[0036] The Z-axis lead screw is mounted on the XZ-axis lead screw module and is used to drive the working part to move in the vertical direction, i.e., the Z-axis direction. The Z-axis position refers to the height of the working part relative to the origin of the Z-axis lead screw along the Z-axis lead screw axis. It is obtained in the same way as the X-axis position, that is, by obtaining the rotation angle of the Z-axis lead screw through the Z-axis encoder mounted on the Z-axis lead screw and calculating it in combination with the lead of the Z-axis lead screw.
[0037] Specifically, the plane containing the first and second racks refers to the horizontal plane jointly defined by the tooth tip surfaces of the first and second racks. Since the first and second racks are fixed to the first and second Y-axis guides respectively, and the two Y-axis guides are arranged parallel and at the same height, the tooth tip surfaces of the two racks are approximately located in the same horizontal plane, which is the plane containing the racks. The vertical distance from the center of gravity of the working component to this plane is the lever arm.
[0038] Specifically, the lever arm is determined by the following formula: H = Z + H0 Where H is the lever arm, Z is the Z-axis position of the working part, and H0 is the initial vertical distance from the center of gravity of the working part to the plane of the rack when it is at the origin of the Z-axis lead screw. From the above formula, it can be seen that the higher the working part is lifted by the Z-axis lead screw, the larger the Z-axis position Z, and the larger the lever arm H.
[0039] It should be noted that the higher the center of gravity of the working component, the more pronounced its overturning effect on the plane containing the gears on both sides. The difference in load on the gears on both sides caused by the offset of the working component along the X-axis will be amplified. If only the X-axis position is considered and the Z-axis position is ignored when determining the load ratio, the actual load difference between the gears on both sides will be greater than the difference calculated based on the X-axis position when the working component is at a higher position. This results in insufficient driving torque allocated to the heavily loaded gear and excessive driving torque allocated to the lightly loaded gear, causing the module to sway during movement. In view of this, this embodiment corrects the first load ratio and the second load ratio according to the lever arm, so that the difference between the two increases as the lever arm increases.
[0040] Specifically, the proportions of the first and second loads are adjusted based on the lever arm, using the following formula: β = 1 + α × Z ÷ H0 k1 = 0.5 + (p1 - 0.5) × β k2 = 1 - k1 Where β is the lever arm correction coefficient, α is the preset amplification coefficient with a value greater than zero, Z is the Z-direction position of the working part, H0 is the initial vertical distance, p1 is the first load percentage determined according to the X-direction position, k1 is the corrected first load percentage, and k2 is the corrected second load percentage.
[0041] As shown in the above formula, when the working part is at the origin of the Z-axis lead screw (i.e., Z is 0), the lever arm correction coefficient β equals 1, and k1 equals p1, meaning no correction is performed. When the Z-axis position of the working part increases, the lever arm H increases accordingly, and the lever arm correction coefficient β is greater than 1 and increases with the increase of Z. If p1 is greater than 0.5, then the corrected k1 is greater than p1, and the first load proportion further shifts towards the first gear, increasing the difference in load proportions on both sides. If p1 is less than 0.5, then the corrected k1 is less than p1, and the first load proportion further shifts towards the second gear, also increasing the difference in load proportions on both sides. This causes the difference between the first and second load proportions to increase with the increase of the lever arm, and the direction of the increase in the difference is always consistent with the direction in which the working part moves closer to the first or second Y-axis guide rail along the X-axis. That is, whichever side the working part was originally biased towards, the correction will make it more biased towards that side.
[0042] S202, determine the first load percentage of the working component on the first gear and the second load percentage on the second gear based on the X-direction position; The first load percentage characterizes the proportion of the load generated by the working component that is distributed to the first gear, and the second load percentage characterizes the proportion of the load that is distributed to the second gear; the sum of the two is 1. Since the XZ-axis lead screw module spans between the first and second Y-axis guide rails, and its two ends are supported by the first and second gears respectively, with the working component located between the two supports, the load generated by the working component is distributed between the two gears according to the lever principle. The closer the working component is to one side, the greater the proportion of load borne by that side's gear.
[0043] Specifically, the first load percentage and the second load percentage are determined according to the following formula: p1 = (W - X) ÷ W p2 = X ÷ W Where p1 is the first load percentage, p2 is the second load percentage, W is the span between the first Y-axis guide rail and the second Y-axis guide rail, that is, the center distance between the first rack and the second rack in the X-axis direction, and X is the X-direction position of the working part, which takes the position of the first Y-axis guide rail as the origin and the direction along the X-axis towards the second Y-axis guide rail as the positive direction.
[0044] As shown in the above formula, when X is 0, i.e., the working part is located at the first Y-axis guide rail, p1 is 1 and p2 is 0, and the entire load is borne by the first gear; when X is half of W, i.e., the working part is located at the midpoint of the span, p1 and p2 are both 0.5, and the load is evenly distributed between the two gears; when X is W, i.e., the working part is located at the second Y-axis guide rail, p1 is 0 and p2 is 1, and the entire load is borne by the second gear. This achieves a continuous linear distribution of the load percentage according to the X-axis position of the working part.
[0045] S203, based on the Y-axis movement direction, the X-axis position, and the first load percentage and the second load percentage, determine the first compensation torque of the first gear and the second compensation torque of the second gear, wherein the first compensation torque and the second compensation torque are in opposite directions; The compensation torque refers to the additional torque superimposed on the corresponding gear, beyond the basic driving torque required for the drive module to move along the Y-axis. Since backlash is unavoidable when gears and racks mesh, if only the driving torque is applied according to the load, the gear teeth will experience relative axial movement within the backlash during startup, reversal, or when the module is subjected to off-center loads, causing idle travel errors. Furthermore, due to the inconsistent clearance between the first and second gears, the different axial movements of the two gears will cause the XZ-axis lead screw module to wobble relative to the Y-axis guide rail. This embodiment applies compensation torques in opposite directions to the first and second gears, causing the teeth of the two gears to respectively adhere to the two opposing tooth surfaces of their respective racks, forming a mutual preload, thereby eliminating backlash and avoiding idle travel and wobble throughout the entire movement process.
[0046] Furthermore, determining the first compensation torque of the first gear and the second compensation torque of the second gear based on the Y-axis movement direction, the X-axis position, and the first load percentage and the second load percentage includes: determining the first horizontal distance between the working component and the first Y-axis guide rail, and the second horizontal distance between the working component and the second Y-axis guide rail, based on the X-axis position; determining the base value of the first compensation torque based on the first horizontal distance, and determining the base value of the second compensation torque based on the second horizontal distance; the smaller the first horizontal distance, the smaller the base value of the first compensation torque; the smaller the second horizontal distance, the smaller the base value of the second compensation torque.
[0047] The first horizontal distance and the second horizontal distance are determined by the following formula: L1 = X L2 = W - X Where L1 is the first horizontal distance, which is the distance between the working part and the first Y-axis guide rail in the X-axis direction; L2 is the second horizontal distance, which is the distance between the working part and the second Y-axis guide rail in the X-axis direction; X is the X-axis position of the working part; and W is the span.
[0048] Specifically, the base values of the first compensation torque and the second compensation torque are determined according to the following formula: T1base = c × L1 T2base = c × L2 Wherein, T1base is the base value of the first compensation torque, T2base is the base value of the second compensation torque, and c is the preset unit distance compensation coefficient, the value of which is calibrated according to the gear module, rack accuracy and required preload.
[0049] It should be noted that the greater the horizontal distance between the working part and the Y-axis guide rail on one side, the lighter the load on the gear on that side, and the easier it is for the gear teeth to float within the tooth flank clearance. This requires a larger compensation torque to press the gear teeth firmly onto the rack tooth surface. Conversely, the smaller the horizontal distance between the working part and the Y-axis guide rail on that side, the heavier the load on that gear. The load itself already presses the gear teeth firmly onto the tooth surface, and the required compensation torque is smaller. Therefore, setting the base value of the compensation torque to be proportional to the corresponding horizontal distance allows the magnitude of the compensation torque to match the actual load conditions on both sides.
[0050] Furthermore, it also includes: Based on the Y-axis motion direction and the first and second load percentages, the base values of the first and second compensation torques are adjusted in a coordinated manner: When the first load percentage is greater than the second load percentage, the base value of the first compensation torque is decreased and the base value of the second compensation torque is increased, and the direction of the first compensation torque is the same as the direction of movement of the Y-axis, while the direction of the second compensation torque is opposite to the direction of movement of the Y-axis; when the second load percentage is greater than the first load percentage, the base value of the first compensation torque is increased and the base value of the second compensation torque is decreased, and the direction of the first compensation torque is opposite to the direction of movement of the Y-axis, while the direction of the second compensation torque is the same as the direction of movement of the Y-axis.
[0051] Specifically, the linkage correction is performed according to the following formula: ΔT = λ × |k1 - k2| × Tn If k1 is greater than k2, then T1 = T1base - ΔT, T2 = T2base + ΔT If k1 is less than or equal to k2, then T1 = T1base + ΔT, T2 = T2base - ΔT Wherein, ΔT is the linkage correction amount, λ is the preset linkage coefficient, which is greater than zero, k1 is the first load percentage after correction, k2 is the second load percentage after correction, Tn is the preset reference compensation torque, T1 is the first compensation torque after correction, and T2 is the second compensation torque after correction.
[0052] Regarding the directions of the first and second compensation torques: For the gear bearing a larger load, the direction of its compensation torque is the same as the Y-axis movement direction of the module; for the gear bearing a smaller load, the direction of its compensation torque is opposite to the Y-axis movement direction of the module. That is, when k1 is greater than k2, the first gear is on the heavy-load side, and the direction of the first compensation torque is the same as the Y-axis movement direction; the second gear is on the light-load side, and the direction of the second compensation torque is opposite to the Y-axis movement direction. When k2 is greater than k1, the second gear is on the heavy-load side, and the direction of the second compensation torque is the same as the Y-axis movement direction; the first gear is on the light-load side, and the direction of the first compensation torque is opposite to the Y-axis movement direction. This ensures that the directions of the first and second compensation torques are always opposite.
[0053] It should be noted that the heavy-load side gear, bearing a larger load, has its teeth naturally pressed against the tooth surface of the drive side by the load torque. Applying a compensating torque in the same direction along the Y-axis further increases the clamping force between the teeth on this side and the tooth surface of the drive side, reliably eliminating backlash on this side. Conversely, the light-load side gear, lacking sufficient load clamping, is prone to floating within the tooth flank clearance. Applying a compensating torque in the opposite direction along the Y-axis pulls the teeth on this side towards the other tooth surface of the rack and brings them into contact. Since the heavy-load side teeth are in contact with one tooth surface of the rack, and the light-load side teeth are in contact with the other tooth surface, opposite preloads are formed on both sides. There is no backlash that can move in either direction of movement, thus achieving bidirectional backlash elimination. Furthermore, because the compensating torque required on the light-load side is larger and that required on the heavy-load side is smaller, the difference in compensating torque between the two sides matches the difference in load proportions on both sides, preventing the introduction of additional torsional torque.
[0054] The above process is illustrated below with a set of exemplary values. Assume the span W is 1000 mm, the X-axis position X of the working part is 300 mm, the unit distance compensation coefficient c is 0.01 Nm / mm, the linkage coefficient λ is 1, the reference compensation torque Tn is 5 Nm, and the amplification factor α is 0.3.
[0055] At this point, from the aforementioned formula, we can obtain: the first load percentage p1 is 0.7, the second load percentage p2 is 0.3, the first horizontal distance L1 is 300 mm, the second horizontal distance L2 is 700 mm, the base value of the first compensation torque T1base is 3 Nm, and the base value of the second compensation torque T2base is 7 Nm. If the working part is at the Z-axis lead screw origin, i.e., Z is 0, then the lever arm correction coefficient β is 1, and the corrected first load percentage k1 is 0.7 and the second load percentage k2 is 0.3.
[0056] Since k1 is greater than k2, the first gear is on the heavy load side, and the linkage correction and the two-way compensation torque are as follows: ΔT = λ × |k1 - k2| × Tn = 1 × |0.7 - 0.3| × 5 = 2 Nm T1 = T1base - ΔT = 3 - 2 = 1 Nm, and its direction is the same as the direction of motion along the Y-axis. T2 = T2base + ΔT = 7 + 2 = 9 Nm, and its direction is opposite to the direction of motion along the Y-axis. If the working part is lifted by the Z-axis lead screw to a Z-position where Z equals H0, then the lever arm H increases from H0 to twice H0. The lever arm correction factor and the corrected load percentage are as follows: β = 1 + α × Z ÷ H0 = 1 + 0.3 × H0 ÷ H0 = 1.3 k1 = 0.5 + (p1 - 0.5) × β = 0.5 + (0.7 - 0.5) × 1.3 = 0.76 k2 = 1 - k1 = 0.24 Correspondingly, the linkage correction amount ΔT is 2.6 Nm, the first compensation torque T1 is 0.4 Nm and its direction is the same as the Y-axis movement direction, and the second compensation torque T2 is 9.6 Nm and its direction is opposite to the Y-axis movement direction.
[0057] As can be seen, as the lever arm increases from H0 to twice H0, the difference in the load ratio on both sides increases from 0.4 to 0.52, the second compensation torque increases from 9 Nm to 9.6 Nm accordingly, and the first compensation torque decreases from 1 Nm to 0.4 Nm accordingly, so that the compensation torque is more in line with the actual off-center load state when the working part is in a high position.
[0058] After determining the first compensation torque and the second compensation torque, this embodiment further determines the output torque required by each of the two motors, and drives the module to move along the Y-axis accordingly.
[0059] S204, determine the first load torque and the second load torque according to the first load ratio and the second load ratio, and superimpose the first compensation torque and the second compensation torque onto the corresponding load torque to obtain the first output torque and the second output torque.
[0060] Furthermore, S204 specifically includes: The total load torque of the working component is determined based on the mass of the working component and the motion acceleration of the XZ axis lead screw module along the Y axis direction. The total load torque is distributed to the first gear according to the first load ratio to obtain the first load torque, and the total load torque is distributed to the second gear according to the second load ratio to obtain the second load torque; The first compensation torque is added to the first load torque to obtain the first output torque of the first motor; The second compensation torque is added to the second load torque to obtain the second output torque of the second motor.
[0061] Here, load torque refers to the torque provided by the gears to drive the working parts to accelerate along the Y-axis of the module, while output torque refers to the actual torque command value sent to the corresponding motor. Since the compensation torque is only used to eliminate backlash and is not used to drive the working parts, the compensation torque must be added to the load torque to obtain the actual output torque of the motor.
[0062] Specifically, based on the mass of the working component and the acceleration of the XZ axis lead screw module along the Y-axis, the total load torque of the working component is determined according to the following formula: Ttotal = M × a × r Where Ttotal is the total load torque, M is the mass of the working part, a is the motion acceleration of the XZ axis lead screw module along the Y axis, and r is the pitch circle radius of the first gear and the second gear. Since the two gears have the same specifications, their pitch circle radii are equal.
[0063] It should be noted that when the working part moves along the Y-axis with acceleration *a*, its inertial force is equal to the product of its mass *M* and acceleration *a*. This inertial force is converted into torque acting on the gear through the gear and rack meshing pair, and the lever arm during the conversion is the pitch circle radius *r* of the gear. If the Y-axis guide rail has an installation tilt angle, the component of the working part's weight along the Y-axis must be added to the inertial force, and the method of addition is the same as that of the inertial force.
[0064] Specifically, the total load torque is distributed to the first gear according to a first load ratio to obtain the first load torque, and the total load torque is distributed to the second gear according to a second load ratio to obtain the second load torque, as follows: T1load = Ttotal × k1 T2load = Ttotal × k2 Where T1load is the first load torque, T2load is the second load torque, Ttotal is the total load torque, k1 is the corrected first load percentage, and k2 is the corrected second load percentage. Since the sum of k1 and k2 is 1, the sum of the first load torque and the second load torque is exactly equal to the total load torque. The sum of the load torques on both sides provides all the torque required to drive the working parts to accelerate, without causing acceleration lag due to insufficient distribution or mutual resistance between the two motors due to redundant distribution.
[0065] Specifically, the first output torque of the first motor is obtained by adding the first compensation torque to the first load torque, and the second output torque of the second motor is obtained by adding the second compensation torque to the second load torque, according to the following formula: T1out = T1load + d1 × T1 T2out = T2load + d2 × T2 Where T1out is the first output torque of the first motor, T2out is the second output torque of the second motor, T1 is the first compensation torque, T2 is the second compensation torque, d1 is the direction sign of the first compensation torque, and d2 is the direction sign of the second compensation torque. The rule for determining the direction sign is as follows: taking the Y-axis movement direction of the module as the positive direction, when the direction of the compensation torque on that side is the same as the Y-axis movement direction, its direction sign is positive 1; when the direction of the compensation torque on that side is opposite to the Y-axis movement direction, its direction sign is negative 1. Since the directions of the first compensation torque and the second compensation torque are always opposite, the values of d1 and d2 must be opposite, that is, one of them is positive 1 and the other is negative 1.
[0066] Continuing with the previous example, suppose the mass M of the working part is 200 kg, the acceleration a of the module along the Y-axis is 5 m / s², the pitch circle radius r of the gear is 0.1 m, and the working part is lifted to the Z-axis position Z equal to H0. At this time, the corrected first load ratio k1 is 0.76, the second load ratio k2 is 0.24, the first compensation torque T1 is 0.4 Nm and its direction is the same as the Y-axis motion direction, and the second compensation torque T2 is 9.6 Nm and its direction is opposite to the Y-axis motion direction.
[0067] According to the aforementioned formula, the quantities are determined sequentially as follows: Total = M × a × r = 200 × 5 × 0.1 = 100 Nm T1load = Ttotal × k1 = 100 × 0.76 = 76 Nm T2load = Ttotal × k2 = 100 × 0.24 = 24 Nm Since the first compensation torque is in the same direction as the Y-axis motion, the direction sign d1 is positive 1; the second compensation torque is in the opposite direction to the Y-axis motion, and the direction sign d2 is negative 1. Therefore: T1out = T1load + d1 × T1 = 76 + 0.4 = 76.4 Nm T2out = T2load + d2 × T2 = 24 9.6 = 14.4 Nm As can be seen from the above formula, the first output torque is greater than the second output torque, which matches the actual situation where the working part is close to the first Y-axis guide rail and the first gear bears a large load; at the same time, the second output torque is still positive, and while the second motor undertakes part of the driving task, it provides the preload required for backlash elimination with its reverse component, and will not compete with the first motor.
[0068] S205, control the first motor and the second motor according to the first output torque and the second output torque respectively, so as to drive the module to move along the Y-axis direction.
[0069] The controller converts the first output torque T1out into a torque command for the first motor and sends it to the first motor. It also converts the second output torque T2out into a torque command for the second motor and sends it to the second motor. The two motors drive the first gear and the second gear to roll along the first rack and the second rack, thereby driving the XZ axis lead screw module to move along the Y axis.
[0070] Since the first compensation torque and the second compensation torque are in opposite directions, the net value after their superposition is manifested as an additional bias of the two motors, which is less than the total load torque. This bias is absorbed by the torque closed loop of the first motor and the second motor. The actual movement speed of the module along the Y-axis is guaranteed by the speed closed loop and will not deviate from the target speed due to the superposition of compensation torque.
[0071] Furthermore, when controlling the first motor and the second motor according to the first output torque and the second output torque respectively to drive the module to move along the Y-axis, the method further includes: Obtain the first current value of the first motor and the second current value of the second motor; calculate the current difference between the first current value and the second current value; perform low-pass filtering on the current difference to filter out the periodic fluctuations caused by the tooth profile errors of the first rack and the second rack, and obtain the DC component corresponding to the parallelism error between the first Y-axis guide rail and the second Y-axis guide rail; adjust the first output torque or the second output torque according to the DC component to keep the displacement of the first gear and the second gear along the Y-axis consistent.
[0072] Parallelism error refers to the fact that the first Y-axis guide rail and the second Y-axis guide rail are not perfectly parallel after actual assembly, and there is a slight deviation in the included angle or spacing between them. When the module moves along the Y-axis, if the two guide rails are not parallel, the distance that the first gear and the second gear need to roll in the same amount of time is not equal. One side of the gears on both sides needs to be forcibly dragged, while the other side is relatively ahead. The movement of the module is subject to additional constraints, and the output current of the motors on both sides will be continuously unbalanced.
[0073] It should be noted that the current difference contains two types of components. The first type is the periodic fluctuation caused by tooth profile error. During the manufacturing process of the rack, there are inevitably slight periodic deviations in the tooth pitch. Each time a tooth meshes, a current disturbance is generated, which manifests as an AC component corresponding to the meshing frequency. The second type is the persistent offset caused by parallelism error, which manifests as a DC component that does not change periodically with the meshing process. In this embodiment, by using low-pass filtering on the current difference, the higher-frequency periodic fluctuations are attenuated, while the DC component is retained, thereby separating the parallelism error from the mixed current signal.
[0074] Specifically, the current difference is determined by the following formula: ΔI = I1 - I2 Where ΔI is the current difference, I1 is the first current value of the first motor, and I2 is the second current value of the second motor.
[0075] Specifically, the current difference is low-pass filtered according to the following formula: ΔIdc(n) = (1 - γ) × ΔIdc(n-1) + γ × ΔI(n) Where ΔIdc(n) is the DC component obtained from the current filtering, ΔIdc(n-1) is the DC component obtained from the previous filtering, ΔI(n) is the current difference obtained from the current sampling, and γ is the preset filtering coefficient, which takes a value greater than 0 and less than 1. The smaller the filtering coefficient γ, the slower the response of the filtered output to the current sampled value, and the stronger the attenuation of periodic fluctuations.
[0076] Specifically, to ensure that periodic fluctuations are effectively filtered out, the cutoff frequency of the low-pass filter is set to be lower than the minimum engagement frequency, i.e., satisfying: fc <vmin ÷ p Where fc is the cutoff frequency of the low-pass filter, vmin is the minimum speed of the module moving along the Y-axis, and p is the pitch of the first rack. Since the gear generates a meshing disturbance every time it rolls one tooth pitch, the number of disturbances per unit time, i.e., the meshing frequency, is equal to the speed divided by the tooth pitch. Setting the cutoff frequency below this frequency will cause the periodic fluctuations to fall within the stopband and be attenuated.
[0077] Specifically, the first output torque and the second output torque are adjusted according to the DC component, using the following formula: T1out = T1out - Kp × ΔIdc T2out = T2out + Kp × ΔIdc Wherein, Kp is the preset proportional adjustment coefficient, the value of which is obtained by calibration based on the motor torque constant and the allowable adjustment range, and ΔIdc is the DC component obtained after filtering.
[0078] As shown in the above formula, when the DC component ΔIdc is greater than zero, meaning the first current value is consistently greater than the second current value, the load on the first motor is unbalanced. In this case, the first output torque is reduced and the second output torque is increased, allowing the second motor to share more of the driving task until the currents on both sides tend to be equal. When the DC component ΔIdc is less than zero, the first output torque is increased and the second output torque is decreased. Since the adjustment amounts in the two formulas are equal in magnitude but opposite in sign, their sum is always zero. This adjustment process does not change the total output torque on both sides, and therefore does not affect the overall movement speed of the module along the Y-axis. It only changes the output distribution between the two motors, thereby keeping the displacement of the first gear and the second gear along the Y-axis consistent, avoiding module swaying and additional wear caused by non-parallel guide rails.
[0079] Furthermore, when adjusting the first output torque or the second output torque according to the DC component, the method further includes: obtaining the current movement speed of the XZ axis lead screw module along the Y-axis direction; calculating the meshing frequency of the first gear on the first rack based on the current movement speed and the tooth pitch of the first rack; obtaining the natural frequency of the X-axis lead screw; calculating the frequency difference between the meshing frequency and the natural frequency; and reducing the acceleration of the working component moving along the X-axis lead screw when the frequency difference is less than a set threshold.
[0080] The meshing frequency refers to the number of times the gear teeth and rack teeth mesh per unit time. Since the gear completes one meshing cycle for each tooth pitch, the meshing frequency is equal to the speed of the gear along the rack divided by the tooth pitch. The natural frequency of the X-axis lead screw refers to the frequency corresponding to its first mode when the X-axis lead screw, as a slender elastic body, vibrates freely. Its value is related to the material, length, diameter, and support method of the lead screw. It can be obtained by actual measurement using the hammer impact method after the equipment is assembled, or by calculation through finite element analysis, and pre-stored in the controller.
[0081] Specifically, the meshing frequency and the frequency difference are determined by the following formula: f = v ÷ p Δf = |f - fn| Where f is the meshing frequency, v is the current movement speed of the module along the Y-axis, p is the tooth pitch of the first rack, fn is the natural frequency of the X-axis lead screw, and Δf is the frequency difference.
[0082] When the frequency difference Δf is less than the set threshold fth, the acceleration of the working part moving along the X-axis lead screw is adjusted according to the following formula: aX = μ × aX Where aX is the acceleration of the working part moving along the X-axis lead screw, μ is the preset reduction coefficient, which is greater than 0 and less than 1, and fth is the set threshold.
[0083] It should be noted that when the meshing frequency is close to the natural frequency of the X-axis lead screw, the periodic meshing impact of the gear and rack will become a continuous excitation source for the X-axis lead screw, causing it to resonate. This manifests as a decrease in the positioning accuracy of the working parts, accompanied by significant vibration and noise. If the working parts continue to move rapidly along the X-axis lead screw at this time, their inertial impact will be superimposed with the meshing impact, further amplifying the resonance response. Therefore, actively reducing the motion acceleration in the X-axis direction when the frequency difference is less than a set threshold can reduce the additional inertial excitation and prevent the resonance from being further amplified.
[0084] For example, suppose the pitch p of the first rack is 5 millimeters, or 0.005 meters, the current movement speed v of the module along the Y-axis is 0.5 meters per second, the natural frequency fn of the X-axis lead screw is 105 Hz, the threshold fth is set to 10 Hz, and the reduction coefficient μ is 0.5.
[0085] According to the aforementioned formula, the meshing frequency and the frequency difference are respectively: f = v ÷ p = 0.5 ÷ 0.005 = 100 Hz Δf = |f - fn| = |100 - 105| = 5 Hz Since the frequency difference Δf is 5 Hz, which is less than the set threshold fth (10 Hz), the deceleration condition is met. The acceleration of the working part moving along the X-axis lead screw is adjusted according to the following formula: aX = μ × aX = 0.5 × aX That is, the adjusted acceleration is 0.5 times the original value, which is reduced to half of the original value.
[0086] Furthermore, the method also includes: The first rotation angle of the first gear is obtained by the first encoder mounted on the first motor, and the first meshing position of the teeth of the first gear between two adjacent teeth of the first rack is determined based on the first rotation angle and the tooth pitch of the first rack. The second rotation angle of the second gear is obtained by the second encoder mounted on the second motor. Based on the second rotation angle and the tooth pitch of the second rack, the second meshing position of the teeth of the second gear between two adjacent teeth of the second rack is determined. The meshing position difference is determined based on the first meshing position and the second meshing position; when the meshing position difference is less than a preset threshold, the acceleration of the working component moving along the X-axis lead screw is reduced, and it is determined that the first gear and the second gear are in a synchronous meshing state; the preset threshold is determined based on the tooth pitch of the first rack.
[0087] The meshing position refers to the specific position of a gear tooth between two adjacent teeth on the rack, representing the phase of the tooth within one tooth pitch cycle. The first encoder and the second encoder are respectively mounted on the output shafts of the first motor and the second motor, and are used to detect the rotation angle of the corresponding gears.
[0088] Specifically, the distances traveled by the first gear along the first rack and the distances traveled by the second gear along the second rack are determined by the following formulas: s1 = θ1 × z × p ÷ 360 s² = θ² × z × p ÷ 360 Where s1 is the distance the first gear rolls along the first rack, s2 is the distance the second gear rolls along the second rack, θ1 is the first rotation angle of the first gear measured by the first encoder, θ2 is the second rotation angle of the second gear measured by the second encoder, z is the number of teeth of the first gear and the second gear, the two gears have the same specifications so their number of teeth is equal, and p is the tooth pitch.
[0089] Specifically, the first meshing position and the second meshing position are determined according to the following formula: q1 = s1 mod p q² = s² mod p Where q1 is the first meshing position, q2 is the second meshing position, s1 is the distance the first gear rolls along the first rack, s2 is the distance the second gear rolls along the second rack, p is the tooth pitch, and mod represents the remainder operation, that is, q1 takes the remainder obtained by dividing s1 by p, and q2 takes the remainder obtained by dividing s2 by p.
[0090] It should be noted that when a gear rotates one full revolution, the distance it rolls along the rack is equal to the product of the number of teeth z and the tooth pitch p. Therefore, the rolling distance corresponding to the rotation angle θ1 is equal to θ1 divided by 360 and then multiplied by the product of z and p. Taking the remainder of this distance modulo the tooth pitch p, the remainder is the relative position of the tooth within the current tooth pitch cycle, and its value ranges from zero to the tooth pitch p. When the remainder is zero, the tooth is exactly at the tip of a tooth on the rack; when the remainder is close to the tooth pitch p, the tooth is about to exit the current tooth slot and enter the next tooth slot.
[0091] Specifically, the meshing position difference is determined by the following formula: Δq = |q1 - q2| Where Δq is the difference in meshing position, q1 is the first meshing position, and q2 is the second meshing position.
[0092] The preset threshold is determined based on the tooth pitch of the first rack, for example, one-tenth of the tooth pitch p, i.e.: qth = 0.1 × p When the meshing position difference Δq is less than the preset threshold qth, the acceleration of the working part moving along the X-axis screw is reduced in the aforementioned manner, that is, aX = μ×aX, and it is determined that the first gear and the second gear are in a synchronous meshing state.
[0093] It should be noted that when the meshing position difference is less than a preset threshold, it indicates that the teeth of the first gear and the teeth of the second gear are basically in phase with each other in their respective racks, and they will enter and exit meshing simultaneously. In this case, the meshing impacts of the two gears are superimposed in time, forming a torsional excitation in phase on the XZ axis lead screw module, and its excitation intensity is significantly greater than when the meshing phases of the two sides are misaligned. If the working part then performs rapid acceleration and deceleration along the X-axis lead screw at this time, its inertial force will be superimposed with the above-mentioned in-phase torsional excitation, which can easily cause the overall vibration of the module. Therefore, actively reducing the motion acceleration in the X-axis direction when it is determined that the two gears are in a synchronous meshing state can avoid the unfavorable period of excitation superposition and keep the module stable throughout the entire movement.
[0094] Furthermore, the controller of the cooperative motion control system of the dual Y-axis gear rack and XZ-axis lead screw module proposed in this embodiment is configured to execute the aforementioned cooperative motion control method of the dual Y-axis gear rack and XZ-axis lead screw module, which will not be described in detail here.
[0095] In summary, the embodiments of this application dynamically determine the load ratio of the two gears based on the X-axis position of the working component, and amplify and correct the difference in load ratio using the lever arm determined by the Z-axis position. This ensures that the output distribution of the two motors always follows the actual off-center load state of the working component, avoiding the swaying caused by insufficient output on the heavy-load side and excessive output on the light-load side when using a fixed ratio distribution. By applying compensating torques in opposite directions to the two gears, the teeth on both sides are pressed against the relative tooth surfaces of their respective racks to form a preload, ensuring that there is no lateral movement of the gears in any direction of motion. The backlash is eliminated without the need for an additional mechanical backlash elimination mechanism; by low-pass filtering the current difference between the two motors to extract the DC component corresponding to the parallelism error, and adjusting the output torque on both sides in a manner that is equal in magnitude but opposite in sign, the parallelism error between the two guide rails is compensated while keeping the sum of the output torques on both sides constant and without affecting the overall movement speed of the module; by reducing the motion acceleration in the X-axis direction when the meshing frequency is close to the natural frequency of the lead screw and when the gears on both sides are in synchronous meshing, the unfavorable period of superposition of resonant excitation and inertial excitation is avoided. Through the synergistic effect of the above steps, the embodiments of this application significantly improve the positioning accuracy of the working parts and the running stability of the whole machine under conditions of large span, variable load and compound motion, and reduce the additional wear of the transmission parts.
[0096] The above description is merely an embodiment of this application and is not intended to limit the scope of protection of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of protection of this application.
Claims
1. A method for coordinated motion control of a dual Y-axis gear rack and pinion and an XZ-axis lead screw module, characterized in that, The XZ-axis lead screw module is straddling a parallel first Y-axis guide rail and a second Y-axis guide rail. The module has a first gear at its first end and a second gear at its second end. The first gear meshes with a first rack on the first Y-axis guide rail, and the second gear meshes with a second rack on the second Y-axis guide rail. The first gear and the second gear are driven by a first motor and a second motor, respectively. The module is equipped with an X-axis lead screw with working parts. The method includes: Obtain the X-axis position of the working component and the Y-axis movement direction of the module; The first load percentage of the working component on the first gear and the second load percentage on the second gear are determined based on the X-axis position. Based on the Y-axis motion direction, the X-axis position, and the first load percentage and the second load percentage, the first compensation torque of the first gear and the second compensation torque of the second gear are determined, and the first compensation torque and the second compensation torque are in opposite directions. The first load torque and the second load torque are determined based on the first load ratio and the second load ratio, and the first compensation torque and the second compensation torque are respectively superimposed on the corresponding load torque to obtain the first output torque and the second output torque. The first motor and the second motor are controlled by the first output torque and the second output torque, respectively, to drive the module to move along the Y-axis.
2. The motion control method according to claim 1, characterized in that, The step of obtaining the X-axis position of the working component includes: The rotation angle of the X-axis lead screw is obtained by an X-axis encoder mounted on the X-axis lead screw. Based on the rotation angle and the lead of the X-axis lead screw, calculate the X-axis position of the working part relative to the origin of the X-axis lead screw.
3. The motion control method according to claim 2, characterized in that, The XZ axis lead screw module is also equipped with a Z-axis lead screw; after obtaining the X-axis position of the working component, it further includes: Obtain the Z-axis position of the working component on the Z-axis lead screw; Based on the Z-axis position, determine the vertical distance from the center of gravity of the working component to the plane containing the first rack and the second rack, and use the vertical distance as the lever arm; The first load percentage and the second load percentage are corrected according to the lever arm, so that the difference between the first load percentage and the second load percentage increases as the lever arm increases, and the direction of the increase of the difference is consistent with the direction in which the working part approaches the first Y-axis guide rail or the second Y-axis guide rail along the X-axis direction.
4. The motion control method according to claim 1, characterized in that, The step of determining the first compensation torque of the first gear and the second compensation torque of the second gear based on the Y-axis movement direction, the X-axis position, and the first load percentage and the second load percentage includes: Based on the X-axis position, determine the first horizontal distance between the working component and the first Y-axis guide rail, and the second horizontal distance between the working component and the second Y-axis guide rail; The base value of the first compensation torque is determined based on the first horizontal distance, and the base value of the second compensation torque is determined based on the second horizontal distance; the smaller the first horizontal distance, the smaller the base value of the first compensation torque; the smaller the second horizontal distance, the smaller the base value of the second compensation torque.
5. The motion control method according to claim 4, characterized in that, Also includes: Based on the Y-axis motion direction and the first and second load percentages, the base values of the first and second compensation torques are adjusted in a coordinated manner: When the first load percentage is greater than the second load percentage, the base value of the first compensation torque is reduced and the base value of the second compensation torque is increased, and the direction of the first compensation torque is the same as the direction of movement of the Y-axis, while the direction of the second compensation torque is opposite to the direction of movement of the Y-axis. When the second load percentage is greater than the first load percentage, the base value of the first compensation torque is increased and the base value of the second compensation torque is decreased, and the direction of the first compensation torque is opposite to the direction of the Y-axis movement, while the direction of the second compensation torque is the same as the direction of the Y-axis movement.
6. The motion control method according to claim 5, characterized in that, The step of determining the first load torque and the second load torque based on the first load ratio and the second load ratio, and then superimposing the first compensation torque and the second compensation torque onto the corresponding load torques to obtain the first output torque and the second output torque, includes: The total load torque of the working component is determined based on the mass of the working component and the motion acceleration of the XZ axis lead screw module along the Y axis direction. The total load torque is distributed to the first gear according to the first load ratio to obtain the first load torque, and the total load torque is distributed to the second gear according to the second load ratio to obtain the second load torque; The first compensation torque is added to the first load torque to obtain the first output torque of the first motor; The second compensation torque is added to the second load torque to obtain the second output torque of the second motor.
7. The motion control method according to claim 1, characterized in that, Also includes: The first rotation angle of the first gear is obtained by the first encoder mounted on the first motor, and the first meshing position of the teeth of the first gear between two adjacent teeth of the first rack is determined based on the first rotation angle and the tooth pitch of the first rack. The second rotation angle of the second gear is obtained by the second encoder mounted on the second motor. Based on the second rotation angle and the tooth pitch of the second rack, the second meshing position of the teeth of the second gear between two adjacent teeth of the second rack is determined. The meshing position difference is determined based on the first meshing position and the second meshing position; when the meshing position difference is less than a preset threshold, the acceleration of the working component moving along the X-axis lead screw is reduced, and it is determined that the first gear and the second gear are in a synchronous meshing state; The preset threshold is determined based on the tooth pitch of the first rack.
8. The motion control method according to claim 6, characterized in that, When the first motor and the second motor are controlled according to the first output torque and the second output torque respectively, and the module is driven to move along the Y-axis, the method further includes: Obtain the first current value of the first motor and the second current value of the second motor; calculate the current difference between the first current value and the second current value. The current difference is low-pass filtered to remove the periodic fluctuations caused by the tooth profile errors of the first and second racks, and the DC component corresponding to the parallelism error between the first and second Y-axis guides is obtained. Adjust the first output torque or the second output torque according to the DC component so that the displacement of the first gear and the second gear along the Y-axis is consistent.
9. The motion control method according to claim 8, characterized in that, When adjusting the first output torque or the second output torque according to the DC component, the method further includes: Obtain the current movement speed of the XZ axis lead screw module along the Y axis direction; Calculate the meshing frequency of the first gear on the first rack based on the current motion speed and the tooth pitch of the first rack; Obtain the natural frequency of the X-axis lead screw; calculate the frequency difference between the meshing frequency and the natural frequency; When the frequency difference is less than a set threshold, the acceleration of the working component moving along the X-axis lead screw is reduced.
10. A coordinated motion control system for a dual Y-axis gear rack and pinion and an XZ-axis lead screw module, characterized in that, include: Parallel arrangement of the first and second Y-axis guide rails; The first rack is fixed to the first Y-axis guide rail; The second rack is fixed to the second Y-axis guide rail; An XZ axis lead screw module is installed between the first Y axis guide rail and the second Y axis guide rail. The first end of the module is provided with a first gear and the second end is provided with a second gear. The first gear meshes with the first rack and the second gear meshes with the second rack. The module is provided with an X axis lead screw with working parts. An X-axis encoder is mounted on the X-axis lead screw and is used to detect the rotation angle of the X-axis lead screw. A first motor is connected to the first gear transmission; The second motor is connected to the second gear transmission; And a controller configured to perform the method of claim 1.
