PCB routing control method and routing equipment

By acquiring PCB processing data and equipment status information, the optimal routing path is determined and multi-axis collaborative motion parameters are adjusted. This solves the problem of low collaborative efficiency of existing PCB routing equipment in small-batch, multi-variety production, and achieves seamless connection and rapid parameter switching between multiple machines, thereby improving production efficiency.

CN120857356APending Publication Date: 2025-10-28JIANGXI LIANYI ELECTRONICS SCI & TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510824422.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-19
Publication Date
2025-10-28

AI Technical Summary

Technical Problem

Existing PCB routing equipment lacks flexible production capacity when facing the demand for small-batch, multi-variety production. The lack of unified communication interfaces and data interaction standards between equipment leads to low collaboration efficiency, inability to share processing data in real time, and independent operation of equipment results in idling or task conflicts.

Method used

By acquiring PCB processing data, multiple router tasks, and real-time equipment status information, the optimal router path is determined, and routers are performed based on multi-axis collaborative motion parameters. The motion parameters are monitored and adjusted in real time to achieve seamless connection between multiple devices.

Benefits of technology

It improves the collaborative efficiency of multiple milling machines, supports multi-variety, small-batch production, allows for quick switching of processing programs and parameters, and enhances the overall automation level of the processing equipment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120857356A_ABST
    Figure CN120857356A_ABST
Patent Text Reader

Abstract

The invention is applicable to the technical field of PCB routing, and particularly relates to a PCB routing control method, which comprises the following steps: acquiring PCB processing data, a plurality of routing tasks and real-time state information of each piece of processing equipment; obtaining an optimal routing path according to the PCB processing data, each routing task and each piece of real-time state information; determining multi-axis cooperative motion parameters according to the optimal routing path; acquiring quality data of the processing equipment after board milling according to the multi-axis cooperative motion parameters; and adjusting multi-axis cooperative motion parameters according to the quality data. Therefore, according to the PCB routing control method provided by the invention, the problem of low collaborative efficiency of processing equipment in the existing PCB routing technology can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of PCB routing technology, and particularly relates to PCB routing control methods and routing equipment. Background Technology

[0002] PCB routing is a crucial step in PCB manufacturing. It involves using a CNC router according to a preset program to precisely cut and drill holes in the PCB board using a high-speed rotating router blade, transforming the original PCB workboard into a finished board that meets specific specifications.

[0003] While some PCB routing machines have achieved automated loading and unloading in existing technologies, the overall level of automation still needs improvement. Faced with the demands of small-batch, multi-variety production, the machines lack flexible production capabilities, making it difficult to quickly switch processing programs and adjust process parameters. The lack of a unified communication interface and data exchange standard between multiple routing machines results in the inability to share equipment status and processing data in real time, leading to low collaboration efficiency. Each machine operates independently, and processing data cannot flow between machines, causing idle runs or task conflicts. Therefore, current PCB routing technology suffers from low collaboration efficiency among processing equipment. Summary of the Invention

[0004] This application provides a PCB routing control method and routing equipment, which can solve the problem of low collaborative efficiency of processing equipment.

[0005] In a first aspect, embodiments of this application provide a PCB routing board control method, including: The system acquires PCB processing data, multiple router tasks, and real-time status information of each device in the processing equipment. The PCB processing data reflects the design layout and processing requirements of the PCB board, the router tasks include processing area, processing accuracy, and processing time, and the real-time status information reflects the current operating status of the processing equipment. The optimal routing path is obtained based on the PCB processing data, each routing task, and each real-time status information; wherein, the optimal routing path includes the optimal timing path for the processing equipment to execute each routing task, and the optimal timing path includes the path and timestamp. Determine the multi-axis cooperative motion parameters based on the optimal gong plate path; Obtain the quality data of the milling plate after the processing equipment performs milling based on the multi-axis coordinated motion parameters; The multi-axis coordinated motion parameters are adjusted based on the mass data.

[0006] The technical solutions described in this application embodiment have at least the following technical effects: The PCB routing control method provided in this application acquires PCB processing data, multiple routing tasks, and real-time status information of each device in the processing equipment; obtains the optimal routing path based on the PCB processing data, each routing task, and the real-time status information; determines multi-axis collaborative motion parameters based on the optimal routing path; acquires the quality data of the processing equipment after routing according to the multi-axis collaborative motion parameters; and adjusts the multi-axis collaborative motion parameters based on the quality data. Therefore, the PCB routing control method provided in this application, through real-time status monitoring, optimal timing path planning, dynamic parameter adjustment, and quality closed-loop control, facilitates seamless connection of multiple routing machines, supports multi-variety, small-batch production, rapid switching of processing programs and parameters, and improves the collaborative efficiency of processing equipment.

[0007] In one possible implementation of the first aspect, obtaining the optimal routing path based on the PCB processing data, each of the routing tasks, and each of the real-time status information includes: Multiple first router paths are obtained based on the PCB processing data, each router task, and each real-time status information; wherein, the first router path is the path by which the processing equipment executes each router task, and the path is composed of a series of processing points that the processing equipment needs to pass through during the processing. Multiple second gonging paths are obtained based on each of the first gonging paths and each of the gonging tasks; wherein, the second gonging path includes the path and timestamp of the processing equipment executing each of the gonging tasks; The optimal gong path is determined based on each of the second gong path.

[0008] In one possible implementation of the first aspect, the real-time status information includes real-time position and real-time resource information, the real-time resource information including tool wear status and PCB board dimensional allowance; obtaining multiple first router paths based on the PCB processing data, each router task, and each real-time status information includes: A processing area model is established based on the PCB processing data; wherein, the processing area model is a model that divides the PCB board into a series of processing units; Multiple target processing point groups are obtained based on the real-time status information and the gong board tasks described above. Multiple first gong board paths are obtained based on the processing area model, each of the real-time locations, and each of the target processing point groups.

