Mechanical hand speed control method and device, front end module

CN122584360BActive Publication Date: 2026-10-09BEIJING HEQI PRECISION TECH LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202611072867.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-07-20
Publication Date
2026-10-09
Estimated Expiration
2046-07-20

AI Technical Summary

Technical Problem

目前现有机械手多采用单一固定速度控制模式开展全程运动作业,未针对机械手的不同运动工况进行差异化速度调控

Benefits of technology

[0008]The beneficial effects of the robot speed control method, device, and front-end module provided in this application are as follows: This application distinguishes between the robot's idle travel phase and the working phase and adopts differentiated speed control logic to specifically adapt to the operational needs of different motion scenarios. During the idle travel phase, a higher first speed mode is used, effectively shortening the travel time of the robot's idle movement and improving the overall equipment turnover efficiency. During the working phase, a lower overall speed second speed mode is used, matched with the dedicated sub-speed operation for each specific working sub-phase, reducing the risk of collisions and offsets in precision wafer handling from a speed perspective. Simultaneously, this application uses a smooth target curve with continuous acceleration and no abrupt changes at the speed switching point to complete the speed switching, eliminating the mechanical shock and end effector jitter problems caused by traditional speed changes. Therefore, this application effectively balances the robot's operating efficiency with the precision and safety of wafer handling, solving the shortcomings of traditional single speed control that cannot adapt to multiple working conditions, and improving the overall stability and operational quality of wafer handling operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122584360B_ABST
    Figure CN122584360B_ABST
Patent Text Reader

Abstract

The application provides a mechanical hand speed control method and device and a front end module, and belongs to the technical field of mechanical hand control. The method comprises the following steps: collecting mechanical hand task state information and real-time position information fed back by an encoder, and determining an idle stroke stage or a working stage of the mechanical hand; in the idle stroke stage, the mechanical hand is controlled to run in a first speed mode, and a speed switching point is calculated; after reaching the switching point, the mechanical hand is switched to a second speed mode through a continuous and non-jump target smooth curve of jerk; and in the working stage, a specific working sub-stage is determined according to the real-time position, and a corresponding sub-speed is matched for running. The mechanical hand speed control method and device and the front end module provided by the application can improve the overall stability and working quality of wafer carrying work.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of robotic arm control technology, and more specifically, relates to a robotic arm speed control method and device, and a front-end module. Background Technology

[0002] In semiconductor wafer handling operations, the speed control performance of robotic arms directly determines the efficiency of wafer handling. Currently, most existing robotic arms use a single fixed speed control mode for the entire operation, without differentiated speed adjustment for different motion conditions. Sudden speed changes during the transition between different motion phases can cause mechanical vibration and impact, easily leading to wafer alignment deviations or minor bumps. Furthermore, a single speed mode cannot simultaneously meet the demands of operational efficiency and precision operation, resulting in poor stability during wafer handling. Summary of the Invention

[0003] The purpose of this application is to provide a method and device for controlling the speed of a robotic arm, as well as a front-end module, to improve the overall stability and quality of wafer handling operations.

[0004] A first aspect of this application provides a method for controlling the speed of a robotic arm, comprising: Obtain the current task status information of the robotic arm; Based on the current task status information, determine the current motion stage of the robot arm. The motion stage includes the idle travel stage without wafer handling or the operation stage involving wafer manipulation. If the robot is in the idle travel phase, control the robot to run in the first speed mode and calculate the speed switching point. The speed switching point is the position point where the idle travel phase ends and the operation phase begins. When the robot arm is detected to have reached the speed switching point, it is switched from the idle travel stage to the working stage, and the operating speed of the robot arm is switched from the first speed mode to the second speed mode through the target smooth curve; the target smooth curve refers to the smooth speed curve in which the acceleration value of the robot arm changes continuously with time without abrupt changes during the speed change process. If the robot is in the operation phase, the specific operation sub-phase of the robot is determined based on the real-time position information and the preset target position, and the robot is controlled to run at the sub-speed corresponding to the specific operation sub-phase in the second speed mode; the real-time position information is obtained in real time by the encoder set at the robot drive motor; The second speed mode includes sub-speeds corresponding to each specific operation sub-stage, all of which are lower than the operating speed of the first speed mode.

[0005] A second aspect of this application provides a speed control device for a robotic arm, comprising: The information acquisition module is used to acquire the current task status information of the robotic arm; The task phase determination module is used to determine the current motion phase of the robot arm based on the current task status information. The motion phase includes the idle stroke phase without wafer handling or the task phase involving wafer operation. The first speed control module is used to control the robot to run in the first speed mode when the robot is in the idle stroke stage, and to calculate the speed switching point, which is the position point where the idle stroke stage ends and the operation stage begins. The mode switching module is used to switch the robot from the idle travel stage to the working stage when the robot is detected to have reached the speed switching point, and to switch the robot's running speed from the first speed mode to the second speed mode through the target smooth curve; the target smooth curve refers to a smooth speed curve in which the jerk value changes continuously over time without abrupt changes during the speed change of the robot. The second speed control module is used to determine the specific sub-stage of the operation when the robot is in the operation stage, based on the real-time position information and the preset target position, and to control the robot to run at the sub-speed corresponding to the specific sub-stage of the operation in the second speed mode; the real-time position information is obtained in real time by the encoder set at the robot drive motor. The second speed mode includes sub-speeds corresponding to each specific operation sub-stage, all of which are lower than the operating speed of the first speed mode.

[0006] A third aspect of this application provides a front-end module, including a memory, a processor, and a computer program stored in the memory and running on the processor, wherein the processor executes the computer program to implement the steps of the above-described manipulator speed control method.

[0007] A fourth aspect of this application provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the above-described robotic arm speed control method.

[0008] The beneficial effects of the robot speed control method, device, and front-end module provided in this application are as follows: This application distinguishes between the robot's idle travel phase and the working phase and adopts differentiated speed control logic to specifically adapt to the operational needs of different motion scenarios. During the idle travel phase, a higher first speed mode is used, effectively shortening the travel time of the robot's idle movement and improving the overall equipment turnover efficiency. During the working phase, a lower overall speed second speed mode is used, matched with the dedicated sub-speed operation for each specific working sub-phase, reducing the risk of collisions and offsets in precision wafer handling from a speed perspective. Simultaneously, this application uses a smooth target curve with continuous acceleration and no abrupt changes at the speed switching point to complete the speed switching, eliminating the mechanical shock and end effector jitter problems caused by traditional speed changes. Therefore, this application effectively balances the robot's operating efficiency with the precision and safety of wafer handling, solving the shortcomings of traditional single speed control that cannot adapt to multiple working conditions, and improving the overall stability and operational quality of wafer handling operations. Attached Figure Description

