Channel synchronization in multi-spindle machine tools

The method synchronizes spindle movements in multi-spindle machine tools by adjusting feed rates based on machining progress to minimize differences in scalar quantities, addressing collision risks and improving precision and productivity.

WO2026041270A1PCT designated stage Publication Date: 2026-02-26SIEMENS AG
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/EP2025/067847
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-08-21
Filing Date
2025-06-25
Publication Date
2026-02-26

AI Technical Summary

Technical Problem

Multi-spindle machine tools face a high risk of collisions due to asynchronous movements of tool spindles caused by differences in tool dimensions, tool wear, workpiece clamping, and varying dynamic potentials, despite using identical part programs.

Method used

A method for computer-aided numerical control that synchronizes the movement of tool spindles by recording scalar quantities dependent on machining progress, such as arc length, and adjusting the feed rates to minimize differences between channels, ensuring equivalent machining results and preventing collisions.

Benefits of technology

The method ensures synchronized spindle movements, reducing the risk of collisions and enhancing machining precision and productivity by maintaining identical machining results across multiple spindles.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure EP2025067847_26022026_PF_FP_ABST
    Figure EP2025067847_26022026_PF_FP_ABST
Patent Text Reader

Abstract

The invention relates to a method for the computer-assisted numerical control of a multi-spindle machine tool (1), which has a first tool spindle (2A) equipped with a first tool (3A) and a second tool spindle (2B), which can be controlled independently of the first tool spindle (2A) and is equipped with a second tool (3B), wherein -a first workpiece (5A) is machined by means of the first tool (3A) by executing a predetermined part program in a first machining channel, and a second workpiece (5B) is machined by means of the second tool (3B) by executing the part program in a second machining channel synchronised with the first machining channel; - the execution of the part program in the first machining channel includes an actuation control of first machine axes (X1, Y1, Z1) for guiding the first tool spindle (2A) according to a first tool path (TA) relative to the first workpiece (5A) and the execution of the part program in the second machining channel includes an actuation of second machine axes (X2, Y2, Z2) for guiding the second tool spindle (2B) according to a second tool path (TB) relative to the second workpiece (5B); - the first tool (3A) differs the second tool (3B) in terms of its dimensions, - the first tool path (TA) differs from the second tool path (TB); and - a machining result of the first workpiece (5A) at one end of the first tool path (TA) is equal to a machining result of the second workpiece (5B) at one end of the second tool path (TB). In order to synchronize the movements carried out by the first tool spindle (2A) and the movements carried out by the second tool spindle (2B), the invention provides that at least one first scalar variable (BA, BB) dependent on a machining progress is detected in each machining channel and a difference (∆B) between the scalar variable (BA) detected in the first machining channel and the scalar variable (BB) detected in the second machining channel is determined, and the first machine axes (X1, Y1, Z1) and the second machine axes (X2, Y2, Z2) are actuated in such a way that the difference (∆B) between the scalar variable (BA) recorded in the first processing channel and the scalar variable (BB) recorded in the second processing channel is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] 202414253 Foreign version Fair copy

[0002] 1

[0003] Description

[0004] Channel synchronization in multi-spindle machine tools

[0005] The present invention relates to a method for the computer-aided numerical control of a multi-spindle machine tool, which comprises a first tool spindle equipped with a first tool and a second tool spindle that is independently controllable and equipped with a second tool. The invention further relates to a control device for the numerical control of a multi-spindle machine tool. The invention also relates to a machine tool system comprising a multi-spindle machine tool, comprising a first tool spindle that can be equipped with a first tool and a second tool spindle that can be independently controllable and equipped with a second tool. In addition, the invention relates to a computer program and a computer-readable storage medium.

[0006] In the field of machine tools, some machines are designed as multi-spindle machine tools, also known as multi-spindle machines. These have two or more tool spindles for machining two or more workpieces. This means that two or more machining operations, and therefore the motion control and spindle control, must be performed simultaneously, i.e., synchronously. The application of multiple synchronous machining units on one machine can be applied to a wide variety of technologies, for example, milling, turning, grinding, and so on. Multi-spindle machine tools with exactly two tool spindles are also called twin-spindle machine tools or twin-spindle machines.

[0007] Twin-spindle machining centers can, for example, machine two workpieces simultaneously with two tools, resulting in two nominally identical workpieces at the end of the machining process. The machining of both workpieces is synchronous. This means that the output on a twin-spindle machine is twice as high compared to a single-spindle machine. However, a twin-spindle machine can also be operated to produce only one workpiece; in this case, the second spindle is inactive.

[0008] There are various designs for twin-spindle machines, the complexity of which can be tailored to specific production and accuracy requirements. (202414253 Foreign version Fair copy)

[0009] 2

[0010] Concepts differ constructively, for example in the degrees of freedom of the individual tool spindles or machining units.

[0011] In simple twin-spindle machines, the two tool spindles are rigidly connected mechanically. The spindle assembly is then moved by the common axes, for example, the X, Y, and Z axes. This simple concept, therefore, can only account for tool wear on one side. Ideally, identical tools or tools with identical wear must be used to produce identical workpieces during manufacturing.

[0012] A more complex concept provides independent Z-axes for each of the two tool spindles. This allows the tool spindles to be positioned differently in the Z-direction. An even more complex concept, through the use of compensating axes redundantly mounted on the main axes, enables the tool spindles, and thus the tools, to be moved in all three axis directions, albeit only for comparatively short travel ranges. This type of twin-spindle machine is at least capable, compared to the previously described concepts, of handling completely different tool corrections and, if necessary, workpiece clamping situations.

[0013] Particularly high accuracy can be achieved using so-called true multi-spindle machine tools, i.e., multi-spindle machine tools with two or more independent tool spindles that can be controlled and moved independently of each other.

