WO2010032284A1 - 数値制御装置 - Google Patents

数値制御装置 Download PDF

Info

Publication number
WO2010032284A1
WO2010032284A1 PCT/JP2008/066663 JP2008066663W WO2010032284A1 WO 2010032284 A1 WO2010032284 A1 WO 2010032284A1 JP 2008066663 W JP2008066663 W JP 2008066663W WO 2010032284 A1 WO2010032284 A1 WO 2010032284A1
Authority
WO
WIPO (PCT)
Prior art keywords
tool
unit
path
drive axis
differential value
Prior art date
Application number
PCT/JP2008/066663
Other languages
English (en)
French (fr)
Inventor
信孝 西橋
Original Assignee
新日本工機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 新日本工機株式会社 filed Critical 新日本工機株式会社
Priority to EP08810713.1A priority Critical patent/EP2336839A4/en
Priority to PCT/JP2008/066663 priority patent/WO2010032284A1/ja
Priority to US13/119,001 priority patent/US8478438B2/en
Publication of WO2010032284A1 publication Critical patent/WO2010032284A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/408Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by data handling or data format, e.g. reading, buffering or conversion of data
    • G05B19/4086Coordinate conversions; Other special calculations
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/41Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
    • G05B19/4103Digital interpolation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/416Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control of velocity, acceleration or deceleration
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33269Convert cartesian to machine coordinates
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33271Convert workpiece to machine coordinates
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34202Reusable software, generic resource model library
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36231Translate, convert machine independent to machine dependent program
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36504Adapt program to real coordinates, shape, dimension of tool, offset path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41405Inverse kinematic, dynamic
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49121C-axis for turning, fifth axis for milling
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50162Stewart platform, hexapod construction
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50165Axis nc machine cooperates with two axis rotary table