[0009] To more clearly illustrate the technical solutions in the embodiments of this application, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0010] Figure 1 A flowchart illustrating a robotic arm speed control method provided in an embodiment of this application; Figure 2 This is a schematic diagram of a target smoothing curve provided in an embodiment of this application; Figure 3 This is a schematic diagram of the multi-stage sub-velocity distribution during the operation phase provided in an embodiment of this application; Figure 4 This is a structural block diagram of a robot speed control device provided in an embodiment of this application; Figure 5 This is a schematic block diagram of a front-end module provided in one embodiment of this application. Detailed Implementation

[0011] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application may also be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods have been omitted so as not to obscure the description of this application with unnecessary detail.

[0012] Please refer to Figure 1 , Figure 1 This is a flowchart illustrating a robotic arm speed control method provided in one embodiment of this application. This method can be applied to a robotic arm controller in an Equipment Front End Module (EFEM). The method can be executed by the robotic arm controller. The EFEM is a wafer front-end transfer system that uses a precision robotic arm to transfer single wafers to the process and inspection modules in a high-cleanliness environment. The robotic arm controller integrates functions such as data acquisition and analysis, motion logic determination, speed calculation, trajectory generation, and speed control output, and is used to independently complete the entire closed-loop control of the robotic arm speed in the EFEM.

[0013] S101: Obtain the current task status information of the robotic arm.

[0014] In this embodiment, the current task status information is the task identifier information that is read in real time by the robot controller. It is used to characterize the work that the robot needs to perform at the moment and is used to determine whether the robot is to perform wafer-related operations.

[0015] In this embodiment, the robot controller continuously collects the current task status information of the robot in real time, providing data support for subsequent motion phase determination, speed control, and position comparison.

[0016] S102: Based on the current task status information, determine the current motion stage of the robot arm. The motion stage includes the idle travel stage without wafer handling or the operation stage involving wafer operation.

[0017] In this embodiment, the motion phase is the overall motion range defined based on whether the robot arm contacts the wafer. This embodiment divides the overall motion range into an idle travel phase and a working phase. The idle travel phase is the motion phase in which the robot arm does not hold a wafer and does not perform any wafer operations, but only completes station switching or position movement. There is no risk of wafer damage in this phase, and the operating speed is less restricted. The working phase is the motion phase in which the robot arm enters the wafer working area and performs direct contact operations on the wafer, such as wafer approach, alignment, or pick-up and drop. This phase has strict requirements for operational stability and operating speed.

[0018] In this embodiment, the robot controller judges the received current task status information and distinguishes the robot's movement stage based on whether the task includes wafer operation attributes. When the task status is only a simple station movement or space switching, the robot controller determines that the robot is in an idle stroke stage without wafer handling. When the task status includes wafer approach, alignment, or pick-up and place operations, the robot controller determines that the robot has entered the operation stage involving wafer operation, thereby realizing intelligent differentiation of the operation scenario and providing a basis for differentiated speed control.

[0019] S103: If the robot is in the idle stroke stage, control the robot to run in the first speed mode and calculate the speed switching point. The speed switching point is the position point where the idle stroke stage ends and the operation stage begins.

[0020] In this embodiment, the first speed mode is the speed operation mode adapted to the idle travel phase, with the aim of improving the work efficiency of the robot arm's idle movement. The speed switching point is the critical position point of the robot arm in the work space, which is the physical boundary between the idle travel phase and the work phase, and also the trigger position for switching motion state and running speed.

[0021] In one embodiment of this application, the speed switching point calculation process includes: Obtain the control delay time of the robotic arm and the maximum braking deceleration allowed in the second speed mode; The theoretical braking distance is calculated based on the robot's current actual operating speed and maximum braking deceleration. The delay compensation distance is calculated based on the control delay time and the actual operating speed. The speed switching point is obtained by shifting the starting boundary position of the working phase towards the direction of the idle travel phase by the sum of the theoretical braking distance and the delay compensation distance.

[0022] In this embodiment, the control delay time may include: communication cycle delay (e.g., EtherCAT bus cycle of 1ms), servo driver internal processing delay (e.g., 0.5ms), motor electromagnetic response delay (e.g., 1ms), and hysteresis caused by mechanical transmission backlash (e.g., 2ms). The control delay time can be obtained through actual measurement and calibration, for example, 5ms to 15ms. The maximum braking deceleration depends on the peak braking torque of the drive motor and the rotational inertia of the robotic arm, and is usually provided by the equipment manufacturer and stored in the parameter table of the front-end module. For example, for a light-load wafer handling robot, the maximum braking deceleration can be set to 2000mm / s².

[0023] In this embodiment, the formula can be used. Calculate the theoretical braking distance, where This represents the current actual operating speed of the robotic arm during its idle stroke. S1 represents the maximum braking deceleration, and S1 is the theoretical braking distance required for the robot to come to a complete stop from its current speed; this can be achieved using the uniform displacement formula. Calculate the delay compensation distance, where t is the control delay time; the robot controller retrieves the pre-stored fixed critical coordinates of the starting boundary of the operation stage (starting boundary position), and shifts the coordinates to the direction of the idle travel by a total distance S=S1+S2, dynamically calibrating to obtain the precise speed switching point adapted to the current operating state.

[0024] For example, assuming the actual operating speed is 1500 mm / s, the maximum braking deceleration is 2000 mm / s², and the control delay time is 0.01 seconds, then the theoretical braking distance S1 = 1500² / (2 × 2000) = 562.5 mm, and the delay compensation distance S2 = 1500 × 0.01 = 15 mm, the sum of which is 577.5 mm. If the starting boundary position coordinate of the operation phase is X = 1000 mm, then the speed switching point calculated by the robot controller should be set at X = 422.5 mm. That is, when the robot reaches the 422.5 mm position, the robot controller immediately starts the speed switching process, begins actual deceleration after a 10 ms delay, and reaches the starting boundary of the operation phase at X = 1000 mm exactly when the deceleration distance of 562.5 mm ends.

[0025] In this embodiment, when the robot controller determines that the robot is in the idle travel phase, it outputs a control command for the first speed mode to the robot drive motor, controlling the robot to operate at a high speed and stably to adapt to the idle scenario, thereby improving the efficiency of the robot's idle movement. Simultaneously, it retrieves two pre-stored hardware parameters: the fixed control delay time of the equipment and the maximum safe braking deceleration of the motor. Combined with the real-time collected idle travel speed of the robot, it calculates the theoretical distance required for the robot to fully brake and the displacement deviation distance caused by its own signal delay. The two distances are superimposed as an offset, and the starting boundary of the work phase is offset forward to obtain a speed switching point adapted to the current operating state. This ensures that sufficient speed adjustment and braking space is reserved before the robot reaches the wafer work area, guaranteeing accurate completion of the speed switching action.

[0026] As can be seen from the above, this embodiment effectively eliminates the speed switching deviation caused by module control delay and differences in motor braking performance, solves the problem of poor adaptability of fixed switching points, and ensures that the robot arm has been fully switched to safe low-speed mode when entering the wafer operation area, thus avoiding wafer safety hazards caused by high-speed operation in the early stage of operation from the root. At the same time, the precise dynamic switching point avoids ineffective early speed reduction and maximizes the efficiency advantage of high-speed operation during idle stroke.