[0014] The two tool spindles of a twin-spindle machine are each equipped with their own X, Y, and Z axes. Depending on the design and technology, additional linear and / or rotary axes (also known as rotary axes) may be provided in the multi-spindle machine tool. These can be independent for each tool spindle or cause the same (relative) movement for all tool spindles.

[0015] The tool spindles are then operated and controlled, for example, via one and the same CNC control, each with its own machining channel, hereinafter also referred to simply as a "channel". The individual axes of the tool spindles can partially share the same guide rail. 202414253 Foreign version Fair copy

[0016] 3

[0017] One advantage of true multi-spindle machine tools is that the various tool spindles can be equipped with tools for manufacturing nominally identical workpieces. These tools may also be nominally identical, but their dimensions may differ, for example, due to varying wear. The independent control of the different tool spindles can compensate for these dimensional differences.

[0018] For optimal utilization of the shared workspace and a compact machine tool design, it is desirable to minimize the mechanical offset between the two tool spindles, for example, less than 1 m or around 500 mm. To achieve such small distances mechanically, the movable columns on which the tool spindles are mounted, or other moving components, would have to be very close to each other, for example, just a few millimeters. This would create a potential collision hazard. This hazard would be particularly pronounced if the tool spindles were controlled differently to compensate for different tool dimensions, as explained above.

[0019] Besides the previously mentioned differences in tool dimensions, there are numerous other reasons why the tool spindles may not move synchronously during parallel workpiece machining. These include, in particular:

[0020] - Deviations concerning the tool spindles, such as zero point shifts, different dynamic restrictions, mechanical tolerances or different spindle designs.

[0021] The parts programs in the channels are different.

[0022] 202414253 Foreign version Fair copy

[0023] 4

[0024] The same workpiece is processed in the channels with different frames because, for example, the workpiece blank is clamped differently.

[0025] Different frame rotations of the same workpiece geometry result in different dynamic potentials (speed, acceleration, jerk) of the path movement. With the same part program in the channels, the same blocks of data exhibit different dynamic potentials for the path movement. (Example: In one channel, a specific linear block is executed only with the X-axis, while in another channel, the Y-axis is also involved because the frame is rotated. The second channel therefore has more dynamics along the path.) If processing is unsynchronized, the processing in the channels will diverge.

[0026] Different machine geometries in the channels.

[0027] For example, the offsets in the kinematic chain for kinematic transformations can be different.

[0028] Different axis dynamics (speed, acceleration, jerk) in the channels.

[0029] The risk of collision increases due to asynchronous movements of the relevant machine parts or spindles.

[0030] From the publication “SIEMENS: SINUMERIK 8400 sl Extension Functions”, March 5, 2018, XP040694366, it is known to synchronize the movements of the spindles of a multi-spindle machine tool by having a lead screw define the movement for at least one subsequent spindle. The actual position of the lead screw is used as the target position of the subsequent spindle. As a result, the lead screw and the subsequent spindle execute identical spindle paths or toolpaths relative to the respective workpiece.

[0031] From EP4403316A1, a synchronization method for the coordinated execution of machining steps for a workpiece is known, wherein a first machining device of a machine tool performs a first machining step, wherein a second machining device of the machine tool or of another machine tool performs a second machining step, wherein the first machining step has a first synchronization parameter and the second machining step has a second synchronization parameter, wherein the first and second synchronization parameters are based on a machining parameter for the machining of the workpiece, wherein in a comparison the first 202414253 foreign version fair copy

[0032] 5

[0033] The synchronization parameter is continuously compared with the second synchronization parameter, and the coordinated execution of the first and second steps is carried out depending on the result of the comparison.

[0034] From the subsequently published EP4455809A1, it is known that a multi-spindle machine tool, which has a first tool spindle and an independently controllable second tool spindle, is controlled by machining a first workpiece and a second workpiece by synchronously executing a part program in two machining channels. The execution of the part program includes controlling the first machine axes to guide the first tool spindle according to a first toolpath, and the execution of the part program includes controlling the second machine axes to guide the second tool spindle according to a second toolpath. A machining result of the first workpiece at one end of the first toolpath is equivalent to a machining result of the second workpiece at one end of the second toolpath.The first machine axes and the second machine axes are controlled in such a way that the time difference between reaching the end of the first toolpath and reaching the end of the second toolpath is less than or equal to a predetermined limit value.

[0035] It is an object of the present invention to reduce the risk of collisions in the control of multi-spindle machine tools of the type mentioned above.

[0036] This problem is solved by a method comprising the process steps according to claim 1, i.e., a method for computer-aided numerical control of a multi-spindle machine tool, which has a first tool spindle equipped with a first tool and a second tool spindle that can be controlled independently of the first tool spindle and is equipped with a second tool, wherein

[0037] - a first workpiece is machined by the first tool by processing a predefined part program in a first machining channel, and a second workpiece is machined by the second tool by processing the part program in a second machining channel synchronously with the first machining channel;

[0038] - the processing of the part program in the first machining channel includes the control of the first machine axes to guide the first tool spindle according to a first toolpath relative to the first workpiece, and the processing of the part program in 202414253 Foreign version Fair copy

[0039] 6. The second machining channel includes a control of two machine axes for guiding the second tool spindle according to a second toolpath relative to the second workpiece.

[0040] - the first tool differs from the second tool in terms of its dimensions,

[0041] - the first toolpath differs from the second toolpath,

[0042] - a machining result of the first workpiece at one end of the first toolpath is equal to a machining result of the second workpiece at one end of the second toolpath; and

[0043] - in each processing channel at least one scalar quantity dependent on a processing progress is recorded and a difference between the scalar quantity recorded in the first processing channel and the scalar quantity recorded in the second processing channel is determined and the first machine axes and the second machine axes are controlled in such a way that the difference between the scalar quantity recorded in the first processing channel and the scalar quantity recorded in the second processing channel is reduced.