Definitions

  • the present invention provides a software structuring technique for adding almost all of the control software to all machines in numerical control of machine tools of all machine structures including parallel mechanism machines and various forms of 5-axis machines. It relates to deceleration control technology.
  • control method is determined by the configuration of a drive shaft driven by a motor.
  • the configuration of the drive shaft depends on each machine tool such as lathe with simultaneous 2-axis control, machining center with simultaneous 3-axis control, head-side rotary type 5-axis machine, table rotary type 5-axis machine, mixed type 5-axis machine, parallel mechanism machine, etc. There are various.
  • a program coordinate system is defined, and the movement trajectory of the tool on the program coordinate system is described in the NC program.
  • the role of the numerical controller is to move the machine tool by driving the drive shaft based on this NC program.
  • the numerical control process in the 5-axis machine includes tool length correction in 5 axes, tool diameter correction in 5 axes, interpolation control for accurately moving the tool tip in 5 axes, and feed acceleration / deceleration control for clean and fast machining. Is included. Calculation of each of these controls requires calculation based on the rotation axis. In this calculation, the calculation method must be changed depending on the configuration of the drive shaft. For this reason, changes in accordance with the drive shaft configuration are unavoidable in various control processes.
  • the parts related to the configuration of the drive shaft in the control process are extracted and converted into a black box, simplifying each control process and simplifying each control process by sharing as many parts as possible.
  • the extraction of the part related to the structure of the drive shaft is incomplete and not black boxed.
  • the software is enlarged and complicated, and the development time and maintenance time are increased. . This situation will now be described by taking two types of 5-axis machines and parallel mechanism machines as examples.
  • the 5-axis machine usually has a total of 5 drive shafts, 3 axes consisting of XYZ linear axes and 2 rotation axes. Usually, the three linear axes are orthogonal to each other.
  • the two rotary shafts rotate the head side having the main shaft, rotate the mechanical table on which the workpiece is placed, and rotate the head and the mechanical table.
  • a work coordinate system parallel to the three XYZ linear axes is set as the NC program coordinate system, and the work coordinate system of the control point which is the rotation center of the rotation axis The upper coordinate value is obtained, and the machine is controlled by the NC program in which the operation of the machine is described by the coordinate value of the control point on the workpiece coordinate system and the rotation axis coordinate.
  • This NC program does not describe the movement trajectory of the tool but describes the movement of the control point for cutting the workpiece.
  • the 5-axis tool diameter correction function for shifting the tool path by the specified correction amount is similar to the tool tip point control function, although it has the same purpose, it is similar but different depending on the configuration of the drive shaft. Had been developed as.
  • Patent Document 2 describes control that enables a smooth change in the speed of a processing tool in order to improve the processing accuracy of a machine tool.
  • Patent Document 3 describes a parallel mechanism machine that controls the feed speed of each drive shaft of a machine tool having a drive axis that is not an orthogonal coordinate system.
  • Japanese Patent Application Laid-Open No. H10-228667 describes a control related to a parallel mechanism machine. From the description of Patent Document 4, it can be seen that the control of the parallel mechanism machine has been developed over a considerable time each time.
  • the parallel mechanism machine is exactly the same as the other five-axis machines in the sense of realizing control over the movement trajectory of the tool, and there should be no other difference except that the inverse kinematic relational expression is different. Therefore, it is no wonder that a numerical control device constituted by software common to all machine tools including a parallel mechanism machine is realized.
  • This path error is called an inward error, and is characterized by having a value that is approximately proportional to the square of the mechanical constant called the time constant and the square of the speed.
  • This time constant is a machine parameter corresponding to the allowable acceleration, and is set to a small value if the allowable acceleration is large and a large value if the allowable acceleration is small. That is, in a large machine tool, since the allowable acceleration is relatively small, the time constant is set large.
  • Patent Document 2 discloses a technique that makes the B acceleration / deceleration unnecessary by taking circular interpolation as an example. However, this method is effective in the case of an originally smooth curve such as an arc, but for NC programs that describe the movement trajectory of a tool by a collection of short linear command blocks that are generally used. Is not necessarily effective.
  • the inward error occurs in a smooth movement such as circular interpolation. Therefore, even when the mechanism can be moved faster, it must be decelerated in order to keep the inner error within the allowable value. As a result, acceleration / deceleration control that is effective for any tool path and does not perform such deceleration is required. It is ideal if the acceleration / deceleration control can be used in common for all machine tools.
  • a machine tool that has two drive shafts parallel to each other as a structure of the drive shaft and widens a movable range.
  • the movable range in the vertical direction is widened, and a bulky workpiece can be processed.
  • the drive axis Z and the drive axis W are used at the same time, there are various limitations such that combined use with other functions, for example, combined use with tool radius correction and circular interpolation cannot be performed.
  • An object of the present invention is to provide a numerical controller that solves the above-described problems.
  • a numerical controller of the present invention includes a spindle on which a tool is mounted, a spindle head that fixes and holds the spindle, a machine table that fixes and installs a workpiece, and the spindle head. It has at least a plurality of drive shafts for controlling the relative positional relationship including the rotation posture of the machine table and a motor for driving the drive shafts, and the orientation of the coordinate axes and the position of the origin are fixed on the machine table.
  • a numerical control device for controlling a machine tool in which a setup reference coordinate system is set comprising a preparation unit, a first control unit, a second control unit, and a third control unit, wherein the preparation unit is subdivided At least an NC program management unit, a setup information management unit, and a tool information management unit.
  • the NC program management unit determines the posture of the tool on the program coordinate system fixed to the workpiece.
  • the preparation information memory unit stores an NC program in which a tool position trajectory, a tool path consisting of a tool feed speed command for commanding the feed speed, and a tool path correction command as necessary is described.
  • the setup information management unit includes an orientation angle indicating an orientation of a coordinate axis cosine and an origin coordinate of the program coordinate system as an installation position including the orientation of the workpiece on the machine table, and Setup information that is position information on the setup reference coordinate system is stored in the preparation information memory unit, and the tool information management unit corrects the shape of the tool to be used, the length of the tool, and the tool radius.
  • Tool information including dimensional information on the quantity is stored in the preparation information memory unit, and the first control unit reads the NC program as subdivided sub means.
  • the NC program reading unit reads the tool path and the tool path correction command described in the NC program and stores them in a path calculation memory unit,
  • the tool path correcting unit corrects the tool path in accordance with the tool path correcting command, and the second control unit considers the characteristics of the configuration of the drive shaft based on the setup information and the tool information.
  • a drive axis path corresponding to the trajectory of the drive axis coordinates, which is the position coordinates of all the drive axes, is stored from the tool path, and the obtained drive axis path is stored in the path calculation memory unit.
  • the control unit obtains the amount of movement of each drive axis for each interpolation period from the drive axis path and outputs it to the motor, and the preparation unit is subdivided sub means
  • a drive axis configuration management unit and the drive axis configuration management unit correlates the spindle position and the drive axis coordinates, which are position information representing the position including the rotation posture of the spindle on the setup reference coordinate system.
  • the second control unit includes a main axis path calculation unit and a drive axis path calculation unit as subdivided sub means, and the main axis path calculation unit includes the setup information regardless of the configuration of the drive axis. And the tool information, the tool path is converted into a spindle path that is a trajectory of the spindle position and stored in the path calculation memory unit, and the drive axis path calculation unit is the spindle drive axis. Conversion function And used to convert the spindle path to the drive shaft pass those to be stored in the path computation memory unit.
  • FIG. 1 is a schematic view of a machine tool 1A having a machine structure to which the present invention is applicable.
  • 1 schematically illustrates a machine tool 1B having a machine structure to which the present invention is applicable.
  • a machine tool 1C having a machine structure to which the present invention is applicable is illustrated in a schematic view. It is a figure for demonstrating the relationship between a tool position and a spindle position, Comprising: It is the conceptual diagram which illustrated the end mill. It is a figure for demonstrating the relationship between a tool position and a spindle position, Comprising: It is the conceptual diagram which illustrated the angle tool.
  • FIG. 1 is a perspective view showing an entire 5-axis machine tool as an example of a machine tool to which the present invention is applied.
  • a machine tool 1 has a machine table 2 that holds a workpiece as a workpiece.
  • the machine table 2 is arranged longitudinally in the longitudinal direction and is configured to be movable in the direction of the drive shaft X (horizontal longitudinal direction).
  • a pair of support columns 3 and 3 each having a ball screw portion (not shown) are erected on both sides of the machine table 2, and a beam portion 4 is stretched over the upper end portions of the support columns 3 and 3.
  • a motor MO see FIG.
  • this motor MO allows the ball screw portions of the left and right support columns 3 and 3 to be connected via an unillustrated bevel gear or the like. It is configured to be driven to rotate in synchronization.
  • the cross rail 5 is stretched over the ball screw portion of the support columns 3 and 3 by screwing the ball screw portions of the support columns 3 and 3 to both sides of the cross rail 5. Thereby, the cross rail 5 is movable in the vertical W-axis direction along the ball screw portions of the support columns 3 and 3.
  • the head member 6 is supported on the cross rail 5 so as to be movable along the Y-axis direction which is the left-right direction.
  • the head member 6 is long in the vertical direction.
  • the head member 6 is provided on the cross rail 5 so as to be able to move in and out in the Z-axis direction, that is, the vertical direction.
  • an attachment member 8 for side surface processing having a spindle head 9 inside is mounted at the lower part of the head member 6, an attachment member 8 for side surface processing having a spindle head 9 inside is mounted.
  • the spindle head 9 is provided with a spindle 91 on which tools such as a drill can be mounted in the horizontal direction.
  • the main shaft 91 is rotatable about at least one horizontal axis with respect to the main shaft head 9.
  • a rotational driving force from the head member 6 is transmitted to the tools such as a drill through the main shaft 91.
  • the drive mechanism of the 4-axis control by the machine table 2, the cross rail 5, and the head member 6 can be configured by, for example, a motor MO and a ball screw.
  • control box 10 is disposed in the vicinity of the machine table 2.
  • the control box 10 controls driving of the motors MO (see FIG. 14) for driving the axes of the table 1, the cross rail 5 and the head member 6 in accordance with a program input by the operator.
  • FIG. 2 shows a machine tool 1A
  • FIG. 3 shows a machine tool 1B
  • FIG. Each of the machines 1C is shown.
  • FIG. 11 shows a machine tool 1D
  • FIG. 12 shows a machine tool 1E.
  • a machine tool 1D shown in FIG. 11 is obtained by adding a W axis to the machine tool 1A shown in FIG. 2, and a machine tool 1E shown in FIG. 12 is obtained by adding a U axis to the machine tool 1C shown in FIG. is there.
  • FIG. 13 is a configuration diagram showing an embodiment of the machine tool 1E of FIG.
  • each machine tool has a machine table 2 and a spindle head 9.
  • the machine tool shown in FIGS. 2, 3 and 11 has a drive shaft A for changing the relative positional relationship between the machine table 2 and the spindle head 9 including the rotational attitude of the machine table 2 and the spindle head 9.
  • a drive source such as a motor MO that moves the drive shaft A.
  • a spindle 91 on which a tool is mounted is fixedly installed on the spindle head 9 as in the machine tool 1 of FIG.
  • the machine tool 1A has five drive shafts A, B, X, Y, and Z, and a drive source corresponding to each of the drive shafts.
  • the drive shafts X, Y, and Z are orthogonal to each other. Strictly speaking, the machine tool 1A may be classified as a different configuration depending on the parent-child relationship between the drive shaft A and the drive shaft B, but here, since there is no problem in the explanation, it is particularly divided. Not done.
  • the machine tool 1B has five drive shafts A, C, X, Y, and Z as shown in FIG.
  • the drive shaft C is a drive shaft that rotates the machine table 2.
  • the drive axes X, Y, and Z are orthogonal to each other.
  • the machine tool 1C has a parallel mechanism, and has six drive shafts X1, X2, X3, X4, X5, and X6 as shown in FIG. Further, as shown in FIG. 11, the machine tool 1D has six drive shafts A, B, X, Y, Z, and W, among which the drive shafts Z and W are parallel to each other. As shown in FIG. 12, the machine tool 1E has seven drive shafts of X1, X2, X3, X4, X5, X6, and U.
  • a setup reference coordinate system 20 for fixing the origin and the rotational orientation on the machine table 2 is established as a right-handed orthogonal coordinate system.
  • the setup reference coordinate system 20 is set to a position where the position and orientation from the structural reference can be defined.
  • the setup reference coordinate system 20 is not changed in principle once established on the machine table 2, and is defined as follows, for example.
  • a setup reference coordinate system 20 having coordinate axes parallel to the drive axes X, Y, and Z is established.
  • the machine tool 1B when the coordinates of the drive axis C are zero, the machine tool 1B has coordinate axes parallel to the drive axes X, Y, and Z, respectively, and the intersection of the rotation center line of the drive axis C and the machine table 2 is the origin.
  • a setup reference coordinate system 20 is established.
  • the setup coordinate system 20 is established at an appropriate predetermined position on the machine table 2.
  • the setup reference coordinate system 20 is similarly set at a predetermined position on the machine table 2 in the machine tools 1D and 1E shown in FIGS. Details will be described later.
  • FIGS. 5 and 6 are diagrams for explaining the relationship between the tool position and the spindle position.
  • FIG. 5 is a conceptual diagram when an end mill is illustrated
  • FIG. 6 is a conceptual diagram when an angle tool is illustrated. More specifically, FIGS. 5 and 6 show the relationship between the position of the tool and the spindle position of the spindle on which the tool is mounted when the position of the tool on the program coordinate system is determined.
  • FIG. The spindle position means a position including the attitude of the spindle on the setup reference coordinate system 20.
  • the position of the tool 11 is a relative position including the posture of the tool 11 with respect to the workpiece W on the machine table 2 (see FIGS. 8 and 10).
  • the position of the tool 11 is the coordinate value (x, y, z) of the reference point 111 of the tool 11 on the program coordinate system 30 which is a right-handed orthogonal coordinate system fixed to the workpiece W and the attitude of the tool 11. It is expressed by the Euler angles ( ⁇ , ⁇ , ⁇ ) shown.
  • ⁇ and ⁇ represent the inclination of the tool 11, and ⁇ represents an angle in the rotational direction around the center line of the tool 11.
  • a plurality of program coordinate systems 30 may be provided on one workpiece, but here, a case where one program coordinate system is provided for the workpiece W will be described.
  • the reference point 111 of the tool 11 generally corresponds to the tip of the tool located on the center line of the tool 11.
  • the position of the tool 11 is denoted by p ⁇ .
  • the workpiece W is fixedly installed on the machine table 2, the installation position is acquired and stored as setup information D ⁇ , and then the tool 11 is mounted on the spindle 91 and the tool 11 is installed.
  • Related information is stored as tool information T ⁇ .
  • the setup information D ⁇ is stored as position information including the rotational orientation of the program coordinate system 30 with respect to the setup reference coordinate system 20.
  • the tool information T ⁇ is composed of data including at least the types of tools indicating end mill tools and angle tools as shown in FIGS. 5 and 6 and dimensions for determining the shape of each tool.
  • the position q ⁇ of the spindle 91 is determined by the coordinate value (X, Y, Z) of the reference point 911 on the setup reference coordinate system 20 and the Euler angle ( ⁇ ′ indicating the attitude of the spindle 91 on the setup coordinate system 20. , ⁇ ′, ⁇ ′).
  • the correlation between the tool position p ⁇ and the spindle position q ⁇ is determined by the setup information D ⁇ and the tool information T ⁇ . Not affected.
  • the conversion function from the tool position p ⁇ to the spindle position q ⁇ is expressed as a setup tool conversion f ⁇ and expressed by the following equation (1).
  • FIG. 7 and 8 are diagrams for explaining the setup tool conversion
  • FIG. 7 is a diagram showing a process of the setup tool conversion
  • FIG. 8 is an image diagram of the setup tool conversion. From these figures, it can be seen that the setup tool conversion f ⁇ does not depend on the structure of the machine tools 1A to 1E and can be common to various machine tools.
  • the correlation between the spindle position q ⁇ and the drive axis coordinates r ⁇ indicating the position of each drive axis corresponding to the spindle position q ⁇ is the drive axis of each machine tool.
  • 9 and 10 are diagrams for explaining the inverse kinematic relational expression
  • FIG. 9 is a diagram showing the inverse kinematic relational expression
  • FIG. 10 is an image diagram of the inverse kinematic relational expression.
  • the spindle drive axis conversion which is a conversion function from the spindle position q ⁇ to the drive axis coordinate r ⁇ , is represented by g ⁇ , and the inverse kinematic relational expression is represented by the following equation (2).
  • the drive shaft Z and the drive shaft are used as the redundancy constraint conditions in the equation (2). It is only necessary to redefine the equation (2) as an inverse kinematic relational expression in which the drive axis coordinate r ⁇ with respect to the main shaft position q ⁇ is set to one by reinforcing and adding a condition for operating with W distributed equally.
  • a machine tool 1E having a parallel mechanism has six joints (coupling portions) 1911 to 1916 on a base 60 supported on a frame (not shown) that is movable in the direction of the drive axis U.
  • a total of six struts (drive shafts) 1921 to 1926 are connected to the joints 1911 to 1916, one each.
  • the struts 1921 to 1926 expand and contract independently based on the control of the numerical controller, so that the end effector 194 is indirectly moved through the joints 1931 to 1936, and the workpiece W on the machine table 2 is processed. Perform the process.
  • the end effector 194 is held by the base 60 via a parallel link mechanism constituted by joints 1911 to 1916 on the base 60, a plurality of struts 1921 to 1926, and joints 1931 to 1936 of the end effector 194. Yes.
  • a tool 11 is attached to the tip of the end effector 194. By controlling the amount of expansion / contraction of the struts 1921 to 1926, the position and posture of the tool 11 are appropriately set.
  • the part related to the drive shaft configuration in all of the machine tools 1A to 1E is enclosed in the equation (2), and the spindle drive axis conversion for converting the spindle position q ⁇ to the drive axis coordinate r ⁇ as the software related to this.
  • Machine tool with function g ⁇ and drive axis partial differential value acquisition function that obtains first, second, and third order partial differential values of equation (2) for each component of spindle position q ⁇ Create each. Then, by registering the created function for each machine tool in the storage unit and calling the function when necessary, all the software except the function is made common to the machine tools 1A to 1E.
  • the configuration of the numerical control device and the numerical control process in the present embodiment will be described.
  • FIG. 14 is a block diagram showing an embodiment of a numerical control apparatus applied to the present invention.
  • the numerical control unit 300 is configured by, for example, a microcomputer, and includes a preparation unit 310, a first control unit 320, a second control unit 330, and a third control unit 340, a machine information memory unit 350, and a preparation.
  • the information memory unit 360 and the path calculation memory unit 370 are connected.
  • the preparation unit 310 includes a drive axis configuration management unit 311, a redundancy constraint condition addition unit 312, a feed control condition management unit 313, an NC program management unit 314, a setup information management unit 315, and a tool information management unit 316.
  • the first control unit 320 includes an NC program reading unit 321, a tool path parameter representing unit 322, and a tool path correcting unit 323.
  • the second control unit 330 includes a spindle path calculation unit 331 and a drive axis path calculation unit 332.
  • the third control unit 340 includes an acceleration / deceleration interpolation control unit 341 and a pulse interpolation unit 346.
  • the acceleration / deceleration interpolation control unit 341 includes a block smooth interpolation unit 342, a corner smooth interpolation unit 343, a feed control condition conversion unit 344, and a parameter variable acceleration / deceleration determination unit 345.
  • FIG. 15 is a flowchart showing an embodiment of the flow of the numerical control process.
  • the flow of the numerical control process in this embodiment will be described with reference to FIG.
  • the NC program is read halfway and temporarily stored in a RAM (not shown) according to the capacity of the memory unit.
  • the repetitive process of sequentially reading the remaining part of the NC program is performed, but the description of the repetitive part is omitted for the sake of simplicity.
  • the preparation unit 310 functions in steps S100 to S120.
  • the drive shaft configuration management unit 311 receives inputs of a spindle drive axis conversion function g ⁇ and a drive axis partial differential value acquisition function created based on the inverse kinematic relational expression, and converts these functions into a machine.
  • the information is registered in the information memory unit 350, and the use of the spindle drive axis conversion function g ⁇ and the drive axis partial differential value acquisition function corresponding to the corresponding machine tool is validated.
  • step S105 the feed control condition management unit 313 registers the drive axis acceleration / deceleration conditions including the maximum allowable speed, the maximum allowable acceleration, and the maximum allowable jerk for each drive axis in the machine information memory unit 350.
  • step S110 the NC program management unit 314 accepts an input of an NC program including a tool path made up of a tool position locus and a tool feed speed command, and a tool path correction command that is a command for correcting the tool path.
  • the NC program is registered in the preparation information memory unit 360.
  • step S 115 the tool information management unit 316 receives input of the tool information T ⁇ of the tool 11 attached to the spindle 91 and registers the tool information T ⁇ in the preparation information memory unit 360.
  • step S ⁇ b> 120 the setup information management unit 315 receives input of setup information D ⁇ of the workpiece to be installed on the machine table 2 and registers the setup information D ⁇ in the preparation information memory unit 360.
  • the first control unit 320 functions.
  • the NC program reading unit 321 reads the NC program 361 registered in the preparation information memory unit 360, and extracts a tool path and a tool path correction command described in the NC program 361. And stored in the path calculation memory unit 370.
  • the tool path correcting unit 323 corrects the tool path according to the tool path correcting command.
  • the tool path parameter variable expression unit 322 converts the tool path p ⁇ into a function expression using the tool path integrated length s, which is a movement distance along the trajectory of the tool path p ⁇ , as a parameter.
  • the tool path converted into the function expression is expressed as p ⁇ (s).
  • FIG. 16 shows an example of the tool path p ⁇ (s). For example, when the tool path passes from (50, 50), (150, 50), (210, 110) from the starting point (50, 150) as shown in FIG. It becomes.
  • step S140 the tool path parameter representing unit 322 converts the feed speed command included in the tool path into a feed speed command of the tool path integrated length s.
  • CL data (cutter location data), that is, tool path data is created by the CAM, and this CL data is converted into an NC (numerical control) program suitable for each machine tool in the post processor received from the CAM.
  • NC program reading unit 321 for receiving CL data output from the CAM as an NC program, a conventional post processor can be eliminated.
  • the second control unit 330 functions.
  • the spindle path calculation unit 331 uses the setup tool conversion f ⁇ based on the setup information D ⁇ and the tool information T ⁇ to register the tool path p ⁇ (s) registered in the path calculation memory unit 370.
  • the feed speed command of the tool path integrated length s is used as it is for the feed speed command of the spindle path q ⁇ (s). That is, Expression (1) is expressed by the following Expression (3).
  • step S150 the drive axis path calculation unit 332 obtains a drive axis path r ⁇ (s), which is a locus of drive axis coordinates, from the main axis path q ⁇ (s) using the main axis drive axis conversion function g ⁇ . .
  • the feed speed command of the tool path integrated length s is used as it is for the feed speed command of the drive shaft path r ⁇ (s). That is, Expression (2) is expressed by the following Expression (4).
  • step S155 the block smooth interpolation unit 342 selects one of the start point and the end point of each command block for each command block having a length set in advance with respect to the drive axis path for each drive axis. Alternatively, in both cases, it is determined whether or not the primary differential value and the secondary differential value based on the tool path accumulated length s should be continuously changed, and if it is determined that they should be connected, the adjacent block is continuously changed.
  • a smooth block curve corresponding to an interpolation curve that matches the primary differential value and the secondary differential value after first determining the primary differential value and the secondary differential value by the tool path accumulated length s at at least one of the start point and the end point of The drive axis path is modified to change the drive axis path.
  • FIGS. 17 to 19 show image diagrams of the corrected drive shaft paths in the drive shaft Y in the machine tools 1A to 1D.
  • each drive shaft is represented as a smooth block curve that continuously changes the primary differential value and the secondary differential value by the tool path integrated length s from the adjacent block at both the start point and the end point.
  • FIG. 17 is a diagram showing command values for each command block of the drive axis y with respect to the drive axis x
  • FIG. 18 is a diagram showing an interpolated smooth block curve on the drive axis y
  • FIG. 19 is an interpolated smooth block on the drive axis y. It is a figure which shows the primary differentiation by the tool path integrated length s of a curve.
  • FIG. 20 shows a third-order polynomial curve of the tool path accumulated length s as a smooth block curve for continuously changing the primary differential value and the secondary differential value by the tool path accumulated length s from adjacent blocks at both the start point and the end point.
  • step S160 the corner smooth interpolation unit 343, at the end point of each command block of the drive axis path, after the interpolation processing by the block smooth interpolation unit 342, the primary differential value or the secondary differential value by the tool path integrated length s. It is determined whether any of the values matches the corresponding differential value at the start point of the subsequent command block.
  • the corner smooth interpolation unit 343 determines that either the primary differential value or the secondary differential value does not match the corresponding differential value at the start point of the subsequent command block, the corner smooth interpolation unit 343 drives each drive axis.
  • the drive axis path is modified to change the axis path to a smooth corner curve.
  • the smooth corner curve is the same as the primary differential value and the secondary differential value of the current command block in which the primary differential value and the secondary differential value are judged to be appropriate or not, and is in contact with the current command block, and
  • the primary differential value and the secondary differential value of the subsequent command block are the same as the primary differential value and the secondary differential value of the subsequent command block and are in contact with the subsequent command block. It is a curve that is less than the path correction tolerance.
  • the drive axis path for each drive axis is corrected by changing the drive axis path between the contact point between the smooth corner curve and the current command block and the contact point between the smooth corner curve and the subsequent command block. Replace with a curve. 21 to 24 show image diagrams of smooth corner curves. Further, in the present embodiment, as shown in FIG.
  • FIGS. 21 to 24 show images of smooth corner curves
  • FIG. 21 is a diagram obtained by performing smooth interpolation so that discontinuities are indicated by broken lines
  • FIG. 22 is a diagram of primary differentiation (dashed line)
  • FIG. FIG. 24 is a diagram of third order differentiation (dashed line).
  • ⁇ d shown in FIG. 21 is a corner interpolation allowable error
  • the smooth interpolation curve is obtained so that the corner interpolation allowable error ⁇ d is within a preset range.
  • FIG. 25 is obtained by connecting a cubic polynomial curve of three tool path integration lengths s so that the primary differential value and the secondary differential value by the tool path integration length s continuously change at their connection points. It is a figure which shows a smooth corner curve. In FIG. 25, for discontinuous points (s [3], Y (s [3])) Is established.
  • the feed control condition conversion unit 344 stores the parameter acceleration / deceleration conditions in the machine information memory unit 350 as the spindle path q ⁇ (s) based on the drive axis path r ⁇ (s).
  • the drive shaft acceleration / deceleration condition 354 is derived as follows.
  • the parametric acceleration / deceleration condition is a control condition of the tool path integrated length s that should be satisfied when each drive shaft is driven, and is a first-order differential according to the time of the tool path integrated length s in each value of the tool path integrated length s. This is a condition to be satisfied by s ′, the second derivative s ′′, and the third derivative s ′′ ′.
  • the drive axis coordinates r ⁇ (s), the spindle position q ⁇ (s), and the inverse kinematic transformation function g ⁇ (q ⁇ (s), k ⁇ ) are expressed as an array as follows.
  • n indicates the number of drive shafts.
  • r [i], g [i], and q [i] are component representations of r ⁇ (s), q ⁇ (s), and g ⁇ (q ⁇ , k ⁇ ), respectively.
  • r '[i] replaces dr [i] / ds with r ”[i] is d (dr [i] / ds) / ds r ”'[i] is d (d (dr [i] / ds) / ds) / ds, q '[j] is dq [j] / ds, q ”[j] is d (dq [j] / ds) / ds, q ”'[j] is d (d (dq [j] / ds) / ds) / ds s' is ds / dt, s ”is d (ds / dt) / dt, s ”'is d (d (ds / dt) / dt) / dt, ⁇ gij is ⁇ g [i] / ⁇
  • the drive shaft acceleration / deceleration conditions stipulate the maximum permissible values for the speed of equation (9), the acceleration of equation (10), and the jerk of equation (11).
  • Q [j], q ′ [j], q ′′ [j], q ′′ ′ [j] at each value of the tool path accumulated length s is determined by the spindle path.
  • ⁇ gij, ⁇ gijk, and ⁇ gijkm included in the above relational expression may be obtained using a drive axis coordinate partial differential value acquisition function.
  • the parametric variable acceleration / deceleration conditions are conditions that the primary differential s ′, the secondary differential s ′′, and the tertiary differential s ′′ ′ according to the time of the tool path integrated length s in each value of the tool path integrated length s should satisfy.
  • step S170 the parametric variable acceleration / deceleration determining unit 345 determines the parametric variable time function as a function of the time t of the tool path integrated length s based on the parameter acceleration / deceleration conditions and the feed speed command of the tool path integrated length s. Confirm s (t).
  • step S175 the pulse interpolation unit 346 determines the value of the parameter time function s (t) for each interpolation cycle time and the drive axis coordinate r ⁇ (s) based on the parameter time function s (t). And a movement amount of each drive axis coordinate for each interpolation cycle, and the movement amount is output to the motor MO as a drive source.
  • the posture of the tool at the tool position is commanded by the Euler angles ( ⁇ , ⁇ , 0), but it may be commanded by a tool axis vector instead. Or it is good also as what commands according to the angle itself of the rotational drive shaft of any machine tool.
  • the rotational drive shaft around the tool axis is excluded, but the drive shaft around the tool axis can also be controlled.
  • a drive axis E around the axis of the tool is added.
  • the posture of the tool position p is commanded by ( ⁇ , ⁇ , ⁇ ), and the posture of the spindle position is also managed by ( ⁇ ′, ⁇ ′, ⁇ ′).
  • is not always explicitly commanded.
  • a function of automatically executing the correction of the tool path so as to be perpendicular to the traveling direction of the tool path may be incorporated. This function can be commonly used for the machine tools 1A to 1E as long as a drive shaft around the tool axis is added.
  • the redundancy constraint condition adding unit 312 prepares an instruction for selecting either high-rigidity machining or ecological (light) machining as an NC program redundancy constraint condition switching command, and an NC program reading unit In 321, when the redundancy degree constraint condition switching command is read and “high rigidity machining” is instructed, the condition that “retract Z axis as much as possible” is adopted as the redundancy degree constraint condition.
  • the redundancy degree constraint condition switching command is read and “high rigidity machining” is instructed
  • the condition that “retract Z axis as much as possible” is adopted as the redundancy degree constraint condition.
  • “eco-machining” by adopting the condition “use the drive axis Z without using the W axis as much as possible” as the redundancy constraint condition, Realize processing freely.
  • the tool position commanded to the NC program is the coordinate value (X, Y, Z) of the tip 111 of the tool 11 and ( ⁇ , ⁇ , ⁇ ) representing the attitude of the tool 11, of which ( ⁇ , ⁇ ) may be a tool axis vector.
  • the NC program reading unit 321 reads the NC program of a specific format and converts it into the tool path. By registering the converted tool path in the path calculation memory unit 370, an embodiment in which an existing NC program for a conventional machine tool can be used as it is can be constructed.
  • each drive shaft for feed speed control is limited to the maximum allowable speed, the maximum allowable acceleration, and the maximum allowable jerk.
  • the feed speed acceleration / deceleration unit that guarantees the continuous change of the first and second derivatives with reference to the second and third derivatives has been described.
  • the present invention does not deny further higher-order control, for example, n-order of speed, acceleration, jerk, jerk change rate, ... By assuring continuous change up to the first derivative, it opens the way to realizing higher-speed feed rate control.
  • acceleration / deceleration control that absorbs inertia in a very short time can be realized.
  • the numerical control device includes a spindle on which a tool is mounted, a spindle head that fixes and holds the spindle, a machine table that fixes and installs a workpiece, and rotation of the spindle head and the machine table.
  • a setup reference coordinate system having at least a plurality of drive shafts for controlling the relative positional relationship including the posture and a motor for driving the drive shafts, the orientation of the coordinate axes and the position of the origin being fixed on the machine table.
  • a numerical control device for controlling a set machine tool comprising a preparation unit, a first control unit, a second control unit, and a third control unit, wherein the preparation unit is at least as a subdivided sub means An NC program management unit, a setup information management unit, and a tool information management unit, wherein the NC program management unit includes a position of a tool on a program coordinate system fixed to the workpiece.
  • the preparation information memory unit stores an NC program that describes the trajectory of a certain tool position, a tool path consisting of a tool feed speed command for commanding the feed speed, and a tool path correction command as necessary.
  • the setup information management unit includes, as an installation position including the orientation of the workpiece on the machine table, an origin coordinate of the program coordinate system and an orientation angle indicating a direction of a coordinate axis cosine, and the setup reference Setup information that is position information on the coordinate system is stored in the preparation information memory unit, and the tool information management unit measures the shape of the tool to be used, the length of the tool, and the correction amount of the tool radius.
  • Tool information including information is stored in the preparation information memory unit, and the first control unit includes an NC program reading unit and a process as a subdivided sub means.
  • a path correction unit, and the NC program reading unit reads the tool path described in the NC program and the tool path correction command, and stores the tool path in a path calculation memory unit.
  • the unit corrects the tool path according to the tool path correction command, and the second control unit considers the characteristics of the configuration of the drive shaft based on the setup information and the tool information.
  • the third control unit is The amount of movement of each drive axis for each interpolation period is obtained from the drive axis path and output to the motor. Further, the preparation unit is driven as a sub-unit that is subdivided.
  • a drive axis configuration management unit wherein the drive axis configuration management unit is a correlation between the drive shaft coordinates and the drive shaft coordinates, which is position information representing the position including the rotation posture of the drive shaft on the setup reference coordinate system
  • a spindle drive axis conversion function for converting the spindle position based on the inverse kinematic relation formula determined by the configuration of the drive axis into the drive axis coordinates is stored in the machine information memory unit
  • the second control unit includes a spindle path calculation unit and a drive axis path calculation unit as subdivided sub means, and the spindle path calculation unit includes the setup information regardless of the configuration of the drive axis.
  • the tool path is converted into a spindle path that is a locus of the spindle position and stored in the path calculation memory unit, and the drive axis path calculation unit is configured to convert the spindle drive axis conversion Use function Is intended to be stored in the path computation memory unit converts the spindle path to the drive shaft passes.
  • the part affected by the configuration of the drive shaft is only the inverse kinematic relational expression that is the correlation expression between the reference position of the spindle on which the tool is mounted and the drive shaft coordinates, and the structure of the drive shaft influences.
  • the part was completely decoupled from the transformation involved in the shape and dimensions of the tool and the location of the workpiece.
  • functions related to the tool path such as correction of the tool path such as tool radius correction until the spindle position is obtained, coordinate conversion according to the shape and dimensions of the tool, coordinate conversion according to the installation position including the posture of the workpiece can be made common to all machines.
  • tool length correction and setup error correction are also included in common parts of all machines.
  • the preparation unit further includes a redundancy constraint condition adding unit as a sub-means that is subdivided, and the redundancy constraint condition adding unit is configured so that the machine tool has the inverse kinematic relationship.
  • the redundancy constraint condition adding unit is configured so that the machine tool has the inverse kinematic relationship.
  • the path calculation memory unit stores a redundancy constraint that is an additional condition that allows the drive axis coordinates to be defined as one, and the spindle drive axis conversion function is stored in the path calculation memory unit. It is preferable that the function is to calculate one drive axis coordinate corresponding to the main shaft position by using the redundancy constraint condition and the inverse kinematic function together.
  • the preparation unit is further configured to include a feed control condition management unit as a subdivided control means, and the feed control condition management unit is configured such that each drive axis coordinate is primary according to time.
  • the drive axis acceleration / deceleration conditions including the maximum allowable values of the speed, acceleration, and jerk of each drive axis obtained by differentiation, secondary differentiation, and cubic differentiation are stored.
  • the first control unit is further subdivided.
  • a tool path parameter expressing unit as a sub means, and the tool path parameter expressing unit calculates the tool path included in the tool path as an integrated length of a moving distance including a change in posture of the tool path.
  • the tool path is expressed by a function having a parameter, and the tool feed speed command is converted into the speed of s, and the tool path is changed to a tool path expressed as a function having s as a parameter.
  • the spindle path calculation unit obtains a spindle path that is expressed as a function using s as a parameter, and the drive axis path calculation unit calculates a drive axis path that is expressed as a function using s as a parameter.
  • the third control unit includes an acceleration / deceleration interpolation control unit and a pulse interpolation unit as sub-subdivided sub means, and the acceleration / deceleration interpolation control unit includes the tool feed speed command and the drive axis addition unit.
  • the pulse interpolation unit determines the value of s from time to time based on a deceleration condition, and the pulse interpolation unit obtains the value of s for each interpolation period based on the determined value of time from s. Then, the drive axis coordinates corresponding to the value of s for each obtained interpolation period are obtained, the movement amount of each drive axis for each interpolation period is calculated from the drive axis coordinates, and the movement amount is output to the motor.
  • the drive shaft In addition to the spindle drive axis conversion function, the composition management unit obtains a value obtained by first, second, and third order partial differentiation of each drive axis coordinate by each component of the spindle position based on the inverse kinematic relational expression.
  • An axis partial differential value acquisition function is stored in the machine information memory unit, and for each drive axis, a drive axis path correction allowable error that is a position error allowed for correction of the drive axis path is stored in the preparation information memory unit.
  • the acceleration / deceleration interpolation control unit includes a block smooth interpolation unit, a corner smooth interpolation unit, a feed control condition conversion unit, and a parameter variable acceleration / deceleration determination unit as further sub-means.
  • the block smooth interpolation unit determines whether or not at least one of the start point and the end point is smoothly connected to an adjacent block for each command block and each drive axis, and then slides at the start point.
  • the first and second differential values obtained by s in common and appropriate at the start point of the current block for which the determination has been made and the end point of the block immediately before the current block are obtained and connected at the start point.
  • the first and second differential values according to s, which are common and appropriate at the end point of the current block and the start point of the block immediately after the current block are defined as conditions.
  • the drive axis path to be replaced is corrected, and the corner smooth interpolation unit is a continuous search obtained by the block smooth interpolation unit.
  • the corner smooth interpolation unit is a continuous search obtained by the block smooth interpolation unit.
  • the command block that determines the suitability of the match and the first and second derivative values that coincide with the first and second derivative values of the command block next to the command block, and an error from the original drive shaft path is A smooth corner curve that is equal to or smaller than the drive shaft path correction allowable error and in which the primary differential value and the secondary differential value continuously change was obtained, and the suitability of the smooth corner curve and the differential value was determined.
  • the drive axis path is corrected by replacing the drive axis path between the contact point with the command block and the contact point between the smooth corner curve and the next command block with the smooth corner curve, and the feed control condition change is performed.
  • the unit uses the spindle drive axis conversion function and the drive axis partial differential value acquisition function, and based on the drive axis acceleration / deceleration conditions, the s and s speeds in each part of the drive axis path, and the s
  • a parameter variable acceleration / deceleration condition that is an acceleration and s jerk conditional expression is derived, and the parameter variable acceleration / deceleration determining unit determines that the parameter variable acceleration / deceleration condition and the maximum speed are within the range of the s feed speed command.
  • a parameter time function s (t) which is a function expression of the time of s, under the condition to perform, and the pulse interpolation unit is configured to calculate each interpolation period based on the parameter time function.
  • Each drive axis movement amount Put out, it is preferable that outputs a drive shaft movement amount thereof calculated to the motor.
  • machine-friendly smooth acceleration / deceleration control can also be realized in curved surface machining based on short linear interpolation commands and machining based on spline interpolation commands and NURBS curve commands that are often used for machining automobile dies and aircraft parts.
  • the software need only be created once as common to all machine tools.
  • the parts that depend on the structure of the drive shaft are only the spindle drive shaft conversion function based on the inverse kinematics function and the drive shaft partial differential value acquisition function. Both of these functions can be created once and stored in the storage unit. For example, it can be used in common just by calling from the storage unit.
  • the smooth block curve defines a first-order differential value and a second-order differential value at both the start point and end point of the block
  • a curve expressed by three third-order polynomials of the s is expressed as a first-order differential value
  • the second-order differential value is connected so as to continuously change
  • the smooth corner curve is a structure in which a curve represented by three s cubic polynomials is connected so that the first-order differential value and the second-order differential value change continuously. It is preferable that

