A multi-axis linkage numerical control machine tool synchronous control method and system

By calculating the included angle sequence and generating the throat index interval, and combining the ant colony algorithm to optimize the multi-branch axis solution node graph, the problem of motion axis continuity and coordination of five-axis linkage CNC machine tools in narrow posture-restricted areas is solved, thereby improving the stability of the machining process and the surface quality.

CN122346068BActive Publication Date: 2026-11-06WUHAN JIA YOUJIA EQUIP MFG CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202610555583.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-04-24
Publication Date
2026-11-06
Estimated Expiration
2046-04-24

AI Technical Summary

Technical Problem

Existing technologies struggle to ensure the continuity and overall coordination of each motion axis within the narrow, restricted area of ​​a five-axis CNC machine tool, leading to unstable tool posture, increased trajectory deviation, and decreased surface quality.

Method used

The included angle sequence is calculated based on the tool position sequence of the machining program data, the throat index interval is determined, and a multi-branch axis solution node diagram is generated. The optimal branch sequence of the throat is searched using the ant colony algorithm, thereby realizing the synchronous control of the multi-axis linkage CNC machine tool.

Benefits of technology

It effectively avoids blind axis selection of the tool at complex geometric transition positions, improves the pertinence and rationality of tool motion planning, reduces the risk of sudden changes in rotation axis and imbalance between axis movements, improves the motion stability and synchronization of the machining process, reduces machining trajectory deviation and improves workpiece surface quality.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122346068B_ABST
    Figure CN122346068B_ABST
Patent Text Reader

Abstract

The application discloses a kind of multi-axis linkage numerical control machine tool synchronous control method and system, it is related to synchronous control technical field, including: the angle sequence is calculated based on tool position point sequence of machining program data, and throat band index interval is determined based on angle sequence;Multiple branch shaft solution node set is generated based on throat band index interval, and multiple branch shaft solution node graph is obtained based on multiple branch shaft solution node set and machining program data;Ant colony algorithm search is carried out to multiple branch shaft solution node graph, and throat band optimal branch sequence is obtained;Interpolation period sequence is generated based on tool position point sequence;Based on interpolation period sequence and throat band optimal branch sequence, the synchronous control of each motion axis of multi-axis linkage numerical control machine tool is carried out.The application reduces the risk of rotation axis mutation and imbalance between shafts.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of synchronous control technology, and in particular to a synchronous control method and system for multi-axis linkage CNC machine tools. Background Technology

[0002] Five-axis CNC machine tools are widely used in the side milling and finishing of complex curved surface parts such as impellers, impeller disks, and blades. During machining, the tool tip needs to move continuously along a predetermined spatial trajectory, and the tool posture needs to change continuously with the shape of the workpiece surface to ensure a reasonable contact state between the tool and the workpiece surface and avoid interference. In practical applications, CNC devices usually control the tool movement through tool tip point control, that is, when the rotary axis changes, compensation is made through the linear axis so that the tool tip always moves along the set trajectory. In the transition area between the blade root and the hub of the impeller or impeller disk, there is a narrow space area formed by the adjacent blades and hub structure. The selectable range of the tool axis direction in this area is significantly reduced, and the tool posture needs to continuously rotate and change along the machining path, which significantly restricts the spatial movement of the tool in this area. Under these circumstances, there are often multiple different combinations of machine tool axis positions corresponding to the tool point, and the motion paths of different combinations on the machine tool axes are quite different.

[0003] Within the aforementioned narrow, posture-restricted region, due to the reduced range of tool axis direction selection and continuous changes in tool posture, the same tool position point may correspond to multiple feasible axis position solutions. Existing technologies typically employ local continuity or simple rules for axis solution selection, lacking overall optimization of the axis solution path within the entire restricted region. When an unreasonable combination of axis position solutions is selected within this region, it can easily lead to axis solution switching between adjacent interpolation cycles, causing abrupt changes in the rotational axis motion. This is then converted into compensating motion of the linear axis through tool tip control, resulting in asynchronous motion between multiple axes. This leads to unstable tool posture, increased trajectory deviation, and decreased surface quality during machining. Existing methods struggle to simultaneously ensure the continuity and overall coordination of the motion of each axis within such restricted regions. Summary of the Invention

[0004] The purpose of this invention is to address the shortcomings of existing technologies that make it difficult to simultaneously ensure the continuity and overall coordination of the motion of each motion axis within such restricted areas, and to propose a synchronous control method and system for multi-axis linkage CNC machine tools.

[0005] To address the problems existing in the prior art, the present invention adopts the following technical solution:

[0006] A synchronous control method for a multi-axis linkage CNC machine tool includes:

[0007] S1. Calculate the included angle sequence based on the tool position sequence of the machining program data, and determine the throat index interval based on the included angle sequence;

[0008] S2. Generate a multi-branch axis solution node set based on the throat index interval, and obtain a multi-branch axis solution node diagram based on the multi-branch axis solution node set and machining program data;

[0009] S3. Use the ant colony algorithm to search the multi-branch axis solution node graph to obtain the optimal branch sequence of the throat.

[0010] S4. Generate an interpolation periodic sequence based on the knife point sequence;

[0011] S5. Based on the interpolation period sequence and the optimal branch sequence of the throat, the motion axes of the multi-axis linkage CNC machine tool are synchronously controlled.

[0012] Preferably, calculating the included angle sequence based on the tool position sequence of the machining program data includes:

[0013] The machining program data of the CNC system in a multi-axis linkage CNC machine tool is parsed and interpolated to obtain the tool position sequence;

[0014] Obtain the reference normal vector sequence that corresponds one-to-one with the knife point sequence;

[0015] Calculate the included angle sequence based on the reference normal vector sequence.

[0016] Preferably, determining the laryngeal girdle index interval based on the included angle sequence includes:

[0017] Based on the geometric data of the multi-axis linkage CNC machine tool, the geometric data of the cutting tool, and the geometric data of the workpiece, interference determination is performed on each cutting tool position in the cutting tool position sequence to obtain the feasible set of cutting tool axis directions;

[0018] The feasible tool axis direction set is subjected to direction extraction processing to obtain a feasible tool axis direction candidate set; wherein, the feasible tool axis direction candidate set includes multiple feasible tool axis directions;

[0019] Based on the shrinkage of the feasible set of the tool axis direction and the continuous change of the included angle sequence, the throat index interval is determined.

[0020] Preferably, the multi-branch axis solution node set is generated based on the throat index interval, including:

[0021] Based on the feasible candidate set of tool axis directions, inverse kinematics is performed on the tool position points within the throat index interval to obtain the axis position solution set.

[0022] The axis position solution set is processed into nodes to generate a multi-branch axis solution node set.

[0023] Preferably, the multi-branch axis solution node diagram is obtained, including:

[0024] The machining program data is parsed and interpolated to obtain the interpolation sequence;

[0025] Determine the previous cut point and the next cut point according to the interpolation order;

[0026] Connect each multi-branch axis solution node in the set of multi-branch axis solution nodes corresponding to the previous cut point to each multi-branch axis solution node in the set of multi-branch axis solution nodes corresponding to the next cut point to obtain a multi-branch axis solution node graph.

[0027] Preferably, obtaining the optimal branch sequence of the laryngeal girdle includes:

[0028] Calculate the edge cost of each connection in the multi-branch axial solution node graph;