[0044] Furthermore, the problem is solved by a control device according to claim 8 for carrying out such a procedure.

[0045] Advantageous further developments and preferred embodiments are the subject of the dependent claims.

[0046] The invention is based on the concept of synchronously processing the same part program in two machining channels in order to machine a first workpiece using a first tool mounted on a first tool spindle, and a second workpiece using a second tool mounted on a second tool spindle. For the reasons already mentioned, in conventional multi-spindle machine tools, the spindles can move differently (asynchronously) despite an identical part program. The invention achieves a kind of "forced synchronization" of the spindles.

[0047] According to one aspect of the invention, a method for computer-aided numerical control (CNC control) of a multi-spindle machine tool is described. The multi-spindle machine tool has a first tool spindle equipped with a first tool and a second tool spindle equipped with a second tool. [202414253 Foreign version Fair copy]

[0048] 7 equipped second tool spindles. The second tool spindle can be controlled independently of the first tool spindle.

[0049] A first workpiece is machined using the first tool by executing a predefined part program in the first machining channel of the control unit. A second workpiece is machined using the second tool by executing the part program in a second machining channel synchronously with the first machining channel. The execution of the part program in the first machining channel controls the first machine axes of the multi-spindle machine tool to guide the first tool spindle along a first toolpath. The execution of the part program in the second machining channel controls the second machine axes of the multi-spindle machine tool to guide the second tool spindle along a second toolpath.

[0050] By processing the part program in the first machining channel and the second machining channel, the first tool spindle is guided according to the first toolpath and the second tool spindle is guided according to the second toolpath.

[0051] In this process, the machining result of the first workpiece at one end of the first toolpath is equivalent to the machining result of the second workpiece at one end of the second toolpath. In the machining channels of the numerical control, the same scalar value, dependent on the machining progress, is recorded in each channel, and the first and second machine axes are controlled in such a way as to reduce the difference between the scalar value recorded in the first machining channel and the scalar value recorded in the second machining channel.

[0052] The first tool spindle can be guided by appropriate control and movement of the first machine axes, and the second tool spindle by appropriate control and movement of the second machine axes. The first and second machine axes can each include one or more linear or translational axes, for example, an X, a Y, and a Z axis. Alternatively or additionally, the first and second machine axes can each include rotary axes, for example, an A and / or a B axis. 202414253 Foreign version Fair copy

[0053] 8

[0054] The tool spindles can be controlled independently of each other. This can be understood to mean, in particular, that the first machine axes can be controlled and moved independently of the second machine axes. Therefore, it is theoretically possible to process different part programs using the first and second tool spindles.

[0055] The fact that the part program is processed synchronously in the first and second machining channels can be understood in particular as meaning that the processing takes place simultaneously or in parallel and accordingly the control of the first machine axes is also synchronized with the control of the second machine axes, so that the movement of the first tool spindle is also synchronized (synchronous) with the movement of the second tool spindle.

[0056] In particular, the control of the spindle movements ensures that the difference during machining is always adjusted so that it does not exceed a predetermined or predefinable limit. This can be achieved, in particular, by means of a corresponding control system, as will be explained in more detail below.

[0057] The scalar quantity is, in particular, a quantity that changes continuously during workpiece machining.

[0058] Furthermore, the scalar quantity is, in particular, a geometric quantity.

[0059] In principle, any quantity that changes proportionally to the machining progress during processing can be used to synchronize the channels. In a preferred embodiment of the invention, the arc length of the path programmed by the part program in the channels is recorded as a continuous, geometrically changing scalar quantity during machining, and its difference is reduced, in particular minimized. The arc length denotes the length of the path on the workpiece surface or workpiece contour that the tool has traveled through the workpiece material from a reference time, e.g., t0, to the respective machining time, e.g., t1. It is thus a length measurement. 202414253 Foreign version Fair copy

[0060] 9

[0061] As an example of a non-geometric scalar quantity, the material removal volume could be used to synchronize the movement sequences.

[0062] In order for the tool on a CNC machine to follow the programmed contour, tool radius compensation is necessary. The tool radius correction, performed by the numerical control, allows the machine to take the actual tool radius, or cutting edge radius, into account in order to precisely follow the programmed contour. The tool center point (TCP), which moves as the machine axes are moved via interpolation, therefore does not move along the programmed contour, but rather at an offset. Different tool radii, for example, due to different tools or varying tool wear, thus lead to toolpaths of different lengths and, consequently, to asynchronous movements on multi-spindle machines at the same feed rate.

[0063] The arc length on the workpiece, i.e. the length of the workpiece contour after the tool path has been traversed, is independent of the tool radius and is therefore suitable as a scalar quantity dependent on the machining progress, and in particular as a geometric quantity that changes continuously during machining, for synchronizing the movements.

[0064] Besides the arc length of the programmed contour, there are numerous other scalar quantities that are also suitable for synchronization, analogous to the arc length. Examples include:

[0065] The original arc length of the workpiece contour before the toolpath is traversed. The machining progress in both channels could also be recorded with respect to this contour, and any deviation between the channels could be limited, reduced, or minimized using the CNC control.

[0066] The arc length of any “offset path”, i.e. a path with a certain offset (distance) compared to the programmed path or the original workpiece contour before the tool path is traversed.

[0067] The track length normalized by the programmed speed per set: (length / programmed speed). 202414253 Foreign version Fair copy

[0068] 10

[0069] The arc length combined with the curvature of the trajectory:

[0070] For example, with high curvature, the continuous quantity should be more stretched. This implicitly takes the dynamics of the motion into account to a certain extent.

[0071] The arc length is an integral over the 2-norm of the curve's derivative. The additional consideration of curvature can be mathematically accounted for, for example, by an additional additive term "curvature" within the integral.