[0009] In one possible implementation of the first aspect, obtaining multiple target processing point groups based on each of the real-time status information and each of the gong board tasks includes: Based on the real-time location of each device in the processing equipment and the corresponding resource requirement information of each gong board task; The first gong board task of each device in the processing equipment is determined based on the resource demand information and the real-time resource information. The target processing point set is obtained based on each of the real-time locations and the corresponding first gong board task; The target processing point group is determined based on the target processing point set of each of the gong board tasks and the processing equipment.

[0010] In one possible implementation of the first aspect, obtaining multiple first gong board paths based on the processing area model, each of the real-time positions, and each of the target processing point groups includes: Multiple initial path combinations are obtained based on the processing area model, the target processing point of the processing equipment in each target processing point group, and the real-time position of the corresponding equipment. The corresponding collision region is determined based on the processing area model and each of the initial path combinations; The corresponding collision position and collision direction are obtained based on each of the initial path combinations and the corresponding collision regions; The corresponding adjustment direction is obtained based on each of the collision positions and the corresponding collision directions; The first gong board path is obtained based on each of the initial path combinations and the corresponding adjustment direction.

[0011] In one possible implementation of the first aspect, determining the optimal gong board path based on each of the second gong board paths includes: The total processing distance and total processing time are determined according to each of the second gong board paths; wherein, the total processing distance is the sum of the processing path lengths of each processing device in the second gong board path, and the total processing time is the sum of the processing times of each processing device in the second gong board path; The optimal gong path is obtained based on the total processing distance and the total processing time of each of the second gong paths.

[0012] In one possible implementation of the first aspect, the multi-axis coordinated motion parameters include the position and velocity of each of the gongs along the X, Y, and Z axes; determining the multi-axis coordinated motion parameters based on the optimal gong path includes: The motion trajectory in the plane is determined based on the optimal gong path; The feed depth is determined based on the PCB processing data and the optimal router path. The multi-axis coordinated motion parameters are obtained based on the motion trajectory and the feed depth.

[0013] In one possible implementation of the first aspect, the quality data includes burr height, hole wall perpendicularity, and groove width; acquiring the quality data after the processing equipment performs milling based on the multi-axis coordinated motion parameters includes: Obtain point cloud data of the PCB board; The burr region, hole region, and groove region are determined based on the point cloud data. The quality data is obtained based on the burr area, the hole area, and the groove area.

[0014] In one possible implementation of the first aspect, adjusting the multi-axis cooperative motion parameters based on the mass data includes: The adjustment direction is determined based on the aforementioned quality data; The multi-axis coordinated motion parameters are adjusted according to the adjustment direction and the processing area model.

[0015] Secondly, embodiments of this application provide a PCB routing board control device, comprising: The first acquisition module is used to acquire PCB processing data, multiple router tasks, and real-time status information of each device in the processing equipment; wherein, the PCB processing data is used to reflect the design layout and processing requirements of the PCB board, the router tasks include processing area, processing accuracy and processing time, and the real-time status information is used to reflect the current operating status of the processing equipment; The optimal routing path module is used to obtain the optimal routing path based on the PCB processing data, each routing task, and each real-time status information; wherein, the optimal routing path includes the optimal timing path for the processing equipment to execute each routing task, and the optimal timing path includes a path and a timestamp. A multi-axis cooperative motion parameter module is used to determine the multi-axis cooperative motion parameters based on the optimal gong board path; The second acquisition module is used to acquire the quality data of the processing equipment after the milling plate is made according to the multi-axis coordinated motion parameters; An adjustment module is used to adjust the multi-axis coordinated motion parameters based on the mass data.

[0016] Thirdly, embodiments of this application provide a router device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the method as described in any one of the first aspects above.

[0017] Fourthly, embodiments of this application provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the method described in any of the first aspects above.

[0018] Fifthly, embodiments of this application provide a computer program product that, when run on a router, causes the router to perform the method described in any one of the first aspects.

[0019] It is understood that the beneficial effects of the second to fifth aspects mentioned above can be found in the relevant descriptions in the first aspect mentioned above, and will not be repeated here. Attached Figure Description

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

[0021] Figure 1 This is a schematic flowchart of a PCB routing control method provided in an embodiment of this application; Figure 2 This is a schematic diagram illustrating the implementation flow of steps S200, S210, S212, S213, and S230 in a PCB routing control method provided in an embodiment of this application. Figure 3 This is a schematic diagram of the implementation process of steps S300, S400 and S500 in the PCB routing control method provided in an embodiment of this application; Figure 4 This is a schematic diagram of the PCB routing control device provided in the embodiments of this application; Figure 5 This is a schematic diagram of the structure of the gong plate device provided in the embodiments of this application. Detailed Implementation

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

[0023] It should be understood that, when used in this application specification and the appended claims, the term "comprising" indicates the presence of the described features, integrals, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components and / or a collection thereof.

[0024] It should also be understood that the term “and / or” as used in this application specification and the appended claims means any combination of one or more of the associated listed items and all possible combinations, and includes such combinations.

[0025] As used in this application specification and the appended claims, the term "if" may be interpreted, depending on the context, as "when," "once," "in response to determination," or "in response to detection." Similarly, the phrase "if determined" or "if detected [the described condition or event]" may be interpreted, depending on the context, as meaning "once determined," "in response to determination," "once detected [the described condition or event]," or "in response to detection [the described condition or event]."

[0026] Furthermore, in the description of this application and the appended claims, the terms "first," "second," "third," etc., are used only to distinguish descriptions and should not be construed as indicating or implying relative importance.

[0027] References to "one embodiment" or "some embodiments" as described in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.

[0028] While some PCB routing machines have achieved automated loading and unloading, the overall level of automation still needs improvement. Faced with the demands of small-batch, multi-variety production, the machines lack flexible production capabilities, making it difficult to quickly switch processing programs and adjust process parameters. The lack of a unified communication interface and data exchange standard between multiple routing machines results in the inability to share equipment status and processing data in real time, leading to low collaboration efficiency. Each machine operates independently, and processing data cannot flow between machines, causing idle runs or task conflicts. Therefore, current PCB routing technology suffers from low collaboration efficiency among processing equipment.