[0027] S104: When the robot arm is detected to have reached the speed switching point, the robot arm is switched from the idle travel stage to the working stage, and the running speed of the robot arm is switched from the first speed mode to the second speed mode through the target smooth curve; the target smooth curve refers to the smooth speed curve in which the jerk value of the robot arm changes continuously with time without abrupt changes during the speed change process.

[0028] In this embodiment, the target smooth curve is a speed-time change curve used to achieve speed transition. The target smooth curve is characterized by the jerk changing continuously with time without abrupt changes, which can ensure that the robot does not generate mechanical impact during speed adjustment. Here, the jerk is the first derivative of acceleration with respect to time, which is used to describe the rate of change of acceleration with time.

[0029] The second speed mode is a speed operation mode adapted to the operation stage. In the second speed mode, multiple independent sub-speeds are configured according to the subdivided operation scenarios. The overall operation speed is lower than that of the first speed mode in order to match the usage requirements of wafer precision operation.

[0030] In one embodiment of this application, the process of generating the target smooth curve includes: Obtain the current speed information of the robot arm from the encoder in real time, and determine the starting speed based on the current speed information; Determine the sub-speed in the second speed mode that corresponds to the first specific sub-stage of the operation after entering the operation phase, and use it as the target speed. Based on the initial velocity, target velocity, and preset jerk constraints, a target smooth curve is generated; the jerk constraints are used to ensure that the jerk value of the target smooth curve changes continuously over time without abrupt changes.

[0031] In this embodiment, the initial speed is obtained by differentially analyzing the position value fed back by the encoder from the robot controller. To improve accuracy, second-order differentiation can be used to obtain the instantaneous speed at the current moment. The target speed is the sub-speed corresponding to the first specific operation sub-stage (e.g., the approach to the wafer carrier stage) in the second speed mode, for example, 200 mm / s. The preset jerk constraints can typically include: the maximum jerk value Jmax (e.g., 50000 mm / s³), and jerk at both the start and end of the switching time being zero.

[0032] In this embodiment, as Figure 2 As shown, this embodiment can use a fifth-order polynomial velocity curve as the target smoothing curve. The target smoothing curve shows the process of velocity smoothly transitioning from the initial velocity Vs to the target velocity Vt, with continuous acceleration and no abrupt changes in jerk. Compared with traditional step velocity changes, this effectively eliminates mechanical shock and vibration. The steps for generating the target smoothing curve are as follows: Step 1: Obtain the starting speed and target speed. When the robot arm's real-time position reaches the speed switching point, immediately latch the current instantaneous speed value obtained from real-time encoder feedback and differential processing, denoted as the starting speed Vs. Simultaneously, obtain the sub-speed corresponding to the first specific operation sub-stage in the second speed mode, denoted as the target speed Vt. For example, Vs = 1500 mm / s, Vt = 250 mm / s.

[0033] Step 2: Determine the total speed switching time T based on the jerk constraints. To ensure continuous jerk and that its absolute value does not exceed the maximum allowable jerk Jmax of the mechanical system throughout the switching process, a reasonable total switching time T needs to be determined. When using a fifth-order polynomial speed curve, under the boundary conditions where both the initial and final accelerations are zero, and both the initial and final jerks are zero, the speed difference... The relationship between the total switching time T and the total switching duration T is given by the following formula: .

[0034] The derivation of this formula is based on the following: taking the third derivative of the fifth-order polynomial velocity curve reveals that the jerk curve is a second-order polynomial. Under the boundary condition that the initial and final jerks are both zero, the maximum value of the jerk occurs at the midpoint of the switching interval, and its value is related to... Proportional to, and with They are inversely proportional, and after simplification, the above relationship is obtained. Therefore, based on the preset maximum allowable jerk Jmax and the actual required speed difference... The theoretical shortest switching time can be calculated. .

[0035] In actual calculations, to avoid touching the jerk constraint boundary and to reserve a certain safety margin, T is taken to be slightly greater than 1. In this embodiment, =1500-250=1250mm / s, Jmax=50000mm / s³, then Seconds. To allow for a margin, this embodiment uses T = 1.5 seconds (greater than...). This ensures that the actual maximum jerk during the switching process is lower than the equipment's allowable upper limit, guaranteeing operational stability and safety.

[0036] Step 3: Set the boundary conditions corresponding to the jerk constraints. Use a fifth-order polynomial velocity curve. To describe the change of speed over time, where The time when the timer starts from the switching point. , , , , and The coefficients are to be determined. To ensure continuous and abrupt acceleration and to achieve shock-free start-stop, the robot controller sets the following six boundary conditions: At the start of the switch ( =0): = (Initial speed); acceleration (Initial acceleration is zero); accelerometer (Initial jerk is zero); At the end of the handover ( =T, where T is the preset total switching time): = (Target speed) acceleration

[0037] accelerometer ; The following can be obtained directly from the first three boundary conditions: , , Substituting the remaining three boundary conditions, we obtain the following about... , and A system of linear equations. Solving this system of equations yields the analytical expressions for the coefficients: ; ; .

[0038] Step 4: Substitute the values ​​to calculate the specific coefficients. Substitute Vs=1500, Vt=250, T=1.5 into the above expression: ; ; ; Therefore, the robot controller obtains the specific target smooth curve equation used for this speed switch: ,in Second.

[0039] In this embodiment, the robot controller continuously compares and monitors the real-time position of the robot fed back by the encoder with the pre-calculated speed switching point. When the real-time coordinates of the robot are detected to have reached the speed switching point, the robot controller first completes the logical switching of the robot's motion phase, switching the working state from the idle travel phase to the working phase. At the same time, it generates a target smooth curve with continuous acceleration without sudden changes. Based on the speed change trajectory of the target smooth curve, it controls the robot's running speed to smoothly and continuously transition from the high-speed first speed mode to the low-speed second speed mode, completely avoiding the speed change, mechanical vibration and soft impact problems caused by traditional stepped speed regulation and linear speed regulation, and ensuring the smoothness of motion during the speed regulation process.

[0040] In this embodiment, after generating the target smooth curve equation, the actual execution speed of the robotic arm is controlled to switch in the following way: With the speed switching start time as the timing zero point t=0, within each control cycle, the robot controller will record the current time... Substitute into the target smooth curve equation The instantaneous target velocity at that moment is calculated. The speed command is then sent to the servo driver via the bus. The servo driver performs closed-loop adjustment based on the speed command and the actual speed feedback from the encoder, driving the motor accordingly. It is in operation. With... The robot controller increments from 0 to the preset total switching time T, calculating and issuing speed commands cycle by cycle, so that the actual operating speed of the robot follows the target smooth curve in real time, continuously changing from the initial speed Vs to the target speed Vt. When the speed reaches ≥T, the speed switching process is completed, and the robot arm stabilizes at the target speed Vt. Simultaneously, the robot arm controller monitors the actual position fed back by the encoder in each control cycle, compares it with the position trajectory obtained by integrating the target smooth curve, and corrects any deviations through the position loop to ensure that the robot arm's actual motion trajectory matches the planned trajectory.

