CN118081730A - Jig data generation device, robot controller, robot simulation device, and control device - Google Patents

Jig data generation device, robot controller, robot simulation device, and control device Download PDF

Info

Publication number
CN118081730A
CN118081730A CN202310991426.7A CN202310991426A CN118081730A CN 118081730 A CN118081730 A CN 118081730A CN 202310991426 A CN202310991426 A CN 202310991426A CN 118081730 A CN118081730 A CN 118081730A
Authority
CN
China
Prior art keywords
jig
data
robot
unit
printing
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN202310991426.7A
Other languages
Chinese (zh)
Inventor
浪越孝宏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nidec Corp
Original Assignee
Nidec Corp
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 Nidec Corp filed Critical Nidec Corp
Publication of CN118081730A publication Critical patent/CN118081730A/en
Pending legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1612Programme controls characterised by the hand, wrist, grip control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0081Programme-controlled manipulators with master teach-in means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

The invention provides a jig data generating device, a robot controller, a robot simulation device and a control device. The jig data generation device is provided with: an acquisition unit that acquires shape data of a jig manufactured by a 3D printing device for manufacturing a laminate by laminating in a lamination direction; a determining unit that determines a predetermined jig range surrounding at least a part of the jig based on the acquired shape data; and a generation unit that generates jig data including the determined jig range data.

Description