[0072] A standardized path parameter related to the set number in the parts program.

[0073] This is particularly useful when the part programs (and thus the arc length profile) are not completely identical in both channels. As an alternative to the record number as a reference, one could also normalize to the arc length of one of the channels.

[0074] For the special case of "interpolation turning": a tool angle combined with the arc length. The controller must also affect the spindle movement.

[0075] Scalar quantities, which are based on combinations of the examples mentioned, are also possible.

[0076] Depending on the technology of the multi-spindle machine tool—for example, whether it is a machine tool for milling, turning, grinding, or drilling, etc.—different first and second tools are used. Accordingly, the tool dimensions can also vary depending on the technology. In particular, the first and second tools are defined by their respective nominal dimensions, possibly including corresponding tolerance ranges, for one or more dimensions, such as lengths or radii, etc.

[0077] The different tool dimensions, especially tool radii, of the tools clamped in the spindles can result from the use of different tools in the spindles. With identical tools, the differences can be caused, in particular, by the tools differing within a permissible tolerance or by different degrees of wear. Both the tool dimensions themselves and the degree of wear, and the resulting deviations from the target dimensions, can be recorded in the numerical control system and taken into account when processing the part program. 202414253 Foreign version Fair copy

[0078] 11

[0079] The first and second tool dimensions can be determined by conventional measurements, for example manual or automatic measurements, before the inventive method is carried out and provided to the control unit. It is also possible that in some embodiments of the inventive method, the first and / or the second tool dimensions are determined in a process step of the inventive method, in particular automatically, for example by means of the multi-spindle machine tool itself.

[0080] The fact that the first tool dimensions differ from the second tool dimensions can be understood, in particular, as meaning that the first tool dimensions contain one or more initial actual values ​​for the first tool, and the second tool dimensions contain one or more actual values ​​for the second tool, wherein at least one of the initial actual values ​​differs from a corresponding one of the second actual values. The tools differ, in particular, in the actual values ​​of the tool radii.

[0081] Due to the different tool radii, different tool paths result for one and the same contour defined by the part program, in relation to their TCP.

[0082] Using the scalar quantity recorded in each channel, which depends on the processing progress, especially the arc length, the different channels can be compared at any point in the processing process.

[0083] The scalar quantity is generally referred to as n(t) below (i: channel number, t: time).

[0084] Advantageously, the orbital interpolation of at least one channel can be influenced in such a way that the difference in scalar size between the channels is reduced.

[0085] For example, the channel "iLast" can first be determined, which is the last in terms of progress (with respect to n(t)) of the processing, with: iLast = i Last(t) = argmini ( n(t) ) 202414253 Foreign version Fair copy

[0086] 12

[0087] Each other channel k has a difference to channel iLast with respect to the continuous quantity:

[0088] ArjLast k(t) rjLast(t) ^k(t)

[0089] Arii_ast_k(t) represents the difference in the considered scalar, continuous quantity between the channels iLast and k.

[0090] When machining workpieces with different tool radii in the channels simultaneously, Arii_ast_k(t) would tend to increase over time. The invention prevents this. Each channel k (except iLast) can modify its path interpolation progress depending on Arii_ast_k(t) with the aim of reducing Arii_ast_k(t).

[0091] One possible implementation involves using the difference Arii_ast_k(t) as the input to a controller, such as a PI controller, for each channel k. The output is the target speed of the path interpolation (feed rate) for channel k. This acts like a feed rate override, and the path interpolation modifies the path speed as desired, thus controlling the machining progress of channel k.

[0092] Analogous to a PL position controller, |AriLast_k(t)| is asymptotically reduced with appropriate parameterization.

[0093] The regulator is advantageously included in the control unit.

[0094] The target speed of a path interpolation in the context of path generation using a CNC control refers to the speed at which the tool tip moves along the programmed path. This speed is crucial for the precision and quality of the machining, as it determines the time the tool needs to travel from one point to the next.

[0095] During path interpolation, the CNC control calculates the necessary movements of the machine axes to ensure smooth and continuous movement of the tool along the specified path. The target speed is an important parameter that is entered into the CNC program to achieve the desired result.

[0096] 13

[0097] To achieve the desired machining speed, which can vary depending on the material, tool type, and desired surface finish, it remains constant for a given machining operation with conventional CNC controls. Typical CNC controls have an override switch that allows the user to manually change the programmed feed rate.

[0098] The CNC controller uses various interpolation methods to generate the toolpath, such as linear, circular, or spline interpolation. Each of these interpolation methods has specific G-codes that are inserted into the CNC program to execute the corresponding movement. For example, G01 represents linear interpolation at machining speed, while G02 and G03 are used for circular interpolation in clockwise and counterclockwise directions, respectively.

[0099] Advantageously, in the control device according to the invention, in addition to the target speed of the path interpolation, the path acceleration and path jerk of the path interpolation can also be adjusted by means of the controller. This allows the path interpolation to react faster and | Arj La st_k(t) | shrinks faster.

[0100] An advantageous further development of the invention provides a predictive mechanism in the path interpolation. As before, the channel iLast is first determined. For the other channels k, a velocity profile is then predictively calculated over several interpolation cycles (cycles) of the numerical control, with the aim of |Arj L ast_k| to reduce as quickly as possible. The profile generated for the respective channel is then output by the path interpolation in the following cycles and thus followed by the machine.

[0101] Predictive path interpolation and the generation of a speed profile for a tool are known to those skilled in the art in the field of numerical control.

[0102] In a preferred embodiment of this variant, the profile is updated in every clock cycle. This allows the controller to react to real-time influences, such as changes to the override controller. It also takes into account the fact that the forecast only extends a limited number of interpolation cycles into the future. 202414253 Foreign version Fair copy

[0103] 14