[0041] As can be seen from the above, this embodiment eliminates the problems of flexible mechanical shock and end effector jitter during the speed switching process, realizes the smooth speed switching of the robot arm without shock, greatly improves the motion stability during the switching stage, avoids the impact of vibration offset during speed change on subsequent wafer alignment and pick-and-place accuracy, and further ensures the stability and accuracy of wafer operation.

[0042] S105: If the robot is in the operation phase, the specific operation sub-phase of the robot in the operation phase is determined according to the real-time position information and the preset target position, and the robot is controlled to run at the sub-speed corresponding to the specific operation sub-phase in the second speed mode; wherein, the second speed mode includes the sub-speeds corresponding to each specific operation sub-phase, and all of them are lower than the running speed of the first speed mode; the real-time position information is obtained by the encoder set at the robot drive motor in real time.

[0043] In this embodiment, real-time position information is dynamic data reflecting the current spatial coordinates of each motion axis of the robot, accurately indicating the robot's real-time position within the equipment's workspace. The drive motor is the power component that provides power for all robot movements, including translation, extension, and rotation. The robot's motion posture and operating speed are directly controlled by the drive motor. The encoder is a position detection element integrated into the robot's drive motor, collecting signals such as the motor shaft's rotation angle and speed, converting the mechanical motion into electrical signals, and then converting these into the robot's position and speed data. The preset target position is the standard endpoint coordinate of the wafer operation, pre-stored in the front-end module. It serves as the reference coordinate for determining the robot's work progress and distinguishing specific work sub-stages. Specific work sub-stages are multi-level subdivisions of the work stage according to the work progress. Sub-speeds are dedicated operating speeds independently configured for each specific work sub-stage in the second speed mode; all sub-speeds are lower than the operating speed in the first speed mode.

[0044] In this embodiment, when the robot is in the operation phase, the preset target position of the wafer operation is retrieved locally. By comparing the distance difference range between the robot's real-time position information and the preset target position, the specific operation sub-phase that the robot is currently in is identified. Then, a dedicated sub-speed corresponding to the sub-phase is matched in the second speed mode, and a precise speed adjustment command is output to the drive motor, so that the robot runs at a low speed adapted to the current precision operation scenario, realizing fine-grained speed adjustment of the operation phase.

[0045] As can be seen from the above, this embodiment differentiates between the idle travel phase and the operational phase of the robotic arm and employs differentiated speed control logic to specifically adapt to the operational needs of different motion scenarios. The idle travel phase utilizes a higher first-speed mode, effectively shortening the travel time of the robotic arm during idle movement and improving the overall turnaround efficiency of the equipment. The operational phase employs a lower-speed second-speed mode, matched with the dedicated sub-speed for each specific operational sub-phase, reducing the risk of bumps and misalignments during precision wafer handling from a speed perspective. Simultaneously, this embodiment uses a smooth target curve with continuous acceleration at speed switching points to complete speed switching, eliminating the mechanical shock and end effector jitter problems caused by traditional speed changes. Therefore, this embodiment effectively balances the robotic arm's operating efficiency with wafer handling accuracy and safety, solving the shortcomings of traditional single-speed control in adapting to multiple operating conditions, and improving the overall stability and operational quality of wafer handling operations.

[0046] In one embodiment of this application, the specific operation sub-stages include a wafer carrier approach stage, an alignment slot stage, and a wafer pick-and-place stage. Controlling the robotic arm to operate at the sub-speed corresponding to the specific task sub-stage in the second speed mode includes: During the approach to the wafer carrier box, the robot arm is controlled to run at a first sub-velocity, which is the sub-velocity corresponding to the approach to the wafer carrier box stage. During the alignment slot stage, the robot arm is controlled to run at the second sub-speed, which is the sub-speed corresponding to the alignment slot stage. During the wafer pick-and-place stage, the robotic arm is controlled to run at a third sub-speed, which is the sub-speed corresponding to the wafer pick-and-place stage. Among them, the first sub-velocity, the second sub-velocity, and the third sub-velocity decrease in that order.

[0047] In this embodiment, as Figure 3 As shown, the approach stage to the wafer carrier refers to the process where the robot's end effector moves from the starting boundary of the operation stage (e.g., 200mm in front of the wafer carrier) to near the opening of the wafer carrier (e.g., 50mm from the slot entrance). During the approach stage, the robot has not yet entered the carrier, and the risk of collision is low. Therefore, the robot controller sets the first sub-speed to a relatively high value, such as 200mm / s to 300mm / s. The slot alignment stage refers to the process where the robot's end effector moves from the opening of the carrier to directly in front of the target slot (e.g., 5mm from the wafer edge). Therefore, the second sub-speed is reduced, for example, set to 50mm / s to 100mm / s, to ensure alignment accuracy. The wafer pick-and-place stage refers to the process where the robot's end effector carries the wafer into and out of the slot, completing the wafer retrieval or placement action. At this time, the gap between the wafer and the slot is extremely small (usually 2-5mm), and excessive speed can easily cause scratches. Therefore, the third sub-speed is set to the lowest value, for example, 10mm / s to 30mm / s.

[0048] In this embodiment, after the robotic arm enters the operation stage via the speed switching point, it first determines whether it has reached the starting point of the approach to the wafer carrier stage based on its real-time position. If so, a first sub-speed command is output to the servo driver, causing the robotic arm to move towards the carrier at a higher speed. When the real-time position enters the preset range of the alignment slot stage, the speed command is switched to a lower second sub-speed, and a vision alignment algorithm is activated for fine position correction. When the robotic arm's end effector reaches 5mm directly in front of the slot, the wafer pick-and-place stage begins, and the speed command is further reduced to a third sub-speed. The robotic arm is then controlled to extend into the slot at this extremely low speed to complete the wafer pick-up or placement action. Throughout the entire process, the real-time position is continuously compared with the boundary thresholds of each sub-stage, automatically triggering speed switching.

[0049] As can be seen from the above, this embodiment, by further subdividing the operation stages and setting progressively decreasing speeds according to the three sub-stages of approach, alignment, and pick-up / placement, not only ensures the overall smoothness and efficiency of the operation, but also provides the highest safety and accuracy in the most critical alignment and pick-up / placement stages, effectively preventing the risk of wafer collision and damage.