Abstract

 あらゆる構造の工作機械に共通な主要制御プロセスを提供する。 加工対象物(W)に固定された座標系(30)上での姿勢変化を含む工具軌跡をNCプログラムに記述し、段取り基準座標系(20)を機械テーブル(2)に固定設置し、加工対象物(W)の設置位置と工具(11)を装着する主軸(91)の位置とを段取り基準座標系(20)で表し、駆動軸の構成に関わる部分を主軸(91)の位置(q)と駆動軸座標(r)との相関関係の変換関数群に封じ込めることによって、主要な制御プロセスをあらゆる工作機械に共通とする。すなわち、NCプログラムの読み取りから、工具軌跡の修正を行い、加工物の設置位置と工具形状と工具の寸法とに基づいた主軸の位置の軌跡への変換を行うまでを完全に共通とするとともに、主軸の位置の軌跡算出以降の加減速制御を含む制御プロセスをも適宜変換関数群を呼ぶことにより共通とする。

Description

数値制御装置
 本発明は、パラレルメカニズム機や様々な形態の5軸機をはじめとするあらゆる機械構造の工作機械の数値制御において、制御用ソフトウェアのほとんど全てをあらゆる機械に共通化させるソフトウェア構造化技術と、加減速制御技術とに関する。
 従来、種々の工作機械が知られており、その制御方式はモータにより駆動させる駆動軸の構成によって確定される。駆動軸の構成は、同時2軸制御の旋盤、同時3軸制御のマシニングセンター、ヘッド側回転型5軸機、テーブル回転型5軸機、混合型5軸機、パラレルメカニズム機などの各工作機械によって様々である。
 このような各種工作機械では、プログラム座標系を定義し、そのプログラム座標系上での工具の移動軌跡をNCプログラムに記述する。このNCプログラムに基づいて駆動軸を駆動することにより工作機械を動かすのが数値制御装置の役割である。5軸機における数値制御プロセスには、5軸における工具長補正、5軸における工具径補正、5軸における工具先端を正確に移動させる為の補間制御、綺麗に速く加工するための送り加減速制御が含まれる。これら各制御の計算には、回転軸に基づく計算を必要とする。そして、この計算では、駆動軸の構成によって、計算方法を変えなければならない。このため、いろんな制御プロセスにおいて駆動軸構成に応じた変更を余儀なくされている。すなわち、駆動軸の構成が変わるたびに技術検討を繰り返し、特徴が変われば、そのたびに似ているが異なる部分を有する機能を作っている。その結果、複数の機能が絡み合い、複雑さを増している。例えば、5軸における工具長補正、5軸における工具先端を正確に移動させる為の補間制御、綺麗に速く加工するための送り加減速制御などは、それぞれを個別に切り離すことが出来ずに混然一体となっている。
 また、制御プロセスのうち駆動軸の構成に関わる部分は抽出してブラックボックス化し、各制御プロセスを単純化するとともに、各制御プロセスの可能な限り多くの部分を共通化して各制御プロセスを簡易化するべきであるが、駆動軸の構成に関わる部分の抽出が不完全でブラックボックス化されておらず、その結果、ソフトウェアが肥大化、複雑化してしまい、開発時間及び保守時間が増大している。この現状を、次に、2種類の5軸機とパラレルメカニズム機とを例に説明する。
 5軸機は、通常、XYZの直線軸からなる3軸と2つの回転軸の計5つの駆動軸を有する。通常、3つの直線軸は互いに直交している。2つの回転軸は、主軸を有するヘッド側を回動させるものと、加工物を設置する機械テーブルを回動させるものと、ヘッドと機械テーブルとをそれぞれ回動させるものである。
 初期段階のヘッド回転型5軸機の数値制御では、NCプログラム座標系としてXYZの3つの直線軸に平行なワーク座標系を設定するとともに、回転軸の回転中心であるコントロールポイントの該ワーク座標系上の座標値を求め、そのコントロールポイントのワーク座標系上の座標値と回転軸座標とによって機械の動作を記述したNCプログラムにより機械を制御していた。このNCプログラムは、工具の移動軌跡を記述するのではなく、加工物を削る為のコントロールポイントの動きを記述していた。
 コントロールポイントの動きのNCプログラムは、工具長が変われば作り直しとなる。そこで、工具長が変わってもそのまま使用可能な数値制御が課題となった。この課題は、工具の動きを工具の先端点の座標で記述する工具先端点制御によって解決された。すなわち、実際の工具の長さと工具の傾斜に応じてコントロールポイントの座標値を計算し、その算出した座標値に基づいて機械を動かすことによって前記課題は解決された。
 ただ、この考えは、テーブルを回動させる回転軸を有するテーブル回転型5軸機には、そのまま適用できなかった。それは、テーブルの回動とともに加工物が回動してしまうため、加工物の座標系と機械のXYZ座標軸との平行関係が崩れるためである。この課題は、特許文献1に示すように、機械テーブルと一緒に回動する座標系をプログラム座標系とするとともに、該プログラム座標系上の工具の移動軌跡をNCプログラムに記述し、さらに工具の移動軌跡をテーブルの回動に伴う座標変換も配慮して駆動軸座標に変換する5軸変換を採用することによって解決された。つまり、同じ目的の工具先端点制御機能を、似ているが異なる別物として開発した。しかしながら、これらの工具先端点制御機能では、命令が異なるとともに、使用上の注意事項も異なる。また、工具パスを指定した補正量だけシフトさせる5軸工具径補正機能についても前記工具先端点制御機能と同様に、同じ目的のものであっても、駆動軸の構成によって似ているが異なる別物として開発してしまっていた。
 次に、パラレル機について説明する。使用者側の立場から観ればパラレル機も5軸機と同じである。パラレル機が他の5軸機とほとんど共通となれば、パラレル機の開発は早く、低コストで済む。しかしながら、現実にはパラレルメカニズム機の数値制御は難しいものとして特別扱いされている傾向があった。例えば、特許文献2には、工作機械の加工精度を向上させるために加工ツールの滑らかな速度変化を可能にする制御が記載されている。特許文献3には、パラレルメカニズム機などにおける、直交座標系でない駆動軸を有する工作機械の各駆動軸の送り速度を制御するものが記載されている。特許文献4には、パラレルメカニズム機の制御に関するものが記載されている。特許文献4の記載からは、パラレルメカニズム機の制御を、その都度かなりの時間をかけて開発してきた経緯が窺われる。
 これらの特許文献に記載の技術からパラレルメカニズム機の制御を実現するには、かなりの労力が払われたか、今後払われるであろうことが判る。パラレルメカニズム機においても、工具の移動軌跡に対する制御を実現するという意味では他の5軸機と全く同じであり、逆運動学関係式が異なる点を除けば、その他の違いは無いはずである。従って、パラレルメカニズム機をも含むあらゆる工作機械に共通なソフトウェアによって構成される数値制御装置が実現されても不思議ではない。
 続いて、加減速制御について説明する。特許文献2に記載の技術が開発される以前には、同文献2の図3に説明されているB加減速が不可欠であったが、最終経路はB加減速に起因した経路誤差を発生させていた。この経路誤差は、内回り誤差と呼ばれ、時定数と呼ばれる機械定数の2乗と速度の2乗とにほぼ比例する値となる特徴を持っているとされている。この時定数は、許容加速度に対応する機械パラメータであり、許容加速度が大であれば小さく、許容加速度が小であれば大きい値が設定される。すなわち、大型の工作機械では、許容加速度は相対的に小さいので、時定数を大きく設定する。機械の加減速を滑らかにするために前記B加減速を使用すると前記経路誤差、すなわち内回り誤差を発生させ、これを許容値内に抑えるために速度を落とさなければならなかった。特許文献2では、円弧補間を例として、前記B加減速を不要とする技術を開示している。ところが、この方式は、円弧のようにもともと滑らかな曲線の場合には有効であるが、一般的によく使われる短い直線指令ブロックの集まりで工具の移動軌跡を記述しているNCプログラムに対しては必ずしも有効ではない。なぜなら、短い直線ブロックの場合、各ブロックの境界において工具パスが折れていることに起因して特許文献2に記載されている第一次補間の結果が、元々の折れ線上にランダムに作成されているため、その後、多項式で滑らかに補間しようとしても出来ない。また、他の方法として、ナノスムージングという工具パスを滑らかな曲線に変更する方法が提案されているが、このナノスムージングでは、工具パスを滑らかに変更できる条件が限定されており、例えば、工具パスの進行方向ベクトルの向きがある角度より大きく変わる点間においては曲線に変換されない。そのため、一般的によく使われる、短い直線ブロックの集まりのNCプログラムを元に制御する場合には、前記B加減速を使用せざるを得ない。前記B加減速を使えば、円弧補間のような滑らかな移動において前記内回り誤差が発生してしまう。従って、メカ的にはもっと速く動かせる時でも、前記内回り誤差を許容値内に収めるためには、減速しなければならない。その結果、どのような工具パスに対しても有効で、かつ、このような減速をすることのない加減速制御が求められている。そして、その加減速制御が、あらゆる工作機械に共通に利用出来れば理想的である。
 また、駆動軸の構成として、互いに平行な2つの駆動軸を有し、可動域を広げる工作機械も実存する。例えば、図1に示すような、駆動軸Zに平行な駆動軸Wを有する工作機械では、上下方向の可動域が広がり、より嵩のある加工物を加工できる。しかしながら、この駆動軸Zと駆動軸Wとを同時に使う場合には、他の機能との併用、例えば、工具径補正や円弧補間との併用はできないというように、様々な制限がある。このような工作機械において、駆動軸Zと駆動軸Wとの使用を適切に振り分けることができるとともに、他の機能との併用においても何の制約もない数値制御装置が求められている。