[0029] To address the aforementioned issues, this application provides a PCB routing control method and routing equipment. The method involves acquiring PCB processing data, multiple routing tasks, and real-time status information of each device in the processing equipment; obtaining the optimal routing path based on the PCB processing data, each routing task, and the real-time status information; determining multi-axis collaborative motion parameters based on the optimal routing path; acquiring quality data of the processing equipment after routing according to the multi-axis collaborative motion parameters; and adjusting the multi-axis collaborative motion parameters based on the quality data. Therefore, the PCB routing control method provided in this application, through real-time status monitoring, optimal timing path planning, dynamic parameter adjustment, and quality closed-loop control, facilitates seamless integration of multiple routing machines, supports multi-variety, small-batch production, allows for rapid switching of processing programs and parameters, and improves the collaborative efficiency of the processing equipment.

[0030] The PCB routing control method provided in this application embodiment can be applied to routing equipment. In this case, the routing equipment is the execution subject of the PCB routing control method provided in this application embodiment. This application embodiment does not impose any restrictions on the specific type of routing equipment.

[0031] For example, a milling machine may include a control device and a processing device. The control device is communicatively connected to the processing device, and the processing device includes multiple milling machines equipped with multiple milling cutters. For example, the control device may be a cellular phone, cordless phone, Session Initiation Protocol (SIP) phone, mobile phone, tablet computer, laptop computer, ultra-mobile personal computer (UMPC), netbook, desktop computer, handheld device with wireless communication capabilities, computing device or other processing device connected to a wireless modem, computer, laptop computer, handheld communication device, handheld computing device, etc., but is not limited to these.

[0032] To better understand the PCB routing control method provided in the embodiments of this application, the specific implementation process of the PCB routing control method provided in the embodiments of this application will be described by way of example below.

[0033] Figure 1 A schematic flowchart of a PCB routing control method provided in an embodiment of this application is shown. The PCB routing control method includes: S100 acquires PCB processing data, multiple routing tasks, and real-time status information of each device in the processing equipment. The PCB processing data reflects the design layout and processing requirements of the PCB board; the routing tasks include the processing area, processing accuracy, and processing time; and the real-time status information reflects the current operating status of the processing equipment.

[0034] For example, the design layout of the PCB board (including design parameters such as the number of PCB layers, copper thickness, and hole diameter (e.g., 6-layer board, copper thickness 2oz, minimum hole diameter 0.2mm)) can be obtained through Gerber file parsing. The processing requirements (e.g., line width / spacing tolerance ±0.05mm, impedance control 50Ω±10%) can be extracted using CAM software. The PCB graphic is divided into multiple sub-tasks, i.e., router tasks, according to the processing area (e.g., task 1 - border cutting, task 2 - inner layer slots, task 3 - gold finger forming). Each router task is associated with processing accuracy (e.g., task 1 accuracy ±0.02mm, task 2 accuracy ±0.01mm) and estimated time, i.e., processing time (e.g., task 1 takes 120s). The operating status of the CNC router, such as axis position (X / Y / Z axis coordinates), spindle speed (e.g., currently 60000RPM), and temperature (e.g., spindle bearing temperature 75℃), can be read in real time through the OPC UA protocol.

[0035] S200 obtains the optimal routing path based on PCB processing data, each routing task, and real-time status information. The optimal routing path includes the optimal timing path for the processing equipment to execute each routing task, and this optimal timing path includes both the path and the timestamp.

[0036] For example, task allocation can be based on a genetic algorithm (GA), with the goal of minimizing the total processing time. The constraint is that the equipment accuracy is greater than or equal to the task accuracy requirement (e.g., equipment CNC_01 with an accuracy of 0.01mm can handle all tasks, while CNC_02 with an accuracy of 0.02mm only handles low-precision tasks). The A* algorithm is used to calculate the equipment movement path, taking into account tool change time (e.g., 15s for changing from a cutting tool to a drilling tool) and safety height (e.g., a 5mm Z-axis lift for clearance). Based on the path length and equipment speed (e.g., rapid traverse speed of 1000mm / s and processing speed of 100mm / s), the start and end times of each milling task are calculated to obtain the optimal timing path for the processing equipment to execute each milling task.

[0037] In one possible implementation, please refer to Figure 2 S200, based on PCB processing data, each router task, and real-time status information, obtains the optimal router path, including: S210: Based on PCB processing data, each router task, and real-time status information, multiple first router paths are obtained. Each first router path is the path taken by the processing equipment to execute each router task; the path consists of a series of processing points that the processing equipment needs to pass through during the processing.

[0038] For example, PCB processing data (such as Gerber files) can be converted into vector paths and discretized into point sets according to processing accuracy requirements. For instance, for a 100mm long straight line, 1000 points can be generated with a step size of 0.1mm. The actual processing path (offset Δx=Δy=1.0mm) can be calculated based on the router radius (e.g., radius 1.0mm). Invalid points are eliminated by combining the equipment travel range (e.g., X-axis 0-500mm, Y-axis 0-300mm) and the minimum safe height of the Z-axis (e.g., 5mm). The valid points are connected according to the router task order to form candidate paths for each equipment, i.e., multiple first router paths.

[0039] Optionally, please refer to Figure 2 Real-time status information includes real-time position and real-time resource information. Real-time resource information includes tool wear status and PCB dimensional allowance. S210: Based on PCB processing data, each router task, and each real-time status information, multiple first router paths are obtained, including: S211, Establish a processing area model based on PCB processing data. The processing area model is a model that divides the PCB board into a series of processing units.

[0040] For example, the PCB board can be divided into uniform grids according to the processing accuracy requirements based on the PCB processing data. For example, for high-density interconnect (HDI) boards, the grid cells can be divided into 0.5mm × 0.5mm units. Each grid cell is labeled with the material type (copper foil, substrate), thickness (e.g., 2oz copper thickness), and minimum allowable feature size (e.g., 0.075mm line width). Connected regions are identified using graph theory algorithms. For example, adjacent grids of the same type can be merged into processing regions by depth-first search (DFS) to obtain a processing region model.