[0029] Gather all edge costs to obtain an edge cost table;

[0030] Determine the heuristic information based on the edge cost table;

[0031] Based on the topology and heuristic information of the multi-branch axis solution node graph, the ant colony algorithm is used to search the multi-branch axis solution node graph to obtain the node path;

[0032] By performing branch mapping on the node paths, the optimal branch sequence of the larynx is obtained.

[0033] Preferably, generating an interpolation periodic sequence based on the knife point sequence includes:

[0034] Inverse kinematics solution is performed for each cutter point in the cutter point sequence to obtain the basic axis reference sequence;

[0035] Based on the throat index interval, a replacement process is performed on the basic axis reference sequence to obtain the global axis reference sequence;

[0036] An interpolated periodic sequence is generated based on a global axis reference sequence.

[0037] Preferably, synchronous control of each motion axis of a multi-axis CNC machine tool includes:

[0038] Based on the global axis reference sequence, the axis position is read for each interpolation cycle in the interpolation cycle sequence to obtain the interpolation command;

[0039] Based on the interpolation period, the laryngeal index range, and the optimal branch sequence of the laryngeal band, the branch identifier of the interpolation command is written to obtain the final interpolation command;

[0040] Based on the final interpolation command, the motion axes of the multi-axis CNC machine tool are synchronously controlled.

[0041] Preferably, obtaining the final interpolation command includes:

[0042] When the tool position corresponding to the interpolation cycle is located in the throat index interval, the interpolation command is branch-locked according to the optimal throat branch sequence to obtain the interpolation command with branch identifier, and the interpolation command with branch identifier is used as the final interpolation command.

[0043] When the tool position corresponding to the interpolation cycle is not located in the throat index range, the interpolation command is processed by writing the default branch identifier to obtain the interpolation command with the default branch identifier, and the interpolation command with the default branch identifier is used as the final interpolation command.

[0044] To address the above problems, the present invention also provides a synchronous control system for a multi-axis linkage CNC machine tool, the system comprising:

[0045] The throat band determination module is used to calculate the included angle sequence based on the tool position sequence of the machining program data, and to determine the throat band index interval based on the included angle sequence;

[0046] The node modeling module is used to generate a multi-branch axis solution node set based on the throat index interval, and to obtain a multi-branch axis solution node diagram based on the multi-branch axis solution node set and the machining program data.

[0047] The sequence optimization module is used to perform ant colony optimization search on the multi-branch axis solution node graph to obtain the optimal branch sequence of the throat.

[0048] The periodic construction module is used to generate interpolated periodic sequences based on the knife point sequence;

[0049] The linkage control module is used to synchronously control each motion axis of a multi-axis linkage CNC machine tool based on the interpolation period sequence and the throat optimal branch sequence.

[0050] Compared with the prior art, the beneficial effects of the present invention are:

[0051] 1. This invention analyzes the angle changes of the tool position sequence in the machining path and combines spatial interference judgment to identify key sections where the tool axis direction is restricted and the posture changes continuously. This allows for the early positioning of areas with significant motion constraints during machining, enabling the tool to obtain a clear range of posture changes and axis solution selection space before entering the area. This effectively avoids the situation of blindly selecting axis solutions at complex geometric transition positions, thereby improving the pertinence and rationality of tool motion planning from the source.

[0052] 2. This invention constructs a multi-branch axis solution node graph and calculates the edge cost of the connection relationship between each node. Combined with heuristic information to guide path search, it performs unified evaluation and optimization selection of multiple axis position solution combinations in a global range. This enables the tool to move along a continuous axis solution path with low cost throughout the entire restricted section, avoiding the path discontinuity problem caused by making decisions based solely on local changes in traditional methods. This reduces the risk of sudden changes in rotation axis and imbalance in inter-axis motion.

[0053] 3. In the interpolation stage, the optimized branch selection results are written into the interpolation command, and the axis solution is locked in the key section, so that each motion axis is executed in coordination according to the unified target position in each interpolation cycle, ensuring the consistency of linear axis and rotary axis in spatial trajectory and attitude change, thereby improving the motion stability and synchronization in the multi-axis linkage process, reducing machining trajectory deviation and improving workpiece surface quality. Attached Figure Description

[0054] The accompanying drawings, which are included to provide a further understanding of the invention and form part of this application, illustrate exemplary embodiments of the invention and, together with their description, serve to explain the invention and do not constitute an undue limitation thereof. In the drawings:

[0055] Figure 1 This is a flowchart illustrating a synchronous control method for a multi-axis linkage CNC machine tool according to an embodiment of the present invention.

[0056] Figure 2 This is a functional block diagram of a multi-axis linkage CNC machine tool synchronous control system provided in an embodiment of the present invention. Detailed Implementation

[0057] The technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments.

[0058] This embodiment provides a synchronous control method for multi-axis linkage CNC machine tools. (See also...) Figure 1 Specifically, including:

[0059] S1. Calculate the included angle sequence based on the tool position sequence of the machining program data, and determine the throat index interval based on the included angle sequence;

[0060] In an embodiment of the present invention, calculating the included angle sequence based on the tool position sequence of the machining program data includes:

[0061] The machining program data of the CNC system in a multi-axis linkage CNC machine tool is parsed and interpolated to obtain the tool position sequence;

[0062] Machining program data refers to the set of machining trajectory information and control instructions stored in the CNC system of a multi-axis CNC machine tool. It is used to describe the motion path of the tool relative to the workpiece and the machining process. Analysis and interpolation processing refers to the process of decoding the machining program data and discretizing the continuous trajectory into a finite number of motion points according to a predetermined interpolation cycle. Tool position sequence refers to the set of spatial positions of the tool tip in the workpiece coordinate system arranged in the interpolation order. It is used to characterize the tool motion trajectory.

[0063] Specifically, the machining program data stored in the CNC device of the multi-axis linkage CNC machine tool is read, and the program segments in the machining program data are extracted sequentially according to their appearance order. The coordinate instructions, feed instructions, tool compensation instructions, and coordinate system call instructions in each program segment are identified, and the identified instructions are converted into a unified workpiece coordinate system to obtain a continuous tool motion trajectory. Then, the starting position and ending position of each trajectory segment are determined according to the connection relationship between adjacent program segments. The straight trajectory is discretized at equal intervals according to the feed direction, the circular trajectory is discretized at equal angles along the arc direction and converted into corresponding spatial position points, and the curved trajectory is discretized and points are obtained in an increasing arc length manner. The position points obtained from the discretization of each trajectory segment are spliced ​​together end to end according to the program execution order, adjacent duplicate points are removed and the connection points at the trajectory transition are retained, thus forming a tool position sequence arranged continuously according to the interpolation order.

[0064] Obtain the reference normal vector sequence that corresponds one-to-one with the knife point sequence;

[0065] The reference normal sequence refers to the set of workpiece surface normal directions corresponding to each tool position point, used to describe the tool's attitude reference direction at each position.

[0066] Specifically, first, the surface element in the workpiece geometry model is located for each tool point in the tool point sequence. The geometric representation data of the surface element is read, and the tangential vector along the two surface parameter directions at the tool point location is obtained. The cross product of the two tangential vectors is performed to obtain the direction vector perpendicular to the surface at that location. Then, the direction vector is normalized to obtain the reference normal vector corresponding to the tool point. The reference normal vectors corresponding to all tool points are stored sequentially according to the arrangement order of the tool point sequence, so that each tool point corresponds to a unique reference normal vector. Thus, a reference normal vector sequence corresponding one-to-one with the tool point sequence is obtained.

