This application is a § 371 National Stage Application of PCT International Application No. PCT/EP2020/059439 filed Apr. 2, 2020 claiming priority to EP 19172582.9 filed May 3, 2019.
The present disclosure relates to a method for establishing communication in a machine tool system and to an apparatus for performing the method and a computer program for establishing communication in a machine tool system.
A machine tool is a machine for shaping or machining metal or other rigid materials such as plastics, composites, ceramics not limiting to other rigid materials, usually by cutting, boring, grinding, shearing, or other forms of processing. Machine tools employ some sort of tool that does the cutting or shaping. All machine tools have some means of constraining the workpiece and provide a guided movement of the parts of the machine. Thus the relative movement between the workpiece and the cutting tool is controlled or constrained by the machine to at least some extent.
Computer Numerical Control (CNC) is widely used for controlling machine tools made for manufacturing, both additive and subtractive, wherein operations such as drilling, milling, turning, reaming, threading or grinding are common A CNC machine alters materials, for example, metal, plastic, wood, ceramic, or composite etc. to meet precise specifications by following programmed instructions and without a manual operator. In general, a CNC comprises at least one Numerical Control (NC) that controls numerical programmed motions and one Programmable Logic Controller (PLC) controlling logical based functions.
Nowadays, in CNC systems, the design of a mechanical part and its manufacturing program is highly automated. The mechanical dimensions of the part are defined using CAD software, and then translated into manufacturing directives by Computer Aided Manufacturing (CAM) software. The resulting directives are transformed by “post processor” software into specific commands necessary for a particular machine to produce the component, and then loaded into the CNC machine. To summarize, CNC machines combine a motorized maneuverable tool and often a motorized maneuverable workpiece, which are both controlled by a NC, according to specific input instructions. Instructions are typically delivered to a CNC machine in a form of G-codes generated by a graphical Computer Aided Manufacturing (CAM) software, and executed in the NC as sequential programs.
To control the machine tools, a control node may be configured in such system. Nowadays, the establishment of communication between the control node and the machine depends much on specific manufacture of the machine. When any node in the communication is changed, the establishment of communication has to be changed according to the situation, which affects the efficiency of the system.
It is an object of the invention to address at least some of the problems and issues outlined above. One object of the present disclosure is to provide a method and an apparatus for establishing communication in a machine tool system.
Another object is to provide a computer program product comprising computer-readable instructions which, when executed on a computer, performs a method for establishing communication in a machine tool system.
The above objectives are wholly or partially met by methods and apparatuses according to the appended claims. Features and aspects are set forth in the appended claims, in the following description, and in the annexed drawings of the present disclosure.
According to a first aspect, there is provided a method for establishing communication between a control node and a machine in a machine tool system, comprising the steps of notifying the control node of an identifier of the machine, said machine comprising a Numerical Control, NC; retrieving a machine configuration file comprising machine attributes at the control node based on the identifier; determining a data structure for a data signal transferring information in the machine tool system, by interpreting the machine configuration file; and acknowledging from the control node to the machine that communication has been established.
In an exemplary embodiment, the machine further comprises a Programmable Logic Controller, PLC.
In another exemplary embodiment, the identifier of the machine is generated based on which version of a PLC interface that is installed in the machine, the manufacturer ID and serial number of the machine.
In yet another exemplary embodiment, the configuration file comprises one sub element comprising metadata for the machine and one sub element comprising layout of the data signal.
In yet another exemplary embodiment, the configuration file comprises information indicating whether the data is sent in Big- or Little-endian byte order.
In yet another exemplary embodiment, the acknowledging of the communication is a ping command.
In yet another exemplary embodiment, the machine configuration file is an XML file.
According to a second aspect, there is provided an apparatus for establishing communication between a control node and a machine in a machine tool system, comprising a notifying unit configured to notify the control node of an identifier of the machine in the machine tool system, said machine comprising a Numerical Control, NC; a retrieving unit configured to retrieve a machine configuration file comprising machine attributes at the control node based on the identifier; a determining unit configured to determine a data structure for a data signal transferring information in the machine tool system, by interpreting the machine configuration file; and an acknowledging unit configured to acknowledge from the control node to the machine that the communication is established.
According to a third aspect, there is provided a computer program product comprising computer-readable instructions which, when executed on a computer, performs a method according to the above.
The present invention provides a unified interface for the establishment of communication between the control node and the machine tool system, thus reduces the complexity of configuration of the communication establishment. Another advantage is that the efficiency of the system has been significantly improved. Furthermore, an enhanced connectivity between the machine tool system and the control node is also provided, even a plug and play environment is possible for the end user.
Several aspects of the disclosure can be better understood with reference to the following drawings. In the drawings, like reference numerals designate corresponding parts throughout the several views.
In
The communication between the control node 100 and the machine 12 is established by the process flow shown in
It may be different types of data signals exchanged over the communication interface. The data signals may be divided into classes by their use and characteristics. Some data signals may work as pure information carriers which in this disclosure will be called real-time data signal, such as a spindle speed, while others may have a clear and dedicated task which in this disclosure will be called action data signals. In various embodiments, action data signals may be used to start a process on either the PLC 102, NC 104 or the control node 100. The data signal class specification may also indicate the direction of a data signal which makes it possible to differentiate between inputs (to machine) and outputs (from machine) even though they basically deal with the same thing.
The data signal layout of the machine mentioned herein includes both data signals that are transmitted from the machine and data signals that are received by the machine. It should be understood that the specifications are non-limiting exemplifying embodiments, which are possible to be adapted by the person skilled in the art. For each kinematic feature of the machine, a subset of data signals is defined, the data signals are then mapped into memory areas in the machine control system. When defining the data signals for a machine, the kinematic is divided into the following data signal categories: machine identification, acknowledgement ACK actions, Not acknowledgement ACK actions, cutting tool feed rate, axis position and speed, axis load/power/torque and multiplicators for feed rate and spindle speed.
In an exemplifying embodiment, the action data signals and some real-time data signals for a machine are defined by the number of tool carriers that can operate in the machine. Each tool carrier is defined as a channel which has a corresponding set of data signals. Some real-time data signals are defined by the number of axes of the machine. Each axis has a corresponding set of data signals, one of each relevant real-time data signal per axis. The data signal of Machine identification is shown in Table 1.
In an embodiment, the first two data signals in the machine data signal layout forms a unique serial number for each machine. The machine identification data signals may contain an interface version, a reserved area for future use, a manufacturer ID and a machine ID. The interface version may be one byte and it is in this embodiment used by the control node 100 to identify which version of the PLC interface that is installed in the machine. The reserved area for future use is bits set to 0 in this version of the PLC interface. Manufacturer ID is two bytes and it is the serial number for the machine tool manufacturer. Machine ID is four bytes and it is the serial number for the specific machine. See Table 2 for information about what information each byte contains in the machine identification data signals.
The serial number may be required to be sent serially in big endian byte order over the PLC interface with the bits representing PLC interface version to be sent first. Different machine control systems can store the data signals in its memory in different byte orders, the machine tool manufacturer is responsible for sending the serial number in the correct manner over the PLC interface.
The machine data signal layout and metadata for the machine are gathered in a machine configuration file. The machine configuration file can be located anywhere according to users' need. For example, it is located on the control node 100, or in a database or any other storage suitable for storing configuration files.
For the control node 100 and the PLC 102 to correctly process the data signals sent back and forth it is advantageous if the machine configuration file includes information of which byte order the PLC 102 uses to send and receive data signals. Based on this information the data signals sent over the PLC interface will be translated to and from the machine. See Table 3 for the supported byte orders, big endian is the preferred byte order. The machine identification data signals are always required to be sent with big endian byte order, regardless of which byte order is used in the PLC 102.
Real-time values are advantageously sent as raw values which may be converted to International System of Units, SI-units. The conversion may be done by using the equation of a straight line (y=mx+b). The gradient (m) and the intercept (b) may be set in the machine configuration.
In a non-limiting embodiment, information about the machine and its data signal layout may be included in the machine configuration file. The machine configuration file may be stored somewhere outside the PLC or locally on the PLC after being generated by a machine configuration tool. The machine configuration file can be written in any markup language, such as XML, HTML etc., in the present disclosure, the machine configuration file is written in XML as an exemplifying embodiment and it contains two main elements as seen in the example below. The two main elements may be machine data and signal layout.
The “MachineData” element may include child elements with metadata for the machine, as seen in the example below.
The data signal layout element may contain all child elements corresponding to the machine data signal layout, as seen in the non-limiting example below. Each element contains child elements with information about each data signal in the machine configuration.
Further non-limiting examples of the above machine data configuration are shown below.
The “FromMachinelnformationConfiguration” element may include child elements with information about the machine information data signals, as seen in the example below.
The “FromMachineAcknowledgedActionConfigurations” element may include one child element for each channel, as seen in the example below.
The “ToMachineAcknowledgedActionConfigurations” element may include one child element for each channel, as seen in the example below.
The “ToMachineFeedMultiplicatorConfigurations” element may include one child element for each channel, as seen in the example below.
The “FromMachineActionConfigurations” element may include one child element for each channel, as seen in the example below.
The “ToMachineActionConfigurations” element may include one child element for each channel, as seen in the example below.
The “ToMachineSpeedMultiplicatorConfigurations” element may include one child element for each spindle, as seen in the example below.
The “FromMachineActualFeedConfigurations” element may include one child element for each channel, as seen in the example below.
The “FromMachineActualPositionOrSpeedConfigurations” element may include one child element for each axis, as seen in the example below.
The “FromMachineActualLPTConfigurations” element may include one child element for each motor driving the machine axes, as seen in the example below.
Turning to
The rotary axis (C/S2) can change functions between position mode and speed mode. The position mode and speed mode share the same real-time output signal in default machine configurations. It is possible to set the two modes to two separate real-time output signals if this is required by the machine tool manufacturer. This example machine uses two separate signals for position mode and speed mode as seen in axis C and spindle S2. This example machine outputs feed power [W].
The rotary axis (B/S2) can change functions between position mode and speed mode. This example machine outputs feed torque [N-m].
Movement in the X axis is driven by two separate motors which requires separate load/power/torque data signals. This example machine outputs feed load [%].
This example machine outputs feed power [W].
This example machine outputs feed torque [N-m].
The two rotary axes (C1/S1, C2/S2) can change functions between position mode and speed mode. This example machine outputs feed load [%].
With reference to
The instructions executable by a processor 350 may be arranged as a computer program 365 stored in said at least one memory 360. The at least one processor 350 and the at least one memory 360 may be arranged in an arrangement 355. The arrangement 355 may be a microprocessor and adequate software and storage therefor, a Programmable Logic Device, PLD, or other electronic component(s)/processing circuit(s) configured to perform the actions, or methods, mentioned above.
The computer program 365 may comprise computer readable code means which, when run in the system, causes the communication establishing system 300 to perform the steps described in the method described in relation to
Although the instructions described in the embodiments disclosed above are implemented as a computer program 365 to be executed by the at least one processor 350 at least one of the instructions may in alternative embodiments be implemented at least partly as hardware circuits. Alternatively, the computer program may be stored on a server or any other entity connected to the communications network to which the control node 100 has access via its communications interface 370. The computer program may than be downloaded from the server into the at least one memory 360, carried by an electronic signal, optical signal, or radio signal.
It will be appreciated that additional advantages and modifications will readily occur to those skilled in the art. Therefore, the disclosures presented herein, and broader aspects thereof are not limited to the specific details and representative embodiments shown and described herein. Accordingly, many modifications, equivalents, and improvements may be included without departing from the spirit or scope of the general inventive concept as defined by the appended claims and their equivalents.
Number | Date | Country | Kind |
---|---|---|---|
19172582 | May 2019 | EP | regional |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2020/059439 | 4/2/2020 | WO |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2020/224880 | 11/12/2020 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
5963450 | Dew | Oct 1999 | A |
6101545 | Balcerowski | Aug 2000 | A |
6799232 | Wang | Sep 2004 | B1 |
20050172220 | Humphrey | Aug 2005 | A1 |
20070007895 | Vangompel | Apr 2007 | A1 |
20100001785 | Takeishi | Jan 2010 | A1 |
20120254339 | Holmes | Oct 2012 | A1 |
20140358792 | Berke | Dec 2014 | A1 |
20160004610 | Knight | Jan 2016 | A1 |
20170149904 | Jonsson | May 2017 | A1 |
20180067472 | Hashimoto | Mar 2018 | A1 |
20180365423 | Poppe | Dec 2018 | A1 |
Number | Date | Country |
---|---|---|
2002281111 | Sep 2002 | JP |
2009194482 | Aug 2009 | JP |
9961961 | Dec 1999 | WO |
2008127863 | Oct 2008 | WO |
Number | Date | Country | |
---|---|---|---|
20220091577 A1 | Mar 2022 | US |