[0041] S212, based on the real-time status information and the tasks of each gong board, obtains multiple target processing point groups.

[0042] For example, available tools can be selected based on real-time status information and the machining accuracy (e.g., ±0.02mm) of each router task. For instance, tools with wear ≤15μm can be used. The deviation between the actual PCB size (e.g., 500mm×400mm) and the design size (e.g., X-direction allowance +0.1mm) can be calculated based on real-time status information and each router task. Multiple router tasks that match the real-time resource information can be determined. Based on each router task, the K-means algorithm can be used to cluster the feature points in the same machining area (e.g., clustering 1000 drilling points into 20 groups to reduce idle travel) to obtain multiple target machining point groups.

[0043] For example, please refer to Figure 2 S212, based on the real-time status information and the tasks of each gong board, obtains multiple target processing point groups, including: S2121: Based on the real-time location of each device in the processing equipment and the tasks of each gong board, obtain the corresponding resource requirement information.

[0044] For example, the milling task can be broken down into atomic operations (such as cutting, drilling, and grooving), and the resource requirements for each operation can be determined. For example, cutting requires a tool with a radius of 1.0 mm and a spindle speed of ≥40,000 RPM; drilling requires a tool with a radius of 0.5 mm and a Z-axis pressing speed of ≤50 mm / s. The real-time position of the equipment (e.g., CNC_01 is currently at (100,200)) and resource status (e.g., the remaining tool inventory of CNC_01) can be queried. The movement cost of each piece of equipment in the machining equipment to the task area of ​​the corresponding milling task can be calculated (e.g., the distance from CNC_01 to the task area is 50 mm, and the estimated movement time is 3 seconds).

[0045] S2122, determine the first gong board task for each piece of equipment in the processing equipment based on resource demand information and real-time resource information.

[0046] For example, a cost matrix can be constructed based on resource requirement information: the cost of a device performing a task = movement time + tool change time (e.g., the cost of CNC_01 performing a cutting task = 3s movement + 2s tool change = 5s), and the optimal match can be solved; the device resources can be verified based on real-time resource information to see if they meet the resource requirement information (e.g., CNC_02 cannot be assigned a drilling task if it does not have a 0.5mm radius tool), and the first milling task of each device in the processing equipment can be obtained.

[0047] S2123, obtain the target processing point set based on each real-time position and the corresponding first gong board task.

[0048] For example, feature points corresponding to the task can be extracted from the first screed task (e.g., extracting the coordinates of all holes with a radius of 0.5mm from the drilling task), and the starting point can be optimized by considering the real-time position of the processing equipment (e.g., starting from (100,200) and prioritizing the processing of adjacent holes); the Douglas-Peucker algorithm can be applied to simplify the path (e.g., compressing 1000 points into 200 key points with an error of <0.01mm) to obtain the target processing point set.

[0049] S2124, determine the target processing point group based on the target processing point set of each gong board task and processing equipment.

[0050] For example, clustering can be performed according to the processing capacity of the processing equipment (e.g., grouping the drilling points of CNC_01 into 0.5mm and 0.8mm radii), merging points within a single tool change into a group (e.g., a 0.5mm radius tool can process a maximum of 20 holes continuously), and determining the target processing point group based on the priority of each milling board task (e.g., prioritizing tasks that are closer or have shorter time) and the load balancing allocation of the processing equipment.

[0051] Through the above steps S2121 to S2124, the Hungarian algorithm allocation reduces the standard deviation of equipment load and equalizes equipment utilization. Point group optimization reduces the number of tool changes per PCB. Path preprocessing based on equipment location reduces idle travel and improves movement efficiency. Dynamic task allocation helps improve real-time response capabilities and is suitable for small-batch, multi-variety production.

[0052] S213, based on the processing area model, each real-time location, and each target processing point group, multiple first gong board paths are obtained.

[0053] For example, within the processing area model, the shortest path can be searched using the Ant Colony Algorithm (ACO) based on each real-time location and each target processing point group. For instance, the pheromone evaporation coefficient ρ=0.1 can be set, and the optimal path can be found by iterating 50 times. The current position of the equipment (e.g., X=100, Y=200) can be used as the starting point of the path to avoid zeroing. The interference between the path and the fixture can be detected by using AABB bounding boxes (e.g., safety is determined when the Z-axis height is ≥10mm), resulting in multiple first milling plate paths.

[0054] Through the above steps S211 to S213, the tool wear sensing path planning extends tool life; region clustering reduces idle stroke and improves processing efficiency; real-time dimensional allowance compensation improves the finished product qualification rate and helps to improve dynamic adaptability; AABB detection reduces the risk of equipment collision and is suitable for processing complex irregular PCBs.

[0055] For example, please refer to Figure 2 S213, based on the processing area model, each real-time location, and each target processing point group, multiple first milling board paths are obtained, including: S2131, based on the processing area model, the target processing point of the processing equipment in each target processing point group, and the real-time position of the corresponding equipment, multiple initial path combinations are obtained.

[0056] For example, the PCB board can be divided into a grid (e.g., 0.5mm × 0.5mm), with each grid storing material type (copper / FR4), thickness, and hardness data. For instance, grid (5,5) represents a copper layer (35μm thick), and grid (10,10) represents an FR4 layer (1.6mm thick). Based on the target processing point of each processing device in each target processing point group and the real-time location of the corresponding device, the critical path (i.e., the processing area of ​​each device in the processing area model) and non-critical paths (e.g., the pathway areas of each device in the processing area model) are determined. Based on the critical path, non-critical path, and the real-time location of the corresponding device (e.g., device A at (0,0), device B at (100,100)), considering the different times each device spends on the critical and non-critical paths, the A* algorithm is used to plan multi-device paths, generating multiple initial path combinations.

[0057] S2132, the corresponding collision area is determined based on the processing area model and the combination of each initial path.

[0058] For example, the device path can be projected onto the processing area grid, and the occupancy time of each grid can be marked (e.g., device A occupies [0,2]s in grid (5,5)). If the occupancy time of two devices in the same grid overlaps, then the grid is a collision area. For example, if device A occupies [3,5]s in grid (10,10) and device B occupies [4,6]s in grid (10,10), then (10,10) is a collision area.

[0059] S2133, based on each initial path combination and the corresponding collision area, the corresponding collision position and collision direction are obtained.

[0060] For example, the grid coordinates, i.e. the collision position (e.g., (10,10)), can be extracted from the collision area; the entry and exit directions of the device in the collision grid can be determined according to each initial path combination, and the collision direction can be calculated. For example, if the entry direction of device A is (1,0) and the entry direction of device B is (0,1), then the collision direction is (1,1) (diagonal collision); the angle between the collision direction and the main movement direction of the device can be calculated. The smaller the angle, the higher the risk (e.g., an angle less than 30° is high risk).

[0061] S2134, the corresponding adjustment direction is obtained according to each collision position and the corresponding collision direction.

[0062] For example, if the angle between the collision direction and the main movement direction of the device is less than 30°, the device path direction can be adjusted before the collision position (e.g., device A changes from horizontal to 45° diagonal); if the angle is greater than 30°, the device speed or time window can be adjusted before the collision position (e.g., device A enters the collision grid 1 second later); devices on non-critical paths (e.g., device A) can be adjusted first.

[0063] S2135, the first gong board path is obtained according to each initial path combination and the corresponding adjustment direction.

[0064] For example, the initial path combinations after the direction adjustment can be smoothed (e.g., B-spline curve fitting), and a genetic algorithm can be used to optimize each initial path combination to obtain the corresponding first gong board path.

[0065] Through the above steps S2131 to S2135, the risk of multi-device collisions is reduced by identifying and adjusting the direction of the collision area; dynamic path adjustment helps to improve processing efficiency; dense wiring processing is supported; and the adjustment direction is associated with the collision area for storage, supporting subsequent quality traceability.

[0066] S220: Based on each first screw path and each screw task, multiple second screw paths are obtained. Each second screw path includes the path and timestamp of the processing equipment executing each screw task.

[0067] For example, an S-shaped acceleration / deceleration algorithm can be used to calculate the velocity curves of each first gong-plate path. For instance, the acceleration a = 2000 mm / s², the initial velocity v0 = 0, and the final velocity v e =100mm / s, calculate the acceleration segment length: L_acc=(v²-v0²) / (2a)=2.5mm; calculate the time at each point based on the speed curve and path length of the first milling plate path to obtain the path and timestamp of the processing equipment executing each milling plate task, for example, the time t at the i-th point. i =Σ(L i / v i ), where v i This represents the speed of the current segment.

[0068] S230, determine the optimal gong board path based on each second gong board path.

[0069] For example, a multi-objective optimization method can be adopted, such as an objective function: min(total processing time, equipment wear cost, energy consumption); Pareto optimization can be performed using the NSGA-II algorithm, for example: Option A: time 120s, energy consumption 500W; Option B: time 110s, energy consumption 600W; The TOPSIS method can be used to select the optimal compromise solution, for example, assigning a time weight of 0.6 and an energy consumption weight of 0.4, calculating a comprehensive score, and selecting the optimal gong board path based on the comprehensive score.

[0070] Through steps S210 to S230, discretization and tool compensation improve path accuracy, meeting HDI board processing requirements. S-shaped acceleration / deceleration reduces processing time compared to trapezoidal acceleration / deceleration, optimizing time efficiency. Multi-device task allocation improves overall equipment utilization and enhances equipment collaboration. Dynamic timestamp adjustment can address momentary equipment failures, improving equipment adaptability.

[0071] Optionally, please refer to Figure 2 S230, determine the optimal gong board path based on each second gong board path, including: S231, determine the corresponding total processing distance and total processing time based on each second milling board path. The total processing distance is the sum of the processing path lengths of all processing equipment in the second milling board path, and the total processing time is the sum of the processing times of all processing equipment in the second milling board path.

[0072] For example, the total processing distance can be obtained by summing the Euclidean distances for each device path in the second milling board path. For example, the path point sequence is: [(0,0),(10,0),(10,10)], and the distance is calculated as: √(10²+0²)+√(0²+10²)=20mm. The total processing time is obtained by calculating the time consumed by each line segment according to the speed curve (such as an S-shaped acceleration and deceleration model). For example, line segment 1 (10mm): at a constant speed of 50mm / s, the processing time is 0.2s. Line segment 2 (10mm): including the acceleration segment (a=2000mm / s²), the processing time is 0.15s.

[0073] S232, the optimal milling path is obtained based on the total processing distance and total processing time of each second milling path.

[0074] For example, an objective function can be constructed: min(total processing distance × weight 1 + total processing time × weight 2), such as weight 1 = 0.6 and weight 2 = 0.4. The TOPSIS method is used to score multiple second milling paths, select the comprehensive optimal solution, and check whether the second milling path meets the maximum travel of the equipment (such as the X-axis 500mm limit) and the tool life constraint (such as the cumulative cutting distance of a 1.0mm radius tool ≤ 2000mm) to obtain the optimal milling path.

[0075] Through steps S231 to S232 above, a flexible balance can be struck between total distance and total time through weight adjustment; tool life constraints reduce tool replacement frequency and reduce downtime; TOPSIS decision improves the overall quality score of the path; dynamic weight adjustment can cope with equipment failure (e.g., when a certain equipment fails, the priority weight of other equipment paths is automatically increased).

[0076] S300 determines the multi-axis coordinated motion parameters based on the optimal gong plate path.

[0077] For example, the coordinates of the endpoints of the path can be converted into pulse signals for each axis based on the optimal screw path (e.g., each microstep of the X-axis stepper motor is 0.9°, and 200 pulses are needed to move 1mm). Fifth-order polynomial interpolation is used to achieve speed smoothing (e.g., acceleration of 2000mm / s², jerk of 5000mm / s³) to determine the multi-axis coordinated motion parameters.