[0067] Calculate the included angle sequence based on the reference normal vector sequence.

[0068] Angle sequence refers to the set of directional changes between adjacent reference normals, used to reflect the continuity and degree of rotation of the tool posture along the trajectory.

[0069] Specifically, first, read each pair of adjacent reference normal vectors sequentially according to the order in the reference normal vector sequence. Treat the previous and next reference normal vectors as a set of vectors to be calculated, and calculate the dot product of the set of vectors. Calculate the length of the previous and next reference normal vectors respectively. Divide the dot product by the product of the lengths of the previous and next reference normal vectors to obtain the direction cosine value between the two reference normal vectors. Perform an inverse cosine operation on the direction cosine value to obtain the angle value between the current set of adjacent reference normal vectors. Then, calculate each set of adjacent reference normal vectors in the reference normal vector sequence in the same way, so that each pair of adjacent reference normal vectors corresponds to an angle value. Arrange all the angle values ​​in the reference normal vector sequence according to their order to form an angle sequence corresponding to the reference normal vector sequence.

[0070] In an embodiment of the present invention, determining the laryngeal index interval based on the included angle sequence includes:

[0071] Based on the geometric data of the multi-axis linkage CNC machine tool, the geometric data of the cutting tool, and the geometric data of the workpiece, interference determination is performed on each cutting tool position in the cutting tool position sequence to obtain the feasible set of cutting tool axis directions;

[0072] It should be noted that the geometric data of a multi-axis CNC machine tool refers to the structural parameter data used to describe the spatial positional relationship, range of motion, and coordinate transformation relationship between the axes of motion of the machine tool; the geometric data of the cutting tool refers to the spatial relationship data describing the tool's external dimensions, tool tip position, and tool axis direction; the geometric data of the workpiece refers to the model data reflecting the surface shape and spatial distribution of the machined part; interference determination refers to the calculation process of determining whether spatial overlap occurs between the cutting tool and the workpiece or machine tool component under given tool position point and tool axis direction; the feasible set of tool axis directions refers to the set of all tool axis directions that satisfy the condition of no interference at a certain tool position point.

[0073] Specifically, first, read the spatial position of the tool tip corresponding to the current tool position in the tool position sequence, register the geometric shape data of the tool with the spatial position of the tool tip, establish the initial spatial placement state of the tool at the current tool position, then read the geometric model data of the workpiece and the geometric model data of the components related to the tool movement in the multi-axis linkage CNC machine tool, and uniformly convert the geometric model of the workpiece and the geometric model of the machine tool related components to the coordinate reference consistent with the spatial position of the tool tip;

[0074] Then, around the current tool tip spatial position, the hemispherical direction domain where the tool axis direction is located is traversed. Each traversed direction is taken as the tool axis direction to be inspected. The tool is spatially oriented along the tool axis direction to be inspected to obtain the tool envelope position under the current tool axis direction. The spatial intersection calculation of the tool envelope with the workpiece geometric model, the fixture geometric model, the spindle end geometric model, and the geometric model of the adjacent moving parts of the machine tool corresponding to the current motion configuration is performed to determine whether there is a contact situation of solid overlap, surface penetration, or zero gap.

[0075] When the tool envelope under the current tool axis direction to be inspected has no solid overlap, surface penetration, or zero-gap contact with any of the above geometric models, the tool axis direction to be inspected is recorded in the feasible set of tool axis directions corresponding to the current tool position. When any solid overlap, surface penetration, or zero-gap contact exists, the tool axis direction to be inspected is discarded. The same method is used to determine all the tool axis directions to be inspected at the current tool position one by one, and all the tool axis directions that meet the non-interference condition are collected to obtain the feasible set of tool axis directions corresponding to the current tool position. Then, the above process is repeated for each tool position according to the arrangement order of the tool position sequence to obtain the feasible set of tool axis directions corresponding one-to-one with the tool position sequence.

[0076] The feasible tool axis direction set is subjected to direction extraction processing to obtain a feasible tool axis direction candidate set; wherein, the feasible tool axis direction candidate set includes multiple feasible tool axis directions;

[0077] Direction extraction processing refers to the process of selecting several representative tool axis directions from the feasible set of tool axis directions to form a discrete direction set; the feasible tool axis direction candidate set refers to the set of multiple usable tool axis directions obtained after direction extraction processing; the feasible tool axis direction refers to the tool axis orientation at a certain tool position point, where the tool can enter the machining area when arranged along the direction and there is no spatial interference between the tool body, the workpiece, and related machine tool components. This direction reflects the range of postures that the tool can perform machining at that position.

[0078] Specifically, first, all feasible tool axis directions corresponding to the current tool position are read, and each feasible tool axis direction is uniformly represented as a unit direction vector starting from the tool tip position. A direction distribution map is then established based on the differences in the pointing directions of these direction vectors in space. Next, any feasible tool axis direction is taken as the initial direction and added to the candidate set of feasible tool axis directions. Other feasible tool axis directions with the same pointing direction as this initial direction are merged. Then, among the remaining feasible tool axis directions not yet added to the candidate set, the angle between each direction and each feasible tool axis direction already added to the candidate set is calculated. Feasible tool axis directions that do not coincide with any of the feasible tool axis directions already added to the candidate set are then selected. For each feasible tool axis direction already added to the candidate set, the following steps are taken: First, feasible tool axis directions that point to the same direction as a feasible tool axis direction already in the candidate set are removed. Then, among the retained feasible tool axis directions, directions located at the boundary of the feasible tool axis direction set, directions located inside the feasible tool axis direction set, and directions located in the transition region between adjacent directions are selected. These selected directions are then sequentially written into the feasible tool axis direction candidate set, ensuring that multiple feasible tool axis directions in the candidate set cover the boundary, middle, and transition regions of the feasible tool axis direction set. This process is repeated for each tool position in the tool position sequence to obtain the feasible tool axis direction candidate set for each tool position.

[0079] Based on the shrinkage of the feasible set of the tool axis direction and the continuous change of the included angle sequence, the throat index interval is determined.

[0080] The shrinkage of the feasible set along the cutter axis direction refers to the gradual reduction or morphological change of the range of the feasible set along the cutter axis direction as the sequence of cutter points progresses; the continuous change of the included angle sequence refers to the trend of change formed by the gradual change of the included angle between the reference normals corresponding to adjacent cutter points in the sequence order.

[0081] The throat index interval refers to a continuous range of tool positions along the tool position sequence. Within this range, the space for the tool axis direction that can be selected by the tool is significantly restricted, and the tool posture changes in a continuous rotational trend. This interval corresponds to the spatial region where the tool posture is most significantly restricted during the machining process.

[0082] It should be noted that the throat refers to a spatially confined area formed in the machining path. This area is formed by the geometric constraints between adjacent structures of the workpiece, which significantly narrows the available space for the tool to pass through, similar to the contraction of fluid passing through a narrow channel. Within this area, the tool's swing range is limited, and the tool axis direction must be continuously adjusted along the constrained spatial direction, thus forming a confined channel extending along the machining path.