Jig data generation device, robot controller, robot simulation device, and control device
Technical Field
The present invention relates to a jig data generating apparatus.
Background
Conventionally, a robot having a hand capable of gripping a workpiece is known (for example, patent document 1).
Patent document 1: japanese patent application laid-open No. 2017-36924
Disclosure of Invention
In particular, in the assembly process of products using industrial robots, jigs for holding workpieces are often used. However, since the hand of the robot is in contact with the workpiece and a load is applied to the jig holding the workpiece, there is a possibility that the jig may be adversely affected, and improvement of the robot control and improvement of the jig design method are demanded.
In view of the above-described circumstances, an object of the present invention is to provide a jig data generating device and a robot simulation device that can suppress adverse effects on a jig.
An exemplary jig data generation device of the present invention includes: an acquisition unit that acquires shape data of a jig manufactured by a 3D printing device for manufacturing a laminate by laminating in a lamination direction; a determining unit that determines a predetermined jig range surrounding at least a part of the jig based on the acquired shape data; and a generation unit that generates jig data including the determined jig range data.
Further, an exemplary robot simulation device according to the present invention includes: an acquisition unit that acquires shape data of the jig; a determining unit that determines a predetermined jig range surrounding at least a part of the jig based on the acquired shape data; a disposition unit for disposing the jig in the simulator space in accordance with an operation of the operation input unit; and an operation simulation unit that causes the virtual robot to operate. When a predetermined position of the robot is included in the jig range during the operation of the robot, the operation simulation unit records an operation direction of the predetermined position.
According to the jig data generating apparatus and the robot simulation apparatus of the present invention, it is possible to suppress adverse effects on the jig.
Brief description of the drawings
Fig. 1 is a schematic diagram showing an example of a 3D printing apparatus of the FDM system.
Fig. 2 is a diagram schematically showing an example of a jig manufactured by the 3D printing apparatus.
Fig. 3 is a view showing an example of the direction of the load to the jig.
Fig. 4 is a diagram showing a configuration of a robot system according to an exemplary embodiment of the present invention.
Fig. 5 is a schematic diagram showing an example of the articulated robot.
Fig. 6 is a block diagram showing the configuration of the jig data generating apparatus (external PC).
Fig. 7 is a flowchart showing a flow of steps for generating jig data.
Fig. 8 is a diagram showing a display example of a jig in 3D modeling and a configuration example of a jig based on 3D printing software.
Fig. 9 is a flowchart showing a method for determining when the jig range is rectangular parallelepiped.
Fig. 10 is a view showing a jig range of a rectangular parallelepiped.
Fig. 11 is a flowchart showing a method for determining when the jig range is a sphere.
Fig. 12 is a view showing the range of the jig for the sphere.
Fig. 13 is a diagram showing a configuration related to robot control in the robot system.
Fig. 14 is a flowchart relating to robot control according to an exemplary embodiment of the present invention.
Fig. 15 is a schematic view showing an example of a working environment of the robot.
Fig. 16 is an exploded view showing the amount of movement of the minute motion.
Fig. 17 is a diagram showing an example of overlapping of the jig ranges.
Fig. 18 is a diagram showing a configuration of an exemplary robot simulation device according to the present invention.
Fig. 19 is a flowchart showing a method of determining the stacking direction of jigs at the time of printing.
Fig. 20 is a schematic diagram showing a simulator space.
Fig. 21 is a diagram showing an example of the jig model and the operation direction model.
Fig. 22 is a diagram showing a configuration of an exemplary control device of the present invention.
Fig. 23 is a diagram showing an example in which the jig model and the operation direction model are arranged for printing.
Description of the reference numerals
1, A robot; 1A hand; 1B torque sensor; 2a robot controller; 3, a demonstrator; 4 an external PC;4A clamp data generating means; 4B a robot simulation device; 4C control means; a 53 d printing device; 10a robotic system; a 21 control unit; 21A grip control unit; a 21B data acquisition unit; 22 storage unit; 22A robot program; 22B teaching point data; 22C control program; 22D clamp range data; 22E stacking direction vector information; 41 an operation input section; 42 a display section; 43a control unit; 43A acquisition unit; 43B determining unit; a 43C generation unit; a 43D acquisition unit; 43E determining unit; a 43F arrangement unit; a 43G action simulation unit; a 43H file acquisition unit; a 43I print control section; 44a storage section; 44A 3D modeling software; 44B 3D printing software; 44C clamp data generation software; 44D robot simulation software; a 51 foam substrate; a 52 print head; 53 a roll of modeling material; 54 a roll of support material; J. j1, J2 clamps; an L action direction; p printing an object; s supporting part; SS, SS1, SS2 clamp ranges; w workpiece.
Detailed Description
Hereinafter, exemplary embodiments of the present invention will be described with reference to the accompanying drawings.
< 1. Jig manufactured by 3D printing apparatus >)
A 3D printing apparatus (3D printer) is flexibly used in various fields because it can simply form a stereoscopic model having a complicated structure using a resin or the like without requiring a metal mold. In factories for assembling products, jigs, which are tools used in assistance in producing products, are used. A clamp is used to hold the workpiece. By manufacturing a jig that matches the workpiece, the workpiece can be fixed at a position or angle at which the work is easy to perform.
The 3D printing apparatus includes an apparatus that performs printing in a manner called FDM (Fused Deposition Modeling) (thermal solution lamination) method. Fig. 1 is a schematic diagram showing an example of a 3D printing apparatus of the FDM system. The 3D printing apparatus 5 shown in fig. 1 is provided with a foam substrate 51, a print head 52, a modeling material roll 53, and a support material roll 54. Filaments as a material for the printing object P are fed from the modeling material roll 53 to the print head 52. Filaments of material for the support S are fed from a support material roll 54 to the print head 52. The support S is a member for supporting the printing object P at the time of printing. The filaments are made of a resin material.
While the print head 52 is moved in the xy direction and the foam base 51 is moved in the z direction, filaments melted by heating are ejected from the print head 52 to the foam base 51, whereby the print target P and the support portion S are printed on the foam base 51 by using the laminated structure of the melted resin. After printing, the printing object P can be obtained by separating the support portion S from the printing object P.
To manufacture the jig, a 3D printing device is sometimes used. Fig. 2 is a diagram schematically showing an example of a jig manufactured by the 3D printing apparatus. Since the 3D printing apparatus of the FDM method and the like described above forms the jig so as to laminate the materials from below, the jig J manufactured as shown in fig. 2 has a structure in which the materials are laminated in the lamination direction Dj. Further, in fig. 1, a workpiece W held by a jig J is illustrated.
However, as shown in fig. 3, the jig manufactured using the 3D printing apparatus has a characteristic that the strength against the load (LA, etc.) in the stacking direction Dj is strong, but the strength against the load (LB, LC, etc.) in the direction orthogonal to the stacking direction Dj is weak.
In a case where a jig is disposed in a work environment of a robot having a structure capable of gripping a workpiece, when the robot contacts the workpiece, a load is applied to the jig holding the workpiece. In the case of manufacturing the jig by the 3D printing apparatus, there is a possibility that the jig is adversely affected depending on the direction in which the load is applied. Therefore, in order to suppress such adverse effects on the jig, it is required to appropriately control the robot.
< 2. System architecture >)
Fig. 4 is a diagram showing the configuration of the robot system 10 according to the exemplary embodiment of the present invention. The robot system 10 includes a robot 1, a robot controller 2, a teaching tool 3, and an external PC (personal computer) 4.
As an example schematically shown in fig. 5, the robot 1 is an industrial multi-joint robot (arm). The robot 1 has motors mounted on respective joint axes, and has a hand 1A at a tip end. The hand 1A is configured to hold a workpiece. The hand 1A may be configured to hold a workpiece by fingers or may be configured to hold a workpiece by suction. The hand 1A is controlled to a predetermined position and posture by driving of the motor.
The robot 1 further includes a torque sensor 1B at each joint. The torque sensor 1B is configured to detect a torque applied to each joint shaft, and is configured by a strain gauge, for example. The grip state of the hand 1A can be estimated by detecting the torque of each joint axis and comprehensively evaluating the torque. In order to grasp the grip state of the hand 1A, a force sensor provided on the wrist portion of the hand 1A or a tactile sensor provided on the fingertip of the hand 1A may be used instead of the torque sensor.
The robot controller 2 is a device for controlling the robot 1, and is constituted by a PC, for example.
An operation device called a teaching tool 3 is connected to the robot controller 2. Using the teaching tool 3, the position and orientation of the robot 1 can be registered in the robot controller 2. For example, if the joints of the robot 1 are controlled by the operation in the teach pendant 3 and the registration operation is performed in the teach pendant 3 at the desired position and orientation, the position and orientation at that time is registered in the robot controller 2. Such a registration task is called teaching, and the registered position and orientation is called teaching point. The teaching point is position and orientation information of the tip portion (hand 1A) of the robot 1.
The external PC4 is provided outside the robot controller 2. Various software is stored in the external PC 4. The external PC4 is capable of performing, for example, robot programming for providing instructions to the robot 1. In addition, the external PC4 can perform 3D modeling of the jig, control the 3D printing device 5, or generate jig data as described below. The details of the external PC4 will be described later. Further, for example, an external PC for performing robot programming and an external PC for performing processing of the clamp relationship may also be different PCs.
The 3D printing device 5 is configured to shape a jig, and is configured as the above-described device of the FDM system, for example.
< 3. Generating jig data >
Here, before describing the robot control of the present invention, a method of generating jig data necessary for the robot control will be described.
Fig. 6 is a block diagram showing the structure of the external PC 4. The external PC4 has an operation input section 41, a display section 42, a control section 43, and a storage section 44.
The operation input unit 41 is configured to generate an input signal to be input to the control unit 43 according to an operation. The operation input section 41 includes, for example, a mouse and a keyboard.
The display unit 42 is configured to display various images, and is configured by a liquid crystal display unit, for example.
The control unit 43 includes a CPU, a memory, and the like. The storage unit 44 is a storage device that stores the 3D modeling software 44A, the 3D printing software 44B, and the jig data generation software 44C. The storage unit 44 is constituted by, for example, an HDD (HARD DISK DRIVE ) or an SSD (Solid STATE DRIVE), or the like. The CPU executes software stored in the storage unit 44 to realize various functions of the control unit 43. The acquisition unit 43A, the determination unit 43B, and the generation unit 43C shown in fig. 6 are various functional blocks realized when the CPU executes the jig data generation software 44C. In this case, the external PC4 functions as the jig data generating device 4A.
Here, a flow of steps for generating jig data will be described with reference to a flowchart shown in fig. 7. First, in step S1, the user causes the external PC4 to execute 3D modeling software (CAD tool) 44A to design a 3D model of the jig. On the left side of fig. 8, a display example of the designed jig J in the display section 42 is shown. After the design of the jig is completed, in step S2, the 3D modeling software 44A is executed by the external PC4, and the STL file related to the designed jig is output. The STL file is one of file formats for storing data representing a three-dimensional shape, and includes vertex coordinates (three coordinates) and normal vectors of triangle elements (polygons) constituting the three-dimensional shape. The output STL file is stored in the storage unit 44.
Next, in step S3, the 3D printing software 44B is executed by the external PC4 to read the STL file. Then, the model of the jig is displayed on the display unit 42, and the arrangement of the jigs for printing can be determined by the operation of the operation input unit 41 (step S4). On the right side of fig. 8, a model display example of the clip J displayed on the display section 42 by executing the 3D printing software 44B is shown. The foam substrate 51 in the 3D printing device 5 is displayed on the display section 42 together with the jig J. Thereby, the arrangement of the jig J with respect to the foam base 51 can be operated on the display.
The jig may be arranged by positional adjustment along parallel movement of XYZ axes of an orthogonal coordinate system (XYZ) (shown on the left side of fig. 8) in the 3D modeling software 44A, and posture adjustment by rotation around the XYZ axes of the orthogonal coordinate system. The upward direction U (fig. 8) perpendicular to the base surface of the foam base 51 when the jigs are arranged on the foam base 51 becomes the stacking direction of the jigs when the jigs are printed.
According to the 3D printing software 44B, in addition to the arrangement of the jigs for 3D printing, determination of the supporting portion for supporting the jigs and determination of various parameters (raw material, filling rate, etc.) can be performed.
If the conditions for printing are decided, the process advances to step S5, where the control section 43 controls the 3D printing device 5 by executing the 3D printing software 44B. In this way, the 3D printing apparatus 5 prints and forms the jigs and the supporting portions by lamination based on the determination conditions such as the arrangement of the jigs.
Then, in step S6, 3D print information data is output by execution of the 3D print software 44B. The 3D printing information data includes information related to the 3D printing performed. Specifically, the 3D printing information data includes shape data of a jig (printing object), arrangement data of the jig, shape data of the supporting portion, and parameters (raw material, filling rate, and the like). The shape data of the jig is vertex coordinate data of the triangle element included in the STL file output in step S2. The configuration data of the jig are position data (X, Y, Z) and posture data (Rx, ry, rz). The posture data are data of euler angles.
Next, the process advances to step S7, where the external PC4 executes the clip data generating software 44C to read the 3D print information data. At this time, the external PC4 functions as the jig data generating device 4A. The acquisition unit 43A (fig. 6) acquires the shape data, the posture data (Rx, ry, rz), and the parameters of the jig among the data included in the 3D print information data.
Next, the process advances to step S8, where the determining unit 43B determines a predetermined jig range surrounding the jig based on the acquired shape data of the jig. As described later, the jig range is provided for detecting that the hand 1A of the robot 1 approaches the jig.
An example of a specific method for determining the range of the jig will be described. Fig. 9 is a flowchart showing a method for determining when the jig range is rectangular parallelepiped. First, in step S11, shape data of a jig (print target) is acquired. As described above, the shape data is vertex coordinate data of each triangle element with reference to an orthogonal coordinate system (XYZ) in the 3D modeling software 44A.
Then, in step S12, the maximum value Xmax, ymax, zmax and the minimum value Xmin, ymin, zmin of each X, Y, Z component are obtained for all the vertex coordinates included in the shape data.
After the maximum value Xmax, ymax, zmax and the minimum value Xmin, ymin, zmin are determined, eight vertices of the rectangular parallelepiped are determined as shown in fig. 10. Therefore, in step S13, the jig range SS, which is a rectangular parallelepiped surrounding the jig J, is determined.
Fig. 11 is a flowchart showing a method for determining when the jig range is a sphere. In fig. 11, steps 21 to S23 are the same as steps S11 to S13 in fig. 9 described above, and a rectangular parallelepiped is determined. Then, in step S24, as shown in fig. 12, a sphere having the center C of the rectangular parallelepiped and the radius R of the distance from the center C to the apex of the rectangular parallelepiped is determined as the clamp range SS.
Returning to the explanation of fig. 7, after the clamp range is determined in step S8, the process proceeds to step S9. Here, the generating unit 43C (fig. 6) generates jig data including the shape data, the determined jig range data, the vector information of the lamination direction vector indicating the lamination direction of the jigs, and parameters (raw material, filling rate, and the like). The lamination direction vector is a vector along the upward direction U shown in fig. 8. The lamination direction vector with respect to the orthogonal coordinate system (XYZ) in the 3D modeling software 44A is determined by the above-described posture data (Rx, ry, rz), and therefore the above-described posture data can be used as the above-described vector information. Therefore, the jig data may include shape data, jig range data, and data of the stacking direction vector, each with reference to an orthogonal coordinate system (XYZ) in the 3D modeling software.
In step S10, the generated jig data is transmitted from the external PC4 to the robot controller 2. Thereby, the robot controller 2 can control the robot 1 using the jig data.
Thus, the jig data generating apparatus 4A of the present invention includes: an acquisition unit 43A that acquires shape data of a jig manufactured by the 3D printing device 5 for manufacturing a laminate by laminating in a lamination direction; a determining unit 43B that determines a predetermined jig range SS surrounding at least a part of the jig based on the acquired shape data; and a generation unit 43C that generates jig data including the determined jig range data. By using the shape data of the jig, the jig data for performing the robot workpiece gripping control in consideration of the strength of the jig as the laminate can be easily generated.
The shape data includes vertex coordinates of each of polygons (triangle elements) constituting the 3D model of the jig. Accordingly, the jig range can be determined based on the polygon data.
The vertex coordinates of each polygon are coordinates in a coordinate system (XYZ) handled in the 3D modeling software 44A. A generation unit (43C) generates jig data including vector information indicating a lamination direction vector of the jig in the lamination direction. The above-described vector information is included in the jig data as posture data when the model of the jig is configured for printing by the 3D printing software 44B. Thus, the shape data may follow the shape data generated by the 3D modeling software 44A, and the vector information of the lamination direction vector may follow the pose data generated by the 3D printing software.
The determination unit 43B obtains the maximum value and the minimum value of each component of the orthogonal coordinate system based on all the vertex coordinates included in the shape data, and determines the jig range SS as a rectangular parallelepiped based on the obtained maximum value and minimum value. Thus, the jig range SS can be managed by the rectangular parallelepiped.
The determination unit 43B obtains the maximum value and the minimum value of each component of the orthogonal coordinate system based on all the vertex coordinates included in the shape data, determines a rectangular parallelepiped based on the obtained maximum value and minimum value, and determines a clamp range SS as a sphere having a radius R from the center position of the determined rectangular parallelepiped as the center C and a distance from the center position to the vertex of the rectangular parallelepiped. Thus, the jig range SS can be managed by the sphere.
The acquisition unit 43A acquires data of at least one of the material and the filling information of the jig. The generating unit 43C includes the at least one data in jig data. Thereby, the robot 1 can more appropriately perform the work holding control according to the strength of the jig.
< 4 Robot control >)
Next, robot control performed using the jig data generated as described above will be described. Fig. 13 is a diagram showing a configuration related to robot control in the robot system 10.
The robot controller 2 includes a control unit 21 and a storage unit 22. The control unit 21 performs various controls using the robot program 22A, the teaching point data 22B, and the control program 22C stored in the storage unit 22.
The robot program 22A is composed of a programming language such as BASIC or Python. The external PC4 can generate the robot program 22A by programming an operation instruction using the teaching point data 22B. The control program 22C is a program for performing control for realizing the operation instructed by the robot program 22A. The grip control unit 21A included in the control unit 21 performs control related to gripping of the workpiece by the robot 1. The grip control unit 21A executes control in accordance with the control program 22C.
The data acquisition unit 21B included in the control unit 21 acquires jig data transmitted from the external PC4 as the jig data generation device 4A. The robot controller 2 can arrange the jig in the work space of the robot 1 based on the jig data according to the operation input. The data of the jig range in the state where the jig is arranged is set as jig range data 22D, and the data of the stacking direction vector showing the stacking direction of the jig in the state where the jig is arranged is stored as stacking direction vector information 22E in the storage section 22.
Next, control of the robot controller 2 will be described with reference to a flowchart shown in fig. 14. The control shown in fig. 14 is performed by the grip control unit 21A, and indicates control until the hand 1A reaches a target point for gripping a workpiece.
Here, fig. 15 schematically shows an example of a working environment of the robot 1, but in this working environment, a plurality of jigs J (J1, J2) manufactured using the 3D printing apparatus 5 are arranged. Furthermore, the present invention can also be applied to a work environment in which a single jig J is arranged.
When the process shown in fig. 14 is started, first, in step S1, the grip control unit 21A obtains the current position of the distal end portion (hand 1A) of the robot 1. As shown in fig. 15, various position coordinates such as the position of the hand 1A are specified in a fixed coordinate system (Xr, yr, zr).
Next, the process advances to step S32, where the grip control unit 21A calculates a minute motion of the robot by one control cycle amount for moving to the target point (target coordinates). Then, in step S33, the grip control unit 21A determines whether or not the position of the hand 1A after the minute operation is within the grip range indicated by the grip range data 22D. As described above, the jig range is, for example, a rectangular parallelepiped or a sphere.
In step S33, if the grip range is, for example, a sphere, it can be determined whether or not the hand 1A is within the grip range SS by determining whether or not the distance between the position after the minute motion of the hand 1A and the position of the center C is equal to or smaller than the set radius R. This makes it possible to determine whether or not the hand 1A is positioned close to the clamp J. In step S33, one of the jigs J is determined.
If the jig is within the range in step S33 (yes in step S33), the routine proceeds to step S34. In step S34, as shown in fig. 16, the grip control unit 21A calculates an angle θ between the stacking direction vector Vj of the jig J indicated by the stacking direction vector information 22E and the minute operation direction of the hand 1A. The angle θ is calculated in the range of 0 degrees to 90 degrees. The closer the angle θ is to 90 degrees, the weaker the strength of the jig J is in the minute movement direction. Here, the lamination direction vector information 22E is stored in the storage unit 22 (Vj 1, vj2 in fig. 15) for each of the plurality of jigs J.
Next, in step S35, as shown in fig. 16, the grip control unit 21A divides the movement amount M of the minute operation into a component M1 in the stacking direction of the jigs J and a component M2 in the direction orthogonal thereto.
Then, the process proceeds to step S36, where the grip control unit 21A reduces the component (movement amount component) M2 in the orthogonal direction. Here, the decrease amount is larger as the calculated angle θ is closer to 90 degrees. For example, the decrease amount is set in proportion to the angle θ.
Next, the process proceeds to step S37, where the grip control unit 21A updates the minute operation based on the reduced component in the orthogonal direction and the component in the stacking direction. This reduces the amount of movement of the minute motion in the control cycle of the robot 1, and reduces the motion speed of the hand 1A. Therefore, when the hand 1A approaches the jig J, the operation speed of the hand 1A is reduced in advance before the hand 1A contacts the workpiece, and even when the hand 1A contacts the workpiece, the load in the direction in which the strength of the jig J is weak can be suppressed. When the amount of movement in the updated minute movement is smaller than the minimum amount of movement due to the attenuation of the amount of movement, the amount of movement in the updated minute movement is set to the minimum amount of movement.
Further, whether to execute the reduction processing in step S36 may be switched depending on whether or not the angle θ calculated in step S34 is equal to or larger than a predetermined angle threshold. In this case, in step S36, the reduction amount is set to a fixed value.
After step S37, in step S38, the grip control unit 21A executes a load detection threshold lowering process. The load detection threshold is a threshold for detecting an overload applied to the hand 1A, and is, for example, a torque detection threshold of a torque sensor 1B provided in the robot 1. In this case, in step S38, the torque detection threshold is lowered from the initial value. The decrease amount in this case is, for example, a decrease amount proportional to the angle θ calculated in step S34. Alternatively, the torque detection threshold may be switched to be lowered by a fixed value according to whether or not the angle θ is equal to or larger than a predetermined angle threshold.
The load detection threshold may be a threshold of a load estimated from the torque detected by the torque sensor 1B. The initial value of the load detection threshold, such as the torque detection threshold, is set based on the parameters included in the jig data acquired by the data acquisition unit 21B. The strength of the jig J manufactured by the 3D printing device 5 varies according to the material (ABS, PLA, etc.), or the filling rate and filling method of the inside, and thus an upper initial value is set according to the strength of the jig J. Specifically, the stronger the intensity, the larger the initial value.
On the other hand, if the jig is out of the range in step S33 (no in step S33), the routine proceeds to step S39.
After step S38 (or step S38), the control section 21A determines whether or not all the jigs J have been processed in step S39. If all the jigs J have not been processed (no in step S39), the routine returns to step S33. Here, when the jig is within the range (yes in step S33), the processing in step S34 and the following steps are executed.
For example, as shown in fig. 17, when the predetermined range SS1 of the clamp J1 and the predetermined range SS2 of the clamp J2 overlap in the overlap area SA, when the hand 1A is located in the overlap area SA, the processing of step S34 and subsequent steps are performed on the clamps J1 and J2, respectively.
When the processing is completed for all the jigs J (yes in step S39), the flow proceeds to step S40, and the grip control unit 21A executes the minute operation of the hand 1A. Then, in step S41, the grip control unit 21A determines whether or not the hand 1A has reached the target point. If not (no in step S41), the routine returns to step S31. In this case, the movement amount of the minute action calculated in step S32 is the same as the movement amount of the minute action executed in step S40. When this is reached (yes in step 41), the process of fig. 14 ends.
Further, the grip control unit 21A performs control using the load detection threshold value in parallel with the processing of fig. 14. Specifically, for example, it is determined which of the plurality of jigs J the current position of the hand 1A is located in, the distance between the position of the center C and the position of the hand 1A is calculated for the jig range SS in which the hand 1A is located, and the load detection threshold value for the jig J having the shortest distance is compared with the current load detection value (for example, the torque detection value of the torque sensor 1B). As a result of the comparison, when the load detection value exceeds the load detection threshold value, the operation of the robot 1 is stopped. When the load detection threshold is lowered in step S38, the operation of the robot 1 is easily stopped, and adverse effects of the overload on the jig J can be suppressed.
The processing of fig. 14 is performed during the operation of the robot 1 during mass production of the product, but may be performed during confirmation of the operation after teaching. Thus, even when a decrease in the operation speed is confirmed, for example, the teaching can be performed again so as to change the trajectory of the hand 1A.
In other words, the robot controller 2 is a robot controller for controlling the robot 1 capable of gripping a workpiece. The robot controller 2 includes: a data acquisition unit 21B that acquires the jig data generated by the jig data generation device 4A; a storage unit 22 that stores lamination direction vector information 22E, the lamination direction vector information 22E indicating a lamination direction of a lamination structure of a jig for holding a workpiece; and a grip control unit 21A that performs control related to gripping of the robot 1 based on the stacking direction vector information 22E when the robot 1 grips the workpiece. The grip control unit 21A determines whether or not a predetermined position in the robot 1 is included in the jig range SS in the jig data, and if so, executes control related to gripping by the robot 1. Thus, when the robot 1 grips the workpiece, it is difficult to apply an overload in a direction in which the strength of the jig of the laminated structure is weak, and adverse effects on the jig can be suppressed.
< 5 Modified example >)
The shape data of the jig included in the 3D print information data output in step S6 (fig. 7) described above is vertex coordinate data of the triangle element included in the STL file output in step S2, that is, coordinate data based on the orthogonal coordinate system in the 3D modeling software 44A. However, the shape data of the jig may be coordinate data obtained by converting coordinate data included in the STL file into data based on an orthogonal coordinate system in the 3D printing software 44B. In this case, for example, the lamination direction vector (vector along the upward direction U in fig. 8) in the orthogonal coordinate system in the 3D printing software 44B is determined as a unit vector (X, Y, Z) = (0, 1), and therefore the jig data may not include information of the lamination direction vector.
<6. Method for determining lamination direction at printing >)
Next, a method of determining a stacking direction when 3D printing is performed on the jig so as to increase strength according to the operation of the robot by performing robot simulation in advance will be described.
Fig. 18 is a diagram showing a configuration of an exemplary robot simulation device 4B according to the present invention. The robot simulation device 4B is realized by a CPU executing robot simulation software 44D stored in the storage unit 44 of the PC 4. That is, the PC4 functions as the robot simulation device 4B. In addition, the storage unit 44 of the PC4 stores 3D modeling software 44A and 3D printing software 44B.
A method of determining the stacking direction of jigs at the time of printing will be described with reference to a flowchart shown in fig. 19. First, in step S41, the jig is modeled and designed by the PC4 executing the 3D modeling software 44A. Then, in step S42, an STL file related to the jig modeled by the 3D modeling software 44A is output.
Subsequently, the robot simulation software 44D is executed by the PC4, and the robot simulation device 4B is started. The acquisition unit 43D, the determination unit 43E, the arrangement unit 43F, and the operation simulation unit 43G included in the control unit 43 shown in fig. 18 are realized by execution of the robot simulation software 44D.
In step S43, the STL file is read by the robot simulation software 44D. At this time, the acquisition unit 43D acquires shape data of the jig included in the STL file. Next, in step S44, the determining unit 43E determines the clamp range based on the acquired shape data. As described above, the jig range is determined as, for example, a rectangular parallelepiped or a sphere.
Next, in step S45, the arrangement unit 43F performs arrangement of the jigs in the simulator space according to the operation in the operation input unit 41. A virtual robot is also disposed within the simulator space. Then, in step S46, the operation simulation unit 43G operates the virtual robot in the simulator space. Fig. 20 is a schematic diagram showing a simulator space in which the robot 1 and the jig J are disposed. When the robot 1 is operating in the simulator space, if the hand 1A of the robot 1 is located within the clamp range SS for the clamp J, the operating direction of the hand 1A is recorded. Recording is performed in units of a control period of the robot (for example, 4 ms).
When such robot simulation is completed, the STL file is output by the robot simulation device 4B in step S47. The STL file contains the data of the recorded operation direction in addition to the data contained in the STL file outputted from the 3D modeling software 44A in step S42. The data of the operation direction is included in the STL file as straight line set model data as in the operation direction L shown in fig. 21.
Next, the 3D printing software 44B is executed by the PC4, and the control device 4C shown in fig. 22 is started. The control device 4C is a device for controlling the 3D printing device 5. The file acquisition unit 43H and the print control unit 43I included in the control unit 43 shown in fig. 22 are realized by executing the 3D print software 44B.
In step S48, the 3D printing software 44B reads in the STL file output in step S47. At this time, the STL file is acquired by the file acquisition unit 43H. As a result, as shown in fig. 23, the model of the jig J and the model of the operation direction L are displayed on the display portion 42 together with the foam base 51. By operating the input unit 41, the jig model and the movement direction model can be moved in parallel and rotated about the coordinate axis as a unit. Since the user can confirm the operation direction, the jig can be arranged for printing so that the operation direction is as perpendicular as possible to the foam base 51 and the jig is in a posture that is easy to print. The posture in which the jig is easy to print is, for example, a posture in which the surface of the jig as wide as possible is placed on the foam base 51. When the arrangement of the jigs is determined in this way, as shown in fig. 23, the direction along the upward direction U perpendicular to the base surface of the foam base 51 is determined as the lamination direction. This makes it possible to determine the stacking direction of the jigs so as to increase the strength with respect to the operation direction of the robot.
Further, as described above, the user can adjust the arrangement of the jigs by operating the operation input unit 41, but not limited thereto, and the jigs may be automatically arranged based on the operation direction by the execution of the 3D printing software 44B.
Then, in step S50, the print control unit 43I controls the 3D printing apparatus 5 based on the determined arrangement of the jigs, and causes the 3D printing apparatus 5 to print the jigs.
As described above, the robot simulation device 4B of the present invention includes: an acquisition unit 43D that acquires shape data of the jig; a determining unit 43E for determining a predetermined jig range surrounding at least a part of the jig based on the acquired shape data; a placement unit 43F for placing the jig in the simulator space according to the operation of the operation input unit 41; and an operation simulation unit 43G that operates the virtual robot 1. The operation simulation unit 43G records an operation direction of a predetermined position of the robot 1 when the predetermined position is included in the jig range during the operation of the robot 1. In this way, the stacking direction printed by the 3D printing device 5 can be determined based on the recording data of the operation direction of the predetermined position, and a jig having an increased strength according to the operation of the robot 1 can be manufactured.
The control device 4C of the present invention is a control device for controlling the 3D printing device 5 for manufacturing a laminate by laminating in a lamination direction, and the control device 4C includes: a file acquisition unit 43H that acquires a data file (STL file) including the data of the operation direction and the shape data of the jig recorded in the robot simulation device 4B; and a print control unit 43I for causing the 3D printing device 5 to execute printing in the stacking direction determined based on the acquired data file. Thus, by stacking in the determined stacking direction, the jig with the strength increased according to the operation of the robot can be manufactured.
< 7. Other >
The embodiments of the present invention have been described above. The scope of the present invention is not limited to the above embodiment. The present invention can be implemented by variously changing the above-described embodiments within a range not departing from the gist of the present invention. The matters described in the above embodiments can be appropriately combined in any range where no contradiction occurs.
< 8. Additionally remembered >
As described above, the jig data generating apparatus according to one embodiment of the present invention includes: an acquisition unit that acquires shape data of a jig manufactured by a 3D printing device for manufacturing a laminate by laminating in a lamination direction; a determining unit that determines a predetermined jig range surrounding at least a part of the jig based on the acquired shape data; and a generation unit that generates jig data including the determined jig range data. (first Structure)
In the first configuration, the shape data may include vertex coordinates of each of polygons constituting the 3D model of the jig. (second Structure)
In the second configuration, the vertex coordinates of each of the polygons may be coordinates in a coordinate system processed in 3D modeling software, and the generating unit may generate the jig data including vector information indicating a lamination direction vector of the jig, the vector information being included in the jig data as posture data when the model of the jig is arranged for printing by 3D printing software. (third structure)
In the second or third configuration, the determination unit may be configured to acquire a maximum value and a minimum value of each component of an orthogonal coordinate system based on all vertex coordinates included in the shape data, and determine the jig range as a rectangular parallelepiped based on the acquired maximum value and minimum value.
(Fourth Structure)
In the second or third configuration, the determination unit may acquire a maximum value and a minimum value of each component of the orthogonal coordinate system based on all the vertex coordinates included in the shape data, determine a rectangular parallelepiped based on the acquired maximum value and minimum value, and determine the clamp range of a sphere having a center position of the determined rectangular parallelepiped as a center and a radius of a distance from the center position to a vertex of the rectangular parallelepiped. (fifth structure)
In any one of the first to fifth configurations, the acquisition unit may acquire data of at least one of the material and the filling-related information of the jig, and the generation unit may include the data of the at least one in the jig data. (sixth structure)
A robot controller according to an aspect of the present invention is configured to control a robot capable of holding a workpiece, and includes: a data acquisition unit that acquires the jig data generated by the jig data generation device having any one of the first to sixth configurations; a storage unit that stores lamination direction vector information indicating a lamination direction of a lamination structure of a jig for holding the workpiece; and a grip control unit that executes control related to gripping of the robot based on the stacking direction vector information when the robot grips the workpiece, wherein the grip control unit determines whether or not a predetermined position in the robot is included in the jig range in the jig data, and executes control related to gripping of the robot when the predetermined position is included in the jig range. (seventh Structure)
Further, a robot simulation device according to an embodiment of the present invention includes: an acquisition unit that acquires shape data of the jig; a determining unit that determines a predetermined jig range surrounding at least a part of the jig based on the acquired shape data; a disposition unit for disposing the jig in the simulator space in accordance with an operation of the operation input unit; and an operation simulation unit configured to cause a virtual robot to operate, wherein when a predetermined position of the robot is included in the jig range during operation of the robot, the operation simulation unit records an operation direction of the predetermined position. (eighth structure)
Further, a control device according to an aspect of the present invention is a control device configured to control a 3D printing device for manufacturing a laminate by laminating in a laminating direction, the control device including: a file acquisition unit that acquires a data file including the data of the operation direction and the shape data of the jig recorded in the robot simulation device of the eighth configuration; and a print control unit that causes the 3D printing device to execute printing in the stacking direction determined based on the acquired data file. (ninth structure)
The technique of the present invention can be used, for example, in an industrial robot system.