[0050] In one embodiment of this application, during the process of controlling the robotic arm to run at a sub-speed corresponding to a specific sub-stage of the operation in the second speed mode, the method further includes: Real-time acquisition of end-effector vibration data during the operation of the robotic arm; If the end vibration data is greater than the preset vibration threshold corresponding to the specific operation sub-stage, the velocity attenuation coefficient is calculated based on the end vibration data, and the sub-velocity is reduced by the velocity attenuation coefficient to obtain the compensated sub-velocity. Control the robotic arm to run at the compensated sub-velocity; Among them, the compensated sub-speed is greater than or equal to the preset minimum safe speed corresponding to the specific operation sub-stage.

[0051] In this embodiment, end-effector vibration data can be collected in real time by an accelerometer installed on the end effector of the robotic arm. The robotic arm controller can filter the signal collected by the accelerometer and extract the vibration amplitude. Preset vibration thresholds are set with different values ​​for different sub-stages: for example, in the approach stage to the wafer carrier, due to ample space, the threshold can be set to 0.5g; in the alignment stage, the requirements are higher, so the threshold is set to 0.2g; and in the wafer handling stage, the requirements are the highest, so the threshold is set to 0.05g (g is the acceleration due to gravity). The velocity attenuation coefficient can be calculated using a proportional control algorithm, for example, attenuation coefficient = preset vibration threshold / real-time vibration amplitude. The compensated sub-velocity = atomic velocity × velocity attenuation coefficient.

[0052] The preset minimum safe speed is designed to ensure that the robotic arm does not fail to complete the task within the specified time or exhibit crawling due to excessive deceleration. Its value is set according to a uniform ratio of the lower limit of the normal operating speed for the corresponding sub-stage. In this embodiment, the minimum safe speed is set to 50% of the lower limit of the normal speed for the corresponding sub-stage. For example, the minimum safe speed for the approach stage to the wafer carrier can be set to 100 mm / s (50% of the 200 mm / s lower limit), for the alignment stage to 25 mm / s (50% of the 50 mm / s lower limit), and for the wafer pick-and-place stage to 5 mm / s (50% of the 10 mm / s lower limit). In practical implementation, the robotic arm controller performs vibration detection and speed compensation calculations every control cycle (e.g., 2 ms).

[0053] In this embodiment, within any sub-stage of the operation phase, the current vibration amplitude is calculated in real time by reading data from the end effector accelerometer. The vibration amplitude is compared with a preset vibration threshold for the current sub-stage. If the vibration amplitude does not exceed the threshold, the operation continues at atomic velocity. Once the vibration amplitude exceeds the threshold, a deceleration compensation procedure is immediately initiated: first, a velocity attenuation coefficient is calculated, and then the atomic velocity is multiplied by this coefficient to obtain the compensated sub-velocity. Next, it is checked whether the compensated sub-velocity is lower than the preset minimum safe velocity corresponding to the sub-stage; if so, the compensated sub-velocity is forcibly set to the minimum safe velocity. Finally, the compensated speed command is sent to the servo driver, and the robot continues to operate at the decelerated speed. As the operating speed decreases, the vibration usually gradually weakens. In subsequent control cycles, if the vibration amplitude is detected to have fallen below the threshold, the speed can be gradually restored back to atomic velocity. The restoration process also uses a smooth curve to avoid re-exciting vibration.

[0054] As can be seen from the above, this embodiment, by introducing a closed-loop velocity compensation mechanism based on real-time feedback of end-effector vibration, can adaptively suppress abnormal vibrations caused by external disturbances or changes in internal dynamic characteristics, thereby improving the dynamic stability and positioning repeatability of the robot during precision operations. By setting a minimum safe speed limit, task failure or equipment malfunction due to overcompensation is avoided, ensuring the feasibility of the operation.

[0055] In one embodiment of this application, before obtaining the current task status information of the robotic arm, the method further includes: Obtain the wafer size information corresponding to the current handling task; Based on the wafer size information, the corresponding target speed parameter set is matched from the preset speed parameter library. The speed parameter library contains the mapping relationship between different wafer sizes and speed parameter sets. Based on the target speed parameter set, the operating speed of the first speed mode, the various sub-velocities of the second speed mode, and the jerk constraints used to generate the target smooth curve are determined.

[0056] In this embodiment, wafer size information can be obtained directly from the handling task instructions issued by the host computer, for example, the instructions may include the parameter "WaferSize=300mm"; alternatively, it can be automatically identified by the wafer mapping sensor at the end of the robot (by detecting the position of the wafer edge) and sent to the front-end module. The speed parameter library is a data table stored in the memory of the robot controller or front-end module. An example of its mapping relationship is: for a 200mm wafer, the operating speed of the first speed mode = 1800mm / s, the first sub-speed = 300mm / s, the second sub-speed = 100mm / s, the third sub-speed = 30mm / s, and the maximum jerk Jmax in the jerk constraint condition = 800000mm / s.3 For a 300mm wafer, the first speed mode operating speed is 1500mm / s, the first sub-speed is 250mm / s, the second sub-speed is 80mm / s, the third sub-speed is 20mm / s, and the maximum jerk Jmax is 500000mm / s. 3 For 450mm wafers, due to their greater mass and fragility, the speed parameters are correspondingly reduced. The first speed mode operating speed is 1000mm / s, the first sub-velocity is 150mm / s, the second sub-velocity is 50mm / s, the third sub-velocity is 10mm / s, and the maximum jerk Jmax is 30000mm / s. 3 In practical applications, this speed parameter library may include more mapping relationships, and this application embodiment does not limit this. Before starting a handling task, the mapping table is first looked up based on the wafer size information, and the corresponding complete set of speed parameters is loaded into the running memory as the speed control benchmark during this task.

[0057] In this embodiment, when the robot controller receives a new handling task instruction, it first extracts the wafer size information field. Through a lookup operation, it searches a preset speed parameter library for a record that perfectly matches the wafer size. If a matching record is found, the speed value of the first speed mode, the three sub-speed values ​​of the second speed mode, and the maximum jerk Jmax value from the record are written into the corresponding control parameter registers. If no matching record is found (e.g., a new wafer model is encountered), the most conservative parameter set (e.g., parameters for a 450mm wafer) can be used by default, and an alarm is sent to the host computer, waiting for the parameter library to be updated. After the parameters are loaded, the task status and position information are obtained according to the normal process, and the corresponding speed control flow is executed. These speed parameters will not be changed during the entire task execution until the next task carries different wafer size information, at which point a reloading will be triggered.

[0058] As can be seen from the above, this embodiment achieves automatic parameter adaptation for handling tasks of wafers of different specifications by establishing a mapping library of wafer size and speed parameters. On the one hand, higher operating speeds can be used for small-sized, lightly loaded wafers to fully utilize equipment performance and increase throughput; on the other hand, more conservative speed and jerk parameters are automatically adopted for large-sized, heavily loaded, or fragile wafers to ensure handling safety. The parameter library is flexible in configuration and can be easily adjusted according to different needs.