[0083] Specifically, firstly, the feasible sets of tool axis directions corresponding to each tool position are read sequentially according to the arrangement order of the tool position sequence. The spatial distribution range of all feasible tool axis directions in the feasible set corresponding to each tool position is then calculated. Next, the feasible sets of tool axis directions corresponding to adjacent tool positions are compared one by one to determine whether the feasible set of the tool axis direction corresponding to the later tool position shows a decrease in the direction distribution range, a contraction of the boundary, or a reduction in the number of directions that can be accommodated compared to the feasible set of the tool axis direction corresponding to the earlier tool position. This results in a contraction change along the tool position sequence. Then, the angle values ​​between adjacent tool positions are read sequentially according to the arrangement order of the angle sequence, and the values ​​of adjacent angles are compared. The direction and magnitude of change are analyzed to determine whether the included angle value maintains a continuous increase, continuous decrease, or continuous smooth transition along the tool position sequence, thus forming a continuous change result arranged along the tool position sequence. The shrinkage change result is then aligned with the continuous change result onto the same tool position sequence. Starting from the beginning of the tool position sequence, each point is checked along the arrangement direction. When multiple consecutive adjacent tool positions simultaneously correspond to a feasible set of tool axis directions with continuous shrinkage and continuous change in the included angle sequence, the starting tool position of this continuous tool position range is determined as the throat band start index, the ending tool position of this continuous tool position range is determined as the throat band end index, and the continuous tool position range between the throat band start index and the throat band end index is determined as the throat band index interval.

[0084] S2. Generate a multi-branch axis solution node set based on the throat index interval, and obtain a multi-branch axis solution node diagram based on the multi-branch axis solution node set and machining program data;

[0085] In an embodiment of the present invention, generating a multi-branch axis solution node set based on the throat index interval includes:

[0086] Based on the feasible candidate set of tool axis directions, inverse kinematics is performed on the tool position points within the throat index interval to obtain the axis position solution set.

[0087] Inverse kinematics solution refers to the process of determining the required combination of positions of each motion axis of a computer tool, given the known tool position and tool axis direction, so that the tool can be in that spatial position and orientation. The axis position solution set refers to multiple sets of position combinations of each motion axis of a machine tool obtained through inverse kinematics solution under the same tool position and tool axis direction.

[0088] Specifically, according to the order of the throat index interval in the tool position sequence, the spatial position of the tool tip and each feasible tool axis direction in the candidate set of feasible tool axis directions are read sequentially for each tool position. The spatial position of the tool tip and the current feasible tool axis direction are used together as the tool spatial pose constraint. Combining the spatial geometric relationship of each motion axis of the multi-axis linkage CNC machine tool, the coordinate transformation relationship of each motion axis, and the installation relationship of the tool relative to the spindle end, the spatial pose correspondence from the machine tool reference coordinates to the tool tip position is established one by one, and the spatial pose correspondence that satisfies the spatial pose correspondence is obtained. For each combination of motion axes, check whether the motion direction of each axis, the spatial attitude corresponding to each axis position, and the tool tip position are consistent with the requirements of the current tool position. Retain the combinations of motion axes that meet the requirements of the current tool position and the current feasible tool axis direction. Collect all the combinations of motion axes that meet the requirements of the same tool position under different feasible tool axis directions to form the axis position solution set corresponding to the tool position. Repeat the above process for each tool position in the throat index interval to obtain the axis position solution set that corresponds one-to-one with each tool position in the throat index interval.

[0089] The axis position solution set is processed into nodes to generate a multi-branch axis solution node set.

[0090] Node-based processing refers to the process of identifying and organizing each set of axis position solutions in the axis position solution set as an independent unit; a multi-branch axis solution node set refers to a set of multiple nodes, each node corresponding to a set of axis position solutions, and the same tool position may correspond to multiple different nodes.

[0091] Specifically, the axis position solution set corresponding to each tool position within the throat index interval is read sequentially. Each group of motion axis position combinations in the axis position solution set is extracted separately, and each group of motion axis position combinations is assigned a unique node identifier. The tool position number, the corresponding feasible tool axis direction, the corresponding motion axis position value, and the arrangement position of the node in the tool position sequence are recorded. Multiple groups of motion axis position combinations corresponding to the same tool position are converted into multiple independent nodes. All nodes corresponding to all tool positions are classified and stored according to the arrangement order of the tool position sequence, so that each tool position corresponds to a node subset and each node subset contains all available axis solution nodes for that tool position. This generates a multi-branch axis solution node set covering all tool positions in the throat index interval.

[0092] In an embodiment of the present invention, a multi-branch axis solution node diagram is obtained, including:

[0093] The machining program data is parsed and interpolated to obtain the interpolation sequence;

[0094] Specifically, the process reads each program segment from the machining program data and arranges them sequentially according to their order of appearance in the machining program. It identifies the trajectory type, coordinate instructions, feed instructions, tool compensation instructions, and coordinate system call information in each program segment. The identification results are then uniformly converted to the same workpiece coordinate reference to form a continuous tool motion trajectory. Discrete tool positions are then generated sequentially along this continuous tool motion trajectory according to the execution order of the interpolation process. Each discrete tool position is assigned a sequence number corresponding to its generation order. The interpolation sequence is obtained by arranging all the sequence numbers in sequence.

[0095] Determine the previous cut point and the next cut point according to the interpolation order;

[0096] Interpolation sequence refers to the order in which discrete points are arranged when the tool moves along the machining path; the previous tool position and the next tool position refer to two adjacent tool positions in the interpolation sequence, where the previous tool position is the position before the current tool position and the next tool position is the position after the current tool position.

[0097] Specifically, all sequence numbers in the interpolation sequence are read, and each sequence number is mapped to a unique tool position in the tool position sequence. For any sequence number that is not the last in the interpolation sequence, the tool position corresponding to that sequence number is determined as the previous tool position, and the tool position corresponding to the next sequence number immediately following that sequence number is determined as the next tool position. Then, all adjacent tool position pairs are determined in sequence according to the arrangement order in the interpolation sequence, thereby obtaining the previous and next tool positions that are continuously arranged along the machining trajectory.

[0098] Connect each multi-branch axis solution node in the set of multi-branch axis solution nodes corresponding to the previous cut point to each multi-branch axis solution node in the set of multi-branch axis solution nodes corresponding to the next cut point to obtain a multi-branch axis solution node graph.

[0099] A multi-branch axis solution node refers to a single element in a multi-branch axis solution node set, corresponding to a specific combination of machine tool motion axis positions; establishing a connection refers to associating the corresponding axis solution nodes between adjacent tool positions according to the machining sequence, so that the axis solution nodes of the previous tool position and the axis solution nodes of the next tool position form a continuous transition relationship; a multi-branch axis solution node diagram refers to the structure composed of the axis solution nodes of each tool position and the connection relationship between them, used to represent the continuous motion relationship between different axis solutions of the tool on the machining path.