[0104] The speed profile can be advantageously implemented, for example, using optimization with constraints. The optimization criterion is the time until |Arii_ast_k| vanishes. The constraints are the limits for path speed, path acceleration, and path jerk.

[0105] According to a further aspect of the invention, a control device, in particular a CNC control, for a multi-spindle machine tool is specified. The multi-spindle machine tool comprises at least one first tool spindle that can be equipped with or is equipped with a first tool, and a second tool spindle that can be controlled independently of the first tool spindle and that can be equipped with or is equipped with a second tool. The control device is configured for (CNC) control of the first tool spindle and the second tool spindle.

[0106] The control unit is configured to execute a predefined part program in a first machining channel for machining the first workpiece using the first tool, and to execute the part program in a second machining channel synchronously with the first machining channel for machining the second workpiece using the second tool. The control unit is configured to control the first machine axes to guide the first tool spindle along a first toolpath for executing the part program in the first machining channel, and to control the second machine axes to guide the second tool spindle along a second toolpath for executing the part program in the second machining channel, whereby a machining result of the first workpiece at one end of the first toolpath is equivalent to a machining result of the second workpiece at one end of the second toolpath.The control device is designed to detect at least one first scalar quantity dependent on a processing progress in each processing channel and to control the first machine axes and the second machine axes in such a way as to reduce the difference between the scalar quantity detected in the first processing channel and the scalar quantity detected in the second processing channel.

[0107] The control unit includes, in particular, one or more arithmetic units. An arithmetic unit can be understood to be, in particular, a data processing device containing a processing circuit. The arithmetic unit can therefore, in particular, process data to perform arithmetic operations. This may also include operations, 202414253 Foreign version Fair copy

[0108] 15 to perform indexed accesses to a data structure, for example a look-up table (LUT).

[0109] The computing unit may, in particular, contain one or more computers, one or more microcontrollers, and / or one or more integrated circuits, for example, one or more application-specific integrated circuits (ASICs), one or more field-programmable gate arrays (FPGAs), and / or one or more systems on a chip (SoCs). The computing unit may also contain one or more processors, for example, one or more microprocessors, one or more central processing units (CPUs), one or more graphics processing units (GPUs), and / or one or more signal processors, in particular one or more digital signal processors (DSPs). The computing unit may also include a physical or virtual cluster of computers or other units of the aforementioned type.

[0110] In various embodiments, the computing unit includes one or more hardware and / or software interfaces and / or one or more storage units.

[0111] A storage unit can be volatile data storage, for example as dynamic random access memory (DRAM) or static random access memory (SRAM), or as non-volatile data storage, for example as read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash memory or flash EEPROM, ferroelectric random access memory (FRAM), or magnetoresistive random access memory.MRAM (magnetoresistive random access memory) or PCRAM (phase-change random access memory) can be designed as phase-change random access memory.

[0112] Further embodiments of the multi-spindle machine tool according to the invention follow directly from the various configurations of the method according to the invention and 202414253 Foreign version Fair copy

[0113] 16 Conversely. In particular, individual features and corresponding explanations as well as advantages regarding the various embodiments of the method according to the invention can be transferred analogously to corresponding embodiments of the multi-spindle machine tool according to the invention. In particular, the multi-spindle machine tool according to the invention is designed or programmed to carry out a method according to the invention. In particular, the multi-spindle machine tool according to the invention carries out the method according to the invention.

[0114] According to a further aspect of the invention, a computer program with commands is provided. When the control unit of a multi-spindle machine tool according to the invention executes the commands, the commands cause the multi-spindle machine tool to carry out a method according to the invention for controlling a multi-spindle machine tool.

[0115] The instructions can be provided, for example, as program code. This program code can be provided, for example, as binary code or assembly language, and / or as source code in a programming language such as C, and / or as a program script, such as Python.

[0116] According to another aspect of the invention, a computer-readable storage medium is specified which stores a computer program according to the invention.

[0117] Further features of the invention will become apparent from the claims, the figures, and the description of the figures. The features and combinations of features mentioned above in the description, as well as the features and combinations of features mentioned below in the description of the figures and / or shown in the figures, may be encompassed by the invention not only in the combinations specified, but also in other combinations. In particular, the invention may also encompass embodiments and combinations of features that do not have all the features of an originally formulated claim. Furthermore, the invention may encompass embodiments and combinations of features that go beyond or deviate from the combinations of features set out in the cross-references to the claims.

[0118] The invention is explained in more detail below with reference to specific embodiments and associated schematic drawings. The figures may depict identical or identical components. 202414253 Foreign version Fair copy

[0119] Seventeen functionally equivalent elements may be designated with the same reference symbols. The description of identical or functionally equivalent elements is not necessarily repeated for different figures.

[0120] The figures show:

[0121] FIG 1 shows an exemplary embodiment of a multi-spindle spindle according to the invention.

[0122] machine tool systems,

[0123] FIG 2 and FIG 3 show the simultaneous machining of two workpieces in the two machine units of a twin-spindle machine,

[0124] FIG 4 shows essential process steps in carrying out a process according to the invention.

[0125] Figure 1 schematically shows an exemplary embodiment of a multi-spindle machine tool system 1 according to the invention. This system comprises a multi-spindle machine tool 2, which in the example of Figure 1 is specifically designed as a twin-spindle machine tool 2 with the two machine units MA and MB. However, the embodiments can also be applied analogously to machine tools with more than two tool spindles or machine units.