[0078] In one possible implementation, please refer to Figure 3 The multi-axis coordinated motion parameters include the position and velocity of each milling machine on the X, Y, and Z axes. S300 determines the multi-axis coordinated motion parameters based on the optimal milling plate path, including: S310 determines the motion trajectory in the plane based on the optimal gong board path.

[0079] For example, cubic spline interpolation can be performed on the discrete points of the optimal zigzag path to generate a continuous and smooth trajectory curve. For instance, input path points: [P1(0,0), P2(10,5), P3(20,0)], after interpolation, the function is obtained: y = f(x), where x∈[0,20]. The X / Y axis velocities are planned using a trapezoidal velocity profile. The acceleration segment accelerates from 0 to v_max (e.g., 50 mm / s) with the maximum acceleration a_max (e.g., 2000 mm / s²). The constant velocity segment maintains v_max. The deceleration segment decelerates from v_max to 0.

[0080] S320 determines the feed depth based on PCB processing data and the optimal routing path.

[0081] For example, the thickness and material type of each layer (e.g., copper foil thickness 35μm, FR4 substrate thickness 1.6mm) can be extracted from the PCB design data to calculate the cumulative depth. For example, cutting the third layer requires penetrating two copper foil layers (70μm) and two substrate layers (3.2mm), with a total depth of 3.27mm. The feed depth is automatically increased based on the tool wear amount Δz (e.g., wear of 0.05mm).

[0082] S330 obtains multi-axis coordinated motion parameters based on motion trajectory and feed depth.

[0083] For example, the motion trajectory (X / Y axis) and feed depth (Z axis) can be time-aligned to obtain multi-axis cooperative motion parameters. For instance, at t=0.5s, the X / Y axis is located at (5,2.18) and the Z axis depth is 1.6mm; at t=1.0s, the X / Y axis is located at (10,5) and the Z axis depth is 3.27mm. The Z axis feed speed is adjusted according to the material cutting force model: for the copper layer, the feed speed f_copper=0.1mm / s; for the substrate layer, the feed speed f_FR4=0.05mm / s.

[0084] Through the above steps S310 to S330, cubic spline interpolation reduces the acceleration fluctuation of the X / Y axes, which helps to improve the smoothness of the trajectory; dynamic depth compensation reduces the cutting depth error, which helps to improve the depth control accuracy; speed coupling control matches the Z-axis feed speed with the material cutting force, extends tool life, and helps to improve the efficiency of multi-axis collaboration; real-time depth monitoring can automatically adjust parameters when the tool deviates (such as triggering an alarm when the actual Z-axis depth > the set value by 0.05mm), enhancing the ability to handle anomalies.

[0085] S400 acquires the quality data of the milling machine after it has produced the milling plate based on the multi-axis coordinated motion parameters.

[0086] For example, an industrial robot equipped with multiple sensors (such as a laser micrometer, machine vision, coordinate measuring machine, etc.) can be used to collect quality data after the milling process. For instance, the X / Y coordinate deviation between two points on the top and bottom of the hole wall can be measured, and the tilt angle can be calculated to obtain the perpendicularity of the hole wall.

[0087] In one possible implementation, please refer to Figure 3 The quality data includes burr height, hole wall perpendicularity, and groove width. S400 acquires the quality data after the machining equipment performs milling based on multi-axis coordinated motion parameters, including: S410 acquires point cloud data of the PCB board.

[0088] For example, a laser line scanning 3D sensor (such as the Keyence LR-Z series) can be used to scan the PCB surface at a resolution of 0.05mm. The scanning frequency is set to 50kHz, and approximately 500,000 points are acquired in a single scan. Statistical outlier removal is applied to remove noise points, the average distance between each point and its 50 neighboring points is calculated, and outliers with a distance greater than 3σ are removed to obtain the point cloud data of the PCB board.

[0089] S420 determines the burr region, hole region, and groove region based on point cloud data.

[0090] For example, based on point cloud data, the vertical distance to the reference plane can be calculated for each point. A burr threshold is used to filter and form a burr region point cloud. The DBSCAN algorithm is used to cluster the burr points, setting the neighborhood radius to 0.1 mm and the minimum number of points to 50, to obtain the burr region. The normal vector of the hole edge point is perpendicular to the PCB surface (e.g., the angle between the normal vector and the reference plane normal vector is >85°). Points with a normal vector perpendicularity >85° in the point cloud data are retained to form hole edge candidate points. Hough transform is used to fit a circle to the edge candidate points to obtain the center and radius of the hole. The depth difference between the point inside the hole and the hole edge point is calculated. If the depth is >0.5 mm, it is confirmed as a hole region. PCA is performed on the local area of ​​the point cloud to obtain the main direction (major axis) and secondary direction (minor axis). Regions with an aspect ratio >3 are retained as slot candidate regions. Straight lines are fitted to the slot edge points according to the slot candidate regions to obtain the center line and width of the slot and determine the slot region.

[0091] S430, quality data is obtained based on the burr area, hole area and groove area.

[0092] For example, the vertical distance between the highest point and the ideal surface can be extracted in the burr region: the ideal surface is fitted by RANSAC plane (error threshold 0.02mm), burr height = max(z_burr) - z_plane; the hole region is fitted by cylinder, the angle θ between the axis and the Z axis is calculated, and the perpendicularity error = 90° - θ; the groove width is sampled every 1mm along the groove centerline and the average value is taken.

[0093] Through the above steps S410 to S430, the point cloud resolution lowers the burr detection limit, which helps to improve detection accuracy; a single scan can simultaneously acquire data on three types of defects: burrs, holes, and grooves, without the need for three independent inspections; the use of the region growing algorithm helps to improve the segmentation accuracy of complex groove types (such as stepped grooves); storing point cloud data supports the re-analysis of different quality parameters in the later stage.

[0094] The S500 adjusts the multi-axis coordinated motion parameters based on mass data.

[0095] For example, fuzzy PID control methods can be used to adjust multi-axis coordinated motion parameters based on quality data. For instance, fuzzy rules include increasing spindle speed when burr height exceeds the limit (e.g., >0.1mm). Alternatively, historical milling plate data can be used to train a BP network, for example, with slot width deviation as input and tool radius compensation as output.