[0100] Specifically, the set of multi-branch axis solution nodes corresponding to the previous cutter position and the set of multi-branch axis solution nodes corresponding to the next cutter position are read. Each multi-branch axis solution node corresponding to the previous cutter position and each multi-branch axis solution node corresponding to the next cutter position are extracted sequentially. The position values ​​of each motion axis, the corresponding cutter position number, and the arrangement position in the cutter position sequence recorded in each multi-branch axis solution node are read. Any multi-branch axis solution node corresponding to the previous cutter position and any multi-branch axis solution node corresponding to the next cutter position are combined into a pair of nodes to be connected. The position values ​​of each motion axis in the two pairs of nodes to be connected are compared, and the change of each motion axis from the axis position corresponding to the previous cutter position to the axis position corresponding to the next cutter position is calculated. The connection from the previous cutter position to the next cutter position is retained. In the direction, the pair of nodes to be connected is recorded as a connection relationship. Then, in the same way, all multi-branch axis solution nodes corresponding to the previous cut point and all multi-branch axis solution nodes corresponding to the next cut point are paired and connected one by one, so that a complete node connection relationship is formed between the set of multi-branch axis solution nodes corresponding to the previous cut point and the set of multi-branch axis solution nodes corresponding to the next cut point. Then, according to the arrangement order in the cut point sequence, the above connection establishment process is repeated for all sets of multi-branch axis solution nodes corresponding to all adjacent cut points. The multi-branch axis solution nodes corresponding to each cut point are stored as nodes in the graph, and the connection relationships formed between each adjacent cut point are stored as edges in the graph. This results in a multi-branch axis solution node graph covering all cut points in the throat index interval.

[0101] S3. Use the ant colony algorithm to search the multi-branch axis solution node graph to obtain the optimal branch sequence of the throat.

[0102] In an embodiment of the present invention, obtaining the optimal laryngeal girdle branch sequence includes:

[0103] Calculate the edge cost of each connection in the multi-branch axial solution node graph;

[0104] The edge cost of a connection relationship refers to the measure of the amount of motion change that occurs when a combination of axis positions transitions between adjacent tool positions from one set of axis position combinations to another. It is used to reflect the degree of axis motion change and spatial attitude change during the transition process.

[0105] Specifically, each connection relationship in the multi-branch axis solution node diagram is read sequentially. The position values ​​of each motion axis at the preceding tool position corresponding to the starting node and the following tool position corresponding to the ending node of the connection relationship are extracted. The position values ​​of the same motion axis at the preceding and following tool positions are subtracted to obtain the position change of each motion axis. The absolute values ​​of the position changes of each motion axis are then taken and summed to obtain the total position change of the axis corresponding to the connection relationship. Simultaneously, the tool axis directions at the starting and ending nodes of the connection relationship are read, and the ratio of the two tool axis directions is calculated. The angle between the two points is used to obtain the attitude change corresponding to the connection relationship. Then, the spatial position of the tool tip corresponding to the previous and next tool point is read. Based on the axis position solution corresponding to the starting node and the axis position solution corresponding to the ending node, the spatial pose change of the tool relative to the machine tool geometry is calculated. The tool tip compensation displacement caused by the change in the rotation axis position is calculated. Then, the total axis position change, attitude change and tool tip compensation displacement are summarized as the edge cost of the connection relationship. The same method is used to calculate all the connection relationships in the multi-branch axis solution node graph, thereby obtaining the edge cost corresponding to each connection relationship.

[0106] Gather all edge costs to obtain an edge cost table;

[0107] Specifically, each connection relationship and its corresponding edge cost in the multi-branch axis solution node graph are read sequentially. A unique edge number is established for each connection relationship. The starting node identifier, ending node identifier, starting tool position number, ending tool position number, and edge cost value corresponding to the edge number are recorded. The above records corresponding to all connection relationships are written into the same data table in the order of the starting tool position in the tool position sequence. In the case of multiple connection relationships corresponding to the same starting tool position, they are arranged in order according to the ending node identifier. Thus, an edge cost table covering all connection relationships in the multi-branch axis solution node graph is obtained.

[0108] Determine the heuristic information based on the edge cost table;

[0109] The edge cost table refers to the data set formed by collecting and storing the edge costs corresponding to all connections in the multi-branch axis solution node graph; heuristic information refers to the numerical information used to guide the path search direction by calculating the edge costs of each edge in the edge cost table, which reflects the relative priority of different connections in path selection.

[0110] Specifically, each edge record in the edge cost table is read sequentially, and the edge value corresponding to that edge record is extracted. All edge values ​​are compared sequentially to determine the size relationship between them. Then, based on the relative size of each edge value among all edge values, a corresponding priority is assigned to the edge record. Edge records with smaller edge values ​​have higher priority, and edge records with larger edge values ​​have lower priority. This priority is written into the heuristic information field corresponding to the edge record, so that each edge record in the edge cost table corresponds to unique heuristic information, thereby obtaining heuristic information for path search.

[0111] Based on the topology and heuristic information of the multi-branch axis solution node graph, the ant colony algorithm is used to search the multi-branch axis solution node graph to obtain the node path;

[0112] The topology of a multi-branch axis solution node graph refers to the overall connection layout formed after the nodes are connected in the order of the tool points; the ant colony algorithm search process refers to the process of simulating multiple search individuals to select paths in the node graph according to heuristic information and continuously updating the path priority; the node path refers to a continuous path formed sequentially from the node corresponding to the starting tool point in the throat index interval to the node corresponding to the ending tool point according to the connection relationship.

[0113] Specifically, first, read all nodes, all connections, and heuristic information corresponding to each connection in the multi-branch axis solution node graph. Determine all nodes corresponding to the starting and ending knife points according to the order of the knife point positions in the knife point sequence, and use all nodes corresponding to the starting knife point as the starting node set for the ant colony search. Then, assign a starting node to each ant, so that each ant starts from a node in the starting node set and selects the next node layer by layer along the connection direction from the previous knife point to the next knife point in the multi-branch axis solution node graph. When selecting the next node, read the heuristic information of all subsequent connections pointed to by the current node, assign higher selection priority to connections with higher heuristic information, and assign lower selection priority to connections with lower heuristic information. Then, select a connection from all subsequent connections of the current node and move to the successor node corresponding to that connection.

[0114] The node selection process continues in the same manner until a node corresponding to the termination point is reached, thus forming a complete candidate path from the starting point to the termination point. All nodes and connections traversed by this candidate path are recorded. After a complete path search is completed for all ants, the sum of edge costs for the connections corresponding to each candidate path is calculated. The candidate path with the smaller sum of edge costs is determined as the better path, and the path priority is increased for each connection traversed by the better path. The path priority is decreased for each connection traversed by the candidate path that is not selected as a better path or has a large sum of edge costs. The updated path priority and the original heuristic information are used as the basis for the next round of ant colony search. The process of starting node allocation, successor connection selection, candidate path formation, and path priority update is repeated until, after multiple rounds of search, a node connection path with the smallest sum of edge costs that continuously reaches the termination point from the starting point is obtained, and this node connection path is determined as the node path.

[0115] By performing branch mapping on the node paths, the optimal branch sequence of the larynx is obtained.

[0116] The optimal branch sequence of the throat refers to a set of axis position combinations selected in the order of tool position points within the throat index interval. This result corresponds to a continuous movement mode of the tool along the machining path.

[0117] Specifically, first, all nodes in the node path are read in connection order. Then, the tool position number, node identifier, feasible tool axis direction, and position values ​​of each motion axis corresponding to each node are extracted sequentially. Each node in the node path is matched with a tool position point within the throat index interval that has the same tool position number, determining that the node is the selected axis solution branch for the corresponding tool position point in the node path. Next, according to the arrangement order of the tool positions within the throat index interval in the tool position sequence, the selected nodes corresponding to each tool position point are read sequentially. The node identifier of each selected node and the corresponding motion axis positions are combined as the branch selection result for that tool position point and written into the branch mapping result table, ensuring that each tool position point within the throat index interval corresponds to a unique branch selection result. Finally, all branch selection results are continuously arranged according to the order of the tool position sequence, forming a branch selection sequence corresponding to each point from the starting tool position point to the ending tool position point. This branch selection sequence is then determined as the optimal branch sequence for the throat.