特開2003-195917号公報 特開平11-149306号公報 特開2005-56171号公報 特開2001-92508号公報
 本発明の目的は、上述の課題を解決した数値制御装置を提供することである。
 上記目的を達成するために、この発明の数値制御装置は、工具を装着する主軸と、前記主軸を固定して保持する主軸ヘッドと、加工対象物を固定設置する機械テーブルと、前記主軸ヘッドと前記機械テーブルの回転姿勢を含む相対位置関係を制御する複数の駆動軸と、該駆動軸を駆動させるモータとを少なくとも有し、前記機械テーブル上に座標軸の向きと原点の位置とが固定された段取り基準座標系が設定された工作機械を制御する数値制御装置であって、準備部と第1制御部と第2制御部と第3制御部とを有し、前記準備部は、細分化されたサブ手段として少なくともNCプログラム管理部と段取り情報管理部と工具情報管理部とを有し、前記NCプログラム管理部は、前記加工対象物に固定されたプログラム座標系上の工具の姿勢を含む位置である工具位置の軌跡と、その送り速度を指令する工具送り速度指令からなる工具パスと、必要に応じての工具パス修正命令とが記述されたNCプログラムを準備情報メモリー部に記憶させるものであり、前記段取り情報管理部は、前記機械テーブルへの前記加工対象物の姿勢を含む設置位置として、前記プログラム座標系の原点座標と座標軸余弦の向きを示す姿勢角度とからなり、かつ、前記段取り基準座標系上での位置情報である段取り情報を、前記準備情報メモリー部へ記憶させるものであり、前記工具情報管理部は、使用する工具の形状や該工具の長さや工具半径の補正量の寸法情報を含む工具情報を前記準備情報メモリー部へ記憶させるものであり、前記第1制御部は、細分化されたサブ手段としてNCプログラム読み取り部と工具パス修正部とを有し、前記NCプログラム読み取り部は、前記NCプログラムに記述された前記工具パスと前記工具パス修正命令とを読み取ってパス演算メモリー部に記憶させるものであり、前記工具パス修正部は、前記工具パス修正命令に従って前記工具パスを修正するものであり、前記第2制御部は、前記段取り情報と前記工具情報とに基づいて前記駆動軸の構成の特徴を配慮して前記工具パスから全駆動軸の位置座標である駆動軸座標の軌跡に相当する駆動軸パスを求めるとともに、その求めた駆動軸パスを前記パス演算メモリー部に記憶させるものであり、前記第3制御部は、前記駆動軸パスから各補間周期ごとの各駆動軸の移動量を求めて前記モータに出力するものであり、さらに、前記準備部は、細分化されたサブ手段として駆動軸構成管理部を有し、前記駆動軸構成管理部は、前記主軸の回転姿勢を含む位置を前記段取り基準座標系上で表した位置情報である主軸位置と前記駆動軸座標との相関関係を示す関係式であって、前記駆動軸の構成によって決まる逆運動学関係式に基づく前記主軸位置を前記駆動軸座標に変換する主軸駆動軸変換関数を機械情報メモリー部に記憶させるものであり、前記第2制御部は、細分化されたサブ手段として主軸パス算出部と駆動軸パス算出部とを有し、前記主軸パス算出部は、前記駆動軸の構成とは無関係に、前記段取り情報と前記工具情報とに基づいて、前記工具パスを前記主軸位置の軌跡である主軸パスに変換して前記パス演算メモリー部に記憶させるものであり、前記駆動軸パス算出部は、前記主軸駆動軸変換関数を使用して前記主軸パスを前記駆動軸パスに変換して前記パス演算メモリー部に記憶させるものである。
本発明が適用される工作機械の一例としての5軸工作機械の全体を示す斜視図である。 本発明が適用可能な機械構造の工作機械1Aを概略図で例示したものである。 本発明が適用可能な機械構造の工作機械1Bを概略図で例示したものである。 本発明が適用可能な機械構造の工作機械1Cを概略図で例示したものである。 工具位置と主軸位置との関係を説明するための図であって、エンドミルを例示した概念図である。 工具位置と主軸位置との関係を説明するための図であって、アングル工具を例示した概念図である。 段取り工具変換の行程を示すブロック図である。 段取り工具変換のイメージ図である。 逆運動学関係式を示すブロック図である。 逆運動学関係式のイメージ図である。 工作機械1Dを示す図である。 工作機械1Eを示す図である。 図12の工作機械1Eの一実施形態を示す構成図である。 本発明に適用される数値制御装置の一実施形態を示すブロック図である。 数値制御プロセスの流れの一実施形態を示すフローチャートである。 工具パスp^(s)の一例を示す図である。 駆動軸xに対する駆動軸yの指令ブロックごとの指令値を示す図である。 駆動軸yにおける補間された滑らかブロック曲線を示す図である。 駆動軸yにおける補間された滑らかブロック曲線の工具パス積算長sによる一次微分を示す図である。 始点と終点のいずれにおいても隣接ブロックから工具パス積算長sによる一次微分、二次微分を連続変化させる滑らかブロック曲線として、工具パス積算長sの3次多項式曲線を、その接続点にて工具パス積算長sによる一次微分と二次微分とが連続変化するように連結した曲線を示す図である。 滑らかコーナー曲線のイメージ図であって、不連続点を破線で示すように滑らか補間した図である。 滑らかコーナー曲線のイメージ図であって、一次微分(破線)を示す図である。 滑らかコーナー曲線のイメージ図であって、二次微分(破線)を示す図である。 滑らかコーナー曲線のイメージ図であって、三次微分(破線)を示す図である。 3つの工具パス積算長sの3次多項式曲線を、接続点にて工具パス積算長sによる一次微分と二次微分とが連続変化するように連結して得られる曲線を示す図である。
 以下、本発明の実施形態を図面を参照して説明する。
 図1は、本発明が適用される工作機械の一例としての5軸工作機械の全体を示す斜視図である。この図1において、工作機械1は、加工対象物としてのワークを保持する機械テーブル2を有する。機械テーブル2は、長手方向に前後に配設され、駆動軸Xの方向(水平な前後方向)に移動自在に構成されている。機械テーブル2の途中両側には、図略のボールねじ部を有する一対の支柱3,3がそれぞれ立設されており、この支柱3,3の上端部に梁部4が掛け渡されている。梁部4内には駆動源としてのモータMO(図14参照)が配設されており、このモータMOにより、左右の支柱3,3の前記ボールねじ部を図略の傘歯車等を介して同期させて回転駆動させる構成となっている。支柱3,3の前記ボールねじ部には、クロスレール5の両側部がそれぞれ螺合することによりその支柱3,3の前記ボールねじ部にクロスレール5が掛け渡されている。これにより、クロスレール5は、支柱3,3の前記ボールねじ部に沿って鉛直のW軸方向に移動自在となっている。
 そして、クロスレール5には、ヘッド部材6が左右方向であるY軸方向に沿って移動自在に支持されている。このヘッド部材6は、鉛直方向に長尺を有している。また、ヘッド部材6は、クロスレール5においてZ軸方向、すなわち上下方向に出退自在に設けられている。ヘッド部材6の下部には、内部に主軸ヘッド9を備える側面加工用のアタッチメント部材8などが装着されている。主軸ヘッド9には、ドリルなどの工具類が水平方向に装着可能な主軸91が設けられている。主軸91は、主軸ヘッド9に対して、少なくとも1軸の水平軸周りに回動可能にされている。ドリルなどの工具類には、ヘッド部材6からの回転駆動力が主軸91を介して伝達される。機械テーブル2、クロスレール5及びヘッド部材6による4軸制御の駆動機構は、例えばモータMOおよびボールねじなどによって構成することができる。
 また、機械テーブル2の近傍には、制御ボックス10が配設されている。この制御ボックス10は、テーブル1、クロスレール5及びヘッド部材6の各軸を駆動するそれぞれのモータMO(図14参照)を、オペレータによって入力されるプログラムに従って駆動制御するものである。
 図2~図4は、本発明が適用可能な種々の機械構造の工作機械を概略図で例示したものであり、図2は工作機械1Aを、図3は工作機械1Bを、図4は工作機械1Cをそれぞれ示している。図11は工作機械1Dを示し、図12は工作機械1Eを示している。なお、図11に示す工作機械1Dは、図2の工作機械1AにW軸を付加したものであり、図12に示す工作機械1Eは、図4の工作機械1CにU軸を付加したものである。図13は、図12の工作機械1Eの一実施形態を示す構成図である。
 図2~図4、図11~図13に示すように、いずれの工作機械も、機械テーブル2と、主軸ヘッド9とを有している。また、図2、図3、図11に示す工作機械は、機械テーブル2と主軸ヘッド9との回転姿勢を含むそれら機械テーブル2と主軸ヘッド9との相対位置関係を変化させるための駆動軸Aと、駆動軸Aを動かすモータMO等の駆動源とを有している。なお、主軸ヘッド9には、図1の工作機械1と同様に、工具が装着される主軸91が固定設置されている。
 工作機械1Aは、図2に示すように、A、B、X、Y、Zの5つの駆動軸を持つとともに、その各軸に対応して駆動源を有している。駆動軸X,Y、Zは、それぞれが互いに直交している。なお、工作機械1Aは、厳密に言えば駆動軸Aと駆動軸Bとの親子関係の如何によっては異なる構成として区分すべき場合があるが、ここでは、説明に支障がないので特に分けることはしていない。工作機械1Bは、図3に示すようにA、C、X、Y、Zの5つの駆動軸を持っている。駆動軸Cは、機械テーブル2を回転させる駆動軸である。駆動軸X、Y、Zはそれぞれが互いに直交している。工作機械1Cは、パラレルメカニズムを有するものであり、図4に示すように、X1、X2、X3、X4、X5、X6の6つの駆動軸を有する。また、工作機械1Dは、図11に示すように、A、B、X、Y、Z、Wの6つの駆動軸を持ち、このうち、駆動軸Z、Wは互いに平行である。工作機械1Eは、図12に示すように、X1、X2、X3、X4、X5、X6、Uの7つの駆動軸を有する。
 各工作機械には、原点と回転方向の姿勢とを機械テーブル2上に固定する段取り基準座標系20が右手直交座標系として確立されている。この段取り基準座標系20は、構造的な基準からの位置及び姿勢が規定可能な位置に設定されている。なお、段取り基準座標系20は、機械テーブル2上に一旦確立された後は、原則的には変更されないものであって、例えば、次のように規定されている。工作機械1Aでは、駆動軸X、Y、Zにそれぞれ平行な座標軸を有する段取り基準座標系20が確立される。工作機械1Bでは、駆動軸Cの座標がゼロの時に駆動軸X、Y、Zにそれぞれ平行な座標軸を有し、かつ、駆動軸Cの回転中心線と機械テーブル2との交点を原点とする段取り基準座標系20が確立される。工作機械1Cでは、直交座標系を構成する駆動軸そのものがないので、機械テーブル2上の適当な所定位置に段取り座標系20が確立される。図11、図12の工作機械1D,1Eも同様に機械テーブル2上の所定位置に段取り基準座標系20が設定される。詳細は後述する。
 図5及び図6は、工具位置と主軸位置との関係を説明するための図であり、図5はエンドミルを例示した場合、図6はアングル工具を例示した場合の概念図である。より詳細には、図5及び図6は、プログラム座標系上での工具の位置が決まったときにおいて、その工具の位置と、その工具を装着している前記主軸の主軸位置との関係を示す図である。なお、主軸位置は、前記主軸の段取り基準座標系20上の姿勢を含む位置を意味する。
 工具11の位置は、機械テーブル2上の加工対象物W(図8、図10参照)に対する工具11の姿勢を含む相対的な位置である。この工具11の位置は、加工対象物Wに固定された右手直交座標系であるプログラム座標系30上での工具11の基準点111の座標値(x,y,z)と工具11の姿勢を示すオイラー角(α,β,γ)とによって表現される。α、βは、工具11の傾きを示し、γは、工具11の中心線周りの回転方向の角度を示す。なお、プログラム座標系30は、1つの加工対象物上に複数設けてもよいが、ここでは、加工対象物Wに対して1つのプログラム座標系を設けた場合について説明する。また、工具11の基準点111とは、一般的には、工具11の中心線上に位置する工具先端に相当する。なお、オイラー角γは、工作機械1A~1Eにおいては、γ=0に固定して、制御対象外としている。以後、工具11の位置をp^と記す。
 なお、以下において、明細書中で上付添え字「^」が付された文字、及び、図面中で太字によって表記された文字は、ベクトルを表すものとする。
 加工を開始する前に、加工対象物Wが機械テーブル2に固定設置され、その設置位置が段取り情報D^として取得されて記憶され、次いで、主軸91に工具11が装着されてその工具11に関わる情報が工具情報T^として記憶される。段取り情報D^は、段取り基準座標系20に対するプログラム座標系30の回転姿勢も含む位置情報として記憶されるものである。工具情報T^は、例えば、図5、図6のようなエンドミル工具やアングル工具を示す工具の種類と各工具の形状を決定する寸法とを少なくとも含むデータによって構成されている。
 一方、主軸91の位置q^は、基準点911の段取り基準座標系20上の座標値(X,Y,Z)と、段取り座標系20上での主軸91の姿勢を示すオイラー角(α’,β’,γ’)とによって表される。
 このようにすれば、図7及び図8に示すように、工具位置p^と主軸位置q^との相関関係は、段取り情報D^と工具情報T^とによって決定され、機械の構造には影響されない。ここで、工具位置p^から主軸位置q^への変換関数を段取り工具変換f^として表し、次式(1)で表現する。
