Semiconductor carrying equipment motion control method, device and equipment

By receiving path planning data and performing iterative value selection and weight calculation based on path control points and curve counts, a smooth and safe motion trajectory is generated, solving the trajectory smoothness and safety issues of OHT motion control and improving the production efficiency and wafer safety of semiconductor manufacturing.

CN121815987APending Publication Date: 2026-04-07MEETFUTURE TECH (SHANGHAI) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-12-26
Publication Date
2026-04-07

AI Technical Summary

Technical Problem

In the existing technology, the motion control methods of overhead transport vehicles (OHT) have shortcomings in terms of trajectory smoothness, safety, availability and controllability, which affect the production efficiency and wafer safety of semiconductor manufacturing.

Method used

By receiving path planning data, determining the influencing rules based on the number of path control points and the number of curves, performing iterative value selection and weight calculation, generating the target motion curve, ensuring that the trajectory points are located within the convex hull formed by the control points, avoiding abrupt curvature changes, and achieving smooth motion.

Benefits of technology

It improves the safety and stability of motion control in semiconductor handling equipment, meets the requirements of high-speed and high-precision motion, reduces the computational burden, and is suitable for real-time control of embedded systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121815987A_ABST
    Figure CN121815987A_ABST
Patent Text Reader

Abstract

The invention relates to a semiconductor carrying equipment motion control method and device, semiconductor carrying equipment motion control equipment, a computer readable storage medium and a computer program product. The method comprises the following steps: receiving path planning data for carrying equipment, determining an influence rule of a path control point on a to-be-generated motion curve, and executing an iterative valuing process in a preset valuing interval of curve generation progress control parameters of the to-be-generated motion curve to obtain a target motion curve of the carrying equipment; wherein the value of the curve generation progress control parameter is updated according to the curve characteristic change rate of the currently generated motion curve segment at the target track point, and the next iteration is carried out based on the updated curve generation progress control parameter to obtain a target motion curve of the carrying equipment; and motion control is conducted on the carrying equipment according to the target motion curve. By adopting the method, the stability and safety of motion control of the semiconductor carrying equipment can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of semiconductor fabrication technology, and in particular to a method, apparatus, and device for motion control of semiconductor handling equipment. Background Technology

[0002] With the rapid development of semiconductor manufacturing technology, automated material handling systems play a crucial role in modern wafer fabs. Among these, the Overhead Hoist Transport (OHT), as one of the core pieces of equipment for wafer handling, has motion control precision, stability, and real-time performance that directly impacts production efficiency and wafer safety. In the semiconductor manufacturing environment, OHTs need to complete wafer pick-up, placement, and transfer tasks at high speed and with high precision within complex track networks, which places high demands on the motion trajectory generation and control technology of OHTs.

[0003] In related technologies, motion control of OHT typically employs a method based on interpolation of preset path points. Specifically, the path planning system generates a set of discrete path control points for the OHT, and the control device generates a motion trajectory according to these control points through linear interpolation or simple curve fitting. These methods can achieve basic path tracking functions to a certain extent, but in practical applications, they suffer from shortcomings in trajectory smoothness, safety, usability, and controllability, thereby affecting the stability and positioning accuracy of OHT control. Summary of the Invention

[0004] Therefore, it is necessary to provide a motion control method, apparatus, and device for semiconductor handling equipment that can improve the safety and controllability of motion trajectory, in order to address the above-mentioned technical problems.

[0005] In a first aspect, this application provides a motion control method for a semiconductor handling device, the method comprising:

[0006] Receive path planning data for the handling equipment; the path planning data includes multiple discrete path control points;

[0007] Based on the number of path control points and the number of curves of the motion curve to be generated by the handling equipment, the influence rules of the path control points on the motion curve to be generated are determined.

[0008] Within a preset value range of the curve generation progress control parameter for the motion curve to be generated, an iterative value-taking process is performed to obtain the target motion curve of the conveying equipment; wherein, one iteration process includes:

[0009] Based on the influence rules and the current value of the curve generation progress control parameter of the motion curve to be generated, determine the target control point that has an influence on the motion curve to be generated at the current curve generation progress, and the influence weight value of the target control point on the motion curve to be generated.

[0010] Based on the influence weight value and the location information of the target control point, a weighted offset is performed to obtain the target trajectory point of the handling equipment generated on the current curve generation progress;

[0011] Determine the rate of change of the curve characteristics of the currently generated motion curve segment at the target trajectory point;

[0012] The value of the curve generation progress control parameter is updated according to the curve characteristic change rate, and the next iteration is entered based on the updated curve generation progress control parameter until the value of the curve generation progress control parameter traverses the preset value range.

[0013] All the generated target trajectory points are combined in the order of generation to obtain the target motion curve of the conveying device;

[0014] The motion control of the conveying equipment is performed based on the target motion curve.

[0015] In some embodiments, determining the influence rule of the path control points on the motion curve to be generated based on the number of path control points and the number of curves of the motion curve to be generated by the conveying equipment includes:

[0016] Based on the number of path control points and the number of curves, a node value sequence is generated; the node value sequence is used to define the preset value range.

[0017] The current curve generation progress control parameter is compared with each node value in the node value sequence to obtain the target node value range in which the current curve generation progress control parameter is located.

[0018] Based on the position of the target node value range in the node value sequence, determine the target control point that has an impact on the current curve generation progress;

[0019] For each target control point, the progress control parameters are generated based on the node value sequence and the current curve, and multiple rounds of recursive calculations are performed to obtain the influence weight value of the target control point.

[0020] In some embodiments, the number of rounds of the multi-round recursive calculation is the same as the number of curve iterations; in each round of calculation, the updated weight value of each target control point is obtained by weighting the weight values ​​of the current target control point and the next target control point in the previous round of calculation; wherein, the weight coefficient of the target control point represents the closeness of the current curve generation progress control parameter to the value range of the first parameter; the weight coefficient of the next target control point represents the distance of the current curve generation progress control parameter from the value range of the second parameter; the first parameter value range starts from the node value corresponding to the target control point; the second parameter value range ends from the node value corresponding to the next adjacent control point.

[0021] In some embodiments, generating a node value sequence based on the number of path control points and the number of curves includes:

[0022] Based on the number of path control points n and the number of curves p, a node value sequence of length n+p is determined; wherein, the first p consecutive values ​​in the node value sequence are the same first value, and the last p consecutive values ​​are the same second value.

[0023] In some embodiments, determining the target control point that affects the current curve generation progress based on the position of the target node value interval in the node value sequence includes:

[0024] Based on the position index k of the target node value interval in the node value sequence, select p consecutive path control points with an index range from kp to k as the target control points;

[0025] For each of the target control points, the influence weight value of the target control point is obtained by performing multiple rounds of recursive calculations based on the node value sequence and the current curve to generate progress control parameters, including:

[0026] In the initial calculation round, for the i-th of the p target control points, it is determined whether the current curve generation progress control parameter falls within the target interval formed by the i-th value and the (i+1)-th value in the node value sequence;

[0027] If the current curve generation progress control parameter falls within the target interval, the initial weight value of the target control point is set to one; if the current curve generation progress control parameter does not fall within the target interval, the initial weight value of the target control point is set to zero.

[0028] In some embodiments, determining the rate of change of curve features of the currently generated motion curve segment at the target trajectory point includes:

[0029] For each target control point, the first derivative weight value corresponding to the target control point is determined based on the node values ​​corresponding to the current target control point and the next target control point, as well as the weight coefficient; the first derivative weight value characterizes the degree of influence of the target control point on the change of the tangent direction of the motion curve to be generated.

[0030] The first coordinates of each target control point are weighted and summed according to the first derivative weight values ​​to obtain the tangent vector;

[0031] Based on the magnitude of the tangent vector, determine the curve characteristic rate of change of the motion curve to be generated at the second coordinate.

[0032] In some embodiments, the method further includes:

[0033] For each target control point, the second derivative weight value corresponding to the target control point is determined based on the node values ​​corresponding to the target control point and the next target control point, as well as the weight coefficient; the second derivative weight value characterizes the degree of influence of the target control point on the curvature change of the motion curve to be generated;

[0034] The second-order steering quantity is obtained by weighting and summing the first coordinates of each target control point according to the second-order derivative weight values.

[0035] The curvature of the motion curve to be generated at the target trajectory point is calculated based on the tangent vector and the second-order guide vector.

[0036] In some embodiments, updating the value of the curve generation progress control parameter according to the curve characteristic change rate, and proceeding to the next iteration based on the updated curve generation progress control parameter, until the value of the curve generation progress control parameter traverses the preset value range, includes:

[0037] The curve generation progress step is determined based on the preset expected space step size and the curve feature change rate; wherein, the preset expected space step size is negatively correlated with the angle of change of the start and end points of the current motion curve segment to be generated.

[0038] The current value of the curve generation progress control parameter is updated based on the curve generation progress step amount to obtain the updated value of the curve generation progress control parameter.

[0039] Secondly, this application also provides a motion control device for semiconductor handling equipment, the device comprising: a receiving module for receiving path planning data for the handling equipment; the path planning data including a plurality of discrete path control points;

[0040] The determination module is used to determine the influence rules of the path control points on the motion curve to be generated based on the number of path control points and the number of curves of the motion curve to be generated by the handling equipment.

[0041] An iteration module is used to perform an iterative value-taking process within a preset value range of the curve generation progress control parameter of the motion curve to be generated, to obtain the target motion curve of the handling equipment. Each iteration includes: determining, based on the influence rules and the current value of the curve generation progress control parameter of the motion curve to be generated, the target control points that influence the motion curve to be generated at the current curve generation progress, and the influence weight values ​​of the target control points on the motion curve to be generated; performing a weighted offset based on the position information of the target control points according to the influence weight values, to obtain the target trajectory points of the handling equipment generated at the current curve generation progress; determining the curve feature change rate of the currently generated motion curve segment at the target trajectory points; updating the value of the curve generation progress control parameter according to the curve feature change rate, and entering the next iteration based on the updated curve generation progress control parameter, until the value of the curve generation progress control parameter traverses the preset value range; and combining all the generated target trajectory points in the generation order to obtain the target motion curve of the handling equipment.

[0042] The control module is used to control the motion of the conveying equipment according to the target motion curve.

[0043] Thirdly, this application also provides a motion control device for semiconductor handling equipment, including a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the steps included in any of the aforementioned embodiments of the motion control method for semiconductor handling equipment.

[0044] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the steps included in any of the aforementioned embodiments of the motion control method for semiconductor handling equipment.

[0045] Fifthly, this application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps included in any of the aforementioned embodiments of the semiconductor handling device motion control method.

[0046] The aforementioned motion control method, apparatus, device, computer-readable storage medium, and computer program product for semiconductor handling equipment, by receiving path planning data containing multiple discrete path control points and dynamically determining influence rules based on the number of control points and the curve degree, achieves mathematical modeling and localization processing for the motion curve generation of the handling equipment. Weight calculation ensures that trajectory points always lie within the convex hull formed by the control points, constraining the motion path within a safe range. The introduction of the curve degree avoids abrupt curvature changes in the motion curve, ensuring smooth movement of the handling equipment. Furthermore, by performing adaptive iteration within the value range of the curve generation progress control parameters, calculating the current trajectory point based on the influence weights, and intelligently updating the progress parameters according to the curve characteristic change rate, the target trajectory points can be adaptively distributed in physical space, achieving smoother speed planning and precise tracking through the target motion curve. In summary, the embodiments of the present invention can improve the safety and stability of motion control for semiconductor logistics handling equipment. Attached Figure Description

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

[0048] Figure 1 This is a flowchart illustrating the motion control method for the semiconductor handling equipment in this embodiment.

[0049] Figure 2 This is a flowchart illustrating the motion control method for a semiconductor handling device in another embodiment;

[0050] Figure 3 This is a structural block diagram of the motion control device for the semiconductor handling equipment in the embodiment;

[0051] Figure 4 This is an internal structural diagram of the motion control device for the semiconductor handling equipment in the embodiment. Detailed Implementation

[0052] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0053] It should be noted that the terms "first," "second," etc., used in this application can be used to describe various elements, but these elements are not limited by these terms. These terms are only used to distinguish the first element from the second element. The terms "comprising" and "having," and any variations thereof, used in this application, are intended to cover non-exclusive inclusion. The term "multiple" used in this application refers to two or more. The term "and / or" used in this application refers to one of the embodiments, or any combination of multiple embodiments.

[0054] Before describing the embodiments of the present invention, the related technologies and their existing problems will be further explained:

[0055] In related technologies, the path planning system generates a set of discrete path control points for the OHT (Out-of-Touch) system and sends them to the OHT control equipment. The OHT control equipment typically generates a motion trajectory based on these control points using linear interpolation or simple curve fitting. Motion trajectory generation techniques include straight-line-circular arc stitching, polynomial fitting, and Bézier curves. These methods can achieve basic path tracking functions to a certain extent, but they have at least the following problems:

[0056] 1. Insufficient trajectory smoothness: The traditional straight-line-circular arc splicing method has abrupt curvature changes at the splicing point, which causes the OHT to have acceleration jumps when turning, which can easily cause the transported wafer to vibrate or even slip, affecting the safety and accuracy of the transport.

[0057] 2. Poor local controllability: When using the global curve fitting method, modifying a control point often causes the shape of the entire curve to change. It lacks local adjustment capabilities, makes path maintenance difficult, and limits the scalability of the plan.

[0058] 3. Low computational efficiency: Fitting high-order polynomials or complex curves requires a large number of floating-point operations. When generating high-density trajectory points in real time on embedded controllers (such as MCUs), the computational burden is heavy, making it difficult to meet the real-time requirements of high-speed motion control.

[0059] 4. Uneven distribution of trajectory points: The sampling method with fixed parameter step size is prone to causing the trajectory points to be too sparse in the curved section and too dense in the straight section, resulting in fluctuations in motion speed and affecting control stability and positioning accuracy.

[0060] 5. Insufficient path safety: It is difficult to strictly guarantee that the generated trajectory always stays within the safe range formed by control points, and there is a risk of interference with surrounding equipment or structures in complex path segments.

[0061] Therefore, there is a need for a method to efficiently generate smooth, locally controllable, uniformly sampled, and safe motion trajectories for semiconductor handling equipment in embedded systems, so as to meet the requirements of semiconductor handling equipment in terms of high speed, high precision, and high reliability.

[0062] The motion control method for semiconductor handling equipment provided in this application embodiment can be applied to an OHT vehicle-mounted controller. The OHT vehicle-mounted controller can be an on-board IPC (Industrial Computer) / SoC / MCU. The OHT vehicle-mounted controller is typically integrated inside the OHT vehicle, and its main architecture may include: a main control unit, such as an industrial computer (IPC), system-on-a-chip (SoC), or microcontroller (MCU), responsible for running motion control algorithms, path resolution, status management, and other functional modules; a communication module: supporting wireless communication (such as Wi-Fi) to receive path instructions and report status with the scheduling system; and supporting real-time data interaction with fieldbus (such as CAN, EtherCAT) and execution units such as servo drivers and motor encoders; a positioning and sensing module: integrating a laser positioning unit, inertial measurement unit (IMU), or vision sensor to acquire the vehicle's position and attitude information in the track network in real time; a storage unit: used to store path planning data, motion curve parameters, log information, and system programs; and a power management and interface unit: providing power to each module and providing necessary digital / analog input / output interfaces.

[0063] In an exemplary embodiment, such as Figure 1 As shown, a motion control method for semiconductor handling equipment is provided. This method is applied to the aforementioned OHT (On-Board Controller) controller, and the semiconductor logistics handling equipment is described as an OHT (On-Board Controller). The method includes the following steps:

[0064] Step 202: Receive path planning data for the handling equipment; the path planning data contains multiple discrete path control points.

[0065] The OHT vehicle controller receives path planning instructions from the host scheduling system via a communication interface (such as a wireless module). These instructions can define one or more paths, each consisting of multiple discrete path control points. Each control point can contain its two-dimensional coordinates (x, y) in the global coordinate system. It is understandable that each path can be represented by a varying number of control points; for example, straight sections have relatively sparse control points (a few), while curved paths have relatively dense control points.

[0066] For example, a complex transport path tens of meters long might be outlined by only a small number of control points, ranging from 5 to 8, defining its approximate direction and turning points. Understandably, this sparse data representation can reduce the amount of communication data and improve response efficiency, but it also creates obstacles to more precise and smooth control of the OHT's movement.

[0067] Step 204: Determine the influence rules of the path control points on the motion curve to be generated based on the number of path control points and the number of curves of the motion curve to be generated by the transport equipment.

[0068] The number of curves for the motion curve to be generated by the handling equipment can be issued by the aforementioned upper-level scheduling system, or it can be preset according to the requirements for the motion smoothness of the OHT. Specifically, the motion smoothness can be adapted to the type of the currently executed handling task. The handling task type can be determined based on the current configuration parameters of the OHT, the parameters of the semiconductor material being handled, etc. The number of curves, p, is a preset positive integer that determines the smoothness (continuity order) of the generated motion curve. For example, when p=4 (cubic curve), the generated curve will have continuous curvature, which means that when the OHT moves along this curve, its acceleration change is smooth, thereby avoiding vibration or cargo slippage caused by sudden curvature changes, which is more important for high-speed and high-precision handling.