[0096] In one possible implementation, please refer to Figure 3 The S500 adjusts multi-axis coordinated motion parameters based on mass data, including: S510, determine the adjustment direction based on quality data.

[0097] For example, parameters such as burr height, hole wall perpendicularity, and groove width deviation can be mapped to the [0,1] range. For instance: burr height standard value: less than or equal to 0.1mm is acceptable (1 point), 0.1mm~0.2mm is a warning (0.5 points), and greater than 0.2mm is unacceptable (0 points); perpendicularity error standard value: less than or equal to 1° is acceptable (1 point), 1°~2° is a warning (0.5 points), and greater than 2° is unacceptable (0 points); weights are allocated according to product requirements: burr height weight 30%, hole wall perpendicularity 30%, and groove width deviation 40%. The wall perpendicularity weight is 40%, and the groove width weight is 30%; a comprehensive score is calculated; if the comprehensive score is less than 0.7, an adjustment mechanism is triggered: if the burr height exceeds the standard, the Z-axis feed speed is reduced (to reduce cutting force) or the X / Y axis speed is increased (to reduce material residue); if the hole wall perpendicularity exceeds the standard, the tool path tilt angle is adjusted (e.g., from 90° to 89.5°) or the Z-axis acceleration is reduced (to reduce vibration); if the groove width deviates, the tool radius compensation value is corrected (e.g., from +0.05mm to +0.03mm).

[0098] S520 adjusts the multi-axis coordinated motion parameters according to the adjustment direction and the machining area model.

[0099] For example, the PCB board can be divided into a grid, with each grid storing material type (copper / FR4), thickness, and hardness data; the Z-axis feed speed is adjusted according to the material hardness, and the X / Y / Z-axis velocity coupling is optimized using a genetic algorithm according to the adjustment direction. NURBS (non-uniform rational B-spline) interpolation is used to achieve smooth coordinated motion of the X / Y / Z axes, resulting in the adjusted multi-axis coordinated motion parameters.

[0100] Through steps S510 to S520 above, a closed loop of quality data → direction adjustment → parameter optimization is used to reduce burr height and perpendicularity errors; dynamic adjustment of feed speed for different material regions (copper / FR4) achieves regional adaptive machining, reducing machining time; genetic algorithm optimization reduces the coupling error between X / Y axis speed and Z axis feed speed, extends tool life, and improves multi-axis collaborative efficiency; adjustment parameters are associated with quality data and stored to support later quality traceability (e.g., if the groove width deviation of a certain batch exceeds the standard, it can be traced back to the Z axis feed speed adjustment record).

[0101] It should be understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.

[0102] Corresponding to the PCB routing control method described in the above embodiments, this application also provides a PCB routing control device, the various modules of which can implement the various steps of the PCB routing control method. Figure 4A structural block diagram of the PCB routing control device provided in the embodiments of this application is shown. For ease of explanation, only the parts related to the embodiments of this application are shown.

[0103] Reference Figure 4 The device includes: The first acquisition module is used to acquire PCB processing data, multiple router tasks, and real-time status information of each device in the processing equipment; wherein, the PCB processing data is used to reflect the design layout and processing requirements of the PCB board, the router tasks include processing area, processing accuracy and processing time, and the real-time status information is used to reflect the current operating status of the processing equipment; The optimal routing path module is used to obtain the optimal routing path based on the PCB processing data, each routing task, and each real-time status information; wherein, the optimal routing path includes the optimal timing path for the processing equipment to execute each routing task, and the optimal timing path includes a path and a timestamp. A multi-axis cooperative motion parameter module is used to determine the multi-axis cooperative motion parameters based on the optimal gong board path; The second acquisition module is used to acquire the quality data of the processing equipment after the milling plate is made according to the multi-axis coordinated motion parameters; An adjustment module is used to adjust the multi-axis coordinated motion parameters based on the mass data.

[0104] It should be noted that the information interaction and execution process between the above modules are based on the same concept as the method embodiments of this application. For details on their specific functions and technical effects, please refer to the method embodiments section, which will not be repeated here.

[0105] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. Furthermore, the specific names of the functional units and modules are only for easy differentiation and are not intended to limit the scope of protection of this application. The specific working process of the units and modules in the above device can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.

[0106] This application also provides a gong plate device. Figure 5This is a schematic diagram of the structure of a gong plate device provided in one embodiment of this application. Figure 5 As shown, the router device 6 of this embodiment includes: at least one processor 60 ( Figure 5 Only one is shown in the image), at least one memory 61 ( Figure 5 (Only one is shown in the image) and a computer program 62 stored in the at least one memory 61 and executable on the at least one processor 60, wherein when the processor 60 executes the computer program 62, it causes the router device 6 to perform the steps in any of the above-described PCB router control method embodiments, or causes the router device 6 to perform the functions of each module / unit in the above-described device embodiments.

[0107] For example, the computer program 62 may be divided into one or more modules / units, which are stored in the memory 61 and executed by the processor 60 to complete this application. The one or more modules / units may be a series of computer program instruction segments capable of performing a specific function, which describe the execution process of the computer program 62 in the milling device 6.

[0108] The milling machine 6 may include a control device and a processing device. The control device is communicatively connected to the processing device. The control device may be a desktop computer, laptop, handheld computer, or cloud server, etc. The control device may include, but is not limited to, a processor 60 and a memory 61. Those skilled in the art will understand that... Figure 5 The example shown is merely an illustration of router device 6 and does not constitute a limitation on router device 6. It may include more or fewer components than shown, or combine certain components, or different components, such as input / output devices, network access devices, buses, etc.

[0109] The processor 60 can be a Central Processing Unit (CPU), or it can be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or any conventional processor.

[0110] In some embodiments, the memory 61 may be an internal storage unit of the circuit board device 6, such as a hard disk or memory of the circuit board device 6. In other embodiments, the memory 61 may be an external storage device of the circuit board device 6, such as a plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, etc., equipped on the circuit board device 6. Further, the memory 61 may include both internal storage units and external storage devices of the circuit board device 6. The memory 61 is used to store operating systems, applications, bootloaders, data, and other programs, such as the program code of computer programs. The memory 61 can also be used to temporarily store data that has been output or will be output.

[0111] This application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps in any of the above method embodiments.

[0112] This application provides a computer program product that, when run on a router, causes the router to perform the steps described in any of the above method embodiments.

[0113] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments of this application can be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include at least: any entity or device capable of carrying computer program code to a circuit board device, a recording medium, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunication signal, and a software distribution medium, such as a USB flash drive, a portable hard drive, a magnetic disk, or an optical disk.

[0114] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.

[0115] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0116] In the embodiments provided in this application, it should be understood that the disclosed milling plate device and method can be implemented in other ways. For example, the milling plate device embodiments described above are merely illustrative. For instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interfaces, devices, or units, and may be electrical, mechanical, or other forms.