Figure JPOXMLDOC01-appb-I000001
 図7及び図8は、この段取り工具変換を説明するための図であり、図7は段取り工具変換の行程を示す図、図8はその段取り工具変換のイメージ図である。これらの図によれば、段取り工具変換f^は、工作機械1A~1Eの構造に依存せず、種々の工作機械において共通なものとすることができることが分かる。
 逆に、図9及び図10に示すように、主軸位置q^と該主軸位置q^に対応する各駆動軸の位置を示す駆動軸座標r^との相関関係は、各工作機械の駆動軸の構成に応じた逆運動学関係式とその機構パラメータk^とによって決定され、前記段取り情報D^、前記工具情報T^とは無関係である。図9及び図10は、逆運動学関係式を説明するための図であり、図9は逆運動学関係式を示す図、図10はその逆運動関係式のイメージ図である。ここで、主軸位置q^から駆動軸座標r^への変換関数である主軸駆動軸変換をg^で表し、逆運動学関係式を次式(2)で表す。
Figure JPOXMLDOC01-appb-I000002
 なお、工作機械1Dの場合には、図11に示すように、冗長度拘束条件追加部312(図14参照)において、式(2)に冗長度拘束条件として、例えば、駆動軸Zと駆動軸Wとを均等配分して動作させる条件を補強追加し、主軸位置q^に対する前記駆動軸座標r^が1つとなるようにした逆運動学関係式として式(2)をあらためて規定すればよい。
 工作機械1Eについても、図12、図13に示すように、同様である。ここで、図12、図13に示すパラレルメカニズムを有する工作機械1Eの構成について簡単に説明する。パラレルメカニズムを有する工作機械1Eは、駆動軸U方向に移動自在な図略の架台上に支持されたベース60上に6個のジョイント(結合部)1911~1916を有している。そして、このジョイント1911~1916にはそれぞれ1本ずつ、計6本のストラット(駆動軸)1921~1926が接続されている。このストラット1921~1926が数値制御装置の制御に基づいて独立して伸縮することにより、ジョイント1931~1936を介してエンドエフェクタ194を間接的に動かし、機械テーブル2上の加工対象物Wに加工等の処理を行う。つまり、エンドエフェクタ194は、ベース60上のジョイント1911~1916と、複数のストラット1921~1926と、エンドエフェクタ194のジョイント1931~1936とによって構成されるパラレルリンク機構を介してベース60に保持されている。エンドエフェクタ194の先端には、工具11が取り付けられている。そして、ストラット1921~1926の伸縮量を制御することによって、工具11の位置、姿勢が適宜に設定されるようになっている。
 本実施形態では、工作機械1A~1Eの全てにおいて駆動軸構成に関わる部分を式(2)に封じ込め、これに関わるソフトウェアとして、主軸位置q^を駆動軸座標r^に変換する主軸駆動軸変換関数g^と、式(2)を主軸位置q^の各成分で一次、二次、三次偏微分した値をそれぞれ求める駆動軸偏微分値取得関数とを各工作機械に応じた関数として工作機械ごとに作成する。そして、その作成した工作機械ごとの関数を記憶部に登録しておき、必要時にその関数を呼び出すことによって、該関数を除くソフトウェアの全てを工作機械1A~1Eに対して共通とする。以下、本実施形態における数値制御装置の構成と数値制御プロセスとについて説明する。
 図14は、本発明に適用される数値制御装置の一実施形態を示すブロック図である。数値制御部300は、例えばマイクロコンピュータによって構成され、準備部310と、第1制御部320と、第2制御部330と、第3制御部340とを備えると共に、機械情報メモリー部350と、準備情報メモリー部360と、パス演算メモリー部370とに接続されている。準備部310は、駆動軸構成管理部311と、冗長度拘束条件追加部312と、送り制御条件管理部313と、NCプログラム管理部314と、段取り情報管理部315と、工具情報管理部316とを有する。第1制御部320は、NCプログラム読み取り部321と、工具パス媒介変数表現部322と、工具パス修正部323とを有する。第2制御部330は、主軸パス算出部331と、駆動軸パス算出部332とを有する。第3制御部340は、加減速補間制御部341と、パルス補間部346とを有する。加減速補間制御部341は、ブロック滑らか補間部342と、コーナー滑らか補間部343と、送り制御条件転換部344と、媒介変数加減速決定部345とを有する。
 図15は、数値制御プロセスの流れの一実施形態を示すフローチャートである。以下、図10に沿って、本実施形態における数値制御プロセスの流れを説明する。なお、実際の数値制御プロセスにおいては、NCプログラムの量が多い時には、メモリー部の容量に応じて、NCプログラムを途中まで読み取って図略のRAMに一時的に格納し、その読み取ったNCプログラムの前半を処理した上でNCプログラムの残りの部分を順次読み取るという繰り返し処理を行うが、説明の簡略化のため繰り返し部分の説明は省略する。
 本実施形態の数値制御プロセスでは、ステップS100~S120において、準備部310が機能する。先ず、ステップS100にて、駆動軸構成管理部311が、逆運動学関係式に基づいて作成された主軸駆動軸変換関数g^と駆動軸偏微分値取得関数の入力を受け付けてそれら関数を機械情報メモリー部350へ登録し、該当する工作機械に対応する主軸駆動軸変換関数g^と駆動軸偏微分値取得関数との利用を有効にする。ステップS105にて、送り制御条件管理部313が、各駆動軸毎の最大許容速度、最大許容加速度、最大許容ジャークを含む駆動軸加減速条件を機械情報メモリー部350へ登録する。ステップS110にて、NCプログラム管理部314が、工具位置の軌跡及び工具の送り速度指令からなる工具パスと、この工具パスを修正する命令である工具パス修正命令とからなるNCプログラムの入力を受け付け、このNCプログラムを準備情報メモリー部360へ登録する。ステップS115にて、工具情報管理部316が、主軸91に取り付けられた工具11の工具情報T^の入力を受け付け、その工具情報T^を準備情報メモリー部360へ登録する。ステップS120にて、段取り情報管理部315が、機械テーブル2に設置した加工対象物の段取り情報D^の入力を受け付け、段取り情報D^を準備情報メモリー部360に登録する。
 次いで、ステップS125~140において、第1制御部320が機能する。先ず、ステップS125にて、NCプログラム読み取り部321が、準備情報メモリー部360に登録されているNCプログラム361を読み取り、このNCプログラム361に記述されている工具パスと工具パス修正命令とを抽出してパス演算メモリー部370へ記憶させる。ステップS130にて、工具パス修正部323が、工具パス修正命令に従って工具パスを修正する。ステップS135にて、工具パス媒介変数表現部322が、工具パスp^を、該工具パスp^の軌跡に沿った移動距離である工具パス積算長sを媒介変数とする関数表現に変換する。以降、前記関数表現に変換した工具パスをp^ (s)と表現する。図16に、その工具パスp^ (s)の例を示す。例えば、工具パスが図16に示すように、始点(50,150)から(50,50)、(150,50)、(210,110)を通る場合に、p^ (s)は、
Figure JPOXMLDOC01-appb-I000003
 となる。
 また、ステップS140にて、工具パス媒介変数表現部322が、工具パスに含まれる送り速度指令を工具パス積算長sの送り速度指令に変換する。
 なお、従来技術では、CAMによってCLデータ(cutter location data)、すなわち工具パスデータを作成し、かつこのCLデータをCAMから受け取ったポストプロセッサにおいて各工作機械に適合したNC(numerical control)プログラムに変換していたが、本実施形態によれば、CAMが出力するCLデータをNCプログラムとして受け付けるNCプログラム読み取り部321を設けることにより、従来のポストプロセッサを不要にできる。
 次いで、ステップS145~150において、第2制御部330が機能する。先ず、ステップS145にて、主軸パス算出部331が、段取り情報D^と工具情報T^に基づく段取り工具変換f^を使って、パス演算メモリー部370に登録されている工具パスp^ (s)を、主軸位置の軌跡の工具パス積算長sを媒介変数とする関数表現である主軸パスq^
(s)に変換する。なお、主軸パスq^ (s)の送り速度指令は、工具パス積算長sの送り速度指令がそのまま流用される。すなわち、式(1)を、次の式(3)で表現する。
Figure JPOXMLDOC01-appb-I000004
 ステップS150にて、駆動軸パス算出部332が、主軸駆動軸変換関数g^を用いて、主軸パスq^ (s)から、駆動軸座標の軌跡である駆動軸パスr^ (s)を求める。なお、駆動軸パスr^ (s)の送り速度指令は、工具パス積算長sの送り速度指令がそのまま流用される。すなわち、式(2)を、次の式(4)で表現する。
Figure JPOXMLDOC01-appb-I000005
 次いで、ステップS155~175において、第3制御部340が機能する。先ず、ステップS155にて、ブロック滑らか補間部342は、各駆動軸ごとの駆動軸パスに対して予め設定された長さの各指令ブロック毎に、その各指令ブロックの始点、終点のいずれか一方または両方において工具パス積算長sによる一次微分値と二次微分値とを連続変化するように接続すべきか否かを判断し、接続すべきと判断した場合には、隣接ブロックから連続変化させるための始点及び終点の少なくとも一方における工具パス積算長sによる一次微分値、二次微分値を先に決めた上で、該一次微分値、二次微分値に一致する補間曲線に相当する滑らかブロック曲線に駆動軸パスを変更する駆動軸パスの修正を実施する。図17~図19に、工作機械1A~工作機械1Dでの駆動軸Yにおける修正後の駆動軸パスのイメージ図を示す。また、本実施形態では、図20に示すように、始点と終点のいずれにおいても隣接ブロックから工具パス積算長sによる一次微分値、二次微分値を連続変化させる滑らかブロック曲線として、各駆動軸ごとに、3つの工具パス積算長sの3次多項式曲線を、それらの接続点にて工具パス積算長sによる一次微分値と二次微分値とが連続変化するように連結させた曲線を使用する。
 図17は駆動軸xに対する駆動軸yの指令ブロックごとの指令値を示す図、図18は駆動軸yにおける補間された滑らかブロック曲線を示す図、図19は駆動軸yにおける補間された滑らかブロック曲線の工具パス積算長sによる一次微分を示す図である。図20は、始点と終点のいずれにおいても隣接ブロックから工具パス積算長sによる一次微分値、二次微分値を連続変化させる滑らかブロック曲線として、工具パス積算長sの3次多項式曲線を、それらの接続点にて工具パス積算長sによる一次微分値と二次微分値とが連続変化するように連結した曲線を示す図である。図20における曲線補間条件は、各指令点を通ることと、各指令点においてその前後の曲線が一次微分値、二次微分値において連続であることである。そして、例えば、指令値が、s0=s[3]、s3=s[4]、s1=(2・s0+s3)/3、s2=(s0+2・s3)/3であるとして、(s[3],Y(s[3]))と(s[4] ,Y(s[4]))との間の補間は、Y(s0),Y′(s0),Y″(s0),Y(s3),Y′(s3),Y″(s3)を拘束条件として、これを満たす(s0,Y(s0))、(s3,Y(s3))間の一次微分値、二次微分値が連続する空間曲線を、3つの3次多項式曲線として生成する。すなわち、求める3次多項式曲線を、
Figure JPOXMLDOC01-appb-I000006
とし、拘束条件を当てはめることで、次の連立方程式を得る。
Figure JPOXMLDOC01-appb-I000007
 3つの3次スプラインの係数を各4つ、合計12個の係数を未知数としてこの連立方程式を解くことにより、Y=Y1(s),Y=Y2(s),Y=Y3(s)を得ることができることが判る。
 次に、ステップS160にて、コーナー滑らか補間部343は、駆動軸パスの各指令ブロックの終点において、ブロック滑らか補間部342による補間処理後においても工具パス積算長sによる一次微分値もしくは二次微分値のいずれかが後続する指令ブロックの始点における対応する微分値と一致するかしないかを判断する。そして、コーナー滑らか補間部343は、その一次微分値もしくは二次微分値のいずれかが後続する指令ブロックの始点における対応する微分値と一致しないと判断した場合には、各駆動軸ごとに、駆動軸パスを滑らかコーナー曲線に変更する駆動軸パスの修正を実施する。滑らかコーナー曲線は、その一次微分値及び二次微分値が前記微分値の一致の適否を判断した現指令ブロックの一次微分値及び二次微分値と同じであるとともにその現指令ブロックと接し、かつ、その一次微分値及び二次微分値が後続する指令ブロックの一次微分値及び二次微分値と同じであるとともにその後続する指令ブロックと接し、さらに、現指令ブロックの終点との距離が駆動軸パス修正許容誤差以下となる曲線である。前記各駆動軸ごとの駆動軸パスの修正は、この滑らかコーナー曲線と現指令ブロックとの接点と、この滑らかコーナー曲線と前記後続する指令ブロックとの接点との間の駆動軸パスを当該滑らかコーナー曲線に置き換えるものである。図21~図24に、滑らかコーナー曲線のイメージ図を示す。また、本実施形態では、図25に示すように、滑らかコーナー曲線として、各駆動軸ごとに、3つの工具パス積算長sの3次多項式曲線を、それらの接続点にて工具パス積算長sによる一次微分値と二次微分値とが連続変化するように連結した曲線を使用する。
 図21~図24は、滑らかコーナー曲線のイメージ図を示し、図21は不連続点を破線で示すように滑らか補間した図、図22は一次微分(破線)の図、図23は二次微分(破線)の図、図24は三次微分(破線)の図である。図21に示すΔdはコーナー補間許容誤差であり、滑らか補間曲線は、このコーナー補間許容誤差Δdが予め設定された範囲内となるように求められる。図25は、3つの工具パス積算長sの3次多項式曲線を、それらの接続点にて工具パス積算長sによる一次微分値と二次微分値とが連続変化するように連結して得られる滑らかコーナー曲線を示す図である。図25において、不連続点(s[3],Y(s[3]))に対して、
Figure JPOXMLDOC01-appb-I000008
 が成立する。
 ここで、s0,s1,s2,s3は、各接点におけるsの値であり、Y=Y(s)のコーナー前後の形状と許容誤差εから決めれば良い。例えば、
Figure JPOXMLDOC01-appb-I000009
とすればよい。
 次に、ステップS165にて、送り制御条件転換部344が、駆動軸パスr^(s)に基づいて媒介変数加減速条件を主軸パスq^(s)と、機械情報メモリー部350に記憶されている駆動軸加減速条件354とから、次のようにして導き出す。なお、媒介変数加減速条件は、各駆動軸を駆動する時に満たすべき工具パス積算長sの制御条件であり、かつ、工具パス積算長sの各値における工具パス積算長sの時刻による一次微分s’、二次微分s”、三次微分s”’が満たすべき条件である。説明のため、駆動軸座標r^(s)と主軸位置q^(s)と逆運動学変換関数g^(q^(s),k^)とを次のように配列で表記する。