[0069] In this embodiment of the invention, the influence rule provides a method for calculating the magnitude of the influence (i.e., the weight) of each path control point on the target trajectory point generated in subsequent steps. The influence rule aims to achieve "local influence" and "smooth transition," meaning that the final position of a point on the trajectory should not be determined by the average of all control points, but should be primarily determined by a small number (p) of control points closest to that point. Simultaneously, as the point moves along the curve, the transition between these neighboring control points should be smooth. Therefore, under the influence rule, control points "closer" to the current calculation point receive a larger influence weight value; conversely, they receive a smaller weight value, down to zero, thus ensuring that the final generated motion curve is smooth and locally controllable.

[0070] Specifically, the process of establishing the influencing rules may include: defining a sequence of node values, the length and specific values ​​of which are determined by the number of path control points n and the curve order p. This sequence of node values ​​serves two purposes: firstly, it defines the effective range of values ​​for the curve generation progress control parameter u, ensuring the precise correspondence between the start and end points of the path; secondly, it enables localized filtering, providing a method to automatically and uniquely filter out p control points from all n control points for any u value in the parameter domain, and assign specific influence weights to these control points, thereby ensuring the local controllability of the generated curve (e.g., modifying a path control point only affects the local part of the target motion curve) and the smoothness of the transition.

[0071] Step 206: Within the preset value range of the curve generation progress control parameter of the motion curve to be generated, perform an iterative value taking process to obtain the target motion curve of the handling equipment.

[0072] In order to generate a physically executable discrete trajectory point sequence from the aforementioned continuous mathematical model, this embodiment of the invention introduces a curve generation progress control parameter u. The curve generation progress control parameter is used to characterize the dimensionless generation progress of the curve to be generated from its starting point to its ending point; for example, it can be considered as a normalized progress from 0 to 1. The curve generation progress control parameter u monotonically changes within a preset value range (defined by the start and end values ​​of the node value sequence in the aforementioned steps, such as [0, np]).

[0073] Within this interval, an adaptive iterative value-taking process is performed. Unlike incremental value-taking with a fixed step size, in this embodiment of the invention, the increment of u is dynamically calculated based on the local geometric characteristics of the curve at the trajectory point generated in the previous iteration. This overcomes the defect that uniform sampling in the parameter domain may lead to uneven distribution of trajectory points in physical space (sparse at curves and dense at straight sections). A set of trajectory points with approximately uniform spacing is generated in physical space, laying the foundation for smooth motion control of OHT. Specifically, each iterative value-taking process can include the following logical closed loop: Based on the current u, a trajectory point is generated; the "extension rate" (i.e., the curve characteristic change rate) of the curve at that point is analyzed; based on this rate, the increment of u should be calculated to make the next trajectory point move the desired distance in physical space; u is updated, and the next iteration begins.

[0074] Specifically, such as Figure 2 As shown, an iterative process within the preset value range of the curve generation progress control parameter for the motion curve to be generated may include the following steps:

[0075] Step 2062: Based on the influence rules and the current values ​​of the curve generation progress control parameters of the motion curve to be generated, determine the target control points that have an influence on the current curve generation progress of the motion curve to be generated, and the influence weight values ​​of the target control points on the motion curve to be generated.

[0076] In this process, the current value of u (denoted as u_current) is input into the weight calculation rule determined in the preceding steps. This rule selects p target control points from all n control points based on the node value sequence, and calculates the influence weight value of each target control point recursively. The sum of all weights is 1, thereby ensuring that the generated target trajectory points lie within the convex combination of the aforementioned path control points.

[0077] Step 2064: Based on the position information of the target control point, perform weighted offset according to the influence weight value to obtain the target trajectory point of the handling equipment generated on the current curve generation progress.

[0078] The coordinates of each target control point are weighted and summed (coordinates × weight) to calculate the precise target trajectory point coordinates (x_target, y_target) corresponding to the current progress u_current.

[0079] Step 2066: Determine the rate of change of the curve characteristics of the currently generated motion curve segment at the target trajectory point.

[0080] The curve characteristic rate of change is used to quantify the instantaneous speed at which the target trajectory point moves in physical space when the parameter u changes slightly. It can be understood that a large curve characteristic rate of change indicates that the curve is gently extending at that point; a small curve characteristic rate of change indicates that the curve is curved and compact at that point.

[0081] Step 2068: Update the value of the curve generation progress control parameter according to the curve characteristic change rate, and proceed to the next iteration based on the updated curve generation progress control parameter until the value of the curve generation progress control parameter traverses the preset value range.

[0082] To achieve uniform sampling in physical space, the increment (step size) of u in each iteration should be determined by both the desired spatial movement distance and the movement rate at the current point. Specifically, a desired spatial step size L (e.g., 0.02 meters) can be preset. The step size Δu is directly proportional to this desired spatial step size L and inversely proportional to the rate of change of the curve characteristics at the current point. This ensures that in areas with a gentle curve (large rate of change), only a small increment of u is needed to achieve the desired spatial movement distance, avoiding over-dense sampling; while in areas with a curved curve (small rate of change), a relatively large increment of u is needed to achieve the same spatial distance, avoiding over-sparse sampling. After calculating Δu, the parameter is updated: u_next = u_current + Δu.

[0083] Step 2070: Combine all the generated target trajectory points in the order of generation to obtain the target motion curve of the conveying device.

[0084] When the iteration ends (i.e., u reaches the end of the interval), all the sequentially generated target trajectory points are combined to obtain a complete, high-density target motion curve with sampling points evenly distributed in physical space. This curve is an ideal instruction sequence for the underlying tracking controller to execute directly.

[0085] Step 208: Perform motion control on the conveying equipment according to the target motion curve.

[0086] The target motion curve is sent to the servo drive system of the material handling equipment (such as an OHT). The motion controller generates precise motor control commands (speed and steering) by comparing the position and direction deviations of the equipment positioning with the predetermined trajectory points on the curve in real time, driving the equipment to move smoothly and accurately along the generated high-quality path.

[0087] This invention, through the aforementioned steps, transforms a small number of sparse control points into high-quality motion trajectories. Based on recursive weight calculations parameterized by (n,p), it generates smooth curves with continuous curvature, avoiding abrupt acceleration changes at splicing points common in traditional methods. By using node value sequences and local weight rules, the local influence of control points is realized, and complex paths are defined with minimal control point data, resulting in high communication and storage efficiency. The recursive calculation and feedback-based adaptive iterative mechanism offer low computational complexity and stability, perfectly adapting to the computing power of MCUs such as STM32, meeting the requirements of high-speed real-time control. The weight calculation rules ensure that trajectory points always lie within the convex hull formed by the control points, thus strictly constraining the movement of the transport equipment within the safety corridor defined by the control points.

[0088] In some embodiments, determining the influence rule of the path control points on the motion curve to be generated based on the number of path control points and the number of curves of the motion curve to be generated by the conveying equipment includes:

[0089] Based on the number of path control points and the number of curves, a node value sequence is generated; the node value sequence is used to define the preset value range.

[0090] The current curve generation progress control parameter is compared with each node value in the node value sequence to obtain the target node value range in which the current curve generation progress control parameter is located.

[0091] Based on the position of the target node value range in the node value sequence, determine the target control point that has an impact on the current curve generation progress;

[0092] For each target control point, the progress control parameters are generated based on the node value sequence and the current curve, and multiple rounds of recursive calculations are performed to obtain the influence weight value of the target control point.

[0093] Among them, the number n of path control points and a preset curve degree p (for example, p = 4) are obtained. Based on these two parameters, a knot value sequence U with a length of n + p is generated. The knot value sequence is used to structurally divide the domain of definition of the progress control parameter u for the abstract curve. The parameter u is a normalized progress representation from the starting point to the ending point of the curve, and its value range (i.e., the parameter domain) is bounded by the first and last values of the knot value sequence. For example, u ∈ [U[p], U[n]]. Each knot value represents a segment boundary in the parameter domain, used to identify the start and end points of the influence range of different control points on the curve.

[0094] Optionally, the first p knot values are set to the same minimum value (for example, 0), and the last p knot values are set to the same maximum value (for example, n - p), thereby ensuring that the starting point and the ending point of the to-be-generated motion curve exactly correspond to the positions of the first and the last control points, and the curve has definite tangent directions at both ends, thus conforming to the starting and ending pose constraints of the OHT.

[0095] The continuous parameter domain is divided into multiple intervals through the knot value sequence, and each interval corresponds to the influence domain of a group of control points. Thus, when modifying a certain path control point, it only affects the curve segment near the knot value interval where the path control point is located, and does not cause the reconstruction of the entire motion curve, thereby realizing the local controllability of the motion curve and enhancing the flexibility of path adjustment and the system robustness.

[0096] In an embodiment of the present invention, in each iteration, the current curve generation progress control parameter u_current is compared with the values in the knot value sequence U to find the position index k that satisfies U[k] ≤ u_current < U[k + 1]. The interval [U[k], U[k + 1)) is the target knot value interval. The target knot value interval identifies the specific "paragraph" where the parameter u_current is located in the parameter domain, and its position index k determines which control points need to participate in the running trajectory calculation at the current curve generation progress, that is, the target knot value interval reflects which control points jointly affect the curve segment where the OHT is located in the current motion stage.

[0097] For each target control point, p rounds of recursive calculations are performed based on the knot value sequence U and the current progress parameter u_current, and finally the influence weight value of each control point on the current trajectory point is obtained. Among them, the recursive process is a recursive weight fusion mechanism. In the initial round (i.e., the first round of iterative values), for the i-th target control point, it is judged whether u_current falls within the sub-interval formed by the knot values U[i] and U[i + 1]: if so, the initial weight of this control point is set to 1, otherwise it is set to 0, thereby marking the original influence interval where u_current is located at the finest granularity of the parameter domain, providing a basis for subsequent weight smoothing fusion.

[0098] In each subsequent recursive round, the weight of each control point is updated using linear interpolation, based on its own weight and the weight of the next control point in the previous round. The interpolation coefficients depend on how close u_current is to the current node's value range. If u_current is closer to the start of the range, the current control point contributes more weight; if it is closer to the end, the next control point contributes more weight. This ensures a continuous and smooth transition of weight values ​​during parameter changes, avoiding jumps or jitters in the trajectory points. The sum of all weight values ​​is 1, ensuring that the generated trajectory point coordinates are a convex combination of the coordinates of each control point, thus guaranteeing that the curve lies within the convex hull formed by the control points.

[0099] Taking an order p=4, meaning the target motion curve has a curve degree of 3, as an example, the recursive process is explained as follows: First round (d=1): Determine which first-order interval u_current falls into. The initial weight of the corresponding control point is 1, and the rest are 0, thus determining the finest-grained interval where u_current resides. Second round (d=2): The weight of each control point is obtained by weighting itself and the weight of the next control point in the previous round. The weight coefficient is related to the relative position of u_current within the interval, thus achieving linear interpolation between adjacent intervals for a smooth transition. Third round (d=3): Based on the second round, interpolation is performed again to further smooth the weight distribution and obtain the influence weight of the target control point.

[0100] In this embodiment of the invention, through multiple rounds of recursive interpolation, the final weight values ​​change continuously between path control points, with the influence weight of path control points closer to u_current increasing. This ensures that the generated trajectory point positions are smooth and conform to physical intuition. Furthermore, the recursive process only involves linear operations between adjacent points, avoiding numerical instability issues that may arise from evaluating higher-order polynomials, making it suitable for iterative implementation in embedded environments. Finally, the sum of all weight values ​​is 1 and non-negative, meaning that the trajectory point always lies inside the convex hull formed by the target control points, ensuring that the motion path of the OHT is strictly constrained within a safe region.

[0101] For example, suppose there are 6 target control points, curve degree p=3, current u_current=2.3, falling within the node value interval [U[3],U[4]). After recursive calculation, the weights of control points P2, P3, P4, and P5 may be 0.05, 0.35, 0.45, and 0.15, respectively. This indicates that the current trajectory point is mainly determined by P3 and P4, and the weight distribution is smooth. It also conforms to the principle of local influence of control points on the curve, where "nearer points have higher influence weights and farther points have lower influence weights".

[0102] In some embodiments, the number of rounds of the multi-round recursive calculation is the same as the number of curve iterations; in each round of calculation, the updated weight value of each target control point is obtained by weighting the weight values ​​of the current target control point and the next target control point in the previous round of calculation; wherein, the weight coefficient of the target control point represents the closeness of the current curve generation progress control parameter to the value range of the first parameter; the weight coefficient of the next target control point represents the distance of the current curve generation progress control parameter from the value range of the second parameter; the first parameter value range starts from the node value corresponding to the target control point; the second parameter value range ends from the node value corresponding to the next adjacent control point.

[0103] The number of recursive rounds can be a preset curve degree p. It can be understood that the curve degree p determines the smoothness of the motion curve (for example, p=4 corresponds to a third-order continuous curve with smooth curvature), and each round of recursive calculation essentially improves the continuity of the weight function by one order. Therefore, having the number of recursive rounds equal to the curve degree ensures that the final generated weight function has the same smoothness characteristics as the target curve, thus supporting the generation of high-order continuous motion trajectories.

[0104] Specifically, in each round of recursive calculation, the weight update of each target control point depends on two sources: the weight value of the control point in the previous round of calculation, and the weight value of the next adjacent control point in the previous round of calculation. The weight coefficients used in the weight update process characterize the relative positional relationship between the current curve generation progress control parameter u_current and the value intervals of the two related parameters. The first weight coefficient characterizes the proximity of the current curve generation progress control parameter u_current to the first parameter value interval corresponding to the current target control point. This interval starts at the node value corresponding to the current control point. The closer u_current is to the start of this interval, the larger the first weight coefficient, meaning the more significant the contribution of the current control point to the trajectory points. Correspondingly, the second weight coefficient characterizes the distance between u_current and the second parameter value interval corresponding to the next control point. This interval ends at the node value corresponding to the next adjacent control point. The farther u_current is from the end of this interval, the larger the second weight coefficient, meaning the more significant the contribution of the next control point.

[0105] In the d-th round of recursion, the update formula for the influence weight value of the i-th target control point can be expressed as Formula 1:

[0106] Formula 1: Updated influence weight = First weight coefficient × Previous influence weight of the current control point + Second weight coefficient × Previous influence weight of the next control point;

[0107] In Formula 1, the sum of the first and second weighting coefficients is 1, and both are related to the relative position of u_current within the corresponding node value interval. The reason and advantage of this setting is that if u_current is closer to the starting point of the node value interval of the current control point, it indicates that the influence of the current control point should be stronger, thus assigning it a larger weighting coefficient to make it dominant in the weighting process. Conversely, if u_current is farther from the ending point of the node value interval of the next control point, it indicates that the influence of the next control point has not yet completely decayed, thus assigning it a corresponding weight for a smooth transition. This allows the weights to transfer continuously and smoothly between control points, avoiding abrupt changes in the trajectory point positions, while ensuring a natural transition of the curve during parameter changes.

[0108] Taking p=3 as an example, the stages of the three rounds of recursion are explained:

[0109] In the first round: based on the node value range that u_current falls into, the initial weight of the corresponding control point is set to 1, and the rest are set to 0. This is equivalent to marking the "original belonging range" of u_current in the parameter domain, that is, determining which control point's "influence domain" u_current initially belonged to, providing a starting point for subsequent fusion.

[0110] In the second round, the weight of each control point is a weighted mixture of its own weight and the weights of its neighboring control points from the first round. Since the mixing coefficient is continuously related to the position of u_current, a smooth transition between adjacent intervals is achieved, i.e., a linear interpolation is performed on the weights.

[0111] The third round: Based on the second round, a weighted mixture is performed again to further smooth the weight distribution, and finally obtain weight values ​​that meet the requirements of third-order continuity, which corresponds to the generation of a smooth trajectory curve.

[0112] This invention embodiment sets the number of recursive rounds to be consistent with the number of curves, and performs smooth fusion of adjacent weights based on the relative position of u_current and node value intervals in each round. This achieves the gradual refinement and natural transition of the influence of control points during the motion curve generation process, ensuring both the high-order continuity of the trajectory and the stability of the motion, while also taking into account the computational efficiency and numerical stability in the embedded environment.

[0113] In some embodiments, generating a node value sequence based on the number of path control points and the number of curves includes:

[0114] Based on the number of path control points n and the number of curves p, a node value sequence of length n+p is determined; wherein, the first p consecutive values ​​in the node value sequence are the same first value, and the last p consecutive values ​​are the same second value.

[0115] The construction of the node value sequence U can follow these rules: the first p consecutive node values ​​are set to the same first value. For example, this first value can be set to 0, i.e., U[0] = U[1] = … = U[p-1] = 0. The last p consecutive node values ​​are set to the same second value. For example, this second value can be set to np, i.e., U[n-1] = U[n] = … = U[n+p-1] = np. Correspondingly, the node values ​​in the middle part are usually arranged in an arithmetic sequence or other monotonically increasing sequence, for example, U[i] = i - p, where the range of i is p ≤ i ≤ n.