[0118] S4. Generate an interpolation periodic sequence based on the knife point sequence;

[0119] In an embodiment of the present invention, generating an interpolation periodic sequence based on the knife point sequence includes:

[0120] Inverse kinematics solution is performed for each cutter point in the cutter point sequence to obtain the basic axis reference sequence;

[0121] Inverse kinematics refers to the calculation process of determining the combination of positions that each motion axis of the machine tool should reach under the given tool position point position and tool posture to realize the spatial pose of the tool; the basic axis reference sequence refers to a set of default combinations of machine tool motion axis positions obtained by inverse kinematics solution for each tool position point in the tool position point sequence, arranged in the order of the tool position points.

[0122] Specifically, each tool position in the tool position sequence is read sequentially, the spatial position of the tool tip corresponding to the current tool position is extracted, and the tool attitude direction corresponding to the current tool position is read. The spatial position of the tool tip and the tool attitude direction of the current tool position are used together as the tool spatial pose constraint. Combining the spatial arrangement relationship of each motion axis of the multi-axis linkage CNC machine tool, the coordinate transfer relationship between each motion axis, and the installation position relationship of the tool relative to the spindle end, the spatial correspondence relationship from the machine tool reference position to the tool tip position and the tool attitude direction is established one by one. The combination of motion axis positions that meets the spatial position requirements and the tool attitude direction requirements of the current tool position is obtained, and the consistency of the obtained combination of motion axis positions is checked. The combination of motion axis positions that can make the tool tip reach the current tool position and the tool attitude direction is consistent with the attitude direction corresponding to the current tool position is retained. Then, from the retained combination of motion axis positions, a set of motion axis position combinations that changes continuously with the combination of motion axis positions corresponding to the previous tool position is selected as the basic axis reference of the current tool position. The basic axis references corresponding to all tool positions are written into the sequence in the order of the tool position sequence, thus obtaining the basic axis reference sequence.

[0123] Based on the throat index interval, a replacement process is performed on the basic axis reference sequence to obtain the global axis reference sequence;

[0124] Replacement processing refers to updating the axis position combinations located within the throat index interval in the basic axis reference sequence according to the predetermined branch selection results, so that the corresponding tool positions adopt different axis position combinations; the global axis reference sequence refers to the sequence of machine tool motion axis position combinations that covers all tool positions after the replacement processing is completed.

[0125] Specifically, first, read the combination of motion axis positions corresponding to all tool points in the basic axis reference sequence, read the starting tool position number and ending tool position number corresponding to the throat index interval, and read the throat optimal branch sequence that corresponds one-to-one with each tool point in the throat index interval. According to the arrangement order in the tool point sequence, match each combination of motion axis positions in the basic axis reference sequence with each tool point in the throat index interval point by point to determine the target replacement segment located within the throat index interval and the retained segment located outside the throat index interval in the basic axis reference sequence. Then, according to the arrangement order of tool points in the throat optimal branch sequence, extract each tool position one by one. The branch selection result corresponding to the point is written into the position corresponding to the tool point in the basic axis reference sequence. The position combination of each motion axis corresponding to the branch selection result is replaced in the original basic axis reference sequence. After the point-by-point replacement of all tool points in the throat index interval is completed, the position combination of each motion axis corresponding to each tool point outside the throat index interval is kept unchanged. The position combination of each motion axis in the throat index interval after replacement and the position combination of each motion axis outside the throat index interval that has not been replaced are continuously spliced ​​together according to the original arrangement order of the tool point sequence, thereby obtaining a global axis reference sequence covering all tool points.

[0126] An interpolated periodic sequence is generated based on a global axis reference sequence.

[0127] The interpolation cycle sequence refers to the set of control cycles arranged in time order by discretizing the global axis reference sequence according to the interpolation execution rhythm.

[0128] Specifically, the motion axis position combinations arranged in the tool position order in the global axis reference sequence are read sequentially. Two adjacent motion axis position combinations are used as the starting and ending axis positions of a continuous interpolation segment. The position change of each motion axis from the starting to the ending position is calculated, and the synchronous motion process of each motion axis within the continuous interpolation segment is determined based on the position change. The continuous interpolation segment is then divided into multiple continuous interpolation execution moments along the motion propagation direction, so that each interpolation execution moment corresponds to a set of intermediate axis position combinations between the starting and ending axis positions. The starting axis position, intermediate axis position combinations, and ending axis position corresponding to the continuous interpolation segment are arranged sequentially according to the motion sequence to form the interpolation cycle sequence segment corresponding to the continuous interpolation segment. The above process is repeated for all adjacent motion axis position combinations in the global axis reference sequence, and the interpolation cycle sequence segments corresponding to each continuous interpolation segment are joined end-to-end according to the arrangement order of the global axis reference sequence to obtain an interpolation cycle sequence covering the entire machining process.

[0129] S5. Based on the interpolation period sequence and the optimal branch sequence of the throat, the motion axes of the multi-axis linkage CNC machine tool are synchronously controlled.

[0130] In an embodiment of the present invention, synchronous control of each motion axis of a multi-axis linkage CNC machine tool includes:

[0131] Based on the global axis reference sequence, the axis position is read for each interpolation cycle in the interpolation cycle sequence to obtain the interpolation command;

[0132] Interpolation commands are control instructions generated based on the read position values ​​of each motion axis, used to drive the movement of each motion axis of the machine tool.

[0133] Specifically, each interpolation cycle in the interpolation cycle sequence is read sequentially to determine the current interpolation cycle's position in the sequence. Based on this position, the starting and ending axis position combinations corresponding to the current interpolation cycle are located in the global axis reference sequence. Then, the current interpolation cycle's advance position in its continuous interpolation segment is read, and this advance position is mapped to the motion process between the starting and ending axis position combinations. The target position value of each motion axis at the corresponding moment of the current interpolation cycle is calculated one by one. The target position values ​​of all motion axes are combined according to the fixed arrangement order of the machine tool's motion axes to form the axis position reading result corresponding to the current interpolation cycle. This axis position reading result is then written into the command data unit corresponding to the current interpolation cycle, so that the command data unit contains the cycle number of the current interpolation cycle, the target position value of each motion axis, and the corresponding tool position number. This yields the interpolation command corresponding to the current interpolation cycle. The above reading and writing process is repeated for all interpolation cycles in the interpolation cycle sequence to obtain the interpolation commands corresponding to all interpolation cycles.

[0134] Based on the interpolation period, the laryngeal index range, and the optimal branch sequence of the laryngeal band, the branch identifier of the interpolation command is written to obtain the final interpolation command;

[0135] In an embodiment of the present invention, obtaining the final interpolation command includes:

[0136] When the tool position corresponding to the interpolation cycle is located in the throat index interval, the interpolation command is branch-locked according to the optimal throat branch sequence to obtain the interpolation command with branch identifier, and the interpolation command with branch identifier is used as the final interpolation command.