[0117] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0118] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.

Claims

1. A PCB routing board control method, characterized in that, The method is applied to a milling machine, the milling machine including a control device and a processing device, the control device being communicatively connected to the processing device, the processing device including multiple milling machines equipped with multiple milling cutters; the method includes: The system acquires PCB processing data, multiple router tasks, and real-time status information of each device in the processing equipment. The PCB processing data reflects the design layout and processing requirements of the PCB board, the router tasks include processing area, processing accuracy, and processing time, and the real-time status information reflects the current operating status of the processing equipment. The optimal routing path is obtained based on the PCB processing data, each routing task, and each real-time status information; wherein, the optimal routing path includes the optimal timing path for the processing equipment to execute each routing task, and the optimal timing path includes the path and timestamp. Determine the multi-axis cooperative motion parameters based on the optimal gong plate path; Obtain the quality data of the milling plate after the processing equipment performs milling based on the multi-axis coordinated motion parameters; The multi-axis coordinated motion parameters are adjusted based on the mass data.

2. The PCB routing control method as described in claim 1, characterized in that, The step of obtaining the optimal routing path based on the PCB processing data, each routing task, and each real-time status information includes: Multiple first router paths are obtained based on the PCB processing data, each router task, and each real-time status information; wherein, the first router path is the path by which the processing equipment executes each router task, and the path is composed of a series of processing points that the processing equipment needs to pass through during the processing. Multiple second gonging paths are obtained based on each of the first gonging paths and each of the gonging tasks; wherein, the second gonging path includes the path and timestamp of the processing equipment executing each of the gonging tasks; The optimal gong path is determined based on each of the second gong path.

3. The PCB routing control method as described in claim 2, characterized in that, The real-time status information includes real-time location and real-time resource information, wherein the real-time resource information includes tool wear status and PCB board dimensional allowance; the process of obtaining multiple first router paths based on the PCB processing data, each router task, and each real-time status information includes: A processing area model is established based on the PCB processing data; wherein, the processing area model is a model that divides the PCB board into a series of processing units; Multiple target processing point groups are obtained based on the real-time status information and the gong board tasks described above. Multiple first gong board paths are obtained based on the processing area model, each of the real-time locations, and each of the target processing point groups.

4. The PCB routing control method as described in claim 3, characterized in that, The process of obtaining multiple target processing point groups based on the real-time status information and the gong board tasks includes: Based on the real-time location of each device in the processing equipment and the corresponding resource requirement information of each gong board task; The first gong board task of each device in the processing equipment is determined based on the resource demand information and the real-time resource information. The target processing point set is obtained based on each of the real-time locations and the corresponding first gong board task; The target processing point group is determined based on the target processing point set of each of the gong board tasks and the processing equipment.

5. The PCB routing control method as described in claim 3, characterized in that, The process of obtaining multiple first milling board paths based on the processing area model, each of the real-time locations, and each of the target processing point groups includes: Multiple initial path combinations are obtained based on the processing area model, the target processing point of the processing equipment in each target processing point group, and the real-time position of the corresponding equipment. The corresponding collision region is determined based on the processing area model and each of the initial path combinations; The corresponding collision position and collision direction are obtained based on each of the initial path combinations and the corresponding collision regions; The corresponding adjustment direction is obtained based on each of the collision positions and the corresponding collision directions; The first gong board path is obtained based on each of the initial path combinations and the corresponding adjustment direction.

6. The PCB routing control method as described in claim 2, characterized in that, The step of determining the optimal gong board path based on each of the second gong board paths includes: The total processing distance and total processing time are determined according to each of the second gong board paths; wherein, the total processing distance is the sum of the processing path lengths of each processing device in the second gong board path, and the total processing time is the sum of the processing times of each processing device in the second gong board path; The optimal gong path is obtained based on the total processing distance and the total processing time of each of the second gong paths.

7. The PCB routing control method as described in claim 1, characterized in that, The multi-axis coordinated motion parameters include the position and velocity of each of the gong machines on the X, Y, and Z axes; determining the multi-axis coordinated motion parameters based on the optimal gong plate path includes: The motion trajectory in the plane is determined based on the optimal gong path; The feed depth is determined based on the PCB processing data and the optimal router path. The multi-axis coordinated motion parameters are obtained based on the motion trajectory and the feed depth.

8. The PCB routing control method as described in claim 1, characterized in that, The quality data includes burr height, hole wall perpendicularity, and groove width; obtaining the quality data after the processing equipment performs milling based on the multi-axis coordinated motion parameters includes: Obtain point cloud data of the PCB board; The burr region, hole region, and groove region are determined based on the point cloud data. The quality data is obtained based on the burr area, the hole area, and the groove area.

9. The PCB routing control method as described in claim 1, characterized in that, The step of adjusting the multi-axis coordinated motion parameters based on the mass data includes: The adjustment direction is determined based on the aforementioned quality data; The multi-axis coordinated motion parameters are adjusted according to the adjustment direction and the processing area model.

10. A milling machine, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the method as described in any one of claims 1 to 9.