[0126] The first machine unit MA of the multi-spindle machine tool 2 has a first tool spindle 2A, which is equipped with a first tool 3A. The second machine unit MA of the multi-spindle machine tool 2 has a second tool spindle 2B, which is equipped with a second tool 3B. The second tool spindle 2B can be controlled independently of the first tool spindle 2A. In a non-restrictive example, the first tool spindle 2A and the second tool spindle 2B are each movable along parallel X-axes X1, X2, parallel Y-axes Y1, Y2, and parallel Z-axes Z1, Z2 as their respective first machine axes X1, Y1, Z1 and second machine axes X2, Y2, Z2, respectively. The X-axes are perpendicular to the Y-axes, and the Z-axes are perpendicular to both the X-axes and the Y-axes. However, other translational machine axes are also possible. 202414253 Foreign version Fair copy

[0127] 18

[0128] Furthermore, the multi-spindle machine tool 2, according to the exemplary embodiment, comprises a workpiece table 6 which is pivotable about an A-axis. The workpiece table 6 also includes two rotary tables 6A and 6B, on each of which a workpiece (not shown in FIG. 1) can be rotatably mounted about an axis B1 or B2, respectively. The first rotary table 6A is assigned to the first machine unit MA, and the second rotary table 6B is assigned to the second machine unit MB. The A-axis acts on both rotary tables 6A and 6B equally and is assigned to both machine units MA and MB.

[0129] The multi-spindle machine tool 2 is connected to a control unit 4, in particular a CNC control 4, for the (CNC) control of the linear axes X1, Y1 and Z1 and thus the first tool spindle 2A, the linear axes X2, Y2 and Z2 and thus the second tool spindle 2B, as well as the rotary axes A, B1 and B2. The programming of the machine axes is carried out in particular with respect to a machine coordinate system (MCS) fixed to a machine base.

[0130] By means of the multi-spindle machine tool system 1 according to the invention, a method according to the invention for CNC control of a multi-spindle machine tool 2 can in particular be carried out. For machining a first workpiece 5A (see FIG. 2) using the first tool 3A, the CNC control 4 executes a predetermined part program in a first machining channel (channel KA, not shown) and for machining a second workpiece 5B using the second tool 3B, the control unit 4 executes the same part program in a second machining channel (channel KB, not shown) synchronously with the processing in the first machining channel.

[0131] In the first machining channel KA, the CNC control 4 controls the first machine axes X1, Y1, Z1, and B1 to guide the first tool 3A relative to a first workpiece (not shown in FIG. 1) according to a first toolpath. In the second machining channel KB, the CNC control 4 controls the second machine axes X2, Y2, Z2, and B2 to guide the second tool 3B relative to a second workpiece (not shown in FIG. 1) according to a second toolpath, where a machining result of the first workpiece at one end of the first toolpath is equivalent to a machining result of the second workpiece at one end of the second toolpath. 202414253 Foreign version Fair copy

[0132] 19

[0133] During the processing of the part program, the CNC control 4 continuously records the arc length of the machined workpiece surface for the first and second workpieces in the respective channel.

[0134] The CNC control 4 controls the first machine axes X1, Y1, Z1 and B1 and the second machine axes X2, Y2, Z2 and B2 in such a way that the difference between the arc length recorded in the first processing channel and the arc length recorded in the second processing channel is reduced.

[0135] The method is explained in more detail for exemplary embodiments with reference to Figures FIG 2 and FIG 3.

[0136] Figures 2 and 3 show the simultaneous machining of two workpieces, 5A and 5B, in the two machine units MA and MB of the twin-spindle machine. Each machine unit, MA and MB, is controlled by a channel KA and KB, respectively (not shown), of the CNC control. The same part program is executed in both channels KA and KB. The part program comprises a multitude of program instructions (blocks) that define a desired contour of the workpiece surface to be machined. In Figure 2, these are, in addition to the current workpiece surface at time tO, the surfaces represented by the dashed lines and labeled OA and OB. As can be seen from the figure, the machined workpiece surfaces OA and OB are identical for workpieces 5A and 5B.As can be seen in the figure, machining in the two channels KA and KB of the twin-spindle machine is to be carried out with the two machine units MA and MB using different tools 3A and 3B. Tool 3A has a significantly larger tool radius (not labeled) than tool 3B. The current actual values ​​of tools 3A and 3B are stored in the CNC control (see FIG. 1). Using a tool radius compensation feature typically found in CNC controls, the CNC control determines the toolpaths TA and TB so that – with the same part program in the channels – the workpiece contours OA and OB result at the end of machining, despite the different tool radii. In particular, the depths of cut SA and SB specified in the two channels for tools 3A and 3B are identical.

[0137] As a rule, tools 3A and 3B are moved at a fixed feed rate (relative to the TCP) according to the programmed contour. [202414253 Foreign version Fair copy]

[0138] 20. With a non-linear toolpath, tool 3A, which has the larger diameter, travels a longer distance compared to tool 3B, which has the smaller diameter. Assuming the same preset feed rates (FA1) and FB1 for tools 3A and 3B, tool 3B, with its smaller radius, moves ahead of tool 3A during machining, resulting in a lack of synchronization. This is illustrated in the drawing by showing that tool 3B of machine unit MB has traveled a greater distance at time t1 than tool 3A of machine unit MA. The figure is not drawn to scale for clarity.

[0139] According to the invention, in the exemplary embodiment, the arc length traversed by the two tools 3A and 3B on the newly created workpiece surfaces is considered as an example of a scalar quantity, in particular a geometric quantity, that depends on the machining progress and changes continuously during machining. For workpiece 5A, this is represented by a thin solid arrow and labeled BA. This arc should actually coincide with the programmed contour (dashed line OA), but is drawn slightly offset from it for better differentiation. Similarly, the arrow BB shows the arc length for workpiece 5B. Furthermore, FIG. 2 illustrates the difference AB between the arc lengths BA and BB for workpiece 5B (also not shown to scale).

[0140] The invention provides that the relative movements between the tool 3A and the workpiece 5A, as well as between the tool 3B and the workpiece 5B, are controlled by means of the CNC control 4 in such a way that the above-mentioned difference compared to a conventional twin-spindle workpiece machining is reduced or minimized, in particular in such a way that the difference does not exceed a predetermined or predeterminable limit value.