[0137] Specifically, when the tool position corresponding to the interpolation cycle is located in the throat index interval, the tool position number corresponding to the current interpolation cycle is read. Based on the arrangement position of the tool position number in the throat index interval, the corresponding sequence number of the tool position in the throat optimal branch sequence is determined. Then, the branch selection result that matches the corresponding sequence number is extracted from the throat optimal branch sequence. The node identifier, axis position solution number, and position combination of each motion axis corresponding to the branch selection result are read. The tool position number in the interpolation command is checked against the tool position number in the branch selection result. If the two match, the node identifier and axis position solution number are written into the branch identifier field of the interpolation command. The target position value of each motion axis in the interpolation command is replaced with the position combination of each motion axis corresponding to the branch selection result, forming an interpolation command with a branch identifier corresponding to the current interpolation cycle. Then, the interpolation command with a branch identifier is determined as the final interpolation command corresponding to the current interpolation cycle.

[0138] When the tool position corresponding to the interpolation cycle is not located in the throat index range, the interpolation command is processed by writing the default branch identifier to obtain the interpolation command with the default branch identifier, and the interpolation command with the default branch identifier is used as the final interpolation command.

[0139] Specifically, when the tool position corresponding to the interpolation cycle is not located within the throat index interval, the tool position number corresponding to the current interpolation cycle is read. This tool position number is compared with the start and end tool position numbers of the throat index interval to determine that the current tool position is outside the throat index interval. Then, the target position values ​​of each motion axis and the corresponding tool position numbers already written in the current interpolation command are read. The source of the axis position solution corresponding to the current interpolation command is determined to be the corresponding axis position combination in the basic axis reference sequence. The default branch number, default node source marker, and corresponding tool position number representing the source of the basic axis reference sequence are written into the default branch identifier field of the interpolation command to form an interpolation command with a default branch identifier that corresponds one-to-one with the current interpolation cycle. Finally, the interpolation command with the default branch identifier is determined as the final interpolation command corresponding to the current interpolation cycle.

[0140] Branch identifier writing refers to the process of writing the branch information of the axis position solution corresponding to a certain interpolation cycle into the interpolation command, which is used to indicate the source of the axis solution corresponding to the interpolation command; branch locking processing refers to the process of fixing the axis position solution corresponding to the interpolation cycle to the branch selection result specified in the throat optimal branch sequence according to the throat optimal branch sequence; interpolation command with branch identifier refers to the interpolation command containing the branch information corresponding to the throat optimal branch sequence; default branch identifier writing processing refers to the process of writing the basic branch information into the interpolation command when the tool position point corresponding to the interpolation cycle is not located in the throat index range; interpolation command with default branch identifier refers to the interpolation command after writing the basic branch information; the final interpolation command refers to the instruction used to directly drive the motion axes of the multi-axis linkage CNC machine tool to perform synchronous motion after the branch information is written.

[0141] It should be noted that branch locking is used when the tool position corresponding to the interpolation cycle is located in the throat index interval. This is because the tool posture is significantly constrained by space within this interval, and there are multiple combinations of selectable axis solutions. If the branch selection is not fixed, axis solution switching can easily occur between adjacent interpolation cycles, causing discontinuous changes in the machine tool's motion axes and affecting the smoothness of the tool movement. By locking the interpolation command according to the optimal branch sequence of the throat, it can be ensured that the axis position combination corresponding to each tool position within this restricted interval transitions along the same continuous path, thereby maintaining the continuity of tool posture changes and the consistency of the coordinated motion of each motion axis. When the tool position corresponding to the interpolation cycle is not located in the throat index interval, the spatial constraint of the tool posture is weaker and the degree of freedom in axis solution selection is greater. Using the default branch identifier can maintain the normal continuity of the machining path and avoid introducing unnecessary branch constraints. This achieves differentiated processing of restricted and unrestricted areas globally, so that the multi-axis linkage process can meet the continuity requirements of local restricted areas while taking into account the stability of the overall machining path.

[0142] Based on the final interpolation command, the motion axes of the multi-axis CNC machine tool are synchronously controlled.

[0143] Specifically, the final interpolation command corresponding to each interpolation cycle is read sequentially. The target position value, corresponding tool position number, and written branch identifier information of each motion axis in the final interpolation command are extracted. The current actual position value of each motion axis is compared with the corresponding target position value one by one. The displacement and movement direction from the current position to the target position of each motion axis are calculated respectively. Then, a unified cycle execution relationship is established based on the target position values ​​of all motion axes in the same interpolation cycle, so that each motion axis enters the motion process together according to the corresponding displacement in the same interpolation cycle. For linear motion axes, they are driven to move along the corresponding coordinate direction according to the direction of change of the target position. For rotary motion axes, they are driven to rotate around the corresponding rotation axis according to the direction of change of the target angular position. During the movement, the feedback position value of each motion axis is continuously read. The feedback position value is compared with the target position value in the final interpolation command in real time. For motion axes with position deviations, the corrected drive command continues to be output until each motion axis in the interpolation cycle reaches the target position corresponding to the final interpolation command.

[0144] Once all motion axes reach the target position within the current interpolation cycle, the system switches to the final interpolation command corresponding to the next interpolation cycle. This process repeats the extraction of target positions for each motion axis, the calculation of displacement, the control of common motion, the comparison of feedback positions, and the correction of deviations. This ensures that the final interpolation commands corresponding to all interpolation cycles are executed sequentially, thereby achieving synchronous control of all motion axes of a multi-axis CNC machine tool around the same machining trajectory.

[0145] It should be noted that the synchronous control of each motion axis of a multi-axis CNC machine tool according to the final interpolation command is necessary because there is a narrow machining area near the transition between the blade root and the hub of parts such as impellers, blade disks, and blades. Within this area, the same tool position point may correspond to multiple different axis position solutions. If the motion axes are not executed synchronously according to the final interpolation command, axis solution switching, sudden changes in rotary axis motion, and linear axis compensation imbalance may easily occur between adjacent interpolation cycles. This prevents the tool tip position and tool posture from maintaining continuity simultaneously, resulting in machining trajectory deviation, increased surface striations, and local machining instability. The final interpolation command has already written the branch selection results and target positions of each motion axis within this narrow machining area. Only by synchronously controlling each motion axis according to this final interpolation command can the coordinated movement of the linear and rotary axes within the same interpolation cycle be guaranteed, allowing the tool to complete the linkage machining according to the determined continuous axis solution path throughout the entire machining process.

[0146] like Figure 2 The diagram shown is a functional block diagram of a multi-axis linkage CNC machine tool synchronous control system provided in an embodiment of the present invention.

[0147] In this embodiment, the functions of each module / unit are as follows:

[0148] The throat band determination module is used to calculate the included angle sequence based on the tool position sequence of the machining program data, and to determine the throat band index interval based on the included angle sequence;

[0149] The node modeling module is used to generate a multi-branch axis solution node set based on the throat index interval, and to obtain a multi-branch axis solution node diagram based on the multi-branch axis solution node set and the machining program data.

[0150] The sequence optimization module is used to perform ant colony optimization search on the multi-branch axis solution node graph to obtain the optimal branch sequence of the throat.

[0151] The periodic construction module is used to generate interpolated periodic sequences based on the knife point sequence;

[0152] The linkage control module is used to synchronously control each motion axis of a multi-axis linkage CNC machine tool based on the interpolation period sequence and the throat optimal branch sequence.