[0059] In one embodiment of this application, after controlling the robotic arm to operate according to the first speed mode, the method further includes: Obtain the real-time position of other moving parts located within the motion envelope of the robotic arm, including at least one of other robotic arms working in cooperation, a lifting mechanism of the support platform, or an equipment door; Based on the real-time position information of the robotic arm and the real-time positions of other moving parts, calculate the real-time safe distance between the robotic arm and other moving parts; If at least one real-time safe distance is less than the preset safe distance threshold, the first speed mode is interrupted, and an obstacle avoidance speed curve is generated based on the real-time safe distance and the motion state of other moving parts. The robot arm is controlled to run according to the obstacle avoidance speed curve, and when all real-time safe distances are restored to a level greater than or equal to the safe distance threshold, the robot arm is controlled to resume operation according to the first speed mode.

[0060] In this embodiment, the motion envelope space refers to the three-dimensional spatial region formed by extending a certain safety margin (e.g., 20mm) outward from the maximum contour of the end effector and the wafer it carries, within the range that all joints of the robot can reach. The real-time position of other moving parts can be obtained through encoders or position sensors installed on these parts themselves. The real-time safety distance can be calculated based on the shortest distance in three-dimensional space according to the geometric model of the robot and other moving parts. The safety distance threshold can be dynamically adjusted according to the relative motion speed. For example, when the robot speed is higher than 500mm / s, the threshold is set to 100mm; when the speed is lower than 100mm / s, the threshold is set to 30mm. Interrupting the first speed mode means that the robot controller immediately stops executing the original high-speed plan and instead executes the emergency obstacle avoidance plan. The obstacle avoidance speed curve can be a curve that decelerates to a stop at the maximum deceleration. When all real-time safety distances recover to above the threshold and remain above it for a certain period of time (e.g., 0.5 seconds), the speed is then restored to the planned speed in the first speed mode through a smoothing curve.

[0061] In this embodiment, during the high-speed movement of the robot arm in the idle travel phase, the current positions of all other moving parts are acquired. The robot arm controller calculates the Euclidean distance between the robot arm and each other moving part based on the robot arm's own real-time position and these external positions, obtaining a set of real-time safety distances. Each real-time safety distance is compared with a preset safety distance threshold. If all safety distances are greater than or equal to the threshold, the robot arm continues to operate at high speed according to the first speed mode. If any safety distance is found to be less than the threshold, the robot arm controller immediately triggers a safety response: first, it interrupts the speed planning of the currently executing first speed mode; second, it generates an obstacle avoidance speed curve based on the specific circumstances of the triggering event, which smoothly decelerates to zero at the maximum permissible deceleration; then, it sends the instruction of the obstacle avoidance speed curve to the servo driver, causing the robot arm to decelerate or stop. During deceleration or stopping, the robot arm controller continuously monitors the safety distance. When the safety distance expands again and exceeds the threshold by a certain margin, a smooth acceleration curve is generated to restore the robot arm from the current speed to the original planned speed of the first speed mode, allowing the robot arm to re-enter the high-speed operation state.

[0062] In this embodiment, to more accurately assess collision risk, the safe distance threshold is dynamically adjusted based on the relative motion direction between the robot and other moving parts. Specifically, within each control cycle, the robot controller adjusts the safe distance threshold based on the robot's current velocity vector. velocity vectors of other moving parts Calculate the relative velocity vector And obtain the unit vector along the line connecting the two. Then calculate the projection component of the relative velocity along the line connecting them. .like This indicates that the two objects are moving towards each other (relatively close), increasing the risk of collision. In this case, the safe distance threshold is multiplied by a coefficient greater than 1. (For example );like This indicates that the two objects are moving in the same direction or in opposite directions (relatively far apart), reducing the risk of collision. The safe distance threshold can be multiplied by a coefficient less than 1. (For example However, the distance must not be lower than the minimum safe distance allowed by the equipment (e.g., 20mm). If the baseline threshold remains unchanged, the safety distance threshold can be dynamically adjusted to adapt to the relative motion situation in real time, minimizing unnecessary speed interruptions while ensuring safety and improving the overall operating efficiency of the equipment.

[0063] As can be seen from the above, this embodiment achieves dynamic collision avoidance capability in environments with multiple moving parts. By monitoring and calculating the safe distance between the device and all surrounding moving parts in real time, the high-speed mode is immediately interrupted and the obstacle avoidance speed curve is executed once a risk is detected, effectively preventing high-speed collision accidents and ensuring the safety of the equipment and wafers. Once the danger is cleared, high-speed operation is automatically resumed, minimizing the impact of obstacle avoidance actions on overall handling efficiency.

[0064] Corresponding to the robotic arm speed control method in the above embodiments, Figure 4 This is a structural block diagram of a robot speed control device according to an embodiment of this application. For ease of explanation, only the parts relevant to the embodiment of this application are shown. References Figure 4 The robotic arm speed control device 20 includes: an information acquisition module 21, a work stage judgment module 22, a first speed control module 23, a mode switching module 24, and a second speed control module 25.

[0065] Among them, the information acquisition module 21 is used to acquire the current task status information of the robotic arm; The operation stage determination module 22 is used to determine the current movement stage of the robot arm based on the current task status information. The movement stage includes the idle stroke stage without wafer handling or the operation stage involving wafer operation. The first speed control module 23 is used to control the robot to run in the first speed mode when the robot is in the idle stroke stage, and to calculate the speed switching point, which is the position point where the idle stroke stage ends and the operation stage begins. The mode switching module 24 is used to switch the robot from the idle stroke stage to the working stage when the robot is detected to have reached the speed switching point, and to switch the robot's running speed from the first speed mode to the second speed mode through the target smooth curve; the target smooth curve refers to a smooth speed curve in which the jerk value changes continuously with time without abrupt changes during the speed change of the robot. The second speed control module 25 is used to determine the specific sub-stage of the operation when the robot is in the operation stage, based on the real-time position information and the preset target position, and to control the robot to run at the sub-speed corresponding to the specific sub-stage of the operation in the second speed mode; the real-time position information is obtained in real time by the encoder set at the robot drive motor. The second speed mode includes sub-speeds corresponding to each specific operation sub-stage, all of which are lower than the operating speed of the first speed mode.

[0066] In one embodiment of this application, the specific operation sub-stages include a wafer carrier approach stage, an alignment slot stage, and a wafer pick-and-place stage. The second speed control module 25 is specifically used for: During the approach to the wafer carrier box, the robot arm is controlled to run at a first sub-velocity, which is the sub-velocity corresponding to the approach to the wafer carrier box stage. During the alignment slot stage, the robot arm is controlled to run at the second sub-speed, which is the sub-speed corresponding to the alignment slot stage. During the wafer pick-and-place stage, the robotic arm is controlled to run at a third sub-speed, which is the sub-speed corresponding to the wafer pick-and-place stage. Among them, the first sub-velocity, the second sub-velocity, and the third sub-velocity decrease in that order.