Figure JPOXMLDOC01-appb-I000010
 ここで、nは駆動軸の数を示す。r[i]、g[i]、q[i]はそれぞれr^(s)、q^(s)、g^(q^,k^)の成分表示である。
 これを用いることで、前述の式(4)は、次式(5)で表せる。
Figure JPOXMLDOC01-appb-I000011
 式(5)をもとに、r[i]の時間tによる一次、二次、三次微分、すなわち各駆動軸の速度、加速度、ジャークを以下の式(6)~(11)のように式に展開する。表記を見やすくするため、略式記号を使う。
以下、
 r’[i] は、dr[i]/ds を、
 r”[i] は、d(dr[i]/ds)/dsを、
 r”’[i] は、d(d(dr[i]/ds)/ds)/dsを、
 q’[j] は、dq[j]/dsを、
 q”[j] は、d(dq[j]/ds)/dsを、
 q”’[j] は、d(d(dq[j]/ds)/ds)/dsを、
 s’ は、ds/dtを、
 s” は、d(ds/dt)/dtを、
 s”’ は、d(d(ds/dt)/dt)/dtを、
 δgij は、∂g[i]/∂q[j] を、
 δgijk は、∂(∂g[i]/∂q[j])/∂q[k] を、
 δgijkm は、∂(∂(∂g[i]/∂q[j])/∂q[k])/∂q[m] を、
 f[j]に対し,Σjは、Σj(f[j])= Σ(f[j]) (j=0,1,2,3,4) = f[0] + f[1]
+ f[2] + f[3] + f[4] を
それぞれ示すものである。
Figure JPOXMLDOC01-appb-I000012
 駆動軸加減速条件は、式(9)の速度と式(10)の加速度と式(11)のジャークそれぞれの最大許容値を規定している。工具パス積算長sの各値におけるq[j],q’[j],q”[j],q”’[j]は、主軸パスによって決まる。また、前述の関係式に含まれるδgij、δgijk、δgijkmは、駆動軸座標偏微分値取得関数を使って求めればよい。かくして、式(6)、式(7)、式(8)から、工具パス積算長sの各値におけるr’[i]、r”[i]、r”’[i]が求まり、駆動軸加減速条件が規定する、式(9)の速度と式(10)の加速度と式(11)のジャークとが、それぞれの最大許容値MAXv[i]、MAXa[i]、MAXj[i]を超えないという条件により、媒介変数加減速条件として次の式(12)を得る。なお、媒介変数加減速条件は、工具パス積算長sの各値における工具パス積算長sの時刻による一次微分s’、二次微分s”、三次微分s”’がそれぞれ満たすべき条件である。
Figure JPOXMLDOC01-appb-I000013
 ステップS170にて、媒介変数加減速決定部345が、媒介変数加減速条件と工具パス積算長sの送り速度指令とに基づいて、工具パス積算長sの時間tの関数としての媒介変数時間関数s(t)を確定する。
 ステップS175にて、パルス補間部346が、媒介変数時間関数s(t)に基づいて各補間周期時刻ごとの媒介変数時間関数s(t)の値と、前記駆動軸座標r^(s)の値とを求めるとともに、各補間周期ごとの各駆動軸座標の移動量を求め、その移動量を駆動源であるモータMOへ出力する。
 また、本発明は、以下の実施形態が採用可能である。
(1)前述の実施形態では、工具位置での工具の姿勢をオイラー角(α、β、0)によって指令したが、これに代えて工具軸ベクトルによって指令するものとしてもよい。あるいは、いずれかの工作機械の回転駆動軸の角度そのものによって指令するものとしてもよい。
(2)前述の実施形態では、工具の軸心周りの回転駆動軸を対象外としたが、工具の軸心周りの駆動軸も制御対象とすることもできる。その場合には、工具の軸心周りの駆動軸Eを追加する。前記工具位置pの姿勢は、(α、β、γ)で指令し、また前記主軸位置の姿勢も(α’、β’、γ’)で管理する。なお、γは必ずしも明示的に指令するとは限らない。例えば、工具パスの進行方向に垂直になるように工具パスの修正を自動実施する機能を組み込んでもよい。この機能は、前記工作機械1A~1Eに対しても工具の軸心周りの駆動軸を追加さえすれば共通に利用出来る。
(3)前記工作機械1Dにおける駆動軸Wは、重量が大きなクロスレール5を上下させるため、その消費エネルギーは大きい。一方、主軸ヘッド9を載せているラム(ヘッド部材6)を上下させる駆動軸Zは、エネルギー消費は少ない。ただ、駆動軸Zはあまり下げすぎると、ラムの保持部から主軸ヘッド9までの距離が長くなるため、剛性が弱くなり、その結果、重切削時に振動するなどの虞があるため、重切削への適用が困難であるという欠点もある。つまり、重切削時には、出来るだけ駆動軸Zを引っ込めてラムの保持部から主軸ヘッド9までの距離を短くして加工を行い、軽切削の場合には、消費エネルギーの少ないZ軸を使うことが好ましい。そして、前記冗長度拘束条件追加部312にて、NCプログラムの冗長度拘束条件切り替え命令として、高剛性加工とエコ(軽)加工のいずれかを選択可能とする命令を準備し、NCプログラム読み取り部321にて、前記冗長度拘束条件切り替え命令を読み取り、「高剛性加工」が指令されている場合には、前記冗長度拘束条件として、「可能な限りZ軸を引っ込める」という条件を採用する一方、「エコ加工」が指令された場合には、前記冗長度拘束条件として、「可能な限りW軸を使わず駆動軸Zを使用する」という条件を採用することによって、高剛性加工や、エコ加工を自在に実現する。
(4)NCプログラムに指令する工具位置は、工具11の先端111の座標値(X,Y,Z)と工具11の姿勢を表す(α,β,γ)としたが、このうち、(α,β)については、工具軸ベクトルであってもよい。これと同様に既に使用している工作機械用のNCプログラムをそのまま使いたいというユーザーに対応する為に、NCプログラム読み取り部321にて、特定の形式のNCプログラムを読み取って前記工具パスに変換し、その変換した工具パスをパス演算メモリー部370に登録することにより、既設の従来型工作機械用のNCプログラムを、そのまま利用し得る実施形態を構築できる。
(5)前述の実施形態においては、送り速度制御の各駆動軸の条件を、最大許容速度、最大許容加速度、最大許容ジャークに限定するとともに、送り速度の決定において、前記sの時間による一次、二次、三次微分に言及し、一次、二次微分の連続変化を保証する送り速度加減速部について説明した。本発明は、さらに高次の制御を否定するものではなく、例えば、n次微分までをターゲットにし、駆動軸全ての位置を時刻で微分する速度、加速度、ジャーク、ジャーク変化率….のn-1次微分までの連続変化を保証することによって、さらなる高次元での送り速度制御の実現の道を開くものである。また、慣性をきわめて短時間に吸収する加減速制御の実現を可能にする。
 (実施形態の概要)
 上記実施形態をまとめると以下のようになる。
 すなわち、上記実施形態による数値制御装置は、工具を装着する主軸と、前記主軸を固定して保持する主軸ヘッドと、加工対象物を固定設置する機械テーブルと、前記主軸ヘッドと前記機械テーブルの回転姿勢を含む相対位置関係を制御する複数の駆動軸と、該駆動軸を駆動させるモータとを少なくとも有し、前記機械テーブル上に座標軸の向きと原点の位置とが固定された段取り基準座標系が設定された工作機械を制御する数値制御装置であって、準備部と第1制御部と第2制御部と第3制御部とを有し、前記準備部は、細分化されたサブ手段として少なくともNCプログラム管理部と段取り情報管理部と工具情報管理部とを有し、前記NCプログラム管理部は、前記加工対象物に固定されたプログラム座標系上の工具の姿勢を含む位置である工具位置の軌跡と、その送り速度を指令する工具送り速度指令からなる工具パスと、必要に応じての工具パス修正命令とが記述されたNCプログラムを準備情報メモリー部に記憶させるものであり、前記段取り情報管理部は、前記機械テーブルへの前記加工対象物の姿勢を含む設置位置として、前記プログラム座標系の原点座標と座標軸余弦の向きを示す姿勢角度とからなり、かつ、前記段取り基準座標系上での位置情報である段取り情報を、前記準備情報メモリー部へ記憶させるものであり、前記工具情報管理部は、使用する工具の形状や該工具の長さや工具半径の補正量の寸法情報を含む工具情報を前記準備情報メモリー部へ記憶させるものであり、前記第1制御部は、細分化されたサブ手段としてNCプログラム読み取り部と工具パス修正部とを有し、前記NCプログラム読み取り部は、前記NCプログラムに記述された前記工具パスと前記工具パス修正命令とを読み取ってパス演算メモリー部に記憶させるものであり、前記工具パス修正部は、前記工具パス修正命令に従って前記工具パスを修正するものであり、前記第2制御部は、前記段取り情報と前記工具情報とに基づいて前記駆動軸の構成の特徴を配慮して前記工具パスから全駆動軸の位置座標である駆動軸座標の軌跡に相当する駆動軸パスを求めるとともに、その求めた駆動軸パスを前記パス演算メモリー部に記憶させるものであり、前記第3制御部は、前記駆動軸パスから各補間周期ごとの各駆動軸の移動量を求めて前記モータに出力するものであり、さらに、前記準備部は、細分化されたサブ手段として駆動軸構成管理部を有し、前記駆動軸構成管理部は、前記主軸の回転姿勢を含む位置を前記段取り基準座標系上で表した位置情報である主軸位置と前記駆動軸座標との相関関係を示す関係式であって、前記駆動軸の構成によって決まる逆運動学関係式に基づく前記主軸位置を前記駆動軸座標に変換する主軸駆動軸変換関数を機械情報メモリー部に記憶させるものであり、前記第2制御部は、細分化されたサブ手段として主軸パス算出部と駆動軸パス算出部とを有し、前記主軸パス算出部は、前記駆動軸の構成とは無関係に、前記段取り情報と前記工具情報とに基づいて、前記工具パスを前記主軸位置の軌跡である主軸パスに変換して前記パス演算メモリー部に記憶させるものであり、前記駆動軸パス算出部は、前記主軸駆動軸変換関数を使用して前記主軸パスを前記駆動軸パスに変換して前記パス演算メモリー部に記憶させるものである。
 この数値制御装置では、駆動軸の構成が影響する部分を、工具を装着する主軸の基準位置と駆動軸座標の相関関係式である逆運動学関係式のみとし、それら駆動軸の構成が影響する部分を、工具の形状と寸法や加工物の設置位置に関わる変換から完全に切り離した。その結果、主軸位置を求めるまでの工具径補正などの工具パスの修正、工具の形状や寸法に応じた座標変換、加工物の姿勢を含む設置位置に応じた座標変換などの工具パスに関わる機能の全てをあらゆる機械に対して共通にすることができる。一般的に工具長補正や、段取り誤差補正もあらゆる機械に共通な部分に含まれている。そして、使い方が共通なだけではなく、前記逆運動学関係式に関わる関数を駆動軸の構成ごとに作成しておくだけで、その他の全ての制御プロセスを全く同じソフトウェアであらゆる構造の機械に対応させることができる。すなわち、前記逆運動学関係式に関わる関数を除く全てを機械構造に関係なく一回だけ作成すればよく、その結果、従来のような、似て非なる物をその都度作成する必要がなくなるため、無駄な労力を浪費することを防止できる。また、新たな構造の機械に対しても、逆運動学関数を構築するとともに、これに関わる関数を作るのみでよく、駆動軸数、可動域、相互干渉などの物理的条件に支障がない限り前記ソフトウェアをそのまま使用可能となる。
 また、上記数値制御装置において、前記準備部は、細分化したサブ手段として、さらに、冗長度拘束条件追加部を有し、この冗長度拘束条件追加部は、前記工作機械が前記逆運動学関係式に基づいて前記主軸位置に対応する前記駆動軸座標を求める時にその解が無数にあるという冗長度を持つ駆動軸構成を有する場合において、前記逆運動学関数に加えることにより前記主軸位置に対応する前記駆動軸座標を1つに規定可能な追加条件である冗長度拘束条件を前記パス演算メモリー部に記憶させるものであり、前記主軸駆動軸変換関数は、前記パス演算メモリー部に記憶された前記冗長度拘束条件と前記逆運動学関数とを併せて使用することにより前記主軸位置に対応する1つの前記駆動軸座標を算出する関数であることが好ましい。
 このように構成すれば、例えば、平行な駆動軸を複数有するなどの冗長度を持つ駆動軸の構成を有する工作機械においても逆運動学関係式に条件を1つ補強するだけで、その他は全く共通で全機能をそのまま使用できる。さらに、この構成では、連続同時制御と工具径補正や円弧補間等の他機能との併用が自在な数値制御を提供できる。また、この構成によれば、平行軸を付加して可動域を広げた加工においても、従来技術では駆動軸の切り替え時に問題となっていた加工段差を発生させることのない上質の加工が可能になる。
 また、上記数値制御装置において、前記準備部は、さらに、細分化した制御手段として、送り制御条件管理部を含んで構成され、前記送り制御条件管理部は、各駆動軸座標を時間によりそれぞれ一次微分、二次微分、三次微分した各駆動軸の速度、加速度、ジャークのそれぞれの許容最大値を含む駆動軸加減速条件を記憶するものであり、前記第1制御部は、さらに、細分化されたサブ手段として工具パス媒介変数表現部を有し、前記工具パス媒介変数表現部は、前記工具パスに含まれる前記工具軌跡を該工具軌跡の姿勢変化を含む移動距離の積算長であるsを媒介変数とする関数によって表現するとともに、前記工具送り速度指令を前記sの速度に変換して、前記工具パスを前記sを媒介変数とする関数として表現した工具パスに変更するものであり、前記主軸パス算出部は、前記sを媒介変数として関数表現した主軸パスを求めるものであり、前記駆動軸パス算出部は、前記sを媒介変数として関数表現した駆動軸パスを求めるものであり、前記第3制御部は、細分化されたサブ手段として加減速補間制御部とパルス補間部とを有し、前記加減速補間制御部は、前記工具送り速度指令と前記駆動軸加減速条件とに基づいて前記sの時々刻々の値を決定するものであり、前記パルス補間部は、決定された前記sの時々刻々の値に基づいて補間周期ごとの前記sの値を求めるとともに、この求めた補間周期ごとのsの値に応じた駆動軸座標を求めて、その駆動軸座標から前記補間周期ごとの各駆動軸の移動量を算出し、その移動量を前記モータに出力するものであり、前記駆動軸構成管理部は、前記主軸駆動軸変換関数に加えて、前記逆運動学関係式に基づいて前記各駆動軸座標を前記主軸位置の各成分により一次、二次、三次偏微分した値を求める駆動軸偏微分値取得関数を前記機械情報メモリー部に記憶させ、さらに、各駆動軸ごとに、前記駆動軸パスの修正に許される位置誤差である駆動軸パス修正許容誤差を、前記準備情報メモリー部に記憶させるものであり、前記加減速補間制御部は、さらに細分化したサブ手段として、ブロック滑らか補間部とコーナー滑らか補間部と送り制御条件転換部と媒介変数加減速決定部とを有し、前記ブロック滑らか補間部は、各指令ブロックごと及び各駆動軸ごとに、始点、終点の少なくとも一方が隣接するブロックと滑らかに接続するかの適否を判断した上で、始点において滑らかに接続する場合には、その判断を行った現ブロックの始点と現ブロックの直前のブロックの終点とにおける共通で適切な前記sによる一次微分値と二次微分値とを求めて始点接続条件として規定する一方、終点において滑らかに接続する場合には、前記現ブロックの終点とその現ブロックの直後のブロックの始点とにおける共通で適切な前記sによる一次微分値と二次微分値とを求めて終点接続条件として規定し、さらに前記始点接続条件及び前記終点接続条件の少なくとも一方によって規定した一次微分値、二次微分値を持つ滑らかブロック曲線を求め、前記現ブロックを該滑らかブロック曲線に置き換える駆動軸パスの修正を実施するものであり、前記コーナー滑らか補間部は、前記ブロック滑らか補間部によって求められた、連続動作させるべき一連の駆動軸パスにおいて、前記駆動軸パスの各指令ブロックの終点と、その次の指令ブロックの始点とにおける前記sによる一次微分値と二次微分値がそれぞれ一致するかしないかを判断し、その一次微分値と二次微分値のいずれかが一致しない場合には、各駆動軸パスの前記sによる一次微分値、二次微分値の不連続変化部分をなくすべく、前記微分値の一致の適否を判断した指令ブロック及びそのブロックの次の指令ブロックの一次微分値及び二次微分値に一致する一次微分値及び二次微分値を有するとともに、元の駆動軸パスとの誤差が前記駆動軸パス修正許容誤差以下であり、かつ、一次微分値、二次微分値が連続変化する滑らかコーナー曲線を求めて、該滑らかコーナー曲線と前記微分値の一致の適否を判断した指令ブロックとの接点と該滑らかコーナー曲線と前記次の指令ブロックとの接点との間の駆動軸パスを該滑らかコーナー曲線に置き換える駆動軸パスの修正を実施するものであり、前記送り制御条件転換部は、前記主軸駆動軸変換関数と駆動軸偏微分値取得関数を使用して、前記駆動軸加減速条件を元に、駆動軸パスの各部分における前記sおよび前記sの速度、前記sの加速度、前記sのジャークの条件式である媒介変数加減速条件を導き、前記媒介変数加減速決定部は、前記媒介変数加減速条件と、前記sの送り速度指令の範囲内でかつ最高速とする条件とのもとにおいて、前記sの時間の関数表現である媒介変数時間関数s(t)を求めるものであり、前記パルス補間部は、前記媒介変数時間関数に基づいて各補間周期毎の各駆動軸移動量を算出して、その算出した駆動軸移動量をモータへ出力するものであることが好ましい。
 このように構成すれば、連続駆動する区間に対して、駆動軸パスを一次、二次微分連続の駆動軸パスに修正することによって加速度の連続変化を保証するとともに、加速度、ジャークの限界も配慮して補間周期毎の移動量を求め、その求めた補間周期毎の移動量をそのままモータに出力する一発補間方式を可能にできる。また、この構成では、さらなる加減速補間処理を必要とせず、余分な誤差を発生させないので、駆動軸の限界ぎりぎりでの加減速制御が可能となる。特に、自動車金型や航空機部品加工によく使われている短い直線補間命令に基づく曲面加工や、スプライン補間命令やNURBS曲線命令に基づく加工においても、機械に優しい滑らかな加減速制御が実現できる。しかも、この構成では、ソフトウェアをあらゆる工作機械に対して共通なものとして1回作成するだけでよい。駆動軸の構成に依存する部分は、逆運動学関数に基づく主軸駆動軸変換関数と、駆動軸偏微分値取得関数だけであり、それら両関数は1回作成して記憶部に記憶させておけば、記憶部から呼び出すだけで共通に使用できる。
 この場合において、前記滑らかブロック曲線は、前記ブロックの始点と終点のいずれにおいても一次微分値、二次微分値を規定する場合には、3つの前記sの三次多項式によって表す曲線を一次微分値、二次微分値が連続変化するように連結したものであり、前記滑らかコーナー曲線は、3つの前記sの三次多項式によって表す曲線を一次微分値、二次微分値が連続変化するように連結した構成であることが好ましい。

