Substrate edge finding positioning method, device, storage medium and program product
By acquiring the real-time trigger signal of the edge-finding photoelectric sensor during the robot's movement, calculating and compensating for the substrate position deviation, the problem of low edge-finding positioning accuracy caused by the non-constant speed of the servo module is solved, and the precise placement of the substrate is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHENZHEN SHENGDAKANG TECH CO LTD
- Filing Date
- 2026-04-28
- Publication Date
- 2026-07-24
AI Technical Summary
Existing automated edge-finding and positioning equipment suffers from low accuracy in substrate edge-finding and positioning due to the inconsistent movement speed of the servo module.
By acquiring the real-time trigger signal of the edge-finding photoelectric sensor during the robot's movement, the positional deviation of the substrate in the X and Y axes is calculated, and the target placement coordinates are determined using the preset edge-finding compensation value. The robot is then driven to move the substrate to the target coordinates to complete precise positioning.
It improves the accuracy of substrate edge-finding and positioning, reduces positioning deviation caused by speed fluctuations, and ensures that the substrate can be accurately placed.
Smart Images

Figure CN122121612B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of positioning technology, and in particular to a substrate edge-finding and positioning method, device, storage medium, and program product. Background Technology
[0002] Most current automated edge-finding and positioning equipment adopts a servo module-driven sensor movement detection technology. The basic working principle is: the motion control unit drives the X-axis and Y-axis servo modules to move the substrate installed at the end, so that the sensor or the edge of the substrate physically touches or is triggered by a signal threshold, thereby determining the edge coordinates of the substrate.
[0003] Due to limitations in mechanical and physical characteristics, control logic response delays, and external environmental factors (such as temperature changes and vibration interference), the actual movement speed of the servo module is difficult to maintain an absolutely constant. The trigger position is calculated based on the integral of the movement speed or the encoder pulse count. Therefore, speed fluctuations can cause the calculated position to differ from the actual physical position, reducing the accuracy of the substrate edge-finding positioning. Summary of the Invention
[0004] The main objective of this application is to provide a substrate edge-finding and positioning method, device, storage medium, and program product, which aims to solve the technical problem of low accuracy in substrate edge-finding and positioning.
[0005] To achieve the above objectives, this application proposes a substrate edge-finding and positioning method, the substrate edge-finding and positioning method comprising:
[0006] The real-time trigger signal fed back by the edge-finding photoelectric sensor during the robot's movement of the target substrate is obtained, and the real-time substrate position is determined based on the real-time trigger signal;
[0007] Based on the real-time substrate position and the taught edge-finding reference position, calculate the positional deviation of the target substrate in the X-axis and Y-axis directions;
[0008] The target placement coordinates are determined based on the position deviation and the preset edge-finding compensation value, wherein the preset edge-finding compensation value is determined based on the taught placement position and the taught edge-finding reference position.
[0009] The robot is driven to move the target substrate to the target placement coordinates, perform the substrate placement action, and complete the substrate edge finding and positioning.
[0010] In one embodiment, the step of acquiring the real-time trigger signal fed back by the edge-finding photoelectric sensor during the robot's movement of the target substrate includes:
[0011] The real-time trigger signal of the edge-finding photoelectric sensor is read when the robot moves the target substrate to the taught edge-finding reference position;
[0012] The real-time substrate position includes the first substrate position. The step of calculating the positional deviation of the target substrate in the X-axis and Y-axis directions based on the real-time substrate position and the taught edge-finding reference position includes:
[0013] Based on the position of the first substrate and the taught edge-finding reference position, calculate the linear positional deviation of the target substrate in the X-axis and Y-axis directions, as well as the offset angle of the target substrate relative to the horizontal plane.
[0014] In one embodiment, the step of determining the target placement coordinates based on the position deviation and a preset edge-finding compensation value includes:
[0015] The target placement coordinates are determined based on the linear position deviation and the preset edge-finding compensation value.
[0016] Before the step of moving the target substrate to the target placement coordinates by the driving robot, the method further includes:
[0017] The robot is driven to correct the angle of the target substrate based on the offset angle, and then obtain the target substrate position of the edge-finding photoelectric sensor again.
[0018] When the difference between the target substrate position and the edge-finding reference position is greater than a preset value, the angle of the target substrate is further corrected according to the target substrate position and the edge-finding reference position, and the process returns to the step of obtaining the target substrate position of the edge-finding photoelectric sensor again, until the difference between the target substrate position and the edge-finding reference position is less than or equal to the preset value, and the step of calculating the driving robot to move the target substrate to the target placement coordinates according to the first substrate position and the taught edge-finding reference position is executed.
[0019] In one embodiment, a calibration substrate is mounted on the end effector of the robot, and the edge-finding photoelectric sensor includes a first sensor and a second sensor in the X-axis direction, and a third sensor in the Y-axis direction. Before the step of acquiring the real-time trigger signal fed back by the edge-finding photoelectric sensor during the robot's movement of the target substrate, the method further includes:
[0020] The robot is controlled to move linearly along the Y-axis, so that the X-axis edge of the calibration substrate passes through the sensing areas of the first and second sensors in sequence, and then moves linearly along the X-axis, so that the Y-axis edge of the calibration substrate passes through the sensing area of the third sensor, and this process is repeated multiple times.
[0021] When the edge of the calibration substrate blocks any sensor, the historical trigger signal output by the corresponding sensor is acquired, and the spatial position of the sensor is determined based on the average value of the multiple acquired historical trigger signals.
[0022] In one embodiment, the real-time trigger signal includes a first trigger signal, a second trigger signal, and a third trigger signal; the real-time substrate position includes a second substrate position; and the step of acquiring the real-time trigger signal fed back by the edge-finding photoelectric sensor during the robot's movement of the target substrate includes:
[0023] During the process of the robot moving the target substrate according to the preset motion path, the first trigger signal, the second trigger signal and the third trigger signal respectively fed back by the corresponding sensors when the edge of the target substrate blocks the first sensor, the second sensor and the third sensor are obtained;
[0024] The step of determining the position of the second substrate based on the real-time trigger signal includes:
[0025] The position of the second substrate is determined based on the spatial position of the sensor, the offset of each edge of the calibration substrate relative to the tool center point of the robot, and the first, second, and third trigger signals.
[0026] In one embodiment, the step of determining the position of the second substrate based on the spatial position of the sensor, the offset of each edge of the calibration substrate relative to the tool center point of the robot, and the first trigger signal, the second trigger signal, and the third trigger signal includes:
[0027] Based on the first trigger signal, the second trigger signal, the third trigger signal, and the offset, calculate the first spatial point, the second spatial point, and the third spatial point on the edge of the target substrate that correspond to the first sensor, the second sensor, and the third sensor, respectively.
[0028] Based on the positional coincidence constraint of the first spatial point, the second spatial point, the third spatial point and the spatial position of the sensor, and the rigid body constraint that the relative distance between the first spatial point, the second spatial point and the third spatial point is consistent with the geometric dimensions of the target substrate, a set of geometric constraint equations for the position of the second substrate of the target substrate is established.
[0029] Solve the set of geometric constraint equations to obtain the position of the second substrate.
[0030] In one embodiment, the step of determining the position of the second substrate based on the spatial position of the sensor, the offset of each edge of the calibration substrate relative to the tool center point of the robot, and the first trigger signal, the second trigger signal, and the third trigger signal further includes:
[0031] Based on the positional coincidence constraint between the first spatial point, the second spatial point, the third spatial point and the spatial position of the sensor, and the rigid body constraint that the relative distance between the first spatial point, the second spatial point and the third spatial point is consistent with the geometric dimensions of the target substrate, a nonlinear objective function including position residual term and size residual term is established.
[0032] Based on the signal rise slope of each sensor, the edge confidence factor of each sensor is calculated, and the edge confidence factor is used as the preset weighting coefficient of the nonlinear objective function. The signal rise slope is determined based on the voltage change rate obtained within a preset time period after the edge of the target substrate blocks the corresponding sensor. The preset weighting coefficient is used to adjust the importance of the position residual term and the size residual term.
[0033] The nonlinear objective function is solved iteratively. In each iteration, the damping factor is adjusted according to the current estimated substrate position, and the rate of change of the size residual term is monitored. If the rate of change of the size residual term in two consecutive iterations shows an upward trend, the preset weight coefficient is reduced until the size residual term enters a downward trend and the preset weight coefficient is restored. When the iteration termination condition is met, the second substrate position is obtained.
[0034] In addition, to achieve the above objectives, this application also proposes a substrate edge-finding and positioning device, which includes: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the substrate edge-finding and positioning method described above.
[0035] In addition, to achieve the above objectives, this application also proposes a storage medium, which is a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, it implements the steps of the substrate edge-finding and positioning method described above.
[0036] In addition, to achieve the above objectives, this application also provides a computer program product, which includes a computer program that, when executed by a processor, implements the steps of the substrate edge-finding and positioning method described above.
[0037] One or more technical solutions proposed in this application have at least the following technical effects:
[0038] This application obtains the real-time trigger signal from the edge-finding photoelectric sensor during the robot's movement of the target substrate, and determines the real-time substrate position based on the real-time trigger signal. Since the edge-finding reference position has been predetermined during the teaching phase, and a preset edge-finding compensation value has been predetermined based on the taught placement position and the taught edge-finding reference position, the dynamic error caused by speed fluctuations is converted into a predictable residual term. During actual operation, the positional deviation of the target substrate in the X and Y axes is calculated based on the real-time substrate position and the taught edge-finding reference position. Based on the positional deviation and the preset edge-finding compensation value, the target placement coordinates are determined. This reduces the positioning deviation caused by the non-constant speed at the moment of triggering, drives the robot to move the target substrate to the target placement coordinates, performs the substrate placement action, completes the substrate edge-finding positioning, and improves the accuracy of substrate edge-finding positioning. Attached Figure Description
[0039] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0040] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0041] Figure 1 This is a flowchart illustrating an embodiment of the substrate edge-finding and positioning method of this application.
[0042] Figure 2 A schematic diagram of the edge-finding and positioning mechanism provided in Embodiment 1 of the substrate edge-finding and positioning method of this application;
[0043] Figure 3 A schematic diagram of the first scenario of the edge-finding and positioning mechanism provided in Embodiment 1 of the substrate edge-finding and positioning method of this application;
[0044] Figure 4 A schematic diagram of a second scenario for the edge-finding and positioning mechanism provided in Embodiment 1 of the substrate edge-finding and positioning method of this application;
[0045] Figure 5 This is a flowchart illustrating Embodiment 2 of the substrate edge-finding and positioning method of this application.
[0046] Figure 6 This is a schematic diagram of the device structure of the hardware operating environment involved in the substrate edge-finding and positioning method in the embodiments of this application.
[0047] Explanation of icon numbers:
[0048] 1. Frame; 2. Carrier lifting arm; 3. Carrier clamping mechanism; 4. Six-axis robot; 5. Width adjustment servo module; 6. Vacuum adsorption assembly; 7. Edge finding sensor; 8. Main controller; 9. Base plate.
[0049] The purpose, features, and advantages of this application will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation
[0050] It should be understood that the specific embodiments described herein are merely illustrative of the technical solutions of this application and are not intended to limit this application.
[0051] To better understand the technical solution of this application, a detailed description will be provided below in conjunction with the accompanying drawings and specific implementation methods.
[0052] It should be noted that the executing entity in this embodiment can be a computing service device with data processing, network communication, and program execution functions, such as a tablet computer, personal computer, or mobile phone, or an electronic device capable of performing the above functions, such as a main controller of an edge-finding and positioning mechanism. The following description uses a main controller as an example to illustrate this embodiment and the subsequent embodiments.
[0053] Based on this, embodiments of this application provide a substrate edge-finding and positioning method, referring to... Figure 1 , Figure 1 This is a flowchart illustrating the first embodiment of the substrate edge-finding and positioning method of this application.
[0054] In this embodiment, the substrate edge-finding and positioning method includes steps S10 to S40:
[0055] Step S10: Obtain the real-time trigger signal fed back by the edge-finding photoelectric sensor during the robot's movement of the target substrate, and determine the real-time substrate position based on the real-time trigger signal;
[0056] Step S20: Calculate the positional deviation of the target substrate in the X-axis and Y-axis directions based on the real-time substrate position and the taught edge-finding reference position;
[0057] Step S30: Determine the target placement coordinates based on the position deviation and the preset edge-finding compensation value, wherein the preset edge-finding compensation value is determined based on the taught placement position and the taught edge-finding reference position.
[0058] Step S40: Drive the robot to move the target substrate to the target placement coordinates, perform the substrate placement action, and complete the substrate edge finding and positioning.
[0059] This embodiment of the substrate edge-finding and positioning method is applied to an edge-finding and positioning mechanism, which includes a main controller. The edge-finding and positioning mechanism also includes a frame, a carrier lifting arm, a six-axis robot, a width adjustment servo module, a carrier clamping mechanism, a vacuum adsorption assembly, an edge-finding sensor, and the main controller. These components work together to achieve the lifting, conveying, adsorption, correction, and placement and positioning of the IC carrier.
[0060] Specifically, refer to Figure 2 The frame is welded from aluminum profiles, and its bottom is equipped with leveling feet to ensure that the horizontal error of the positioning station does not exceed 0.02mm / m. The carrier lifting arm is mounted on the frame and uses a servo motor and reducer to drive a lead screw mechanism, causing the arm to rise and fall to lift the carrier carrying the substrate to a preset positioning height. The carrier clamping mechanism is mounted on the frame, located on one side of the carrier lifting arm. This mechanism uses a double-slide cylinder with a double-control solenoid valve. When the carrier is lifted to the positioning height, the clamping cylinder extends to clamp and fix the carrier, achieving initial positioning. The six-axis robot is mounted on the frame for transporting the substrate. The vacuum suction component is mounted on the end flange of the six-axis robot to smoothly lift the target substrate from the carrier and maintain reliable gripping of the substrate during transport. Figure 3 The width adjustment servo module is mounted on the frame and works in conjunction with the six-axis robot. After the robot picks up the target substrate, the width adjustment module moves to stretch and straighten the substrate to ensure that the substrate edges are straight, preparing for subsequent accurate inspection.
[0061] Reference Figure 4 The edge-finding sensor includes three sets of through-beam correction sensors. The first sensor X1 and the second sensor X2 are mounted along the X-axis, and the third sensor Y1 is mounted along the Y-axis. All three sets of through-beam correction sensors are positioned perpendicular to the path through which the robot transports the substrate. The distance between the transmitter and receiver of the sensors is required to be a fixed distance, for example, 800 mm, to accurately detect the edge position of the substrate and generate a trigger signal as it passes by.
[0062] The main controller employs an industrial programmable logic controller (PLC) and is paired with a touchscreen. The main controller is electrically connected to the six-axis robot, various sensors, and solenoid valves of the cylinders, receiving trigger signals from the sensors, calculating edge-finding and correction data, and outputting control commands to drive the robot and other actuators. Simultaneously, the touchscreen supports parameter setting, status monitoring, and fault alarm functions.
[0063] In this embodiment, during the process of the six-axis robot grasping the target substrate and moving along a preset motion path, the edge-finding photoelectric sensor continuously monitors the position of the substrate edge. When the edge of the target substrate sequentially blocks the first sensor, the second sensor, and the third sensor, the main controller acquires the real-time trigger signals fed back by each sensor in real time through a hardware interrupt. Based on these latched real-time trigger signals, the main controller determines the real-time position of the target substrate in the robot's base coordinate system at the current moment.
[0064] The real-time substrate position includes X-axis coordinates, Y-axis coordinates, and angle θ.
[0065] Specifically, the implementation method for obtaining the real-time trigger signal fed back by the edge-finding photoelectric sensor during the robot's movement of the target substrate can be:
[0066] The real-time trigger signal of the edge-finding photoelectric sensor is obtained when the robot moves the target substrate to the taught edge-finding reference position.
[0067] That is, during the automatic operation phase, after the six-axis robot grasps the target substrate, it first moves according to the pre-taught edge-finding reference position. When the robot moves to the taught edge-finding reference position, it stops moving. Theoretically, the edge of the target substrate should be exactly near the sensing area of each edge-finding photoelectric sensor. At this time, the main controller reads the real-time trigger signals fed back by each edge-finding photoelectric sensor. The real-time trigger signals reflect the actual relative positional relationship between the substrate edge and the sensor sensing area under the current robot pose.
[0068] Before performing automatic edge finding and positioning, this embodiment first performs a teaching phase to establish baseline parameters:
[0069] The carrier lifting arm is activated to raise the carrier containing the substrate from the conveyor line to the predetermined fixture positioning height. Once the carrier reaches the height, the carrier clamping cylinder extends to clamp and secure the carrier, achieving initial positioning. The six-axis robot moves to the preset suction position above the carrier, activates the vacuum suction component, and smoothly lifts the substrate from the carrier. After lifting, the width adjustment module stretches and straightens the substrate to ensure its edges are straight.
[0070] The robot moves the taut substrate to the edge-finding photoelectric sensor. The operator manually moves the robot to finely adjust its position, aligning the X-axis edge of the substrate with the midpoint of the sensing areas of the first and second sensors. Simultaneously, the operator observes the readings of both sensors, ensuring they are consistent and within the center of their scales. Similarly, the operator aligns the Y-axis edge of the substrate with the midpoint of the sensing area of the third sensor, also requiring its reading to be within the center of its scale. After adjustment, the current robot pose is saved as the taught edge-finding reference position to the main controller.
[0071] After the edge-finding reference position is taught and saved, the robot, maintaining a vacuum adsorption state, is manually moved by the operator to the target placement position of the substrate, ensuring that the substrate can be accurately placed at that location. After adjustment, the current robot pose is saved as the taught placement position to the main controller. Once both the edge-finding reference position and the placement position are taught and saved, the main controller automatically calculates the pose deviation between the taught placement position and the taught edge-finding reference position, i.e., the coordinates of the placement position minus the coordinates of the edge-finding reference position, to obtain the X, Y, and angle values that need to be compensated for during edge finding.
[0072] The operator inputs this parameter via the touchscreen and saves it to the PLC controller system as the preset edge-finding compensation value for the subsequent automatic operation phase. Thus, the teaching phase completes the establishment and calibration of all reference parameters.
[0073] In the specific operation, the X-axis coordinates, Y-axis coordinates, and angle θ of the real-time substrate position are compared with the X-axis coordinates, Y-axis coordinates, and angle θ of the taught edge-finding reference position to calculate the positional deviation of the target substrate in the X-axis direction, Y-axis direction, and angle.
[0074] In this embodiment, the real-time substrate position includes the first substrate position. It can be understood that the first substrate position is the actual pose of the substrate determined by the real-time trigger signal of the edge-finding photoelectric sensor when the robot is stationary after moving to the taught edge-finding reference position.
[0075] Specifically, the implementation of calculating the positional deviation of the target substrate in the X-axis and Y-axis directions based on the real-time substrate position and the taught edge-finding reference position can be as follows: based on the first substrate position and the taught edge-finding reference position, calculate the linear positional deviation of the target substrate in the X-axis and Y-axis directions, as well as the offset angle of the target substrate relative to the horizontal plane.
[0076] After the main controller obtains the position of the first substrate, it compares and calculates the position of the first substrate with the pre-stored taught edge-finding reference position. Specifically, the main controller extracts the X-axis coordinates, Y-axis coordinates, and angle θ of the first substrate position, and performs difference calculation with the X-axis coordinates, Y-axis coordinates, and angle θ of the taught edge-finding reference position to obtain the current linear position deviation of the target substrate (including ΔX and ΔY) and the offset angle (Δθ) relative to the horizontal plane.
[0077] After calculating the linear position deviation and offset angle of the target substrate, the main controller calls the pre-stored preset edge-finding compensation value. The main controller vector-adds the position deviation (including ΔX, ΔY and Δθ) with the preset edge-finding compensation value to calculate the final target placement coordinates.
[0078] The main controller sends the calculated target placement coordinates to the six-axis robot control system, driving the robot to smoothly move from its current position (near the edge-finding reference position) to the target placement coordinates. After the robot reaches the target placement coordinates and stabilizes, the main controller issues a command to shut down the vacuum adsorption component and execute the substrate placement action, precisely releasing the target substrate onto the target workstation.
[0079] The above-described method in this embodiment allows the edge-finding compensation value to be calibrated only once during equipment initialization or production changeover, and then reused in countless subsequent automatic runs, greatly simplifying the complexity of online calculations. At the same time, it ensures that no matter how the initial gripping position of the substrate changes, it can be accurately guided to the same target placement point, achieving unified compensation for dynamic errors and static offsets. The robot moves according to precise coordinate commands, improving the accuracy and consistency of positioning.
[0080] Specifically, the method for determining the target placement coordinates based on the position deviation and the preset edge-finding compensation value can be as follows:
[0081] Based on the linear position deviation and the preset edge-finding compensation value, the target placement coordinates are determined. Before the step of the driving robot moving the target substrate to the target placement coordinates, the driving robot corrects the angle of the target substrate based on the offset angle and obtains the target substrate position of the edge-finding photoelectric sensor again. When the difference between the target substrate position and the edge-finding reference position is greater than the preset value, the angle of the target substrate is further corrected based on the target substrate position and the edge-finding reference position, and the step of obtaining the target substrate position of the edge-finding photoelectric sensor again is returned until the difference between the target substrate position and the edge-finding reference position is less than or equal to the preset value. Then, the step of calculating the driving robot moving the target substrate to the target placement coordinates based on the first substrate position and the taught edge-finding reference position is executed.
[0082] Before calculating the target placement coordinates based on the linear position deviation and the preset edge-finding compensation value, an angle correction is first performed: the main controller drives the robot to rotate the C-axis according to the offset angle (Δθ) to correct the angle of the target substrate. After the correction is completed, the robot does not move immediately, but instead reads the real-time trigger signal of the edge-finding photoelectric sensor again to reacquire the current position of the target substrate and compares it with the taught edge-finding reference position.
[0083] If the angle difference obtained by comparison is greater than the preset value, it means that the angle correction has not yet met the accuracy requirements. Then, the offset angle is recalculated based on the new target substrate position, the angle of the target substrate is corrected again, and the check is repeated. This process is repeated until the angle difference between the target substrate position and the edge-finding reference position is less than or equal to the preset value, thus preventing placement deviations caused by inadequate angle correction in a single operation.
[0084] In other words, only after the angular accuracy meets the requirements is the subsequent step of calculating the linear position deviation based on the position of the first substrate and the taught edge-finding reference position, and determining the target placement coordinates in combination with the preset edge-finding compensation value, ultimately driving the robot to move to the target placement coordinates. This implementation method, through a step-by-step strategy of first correcting the angle in a closed loop and then calculating the translational deviation, ensures that the angular attitude of the substrate has reached an ideal state before final positioning, thereby completely avoiding the cumulative error and coupling interference caused by directly performing translational compensation due to unresolved angle errors. At the same time, due to the decoupling of angle and translation, the computational complexity of position compensation is reduced, and the positioning accuracy is improved.
[0085] Based on the first embodiment of this application, in the second embodiment of this application, the same or similar content as the above embodiment can be referred to the above description, and will not be repeated hereafter. On this basis, the end effector of the robot is equipped with a calibration substrate, and the edge-finding photoelectric sensor includes a first sensor and a second sensor in the X-axis direction, and a third sensor in the Y-axis direction. Please refer to... Figure 5 Before step S10, the substrate edge-finding and positioning method further includes steps S01~S02:
[0086] Step S01: Control the robot to move linearly along the Y-axis, so that the X-axis edge of the calibration substrate passes through the sensing areas of the first and second sensors in sequence, and then moves linearly along the X-axis, so that the Y-axis edge of the calibration substrate passes through the sensing area of the third sensor, and repeats the preset multiple times.
[0087] Step S02: When the edge of the calibration substrate blocks any sensor, the historical trigger signal output by the corresponding sensor is acquired, and the spatial position of the sensor is determined based on the average value of the historical trigger signals acquired multiple times.
[0088] Because the above solution requires the robot to come to a complete stop at the sensor to read stable values, and because each round of angle correction necessitates stopping, reading, calculating, adjusting, stopping again, and reading again, the cycle time increases significantly. For mass production (such as IC substrates), this multi-start-stop edge-finding method may not meet production capacity requirements.
[0089] This embodiment aims to improve both the efficiency and accuracy of edge finding and positioning.
[0090] First, the spatial position of the edge-finding photoelectric sensor is automatically calibrated: the main controller controls a six-axis robot, causing the calibration plate mounted at its end to move along a preset trajectory: first, it moves linearly along the Y-axis, so that the X-axis edge of the calibration plate passes through the sensing areas of the first and second sensors in sequence; then, it moves linearly along the X-axis, so that the Y-axis edge of the calibration plate passes through the sensing area of the third sensor. The above motion process is repeated multiple times according to the preset procedure.
[0091] During each movement, when the edge of the calibration substrate obstructs any sensor, the main controller acquires the historical trigger signal output by the corresponding sensor via a hardware interrupt and latches the robot pose at the moment of triggering. After the movement ends, the main controller, based on the robot pose latched for each trigger and the known geometric dimensions of the calibration substrate, uses forward kinematics to deduce the spatial coordinates of the sensors in the robot's base coordinate system at each trigger. It then averages the results of multiple preset calculations to ultimately determine the precise spatial positions of the first, second, and third sensors. This achieves automatic and high-precision calibration of the sensor mounting positions.
[0092] Specifically, the calibration substrate is a precisely sized substrate with straight edges, mounted on the robot's end effector, used to calibrate the spatial position of the edge-finding photoelectric sensor. Its geometric parameters have been pre-measured and stored in the main controller. The sensor spatial position refers to the pre-calibrated spatial coordinates of the first, second, and third sensors fixed in the robot's base coordinate system. Each sensor corresponds to a unique three-dimensional coordinate point, accurately describing the position of the optical axis center point between the sensor's transmitter and receiver in space.
[0093] This embodiment uses a calibration substrate to repeatedly move along a fixed trajectory to collect trigger signals, and takes the average of the multiple calculation results to determine the sensor's spatial position. This effectively eliminates the random error of a single measurement caused by factors such as small fluctuations in robot movement, differences in sensor response time, or environmental interference, and improves the calibration accuracy of the sensor's spatial position.
[0094] In this embodiment, the real-time trigger signal includes a first trigger signal, a second trigger signal, and a third trigger signal; the real-time substrate position includes a second substrate position; and the implementation method for obtaining the real-time trigger signal fed back by the edge-finding photoelectric sensor during the robot's movement of the target substrate can be:
[0095] During the process of the robot moving the target substrate according to the preset motion path, the first trigger signal, the second trigger signal, and the third trigger signal fed back by the corresponding sensors when the edge of the target substrate blocks the first sensor, the second sensor, and the third sensor are obtained.
[0096] That is, the first sensor, the second sensor, and the third sensor are three independent trigger signals that are fed back in real time by each sensor and are latched by hardware interruption when the edge of the target substrate successively blocks the first sensor, the second sensor, and the third sensor during the process of the robot continuously moving the target substrate according to the preset motion path.
[0097] The preset motion path refers to the pre-planned robot motion trajectory. The robot first moves in a straight line along the Y direction at a constant speed, so that the edge of the substrate in the X direction sweeps past the first and second sensors in sequence. Then it moves in a straight line along the X direction, so that the edge of the substrate in the Y direction sweeps past the third sensor. The robot does not decelerate or stop throughout the entire process.
[0098] Specifically, during the automatic operation phase, after the robot grasps the target substrate, it moves continuously at a constant speed along a preset motion path without decelerating or stopping. When the X-axis edge of the target substrate sequentially blocks the first and second sensors during its movement, the main controller acquires the first and second trigger signals fed back by the corresponding sensors in real time via hardware interrupts; when the Y-axis edge of the target substrate blocks the third sensor, the third trigger signal is acquired.
[0099] In this embodiment, the method of determining the position of the second substrate based on the real-time trigger signal can be: determining the position of the second substrate based on the spatial position of the sensor, the offset of each edge of the calibration substrate relative to the tool center point of the robot, and the first trigger signal, the second trigger signal, and the third trigger signal.
[0100] The main controller latches the robot's pose at the moment of triggering based on the first, second, and third trigger signals. Combined with the pre-calibrated sensor spatial positions and the offsets of each edge of the calibration substrate relative to the robot tool's center point, the actual pose of the target substrate during continuous movement—that is, the second substrate position—is determined. This enables precise capture of the substrate position during high-speed, continuous robot movement without requiring the robot to stop and wait.
[0101] In other words, the second substrate position is the actual pose of the target substrate at the trigger moment, calculated based on the first trigger signal, the second trigger signal, the third trigger signal, the sensor spatial position, and the geometric relationship between the substrate edge and the substrate during the continuous movement of the robot. The difference between the second substrate position and the first substrate position is that the first substrate position is determined by reading the signal after the robot stops at the edge-finding reference position, while the second substrate position is determined by dynamic flying camera method during the continuous movement of the robot.
[0102] The offset of each edge of the calibration substrate relative to the center point of the robot tool is obtained by pre-calibrating the fixed geometric relationship data of the points on each edge of the target substrate relative to the center point of the robot end tool, including the coordinate values of the edge points in the tool coordinate system. This offset is used to convert the robot pose into the coordinates of the spatial points of the substrate edge.
[0103] In one feasible implementation, the method of determining the position of the second substrate based on the spatial position of the sensor, the offset of each edge of the calibration substrate relative to the tool center point of the robot, and the first trigger signal, the second trigger signal, and the third trigger signal can be:
[0104] Based on the first trigger signal, the second trigger signal, the third trigger signal, and the offset, calculate the first spatial point, the second spatial point, and the third spatial point on the edge of the target substrate, respectively corresponding to the first sensor, the second sensor, and the third sensor; based on the positional coincidence constraint between the first spatial point, the second spatial point, and the third spatial point and the spatial position of the sensor, and the rigid body constraint that the relative distance between the first spatial point, the second spatial point, and the third spatial point is consistent with the geometric dimensions of the target substrate, establish a set of geometric constraint equations regarding the position of the second substrate of the target substrate; solve the set of geometric constraint equations to obtain the position of the second substrate.
[0105] Specifically, the main controller latches the robot pose at the moment of triggering based on the first trigger signal, the second trigger signal, and the third trigger signal, and combines the pre-calibrated offset of each edge of the calibration substrate relative to the center point of the robot tool, and calculates the first spatial point, the second spatial point, and the third spatial point on the edge of the target substrate corresponding to the first sensor, the second sensor, and the third sensor at the three triggering moments through the robot's forward kinematics.
[0106] That is, the first spatial point, the second spatial point, and the third spatial point refer to the spatial coordinates of three theoretical contact points on the edge of the substrate corresponding to the first sensor, the second sensor, and the third sensor, respectively, at the moment of triggering, calculated by the robot's forward kinematics based on the robot's pose latched by the first trigger signal, the second trigger signal, and the third trigger signal, combined with the offset of each edge of the calibration substrate relative to the robot's tool center point.
[0107] Two sets of geometric constraints are established: the first set is the position coincidence constraint, that is, the three spatial points must coincide with the pre-calibrated spatial positions of the first sensor, the second sensor, and the third sensor respectively in space; the second set is the rigid body constraint established according to the shape and size of the substrate, that is, the mutual distance between the three spatial points must be completely consistent with the theoretical geometric dimensions of the target substrate itself (for example, the distance between the first spatial point and the second spatial point should be equal to the length of the edge of the substrate in the X direction, and the distance between the first spatial point and the third spatial point should satisfy the rectangular geometric relationship of the substrate).
[0108] By combining these two sets of geometric constraints, a system of geometric constraint equations is constructed regarding the position of the second substrate on the target substrate. Solving this system of equations numerically yields a unique solution that satisfies all constraints, which represents the position of the second substrate. This ensures the accuracy and uniqueness of the pose calculation.
[0109] When there are minor calibration errors in the sensor or microscopic defects on the edge of the substrate, rigid body constraints can play a role in smoothing and correction, preventing the measurement error of a single sensor from being excessively amplified; while position coincidence constraints ensure a strict correspondence between the physical positions of the substrate and the sensor.
[0110] Assume the robot pose calculated based on the first sensor, second sensor, and third sensor are as follows: , and The first spatial point, the second spatial point, and the third spatial point are respectively: , and ;
[0111] The coordinates of the point on the edge of the substrate corresponding to the first sensor in the tool coordinate system are: The point corresponding to the second sensor is The point corresponding to the third sensor is ;but
[0112] ;
[0113] ;
[0114] ;
[0115] Wherein, Kinematics(T) represents the transformation matrix from the tool coordinate system to the robot base coordinate system determined by the robot pose.
[0116] Taking the left corner of the front edge of the substrate as the reference point, let its coordinates in the robot base coordinate system be... If the rotation angle of the substrate about the vertical axis is θ, then the direction vector of the front edge of the substrate is u = (cosθ, sinθ), and the vertical direction vector of the substrate is v = ( (sinθ, cosθ). Based on the substrate size and sensor mounting position, the coordinates of each trigger point relative to the reference point in the substrate coordinate system are pre-calibrated: the coordinates of the first sensor point are (d1, 0), the coordinates of the second sensor point are (d2, 0), and the coordinates of the third sensor point are (D, e), where D is the substrate length (along the front edge direction), and e is the offset (constant) in the substrate width direction. This yields the pre-defined set of geometric constraint equations:
[0117]
[0118] Solving the above system of geometric constraint equations yields:
[0119] .
[0120] That is, the preset geometric constraint equations take the second substrate position (X,Y,θ) of the target substrate as the unknown. By solving the preset geometric constraint equations, the unique substrate pose that satisfies all the constraints can be obtained.
[0121] Furthermore, the positional deviation is calculated based on the position of the second substrate and the position of the preset reference substrate. Based on the positional deviation and the preset edge-finding compensation value, the target placement coordinates are determined. Simultaneously, the robot is driven to move the target substrate to the target placement coordinates along the preset motion path, performing the substrate placement action and completing the substrate edge-finding positioning. Throughout the entire process, the robot does not stop and moves at a constant speed.
[0122] It should be noted that when the robot carries the substrate along the preset path, at the instant the substrate edge obstructs the sensor, the main controller directly latches the actual encoder angle values of each joint of the robot via a hardware interrupt. These actual encoder angle values are direct feedback of the robot's physical position, rather than values calculated based on a velocity model. Subsequently, the robot's forward kinematics converts these real encoder angle values into the spatial pose of the tool center point. Combined with the pre-calibrated offset of the substrate edge points in the tool coordinate system, the actual spatial coordinates of the first, second, and third spatial points on the substrate edge at the moment of triggering are deduced. No measurement or integration of motion speed is involved throughout the process, thus completely avoiding the core problem of inconsistent servo module speed. This fundamentally solves the problem of deviation between theoretical and actual positions caused by speed fluctuations. Furthermore, because the robot continuously moves along the preset path, edge-finding and localization efficiency is improved.
[0123] That is, by pre-determining the spatial position of the sensor, an absolute spatial reference frame independent of the motion mechanism is established for the system; and real physical trigger data is collected without interruption during continuous motion (uniform motion), avoiding efficiency loss and speed calculation error; through a multi-constraint geometric solution model, the collected discrete physical data is integrated into a precise substrate pose; thus improving efficiency while ensuring accuracy.
[0124] In one feasible implementation, the main controller can retrieve the substrate edge contour database of the target substrate of the batch according to the current production task, and obtain the standard size, shape and distribution information of common defect areas in the historical statistics of the substrate of the batch, such as the upper left corner of a certain batch of substrates being prone to chamfering, and the edge of a certain material substrate being prone to warping.
[0125] The robot carries the target substrate at a low speed (e.g., 100 mm / s) along a simplified pre-scanning trajectory, allowing the substrate edge to sequentially pass through the sensing areas of each sensor. During this process, the main controller acquires the raw signals from each sensor, extracts characteristic parameters such as signal rise slope and amplitude stability, and generates a real-time edge quality map. This edge quality map clearly marks high-quality areas (e.g., score > 80) and defective areas (e.g., score < 50) on the edge, with the continuous positions of the substrate edge as the horizontal axis and the quality score (0-100) as the vertical axis.
[0126] Furthermore, based on the following path generation constraints, an optimal flight path is calculated using an adaptive path generator:
[0127] Substrate geometric constraints: length, width, shape (rectangular / circular) of the substrate and sensor mounting position; mass constraints: the mass scores of the landing areas of the three trigger points (corresponding to the first, second, and third sensors) on the edge must all be higher than a preset threshold (e.g., 75 points); kinematic constraints: constant speed, acceleration and deceleration performance, and path smoothness requirements during robot flight.
[0128] For a rectangular substrate, the adaptive path generator automatically selects the two intervals with the highest quality scores on the edge in the X direction as the target trigger areas for the first and second sensors, and adjusts the starting offset of the robot's movement along the Y axis accordingly; at the same time, it selects the interval with the highest quality score on the edge in the Y direction as the target trigger area for the third sensor, and adjusts the starting point of the movement along the X axis.
[0129] For circular substrates, the adaptive path generator adjusts the traditional straight path of Y followed by X into a diagonal path along the radial direction of the substrate, enabling the sensor to sequentially scan the three points with the highest quality scores on the circumference.
[0130] For substrates made of light-transmitting or reflective materials, the adaptive path generator will pre-adjust the sensor's trigger threshold or signal amplification factor based on the material characteristics recorded in the database to compensate for the material's special influence on the optical path.
[0131] This allows the sensor trigger point to intelligently avoid defective areas such as chamfers, warps, and burrs on the edge of the substrate, and always selects the area with the smoothest edge and the clearest signal for detection, thereby greatly improving the reliability and consistency of the trigger signal at the physical acquisition level.
[0132] Finally, the robot performs its aerial photography at a preset constant speed (e.g., 500 mm / s) along the optimal path output by the adaptive path generator, without decelerating or stopping throughout the process. During the aerial photography, when the substrate edge obstructs the sensor, the main controller latches the robot's pose at the moment of triggering via a hardware interrupt and records the real-time edge quality map score corresponding to the trigger point for subsequent calculations. Thus, by introducing path optimization based on prior knowledge and real-time exploration, the aerial photography process actively adapts to individual substrate differences and local defects.
[0133] In one feasible implementation, a temporal-spatial coupling constraint condition, including the maximum allowable speed and radius of curvature limit, can be constructed based on the theoretical geometric dimensions of the target substrate, the installation offset angle of each edge-finding photoelectric sensor, and the preset minimum signal settling time. A signal-to-noise ratio gradient field covering the entire search area is then generated based on the substrate edge prediction position and an ambient light interference model. The aforementioned temporal-spatial coupling constraint condition, signal-to-noise ratio gradient field, and path generation constraint condition are input into an adaptive path generator. This adaptive path generator uses maximizing the path integral signal-to-noise ratio as its objective function and maintaining the dynamic field-of-view overlap rate between adjacent sensors within a preset safe range as its boundary condition. It searches and iterates in the configuration space, automatically avoiding low signal-to-noise ratio regions and smoothing speed abrupt changes, ultimately calculating an optimal flight path that satisfies both the robot's kinematic limits and ensures that all sensors are triggered in the best posture.
[0134] By constructing a signal-to-noise ratio gradient field and using it as the repulsive / attractive field source for the adaptive path generator, path planning no longer relies solely on geometric obstacle avoidance. Instead, it actively senses and tends towards spatial regions where steeper signal rising edges can be obtained, thereby increasing the upper limit of the edge confidence factor in subsequent solution steps and improving the final accuracy of pose calculation. Simultaneously, by introducing temporal-spatial coupling constraints and transforming the minimum signal settling time of the sensor into a dynamic constraint on path curvature and speed, the generated optimal flying path can strictly ensure that the robot's motion state when passing through key edge detection points is within the linear response region of the sensor. This avoids the speed exceeding the limit due to excessive local curvature, which can lead to signal distortion or missed detections in traditional fixed-speed path planning.
[0135] In actual industrial scenarios, sensor signals are easily affected by micro-defects on the substrate edge (such as chipping or burrs) or environmental interference, resulting in random jitter at the trigger time. Furthermore, traditional fixed-weight least squares solutions are difficult to adaptively distinguish between high-confidence and low-confidence measurement data.
[0136] In one feasible implementation, the step of determining the position of the second substrate based on the spatial position of the sensor, the offset of each edge of the calibration substrate relative to the tool center point of the robot, and the first trigger signal, the second trigger signal, and the third trigger signal further includes:
[0137] Based on the positional overlap constraints of the first, second, and third spatial points with the sensor's spatial location, and the rigid body constraint that the relative distances between the first, second, and third spatial points are consistent with the geometric dimensions of the target substrate, a nonlinear objective function including positional and dimensional residuals is established. Based on the signal rise slope of each sensor, an edge confidence factor for each sensor is calculated, and this edge confidence factor is used as a preset weighting coefficient for the nonlinear objective function. The signal rise slope is determined based on the voltage change rate obtained within a preset time period after the edge of the target substrate blocks the corresponding sensor. The preset weighting coefficient is used to adjust the importance of the positional and dimensional residuals. The nonlinear objective function is iteratively solved. In each iteration, the damping factor is adjusted based on the currently estimated substrate position, and the change rate of the dimensional residual is monitored. If the change rate of the dimensional residual shows an upward trend in two consecutive iterations, the preset value of the preset weighting coefficient is reduced until the dimensional residual enters a downward trend and recovers the preset weighting coefficient. When the iteration termination condition is met, the second substrate position is obtained.
[0138] Based on the positional coincidence constraints of the first, second, and third spatial points with the sensor's spatial position, and the rigid body constraint that the relative distances between these three spatial points are consistent with the geometric dimensions of the target substrate, a nonlinear objective function F = Rpos + λRdim is constructed, which includes a position residual term Rpos and a size residual term Rdim. The value of the nonlinear objective function reflects the degree of fit between the current position of the substrate and the ideal constraint conditions; the smaller the value, the more accurate the position. Since the residual terms have a nonlinear relationship with the pose parameters to be determined, it is called a nonlinear objective function.
[0139] The position residual term quantifies the sum of deviations between the first, second, and third spatial points and their corresponding sensor spatial positions. It can be expressed as the sum of squares of Euclidean distances. The size residual term quantifies the sum of deviations between the relative distances between the first, second, and third spatial points and the theoretical geometric dimensions of the target substrate. For example, if the substrate is rectangular, the size residual term includes deviations such as opposite side distances and diagonal distances.
[0140] The signal rising slope ki of each sensor is determined based on the voltage change rate obtained within a preset time period after the corresponding sensor is blocked at the edge of the target substrate. The edge confidence factor αi=ki / max(k1,k2,k3) is calculated and αi is introduced into the objective function as a preset weight coefficient to adjust the importance of the residual terms at the corresponding positions of each sensor. At the same time, the dynamic weight coefficient λ is initially set.
[0141] An improved damped least squares method is used to iteratively solve the objective function F: In each iteration, the damping factor μ(θ) is adjusted according to the angular deviation of the current estimated substrate position, so as to increase the damping to suppress oscillations at large angles and decrease the damping to accelerate convergence at small angles; at the same time, the rate of change of the dimensional residual term Rdim is monitored. If Rdim increases instead of decreasing in two consecutive iterations, it is determined that it has fallen into a local optimum. The virtual stiffness relaxation operation is automatically executed, and the dynamic weight coefficient λ is reduced by step size to temporarily relax the rigid body constraints and prioritize satisfying the position coincidence constraints until Rdim re-enters the downward trend and restores the value of λ.
[0142] When the gradient norm of the objective function F is less than the preset convergence accuracy or the maximum number of iterations is reached, the iteration is terminated, and the current pose parameters are output as the final second substrate position.
[0143] This implementation constructs a nonlinear objective function that includes position residuals and size residuals, and introduces the edge confidence factor calculated based on the rising slope of the signal as a preset weight coefficient into the solution process. This enables real-time evaluation and differentiated processing of sensor data quality. For sensors whose signals are unclear due to substrate edge chamfering, warping, or light transmission interference (i.e., small rising slope and low confidence), the weight of the corresponding position residual term is automatically reduced, effectively suppressing the interference of abnormal data on the pose calculation results and improving the method's noise resistance and robustness under complex working conditions.
[0144] Meanwhile, by introducing an adaptive damping factor linked to the angle deviation in the iterative solution, dynamic adjustment is achieved to ensure stable convergence with large deviations and fast convergence with small deviations, which not only guarantees the stability of the solution process but also improves the convergence efficiency.
[0145] Furthermore, by monitoring the changing trends of the dimensional residuals and performing virtual stiffness relaxation operations, the algorithm gains the ability to autonomously escape local optima. When the solution gets stuck in a local optimum due to dimensional tolerance mismatch or poor initial values, the algorithm can automatically and temporarily relax rigid body constraints, prioritizing the satisfaction of positional coincidence constraints to explore a better solution space. Once it escapes the local optimum, the weights of the rigid body constraints are restored, thus ensuring reliable convergence to the global optimum pose regardless of the initial substrate deviation or the quality of sensor data. This provides strong fault tolerance to real-world interference factors such as substrate edge defects, sensor signal fluctuations, and minor deformations of the equipment, significantly improving the field adaptability and long-term operational reliability of the edge-finding and positioning system.
[0146] It is understood that, in order to improve robustness and solution accuracy under non-ideal measurement conditions, this embodiment proposes to introduce a dynamic weighting mechanism based on the slope of the rising edge of the signal: by quantifying the edge quality (confidence factor) of each sensor signal, the weights of the position residual and the size residual in the nonlinear objective function are adjusted in real time, and an adaptive damping iteration strategy that monitors the rate of change of the size residual is used to automatically suppress the interference of low-quality data and prevent the algorithm from diverging during the solution process. Finally, while retaining the original high efficiency advantage, the fault tolerance of the substrate pose solution to abnormal data and the reliability of the final positioning result are enhanced.
[0147] It should be noted that the above examples are only for understanding this application and do not constitute a limitation on the substrate edge-finding and positioning method of this application. Any simple modifications based on this technical concept are within the protection scope of this application.
[0148] This application provides a substrate edge-finding and positioning device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the substrate edge-finding and positioning method in the above embodiment 1.
[0149] The following is for reference. Figure 6 The diagram illustrates a structural schematic suitable for implementing a substrate edge-finding and positioning device according to embodiments of this application. The substrate edge-finding and positioning device in these embodiments may include, but is not limited to, mobile terminals such as mobile phones, tablets, laptops, digital broadcast receivers, PDAs (Personal Digital Assistants), PMPs (Portable Media Players), and in-vehicle terminals (e.g., in-vehicle navigation terminals), as well as fixed terminals such as digital televisions and desktop computers. Figure 6 The substrate edge-finding and positioning device shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.
[0150] like Figure 6 As shown, the substrate edge-finding and positioning device may include a processing unit 1001 (e.g., a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 1002 or a program loaded from a storage device 1003 into a random access memory (RAM) 1004. The RAM 1004 also stores various programs and data required for the operation of the substrate edge-finding and positioning device. The processing unit 1001, ROM 1002, and RAM 1004 are interconnected via a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to the I / O interface 1006: input devices 1007 including, for example, a touch screen, touchpad, keyboard, mouse, image sensor, microphone, accelerometer, gyroscope, etc.; output devices 1008 including, for example, a liquid crystal display (LCD), speaker, vibrator, etc.; storage devices 1003 including, for example, magnetic tape, hard disk, etc.; and communication devices 1009. The communication device 1009 allows the substrate edge-finding and positioning device to communicate wirelessly or wiredly with other devices to exchange data. Although substrate edge-finding and positioning devices with various systems are shown in the figures, it should be understood that it is not required to implement or possess all of the systems shown. More or fewer systems may be implemented alternatively.
[0151] Specifically, according to the embodiments disclosed in this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device, or installed from storage device 1003, or installed from ROM 1002. When the computer program is executed by processing device 1001, it performs the functions defined in the methods of the embodiments disclosed in this application.
[0152] The substrate edge-finding and positioning device provided in this application, employing the substrate edge-finding and positioning method in the above embodiments, can solve the technical problem of low accuracy in substrate edge-finding and positioning. Compared with the prior art, the beneficial effects of the substrate edge-finding and positioning device provided in this application are the same as those of the substrate edge-finding and positioning method provided in the above embodiments, and other technical features in this substrate edge-finding and positioning device are the same as those disclosed in the method of the previous embodiment, and will not be repeated here.
[0153] It should be understood that the various parts disclosed in this application can be implemented using hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in any suitable manner in one or more embodiments or examples.
[0154] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
[0155] This application provides a computer-readable storage medium having computer-readable program instructions (i.e., a computer program) stored thereon, which are used to execute the substrate edge-finding and positioning method in the above embodiments.
[0156] The computer-readable storage medium provided in this application may be, for example, a USB flash drive, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, system, or device. The program code contained on the computer-readable storage medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination thereof.
[0157] The aforementioned computer-readable storage medium may be included in the substrate edge-finding and positioning device; or it may exist independently and not be assembled into the substrate edge-finding and positioning device.
[0158] The aforementioned computer-readable storage medium carries one or more programs, which, when executed by the substrate edge-finding and positioning device, cause the substrate edge-finding and positioning device to perform the aforementioned substrate edge-finding and positioning method.
[0159] Computer program code for performing the operations of this application can be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, and C++, and conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a Local Area Network (LAN) or a Wide Area Network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0160] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0161] The modules described in the embodiments of this application can be implemented in software or hardware. The names of the modules do not necessarily limit the functionality of the unit itself.
[0162] The readable storage medium provided in this application is a computer-readable storage medium that stores computer-readable program instructions (i.e., a computer program) for executing the above-described substrate edge-finding and positioning method, thereby solving the technical problem of low accuracy in substrate edge-finding and positioning. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in this application are the same as those of the substrate edge-finding and positioning method provided in the above embodiments, and will not be repeated here.
[0163] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the substrate edge-finding and positioning method described above.
[0164] The computer program product provided in this application can solve the technical problem of low accuracy in substrate edge location. Compared with the prior art, the beneficial effects of the computer program product provided in this application are the same as those of the substrate edge location method provided in the above embodiments, and will not be repeated here.
[0165] The above descriptions are merely some embodiments of this application and do not limit the scope of protection of this application. Any equivalent structural transformations made based on the technical concept of this application and the content of this specification and drawings, or direct / indirect applications in other related technical fields, are included within the scope of protection of this application. All actions involving the acquisition of signals, information, or data in this application are performed in accordance with the relevant data protection laws and policies of the country where the application is located and with authorization from the owner of the corresponding device.
Claims
1. A method for locating and positioning edges of a substrate, characterized in that, The substrate edge-finding and positioning method includes: The real-time trigger signal fed back by the edge-finding photoelectric sensor during the robot's movement of the target substrate is obtained, and the real-time substrate position is determined based on the real-time trigger signal; Based on the real-time substrate position and the taught edge-finding reference position, calculate the positional deviation of the target substrate in the X-axis and Y-axis directions; The target placement coordinates are determined based on the position deviation and the preset edge-finding compensation value, wherein the preset edge-finding compensation value is determined based on the taught placement position and the taught edge-finding reference position. The robot is driven to move the target substrate to the target placement coordinates, perform the substrate placement action, and complete the substrate edge finding and positioning; The robot's end effector is equipped with a calibration substrate. The edge-finding photoelectric sensor includes a first sensor and a second sensor in the X-axis direction, and a third sensor in the Y-axis direction. When the edge of the target substrate sequentially blocks the first sensor, the second sensor, and the third sensor, the real-time trigger signals fed back by each sensor are acquired in real time through hardware interrupt latching. The real-time trigger signals include a first trigger signal, a second trigger signal, and a third trigger signal. The real-time substrate position includes the position of the second substrate. The step of acquiring the real-time trigger signals fed back by the edge-finding photoelectric sensor during the robot's movement of the target substrate includes: During the process of the robot moving the target substrate according to the preset motion path, the first trigger signal, the second trigger signal and the third trigger signal respectively fed back by the corresponding sensors when the edge of the target substrate blocks the first sensor, the second sensor and the third sensor are obtained; The step of determining the position of the second substrate based on the real-time trigger signal includes: The position of the second substrate is determined based on the sensor spatial position, the offset of each edge of the calibration substrate relative to the tool center point of the robot, and the first trigger signal, the second trigger signal, and the third trigger signal. The sensor spatial position is used to characterize the position of the optical axis center point between the sensor transmitter and receiver in space. The step of determining the position of the second substrate based on the sensor's spatial position, the offset of each edge of the calibration substrate relative to the robot's tool center point, and the first, second, and third trigger signals includes: Based on the first trigger signal, the second trigger signal, the third trigger signal, and the offset, calculate the first spatial point, the second spatial point, and the third spatial point on the edge of the target substrate that correspond to the first sensor, the second sensor, and the third sensor, respectively. Based on the positional coincidence constraint between the first spatial point, the second spatial point, the third spatial point and the spatial position of the sensor, and the rigid body constraint that the relative distance between the first spatial point, the second spatial point and the third spatial point is consistent with the geometric dimensions of the target substrate, a nonlinear objective function including position residual term and size residual term is established. Based on the signal rise slope of each sensor, the edge confidence factor of each sensor is calculated, and the edge confidence factor is used as the preset weighting coefficient of the nonlinear objective function. The signal rise slope is determined based on the voltage change rate obtained within a preset time period after the edge of the target substrate blocks the corresponding sensor. The preset weighting coefficient is used to adjust the importance of the position residual term and the size residual term. The nonlinear objective function is solved iteratively. In each iteration, the damping factor is adjusted according to the current estimated substrate position, and the rate of change of the size residual term is monitored. If the rate of change of the size residual term in two consecutive iterations shows an upward trend, the preset weight coefficient is reduced until the size residual term enters a downward trend and the preset weight coefficient is restored. When the iteration termination condition is met, the second substrate position is obtained.
2. The substrate edge-finding and positioning method as described in claim 1, characterized in that, Before the step of acquiring the real-time trigger signal fed back by the edge-finding photoelectric sensor during the robot's movement of the target substrate, the method further includes: The robot is controlled to move linearly along the Y-axis, so that the X-axis edge of the calibration substrate passes through the sensing areas of the first and second sensors in sequence, and then moves linearly along the X-axis, so that the Y-axis edge of the calibration substrate passes through the sensing area of the third sensor, and this process is repeated multiple times. When the edge of the calibration substrate blocks any sensor, the historical trigger signal output by the corresponding sensor is acquired, and the spatial position of the sensor is determined based on the average value of the multiple acquired historical trigger signals.
3. A substrate edge-finding and positioning device, characterized in that, The substrate edge-finding and positioning device includes: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the substrate edge-finding and positioning method as described in any one of claims 1 to 2.
4. A storage medium, characterized in that, The storage medium is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by a processor, it implements the steps of the substrate edge-finding and positioning method as described in any one of claims 1 to 2.
5. A computer program product, characterized in that, The computer program product includes a computer program that, when executed by a processor, implements the steps of the substrate edge-finding and positioning method as described in any one of claims 1 to 2.
Citation Information
Patent Citations
Control method and device and storage medium
CN117622804A