[0067] In one embodiment of this application, the second speed control module 25 is further configured to: Real-time acquisition of end-effector vibration data during the operation of the robotic arm; If the end vibration data is greater than the preset vibration threshold corresponding to the specific operation sub-stage, the velocity attenuation coefficient is calculated based on the end vibration data, and the sub-velocity is reduced by the velocity attenuation coefficient to obtain the compensated sub-velocity. Control the robotic arm to run at the compensated sub-velocity; Among them, the compensated sub-speed is greater than or equal to the preset minimum safe speed corresponding to the specific operation sub-stage.

[0068] In one embodiment of this application, the first speed control module 23 is specifically used for: Obtain the control delay time of the robotic arm and the maximum braking deceleration allowed in the second speed mode; The theoretical braking distance is calculated based on the robot's current actual operating speed and maximum braking deceleration. The delay compensation distance is calculated based on the control delay time and the actual operating speed. The speed switching point is obtained by shifting the starting boundary position of the working phase towards the direction of the idle travel phase by the sum of the theoretical braking distance and the delay compensation distance.

[0069] In one embodiment of this application, the mode switching module 24 is specifically used for: Obtain the current speed information of the robot arm from the encoder in real time, and determine the starting speed based on the current speed information; Determine the sub-speed in the second speed mode that corresponds to the first specific sub-stage of the operation after entering the operation phase, and use it as the target speed. Based on the initial velocity, target velocity, and preset jerk constraints, a target smooth curve is generated; the jerk constraints are used to ensure that the jerk value of the target smooth curve changes continuously over time without abrupt changes.

[0070] In one embodiment of this application, the robot speed control device 20 further includes: a matching module, used for: Obtain the wafer size information corresponding to the current handling task; Based on the wafer size information, the corresponding target speed parameter set is matched from the preset speed parameter library. The speed parameter library contains the mapping relationship between different wafer sizes and speed parameter sets. Based on the target speed parameter set, the operating speed of the first speed mode, the various sub-velocities of the second speed mode, and the jerk constraints used to generate the target smooth curve are determined.

[0071] In one embodiment of this application, the robot speed control device 20 further includes: an obstacle avoidance module, used for: Obtain the real-time position of other moving parts located within the motion envelope of the robotic arm, including at least one of other robotic arms working in cooperation, a lifting mechanism of the support platform, or an equipment door; Based on the real-time position information of the robotic arm and the real-time positions of other moving parts, calculate the real-time safe distance between the robotic arm and other moving parts; If at least one real-time safe distance is less than the preset safe distance threshold, the first speed mode is interrupted, and an obstacle avoidance speed curve is generated based on the real-time safe distance and the motion state of other moving parts. The robot arm is controlled to run according to the obstacle avoidance speed curve, and when all real-time safe distances are restored to a level greater than or equal to the safe distance threshold, the robot arm is controlled to resume operation according to the first speed mode.

[0072] See Figure 5 , Figure 5 This is a schematic block diagram of a front-end module provided in one embodiment of this application. Figure 5 The front-end module 300 in this embodiment may include one or more processors 301, one or more input devices 302, one or more output devices 303, and one or more memories 304. The processors 301, input devices 302, output devices 303, and memories 304 communicate with each other via a communication bus 305. The memories 304 store computer programs, including program instructions. The processors 301 execute the program instructions stored in the memories 304. Specifically, the processors 301 are configured to invoke the program instructions to perform the functions of the modules in the above-described device embodiments, for example... Figure 4 The functions of the information acquisition module 21, the work stage judgment module 22, the first speed control module 23, the mode switching module 24, and the second speed control module 25 are shown.

[0073] It should be understood that, in the embodiments of this application, the processor 301 may be a central processing unit (CPU), or it may 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.

[0074] Input device 302 may include a touchpad, a fingerprint sensor (for collecting the user's fingerprint information and fingerprint orientation information), a microphone, etc., and output device 303 may include a display (LCD, etc.), a speaker, etc.

[0075] The memory 304 may include read-only memory and random access memory, and provides instructions and data to the processor 301. A portion of the memory 304 may also include non-volatile random access memory. For example, the memory 304 may also store information such as a speed parameter library.

[0076] In specific implementations, the processor 301, input device 302, and output device 303 described in the embodiments of this application can execute the implementation method described in the robot speed control method provided in the embodiments of this application, or they can execute the implementation method of the front-end module described in the embodiments of this application, which will not be repeated here.

[0077] In another embodiment of this application, a computer-readable storage medium is provided. This computer-readable storage medium stores a computer program, which includes program instructions. When executed by a processor, the program instructions implement all or part of the processes in the methods described above. Alternatively, the computer program can instruct related hardware to complete the process. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include any entity or device capable of carrying computer program code, a recording medium, a USB flash drive, a portable hard drive, a magnetic disk, an optical disk, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunication signal, and a software distribution medium, etc.

[0078] The computer-readable storage medium can be an internal storage unit of the front-end module in any of the foregoing embodiments, such as the hard disk or memory of the front-end module. The computer-readable storage medium can also be an external storage device of the front-end module, such as a plug-in hard disk, smart media card (SMC), secure digital card (SD), flash card, etc., equipped on the front-end module. Furthermore, the computer-readable storage medium can include both internal storage units and external storage devices of the front-end module. The computer-readable storage medium is used to store computer programs and other programs and data required by the front-end module. The computer-readable storage medium can also be used to temporarily store data that has been output or will be output.

[0079] 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, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. 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 implementations should not be considered beyond the scope of this application.

[0080] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the front-end modules and units described above can be referred to the corresponding processes in the aforementioned method embodiments, and will not be repeated here.

[0081] In the several embodiments provided in this application, it should be understood that the disclosed front-end modules and methods can be implemented in other ways. For example, the device 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 modules 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 an indirect coupling or communication connection through some interfaces or units, or it may be an electrical, mechanical, or other form of connection.

[0082] 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 the embodiments of this application, depending on actual needs.

[0083] Furthermore, the functional modules in the various embodiments of this application can be integrated into one processing unit, or each module can exist physically separately, or two or more modules can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0084] The above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A method for controlling the speed of a robotic arm, characterized in that, include: Obtain the current task status information of the robotic arm; Based on the current task status information, the current motion stage of the robot arm is determined. The motion stage includes an idle travel stage without wafer handling or an operation stage involving wafer manipulation. If the robotic arm is in the idle stroke phase, the robotic arm is controlled to run in the first speed mode, and the speed switching point is calculated. The speed switching point is the position point where the idle stroke phase ends and the operation phase begins. When the robot arm is detected to have reached the speed switching point, the robot arm is switched from the idle travel stage to the working stage, and the operating speed of the robot arm is switched from the first speed mode to the second speed mode through the target smooth curve; the target smooth curve refers to a smooth speed curve in which the jerk value of the robot arm changes continuously with time without abrupt changes during the speed change process. If the robotic arm is in the operation phase, the specific operation sub-phase in which the robotic arm is located is determined based on the real-time position information and the preset target position, and the robotic arm is controlled to run at the sub-speed corresponding to the specific operation sub-phase in the second speed mode; the real-time position information is obtained in real time by the encoder set at the drive motor of the robotic arm. The second speed mode includes sub-speeds corresponding to each of the specific operation sub-stages, and all of them are lower than the operating speed of the first speed mode. The speed switching point calculation process includes: Obtain the control delay time of the robotic arm and the maximum braking deceleration allowed by the second speed mode; The theoretical braking distance is calculated based on the current actual operating speed of the robotic arm and the maximum braking deceleration. The delay compensation distance is calculated based on the control delay time and the actual operating speed. The speed switching point is obtained by shifting the starting boundary position of the operation phase towards the direction of the idle travel phase by the sum of the theoretical braking distance and the delay compensation distance.