Claims (4)

  1.  工具を装着する主軸と、前記主軸を固定して保持する主軸ヘッドと、加工対象物を固定設置する機械テーブルと、前記主軸ヘッドと前記機械テーブルの回転姿勢を含む相対位置関係を制御する複数の駆動軸と、該駆動軸を駆動させるモータとを少なくとも有し、前記機械テーブル上に座標軸の向きと原点の位置とが固定された段取り基準座標系が設定された工作機械を制御する数値制御装置であって、
     準備部と第1制御部と第2制御部と第3制御部とを有し、
     前記準備部は、細分化されたサブ手段として少なくともNCプログラム管理部と段取り情報管理部と工具情報管理部とを有し、
     前記NCプログラム管理部は、前記加工対象物に固定されたプログラム座標系上の工具の姿勢を含む位置である工具位置の軌跡と、その送り速度を指令する工具送り速度指令からなる工具パスと、必要に応じての工具パス修正命令とが記述されたNCプログラムを準備情報メモリー部に記憶させるものであり、
     前記段取り情報管理部は、前記機械テーブルへの前記加工対象物の姿勢を含む設置位置として、前記プログラム座標系の原点座標と座標軸余弦の向きを示す姿勢角度とからなり、かつ、前記段取り基準座標系上での位置情報である段取り情報を、前記準備情報メモリー部へ記憶させるものであり、
     前記工具情報管理部は、使用する工具の形状や該工具の長さや工具半径の補正量の寸法情報を含む工具情報を前記準備情報メモリー部へ記憶させるものであり、
     前記第1制御部は、細分化されたサブ手段としてNCプログラム読み取り部と工具パス修正部とを有し、
     前記NCプログラム読み取り部は、前記NCプログラムに記述された前記工具パスと前記工具パス修正命令とを読み取ってパス演算メモリー部に記憶させるものであり、
     前記工具パス修正部は、前記工具パス修正命令に従って前記工具パスを修正するものであり、
     前記第2制御部は、前記段取り情報と前記工具情報とに基づいて前記駆動軸の構成の特徴を配慮して前記工具パスから全駆動軸の位置座標である駆動軸座標の軌跡に相当する駆動軸パスを求めるとともに、その求めた駆動軸パスを前記パス演算メモリー部に記憶させるものであり、
     前記第3制御部は、前記駆動軸パスから各補間周期ごとの各駆動軸の移動量を求めて前記モータに出力するものであり、
     さらに、前記準備部は、細分化されたサブ手段として駆動軸構成管理部を有し、
     前記駆動軸構成管理部は、前記主軸の回転姿勢を含む位置を前記段取り基準座標系上で表した位置情報である主軸位置と前記駆動軸座標との相関関係を示す関係式であって、前記駆動軸の構成によって決まる逆運動学関係式に基づく前記主軸位置を前記駆動軸座標に変換する主軸駆動軸変換関数を機械情報メモリー部に記憶させるものであり、
     前記第2制御部は、細分化されたサブ手段として主軸パス算出部と駆動軸パス算出部とを有し、
     前記主軸パス算出部は、前記駆動軸の構成とは無関係に、前記段取り情報と前記工具情報とに基づいて、前記工具パスを前記主軸位置の軌跡である主軸パスに変換して前記パス演算メモリー部に記憶させるものであり、
     前記駆動軸パス算出部は、前記主軸駆動軸変換関数を使用して前記主軸パスを前記駆動軸パスに変換して前記パス演算メモリー部に記憶させるものである、数値制御装置。
  2.  請求項1に記載の数値制御装置において、
     前記準備部は、細分化したサブ手段として、さらに、冗長度拘束条件追加部を有し、
     この冗長度拘束条件追加部は、前記工作機械が前記逆運動学関係式に基づいて前記主軸位置に対応する前記駆動軸座標を求める時にその解が無数にあるという冗長度を持つ駆動軸構成を有する場合において、前記逆運動学関数に加えることにより前記主軸位置に対応する前記駆動軸座標を1つに規定可能な追加条件である冗長度拘束条件を前記パス演算メモリー部に記憶させるものであり、
     前記主軸駆動軸変換関数は、前記パス演算メモリー部に記憶された前記冗長度拘束条件と前記逆運動学関数とを併せて使用することにより前記主軸位置に対応する1つの前記駆動軸座標を算出する関数である。
  3.  請求項1又は2に記載の数値制御装置において、
     前記準備部は、さらに、細分化した制御手段として、送り制御条件管理部を含んで構成され、
     前記送り制御条件管理部は、各駆動軸座標を時間によりそれぞれ一次微分、二次微分、三次微分した各駆動軸の速度、加速度、ジャークのそれぞれの許容最大値を含む駆動軸加減速条件を記憶するものであり、
     前記第1制御部は、さらに、細分化されたサブ手段として工具パス媒介変数表現部を有し、
     前記工具パス媒介変数表現部は、前記工具パスに含まれる前記工具軌跡を該工具軌跡の姿勢変化を含む移動距離の積算長であるsを媒介変数とする関数によって表現するとともに、前記工具送り速度指令を前記sの速度に変換して、前記工具パスを前記sを媒介変数とする関数として表現した工具パスに変更するものであり、
     前記主軸パス算出部は、前記sを媒介変数として関数表現した主軸パスを求めるものであり、
     前記駆動軸パス算出部は、前記sを媒介変数として関数表現した駆動軸パスを求めるものであり、
     前記第3制御部は、細分化されたサブ手段として加減速補間制御部とパルス補間部とを有し、
     前記加減速補間制御部は、前記工具送り速度指令と前記駆動軸加減速条件とに基づいて前記sの時々刻々の値を決定するものであり、
     前記パルス補間部は、決定された前記sの時々刻々の値に基づいて補間周期ごとの前記sの値を求めるとともに、この求めた補間周期ごとのsの値に応じた駆動軸座標を求めて、その駆動軸座標から前記補間周期ごとの各駆動軸の移動量を算出し、その移動量を前記モータに出力するものであり、
     前記駆動軸構成管理部は、前記主軸駆動軸変換関数に加えて、前記逆運動学関係式に基づいて前記各駆動軸座標を前記主軸位置の各成分により一次、二次、三次偏微分した値を求める駆動軸偏微分値取得関数を前記機械情報メモリー部に記憶させ、さらに、各駆動軸ごとに、前記駆動軸パスの修正に許される位置誤差である駆動軸パス修正許容誤差を、前記準備情報メモリー部に記憶させるものであり、
     前記加減速補間制御部は、さらに細分化したサブ手段として、ブロック滑らか補間部とコーナー滑らか補間部と送り制御条件転換部と媒介変数加減速決定部とを有し、
     前記ブロック滑らか補間部は、各指令ブロックごと及び各駆動軸ごとに、始点、終点の少なくとも一方が隣接するブロックと滑らかに接続するかの適否を判断した上で、始点において滑らかに接続する場合には、その判断を行った現ブロックの始点と現ブロックの直前のブロックの終点とにおける共通で適切な前記sによる一次微分値と二次微分値とを求めて始点接続条件として規定する一方、終点において滑らかに接続する場合には、前記現ブロックの終点とその現ブロックの直後のブロックの始点とにおける共通で適切な前記sによる一次微分値と二次微分値とを求めて終点接続条件として規定し、さらに前記始点接続条件及び前記終点接続条件の少なくとも一方によって規定した一次微分値、二次微分値を持つ滑らかブロック曲線を求め、前記現ブロックを該滑らかブロック曲線に置き換える駆動軸パスの修正を実施するものであり、
     前記コーナー滑らか補間部は、前記ブロック滑らか補間部によって求められた、連続動作させるべき一連の駆動軸パスにおいて、前記駆動軸パスの各指令ブロックの終点と、その次の指令ブロックの始点とにおける前記sによる一次微分値と二次微分値がそれぞれ一致するかしないかを判断し、その一次微分値と二次微分値のいずれかが一致しない場合には、各駆動軸パスの前記sによる一次微分値、二次微分値の不連続変化部分をなくすべく、前記微分値の一致の適否を判断した指令ブロック及びそのブロックの次の指令ブロックの一次微分値及び二次微分値に一致する一次微分値及び二次微分値を有するとともに、元の駆動軸パスとの誤差が前記駆動軸パス修正許容誤差以下であり、かつ、一次微分値、二次微分値が連続変化する滑らかコーナー曲線を求めて、該滑らかコーナー曲線と前記微分値の一致の適否を判断した指令ブロックとの接点と該滑らかコーナー曲線と前記次の指令ブロックとの接点との間の駆動軸パスを該滑らかコーナー曲線に置き換える駆動軸パスの修正を実施するものであり、
     前記送り制御条件転換部は、前記主軸駆動軸変換関数と駆動軸偏微分値取得関数を使用して、前記駆動軸加減速条件を元に、駆動軸パスの各部分における前記sおよび前記sの速度、前記sの加速度、前記sのジャークの条件式である媒介変数加減速条件を導き、
     前記媒介変数加減速決定部は、前記媒介変数加減速条件と、前記sの送り速度指令の範囲内でかつ最高速とする条件とのもとにおいて、前記sの時間の関数表現である媒介変数時間関数s(t)を求めるものであり、
     前記パルス補間部は、前記媒介変数時間関数に基づいて各補間周期毎の各駆動軸移動量を算出して、その算出した駆動軸移動量をモータへ出力するものである。
  4.  請求項3に記載の数値制御装置において、
     前記滑らかブロック曲線は、前記ブロックの始点と終点のいずれにおいても一次微分値、二次微分値を規定する場合には、3つの前記sの三次多項式によって表す曲線を一次微分値、二次微分値が連続変化するように連結したものであり、
     前記滑らかコーナー曲線は、3つの前記sの三次多項式によって表す曲線を一次微分値、二次微分値が連続変化するように連結した構成である。
PCT/JP2008/066663 2008-09-16 2008-09-16 数値制御装置 WO2010032284A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP08810713.1A EP2336839A4 (en) 2008-09-16 2008-09-16 NUMERICAL CONTROL
PCT/JP2008/066663 WO2010032284A1 (ja) 2008-09-16 2008-09-16 数値制御装置
US13/119,001 US8478438B2 (en) 2008-09-16 2008-09-16 Numerical control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2008/066663 WO2010032284A1 (ja) 2008-09-16 2008-09-16 数値制御装置

Publications (1)

Publication Number Publication Date
WO2010032284A1 true WO2010032284A1 (ja) 2010-03-25

Family

ID=42039138

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2008/066663 WO2010032284A1 (ja) 2008-09-16 2008-09-16 数値制御装置

Country Status (3)

