This disclosure relates to program-converting modules for multi-axis coordinated machines and program-converting methods, and, more particularly, to a program-converting module for multi-axis coordinated machines that have different configurations and a program-converting method.
Computer numerical control (CNC) machine tools may be programmed to perform high-precision processes. A programmer may write CNC machining programs based on processes, routes or precision required by workpieces to be processed.
In general, the programmer may use CAD/CAM software to write machining programs based on mechanism data of machines tools and predefined workpiece shapes, and apply the machining programs to machine tools that have at least four cooperated axes, wherein one of the machining programs corresponds to one machine tool. As shown in
With regard to a machine tool that has four cooperated axes that have different configurations, machining programs have to be rewritten, in order to comply with the machining programs of the CNC machine tools. Alternatively, the CAD/CAM software may be used to generate new machining programs that comply with the mechanism data of the CNC machine tools. However, it takes time and labor to rewrite machining programs. Further, the CAD/CAM software is expensive, and it takes a lot of money to use the CAD/CAM software to generate various machining programs that are applicable to different machine tools.
Therefore, how to use current CNC programs to convert programs among machines with multi-axis coordinated motion (i.e., multi-axis coordinated machines) that have different configurations, without rewriting CNC machining programs based on different mechanism data or using CAD/CAM software to convert the CNC machining programs, is becoming one of the urgent issues in the art.
In view of the above-mentioned problems of the prior art, the disclosure provides a program-converting module and a program-converting method that are applied to multi-axis coordinated machines that have different configurations, to convert machining programs of the multi-axis coordinated machines.
The program-converting module for multi-axis coordinated machines includes: a first input unit, to which machining programs and mechanism data of a plurality of first machines are input; a second input unit, to which mechanism data of a plurality of second machines are input, the second machines having a second configuration different from a first configuration of the first machines; a setting unit that sets at least one of the first machines to be a source machine, and sets one of the second machines to be a target machine; and a conversion unit that uses a kinematical method to convert the machining program of the source machine into a machining program of the target machine based on the mechanism data of the source and target machines.
The machining programs of the first machines are a joint coordinate, and the conversion unit includes: a forward conversion member that uses a forward kinematical method to convert the machining program of the source machine from the joint coordinate to a Cartesian coordinate based on the mechanism data of the source machine; and an inverse conversion member that uses an inverse kinematical method to convert the machining program of the source machine that has been converted into the Cartesian coordinate into the joint coordinate based on the mechanism data of the target machine, so as to generate the machining program that is applicable to the target machine.
The program-converting method for multi-axis coordinated machines includes: (1) inputting machining programs and mechanism data of a plurality of first machines and mechanism data of a plurality of second machines, the second machines having a second configuration different from a first configuration of the first machines; (2) setting at least one of the first machines to be a source machine, and setting one of the second machines to be a target machine; and (3) using a kinematical method to convert the machining program of the source machine into a machining program that is applicable to the target machine based on the mechanism data of the source and target machines.
The mechanism data of the first machines or of the second machines are input by GM codes, Macros, global or local variables, machine parameters, machining program functions or human-machine interfaces.
Compared with the prior art, the program-converting module and the program-converting method that are applied to multi-axis coordinated machines may convert CNC machining programs generated by CAD/CAM software into machining programs that are applicable to machines that have different mechanism data, so as to solve the problem of the prior art that a certain one of machining programs (e.g. GM codes) may be applied to only one multi-axis coordinated machine, but cannot be applied to other multi-axis coordinated machines that have different configurations.
The disclosure can be more fully understood by reading the following detailed description of the preferred embodiments, with reference made to the accompanying drawings, wherein:
The following illustrative embodiments are provided to illustrate the disclosure of the disclosure, these and other advantages and effects can be apparently understood by those in the art after reading the disclosure of this specification. The disclosure can also be performed or applied by other different embodiments. The details of the specification may be on the basis of different points and applications, and numerous modifications and variations can be devised without departing from the spirit of the disclosure.
Please refer to
Machining programs and mechanism data of a plurality of first machines may be input to the first input unit 21. The first machines include multi-axis coordinated machines M1, M2 and M3, and machining programs of the multi-axis coordinated machines M1, M2 and M3 are generated by CAD/CAM software. The first input unit 21 may be a GM code input unit, Macros input unit, global or local variable input unit, machine parameter input unit, machining program function input unit and/or human-machine interface. The first input unit 21 may receive GM codes, Macros, global or local variables, machine parameters or machining program functions that are input externally.
Mechanism data of the second machines, such as mechanism data of a multi-axis coordinated machine M4, may be input to the second input unit 22. The mechanism data of a machine indicate multi-axis machine types, rotation axis direction definitions or central offset vectors from workpieces to rotation axes.
The setting unit 23 sets at least one of the multi-axis coordinated machines M1, M2 and M3 to be a source machine, and sets one of the second machines to be a target machine. As shown in
The conversion unit 24 uses a kinematical method to convert the machining program of the source machine into a machining program that is applicable to the multi-axis coordinated machine M4 based on the mechanism data of the source machine (the multi-axis coordinated machine M1, M2 and M3) and the multi-axis coordinated machine M4 set by the setting unit 23. If the multi-axis coordinated machine M1 is set to be the source machine, the conversion unit 24 converts the machining program of the multi-axis coordinated machine M1 into the machining program that is applicable to the multi-axis coordinated machine M4 based on the mechanism data of the multi-axis coordinated machine M1 and the multi-axis coordinated machine M4.
The program-converting module 2 may further comprises a storing unit (not shown) that stores the machining programs and the mechanism data of the multi-axis coordinated machines M1, M2 and M3 and the mechanism data of the at least one second machine (the multi-axis coordinated machine M4).
As shown in
The inverse conversion member 242 uses an inverse kinematical method to convert the machining program of the source machine (multi-axis coordinated machine M1) that has been converted into the Cartesian coordinate into the joint coordinate according to the mechanism data of the target machine (the multi-axis coordinated machine M4), so as to generate the machining program that is applicable to the target machine (multi-axis coordinated machine M4).
The program-converting module 2 may receive the machining programs and mechanism data of a plurality of multi-axis coordinated machines M1, M2 and M3 and mechanism data of at least one second machine (the multi-axis coordinated machine M4), and sets at least one of the multi-axis coordinated machines M1, M2 and M3 to be the source machine. If only one source machine is set, a one-to-one machining program conversion is performed. If at least two source machine is set, a multiple-to-one machining program conversion is performed, i.e., integrating machining programs of multiple machines into one machining program of a single one target machine.
In step S32, the setting unit 23 sets at least one of the first machines (the multi-axis coordinated machine M1, M2 and M3) to be a source machine, and sets one of the second machines (the multi-axis coordinated machine M4) to be a target machine.
Then, a kinematical method is used to convert the machining program of the source machine into a machining program that is applicable to the target machine based on the mechanism data of the source machine (the multi-axis coordinated machine M1, M2 and M3) and the target machine (the multi-axis coordinated machine M4). That is, the conversion unit 24 uses a forward kinematical methods in step S33 to convert the machining program of the set source machine from the joint coordinate to the Cartesian coordinate based on the mechanism data of the set source machine, and uses a inverse kinematical method in step S34 to convert the machining program of the source machine that has been converted into the Cartesian coordinate into the joint coordinate based on the mechanism data of the set target machine (the multi-axis coordinated machine M4), so as to be the machining program format that is applicable to the set target machine (the multi-axis coordinated machine M4).
In step S31, the mechanism data are input to the machines by GM codes, Macros, global or local variables, machine parameters, machining program functions or human-machine interfaces, wherein data input by the human-machine interfaces indicate multi-axis machine types, rotation axis direction definitions or central offset vectors from workpieces to rotation axes, and the multi-axis machine types include a five-axis machine type.
It can be known from the program-converting module shown in
The program-converting module may be installed in a controller of a multi-axis coordinated machine, or installed externally to the controller of the multi-axis coordinated machine and wirelessly connected to the controller or connected to the controlled via a cable or network.
Please refer to
Please refer to
In conclusion, the program-converting module and the program-converting method that are applied to multi-axis coordinated machines of the disclosure may convert an original machining program into a machining program that may be applicable to a multi-axis coordinated machine that has a different configuration, such that machining programs of multiple multi-axis coordinated machines that have different configurations may be integrated into a machining program that is applicable to one multi-axis coordinated machine. Accordingly, the original machining program may be widely applied to multiple multi-axis coordinated machines that have different configurations, and the time and cost required for machining program conversion are reduced.
The foregoing descriptions of the detailed embodiments are only illustrated to disclose the features and functions of the disclosure and not restrictive of the scope of the disclosure. It should be understood to those in the art that all modifications and variations according to the spirit and principle in the disclosure of the disclosure should fall within the scope of the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
99137584 A | Nov 2010 | TW | national |
Number | Name | Date | Kind |
---|---|---|---|
5828574 | Robinson et al. | Oct 1998 | A |
6480896 | Brown et al. | Nov 2002 | B1 |
7024666 | Brown | Apr 2006 | B1 |
7039492 | Sugiyama | May 2006 | B2 |
20030158622 | Corey | Aug 2003 | A1 |
20090271028 | Freeman | Oct 2009 | A1 |
20120095599 | Pak et al. | Apr 2012 | A1 |
Number | Date | Country |
---|---|---|
0717866 | Nov 1997 | EP |
61-025212 | Feb 1986 | JP |
63-239511 | Oct 1988 | JP |
01226005 | Sep 1989 | JP |
02-024704 | Jan 1990 | JP |
03-277452 | Dec 1991 | JP |
09-047990 | Feb 1997 | JP |
10-177406 | Jun 1998 | JP |
2000-099123 | Apr 2000 | JP |
2001-175315 | Jun 2001 | JP |
2003-044109 | Feb 2003 | JP |
2005-305579 | Nov 2005 | JP |
2008-287471 | Nov 2008 | JP |
2009-146152 | Jul 2009 | JP |
2009-211369 | Sep 2009 | JP |
2009-217326 | Sep 2009 | JP |
200805017 | Jan 2008 | TW |
Entry |
---|
Bona et al., “Architectures for Rapid Prototyping of Model-based Robot Controllers”, 2004. |
Huang, “Development of the Numerical Control Program for a Five-axis Machine Tool with Nonorthogonal Rotary Axis”, Department of Mechanical and Automation Engineering Da-Yeh University, pp. 1-89, 2007. |
She, “Studies on the Five-axis Numerical Control Programming System for Machining of Spatial Cam”, Department of Mechanical Engineering National Cheng-Kung University, pp. 1-205, Jul. 1997. |
Lin, “Studies on the Postprocessor Algorithm for Multi-axis Numerical Control Machine Tools”, Department of Mechanical Engineering Da-Yeh University, pp. 1-122, Jun. 2001. |
Number | Date | Country | |
---|---|---|---|
20120109361 A1 | May 2012 | US |