[0153] The above description is only a preferred embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any equivalent substitutions or modifications made by those skilled in the art within the scope of the technology disclosed in the present invention, based on the technical solution and inventive concept of the present invention, should be covered within the scope of protection of the present invention.

Claims

1. A synchronous control method for a multi-axis linkage CNC machine tool, characterized in that, Includes the following steps: S1. Calculate the included angle sequence based on the tool position sequence of the machining program data, and determine the throat index interval based on the included angle sequence; The specific steps for determining the laryngeal index interval based on the included angle sequence are as follows: Based on the geometric data of the multi-axis linkage CNC machine tool, the geometric data of the cutting tool, and the geometric data of the workpiece, interference determination is performed on each cutting tool position in the cutting tool position sequence to obtain the feasible set of cutting tool axis directions; The feasible tool axis direction set is subjected to direction extraction processing to obtain a feasible tool axis direction candidate set; wherein, the feasible tool axis direction candidate set includes multiple feasible tool axis directions; Based on the shrinkage of the feasible set of the tool axis direction and the continuous change of the included angle sequence, the throat index interval is determined; S2. Generate a multi-branch axis solution node set based on the throat index interval, and obtain a multi-branch axis solution node diagram based on the multi-branch axis solution node set and machining program data; The specific steps to obtain the nodal graph of the multi-branch axis solution are as follows: The machining program data is parsed and interpolated to obtain the interpolation sequence; Determine the previous cut point and the next cut point according to the interpolation order; Connect each multi-branch axis solution node in the multi-branch axis solution node set corresponding to the previous cut point to each multi-branch axis solution node in the multi-branch axis solution node set corresponding to the next cut point to obtain a multi-branch axis solution node diagram. S3. Use the ant colony algorithm to search the multi-branch axis solution node graph to obtain the optimal branch sequence of the throat. The specific steps to obtain the optimal laryngeal girdle branch sequence are as follows: Calculate the edge cost of each connection in the multi-branch axial solution node graph; Gather all edge costs to obtain an edge cost table; Determine heuristic information based on the edge cost table; Based on the topology and heuristic information of the multi-branch axis solution node graph, the ant colony algorithm is used to search the multi-branch axis solution node graph to obtain the node path; By performing branch mapping on the node paths, the optimal branch sequence of the larynx is obtained; S4. Generate an interpolation periodic sequence based on the knife point sequence; S5. Based on the interpolation period sequence and the optimal branch sequence of the throat, the motion axes of the multi-axis linkage CNC machine tool are synchronously controlled.

2. The synchronous control method for a multi-axis linkage CNC machine tool according to claim 1, characterized in that, The included angle sequence is calculated based on the tool position sequence of the machining program data, including: The machining program data of the CNC system in a multi-axis linkage CNC machine tool is parsed and interpolated to obtain the tool position sequence; Obtain the reference normal vector sequence that corresponds one-to-one with the knife point sequence; Calculate the included angle sequence based on the reference normal vector sequence.

3. The synchronous control method for a multi-axis linkage CNC machine tool according to claim 1, characterized in that, A multi-branch axis solution node set is generated based on the throat index interval, including: Based on the feasible candidate set of tool axis directions, inverse kinematics is performed on the tool position points within the throat index interval to obtain the axis position solution set. The axis position solution set is processed into nodes to generate a multi-branch axis solution node set.

4. The synchronous control method for a multi-axis linkage CNC machine tool according to claim 1, characterized in that, The interpolation period sequence is generated based on the knife point sequence, including: Inverse kinematics solution is performed for each cutter point in the cutter point sequence to obtain the basic axis reference sequence; Based on the throat index interval, a replacement process is performed on the basic axis reference sequence to obtain the global axis reference sequence; An interpolated periodic sequence is generated based on a global axis reference sequence.

5. The synchronous control method for a multi-axis linkage CNC machine tool according to claim 4, characterized in that, Synchronous control of each motion axis of a multi-axis CNC machine tool includes: Based on the global axis reference sequence, the axis position is read for each interpolation cycle in the interpolation cycle sequence to obtain the interpolation command; Based on the interpolation period, the laryngeal index range, and the optimal branch sequence of the laryngeal band, the branch identifier of the interpolation command is written to obtain the final interpolation command; Based on the final interpolation command, the motion axes of the multi-axis CNC machine tool are synchronously controlled.

6. The synchronous control method for a multi-axis linkage CNC machine tool according to claim 5, characterized in that, The final interpolation command is obtained, including: When the tool position corresponding to the interpolation cycle is located in the throat index interval, the interpolation command is branch-locked according to the optimal throat branch sequence to obtain the interpolation command with branch identifier, and the interpolation command with branch identifier is used as the final interpolation command. When the tool position corresponding to the interpolation cycle is not located in the throat index range, the interpolation command is processed by writing the default branch identifier to obtain the interpolation command with the default branch identifier, and the interpolation command with the default branch identifier is used as the final interpolation command.

7. A system applied to the synchronous control method for a multi-axis linkage CNC machine tool as described in any one of claims 1-6, characterized in that, The system includes: The throat band determination module is used to calculate the included angle sequence based on the tool position sequence of the machining program data, and to determine the throat band index interval based on the included angle sequence; The specific steps for determining the laryngeal index interval based on the included angle sequence are as follows: Based on the geometric data of the multi-axis linkage CNC machine tool, the geometric data of the cutting tool, and the geometric data of the workpiece, interference determination is performed on each cutting tool position in the cutting tool position sequence to obtain the feasible set of cutting tool axis directions; The feasible tool axis direction set is subjected to direction extraction processing to obtain a feasible tool axis direction candidate set; wherein, the feasible tool axis direction candidate set includes multiple feasible tool axis directions; Based on the shrinkage of the feasible set of the tool axis direction and the continuous change of the included angle sequence, the throat index interval is determined; The node modeling module is used to generate a multi-branch axis solution node set based on the throat index interval, and to obtain a multi-branch axis solution node diagram based on the multi-branch axis solution node set and the machining program data. The specific steps to obtain the nodal graph of the multi-branch axis solution are as follows: The machining program data is parsed and interpolated to obtain the interpolation sequence; Determine the previous cut point and the next cut point according to the interpolation order; Connect each multi-branch axis solution node in the multi-branch axis solution node set corresponding to the previous cut point to each multi-branch axis solution node in the multi-branch axis solution node set corresponding to the next cut point to obtain a multi-branch axis solution node diagram. The sequence optimization module is used to perform ant colony optimization search on the multi-branch axis solution node graph to obtain the optimal branch sequence of the throat. The specific steps to obtain the optimal laryngeal girdle branch sequence are as follows: Calculate the edge cost of each connection in the multi-branch axial solution node graph; Gather all edge costs to obtain an edge cost table; Determine heuristic information based on the edge cost table; Based on the topology and heuristic information of the multi-branch axis solution node graph, the ant colony algorithm is used to search the multi-branch axis solution node graph to obtain the node path; By performing branch mapping on the node paths, the optimal branch sequence of the larynx is obtained; The periodic construction module is used to generate interpolated periodic sequences based on the knife point sequence; The linkage control module is used to synchronously control each motion axis of a multi-axis linkage CNC machine tool based on the interpolation period sequence and the throat optimal branch sequence.

Citation Information

Patent Citations

  • Method for optimizing cutter axis vector of flat-bottom end face milling cutter

    CN116520765A

  • Constraint-driven five-axis machining singular area tool path local deformation optimization method

    CN121276963A