Country Link
US (1) US8478438B2 (ja)
EP (1) EP2336839A4 (ja)
WO (1) WO2010032284A1 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101853012A (zh) * 2010-05-24 2010-10-06 西安理工大学 一种两级定位自由变域机械加工机及其两级定位方法
WO2013018339A1 (ja) * 2011-07-29 2013-02-07 新日本工機株式会社 数値制御装置
JP2013030103A (ja) * 2011-07-29 2013-02-07 Shin Nippon Koki Co Ltd 数値制御装置
JP2013030102A (ja) * 2011-07-29 2013-02-07 Shin Nippon Koki Co Ltd 数値制御装置
JP2014021759A (ja) * 2012-07-19 2014-02-03 Fanuc Ltd コーナ複数曲線挿入部を有する数値制御装置
CN112045232A (zh) * 2020-09-02 2020-12-08 重庆红亿机械有限公司 一种内曲线槽多轴加工装置
CN113399200A (zh) * 2020-03-17 2021-09-17 深圳市腾盛精密装备股份有限公司 一种点胶方法及五轴联动点胶机

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8831768B2 (en) * 2009-02-17 2014-09-09 Mitsubishi Electric Corporation Numerical control device, method of controlling the same, and system program therefor
CN102428419B (zh) * 2009-06-03 2013-12-25 三菱电机株式会社 数控装置以及生产系统
JP4980458B2 (ja) * 2010-10-27 2012-07-18 ファナック株式会社 数値制御工作機械の加工時間予測装置
EP2634655B1 (en) * 2010-10-27 2019-02-20 Makino Milling Machine Co., Ltd. Numerical control method of machine tool, and numerical control device
DE102011089014A1 (de) * 2011-01-19 2012-07-19 Dr. Johannes Heidenhain Gmbh Numerische Steuerung
JP5897259B2 (ja) * 2011-02-02 2016-03-30 東芝機械株式会社 工作機械およびその制御方法
JP5789114B2 (ja) * 2011-04-04 2015-10-07 オークマ株式会社 工作機械の補正値演算方法及びプログラム
JP5073850B1 (ja) * 2011-07-26 2012-11-14 ファナック株式会社 音変換装置を備えた工作機械の数値制御装置
WO2013175573A1 (ja) * 2012-05-22 2013-11-28 三菱電機株式会社 数値制御装置
CN103543691B (zh) * 2012-07-16 2016-05-18 沈阳高精数控技术有限公司 适用于自由曲面高速高精加工的旋转轴位置优化方法
DE112012006583B4 (de) * 2012-07-26 2021-07-08 Mitsubishi Electric Corporation Numerische Steuervorrichtung
CN102854841B (zh) * 2012-09-29 2014-11-05 广东工业大学 一种曲面零件的形位误差原位补偿加工方法
US9329592B2 (en) * 2012-11-27 2016-05-03 Pratt & Whitney Canada Corp. Methods and systems for calculation of feedrate
JP5792226B2 (ja) * 2013-05-29 2015-10-07 株式会社神戸製鋼所 多関節リンク機構の逆運動学解法、及びこの逆運動学解法を利用した教示データ作成装置
DE102013009251A1 (de) * 2013-06-03 2014-12-04 Günter Bröker Vorrichtung zur schneidenden Bearbeitung von Material und Schneideinheit mit oszillierendem Schneidmesser und veränderlichem Schnittneigungswinkel
JP5813058B2 (ja) * 2013-07-02 2015-11-17 ファナック株式会社 複合形固定サイクルの開始点経路短縮機能を有する数値制御装置
JP6310076B2 (ja) 2013-07-30 2018-04-11 Dmg森精機株式会社 数値制御工作機械の操作を制御するための制御システム、およびそのようなシステムで使用するためのバックエンドとフロントエンド制御装置
EP2845696B1 (de) * 2013-09-10 2017-05-17 Siemens Aktiengesellschaft Bearbeitungsmaschine mit redundanten Achsen und Auflösung der Redundanz in Echtzeit
CN103886191B (zh) * 2014-03-12 2017-03-08 常州宝菱重工机械有限公司 机床床身直线度补偿方法
JP6081954B2 (ja) * 2014-04-24 2017-02-15 ファナック株式会社 工作機械の反転動作を高速化する数値制御装置
JP5850996B1 (ja) * 2014-08-05 2016-02-03 ファナック株式会社 補間後加減速を考慮したコーナ経路生成機能を有する数値制御装置
CN104360636B (zh) * 2014-11-24 2016-08-24 首都航天机械公司 一种面向镜像铣削的双通道协调运动控制方法
TWI582559B (zh) * 2015-01-29 2017-05-11 國立臺灣大學 整合數值控制機之加工軌跡配置系統、軌跡規劃裝置、軌跡規劃方法及其電腦程式產品
JP6595273B2 (ja) * 2015-09-11 2019-10-23 Dmg森精機株式会社 数値制御装置
JP6363642B2 (ja) * 2016-02-29 2018-07-25 ファナック株式会社 接線連続のコーナにおけるコーナ経路の最適化機能を有する数値制御装置
EP3440521B1 (fr) 2016-04-07 2021-09-08 Willemin-Macodel SA Methode, programme et dispositif d'optimisation des programmes d'usinage
CN107894204B (zh) * 2016-10-04 2020-02-21 财团法人工业技术研究院 干涉仪及其成像方法
CN108068108B (zh) * 2016-11-16 2021-02-02 沈阳高精数控智能技术股份有限公司 平面内摆动伸缩型机器人运动控制方法
CN106502204A (zh) * 2016-12-12 2017-03-15 常州机电职业技术学院 数控车削细长轴挠度误差动态补偿方法
JP6464209B2 (ja) * 2017-01-27 2019-02-06 ファナック株式会社 数値制御装置
CN106843151B (zh) * 2017-02-27 2018-12-25 浙江大学 一种进给轴随ab轴摆动的五轴数控制孔机床正反解方法
CN109213083B (zh) * 2017-07-05 2020-05-08 上海狮迈科技有限公司 一种直纹面加工路径生成方法、装置及设备
CN107608313B (zh) * 2017-09-11 2019-09-27 大连理工大学 一种五轴双样条曲线插补速度规划方法
CN109116803B (zh) * 2018-08-10 2020-11-17 河南科技大学 一种剖分式等基圆锥齿轮切齿运动轨迹计算方法
CN108958167B (zh) * 2018-09-13 2019-10-11 大连理工大学 一种面向切削稳定性预报的跨轴跨点模态测试与参数辨识方法
EP3685969A1 (de) * 2019-01-28 2020-07-29 Siemens Aktiengesellschaft Rechnergestützte optimierung einer numerisch gesteuerten bearbeitung eines werkstücks
WO2020178978A1 (ja) * 2019-03-05 2020-09-10 三菱電機株式会社 加工プログラム変換装置、数値制御装置および加工プログラム変換方法
CN109991928B (zh) * 2019-04-24 2021-08-06 上海维宏智能技术有限公司 用于实现分段变坡加工的方法
JP7328029B2 (ja) * 2019-06-28 2023-08-16 ファナック株式会社 パラメータ管理装置及びその管理システム
CN113946139A (zh) * 2020-07-17 2022-01-18 配天机器人技术有限公司 数控系统的速度预测、数控系统的控制方法及数控系统
CN113687631A (zh) * 2021-08-25 2021-11-23 北京美阳达科技有限责任公司 九轴联动自动控制系统
CN114237160B (zh) * 2021-12-10 2023-06-02 合肥中辰轻工机械有限公司 一种直纹曲面凸轮的精加工数控程序的补偿加工方法
CN114326598A (zh) * 2022-01-06 2022-04-12 吉林大学 一种圆弧柔性插补算法及其雕刻机上的应用
CN114460903B (zh) * 2022-01-14 2022-12-27 泉州华中科技大学智能制造研究院 基于五轴联动机床的异形注塑件合模线加工方法及装置
WO2023237411A1 (de) * 2022-06-08 2023-12-14 Siemens Aktiengesellschaft Verfahren zum betreiben einer werkzeugmaschine, computerprogrammprodukt, steuereinheit, werkzeugmaschine, simulationsprogrammprodukt und verwendung einer steuereinheit

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS50112969A (ja) * 1974-02-18 1975-09-04
JPH05108134A (ja) * 1990-12-18 1993-04-30 Hitachi Seiki Co Ltd 主軸の割出対応の座標変換方法
JPH11149306A (ja) 1997-11-14 1999-06-02 Fanuc Ltd 加工機の制御装置
JP2000250615A (ja) * 1999-02-25 2000-09-14 Honda Motor Co Ltd 工作機のワーク姿勢制御方法
JP2001092508A (ja) 1999-07-16 2001-04-06 Okuma Corp パラレルメカニズム工作機械の数値制御装置
JP2001175315A (ja) * 1999-12-15 2001-06-29 Yaskawa Electric Corp 複数種類の工作機械に適用可能な座標変換部を持つ数値制御装置
JP2003195917A (ja) 2001-10-16 2003-07-11 Fanuc Ltd 数値制御装置
JP2004280798A (ja) * 2003-02-25 2004-10-07 Asml Netherlands Bv デバイス製造方法、この方法を実行するコンピュータ・プログラム、リソグラフィ装置、およびロボットシステム
JP2005056171A (ja) 2003-08-05 2005-03-03 Fanuc Ltd 制御装置
JP2006053636A (ja) * 2004-08-10 2006-02-23 Yaskawa Electric Corp 多自由度制御装置の逆変換方法
JP2008523487A (ja) * 2004-12-13 2008-07-03 シーメンス アクチエンゲゼルシヤフト 数値制御機械の移動可能な機械要素の移動案内のための方法および装置

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3882304A (en) * 1973-05-04 1975-05-06 Allen Bradley Co Parametric interpolation of three-dimensional surfaces
US4509126A (en) * 1982-06-09 1985-04-02 Amca International Corporation Adaptive control for machine tools
JPS60126710A (ja) * 1983-12-14 1985-07-06 Fanuc Ltd 自動プログラミングにおける加工工程の決定方法
DE3603316C2 (de) * 1986-02-04 1995-01-26 Index Werke Kg Hahn & Tessky Einrichtung zum Einstellen des Arbeitspunkts eines Werkzeugs in einer CNC-Werkzeugmaschine
IL89484A (en) * 1989-03-03 1992-08-18 Nct Ltd Numerical Control Tech System for automatic finishing of machined parts
DE19636102A1 (de) * 1996-09-05 1998-03-12 Fraunhofer Ges Forschung Verfahren und Vorrichtung zur Steuerung der Bewegung eines Trägers
EP0913229B1 (en) * 1997-03-15 2005-01-19 Makino Milling Machine Co. Ltd. Machining processor
US6922607B2 (en) * 2000-12-06 2005-07-26 Tsunehiko Yamazaki Numerically controlled method
DE10139638A1 (de) * 2001-08-11 2003-02-20 Heidenhain Gmbh Dr Johannes Anordnung zur Erzeugung von Führungsgrößen für Regelkreise einer numerisch gesteuerten Maschine
DE10164496A1 (de) * 2001-12-28 2003-07-17 Siemens Ag Automatisierungssystem
JP2003263208A (ja) * 2002-03-11 2003-09-19 Yoshiaki Kakino Ncプログラムの作成方法、nc装置及びコンピュータプログラム
US7248012B2 (en) * 2003-06-02 2007-07-24 Honda Motor Co., Ltd. Teaching data preparing method for articulated robot
JP4275632B2 (ja) * 2005-03-01 2009-06-10 新日本工機株式会社 パラレルメカニズム機構のキャリブレーション方法、キャリブレーションの検証方法、キャリブレーションの検証プログラム、データ採取方法及び空間位置補正における補正データ採取方法
JP4638327B2 (ja) * 2005-10-17 2011-02-23 新日本工機株式会社 パラレルメカニズム装置、パラレルメカニズム装置のキャリブレーション方法、キャリブレーションプログラム、及び記録媒体
JP4168060B2 (ja) * 2006-04-24 2008-10-22 ファナック株式会社 円錐状の加工面の加工を可能にした数値制御装置
US8725283B2 (en) * 2006-08-04 2014-05-13 Hurco Companies, Inc. Generalized kinematics system
DE102006048684A1 (de) * 2006-10-14 2008-04-17 Dr. Johannes Heidenhain Gmbh Verfahren zum Positionieren von Achsen in Werkzeugmaschinen
CA2614310C (en) * 2006-12-15 2014-05-06 Quickmill, Inc. Profile characterization
JP5129064B2 (ja) * 2008-08-26 2013-01-23 新日本工機株式会社 工作機械の数値制御装置
JP4648471B2 (ja) * 2009-07-14 2011-03-09 ファナック株式会社 工作機械の工具軌跡表示装置
JP5108134B1 (ja) 2011-05-20 2012-12-26 株式会社オハラ 情報記録媒体用基板の製造方法

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS50112969A (ja) * 1974-02-18 1975-09-04
JPH05108134A (ja) * 1990-12-18 1993-04-30 Hitachi Seiki Co Ltd 主軸の割出対応の座標変換方法
JPH11149306A (ja) 1997-11-14 1999-06-02 Fanuc Ltd 加工機の制御装置
JP2000250615A (ja) * 1999-02-25 2000-09-14 Honda Motor Co Ltd 工作機のワーク姿勢制御方法
JP2001092508A (ja) 1999-07-16 2001-04-06 Okuma Corp パラレルメカニズム工作機械の数値制御装置
JP2001175315A (ja) * 1999-12-15 2001-06-29 Yaskawa Electric Corp 複数種類の工作機械に適用可能な座標変換部を持つ数値制御装置
JP2003195917A (ja) 2001-10-16 2003-07-11 Fanuc Ltd 数値制御装置
JP2004280798A (ja) * 2003-02-25 2004-10-07 Asml Netherlands Bv デバイス製造方法、この方法を実行するコンピュータ・プログラム、リソグラフィ装置、およびロボットシステム
JP2005056171A (ja) 2003-08-05 2005-03-03 Fanuc Ltd 制御装置
JP2006053636A (ja) * 2004-08-10 2006-02-23 Yaskawa Electric Corp 多自由度制御装置の逆変換方法
JP2008523487A (ja) * 2004-12-13 2008-07-03 シーメンス アクチエンゲゼルシヤフト 数値制御機械の移動可能な機械要素の移動案内のための方法および装置

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101853012A (zh) * 2010-05-24 2010-10-06 西安理工大学 一种两级定位自由变域机械加工机及其两级定位方法
CN101853012B (zh) * 2010-05-24 2011-12-14 西安理工大学 一种两级定位自由变域机械加工机及其两级定位方法
WO2013018339A1 (ja) * 2011-07-29 2013-02-07 新日本工機株式会社 数値制御装置
JP2013030101A (ja) * 2011-07-29 2013-02-07 Shin Nippon Koki Co Ltd 数値制御装置
JP2013030103A (ja) * 2011-07-29 2013-02-07 Shin Nippon Koki Co Ltd 数値制御装置
JP2013030102A (ja) * 2011-07-29 2013-02-07 Shin Nippon Koki Co Ltd 数値制御装置
WO2013018338A1 (ja) * 2011-07-29 2013-02-07 新日本工機株式会社 数値制御装置
WO2013018340A1 (ja) * 2011-07-29 2013-02-07 新日本工機株式会社 数値制御装置
JP2014021759A (ja) * 2012-07-19 2014-02-03 Fanuc Ltd コーナ複数曲線挿入部を有する数値制御装置
US9377772B2 (en) 2012-07-19 2016-06-28 Fanuc Corporation Numerical controller including corner multiple curves inserting unit
CN113399200A (zh) * 2020-03-17 2021-09-17 深圳市腾盛精密装备股份有限公司 一种点胶方法及五轴联动点胶机
CN112045232A (zh) * 2020-09-02 2020-12-08 重庆红亿机械有限公司 一种内曲线槽多轴加工装置

Also Published As

Publication number Publication date
US20110166693A1 (en) 2011-07-07
EP2336839A1 (en) 2011-06-22
EP2336839A4 (en) 2013-11-06
US8478438B2 (en) 2013-07-02

Similar Documents

Publication Publication Date Title
WO2010032284A1 (ja) 数値制御装置
JP5009010B2 (ja) 数値制御装置
JP4938119B2 (ja) 工具先端点位置を制御する多軸加工機用数値制御装置
JP4945664B2 (ja) 傾斜面を加工する多軸加工機用数値制御装置
EP1213634B1 (en) Numerically controlled method
JP5872869B2 (ja) 工具背面での切削点指令により加工を行う数値制御装置
WO2012172594A1 (ja) 数値制御装置
JP4503659B2 (ja) 座標変換工具位相制御用数値制御装置
JP2009146152A (ja) 5軸加工機を制御する数値制御装置
JP5785224B2 (ja) 5軸加工機を制御する数値制御装置
JP5452788B1 (ja) 数値制御装置
JP2002172543A (ja) 加工装置の制御パラメータ設定装置及び制御パラメータ設定方法
WO2012101789A1 (ja) 数値制御装置
JP2012248098A (ja) 機械の誤差補償値計算方法
JP2010146176A (ja) 回転軸を有する工作機械用の数値制御装置
JP4637197B2 (ja) 数値制御装置
WO2015098085A1 (ja) 動作プログラム作成方法およびロボットの制御方法
JP5905521B2 (ja) 工具先端点制御中に生じるバックラッシを抑制することを特徴とする数値制御装置
JP2011070483A (ja) テーブル旋回5軸加工機用数値制御装置
JP2005271148A (ja) 工具経路データ生成装置及びこれを備えた制御装置
JP6057284B2 (ja) 多関節ロボット及び半導体ウェハ搬送装置
JP2003005811A (ja) 6軸制御ncプログラム生成方法及び生成装置、並びに6軸制御ncプログラム生成プログラム及びこのプログラムを記憶したコンピュータ読み取り可能な記録媒体
JP4734440B2 (ja) 4軸加工機用数値制御装置
JP2010097399A (ja) 工作機械の数値制御装置およびncデータ解析装置
JP5873070B2 (ja) ワークに対する相対的工具方向の入力が可能な数値制御装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08810713

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 13119001

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2008810713

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: JP