control system
By generating a mechanical structure tree and calculating the position and posture of the interference object, the complex action definition of interference check in the numerical control device is simplified, realizing a simple interference check process.
Patent Information
- Application Number
- CN202011380067.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2019-12-02
- Filing Date
- 2020-11-30
- Publication Date
- 2025-09-23
- Estimated Expiration
- 2040-11-30
AI Technical Summary
Interference checking in numerical control devices is cumbersome, especially when it comes to defining the positions of interfering objects and axis-related movements. This is especially true when it comes to setting information such as the numbers of each linear and rotary axis, the direction of the rotation center axis, and the inclination angle.
A control system is adopted, including a mechanical structure management device, a control device and an interference check device. The machine tool structure is managed by generating a mechanical structure tree, and the position and posture of the interference object are calculated using node information and conversion information, simplifying the action definition in interference checking.
Simple interference checking is achieved by setting selected nodes and calculating the position and posture of the interference object, simplifying the definition of actions related to the position and axis of the interference object in the interference check.
Smart Images

Figure CN112987650B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a control system. Background Art
[0002] Interference checking in numerical control devices requires setting information related to the interfering object to check whether interference occurs between the tool and the interfering object in the machine tool. This setting includes defining the shape and position of the interfering object, as well as how the interfering object behaves relative to axis movement.
[0003] As a technology for interference checking using three-dimensional spatial data, there is, for example, the following technology: tools, workpieces, and other parts of a machine tool are represented by three-dimensional spatial data using a three-dimensional representation method, and a machinable attribute or a non-machinable attribute is individually added to each component of the three-dimensional spatial data. In the interference check using three-dimensional spatial data, the interference is allowed only when there is interference between components with the machinable attribute added, and in other cases, it is determined to be a collision that should be avoided (for example, refer to patent document 1).
[0004] However, the definition of actions related to the position and axis of the interference object in the interference check, for example, it is necessary to define the axis number of each linear axis, the axis number of each rotary axis, the direction of the rotation center axis of each rotary axis, the inclination angle of each rotary axis, the position of the rotation center axis of each rotary axis, the rotation direction of each rotary axis, etc., which is rather cumbersome.
[0005] It is desired to be able to perform interference checks with simple operations, such as defining the positions of interference objects and the motions related to the axes.
[0006] Patent Document 1: Japanese Patent Application Laid-Open No. 2000-284819 Summary of the Invention
[0007] One embodiment of the present disclosure is a control system comprising: a control device for controlling an industrial machine as a control object; a mechanical structure management device for expressing mechanical structural elements constituting the industrial machine in a graphical form as nodes, and comprising a node information notification unit and a conversion information calculation unit; and an interference check unit for performing interference checks between mechanical structural elements, and comprising an interference object setting unit, an interference object position and posture calculation unit, and an interference check unit, wherein the node information notification unit determines a selectable node including a mechanical structural element that becomes an interference object, notifies the interference check unit of node information related to the determined node, and the interference object setting unit obtains The node information sets the interference object through shape, selection node, position and / or posture on the node, the conversion information calculation unit obtains information related to the interference object set by the interference object setting unit, and derives a calculation formula for the position and / or posture of the selected node, the interference object position and posture calculation unit calculates the position and / or posture of the selected node based on the coordinate values of each axis of the industrial machinery, calculates the position and / or posture of the interference object in the machine tool based on the position and / or posture of the selected node and the position and / or posture of the interference object on the selected node, and the interference inspection unit checks whether there is interference based on the position and / or posture of the interference object.
[0008] According to one embodiment, the operation definition related to the position and axis of the interference object in the interference check can be performed by a simple operation. BRIEF DESCRIPTION OF THE DRAWINGS
[0009] Figure 1 It is a block diagram showing the basic structure of the entire embodiment of the present invention.
[0010] Figure 2 This is a functional block diagram of the mechanical structure management device 100 according to the embodiment of the present invention.
[0011] Figure 3 This is a functional block diagram of the control device 150 according to the embodiment of the present invention.
[0012] Figure 4 This is a functional block diagram of the interference check device 200 according to the embodiment of the present invention.
[0013] Figure 5 This is an explanatory diagram of a method for generating a machine structure tree in an embodiment of the present invention.
[0014] Figure 6 This is an explanatory diagram of a method for generating a machine structure tree in an embodiment of the present invention.
[0015] Figure 7 This is an explanatory diagram of a method for generating a machine structure tree in an embodiment of the present invention.
[0016] Figure 8 This is a flowchart showing a method for generating a machine structure tree in an embodiment of the present invention.
[0017] Figure 9A This is an explanatory diagram of the parent-child relationship of the structural elements of the machine in the embodiment of the present invention.
[0018] Figure 9B This is an explanatory diagram of the parent-child relationship of the structural elements of the machine in the embodiment of the present invention.
[0019] Figure 10A This diagram explains how to insert units into the machine structure tree.
[0020] Figure 10B This diagram explains how to insert units into the machine structure tree.
[0021] Figure 10C This diagram explains how to insert units into the machine structure tree.
[0022] Figure 11 An example of a mechanical structure according to an embodiment of the present invention is shown.
[0023] Figure 12A This section shows examples of machines that will be generated in the machine structure tree.
[0024] Figure 12B This section shows an example of a machine structure tree corresponding to a machine to be generated for the machine structure tree.
[0025] Figure 13 An example in which a coordinate system and a control point are inserted into each node of a machine in the embodiment of the present invention is shown.
[0026] Figure 14 An example of a machine structure tree into which a coordinate system and control points are inserted in an embodiment of the present invention is shown.
[0027] Figure 15A An example of a mechanism in which offsets and posture matrices are inserted into each node in the embodiment of the present invention is shown.
[0028] Figure 15B An example in which offsets and posture matrices are inserted into each node of a machine in the embodiment of the present invention is shown.
[0029] Figure 16 The following shows the operation flow of inserting a control point into the machine structure tree according to the embodiment of the present invention.
[0030] Figure 17 An example of a machine structure tree into which a coordinate system and control points are inserted according to an embodiment of the present invention is shown.
[0031] Figure 18 An example of information used when generating conversion information in the embodiment of the present invention is shown.
[0032] Figure 19 An example of information used when generating conversion information in the embodiment of the present invention is shown.
[0033] Figure 20 The following shows the operation flow of the interference checking method according to the embodiment of the present invention.
[0034] Figure 21A Examples showing embodiments of the present invention.
[0035] Figure 21B Examples showing embodiments of the present invention.
[0036] Figure 21C Examples showing embodiments of the present invention. DETAILED DESCRIPTION
[0037] <1. Control system structure>
[0038] Next, the embodiments of the present invention will be described in detail with reference to the accompanying drawings. Figure 1 The overall structure of this embodiment will be described.
[0039] A control system 10 according to the present embodiment includes a machine structure management device 100 , a control device 150 , an interference check device 200 , and a machine tool 300 .
[0040] The mechanical structure management device 100 is a device unique to this embodiment. It generates a graph (hereinafter also referred to as a mechanical structure tree) with the various components of the machine tool 300 as nodes, and manages the mechanical structure through this graph. As a result, the interference check device 200 described later can perform interference checks using mechanical structure data based on this mechanical structure tree.
[0041] More specifically, the machine structure management device 100 generates a machine structure tree representing the structure of the machine tool 300 using the method described in "5. Generation of a Machine Structure Tree" below. Because the machine structure tree contains information about the positional relationships between nodes, including interference objects in the machine structure tree allows the interference check device 200, described below, to understand the positional and posture relationships of all nodes in the machine structure tree.
[0042] For details on the structure of the mechanical structure management device 100, refer to Figure 2 This will be described later.
[0043] The control device 150 functions as a general control device and has the function of communicating with the machine structure management device 100. The control device 150 is communicatively connected to the machine tool 300. Furthermore, the control device 150 controls the machine tool 300 based on the movement amount of each control axis output based on a machining program installed in the control device 150 itself, thereby machining a workpiece.
[0044] Furthermore, the control device 150 outputs the movement amount of each control axis based on the machining program output to the interference check device 200 .
[0045] In this manner, the control device 150 outputs the movement amount to both the mechanical structure management device 100 and the machine tool 300. Regarding this, the output of the movement amount from the control device 150 to the mechanical structure management device 100 may be synchronized with the output of the movement amount from the control device 150 to the machine tool 300, or may be sent asynchronously.
[0046] For details on the structure of the control device 150, refer to Figure 3 Described later.
[0047] The interference check device 200 is a device unique to this embodiment, and performs control for appropriately performing interference checks by calculating the position and / or posture of an interference object on the machine structure tree.
[0048] For details on the structure of the interference check device 200, refer to Figure 4 This will be described later.
[0049] The machine tool 300 is a general machine tool, and each controlled axis is moved / rotated according to the movement amount of each controlled axis output from the control device 150 .
[0050] In the present embodiment, such a configuration facilitates definition of the position of an interfering object and the motion of an axis in machine tool 300 during interference checking.
[0051] in addition, Figure 1The structure shown is merely an example. For example, some or all of the functions of the mechanical structure management device 100 may be installed in the control device 150. In addition, some or all of the functions of the interference check device 200 may also be installed in the control device 150. In addition, the interference check device 200 may be implemented by a single device or by a combination of multiple devices. In addition, the interference check device 200 may be implemented by a device installed near the control device 150 or the machine tool 300, or by a server device installed remotely from the control device 150 or the machine tool 300 via a network. Furthermore, each communication connection may be a wired connection or a wireless connection. For example, the figure shows an example in which the communication connection between the mechanical structure management device 100, the control device 150, and the interference check device 200 is based on Ethernet (registered trademark) and is performed through a wired connection, but the connection may also be a wireless connection.
[0052] <2. Structure of the Mechanical Structure Management System>
[0053] Figure 2 This is a functional block diagram of the mechanical structure management device 100 .
[0054] The mechanical structure management device 100 includes a control unit 110 and a storage unit 120 . The control unit 110 includes a graph generation unit 111 , a control point coordinate system insertion unit 113 , a node information notification unit 114 , a conversion information calculation unit 115 , and a conversion information notification unit 116 . The graph generation unit 111 includes a node addition unit 112 .
[0055] The control unit 110 is a processor that controls the entire mechanical structure management device 100. This control unit 110 reads system programs and application programs stored in a ROM (not shown) via a bus, and implements the functions of the graph generation unit 111, node addition unit 112, control point coordinate system insertion unit 113, node information notification unit 114, conversion information calculation unit 115, and conversion information notification unit 116 included in the control unit 110 in accordance with these system programs and application programs.
[0056] The graph generation unit 111 generates the mechanical structure of the machine tool 300 in a graphical form. Furthermore, the node adding unit 112 included in the graph generation unit 111 adds nodes to the generated graph. The detailed operations of these units are described in detail in "5. Generating a Mechanical Structure Tree" below.
[0057] The control point coordinate system insertion unit 113 inserts control points and a coordinate system into the mechanical structure graphic. Detailed operations thereof will be described in detail in the following "6. Automatic insertion of control points and coordinate values."
[0058] The node information notification unit 114 notifies the interference check device 200 of information on nodes that can be selected as nodes carrying an interfering object.
[0059] As described later, after being notified of the selected node by the selection node notification unit 212 of the interference check device 200, the conversion information calculation unit 115 calculates the conversion information based on the above-mentioned graph. The conversion information includes how the node acts through the coordinate values of each axis or includes the coordinate values of each axis as variables. The conversion information is used to calculate the position and / or posture of each node.
[0060] The above conversion information may be in matrix form, vector form, or roll-pitch-yaw form. Detailed operations are described in detail in "7. Calculation of Conversion Information" below.
[0061] The conversion information notification unit 116 notifies the coordinate information conversion unit 213 of the interference check device 200 of the conversion information calculated by the conversion information calculation unit 115 .
[0062] The storage unit 120 stores information related to the machine structure tree generated by the graphic generation unit 111 .
[0063] Detailed operations of the graph generation unit 111, node information notification unit 114, conversion information calculation unit 115, conversion information notification unit 116, and storage unit 120 are described in detail in the following "7. Calculation of Conversion Information" and "8. Interference Check Method".
[0064] <3. Control device structure>
[0065] Figure 3 This is a functional block diagram of the control device 150 .
[0066] The control device 150 includes a control unit 160 , and the control unit 160 includes a coordinate information notification unit 161 and a servo motor control unit 162 .
[0067] The control unit 160 is a processor that controls the entire control device 150. The control unit 160 reads a system program and application programs stored in a ROM (not shown) via a bus, and implements the functions of the coordinate information notification unit 161 and the servo motor control unit 162 included in the control unit 160 according to the system program and application programs.
[0068] The coordinate information notifying unit 161 notifies the coordinate information of the operating machine tool 300 to the coordinate information converting unit 213 of the interference checking device 200 .
[0069] The servo motor control unit 162 receives the movement instruction amount of each axis from the control unit 160 and outputs the instruction of each axis to a servo motor (not shown).
[0070] In order to control the machine tool 300 , the control device 150 also includes other components that a typical control device includes, but descriptions thereof are omitted.
[0071] <4. Structure of the Interference Check Device>
[0072] Figure 4 2 is a functional block diagram of the interference check device 200 .
[0073] The interference check device 200 includes a control unit 210 and a storage unit 220 . The control unit 210 includes an interferer setting unit 211 , a selected node notification unit 212 , a coordinate information conversion unit 213 , an interferer position and posture calculation unit 214 , and an interference check unit 215 .
[0074] The control unit 210 is a processor that controls the entire interference check device 200. The control unit 210 reads system programs and application programs stored in a ROM (not shown) via a bus. In accordance with these system programs and application programs, the control unit 210 implements the functions of the interference object setting unit 211, selected node notification unit 212, coordinate information conversion unit 213, interference object position and posture calculation unit 214, and interference check unit 215.
[0075] The interferer setting unit 211 sets the shape of the interferer, the selected node on which the interferer is placed, and the position and / or posture of the interferer on the selected node. For example, the interferer setting unit 211 can set this information using a homogeneous matrix.
[0076] The selected node notification unit 212 notifies the conversion information calculation unit 115 of the mechanical structure management device 100 of the selected node set by the interfering object setting unit 211 .
[0077] The coordinate information conversion unit 213 calculates the position and / or posture of the selected node of the interference object from the coordinate values of each control axis periodically received from the control device 150 based on the conversion information received from the mechanical structure management device 100 .
[0078] The interferer position and posture calculation unit 214 calculates the position and / or posture of the interferer in the tool machine 300 based on the position and / or posture of the selected node and the position and / or posture of the interferer on the selected node.
[0079] The interference checking unit 215 checks whether there is interference based on the position and / or posture of each interfering object.
[0080] The storage unit 220 stores information related to the graph generated by the graph generating unit 111 of the mechanical structure management device 100 and stores, as interference setting data, interference shape data, data related to selected nodes, and data related to the position and / or posture of the interference on the selected nodes.
[0081] In addition, the detailed operations of the interference setting unit 211, the selected node notification unit 212, the coordinate information conversion unit 213, the interference position and posture calculation unit 214, the interference check unit 215 and the storage unit 220 are described in detail in the following "8. Interference Check Method".
[0082] <5. Generating the Mechanical Structure Tree>
[0083] The mechanical structure management device 100 according to the embodiment of the present invention initially generates a graphic representing the mechanical structure. Figures 5 to 11 A method for generating a mechanical structure tree as an example of a graph will be described in detail.
[0084] As an example, the description is used to show Figure 5 The method for generating the mechanical structure tree of the mechanical structure shown in FIG. Figure 5 In a machine, the X-axis is set perpendicular to the Z-axis, tool 1 is set on the X-axis, and tool 2 is set on the Z-axis. Meanwhile, the B-axis is set on the Y-axis, the C-axis is set on the B-axis, and workpieces 1 and 2 are set on the C-axis. This machine structure can be expressed as a machine structure tree as follows.
[0085] First, if Figure 6 As shown, only the origin 201 and nodes 202A to 202I are arranged. At this stage, there is no connection between the origin 201 and the node 202, nor between the nodes 202, and the names of the origin and each node are not set.
[0086] Next, set the axis name (axis type) of each axis, the name of each tool, the name of each workpiece, the name of each origin, and the physical axis number (axis type) of each axis. Next, set the parent node (axis type) of each axis, the parent node of each tool, and the parent node of each workpiece. Finally, set the cross offset (axis type) of each axis, the cross offset of each tool, and the cross offset of each workpiece. As a result, Figure 7 The mechanical structure tree shown.
[0087] In addition, each node of the mechanical structure tree is not limited to the above-mentioned information. For example, it may also have an identifier (name), an identifier of its own parent node, identifiers of all child nodes that have itself as a parent node, a relative offset (cross offset) relative to the parent node, a relative coordinate value relative to the parent node, a relative movement direction (unit vector) relative to the parent node, a node category (linear axis / rotational axis / unit (described later) / control point / coordinate system / origin, etc.), a physical axis number, information related to the conversion formula between the orthogonal coordinate system and the physical coordinate system, or it may not have this information.
[0088] By setting values for each node in this manner, data having a data structure in the form of a mechanical structure tree is generated in the mechanical structure management device 100. Furthermore, when adding another machine (or robot), an origin and, consequently, a node can be added.
[0089] exist Figure 8 2 shows a flowchart of a generalized method for generating the mechanical structure tree, in particular, a method for setting values for each node.
[0090] In step S11 , the graph generation unit 111 receives parameter values set for the nodes.
[0091] In step S12, if the parameter item set is "own parent node" (S12: Yes), the process proceeds to step S13. If it is not "own parent node" (S12: No), the process proceeds to step S17.
[0092] In step S13, if a parent node has been set for the node for which parameters are set (S13: Yes), the process proceeds to step S14. If a parent node has not been set (S13: No), the process proceeds to step S15.
[0093] In step S14 , the graph generator 111 deletes its own identifier from the “child node” item of the current parent node of the node for setting parameters, and updates the machine structure tree.
[0094] In step S15 , the graph generation unit 111 sets values for corresponding items of the node for setting parameters.
[0095] In step S16 , the graph generator 111 adds the parent node's own identifier to the item “child node”, updates the machine structure tree, and then ends the process.
[0096] In step S17 , the graph generation unit 111 sets values for corresponding items of the parameter setting nodes and then ends the process.
[0097] By using the method for generating data having the above-described machine structure tree-like data structure, it is possible to set a parent-child relationship between the components of the machine.
[0098] Here, for example, Figure 9A As such, a parent-child relationship refers to a relationship in which, when there are two rotation axis nodes 504 and 505, a change in the coordinate value of one node 504 unilaterally affects the geometric state (typically, position and orientation) of the other node 505. In this case, nodes 504 and 505 are said to be in a parent-child relationship, with node 504 being called the parent and node 505 being called the child.
[0099] But, for example, Figure 9B As shown, in the mechanical structure consisting of two linear axis nodes 502 and 503 and four universal joints 501, there is a mechanism that affects each other, such that a change in the coordinate value (length) of one of the nodes 502 and 503 not only changes the geometric state of the other node, but also changes the geometric state of the node itself. In this case, the nodes can be considered to be parent and child, that is, the parent-child relationship is bidirectional.
[0100] In this way, for the convenience of the mechanism, the change of a certain node affects other nodes, and is captured as a unit. By inserting this unit into the mechanical structure tree, the entire mechanical structure tree is generated. Figure 10A As shown, the unit has two connection points 510 and 520. Figure 10B When inserting a unit into the mechanical structure tree, as shown in Figure 10C In this way, the parent node is connected to the connection point 520, and the child node is connected to the connection point 510. In addition, the unit has a transformation matrix from the connection point 520 to the connection point 510. This transformation matrix is represented by the coordinate values of each node included in the unit. For example, Figure 11 In the case of such a mechanical structure, if the homogeneous matrix representing the position and posture at the connection point 520 is M A , let the homogeneous matrix representing the position and posture at the connection point 510 be M B , the conversion equations between these matrices are expressed as follows using the coordinate values x1 and x2 of each linear axis node included in the unit.
[0101]
Mathematical formula 1
[0102] When set to hour
[0103] It is expressed as follows
[0104] M B =TM A in
[0105] The unit representing this mechanical structure has a homogeneous transformation matrix such as T in the above-mentioned [Formula 1]. As shown in the following [Formula 2], the homogeneous matrix is a 4×4 matrix that can collectively express the position and posture.
[0106]
Mathematical formula 2
[0107]
[0108] In addition, even when the parent-child relationship is not mutual, in order to simplify the calculation process and settings, you can define a unit that aggregates multiple nodes into one unit in advance and configure this unit in the machine structure tree.
[0109] As described above, in this embodiment, the mechanical structure diagram can include a unit in which a plurality of axes are grouped together as a single component.
[0110] <6. Automatic insertion of control points and coordinate values>
[0111] To designate various positions on the mechanical structure as control points and set the coordinate systems of various parts on the mechanical structure, the following method is executed using the mechanical structure tree generated in "5. Generating Mechanical Structure Tree" above.
[0112] For example, in Figure 12A In the rotary indexing machine 350 shown, the X1 axis is set perpendicular to the Z1 axis, and tool 1 is set on the X1 axis. In addition, the X2 axis is set perpendicular to the Z2 axis, and tool 2 is set on the X2 axis. Furthermore, the C1 axis and C2 axis are set in parallel on the worktable on the C axis, and workpiece 1 and workpiece 2 are set on the C1 axis and C2 axis. If the mechanical structure is represented by a mechanical structure tree, it becomes Figure 12B The mechanical structure tree shown.
[0113] Take a series of nodes connected from each workpiece to the mechanical origin as an example, Figure 13 As shown in the figure, the coordinate system and control points are automatically inserted at the machine origin, C axis, C1 axis, C2 axis, workpiece 1, and workpiece 2. This automatic insertion is performed not only on the worktable, but also on the series of nodes connected from each tool to the machine origin, that is, the X1 axis, X2 axis, Z1 axis, Z2 axis, tool 1, and tool 2. The result is as follows: Figure 14As shown, control points and coordinate systems corresponding to each node are automatically inserted into all nodes that make up the machine structure tree. Typically, during machining, coordinate systems and tools are assigned to the workpiece as control points. This can address various situations, such as specifying control points to move the workpiece to a predetermined position or setting a coordinate system for a tool to grind another tool.
[0114] In addition, if Figure 15A As shown, each control point and coordinate system has an offset. Therefore, it is also possible to set a point far from the node center as a control point or the origin of the coordinate system. In addition, each control point and coordinate system has a posture matrix. In the case of the posture matrix of the control point, the posture matrix represents the posture (direction, tilt) of the control point, and in the case of the posture matrix of the coordinate system, the posture of the coordinate system. Figure 15B In the illustrated machine structure, the offset and posture matrix are represented by associating their corresponding nodes. Furthermore, each control point and coordinate system includes information about whether or not to include "movement" and "cross offsets" for nodes on the path leading to the root of the machine structure, allowing for configuration of these parameters.
[0115] exist Figure 16 A generalized flowchart of the automatic control point insertion method is shown in . Specifically, the flowchart includes a graph A and a graph B. As described later, the flowchart is configured to execute graph B during the process of graph A.
[0116] First, the graph A will be described.
[0117] In step S21 , the graphic generator 111 sets a machine structure tree.
[0118] In step S22 , chart B is executed, and the process of chart A ends.
[0119] Next, graph B will be described.
[0120] In step S31 of FIGB , if a control point or coordinate system has been inserted into the node ( S31 : Yes), the flow ends. If a control point or coordinate system has not been inserted into the node ( S31 : No), the process moves to step S32 .
[0121] In step S32, the control point coordinate system inserting unit 113 inserts the control point and the coordinate system into the node and pushes a variable n onto the stack.
[0122] In step S33, if the node has an n-th child node (S33: Yes), the process proceeds to step S34. If the node does not have an n-th child node (S33: No), the process proceeds to step S36.
[0123] In step S34 , for the nth child node, the graph B itself is recursively executed.
[0124] In step S35 , n is incremented by 1. That is, n=n+1 is set, and the process returns to step S33 .
[0125] In step S36, a variable n is popped up and the process of process B ends.
[0126] By the above method, the control point coordinate system inserting unit 113 inserts the control point and the coordinate system as nodes for each node of the mechanical structure graph. Figure 17 As shown, an embodiment in which the control point coordinate system inserting unit 113 provides each node of the mechanical structure graph with a control point and a coordinate system as information is also possible.
[0127] <7. Calculation of conversion information>
[0128] As described above, the conversion information calculation unit 115 calculates conversion information based on the mechanical structure tree generated by the mechanical structure management device 100. The conversion information includes how the nodes on the mechanical structure tree operate using the coordinate values of each axis or includes the coordinate values of each axis as variables. The conversion information is used to calculate the position and / or posture of each node. For the calculation method of the conversion information, refer to Figures 18 and 19 Give a detailed description.
[0129] For example, Figure 18 As shown, axis x2 is set on axis x1, axis x3 is set on axis x2, and the following is similarly set to N nodes connected, with the end being axis x N . And, the axis x N The control point node on the axis is used as the selection node for setting the interference object. Similarly, axis y2 is set on axis y1, axis y3 is set on axis y2, and the following is also set to L nodes connected, with the end of axis y L Here, x i 、y j It is the node name, but it also represents the coordinate value of each node.
[0130] And, suppose that each node is given Figure 18 The offset, node type (linear / rotational / unit / control point / coordinate system), axis direction, pose matrix, and coordinate values are shown.
[0131] At this time, if Figure 19 As shown, the homogeneous matrix M representing the current position and posture of the selected node relative to the root (mechanical origin) is obtained by the following formula: obj .
[0132]
Mathematical formula 3
[0133] in
[0134] The meanings of the symbols are as follows.
[0135] S xi : The homogeneous transformation matrix of each node;
[0136] N: the number of nodes connected from the root of the mechanical structure tree to the selected node;
[0137] M ctrl : It is the homogeneous matrix of the relative offset / posture of the selected node relative to the parent node, and is defined according to the above [Mathematical Formula 2] based on the offset vector / posture matrix defined in the selected node.
[0138] Homogeneous transformation matrix S xi It varies depending on the type of node, and for example, in the case of a linear axis, it is represented as follows.
[0139]
Mathematical formula 4
[0140]
[0141] The meanings of the symbols are as follows.
[0142] x i : Node x i The coordinate value of
[0143] ofs xi : Node x i Relative offset vector relative to the parent node;
[0144] v xi : Node x i The moving direction vector
[0145] In the case of a rotating shaft, it is expressed as follows.
[0146]
Mathematical formula 5
[0147]
[0148]
[0149] The meanings of the symbols are as follows.
[0150] v1: node x i The first component of the rotation axis direction vector;
[0151] v2: node x iThe second component of the rotation axis direction vector;
[0152] v3: node x i The third component of the rotation axis direction vector.
[0153] At this time, use M obj The homogeneous matrix X representing the current position and posture of the selected node is obtained by the following formula: m .
[0154]
Mathematical formula 6
[0155] in
[0156] The meanings of the symbols are as follows.
[0157] L: The number of nodes connected from the root of the mechanical structure tree to the coordinate system;
[0158] M coord : It is a homogeneous matrix of the relative offset / posture relative to the parent node, and is defined according to the formula of [Mathematical Formula 2] above based on the offset vector / posture matrix defined in the coordinate system.
[0159] <8. Interference Check Method>
[0160] Figure 20 Indicates the flow of actions when displaying a virtual object.
[0161] In step S41 , the node information notification unit 114 notifies the interferer setting unit 211 of the interference check device 200 of the node that can be selected as the node carrying the interferer.
[0162] In step S42 , the interferer setting unit 211 sets the interferer using the shape of the interferer, the selected node on which the interferer is placed, and information on the position and posture of the interferer on the selected node.
[0163] In step S43 , the selected node notification unit 212 notifies the conversion information calculation unit 115 of the mechanical structure management device 100 of the selected node set by the interfering object setting unit 211 .
[0164] In step S44 , the conversion information calculation unit 115 derives a homogeneous matrix including the coordinate values of each axis of the machine tool 300 as a variable as a calculation formula for the position and posture of each selected node.
[0165] In step S45 , the obstacle position and posture calculation unit 214 calculates the position and posture of the selected node based on the coordinate values of each axis.
[0166] In step S46 , the obstacle position and posture calculation unit 214 calculates the position and posture of the obstacle in the tool machine 300 based on the position and posture of the selected node and the position and posture of the obstacle on the selected node.
[0167] In step S47 , the interference check unit 215 checks whether there is interference based on the position and posture of each interfering object.
[0168] <9. Examples>
[0169] By reference Figures 21A to 21C , an example of this embodiment will be described. As an example of a machine tool 300, Figure 21A This is a diagram of a machine tool 300A in which an interfering object A is provided at the tip of a tool 1 . Figure 21B Indicates that the graphic is displayed Figure 21A The machine structure tree of the machine tool 300A is shown. Figure 21C yes Figure 21A An enlarged view of the Tool 1 node and the distractor A shown within the dotted line represents the distractor in the coordinate system of the Tool 1 node.
[0170] exist Figure 21A In the example, the interference object A rotates with the tool 1, so the interference object setting unit 211 selects Figure 21B The Tool1 node is shown as the selected node.
[0171] And, in Figure 20 In step S42, the interference object setting unit 211 Figure 21C The position and / or posture of the interfering object A is set on the coordinate system of the tool 1 node shown.
[0172] Afterwards, by executing Figure 20 In steps S43 to S47 , the interference check device 200 checks whether there is interference from the interferer A.
[0173] <10. Effects of the present embodiment>
[0174] According to this embodiment, the definition of the action related to the position and axis of the interfering object in the interference check can be performed through a simple operation. In particular, in this embodiment, the definition of the action related to the position and axis of the interfering object in the interference check can be performed simply by setting a selection node and calculating the position and posture of the interfering object on the selected node.
[0175] <11. Modifications>
[0176] In addition, the mechanical structure management device 100 may be integrated into the control device 150. Alternatively, the mechanical structure management device 100 may exist on the cloud.
[0177] Furthermore, the aforementioned mechanical structure management device, control device, interference check device, and machine tool can each be implemented using hardware, software, or a combination thereof. Furthermore, the interference check method performed by the aforementioned mechanical structure management device, control device, interference check device, and machine tool in collaboration can also be implemented using hardware, software, or a combination thereof. Here, implementation using software means implementation by a computer reading and executing a program.
[0178] Various types of non-transitory computer readable media can be used to store the program and provide it to the computer. Non-transitory computer readable media include various types of tangible storage media. Examples of non-transitory computer readable media include magnetic recording media (such as floppy disks, magnetic tapes, hard disk drives), optical magnetic recording media (such as optical magnetic disks), CD-ROMs (Read Only Memory), CD-Rs, CD-R / Ws, semiconductor memories (such as mask ROMs, PROMs (Programmable ROMs), EPROMs (Erasable PROMs), flash ROMs, and RAMs (random access memory). In addition, the program can also be provided to the computer via various types of transitory computer readable media. Examples of transitory computer readable media include electrical signals, optical signals, and electromagnetic waves. Transitory computer readable media can provide the program to the computer via wired communication paths such as electric wires and optical fibers, or wireless communication paths.
[0179] Description of Reference Signs
[0180] 10: Control system, 100: Mechanical structure management device, 110: Control unit, 111 Graphic generation unit, 112: Node addition unit, 113: Control point coordinate system insertion unit, 114: Node information notification unit, 115: Conversion information calculation unit, 116: Conversion information notification unit, 120: Storage unit, 150: Control device, 160: Control unit, 161: Coordinate information notification unit, 162: Servo motor control unit, 200: Interference check device, 211: Interference object setting unit, 212 Select node notification unit, 213: Coordinate information conversion unit, 214: Interference object position and posture calculation unit, 215: Interference check unit, 220: Storage unit, 300: Machine tool.
Claims
1. A control system, characterized in that: have: A control device that controls industrial machinery as a control object; a machine structure management device that represents the machine structure elements constituting the industrial machine in a graphical form as nodes and includes a node information notification unit and a conversion information calculation unit; as well as The interference checking device performs interference checking between various mechanical structural elements and includes an interference object setting unit, an interference object position and posture calculation unit, and an interference checking unit. The node information notification unit specifies a selectable node including a mechanical structural element that becomes an interference object, and notifies the interference check device of node information related to the specified node. The interference object setting unit obtains the node information, sets the interference object by shape, selection node, position and / or posture on the node, selects a tool node of a machine tool as the industrial machine as the selection node, and sets the position and / or posture of the interference object on the coordinate system of the tool node of the machine tool. The conversion information calculation unit calculates conversion information based on a mechanical structure tree as the mechanical structural element, the conversion information including how the nodes on the mechanical structure tree operate using the coordinate values of each axis or including the coordinate values of each axis as variables, and the conversion information is used to calculate the position and / or posture of each node. In the conversion information calculation method, the conversion information calculation unit derives a homogeneous matrix including coordinate values of each axis of the machine tool as a variable as a calculation formula for the position and / or posture of the selected node. The interference object position and posture calculation unit calculates the position and / or posture of the selected node based on the coordinate values of each axis of the industrial machine, and calculates the position and / or posture of the interference object in the machine tool based on the position and / or posture of the selected node and the position and / or posture of the interference object on the selected node. The interference checking unit checks for the presence of interference based on the position and / or posture of the interfering object.
2. The control system according to claim 1, characterized in that: At least one of the mechanical structure management device and the interference check device is integrated into the control device.
Citation Information
Patent Citations
Interference detecting method in numerically controlled machine tool and numerical controller
JP2000284819A
Interference calculation device and control method
JP2008276530A
Machining Support Apparatus and Machining Support System
US20140025192A1
Numerical controller and data structure
US20180164782A1