[0116] It is understandable that the first and last node values ​​of the node value sequence U define the effective range of values ​​for the curve generation progress control parameter u (which can be denoted as uLen), i.e., the starting point U[0] and the ending point U[ulen-1], uLen = n+p. This interval is the parameter domain, and u monotonically increases from the starting point U[p] to the ending point U[n-1], corresponding to the movement curve moving from the starting point to the ending point. By setting the first p node values ​​to the same minimum value, it can be ensured that the starting point of the movement curve precisely corresponds to the position of the first path control point. Similarly, by setting the last p node values ​​to the same maximum value, it can be ensured that the ending point of the curve precisely corresponds to the position of the last path control point, thus giving the curve a clear geometric position at both ends, which facilitates smooth connection with the preceding and following movement segments.

[0117] The node value sequence divides the continuous parameter domain into multiple sub-intervals, each sub-interval corresponding to a set of control points' "influence domains". During the recursive weight calculation process, based on the node value interval into which the current u value falls, it is determined which control points are in an active state, thereby achieving local controllability of the motion curve.

[0118] For example: Suppose the received path contains 6 control points (n=6), and the preset curve order p=4, then the length of the generated node value sequence U is n+p=10. According to the above rules, the sequence can be set as follows:

[0119] U = [0, 0, 0, 0, 1, 2, 3, 3, 3, 3];

[0120] The first four node values ​​(p=4) are all 0; the last four node values ​​are all 3 (i.e., np=4); and the middle node values ​​are an arithmetic sequence of 1, 2. This sequence clearly defines the parameter domain u ∈ [0, 3], and ensures that the curve's starting point corresponds to the first control point and the ending point corresponds to the last control point, while also supporting subsequent local recursive weight calculations based on node intervals.

[0121] The embodiments of the present invention achieve a clear division of the parameter domain and precise positioning of the start and end points of the curve through the above-described node value sequence construction process, providing a structured mathematical basis for subsequent recursive weight calculation based on local control point sets. This enhances the flexible response capability of adjusting the motion path of semiconductor handling equipment and the execution efficiency in embedded environments while ensuring the smoothness and accuracy of the motion curve.

[0122] In some embodiments, determining target control points that affect the current curve generation progress based on the position of the target node value interval in the node value sequence includes:

[0123] Based on the position index k of the target node value interval in the node value sequence, select p consecutive path control points with an index range from kp to k as target control points;

[0124] For each target control point, progress control parameters are generated based on the node value sequence and the current curve, and multiple rounds of recursive calculations are performed to obtain the influence weight values ​​of the target control points, including:

[0125] In the initial calculation round, for the i-th of the p target control points, determine whether the current curve generation progress control parameter falls within the target interval formed by the i-th value and the (i+1)-th value in the node value sequence;

[0126] If the current curve generation progress control parameter falls within the target interval, set the initial weight value of the target control point to one; if the current curve generation progress control parameter does not fall within the target interval, set the initial weight value of the target control point to zero.

[0127] In each iteration, the current curve generation progress control parameter u_current is compared with the node value sequence U to determine its target node value interval [U[k], U[k+1]), where k is the index value satisfying U[k] ≤ u_current < U[k+1]. Based on this index k, continuous path control points from index kp to k (a total of p points) are automatically selected as the target control points under the current curve generation progress. At the parameter value u_current, only some control points have an actual impact, while the influence weight of the remaining control points is zero. Specifically, the node value sequence U divides the parameter domain into multiple intervals, each interval corresponding to a set of control points' "influence domains". For a given u_current, its interval [U[k], U[k+1]) is only associated with p consecutive control points, whose index range is from kp to k. This ensures that when calculating the current trajectory point, only locally related control points need to be considered, thus significantly reducing computational complexity and improving real-time performance.

[0128] Furthermore, the influence weight values ​​corresponding to each target control point obtained through multiple rounds of recursive calculation can be as follows:

[0129] Initial round settings: In the initial calculation round (i.e., the first round of recursion), for the i-th of the p target control points, determine whether the current curve generation progress control parameter u_current falls within the target interval formed by the i-th value U[i] and the (i+1)-th value U[i+1] in the node value sequence. If u_current falls within the target interval, set the initial weight value of the corresponding target control point to 1; otherwise, set its initial weight value to 0.

[0130] Recursive Update: Based on the initial weights mentioned above, multiple rounds of recursive calculations are performed to gradually smooth and merge the weights, ultimately obtaining the actual influence weight values ​​of each target control point on the current trajectory point. For example: Assume the node value sequence U = [0,0,0,0,1,2,3,3,3,3], p=4. If the current u_current=2.3, it falls into the interval [U[5]=2, U[6]=3), i.e., k=5. According to the rules, the index range of the target control point is from kp=1 to k=5, i.e., control points P2, P3, P4, and P5 are selected as target control points. In the initial round, the initial weight is 1 only when u_current falls into the node interval corresponding to a certain control point. Assuming u_current belongs to the interval corresponding to P3, the initial weight is [0,0,1,0]. After subsequent recursive smoothing, the final weight may be [0.05,0.35,0.45,0.15], thereby achieving the local smooth transition characteristic.

[0131] The embodiments of the present invention achieve efficient localized calculation and smooth weight fusion in the curve generation process through the above-mentioned target control point selection and initial weight setting mechanism based on node value sequence position index. While ensuring trajectory geometric safety and motion stability, it significantly improves the real-time motion control capability of embedded systems under limited computing power.

[0132] In some embodiments, determining the rate of change of curve features of the currently generated motion curve segment at the target trajectory point includes:

[0133] For each target control point, the first derivative weight value of the target control point is determined based on the node value and weight coefficient corresponding to the current target control point and the next target control point, respectively. The first derivative weight value characterizes the degree of influence of the target control point on the change of the tangent direction of the motion curve to be generated.

[0134] The tangent vector is obtained by weighting and summing the first coordinates of each target control point according to the first derivative weight values.

[0135] Based on the magnitude of the tangent vector, determine the curve characteristic rate of change of the motion curve to be generated at the second coordinate.

[0136] In order to ensure that the generated target trajectory points maintain an adaptive distribution in physical space and thus ensure the smooth operation of the handling equipment, an adaptive step size mechanism is introduced in this embodiment of the invention. Specifically, in the process of generating the motion curve, in addition to determining the position coordinates of the target trajectory point, the geometric change rate of the curve at that point is further obtained, and the sampling density is dynamically adjusted according to the geometric change rate of the curve to optimize the distribution of trajectory points.

[0137] While calculating the influence weight values ​​of each target control point, their first derivative weight values ​​are calculated in parallel. The first derivative weight values ​​are also obtained recursively. For the i-th target control point, the first derivative weight value at parameter u can be calculated using the recursive relationship represented by the following formula 2:

[0138] Formula 2: N'_i,d(u) = d / (U[i+d] - U[i]) * N_i,d-1(u) + d / (U[i+d+1] -U[i+1]) * N_i+1,d-1(u);

[0139] Where U[i] is the i-th value in the node value sequence; d is the current recursion order (corresponding to the curve order p); N_i,d-1(u) is the weight value of the i-th control point in the previous recursion.

[0140] As can be seen from Formula 2, the weight value of the first derivative is formed by the weighted combination of the weight values ​​of the current control point and its next adjacent control point in the lower order. The weight coefficient is inversely proportional to the length of the node interval, thus reflecting the contribution intensity of each control point to the change of the curve tangent.

[0141] Based on the first derivative weight value calculated using Formula 2, the coordinates of each target control point can be weighted and summed according to Formulas 3 and 4 to obtain the tangent vector at the target trajectory point:

[0142] Formula 3: dx = i∑ ( x_i * N'_i,d(u) );

[0143] Formula 4: dy = i∑ ( y_i * N'_i,d(u) );

[0144] Where (x_i, y_i) are the coordinates of the i-th target control point, and (dx, dy) are the tangent vectors.

[0145] The characteristic rate of change of the curve is defined as the magnitude of the tangent vector, which can be calculated according to Formula 5 as follows:

[0146] Formula 5: V = sqrt( dx² + dy² );

[0147] As shown in Formula 5, the curve characteristic change rate represents the rate of change of the arc length of the trajectory generated on the curve generation progress parameter u in two-dimensional space when the curve generation progress parameter u changes by a unit. Specifically, if the value of V is large, it indicates that the curve is relatively flat at that point, and a small increment of parameter u will cause a significant movement of the trajectory point position; if the value of V is small, it indicates that the curve is relatively curved at that point, and a large increment of parameter u will only cause a small change in the trajectory point position. Finally, adaptive step size control is performed based on the curve characteristic change rate, including: preset a desired spatial step size L (e.g., 0.02 meters), representing the desired actual distance between adjacent trajectory points to be close to this value. In each iteration, the increment of parameter u is dynamically calculated according to Formula 6 based on the curve characteristic change rate V at the current trajectory point:

[0148] Formula 6: Δu = L / V;

[0149] As shown in Equation 6, in the flat section of the curve (where V is large), Δu automatically decreases to avoid over-sampling in the parameter domain; in the curved section of the curve (where V is small), Δu automatically increases to avoid over-sampling in the physical space. This allows for an approximately adaptive distribution in the physical space with the fewest possible trajectory points, while ensuring accurate trajectory shape reproduction. This significantly reduces data processing volume, improves system real-time performance, and guarantees velocity continuity during motion.

[0150] For example, suppose that in a certain iteration, the tangent vector is obtained as (dx, dy) = (0.8, 0.6), then the curve characteristic rate of change V = sqrt(0.8² + 0.6²) = 1.0. If the preset desired spatial step size L = 0.02 meters, then the parameter increment Δu = 0.02 / 1.0 = 0.02. In the next iteration, if the curve enters a curved section and the tangent vector magnitude drops to V = 0.5, then Δu is automatically adjusted to 0.04, thus maintaining a roughly uniform physical step size.

[0151] This invention provides key geometric perception capabilities for adaptive step size control by calculating the first derivative weight value based on node values ​​and recursive weights, and then obtaining the tangent vector magnitude as the curve feature change rate. This enables efficient, uniform, and smooth generation of trajectory points, significantly improving the execution efficiency and motion quality of semiconductor handling equipment under complex paths.

[0152] In some embodiments, the method further includes:

[0153] For each target control point, the second derivative weight value corresponding to the target control point is determined based on the node value and weight coefficient corresponding to the target control point and the next target control point, respectively. The second derivative weight value characterizes the degree of influence of the target control point on the curvature of the motion curve to be generated.

[0154] The second-order steering quantity is obtained by weighting and summing the first coordinates of each target control point according to the weight values ​​of the second derivative.

[0155] The curvature of the motion curve to be generated at the target trajectory point is calculated based on the tangent vector and the second-order guide vector.

[0156] In particular, considering that curvature affects the stability and safety of the handling equipment when turning, curvature information at the target trajectory points can be obtained during the motion curve generation process to further evaluate the smoothness and safety of the trajectory. Specifically, the curvature at each point can be determined based on the second derivative weight value corresponding to each target control point.

[0157] Specifically, for the i-th target control point, the second derivative weight value at parameter u can be calculated using the recursive relationship represented by Equation 7:

[0158] Formula 7: N''_i,d(u) = d / (U[i+d] - U[i]) * N'_i,d-1(u) + d / (U[i+d+1]- U[i+1]) * N'_i+1,d-1(u);

[0159] Where: U[i] is the i-th value in the node value sequence; d is the current recursion order (corresponding to the curve order p); N'_i,d-1(u) is the first derivative weight value of the i-th control point in the previous recursion. The above recursive relationship shows that the second derivative weight value is formed by a weighted combination of the first derivative weight values ​​of the current control point and its next adjacent control point at the next lower order. The weight coefficient is also inversely proportional to the node interval length, thus reflecting the contribution intensity of each control point to the curve bending change.

[0160] Based on the second derivative weight values, the coordinates of each target control point can be weighted and summed according to Formulas 8 and 9 to obtain the second-order steering quantity at the target trajectory point:

[0161] Formula 8: ddx = i∑ ( x_i * N''_i,d(u) );

[0162] Formula 9: ddy = i∑ ( y_i * N''_i,d(u) );

[0163] Where (x_i, y_i) are the coordinates of the i-th target control point, and (ddx, ddy) are the second-order steering variables at the i-th target control point.

[0164] Based on obtaining the tangent vector (dx, dy) and the second-order guiding quantity (ddx, ddy), the curvature at the target trajectory point is further calculated according to Formula 10 as follows:

[0165] Formula 10: Curvature K = ( dx * ddy - dy * ddx ) / ( ( dx 2 + dy 2 ) (3 / 2) );

[0166] Wherein, curvature K represents the degree of curvature of the curve at that point. Specifically, if K = 0, it means that the curve is a straight line segment at that point and has no curvature; if K > 0, it means that the curve bends to the right; if K < 0, it means that the curve bends to the left. It can be understood that the larger the absolute value of K, the more severe the curvature.

[0167] Optionally, after obtaining the curvature of the motion curve to be generated at the target trajectory point, the operating speed of the conveying equipment can be dynamically adjusted according to the curvature magnitude. The speed can be appropriately reduced in curved sections to ensure stability, and appropriately increased in straight sections to improve efficiency. Based on information about continuous curvature changes, acceleration planning can be further optimized to avoid vibrations or impacts caused by sudden curvature changes, thus improving the smoothness of equipment operation. Optionally, curvature can also serve as an evaluation indicator for path safety. If the curvature of a certain path segment exceeds the equipment's safety threshold, the system can issue an early warning or adjust the path. Optionally, curvature information can be combined with the curve characteristic change rate to form a multi-dimensional geometric perception capability, providing richer input for control strategies such as adaptive step size and adaptive speed.

[0168] This invention calculates the second-order derivative weight value based on node values ​​and recursive weights, then obtains the second-order guiding quantity and combines it with the tangent vector to calculate curvature, thereby achieving accurate perception of the curvature of the motion trajectory. This provides key geometric information for speed planning, safety control, etc., and significantly improves the operational stability, safety, and motion quality of semiconductor handling equipment under complex paths.

[0169] In some embodiments, the value of the curve generation progress control parameter is updated according to the curve characteristic change rate, and the next iteration is performed based on the updated curve generation progress control parameter until the value of the curve generation progress control parameter traverses a preset value range, including:

[0170] The curve generation progress step is determined based on the preset expected space step size and the curve characteristic change rate; wherein, the preset expected space step size is negatively correlated with the angle of change of the start and end points of the current motion curve segment to be generated.

[0171] The current value of the curve generation progress control parameter is updated based on the curve generation progress step, resulting in the updated value of the curve generation progress control parameter.

[0172] Specifically, the increment of the curve generation progress control parameter u can be dynamically adjusted according to the rate of change of the curve characteristics at the current trajectory point, thereby keeping the actual spatial distance between adjacent trajectory points relatively constant.

[0173] Specifically, a desired spatial step size L can be preset, which represents the expected actual physical distance between adjacent trajectory points. The value of L can be related to the geometric characteristics of the current motion curve segment to be generated: when the angle of change of direction between the start and end points of the curve segment is large (i.e., the curve is more curved), the value of L can be appropriately reduced to increase the sampling density and better capture the curve shape; when the angle of change of direction is small (i.e., the curve is relatively straight), the value of L can be appropriately increased to reduce the sampling density and improve computational efficiency. This negative correlation enables the sampling strategy to be adaptively adjusted according to the geometric characteristics of different curve segments, optimizing the use of computational resources while ensuring accuracy.

[0174] In each iteration, based on the curve feature change rate V at the current trajectory point and the preset expected spatial step size L, the curve generation progress step Δu for this iteration is calculated according to Formula 11: Formula 10: Δu = L / V;

[0175] Here, Δu represents how many units need to be advanced in the parameter domain so that the next trajectory point is approximately L meters away from the current trajectory point in physical space. When the curve is relatively straight (V is large), a smaller Δu can achieve a spatial movement of L meters; when the curve is relatively curved (V is small), a larger Δu is required to achieve the same spatial movement distance.

[0176] After calculating Δu, the progress control parameters can be generated by updating the curve according to Formula 12:

[0177] Formula 12: u_next = u_current + Δu;

[0178] Where u_current is the progress parameter value of the current iteration. The updated u_next is used as the input for the next iteration, and the process of generating trajectory points, calculating the curve feature change rate, and updating parameters is repeated until u_next reaches or exceeds the upper limit value defined by the node value sequence, thus completing the traversal of the entire preset value range.

[0179] By employing the aforementioned adaptive step size update mechanism, and through dynamic adjustment based on V, the generated trajectory points can maintain an approximately adaptive distribution in the two-dimensional physical space, providing an ideal input sequence for subsequent uniform or smooth variable speed control. The number of sampling points is automatically reduced in straight sections and appropriately increased in curved sections, accurately describing the curve shape with the fewest possible trajectory points, significantly reducing data processing and storage requirements. For example, assuming a preset desired spatial step size L = 0.02 meters, and the curve characteristic change rate V = 1.5 measured in a certain iteration, then the step size Δu = 0.02 / 1.5 ≈ 0.0133 for this iteration. If V decreases to 0.6 at the next trajectory point, the step size is automatically adjusted to Δu = 0.02 / 0.6 ≈ 0.0333. Through this adaptive adjustment, a smaller step size is used in the flat section of the curve (V=1.5) and a larger step size is used in the curved section of the curve (V=0.6), so that the actual distance between adjacent trajectory points is kept at about 0.02 meters, thus achieving uniform sampling in physical space.

[0180] The embodiments of the present invention achieve intelligent sampling and adaptive distribution of motion trajectory points through an adaptive step size update mechanism based on the curve feature change rate and the desired spatial step size. This not only significantly improves the accuracy and efficiency of trajectory generation, but also provides high-quality basic path data for the smooth and precise motion control of semiconductor handling equipment, enhancing the adaptability and reliability of the entire motion control in complex industrial environments.

[0181] In yet another embodiment of the present invention, the overall process of motion control for semiconductor handling equipment is described below:

[0182] Before generating the actual motion curve, the following data structures can be pre-created: Path line structured linked list (BSplines): used to store the received path planning data. Interpolation point structured linked list (Interpolations): used to store the continuous trajectory point sequence generated according to this method (i.e., all target trajectory points on the target motion curve).

[0183] The OHT receives route planning data from the scheduling system via a wireless module. This data contains a complete definition of a route, as shown in Table 1, with the most crucial elements being multiple discrete route control points and their coordinate sequences.

[0184] Table 1. Example of Path Planning Data Structure

[0185] Fields illustrate Path number Globally unique identifier Path allowed speed The maximum permissible driving speed ratio for this route segment Number of path control points The number of control points, denoted as n. Path control point array The coordinate sequence of the control points, each point being (x, y). Starting point angle Tangent direction at the starting point of the path End angle Tangent direction at the end of the path

[0186] The controller parses the data, extracting the number of path control points *n* and the preset curvature *p* of the motion curve to be generated. In this embodiment, a B-spline curve construction rule can be used as the mathematical model for generating the motion curve. The characteristics of this rule are: a curve is defined by a set of control points and a parameter *p* (a positive integer) as the "order"; the position of each point on the curve is determined by a recursive weighted average of a finite number of nearby control points; and the curve itself has a continuous (p-1)th order derivative. For example, when the curve order *p* = 4, the B-spline curve has a third order; therefore, using a cubic B-spline construction rule ensures that the generated curve has a continuous third order derivative (i.e., continuous curvature change), meeting the requirements for high-speed and stable operation of the OHT.

[0187] Then, based on n and p, a set of mathematical rules is determined to calculate the influence weight of each path control point on the position of any point on the curve during the curve generation process. This set of rules is constructed based on the aforementioned curve construction rules (such as B-spline rules) and specifically includes:

[0188] 1. Generate a node value sequence: Based on n and p, generate a node value sequence U[ ] of length n+p. The construction rule of this sequence is: the first p node values ​​are all 0, the next p node values ​​are all n-p+2, and the values ​​of the intermediate nodes start from 1 and increase by integers. The preset value range of the curve generation progress control parameter u is defined as [U[p], U[n]], where u is the normalized progress parameter from the starting point to the ending point of the path.

[0189] 2. Based on the node value sequence, the following rule is established: For a given current progress u_current, find its node interval [U[k], U[k+1]), then the p consecutive control points with indices from kp to k are the target control points that affect the current position. For these p target control points, through multiple rounds (round number equals p), the contribution weight of each point to the current position is determined. The recursive process is essentially a step-by-step fusion of weighted offsets: In the initial round, only the control point corresponding to the base interval where u_current is located has a weight of 1; in each subsequent round, the weight of each point is linearly weighted and updated according to its own weight and the weight of the next point in the previous round, based on the relative position of u_current in the corresponding node interval, finally obtaining a set of smooth weight values ​​that sum to 1. This recursive algorithm (such as the De Boor algorithm) is an efficient numerical implementation of the selected curve construction rule.

[0190] The above rules ensure that the curve has local controllability (modifying a control point only affects the local curve), and that the weight changes are continuous and smooth, supporting the generation of high-order continuous motion curves. Furthermore, all influencing weights are non-negative and sum to 1, ensuring that the generated trajectory points are located within the convex hull formed by the control points, thus satisfying safety constraints.

[0191] Finally, to generate discrete target trajectory points from the continuous model to form the target motion trajectory of the transport equipment, iteration is performed within the preset value interval [U[p], U[n]] of u. Each iteration generates a target trajectory point based on the current u value, and intelligently updates the u value according to the geometric characteristics at that point, until u traverses the entire interval. A single iteration process includes:

[0192] The current curve generation progress control parameter value u_current is input into the influence rule determined in the previous steps. This rule automatically selects p target control points, and the influence weight value of each point is recursively calculated. Based on the influence weight values, the position coordinates of the target control points are weighted and summed (i.e., weighted offset): x_target = Σ (weight_i * x_i), y_target = Σ (weight_i * y_i). The calculation result (x_target, y_target) is the target trajectory point of the transport equipment generated on the current curve generation progress. During the recursive calculation of the influence weights, the first derivative weights can be calculated simultaneously, thus obtaining the tangent vector (dx, dy) at the current target trajectory point. The curve characteristic rate of change V is defined as the magnitude of this tangent vector, expressed as V = sqrt(dx*dx + dy*dy). The V value reflects the actual arc length change rate caused by a unit change in parameter u. Furthermore, during the recursive calculation of influence weights, the curve generation progress control parameters are intelligently updated: a desired spatial step size L (e.g., 0.02 meters) is preset, representing the desired interval between adjacent trajectory points in physical space. The parameter increment (curve generation progress step) for this iteration is calculated based on the curve characteristic change rate V: Δu = L / V. This step embodies an adaptive mechanism: where the curve is flat (V is large), Δu automatically decreases to prevent over-sampling; where the curve is curved (V is small), Δu automatically increases to prevent over-sampling. The value of the curve generation progress control parameter is updated: u_next = u_current + Δu.

[0193] Finally, the generated target trajectory points and their attributes (such as direction and curvature) are stored in the Interpolations linked list. The updated curve generation progress control parameter u_next is used as the new current value, and the above steps are repeated until the value of u reaches or exceeds the end point U[n] of the preset value interval, thus completing the iteration.

[0194] In this embodiment of the invention, when the iteration process corresponding to a path planning data is completed, all target trajectory points in the Interpolations linked list are combined in the generation order to obtain a complete, high-density target motion curve. Based on this curve and the real-time pose of the OHT, the motion control module generates motor control commands to drive the OHT to move precisely and smoothly along the curve. This embodiment of the invention, by implementing the above method in an embedded controller, transforms a small number of sparse path control points into high-quality motion trajectories, effectively solving problems such as uneven trajectory, local uncontrollability, low computational efficiency, uneven sampling, and insufficient security in the background technology, significantly improving the handling efficiency and operational reliability of the OHT in semiconductor production lines.

[0195] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages in other steps. It is understood that the steps in different embodiments can be freely combined as needed, and all non-contradictory solutions formed by such combinations are within the scope of protection of this application.

[0196] Based on the same inventive concept, this application also provides a semiconductor handling equipment motion control device for implementing the above-described semiconductor handling equipment motion control method. The solution provided by this device is similar to the solution described in the above-described method. Therefore, the specific limitations in the one or more embodiments of the semiconductor handling equipment motion control device provided below can be found in the limitations of the semiconductor handling equipment motion control method described above, and will not be repeated here.

[0197] In an exemplary embodiment, such as Figure 3 As shown, a motion control device 300 for semiconductor handling equipment is provided, comprising:

[0198] The receiving module 302 is used to receive path planning data for the handling equipment; the path planning data includes multiple discrete path control points;

[0199] The determination module 304 is used to determine the influence rules of the path control points on the motion curve to be generated based on the number of path control points and the number of curves of the motion curve to be generated by the handling equipment.

[0200] The iteration module 306 is used to perform an iterative value-taking process within a preset value range of the curve generation progress control parameters of the motion curve to be generated, to obtain the target motion curve of the handling equipment. Each iteration includes: determining, based on the influence rules and the current value of the curve generation progress control parameters of the motion curve to be generated, the target control points that influence the motion curve to be generated at the current curve generation progress, and the influence weight values ​​of the target control points on the motion curve to be generated; performing a weighted offset based on the position information of the target control points according to the influence weight values, to obtain the target trajectory points of the handling equipment generated at the current curve generation progress; determining the curve characteristic change rate of the currently generated motion curve segment at the target trajectory points; updating the value of the curve generation progress control parameters according to the curve characteristic change rate, and entering the next iteration based on the updated curve generation progress control parameters, until the value of the curve generation progress control parameters traverses the preset value range; and combining all generated target trajectory points in the generation order to obtain the target motion curve of the handling equipment.

[0201] The control module 308 is used to control the motion of the handling equipment according to the target motion curve.

[0202] Each module in the aforementioned motion control device for semiconductor handling equipment can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in the processor of the motion control device in hardware form or independent of it, or stored in the memory of the motion control device in software form, so that the processor can call and execute the operations corresponding to each module.

[0203] In an exemplary embodiment, a motion control device for a semiconductor handling equipment is provided. This motion control device can be a terminal, and its internal structure diagram can be as follows: Figure 4As shown, the motion control device for semiconductor handling equipment includes a processor, memory, input / output interface, communication interface, display unit, and input device. The processor, memory, and input / output interface are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interface. The processor provides computing and control capabilities. The memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage medium. The input / output interface is used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, Near Field Communication (NFC), or other technologies. When the computer program is executed by the processor, it implements a semiconductor handling equipment logistics control method. The display unit of the motion control device forms a visually visible image and can be a display screen, projection device, or virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the motion control device for the semiconductor handling equipment can be a touch layer covering the display screen, or a button, trackball, or touchpad set on the housing of the motion control device for the semiconductor handling equipment, or an external keyboard, touchpad, or mouse, etc.

[0204] Those skilled in the art will understand that Figure 4 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the motion control device of the semiconductor handling equipment to which the present application is applied. The specific motion control device of the semiconductor handling equipment may include more or fewer components than shown in the figure, or combine certain components, or have different component arrangements.

[0205] In an exemplary embodiment, a motion control device for a semiconductor handling equipment is provided, including a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the steps included in any of the aforementioned embodiments of the motion control method for a semiconductor handling equipment.

[0206] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, it implements the steps included in any of the aforementioned embodiments of the motion control method for semiconductor handling equipment.

[0207] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps included in any of the aforementioned embodiments of the semiconductor handling device motion control method.

[0208] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data must comply with relevant regulations.

[0209] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, artificial intelligence (AI) processors, etc., and are not limited to these.

[0210] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.

[0211] The embodiments described above are merely examples of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.

Claims

1. A motion control method for semiconductor handling equipment, characterized in that, The method includes: Receive path planning data for the handling equipment; the path planning data includes multiple discrete path control points; Based on the number of path control points and the number of curves of the motion curve to be generated by the handling equipment, the influence rules of the path control points on the motion curve to be generated are determined. Within a preset value range of the curve generation progress control parameter for the motion curve to be generated, an iterative value-taking process is performed to obtain the target motion curve of the conveying equipment; wherein, one iteration process includes: Based on the influence rules and the current value of the curve generation progress control parameter of the motion curve to be generated, determine the target control point that has an influence on the motion curve to be generated at the current curve generation progress, and the influence weight value of the target control point on the motion curve to be generated. Based on the influence weight value and the location information of the target control point, a weighted offset is performed to obtain the target trajectory point of the handling equipment generated on the current curve generation progress; Determine the rate of change of the curve characteristics of the currently generated motion curve segment at the target trajectory point; The value of the curve generation progress control parameter is updated according to the curve characteristic change rate, and the next iteration is entered based on the updated curve generation progress control parameter until the value of the curve generation progress control parameter traverses the preset value range. All the generated target trajectory points are combined in the order of generation to obtain the target motion curve of the conveying device; The motion control of the conveying equipment is performed based on the target motion curve.

2. The method according to claim 1, characterized in that, The step of determining the influence rules of the path control points on the motion curve to be generated based on the number of path control points and the number of curves of the motion curve to be generated by the conveying equipment includes: Based on the number of path control points and the number of curves, a node value sequence is generated; the node value sequence is used to define the preset value range. The current curve generation progress control parameter is compared with each node value in the node value sequence to obtain the target node value range in which the current curve generation progress control parameter is located. Based on the position of the target node value range in the node value sequence, determine the target control point that has an impact on the current curve generation progress; For each target control point, the progress control parameters are generated based on the node value sequence and the current curve, and multiple rounds of recursive calculations are performed to obtain the influence weight value of the target control point.

3. The method according to claim 2, characterized in that, The number of rounds of the multi-round recursive calculation is the same as the number of curve iterations. In each round of calculation, the updated weight value of each target control point is obtained by weighting the current target control point and the next target control point in the previous round of calculation. The weight coefficient of the target control point represents the closeness of the current curve generation progress control parameter to the value range of the first parameter. The weight coefficient of the next target control point represents the distance of the current curve generation progress control parameter from the value range of the second parameter. The first parameter value range starts from the node value corresponding to the target control point. The second parameter value range ends from the node value corresponding to the next adjacent control point.

4. The method according to claim 2, characterized in that, The generation of a node value sequence based on the number of path control points and the number of curves includes: Based on the number of path control points n and the number of curves p, a node value sequence of length n+p is determined; wherein, the first p+1 consecutive values ​​in the node value sequence are the same first value, and the last p consecutive values ​​are the same second value.

5. The method according to claim 4, characterized in that, The step of determining the target control point that affects the current curve generation progress based on the position of the target node value interval in the node value sequence includes: Based on the position index k of the target node value interval in the node value sequence, select p consecutive path control points with an index range from kp to k as the target control points; For each of the target control points, the influence weight value of the target control point is obtained by performing multiple rounds of recursive calculations based on the node value sequence and the current curve to generate progress control parameters, including: In the initial calculation round, for the i-th of the p target control points, it is determined whether the current curve generation progress control parameter falls within the target interval formed by the i-th value and the (i+1)-th value in the node value sequence; If the current curve generation progress control parameter falls within the target interval, the initial weight value of the target control point is set to one; if the current curve generation progress control parameter does not fall within the target interval, the initial weight value of the target control point is set to zero.

6. The method according to claim 3, characterized in that, Determining the rate of change of curve features of the currently generated motion curve segment at the target trajectory point includes: For each target control point, the first derivative weight value corresponding to the target control point is determined based on the node values ​​corresponding to the current target control point and the next target control point, as well as the weight coefficient; the first derivative weight value characterizes the degree of influence of the target control point on the change of the tangent direction of the motion curve to be generated. The first coordinates of each target control point are weighted and summed according to the first derivative weight values ​​to obtain the tangent vector; Based on the magnitude of the tangent vector, determine the curve characteristic rate of change of the motion curve to be generated at the second coordinate.

7. The method according to claim 6, characterized in that, The method further includes: For each target control point, the second derivative weight value corresponding to the target control point is determined based on the node values ​​corresponding to the target control point and the next target control point, as well as the weight coefficient; the second derivative weight value characterizes the degree of influence of the target control point on the curvature change of the motion curve to be generated; The second-order steering quantity is obtained by weighting and summing the first coordinates of each target control point according to the second-order derivative weight values. The curvature of the motion curve to be generated at the target trajectory point is calculated based on the tangent vector and the second-order guide vector.

8. The method according to claim 1, characterized in that, The step of updating the value of the curve generation progress control parameter based on the curve characteristic change rate, and proceeding to the next iteration based on the updated curve generation progress control parameter, until the value of the curve generation progress control parameter traverses the preset value range, includes: The curve generation progress step is determined based on the preset expected space step size and the curve feature change rate; wherein, the preset expected space step size is negatively correlated with the angle of change of the start and end points of the current motion curve segment to be generated. The current value of the curve generation progress control parameter is updated based on the curve generation progress step amount to obtain the updated value of the curve generation progress control parameter.

9. A motion control device for semiconductor handling equipment, characterized in that, The device includes: A receiving module is used to receive path planning data for the handling equipment; the path planning data includes multiple discrete path control points; The determination module is used to determine the influence rules of the path control points on the motion curve to be generated based on the number of path control points and the number of curves of the motion curve to be generated by the conveying equipment. An iteration module is used to perform an iterative value-taking process within a preset value range of the curve generation progress control parameter of the motion curve to be generated, to obtain the target motion curve of the handling equipment. Each iteration includes: determining, based on the influence rules and the current value of the curve generation progress control parameter of the motion curve to be generated, the target control points that influence the motion curve to be generated at the current curve generation progress, and the influence weight values ​​of the target control points on the motion curve to be generated; performing a weighted offset based on the position information of the target control points according to the influence weight values, to obtain the target trajectory points of the handling equipment generated at the current curve generation progress; determining the curve feature change rate of the currently generated motion curve segment at the target trajectory points; updating the value of the curve generation progress control parameter according to the curve feature change rate, and entering the next iteration based on the updated curve generation progress control parameter, until the value of the curve generation progress control parameter traverses the preset value range; and combining all the generated target trajectory points in the generation order to obtain the target motion curve of the handling equipment. The control module is used to control the motion of the conveying equipment according to the target motion curve.

10. A motion control device for semiconductor handling equipment, comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 8.