2. The robotic arm speed control method as described in claim 1, characterized in that, The process of generating the target smooth curve includes: The current speed information of the robot arm, which is fed back in real time by the encoder, is obtained, and the starting speed is determined based on the current speed information. Determine the sub-speed in the second speed mode that corresponds to the first specific sub-stage of the operation after entering the operation stage, and use it as the target speed; The target smooth curve is generated based on the initial velocity, the target velocity, and the preset jerk constraint; wherein the jerk constraint is used to ensure that the jerk value of the target smooth curve changes continuously over time without abrupt changes.

3. The robotic arm speed control method as described in claim 2, characterized in that, Before obtaining the current task status information of the robotic arm, the following steps are also included: Obtain the wafer size information corresponding to the current handling task; Based on the wafer size information, a corresponding target speed parameter set is matched from a preset speed parameter library, which contains the mapping relationship between different wafer sizes and speed parameter sets; Based on the target speed parameter set, the operating speed of the first speed mode, each sub-speed of the second speed mode, and the jerk constraint conditions for generating the target smooth curve are determined.

4. The robotic arm speed control method as described in claim 1, characterized in that, After controlling the robotic arm to operate in the first speed mode, the method further includes: The real-time positions of other moving parts located within the motion envelope of the robotic arm are obtained, and the other moving parts include at least one of other robotic arms working in cooperation, a lifting mechanism of the support platform, or an equipment door; Based on the real-time position information of the robotic arm and the real-time positions of the other moving parts, calculate the real-time safe distance between the robotic arm and the other moving parts; If at least one of the real-time safe distances is less than a preset safe distance threshold, the first speed mode is interrupted, and an obstacle avoidance speed curve is generated based on the real-time safe distance and the motion state of the other moving parts. The robotic arm is controlled to operate according to the obstacle avoidance speed curve, and when all the real-time safe distances are restored to a level greater than or equal to the safe distance threshold, the robotic arm is controlled to resume operation according to the first speed mode.

5. The robotic arm speed control method as described in claim 1, characterized in that, The specific operation sub-stages include the approach to the wafer carrier box stage, the alignment slot stage, and the wafer pick-and-place stage. The control of the robotic arm to operate at a sub-speed corresponding to the specific work sub-stage in the second speed mode includes: During the approach to the wafer carrier box phase, the robotic arm is controlled to run at a first sub-speed, which is the sub-speed corresponding to the approach to the wafer carrier box phase. During the alignment slot stage, the robotic arm is controlled to run at a second sub-speed, which is the sub-speed corresponding to the alignment slot stage. During the wafer pick-and-place phase, the robotic arm is controlled to run at a third sub-speed, which is the sub-speed corresponding to the wafer pick-and-place phase. The first sub-velocity, the second sub-velocity, and the third sub-velocity decrease sequentially.

6. The robotic arm speed control method as described in claim 1, characterized in that, The process of controlling the robotic arm to operate at the sub-speed corresponding to the specific work sub-stage in the second speed mode further includes: Real-time acquisition of end-effector vibration data during the operation of the robotic arm; If the end vibration data is greater than the preset vibration threshold corresponding to the specific operation sub-stage, then the velocity attenuation coefficient is calculated based on the end vibration data, and the velocity attenuation coefficient is used to reduce the sub-velocity to obtain the compensated sub-velocity. Control the robotic arm to run at the compensated sub-velocity; Wherein, the compensated sub-speed is greater than or equal to the preset minimum safe speed corresponding to the specific operation sub-stage.

7. A speed control device for a robotic arm, characterized in that, include: The information acquisition module is used to acquire the current task status information of the robotic arm; The operation stage determination module is used to determine the current movement stage of the robot arm based on the current task status information. The movement stage includes an idle stroke stage without wafer handling or an operation stage involving wafer operation. The first speed control module is used to control the robot to run in a first speed mode when the robot is in the idle stroke stage, and to calculate the speed switching point, which is the position point where the idle stroke stage ends and the operation stage begins. The mode switching module is used to switch the robot from the idle stroke stage to the working stage when the robot is detected to have reached the speed switching point, and to switch the operating speed of the robot from the first speed mode to the second speed mode through a target smooth curve; the target smooth curve refers to a smooth speed curve in which the jerk value of the robot changes continuously with time without abrupt changes during the speed change process. The second speed control module is used to determine the specific sub-stage of the operation when the robot is in the operation stage, based on real-time position information and a preset target position, and to control the robot to run at the sub-speed corresponding to the specific sub-stage of the operation in the second speed mode; the real-time position information is obtained in real time by an encoder set at the drive motor of the robot. The second speed mode includes sub-speeds corresponding to each of the specific operation sub-stages, and all of them are lower than the operating speed of the first speed mode. The first speed control module is specifically used for: Obtain the control delay time of the robotic arm and the maximum braking deceleration allowed by the second speed mode; The theoretical braking distance is calculated based on the current actual operating speed of the robotic arm and the maximum braking deceleration. The delay compensation distance is calculated based on the control delay time and the actual operating speed. The speed switching point is obtained by shifting the starting boundary position of the operation phase towards the direction of the idle travel phase by the sum of the theoretical braking distance and the delay compensation distance.

8. The robot speed control device as described in claim 7, characterized in that, The specific operation sub-stages include the approach to the wafer carrier box stage, the alignment slot stage, and the wafer pick-and-place stage. The second speed control module is specifically used for: During the approach to the wafer carrier box phase, the robotic arm is controlled to run at a first sub-speed, which is the sub-speed corresponding to the approach to the wafer carrier box phase. During the alignment slot stage, the robotic arm is controlled to run at a second sub-speed, which is the sub-speed corresponding to the alignment slot stage. During the wafer pick-and-place phase, the robotic arm is controlled to run at a third sub-speed, which is the sub-speed corresponding to the wafer pick-and-place phase. The first sub-velocity, the second sub-velocity, and the third sub-velocity decrease sequentially.

9. A front-end module, comprising a memory, a processor, and a computer program stored in the memory and running on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method as described in any one of claims 1 to 6.

Citation Information

Patent Citations

  • Advanced speed change method and device based on injection molding machine manipulator

    CN112277273A

  • Robot deceleration control method and device, robot assembly and storage medium

    CN114260900A