Claims (9)

1. A jig data generation device is characterized by comprising:
an acquisition unit that acquires shape data of a jig manufactured by a 3D printing device for manufacturing a laminate by laminating in a lamination direction;
a determining unit that determines a predetermined jig range surrounding at least a part of the jig based on the acquired shape data;
and a generation unit that generates jig data including the determined jig range data.
2. The jig data generating apparatus according to claim 1, wherein,
The shape data includes respective vertex coordinates of polygons constituting a 3D model of the jig.
3. The jig data generating apparatus according to claim 2, wherein,
The vertex coordinates of each of the polygons are coordinates in a coordinate system processed in 3D modeling software,
The generating unit generates the jig data including vector information indicating a lamination direction vector of the jig in a lamination direction,
The vector information is included in the jig data as pose data when the model of the jig is configured for printing by 3D printing software.
4. The jig data generating apparatus according to claim 2, wherein,
The determination unit obtains a maximum value and a minimum value of each component of an orthogonal coordinate system based on all vertex coordinates included in the shape data, and determines the jig range as a rectangular parallelepiped based on the obtained maximum value and minimum value.
5. The jig data generating apparatus according to claim 2, wherein,
The determination unit obtains a maximum value and a minimum value of each component of an orthogonal coordinate system based on all the vertex coordinates included in the shape data, determines a rectangular parallelepiped based on the obtained maximum value and the obtained minimum value, and determines the jig range of a sphere having a radius about a center position of the determined rectangular parallelepiped and a distance from the center position to a vertex of the rectangular parallelepiped.
6. The jig data generating apparatus according to claim 1, wherein,
The acquisition unit acquires data of at least one of the material and the filling information of the jig,
The generation unit includes the at least one piece of data in the jig data.
7. A robot controller for controlling a robot capable of holding a workpiece, the robot controller comprising:
a data acquisition unit that acquires the jig data generated by the jig data generation device according to any one of claims 1 to 6;
A storage unit that stores lamination direction vector information indicating a lamination direction of a lamination structure of a jig for holding the workpiece;
A grip control unit that executes control related to gripping of the robot based on the stacking direction vector information when the robot grips the workpiece,
The grip control unit determines whether or not a predetermined position in the robot is included in the jig range in the jig data, and executes control related to gripping of the robot when the predetermined position is included in the jig range.
8. A robot simulation device is characterized by comprising:
an acquisition unit that acquires shape data of the jig;
a determining unit that determines a predetermined jig range surrounding at least a part of the jig based on the acquired shape data;
a disposition unit for disposing the jig in the simulator space in accordance with an operation of the operation input unit;
an operation simulation unit for operating the virtual robot,
When a predetermined position of the robot is included in the jig range during the operation of the robot, the operation simulation unit records an operation direction of the predetermined position.
9. A control device for controlling a 3D printing apparatus for manufacturing a laminate by laminating in a lamination direction, the control device comprising:
a file acquisition unit that acquires a data file including the data of the operation direction and the shape data of the jig recorded in the robot simulation device according to claim 8;
And a print control unit that causes the 3D printing device to execute printing in the stacking direction determined based on the acquired data file.
CN202310991426.7A 2022-11-25 2023-08-08 Jig data generation device, robot controller, robot simulation device, and control device Pending CN118081730A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022187980A JP2024076462A (en) 2022-11-25 2022-11-25 Jig data generation device, robot controller, robot simulation device, and control device
JP2022-187980 2022-11-25

