Positioning method and device of semiconductor carrying equipment, computer equipment, readable storage medium and program product
By combining the motion characteristics of the handling equipment with external sensor data, and using weighted fusion and Kalman filtering optimization, the problems of insufficient accuracy and stability in OHT positioning technology are solved, achieving high-precision, continuous and robust positioning results.
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
In existing semiconductor manufacturing, overhead transport (OHT) positioning technology is difficult to achieve high precision, continuity and robustness. Traditional barcode positioning methods are low in precision and high in cost, while single external absolute positioning sensors are easily interfered with in complex environments, resulting in unstable positioning.
By combining the motion characteristics and kinematic model of the handling equipment, high-frequency mileage data is obtained through dead reckoning and then weighted and fused with low-frequency but accurate external sensor positioning data. Kalman filtering is used to optimize the positioning results, and the weights are dynamically adjusted to overcome their respective shortcomings.
It achieves high-precision, continuous, and robust positioning output, and can stably track the instantaneous state of the device in complex environments, thus improving the anti-interference capability and accuracy of positioning.
Smart Images

Figure CN121815989A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of semiconductor fabrication technology, and in particular to a positioning method, apparatus, computer equipment, readable storage medium, and computer program product for semiconductor handling equipment. Background Technology
[0002] With the rapid development of semiconductor manufacturing automation and logistics technologies, unprecedented demands have been placed on the positioning accuracy, real-time performance, and operational stability of material handling equipment. As the core of the Automated Material Handling System (AMHS) in wafer fabs, overhead gantry cranes (OHTs) and other handling equipment require millimeter-level precision in point-to-point docking and continuous, smooth trajectory tracking. To meet this requirement, various positioning technologies have been introduced and applied in this field.
[0003] Traditional OHT positioning solutions commonly employ a trigger-based positioning method based on discrete physical markers (such as barcodes or RFID tags). This method involves laying numerous barcodes at intervals along the running track and using the OHT's onboard scanner to read the barcode information to obtain its approximate position. The system controls the OHT's operation and stopping based on preset speed and position commands at different barcode locations. Furthermore, to improve positioning continuity, solutions using a single external absolute positioning sensor (such as a LiDAR-reflector system) have emerged in the industry, aiming to provide global coordinates.
[0004] However, the aforementioned traditional positioning methods all have significant limitations and cannot meet the demands of high-end manufacturing for continuous, high-precision, and highly robust positioning. Therefore, how to effectively integrate the advantages of positioning sources with different characteristics, overcome their respective shortcomings, and achieve a reliable positioning method that can guarantee global absolute accuracy while providing high-frequency continuous output has become a pressing technical challenge in this field. Summary of the Invention
[0005] Therefore, it is necessary to provide a positioning method, apparatus, computer equipment, readable storage medium, and computer program product for semiconductor handling equipment that can improve positioning accuracy in response to the above-mentioned technical problems.
[0006] In a first aspect, this application provides a positioning method for a semiconductor handling device that can improve the positioning accuracy of the handling device, comprising:
[0007] Acquire the motion characteristics of the handling equipment during the current positioning cycle;
[0008] Based on the motion characteristics of the current positioning cycle and the kinematic model of the handling equipment, calculate the mileage data of the handling equipment in the current positioning cycle;
[0009] Acquire the sensing and positioning data output by the preset external sensors for the conveying equipment;
[0010] Based on the motion characteristics, determine the predicted change in the sensing and positioning data within the current positioning cycle;
[0011] The actual change in the sensor positioning data within the current positioning period is obtained, and the reliability of the sensor positioning data is determined based on the comparison between the actual change and the predicted change.
[0012] If the credibility meets the preset conditions, the current position of the handling equipment is predicted based on the historical positioning information of the handling equipment in the historical positioning period and the mileage data of the current positioning period, so as to obtain the predicted positioning information.
[0013] The current positioning information of the handling equipment is obtained by weighted fusion of the sensor positioning data and the predicted positioning information.
[0014] In some embodiments, the motion characteristics include the real-time speed and angular velocity of the conveying equipment during operation; the predicted change includes the maximum position change and the maximum angle change of the sensing positioning data; the update frequency of the sensing positioning data is lower than the update frequency of the mileage data;
[0015] The step of determining the predicted change in the sensing positioning data within the current positioning period based on the motion characteristics includes:
[0016] The maximum position change and the maximum angle change of the sensor positioning data are calculated based on the real-time speed and angular velocity of the conveying equipment and the update cycle of the sensor positioning data.
[0017] The step of obtaining the actual change in the sensor positioning data within the current positioning period, and determining the reliability of the sensor positioning data based on a comparison between the actual change and the predicted change, includes:
[0018] The sensor positioning data of the current positioning cycle is compared with the sensor positioning data of the previous positioning cycle and the historical positioning information of the previous positioning cycle to obtain the position change and angle change of the sensor positioning data.
[0019] The reliability of the sensing positioning data is obtained by comparing the position change with the allowable position change and the angle change with the maximum angle change.
[0020] In some embodiments, the weighted fusion of the sensor positioning data and the predicted positioning information to obtain the current positioning information of the handling equipment includes:
[0021] The predicted positioning information and the state prediction covariance of the handling equipment in the current positioning period are calculated based on the historical positioning information and the mileage data of the previous positioning period. The state prediction covariance is used to characterize the prediction uncertainty of the position prediction based on the mileage data.
[0022] The fusion weighting coefficient for the current positioning period is calculated based on the state prediction covariance of the current positioning period and the preset measurement noise covariance; the measurement noise covariance represents the estimation of the measurement accuracy of the sensor positioning data.
[0023] Based on the fusion weight coefficient of the current positioning period, the predicted positioning information and the sensor positioning data are weighted and calculated to obtain the current positioning information, and the state estimation covariance of the next positioning period is updated based on the fusion weight coefficient and the state prediction covariance.
[0024] In some embodiments, the step of calculating the predicted positioning information and the state prediction covariance for the handling equipment based on the historical positioning information and the mileage data from the previous positioning cycle includes:
[0025] The state estimation covariance updated in the previous positioning cycle is used as the state estimation covariance for the current positioning cycle.
[0026] The state estimation covariance of the current positioning cycle is summed with the preset system process noise covariance to obtain the state prediction covariance of the current positioning cycle; wherein, the system process noise covariance is used to characterize the estimation of the degree of error accumulation of the driving mileage data within a unit cycle.
[0027] The step of calculating the fusion weight coefficient for the current positioning cycle based on the state prediction covariance and the preset measurement noise covariance includes:
[0028] The fusion weighting coefficient is obtained by calculating the ratio of the sum of the state prediction covariance and the measurement noise covariance.
[0029] The step of updating the state estimation covariance for the next positioning cycle based on the fusion weight coefficients and the state prediction covariance includes:
[0030] Subtract the fusion weight coefficient from the preset total coefficient value to obtain the difference;
[0031] The difference is multiplied by the state prediction covariance of the current positioning cycle to obtain the updated state estimation covariance.
[0032] In some embodiments, the method further includes:
[0033] In response to the first positioning cycle of entering the handling equipment, the current positioning information is initialized based on the sensor positioning data received within the first positioning cycle;
[0034] The initialized current location information is assigned to the driving mileage data, which serves as the starting point for accumulating the mileage data of the handling equipment;
[0035] After obtaining the actual change in the sensor positioning data and determining the reliability of the sensor positioning data based on a comparison between the actual change and the predicted change, the method further includes:
[0036] If the credibility is determined not to meet the preset conditions, the current location information is determined based on the driving mileage data;
[0037] After outputting the current location information, the method further includes:
[0038] The mileage data of the handling equipment for the next positioning cycle is calibrated based on the current positioning information corresponding to the current positioning cycle.
[0039] In some embodiments, the mileage data includes the mileage and heading angle of the transport equipment in the current positioning cycle; calculating the mileage data of the transport equipment in the current positioning cycle based on the motion characteristics of the current positioning cycle includes:
[0040] The tire speed and rotation angle of the drive wheels of the handling equipment during the current positioning cycle are obtained;
[0041] The tire speed and rotation angle are calculated based on the kinematic model of the transport equipment to obtain the real-time vehicle speed and angular velocity of the transport equipment.
[0042] By integrating the real-time vehicle speed and angular velocity, the travel distance and heading angle of the transport equipment in the current positioning cycle are obtained.
[0043] Secondly, this application also provides a positioning device for a semiconductor handling equipment, the device comprising:
[0044] The first acquisition module is used to acquire the motion characteristics of the handling equipment in the current positioning cycle;
[0045] The calculation module is used to calculate the mileage data of the handling equipment in the current positioning cycle based on the motion characteristics of the current positioning cycle.
[0046] The second acquisition module is used to acquire the sensing and positioning data output by the preset external sensors for the handling equipment;
[0047] The first determining module is used to determine the predicted change of the sensing positioning data within the current positioning cycle based on the motion characteristics.
[0048] The second determining module is used to obtain the actual change of the sensing positioning data within the current positioning period, and determine the reliability of the sensing positioning data based on the comparison between the actual change and the predicted change.
[0049] The prediction module is used to predict the current position of the handling equipment based on the historical positioning information of the handling equipment in the historical positioning period and the mileage data of the current positioning period if the confidence level meets the preset conditions, so as to obtain the predicted positioning information.
[0050] The fusion module is used to perform weighted fusion of the sensor positioning data and the predicted positioning information to obtain the current positioning information of the handling equipment.
[0051] Thirdly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to perform the following steps:
[0052] Fourthly, this application also provides a readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps included in any of the aforementioned embodiments of the positioning method for semiconductor handling equipment.
[0053] 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 semiconductor handling device positioning method embodiments.
[0054] The aforementioned semiconductor handling equipment positioning method, apparatus, computer equipment, readable storage medium, and computer program product, by simultaneously acquiring high-frequency self-motion mileage data and low-frequency but absolutely accurate external sensor positioning data, and performing reliability judgment and weighted fusion, creatively combines two types of complementary positioning sources, thus overcoming the inherent defects of a single data source in principle.
[0055] In this embodiment of the invention, the motion characteristics of the handling equipment itself, combined with its kinematic model, are used to achieve corresponding dead reckoning, providing continuous and real-time incremental position information. This effectively compensates for the insufficient update rate of external sensors, ensuring high frequency and continuity of positioning output, and enabling close tracking of every instantaneous motion state of the equipment. Simultaneously, by introducing a dynamic reliability judgment mechanism based on physical motion constraints, abnormal data generated by interference from external sensors can be intelligently identified and filtered, significantly improving the system's anti-interference capability and robustness in complex industrial environments.
[0056] This application uses the optimal position estimation information from the previous positioning cycle of the handling equipment as a basis, combines it with real-time odometer data for prediction, and performs optimal weighted fusion with verified and reliable external absolute positioning data. Within an optimization framework such as Kalman filtering, this process periodically corrects the accumulated error of the odometer data and dynamically balances the weights of prediction and measurement, thereby stably outputting positioning results that combine high absolute accuracy, high real-time performance, and high smoothness. This solves the technical challenge of traditional solutions failing to simultaneously achieve high accuracy, continuity, or stability. Attached Figure Description
[0057] 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.
[0058] Figure 1 This is a flowchart illustrating a positioning method for a semiconductor handling device in one embodiment;
[0059] Figure 2 This is a structural block diagram of a positioning device for a semiconductor handling equipment in one embodiment;
[0060] Figure 3 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation
[0061] 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.
[0062] 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.
[0063] Before describing the embodiments of the present invention, the related technologies and their existing problems will be further explained:
[0064] Among related technologies, discrete barcode positioning methods suffer from low positioning accuracy (dependent on the time and location of barcode reading), extremely high deployment and maintenance costs, and are prone to missed or misreading during high-speed operation, leading to positioning failure. While solutions relying solely on a single external absolute positioning sensor (such as LiDAR) can provide absolute position without accumulated errors, their data update frequency is low, making it difficult to capture the instantaneous state of high-speed moving equipment in real time. Furthermore, in complex industrial environments, they are susceptible to interference, leading to data jumps or loss, and cannot guarantee the continuity and stability of positioning output.
[0065] The positioning method for semiconductor handling equipment provided in this application embodiment can be applied to a pre-defined OHT vehicle controller. This OHT vehicle controller can be deployed inside the OHT vehicle body, and its hardware form can be selected according to performance and cost requirements. Common platforms include industrial computers (IPCs), system-on-a-chip (SoCs), or microcontroller units (MCUs). For example, a highly integrated MCU-based solution can be used, with a high-performance MCU such as the STM32F767 as the core, to build a compact, reliable, and low-cost vehicle control platform. In terms of hardware structure, the OHT vehicle controller may include mileage calculation and fusion positioning functions, and typically integrates or coordinates the operation of other key functional modules, such as a path parsing module (responsible for parsing the B-spline path issued by the upper-level scheduling system), a motion control module (responsible for trajectory tracking and drive command generation), and a status monitoring module. The laser positioning module may be a separate hardware unit connected to the main controller via a communication interface, or its data processing function may be integrated into the software layer of the main control chip. The various functional modules interact efficiently through program calls, shared memory, or message queues within the controller. For example, the laser positioning module (or interface) sends its calculated raw positioning data to the fusion positioning program.
[0066] In one exemplary embodiment, such as Figure 1As shown, a positioning method for semiconductor handling equipment is provided. This method aims to solve the problems of limited accuracy, high deployment and maintenance costs, and poor stability during high-speed operation of barcode positioning schemes used in related technologies, such as those employed in semiconductor factory OHT (Overhead Hoist Transport) systems. This method embodiment is executed cyclically within each positioning cycle, which is a preset, short, and fixed time interval (e.g., 10 milliseconds), serving as the basic time unit for data acquisition, calculation, and output by the fusion positioning algorithm. A positioning cycle is typically aligned with or an integer multiple of the control cycle of the equipment's underlying control system to ensure that positioning information can promptly serve motion control. Within one positioning cycle, the complete process from data acquisition to result output is completed. Taking the application of this method to the aforementioned OHT vehicle controller as an example, the method includes the following steps:
[0067] Step 202: Obtain the motion characteristics of the handling equipment in the current positioning cycle.
[0068] The transport equipment mentioned above can be an OHT (overhead crane) used in semiconductor wafer fabs for transporting wafer cassettes. It is understood that such equipment is typically equipped with drive wheels and a steering mechanism, and its motion can be measured by internal sensors (such as motor encoders).
[0069] The motion characteristics of the current positioning cycle refer to the set of physical quantities used to describe the instantaneous motion state of the device within this positioning cycle. Specifically, the motion characteristics may include: tire linear velocity (such as front wheel speed Vf, rear wheel speed Vr) and tire steering angle (such as front wheel steering angle αf, rear wheel steering angle αr) measured in real time by the drive wheel encoder.
[0070] Step 204: Calculate the mileage data of the handling equipment in the current positioning cycle based on the motion characteristics of the current positioning cycle.
[0071] Unlike related technologies that use barcode positioning, this invention utilizes the device's own motion sensors to achieve dead reckoning. Specifically, the mileage data is an incremental, relative positional information that represents the device's displacement and heading changes within the current positioning cycle relative to its position at the end of the previous positioning cycle.
[0072] The calculation principle for mileage data can be as follows: Based on the aforementioned tire speed and steering angle, combined with the kinematic model of the OHT, the real-time composite linear velocity V and real-time rotational angular velocity ω of the device's body center (or control reference point) are calculated using the constraint relationships between the linear velocity, angular velocity, and geometric dimensions of each point in rigid body kinematics. The kinematic model of the OHT is determined based on the configuration parameters of the OHT device's own motion structure, such as being based on Ackermann steering geometry, a four-wheel independent steering model, or a two-wheel independent drive model, etc. This embodiment of the invention does not impose any limitations on this.
[0073] Then, by integrating the real-time velocity V and angular velocity ω within this positioning cycle (in discrete systems, an approximate numerical integration method can be used, such as calculating the displacement based on the motion model), the approximate arc length (travel distance) traveled by the handling equipment along the trajectory within this positioning cycle and the change in heading angle can be obtained.
[0074] It should be noted that, considering the motion characteristics of the handling equipment, the update frequency of the mileage data can be relatively high (up to 100Hz or more), so as to reflect every minute movement of the handling equipment in a more real-time and continuous manner, and the data latency is relatively low.
[0075] Step 206: Obtain the sensing and positioning data output by the preset external sensor for the handling equipment.
[0076] Since mileage data calculation is based on the integration of speed, even small speed measurement errors accumulate over time, leading to significant drift (cumulative error) in the positioning results and making it difficult to maintain absolute accuracy over the long term. Therefore, mileage data excels at providing short-term, high-frequency local motion information and may not be suitable as a long-term absolute position reference. Therefore, in this embodiment of the invention, an external absolute positioning source is introduced to correct the cumulative error of the mileage data.
[0077] The external sensors can be detection devices installed on the handling equipment or positioning devices deployed in the operating environment. Typically, they can include lidar, reflector positioning, ultra-wideband positioning systems, or visual positioning systems, such as lidar installed on the OHT and reflectors deployed in the operating environment.
[0078] Sensor positioning data is directly measured and output by an external system, used to represent the absolute position coordinates (such as the X and Y axis coordinates in the world coordinate system) and absolute heading angle of the handling equipment in the global coordinate system (world coordinate system). Sensor positioning data can provide absolute position information with no cumulative error and high accuracy (such as millimeter-level accuracy under ideal conditions).
[0079] Step 208: Based on the motion characteristics, determine the predicted change in the sensing positioning data within the current positioning cycle.
[0080] Considering that the movement of the handling equipment is subject to physical constraints (limited speed and acceleration), the position and angle changes of the sensor positioning data between two update points cannot be infinitely large. Specifically, using the real-time linear velocity V and real-time angular velocity ω of the equipment obtained in the preceding steps, combined with the known data update period T of the external sensor (e.g., 100ms period for LiDAR), the theoretically maximum allowable position change (specifically, the maximum allowable displacement) and maximum allowable angle change (specifically, the maximum allowable rotation angle) of the handling equipment within this period T can be calculated. These two values constitute the predicted changes, thus providing a dynamic, speed-adaptive detection threshold for identifying abnormal external sensor data.
[0081] Step 210: Obtain the actual change of the sensing positioning data within the current positioning period, and determine the reliability of the sensing positioning data based on the comparison between the actual change and the predicted change.
[0082] Considering that the update frequency of sensor positioning data is generally low (typically on the order of 10Hz), and that data may jump, be lost, or temporarily unavailable during high-speed equipment movement or due to environmental interference (such as reflector obstruction or signal multipath effects), sensor positioning data can serve as a long-term, accurate global positioning anchor for handling equipment, but it is difficult to meet the requirements of high real-time performance and continuity. Therefore, to enhance the positioning robustness of semiconductor handling equipment, the reliability of sensor positioning data can be assessed.
[0083] Specifically, the positioning process for the handling equipment can be performed periodically. In this embodiment of the invention, the latest external sensor positioning data received in the current positioning cycle can be compared with the sensor positioning data received and stored in the previous positioning cycle (or the fused positioning result of the previous positioning cycle), and the actual position difference and angle difference between the two can be calculated. The calculated actual position difference is compared with the maximum allowable position change obtained in the aforementioned steps; simultaneously, the actual angle difference is compared with the maximum allowable angle change.
[0084] If the actual changes do not exceed the corresponding predicted maximum changes, the current sensor positioning data is considered reasonable and reliable, and is likely a correct reflection of the actual location. If the actual changes exceed the predicted maximum, it indicates that the sensor positioning data may have experienced a non-physical jump (e.g., due to signal interference, mismatch, or communication errors), and the data is deemed unreliable.
[0085] Step 212: If the credibility meets the preset conditions, predict the current position of the handling equipment based on the historical positioning information of the handling equipment in the historical positioning cycle and the mileage data of the current positioning cycle, and obtain the predicted positioning information.
[0086] Specifically, historical positioning information can include the final positioning result output after fusion optimization at the end of the previous positioning cycle, which represents the estimated location of the equipment to a highly reliable handling device. Considering the slow update speed of external sensor positioning data, to determine the real-time location of the equipment during the interval between two sensor positioning data arrivals, the precise fused location obtained from the previous positioning cycle can be used as the starting point. Using the high-frequency, continuous mileage data calculated in the current cycle as the step size, and through recursion or extrapolation using a motion model, the most likely location of the equipment at the current moment can be estimated, i.e., the predicted positioning information.
[0087] Step 214: Weighted fusion of the sensor positioning data and the predicted positioning information is performed to obtain the current positioning information of the handling equipment.
[0088] In this embodiment of the invention, in order to better utilize the advantages of the sensor positioning data and the predicted positioning information while suppressing their respective disadvantages, dynamic and optimal weighting can be performed based on the estimation of the uncertainty of the predicted value (mainly from mileage error) and the accuracy of the measurement value (mainly from sensor noise). Specifically, the weighted fusion can be based on a Kalman filter or its simplified form.
[0089] Specifically, reliable sensor positioning data is considered as measured values, and predicted positioning information is considered as "predicted values." An iterative algorithm (such as calculating Kalman gain) is used to assign appropriate weights to both. A higher weight for predicted values results in smoother, more real-time results, but may drift over the long term; a higher weight for measured values results in higher absolute accuracy, but may be less smooth and subject to delays. By dynamically adjusting the weights, a current positioning information that achieves a good balance between accuracy, real-time performance, and smoothness is output. Through this weighted fusion, the current positioning information, while correcting for accumulated drift from the odometer, can compensate for deficiencies in the update rate and accuracy of external sensors. This results in continuous, stable, and high-precision positioning output, providing crucial position feedback for the precise and real-time motion control of downstream material handling equipment.
[0090] In some embodiments, the motion characteristics include the real-time speed and angular velocity of the conveying equipment during operation; the predicted change includes the maximum position change and the maximum angle change of the sensing positioning data; the update frequency of the sensing positioning data is lower than the update frequency of the mileage data;
[0091] The step of determining the predicted change in the sensing positioning data within the current positioning period based on the motion characteristics includes:
[0092] The maximum position change and maximum angle change of the sensor positioning data are calculated based on the real-time speed and angular velocity of the conveying equipment and the update cycle of the sensor positioning data.
[0093] The step of obtaining the actual change in the sensor positioning data within the current positioning period, and determining the reliability of the sensor positioning data based on a comparison between the actual change and the predicted change, includes:
[0094] The sensor positioning data of the current positioning cycle is compared with the sensor positioning data of the previous positioning cycle and the historical positioning information of the previous positioning cycle to obtain the position change and angle change of the sensor positioning data.
[0095] The reliability of the sensing positioning data is obtained by comparing the position change with the allowable position change and the angle change with the maximum angle change.
[0096] The motion characteristics can be the real-time speed V and real-time angular velocity ω of the conveying equipment calculated from the state of the drive wheels. The predicted change specifically includes two dimensions: the maximum position change (or allowable position change) and the maximum angle change (or allowable angle change), which together constitute the dynamic threshold for judging whether the sensing data has undergone a physically reasonable abrupt change.
[0097] Considering that in related technologies, anomalies in external sensor (such as laser positioning) data are usually judged using fixed thresholds, which are difficult to adapt to the dynamic changes of the device at different speeds and are prone to misjudgment or missed judgment, this embodiment designs a dynamic reliability judgment mechanism that adapts to the device's motion state.
[0098] Specifically, because the update frequency of the sensor positioning data (e.g., a lidar positioning cycle T of 100 ms) is significantly lower than the update frequency of the mileage data (e.g., a mileage calculation cycle dt of 10 ms), there exists a relatively long time interval T between the arrival of two consecutive sensor positioning data. Within this interval, the displacement and rotation that the device can theoretically produce based on the movement capabilities of the transport equipment are limited. Therefore, the maximum positional change that the device may produce within time T, maxPosErr, can be estimated by multiplying its maximum permissible speed (usually the current real-time speed V, or an estimated speed combined with acceleration constraints) by time T.
[0099] Correspondingly, the maximum angular change that the device may produce within time T, maxAErr, can be estimated by multiplying its maximum permissible angular velocity (usually the absolute value of the current real-time angular velocity ω) by time T: maxAErr = |ω| * T.
[0100] The calculated maxPosErr and maxAErr are dynamic, predicted changes that are positively correlated with the current velocity / angular velocity. The faster the speed, the larger the allowable range of change, and vice versa. This aligns with the physical intuition that position changes may be greater at high speeds and smaller at low speeds.
[0101] After receiving new sensor positioning data (such as lasX_new, lasY_new, lasA_new), it is necessary to calculate the actual change in its position relative to the sensor positioning data returned in the previous sensing cycle.
[0102] In this embodiment of the invention, the new data is compared with the original sensor positioning data (lasX_prev, lasY_prev, lasA_prev) received in the previous positioning cycle and the fused positioning information (navFusedX_prev, navFusedY_prev, navFusedA_prev) finally output in the previous positioning cycle. The calculation of the actual change may include:
[0103] The change in position ΔPos_raw relative to the previous raw sensor data: ;
[0104] The change in angle relative to the previous original sensor data, ΔA_raw: ΔA_raw = |lasA_new -lasA_prev| (angle normalization is required);
[0105] The change in position relative to the previous fused positioning information, ΔPos_fused: ΔPos_fused = sqrt((lasX_new - navFusedX_prev)^2 + (lasY_new - navFusedY_prev)^2);
[0106] The change in angle relative to the previous fused positioning information, ΔA_fused: ΔA_fused = |lasA_new -navFusedA_prev|.
[0107] The four actual changes ΔPos_raw, ΔA_raw, ΔPos_fused, and ΔA_fused are compared with the maximum position change maxPosErr and the maximum angle change maxAErr obtained in the previous steps, respectively. The reliability judgment rule based on the comparison results is as follows: the currently received sensor positioning data is considered reliable only when all four conditions are simultaneously met: ΔPos_raw ≤ maxPosErr, ΔA_raw ≤ maxAErr, ΔPos_fused ≤ maxPosErr, and ΔA_fused ≤ maxAErr. In other words, its reliability meets the preset conditions.
[0108] If any of the above conditions are not met, for example, if ΔPos_raw is greater than maxPosErr, it indicates that the current sensing data has undergone a non-physical drastic change relative to the historical data. This is likely due to an outlier (outlier) caused by signal interference, mismatch, or communication error. In this case, the data is deemed unreliable.
[0109] This invention utilizes real-time motion features to dynamically calculate the verification threshold, enabling the judgment standard to automatically adapt to various operating states of the equipment, from stationary to high-speed. This avoids the problem of fixed thresholds being too strict at high speeds (easily misjudging normal data as abnormal) or too lenient at low speeds (easily missing abnormal data). By simultaneously comparing with original historical sensor data and more reliable fusion historical locations, a more comprehensive verification mechanism is constructed, further improving the reliability of identifying instantaneous anomalies or systematic deviations in sensors. The credibility judgment effectively filters out unreliable abnormal sensor data, preventing it from entering subsequent fusion stages and contaminating the final positioning result. This improves the stability and output accuracy of the entire fusion positioning system, especially in complex industrial environments where sensors are susceptible to interference.
[0110] In some embodiments, the weighted fusion of the sensor positioning data and the predicted positioning information to obtain the current positioning information of the handling equipment includes:
[0111] The predicted positioning information and the state prediction covariance of the handling equipment in the current positioning period are calculated based on the historical positioning information and the mileage data of the previous positioning period. The state prediction covariance is used to characterize the prediction uncertainty of the position prediction based on the mileage data.
[0112] The fusion weighting coefficient for the current positioning period is calculated based on the state prediction covariance of the current positioning period and the preset measurement noise covariance; the measurement noise covariance represents the estimation of the measurement accuracy of the sensor positioning data.
[0113] Based on the fusion weight coefficient of the current positioning period, the predicted positioning information and the sensor positioning data are weighted and calculated to obtain the current positioning information, and the state estimation covariance of the next positioning period is updated based on the fusion weight coefficient and the state prediction covariance.
[0114] To overcome the limitation of simple weighted averaging in handling time-varying error characteristics, this method achieves adaptive adjustment of the fusion weights by estimating the uncertainties of prediction and measurement online, thereby obtaining the statistically optimal positioning result. Specifically, the following steps are executed sequentially within a positioning cycle, iteratively updating the system's state and confidence level:
[0115] 1. State prediction and uncertainty propagation: Based on historical best estimates and high-frequency mileage data, predict the current position and quantify the uncertainty of the prediction.
[0116] Specifically, the predicted positioning information can be calculated based on the historical positioning information from the previous positioning cycle and the mileage data. The historical positioning information, i.e., the optimal estimate (navFusedX_prev, navFusedY_prev, navFusedA_prev) from the fusion output of the previous positioning cycle, serves as the starting point for prediction. Using the mileage data (i.e., displacement increment Δs and heading increment Δθ) calculated in the current positioning cycle, state recursion is performed through a motion model (such as a uniform velocity or uniform angular velocity model) to calculate the predicted positioning information (X_pred, Y_pred, A_pred). This corresponds to the state prediction step in Kalman filtering.
[0117] The system calculates the state prediction covariance for the transport equipment within the current positioning cycle. The state prediction covariance is a matrix (or simplified as a scalar) used to quantitatively characterize the prediction uncertainty based on the mileage data. The positioning result of the previous positioning cycle itself contains estimation errors (described by the state estimation covariance P_prev at the end of the previous cycle), and the mileage data used in this cycle also contains errors (described by the preset system process noise covariance Q, which models the degree of error accumulation of the odometer within a unit cycle). The prediction process amplifies and propagates these errors. Therefore, the state prediction covariance P_pred for the current cycle can be obtained by adding the estimation error P_prev of the previous positioning cycle to the process noise Q (for a linear model) or through a more complex nonlinear propagation. A larger P_pred indicates a lower confidence level in the current predicted value (X_pred, Y_pred).
[0118] 2. Calculation of fusion weights (Kalman gain): Calculate how to trust the predicted value and the measured value, that is, determine the fusion weight coefficients (called Kalman gain K in Kalman filtering).
[0119] Specifically, the fusion weight coefficient for the current positioning period is calculated based on the state prediction covariance and the preset measurement noise covariance of the current positioning period. The measurement noise covariance R is a preset parameter used to characterize the estimation of the accuracy of the sensor positioning data measurement, reflecting the accuracy and stability of the external sensor (such as LiDAR). A larger R value indicates that the sensor data is considered to have high noise and low reliability. In this embodiment, the calculation of the fusion weight coefficient K follows the optimal estimation principle of "the smaller the uncertainty, the larger the weight." Its calculation formula is: K = P_pred / (P_pred + R). Where P_pred represents the uncertainty of prediction, and R represents the uncertainty of measurement. The larger the numerator P_pred (the more uncertain the prediction), the larger K, indicating that the sensor measurement value is more trusted (assigned a higher weight) in the fusion result; the denominator (P_pred + R) represents the total uncertainty. The K calculated by this formula is a value between 0 and 1, dynamically balancing the trust distribution between prediction and measurement.
[0120] 3. State update and covariance update: Using the calculated weights, the data is actually fused, and the system's perception of its own estimation accuracy is updated.
[0121] Specifically, the predicted positioning information and the sensor positioning data can be weighted and calculated according to the fusion weight coefficient of the current positioning period to obtain the current positioning information. This can be achieved through a Kalman filter state update step, with the specific calculation formula being: Current positioning information = Predicted positioning information + K * (Sensor positioning data - Predicted positioning information). This formula means that a correction term is added to the predicted value. The correction term is the residual between the sensor measurement value and the predicted value, multiplied by the fusion weight K. If K is close to 1, the final result is approximately equal to the sensor measurement value; if K is close to 0, the final result is approximately equal to the predicted value.
[0122] Then, based on the fusion weight coefficients and the state prediction covariance, the state estimation covariance for the next positioning cycle is updated. After outputting the optimal estimate, it is necessary to reduce the uncertainty of future state prediction by incorporating new information (sensor data) from this fusion. The update formula can be: next cycle state estimation covariance P_next = (1 - K) * P_pred. This formula shows that by fusing sensor data (with a weight of K), the system uncertainty is reduced from the prediction covariance P_pred to (1-K) * P_pred. The larger K is (i.e., the more confident the measurement is in this instance), the greater the reduction in uncertainty. The updated P_next will be used as P_prev for state prediction in the next positioning cycle, realizing closed-loop iteration of error estimation.
[0123] This invention, through its embodiments, dynamically calculates weighting coefficients based on the real-time uncertainties of prediction and measurement, rather than fixing them, ensuring that the fusion strategy always approximates the statistically optimal solution under the current conditions. Furthermore, based on the output of the optimal position estimate, it continuously tracks and updates the system's confidence level in its own estimation accuracy through the covariance matrix P, forming a self-consistent intelligent system capable of recognizing its own uncertainties.
[0124] In some embodiments, the step of calculating the predicted positioning information and the state prediction covariance for the handling equipment based on the historical positioning information and the mileage data from the previous positioning cycle includes:
[0125] The state estimation covariance updated in the previous positioning cycle is used as the state estimation covariance for the current positioning cycle.
[0126] The state estimation covariance of the current positioning cycle is summed with the preset system process noise covariance to obtain the state prediction covariance of the current positioning cycle; wherein, the system process noise covariance is used to characterize the estimation of the degree of error accumulation of the driving mileage data within a unit cycle.
[0127] The step of calculating the fusion weight coefficient for the current positioning cycle based on the state prediction covariance and the preset measurement noise covariance includes:
[0128] The fusion weighting coefficient is obtained by calculating the ratio of the sum of the state prediction covariance and the measurement noise covariance.
[0129] The step of updating the state estimation covariance for the next positioning cycle based on the fusion weight coefficients and the state prediction covariance includes:
[0130] Subtract the fusion weight coefficient from the preset total coefficient value to obtain the difference;
[0131] The difference is multiplied by the state prediction covariance of the current positioning cycle to obtain the updated state estimation covariance.
[0132] In order to ensure that the internal state estimation (position) and uncertainty estimation (covariance) of the fusion positioning system can be correctly iterated during long-term operation, thereby achieving continuous optimization of the fusion effect, the covariance update and gain calculation are based on the Kalman filter framework in this embodiment of the invention.
[0133] Specifically, regarding the calculation of the state prediction covariance: the state estimation covariance updated in the previous positioning cycle is obtained as the state estimation covariance of the current positioning cycle. Let P_{k-1} be the state estimation covariance obtained after fusion and updating in the previous positioning cycle (cycle k-1). This value represents the system's error confidence in the optimal positioning result (navFusedX_{k-1}, navFusedY_{k-1}, navFusedA_{k-1}) of the previous positioning cycle. The smaller the value of P_{k-1}, the more confident the system is in estimating the position in the previous positioning cycle.
[0134] The state estimation covariance of the current positioning cycle is then summed with the preset system process noise covariance to obtain the state prediction covariance of the current positioning cycle. Let Q be the system process noise covariance of the current cycle (cycle k). This parameter Q is a key design parameter used to characterize the estimation of the cumulative error of the mileage data within a unit cycle. A larger Q value indicates that the odometer error (such as speed integral error) within a single cycle is likely to be larger, and the prediction result is less reliable.
[0135] In this embodiment of the invention, based on Kalman filtering theory, the state prediction covariance P_{k|k-1} for the current period (i.e., the uncertainty estimate of the predicted state before obtaining the measurement value for the kth period) can be calculated by the following formula:
[0136] P_{k|k-1} = P_{k-1} + Q;
[0137] The physical meaning of this formula is that the positioning uncertainty from the previous positioning cycle to the current time consists of two parts. One part is the residual uncertainty P_{k-1} from the previous positioning cycle estimate itself, and the other part is the new uncertainty Q introduced during this period due to the use of imperfect odometer data for prediction. The sum of the two constitutes the total uncertainty estimate P_{k|k-1} for the current prediction value.
[0138] Calculation of fusion weight coefficients (Kalman gain):
[0139] The fusion weighting coefficient is obtained by calculating the ratio of the sum of the state prediction covariance and the measurement noise covariance. The measurement noise covariance of the current period is denoted as R, which characterizes the estimate of the measurement accuracy of the sensor positioning data. A larger R value indicates that the data noise from external sensors (such as LiDAR) is considered large and unreliable.
[0140] Correspondingly, the fusion weight coefficient (Kalman gain) K_k for the current period is calculated using the following formula:
[0141] K_k = P_{k|k-1} / (P_{k|k-1} + R);
[0142] Here, P_{k|k-1} represents the uncertainty of the predicted value. The greater the uncertainty, the more necessary it is to rely on external measurements for correction. (P_{k|k-1} + R) represents the total uncertainty of both prediction and measurement. Therefore, the value of K_k dynamically reflects the relative reliability of the sensor measurement relative to the internal prediction in the current period.
[0143] Regarding the update of the state estimation covariance: After completing the state fusion, it is necessary to update the system's perception of its own estimation accuracy based on the new information obtained from this fusion, in order to prepare for the prediction of the next cycle.
[0144] Specifically, the difference can be obtained by subtracting the fusion weight coefficient from the preset total coefficient value; the difference is then multiplied by the state prediction covariance of the current positioning period to obtain the updated state estimation covariance. In standard Kalman filtering, the preset total coefficient value can be 1 (representing 100% confidence). Therefore, the updated state estimation covariance P_k (which will be used for prediction in the (k+1)th period) is calculated using the following formula:
[0145] P_k = (1 - K_k) * P_{k|k-1};
[0146] Here, (1 - K_k) represents the proportion of remaining uncertainty after this fusion. Because the overall uncertainty of the system is reduced by introducing sensor measurements with weight K_k for correction. If K_k is large (close to 1), it means that the sensor data is trusted to a high degree in this iteration, the uncertainty is significantly eliminated, and P_k becomes very small. If K_k is small (close to 0), it means that the sensor data is almost untrusted in this iteration, the uncertainty reduction is limited, and P_k is approximately equal to P_{k|k-1}. The updated P_k will be used as P_{k-1} in the calculation of the next cycle, forming a closed-loop iteration for uncertainty estimation.
[0147] In this embodiment of the invention, the recursive process forms an adaptive filter. When the accumulated odometer error causes the prediction uncertainty P_{k|k-1} to increase, K_k automatically increases, and the system relies more on external absolute positioning data to "reset" the error. When the external sensor experiences increased noise (actually manifested as a temporary increase in R), K_k automatically decreases, and the system instead trusts the relatively smooth internal calculations more, thereby effectively suppressing the impact of sensor noise on the output.
[0148] In some embodiments, the method further includes:
[0149] In response to the first positioning cycle of entering the handling equipment, the current positioning information is initialized based on the sensor positioning data received within the first positioning cycle;
[0150] The initialized current location information is assigned to the driving mileage data, which serves as the starting point for accumulating the mileage data of the handling equipment;
[0151] After obtaining the actual change in the sensor positioning data and determining the reliability of the sensor positioning data based on a comparison between the actual change and the predicted change, the method further includes:
[0152] If the credibility is determined not to meet the preset conditions, the current location information is determined based on the driving mileage data;
[0153] After outputting the current location information, the method further includes:
[0154] The mileage data of the handling equipment for the next positioning cycle is calibrated based on the current positioning information corresponding to the current positioning cycle.
[0155] To ensure the fusion positioning system can start stably from its initial state, has the capability to degrade operation when sensor data is abnormal, and maintains the long-term accuracy of odometer data, in this embodiment of the invention, the following steps are also triggered and executed at different stages of the operation of the handling equipment system:
[0156] 1. System initialization process: This process can be executed when the system is powered on and starts up, or when it first enters the positioning cycle.
[0157] Specifically, in response to the first positioning cycle of the transport equipment, the current positioning information is initialized based on the sensor positioning data received within the first positioning cycle. In the first cycle, since there is no historical fusion information, prediction and fusion cannot be performed. At this time, the absolute position coordinates (lasX_init, lasY_init) and heading angle lasA_init reported by the first external sensor (such as LiDAR) are directly used as the optimal estimate of the system, i.e., navFusedX = lasX_init, navFusedY = lasY_init, navFusedA = lasA_init. This establishes a precise global coordinate starting point for the entire fusion algorithm.
[0158] The initialized current positioning information is assigned to the mileage data, serving as the starting point for the mileage data accumulation of the handling equipment. Thus, the initialized fused coordinates (navFusedX, navFusedY, navFusedA) are simultaneously assigned to the accumulated values of the internal odometer module, i.e., odoX = navFusedX, odoY = navFusedY, odoA = navFusedA. This ensures that the odometer starts subsequent relative accumulation from the correct absolute position, avoiding the introduction of initial accumulation errors.
[0159] 2. Degradation Processing Flow When Sensor Data is Unreliable: This process is executed as a branch condition after the reliability judgment step in the main process. Specifically, after obtaining the actual change in the sensor positioning data and determining the reliability of the sensor positioning data based on the comparison between the actual change and the predicted change, the method further includes: if the reliability does not meet the preset condition, determining the current positioning information based on the mileage data. When external sensor data is determined to be unreliable due to interference or other reasons, directly discarding the data without any position update will cause the positioning output to stagnate. To ensure the continuity of the system, this embodiment degrades to a pure odometer positioning mode at this time. That is, starting from the optimal fused position (navFusedX_prev, navFusedY_prev, navFusedA_prev) of the previous positioning cycle, only the high-frequency mileage data (displacement increment Δs and heading increment Δθ) calculated in the current cycle is used for position extrapolation, and the extrapolation result is directly output as the current positioning information for the current cycle. Although positioning errors accumulate gradually in this mode, it ensures the continuity of position output and the real-time response capability of the system, making it a safe fault degradation strategy.
[0160] 3. Periodic calibration process for odometer data: This process is executed after the fusion output step of the main process and is designed to interrupt the continuous accumulation of odometer errors.
[0161] Specifically, after outputting the current positioning information, the method further includes: calibrating the mileage data of the transport equipment for the next positioning cycle based on the current positioning information corresponding to the current positioning cycle. After each reliable data fusion, the system obtains a more accurate "calibrated" absolute position (navFusedX, navFusedY, navFusedA) than simple mileage estimation. To prevent the odometer from continuing to accumulate errors on its erroneous trajectory, this more accurate result is used to reset or synchronize the odometer's accumulated value. That is, before entering the next positioning cycle, the odometer's accumulated value (odoX, odoY, odoA) is updated to the currently fused output (navFusedX, navFusedY, navFusedA). Thus, the mileage estimation for the next cycle will restart from the accurate position after this calibration. This step is crucial; it periodically corrects the accumulated drift of the odometer, limiting it to one positioning cycle (i.e., between two effective fusions), thereby ensuring the long-term availability and short-term high accuracy of the internal mileage data as the basis for prediction.
[0162] This invention provides a precise global initial state for the fusion algorithm through sensor data initialization, avoiding confusion or prolonged convergence due to unknown location during system startup. The degradation processing mechanism ensures that even in extreme cases where external sensors temporarily fail completely, the system can still provide continuous and usable positioning output based on odometer readings, preventing interruption of the entire positioning function and meeting the high availability requirements of industrial systems.
[0163] In some embodiments, the mileage data includes the mileage and heading angle of the transport equipment in the current positioning cycle; calculating the mileage data of the transport equipment in the current positioning cycle based on the motion characteristics of the current positioning cycle includes:
[0164] The tire speed and rotation angle of the drive wheels of the handling equipment during the current positioning cycle are obtained;
[0165] The tire speed and rotation angle are calculated based on the kinematic model of the transport equipment to obtain the real-time vehicle speed and angular velocity of the transport equipment.
[0166] By integrating the real-time vehicle speed and angular velocity, the travel distance and heading angle of the transport equipment in the current positioning cycle are obtained.
[0167] In some related technologies, simplifications to vehicle motion models (such as reducing four wheels to a two-wheeled bicycle model) or neglect of the influence of independent steering can lead to significant calculation errors under complex steering conditions. This embodiment proposes a more accurate rigid body kinematics calculation method based on the two-wheel independent steering + independent drive configuration of OHT.
[0168] Specifically, calculating the turning radius based on geometric relationships can include: calculating the turning radius of the vehicle's center based on the rotation angles of the front and rear drive wheels and the wheelbase of the equipment. Taking the aforementioned kinematic model as an example, a vehicle coordinate system is established, with the front wheel rotation angle αf, the rear wheel rotation angle αr (with a specific direction as positive), and the distance between the front and rear wheel axle centers (wheelbase) L. It is assumed that the vehicle body and wheels are rigidly connected, and the front and rear wheels rotate around the same instantaneous center of rotation C. Based on the sine theorem, in the triangle formed by the front wheel axle center Cf, the rear wheel axle center Cr, and the center of rotation C, the following relationship exists: L / sin(∠CfCCr) = Rf / sin(∠CrCfC) = Rr / sin(∠CfCrC). Through geometric derivation, the following can be calculated:
[0169] Front wheel turning radius Rf = L / (sin(αf) * cos(αr) - cos(αf * sin(αr)) * sin(αr) (or equivalent form);
[0170] Rear wheel turning radius Rr = L / (sin(αf) * cos(αr) - cos(αf * sin(αr)) * sin(αf) (or equivalent form);
[0171] The turning radius R of the vehicle body center (reference point Ob) can be further calculated using the law of cosines and other methods based on the relative positions of Ob with Cf and Cr. A typical relationship is R = sqrt( (L / 2)^2 + Rf^2 - L*Rf*cos(αf) ) (the specific symbols and forms depend on the definition of the coordinate system).
[0172] The above calculation transforms the control input quantities of the tire rotation angles αf and αr into geometric quantities that describe the motion trajectory of each component—the turning radius, which is the key bridge connecting the wheel motion and the vehicle body motion.
[0173] After obtaining the turning radius, the overall motion state of the vehicle body is obtained by utilizing the characteristics of rigid body rotational motion and combining it with the speed information of each wheel of the transport equipment. Specifically, based on the tire speed of at least one drive wheel and its turning radius, and based on the principle of consistent rigid body rotational angular velocity, the real-time vehicle body speed and angular velocity at the vehicle body center are calculated. Since the vehicle body and each wheel rotate around the same point C, their rotational angular velocities ω are exactly the same.
[0174] Calculating the rotational angular velocity ω: Data from any drive wheel can be used for calculation. For example, using front wheel data: ω = Vf / Rf; or using rear wheel data: ω = Vr / Rr. To improve robustness, the calculated angular velocities of the front and rear wheels can be averaged.
[0175] Calculate the vehicle center velocity V: After obtaining the common angular velocity ω and the turning radius R of the vehicle center, the real-time linear velocity V of the vehicle center (reference point Ob) can be directly obtained from the circular motion formula: V = ω * R.
[0176] Through the above calculations, the four scattered raw wheel-end data (Vf, Vr, αf, αr) are finally transformed into two core parameters that centrally describe the overall motion state of the vehicle body: real-time vehicle speed V and real-time rotational angular velocity ω.
[0177] This invention considers the combined effect of different steering angles of the front and rear wheels on the vehicle's rotation center. Compared to a simplified model, it can more accurately calculate the vehicle's true motion state (V and ω) under any steering combination (including small-radius turns, diagonal driving, etc.), reducing model errors in mileage estimation from the source. The calculated V and ω are the basis for high-precision numerical integration (obtaining displacement Δs and heading change Δθ). Their accuracy directly guarantees the quality of the internal mileage data, making state predictions based on this mileage data (before external sensor data arrives) more reliable, thereby improving the overall performance ceiling of the Kalman fusion filter.
[0178] It should be understood that although the steps in the flowcharts of the embodiments described above 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 embodiments described above 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.
[0179] Based on the same inventive concept, this application also provides a positioning device for a semiconductor handling device to implement the positioning method of the semiconductor handling device described above. The solution provided by this device is similar to the solution described in the above method. Therefore, the specific limitations of one or more positioning device embodiments of semiconductor handling devices provided below can be found in the limitations of the positioning method of semiconductor handling devices above, and will not be repeated here.
[0180] In one exemplary embodiment, such as Figure 2 As shown, a positioning device 300 for semiconductor handling equipment is provided, comprising:
[0181] The first acquisition module 302 is used to acquire the motion characteristics of the handling equipment in the current positioning cycle;
[0182] The calculation module 304 is used to calculate the mileage data of the handling equipment in the current positioning cycle based on the motion characteristics of the current positioning cycle and the kinematic model of the handling equipment.
[0183] The second acquisition module 306 is used to acquire preset external sensor positioning data output by the external sensor for the handling equipment.
[0184] The first determining module 308 is used to determine the predicted change of the sensing positioning data within the current positioning cycle based on the motion characteristics.
[0185] The second determining module 310 is used to obtain the actual change of the sensing positioning data within the current positioning cycle, and determine the reliability of the sensing positioning data based on the comparison between the actual change and the predicted change.
[0186] Prediction module 312 is used to predict the current position of the handling equipment based on the historical positioning information of the handling equipment in the historical positioning cycle and the mileage data of the current positioning cycle if the confidence level meets the preset conditions, so as to obtain the predicted positioning information.
[0187] The fusion module 314 is used to perform weighted fusion of the sensor positioning data and the predicted positioning information to obtain the current positioning information of the handling equipment.
[0188] Each module in the positioning device 300 of the aforementioned semiconductor handling equipment can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device in hardware form, or stored in the memory of a computer device in software form, so that the processor can call and execute the operations corresponding to each module.
[0189] In one exemplary embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 3 As shown, the computer device 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 non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. 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 executed by the processor, the computer program implements a positioning method for a semiconductor handling device. The display unit is used to form 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 computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.
[0190] Those skilled in the art will understand that Figure 3 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 computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0191] In one exemplary embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps included in the positioning method of any of the aforementioned semiconductor handling devices.
[0192] In one embodiment, a readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps included in the positioning method of any of the aforementioned semiconductor handling devices.
[0193] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps included in the positioning method of any of the aforementioned semiconductor handling devices.
[0194] 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.
[0195] 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.
[0196] 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.
[0197] The embodiments described above are merely illustrative 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 positioning method for a semiconductor handling device, characterized in that, The method includes: Acquire the motion characteristics of the handling equipment during the current positioning cycle; Based on the motion characteristics of the current positioning cycle and the kinematic model of the handling equipment, calculate the mileage data of the handling equipment in the current positioning cycle; Acquire the sensing and positioning data output by the preset external sensors for the conveying equipment; Based on the motion characteristics, determine the predicted change in the sensing and positioning data within the current positioning cycle; The actual change in the sensor positioning data within the current positioning period is obtained, and the reliability of the sensor positioning data is determined based on the comparison between the actual change and the predicted change. If the credibility meets the preset conditions, the current position of the handling equipment is predicted based on the historical positioning information of the handling equipment in the historical positioning period and the mileage data of the current positioning period, so as to obtain the predicted positioning information. The current positioning information of the handling equipment is obtained by weighted fusion of the sensor positioning data and the predicted positioning information.
2. The method according to claim 1, characterized in that, The motion characteristics include the real-time speed and angular velocity of the transport equipment during operation; the predicted changes include the maximum position change and the maximum angle change of the sensor positioning data; the update frequency of the sensor positioning data is lower than the update frequency of the mileage data; The step of determining the predicted change in the sensing positioning data within the current positioning period based on the motion characteristics includes: The maximum position change and the maximum angle change of the sensor positioning data are calculated based on the real-time speed and angular velocity of the conveying equipment and the update cycle of the sensor positioning data. The step of obtaining the actual change in the sensor positioning data within the current positioning period, and determining the reliability of the sensor positioning data based on a comparison between the actual change and the predicted change, includes: The sensor positioning data of the current positioning cycle is compared with the sensor positioning data of the previous positioning cycle and the historical positioning information of the previous positioning cycle to obtain the position change and angle change of the sensor positioning data. The reliability of the sensing positioning data is obtained by comparing the position change with the allowable position change and the angle change with the maximum angle change.
3. The method according to claim 1, characterized in that, The step of weightedly fusing the sensor positioning data and the predicted positioning information to obtain the current positioning information of the handling equipment includes: The predicted positioning information and the state prediction covariance of the handling equipment in the current positioning period are calculated based on the historical positioning information and the mileage data of the previous positioning period. The state prediction covariance is used to characterize the prediction uncertainty of the position prediction based on the mileage data. Based on the state prediction covariance of the current positioning cycle and the preset measurement noise covariance, the fusion weight coefficient of the current positioning cycle is calculated; the measurement noise covariance characterizes the estimation of the measurement accuracy of the sensor positioning data. Based on the fusion weight coefficient of the current positioning period, the predicted positioning information and the sensor positioning data are weighted and calculated to obtain the current positioning information, and the state estimation covariance of the next positioning period is updated based on the fusion weight coefficient and the state prediction covariance.
4. The method according to claim 3, characterized in that, The step of calculating the predicted positioning information and the state prediction covariance of the handling equipment based on the historical positioning information and the mileage data from the previous positioning cycle includes: The state estimation covariance updated in the previous positioning cycle is used as the state estimation covariance for the current positioning cycle. The state estimation covariance of the current positioning cycle is summed with the preset system process noise covariance to obtain the state prediction covariance of the current positioning cycle; wherein, the system process noise covariance is used to characterize the estimation of the degree of error accumulation of the driving mileage data within a unit cycle. The step of calculating the fusion weight coefficient for the current positioning cycle based on the state prediction covariance and the preset measurement noise covariance includes: The fusion weighting coefficient is obtained by calculating the ratio of the sum of the state prediction covariance and the measurement noise covariance. The step of updating the state estimation covariance for the next positioning cycle based on the fusion weight coefficients and the state prediction covariance includes: Subtract the fusion weight coefficient from the preset total coefficient value to obtain the difference; The difference is multiplied by the state prediction covariance of the current positioning cycle to obtain the updated state estimation covariance.
5. The method according to claim 1, characterized in that, The method further includes: In response to the first positioning cycle of entering the handling equipment, the current positioning information is initialized based on the sensor positioning data received within the first positioning cycle; The initialized current location information is assigned to the driving mileage data, which serves as the starting point for accumulating the mileage data of the handling equipment; After obtaining the actual change in the sensor positioning data and determining the reliability of the sensor positioning data based on a comparison between the actual change and the predicted change, the method further includes: If the credibility is determined not to meet the preset conditions, the current location information is determined based on the driving mileage data; After outputting the current location information, the method further includes: The mileage data of the handling equipment for the next positioning cycle is calibrated based on the current positioning information corresponding to the current positioning cycle.
6. The method according to claim 1, characterized in that, The mileage data includes the mileage and heading angle of the transport equipment in the current positioning cycle; the calculation of the mileage data of the transport equipment in the current positioning cycle based on the motion characteristics of the current positioning cycle includes: The tire speed and rotation angle of the drive wheels of the handling equipment during the current positioning cycle are obtained; The tire speed and rotation angle are calculated based on the kinematic model of the transport equipment to obtain the real-time vehicle speed and angular velocity of the transport equipment. By integrating the real-time vehicle speed and angular velocity, the travel distance and heading angle of the transport equipment in the current positioning cycle are obtained.
7. A positioning device for semiconductor handling equipment, characterized in that, The device includes: The first acquisition module is used to acquire the motion characteristics of the handling equipment in the current positioning cycle; The calculation module is used to calculate the mileage data of the handling equipment in the current positioning cycle based on the motion characteristics of the current positioning cycle and the kinematic model of the handling equipment. The second acquisition module is used to acquire the sensing and positioning data output by the preset external sensors for the handling equipment; The first determining module is used to determine the predicted change of the sensing positioning data within the current positioning cycle based on the motion characteristics. The second determining module is used to obtain the actual change of the sensing positioning data within the current positioning period, and determine the reliability of the sensing positioning data based on the comparison between the actual change and the predicted change. The prediction module is used to predict the current position of the handling equipment based on the historical positioning information of the handling equipment in the historical positioning period and the mileage data of the current positioning period if the confidence level meets the preset conditions, so as to obtain the predicted positioning information. The fusion module is used to perform weighted fusion of the sensor positioning data and the predicted positioning information to obtain the current positioning information of the handling equipment.
8. A computer device 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 6.
9. A readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.
10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.