[0141] From a control engineering perspective, the synchronization of movements is achieved by first determining the "slower" (generally: slowest) channel – at least for a section of the programmed path – which lags behind the faster one. The slowest channel is the CNC control channel or the machine unit with the least machining progress. In the exemplary embodiment, this is channel KA (not shown) of CNC control 4, which is assigned to machine unit MA. The slower channel (channel KA in the example) can be determined, for example, by a simple comparison of the tool radii.

[0142] 21 because in this case, the tool (in the example, tool 3A) must travel a longer distance to achieve the same machining progress. In the exemplary embodiment, tool 3A travels an arc length BA between the two (arbitrarily chosen for illustrative purposes) times tO and t1, relative to the machined workpiece surface of workpiece 5A. Similarly, tool 3B travels an arc length BB between the two (arbitrarily chosen for illustrative purposes) times tO and t1, relative to the machined workpiece surface of workpiece 5B. The arc lengths can be calculated computationally using the CNC control system based on simple geometric considerations, knowing the tool radii, the feed rate, and the programmed contour. The difference between the two arc lengths is AB = BB - BA.

[0143] Normally, the same feed rate FA1 = FA2 is preset in the CNC control for both channels KA and KB for the respective tool. In this example, the feed rate of the faster channel KB is adjusted so that the aforementioned difference is reduced. For this purpose, the value of the aforementioned difference is continuously determined during machining and fed to a PI controller integrated into the CNC control. This controller continuously regulates the target speed of the path interpolation, i.e., the feed rate for tool 5B or channel KB, so that the difference is minimized, ideally to zero.

[0144] The effects of this procedure are illustrated in FIG. 3. As can be seen in the figure, the same machining progress is achieved for both workpieces 5A and 5B at the exemplary time t = t1. The same applies to the entire machining of workpieces 5A and 5B, so that the machining operations and tool movements are at least largely synchronized. These synchronized movements, in turn, effectively prevent collisions between the closely adjacent machine units MA and MB.

[0145] Referencing the slower or slowest channel as a reference for the other channel(s) has the advantage that the faster channel(s) can be adjusted to the processing progress of the slower or slowest channel. In particular, the feed rates of the faster channels are reduced. This has the advantage that the initially programmed feed rates are not exceeded by the adjustments according to the invention, and thus machine axes are not overloaded. 202414253 Foreign version Fair copy

[0146] 22

[0147] In principle, the "slower" channel(s) could also be adjusted to the fastest channel. However, it would then be necessary to ensure in another way that the maximum permissible speeds of individual axes are not exceeded.

[0148] The considerations and process steps mentioned above can be readily transferred to multi-spindle machines with more than two spindles.

[0149] Furthermore, additional dynamic parameters of the path, such as path acceleration and / or path jerk, and / or dynamic parameters of the machine axes, such as axis acceleration and / or axis jerk, can be incorporated into the control system to further improve the synchronization of the two processing channels. This allows the path interpolation to react faster and the difference between the arc lengths BA and BB to decrease more quickly.

[0150] The described control function can easily synchronize a part program across two or more machining channels, particularly when using nominally identical tools with different wear states. This allows for further improvements and optimization of highly productive machine tools. The introduction of such a control function increases machining speed and quality.

[0151] FIG 4 illustrates the essential process steps in carrying out a process according to the invention.

[0152] In a first process step S1, the following are provided: a multi-spindle machine tool, which has a first tool spindle equipped with a first tool on a first machine unit and a second tool spindle equipped with a second tool, which can be controlled independently of the first tool spindle; a control device with several channels connected to the multi-spindle machine tool, wherein machine axes of the first machine unit can be controlled by means of the first channel and machine axes of the second machine unit can be controlled by means of the second channel; 202414253 Foreign version Fair copy

[0153] 23 a part program that can be processed by the control device in each of the channels, which determines movements of the first tool relative to the first workpiece and of the second tool relative to the second workpiece.

[0154] In process step S2, the tool radius of the first tool and the tool radius of the second tool are determined and stored in the control unit.

[0155] In a process step S3, the part program is processed in the first channel and simultaneously in the second channel, wherein the processing of the part program in the first processing channel includes controlling the first machine axes to guide the first tool spindle according to a first toolpath, and the processing of the part program in the second processing channel includes controlling the second machine axes to guide the second tool spindle according to a second toolpath, wherein the toolpath for the respective tool is determined depending on the tool radius of the tool.

[0156] In process step S4, during the processing of the part program, at least one scalar quantity dependent on a processing progress is continuously recorded in each processing channel.

[0157] In a process step S4, a difference of the quantity recorded in the channels in step 4 is continuously determined and fed to a controller included by the control unit.

[0158] In process step S5, the controller intervenes in the control of the movement of the machine axes in such a way that the first machine axes and the second machine axes are controlled in such a way that a difference between the scalar quantity detected in the first processing channel and the scalar quantity detected in the second processing channel is reduced, in particular minimized.

[0159] The scalar quantity is, in particular, the arc length of the path traveled by the respective tool along the workpiece surface, and the controller is preferably designed as a PI controller and influences the feed rate control in at least one channel. 202414253 Foreign version Fair copy

[0160] 24

[0161] The described procedure ensures, in particular, that the traversing movements of the first tool spindle and the second tool spindle are at least largely synchronized, and that a machining result of the first workpiece at one end of the first toolpath is equal to a machining result of the second workpiece at one end of the second toolpath.

Claims

202414253 Foreign version Fair copy 25 Patent claims 1. Method for computer-aided numerical control of a multi-spindle machine tool (1) which has a first tool spindle (2A) equipped with a first tool (3A) and a second tool spindle (2B) which can be controlled independently of the first tool spindle (2A) and is equipped with a second tool (3B), wherein - a first workpiece (5A) is machined using the first tool (3A) by processing a predefined part program in a first machining channel, and a second workpiece (5B) is machined using the second tool (3B) by processing the part program in a second machining channel synchronously with the first machining channel; - the processing of the part program in the first machining channel includes controlling the first machine axes (X1, Y1, Z1) to guide the first tool spindle (2A) according to a first toolpath (TA) relative to the first workpiece (5A), and the processing of the part program in the second machining channel includes controlling the second machine axes (X2, Y2, Z2) to guide the second tool spindle (2B) according to a second toolpath (TB) relative to the second workpiece (5B). - the first tool (3A) differs from the second tool (3B) in terms of its dimensions, - the first toolpath (TA) differs from the second toolpath (TB), - a machining result of the first workpiece (5A) at one end of the first toolpath (TA) is equal to a machining result of the second workpiece (5B) at one end of the second toolpath (TB); and - in each processing channel at least one scalar quantity (BA, BB) dependent on a processing progress is recorded and a difference (AB) between the scalar quantity (BA) recorded in the first processing channel and the scalar quantity (BB) recorded in the second processing channel is determined and the first machine axes (X1 , Y1 , Z1) and the second machine axes (X2, Y2, Z2) are controlled in such a way that the difference (AB) between the scalar quantity (BA) recorded in the first processing channel and the scalar quantity (BB) recorded in the second processing channel is reduced.

2. The method according to claim 1, wherein the scalar quantity (BA, BB) is a scalar geometric quantity. 202414253 Foreign version Fair copy 26 3. Method according to claim 1 or 2, wherein the scalar quantity (BA, BB) is an arc length (BA, BB).

4. Method according to one of claims 1 to 3, wherein the difference (AB) of the scalar quantity (BA, BB) detected in the processing channels is fed to a controller, in particular a PI controller, which controls a target speed of a path interpolation of at least one channel such that the difference is minimized.

5. Method according to claim 4, wherein a feed rate of at least one of the tools (3A, 3B) is controlled.

6. Method according to claim 4 or 5, wherein, in addition to the target speed, a path acceleration and / or a path jerk of the path interpolation of at least one channel are also controlled in such a way that the difference (AB) is minimized.

7. Method according to one of claims 1 to 6, wherein a speed profile for at least one of the tools (3A, 3B) is calculated predictively over several interpolation cycles of a control device (4) by means of a predictive path interpolation, such that the difference (AB) of the scalar quantity (BA) detected in the first processing channel and the scalar quantity (BB) detected in the second processing channel is reduced.

8. Control device (4) for carrying out a method according to one of claims 1 to 7, comprising means for controlling a multi-spindle machine tool (2), which has a first tool spindle (2A) equipped with a first tool (3A) and a second tool spindle (2B) that is independently controllable from the first tool spindle (2A) and equipped with a second tool (3B), wherein - a first workpiece (5A) can be machined using the first tool (3A) by processing a predefined part program in a first machining channel, and a second workpiece (5B) can be machined using the second tool (3B) by processing the part program in a second machining channel synchronized with the first machining channel; - the processing of the part program in the first machining channel, control of the first machine axes (X1, Y1, Z1) to guide the first tool spindle (2A, 2B) 202414253 Foreign version Fair copy 27 according to a first toolpath (TA) relative to the first workpiece (5A) includes and the processing of the part program in the second machining channel includes a control of two machine axes (X2, Y2, Z2) for guiding the second tool spindle (2A, 2B) according to a second toolpath (TB) relative to the second workpiece (5B), - the first tool (3A) differs from the second tool (3B) in terms of its dimensions, - the first toolpath (TA) differs from the second toolpath (TB), - a machining result of the first workpiece (5A, 5B) at one end of the first toolpath (TA) is equal to a machining result of the second workpiece (5A, 5B) at one end of the second toolpath (TB); and - in each processing channel at least one first scalar quantity dependent on a processing progress is recorded and a difference (AB) between the scalar quantity (BA) recorded in the first processing channel and the scalar quantity (BB) recorded in the second processing channel is determined and the first machine axes (X1 , Y1 , Z1) and the second machine axes (X2, Y2, Z2) are controlled in such a way that the difference (AB) between the scalar quantity (BA) recorded in the first processing channel and the scalar quantity (BB) recorded in the second processing channel is reduced.

9. Control device (4) according to claim 8, comprising a controller, in particular a PI controller, wherein the difference (AB) of the scalar quantity (BA, BB) detected in the processing channels can be supplied to the controller and a target speed of a path interpolation of at least one channel can be controlled such that the difference (AB) is minimized.

10. Control device (4) according to claim 8 or 9, comprising means for generating a speed profile for at least one of the tools (3A, 3B) by means of a predictive path interpolation over several interpolation cycles of the control device (4), wherein path points can be predictively calculated in such a way that the difference (AB) of the scalar quantity (BA) detected in the first processing channel and the scalar quantity (BB) detected in the second processing channel can be reduced.

11. Control device (4) according to one of claims 8 to 10, configured as a CNC control (4). 202414253 Foreign version Fair copy 28 12. Machine tool system (1) comprising a multi-spindle machine tool (2) and an associated control device (4) according to one of claims 8 to 11.

13. Computer program comprising commands which, when executed by a control device (4) connected to a multi-spindle machine tool (2) according to one of claims 7 to 9, cause the control device (4) to carry out a method according to one of claims 1 to 7.

14. Computer-readable storage medium which stores a computer program according to claim 13.

Citation Information

Patent Citations

  • Synchronization method for coordinated execution of work steps for machining a workpiece

    EP4403316A1

  • Control of a multispindle machine tool

    EP4455809A1