Publications (1)

Publication Number Publication Date
CN118081730A true CN118081730A (en) 2024-05-28

Family

ID=91164331

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310991426.7A Pending CN118081730A (en) 2022-11-25 2023-08-08 Jig data generation device, robot controller, robot simulation device, and control device

Country Status (2)

Country Link
JP (1) JP2024076462A (en)
CN (1) CN118081730A (en)

Also Published As

Publication number Publication date
JP2024076462A (en) 2024-06-06

Similar Documents

Publication Publication Date Title
EP1854037B1 (en) Method of and apparatus for automated path learning
JP6924145B2 (en) Robot teaching method and robot arm control device
US9731419B2 (en) System and method for programming robots
JP4271232B2 (en) Apparatus, method, program, and recording medium for executing offline programming of robot
JP6706489B2 (en) Robot direct teaching method
JP6351293B2 (en) Robot system and article manufacturing method
JP2006048244A (en) Working program generating device
JP4513663B2 (en) Operation teaching method of assembly mechanism in automatic assembly system
EP1847359A2 (en) Robot simulation apparatus
JP2014126939A (en) Load display device of machine tool
CN108687767B (en) Offline programming device and offline programming method
JP2019217593A (en) Robot system, method for controlling robot system, method for assembling article using robot system, control program and recording medium
CN112405566A (en) Robot control device
JP4396553B2 (en) Robot controller, computer program
JP7087632B2 (en) Robot control device
JP3577124B2 (en) Method of acquiring mating data using force control robot
JP2016040067A (en) Robot device, method for controlling robot, program and recording medium
CN118081730A (en) Jig data generation device, robot controller, robot simulation device, and control device
Brunner et al. Programming robots via learning by showing in a virtual environment
WO2022269927A1 (en) Program creation device
WO2023002624A1 (en) Robot control device which controls robot on basis of mechanism data, and operation program correction device
WO2022149570A1 (en) Device for simulating operation of robot, device for controlling robot, and method for simulating operation of robot
WO2022210186A1 (en) Control device for calculating parameters for controlling position and posture of robot
WO2022030414A1 (en) Robot device for detecting interference of constituent member of robot
JPH07205071A (en) Industrial robot

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination