WO2022130608A1 - ワーク加工装置 - Google Patents
ワーク加工装置 Download PDFInfo
- Publication number
- WO2022130608A1 WO2022130608A1 PCT/JP2020/047382 JP2020047382W WO2022130608A1 WO 2022130608 A1 WO2022130608 A1 WO 2022130608A1 JP 2020047382 W JP2020047382 W JP 2020047382W WO 2022130608 A1 WO2022130608 A1 WO 2022130608A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- robot
- determination
- current position
- control device
- movement
- Prior art date
Links
- 238000012545 processing Methods 0.000 title claims abstract description 31
- 230000033001 locomotion Effects 0.000 claims abstract description 136
- 238000012546 transfer Methods 0.000 claims abstract description 15
- 238000000034 method Methods 0.000 description 63
- 238000012790 confirmation Methods 0.000 description 51
- 238000010586 diagram Methods 0.000 description 13
- 238000003754 machining Methods 0.000 description 7
- 210000000078 claw Anatomy 0.000 description 6
- 238000001514 detection method Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000005856 abnormality Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1682—Dual arm manipulator; Coordination of several manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/0084—Programme-controlled manipulators comprising a plurality of manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/02—Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type
- B25J9/023—Cartesian coordinate type
- B25J9/026—Gantry-type
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40252—Robot on track, rail moves only back and forth
Definitions
- This specification relates to a work processing device.
- Patent Document 1 As a type of work processing device, in Patent Document 1, a plurality of robots (loaders) that deliver and receive each work to a machine tool are installed so as to be able to run on the same running table (rail), and each robot is installed.
- a machine tool processing device provided with a control device (loader control device) that independently controls movement is disclosed.
- the control device implements proximity speed control that forcibly changes the speed when the relative distance becomes less than the reference value based on the relative distance between adjacent robots obtained from the coordinate values of each robot. is doing.
- the present specification discloses a work processing apparatus capable of further suppressing collisions between robots installed on the same traveling table.
- the present specification includes two work transfer robots capable of traveling on the same traveling table and capable of loading and unloading the work into and out of the machining unit, and a control device for performing movement control of the work transfer robot.
- one of the two work transfer robots is a first robot and the other is a second robot, and the control device determines whether or not the first robot can start the traveling.
- the instruction value related to the movement control instruction issued to the first robot and the first robot next instruction value indicating the movement destination position of the first robot, and the time when the determination is started.
- the first movement control instruction is used.
- a work processing apparatus provided with a first determination unit for determining whether or not the robot can move.
- the position of the second robot according to the movement control instruction executed at that time and the movement control instruction executed at that time are followed.
- the first difference from the movement destination position of the first robot according to the movement control instruction movement control instruction that will be executed at the fastest (shortest) at that time
- whether or not the first robot can move is determined. It is possible to make a more accurate and accurate judgment. Then, based on this determination result, it becomes possible to appropriately carry out the movement control of the first robot, and as a result, it is possible to further suppress the collision between the robots installed on the same traveling table.
- the machine tool 10 includes a main body 11, a pair of spindles 20a and 20b, a pair of tool stands 30a and 30b, and a pair of work transfer robots (hereinafter, may be simply referred to as robots) 40a and 40b. , And a control device 50 for controlling the spindles 20a and 20b, the tool stands 30a and 30b, and the work transfer robots 40a and 40b.
- the spindle 20a holds the work W rotatably.
- the spindle 20a is rotatably supported by a spindle (not shown) provided on the main body 11 so as to be horizontally arranged along the left-right direction (Z-axis direction) in FIG.
- a spindle chuck 21 for gripping the work W in a detachable manner is provided at the tip of the spindle 20a.
- the spindle 20a is rotationally driven by a servomotor (not shown).
- the spindle chuck 21 has a plurality of gripping claws (not shown), and the work W can be gripped by closing these gripping claws and released by opening the gripping claws.
- the opening and closing of the spindle chuck 21 is carried out according to an instruction from the control device 50.
- the spindle 20b is configured in the same manner as the spindle 20a.
- the tool stand 30a is a device that gives a feed motion to the cutting tool 31.
- the tool stand 30a is a so-called turret type tool stand, and has a tool holding portion 32 on which a plurality of cutting tools 31 for cutting the work W are mounted.
- the tool holding portion 32 is rotatably supported by a rotary drive portion (not shown) and can be positioned at a predetermined cutting position.
- the tool base 30a is moved by the tool base moving device 33 along the left-right direction (X-axis direction) and the front-back direction (Z-axis direction) in FIG. 1 for the tool base 30a and thus the cutting tool 31.
- the tool stand moving device 33 includes an X-axis drive device (not shown) that moves the tool stand 30a along the X-axis direction, and a Z-axis drive device (not shown) that moves the tool stand 30a along the Z-axis direction. have.
- the X-axis drive device and the Z-axis drive device are each driven by a servomotor.
- the tool stand 30b is configured in the same manner as the tool stand 30a.
- the spindle 20a and the tool stand 30a described above constitute a machining portion 35a for machining the work W.
- the spindle 20b and the tool stand 30b described above constitute a machining portion 35b for machining the work W.
- the robots 40a and 40b can travel on the same traveling table, respectively, and the work W can be carried in and out of the main shafts 20a and 20b and the work mounting device 60.
- the work mounting device 60 is a device on which the work W can be mounted.
- the work loading device for mounting the work W carried into the machine tool 10 on the mounting surface, and the work W carried out from the machine tool 10.
- the robot 40a moves the traveling portion 41 for traveling (moving along the X-axis) of the robot 40a, the grip portion 42 for detachably gripping the work W, and the grip portion 42 relative to the traveling portion 41.
- the grip portion moving portion 43 is provided.
- the robot 40a is, for example, a 3-axis Cartesian robot (3-axis gantry robot).
- the robot 40a is not limited to the orthogonal robot, and may be a vertical articulated robot, a horizontal articulated robot (scalar type robot), or a parallel link robot.
- the robot 40b is configured in the same manner as the robot 40a.
- the traveling unit 41 includes a traveling unit slider 41a (may be referred to as an X-axis slider), a guide unit 41b which is a traveling table for guiding and traveling the traveling unit slider 41a, and a traveling unit. It is provided with a traveling drive device 41c (see FIG. 3) for driving the slider 41a.
- a traveling unit slider 41a may be referred to as an X-axis slider
- a guide unit 41b which is a traveling table for guiding and traveling the traveling unit slider 41a
- a traveling unit It is provided with a traveling drive device 41c (see FIG. 3) for driving the slider 41a.
- the traveling portion slider 41a can mount the grip portion 42 and the grip portion moving portion 43, and is guided in the left-right direction by the guide portion 41b extending along the left-right direction (X-axis direction) in FIG. It is reciprocated (straight) along.
- the guide portion 41b is provided on the main body 11 and is arranged above the main shafts 20a and 20b and the tool stands 30a and 30b.
- One end of the guide portion 41b (the left end in FIG. 1) extends directly above the work mounting device 60 installed on the left side of the main body 11.
- the other end of the guide portion 41b (the right end in FIG. 1) extends directly above the work mounting device 60 installed on the right side of the main body 11.
- a traveling drive shaft (X-axis drive shaft) is configured from the traveling portion slider 41a and the guide portion 41b.
- the traveling drive device 41c is provided on the traveling portion slider 41a or the guide portion 41b side.
- the traveling drive device 41c includes a servomotor 41c1 (see FIG. 3), a driving force transmission mechanism (not shown), and the like.
- the traveling unit slider 41a travels and moves with respect to the guide unit 41b by the rotational output of the servomotor 41c1.
- the servo motor 41c1 is connected to the control device 50.
- the servomotor 41c1 is rotationally driven according to an instruction from the control device 50.
- the robots 40a and 40b can be moved toward the X-axis + side direction (right side direction) and the X-axis-side direction (left side direction).
- the servomotor 41c1 has a built-in position sensor (for example, resolver, encoder) 41c2 (see FIG. 3) for detecting the position (for example, rotation angle) of the servomotor 41c1.
- the detection result of the position sensor 41c2 is transmitted to the control device 50.
- the grip portion 42 is rotatably connected to the Y-axis slider 45a via a rotation drive portion 42b.
- the grip portion 42 has a triangular prism-shaped main body 42a having two orthogonal side surfaces and the remaining side surfaces.
- One of the two orthogonal sides is a plane parallel to the XX plane, and a robot chuck 42c for gripping the work W in a detachable manner is provided.
- the other side surface is a plane parallel to the XY plane, and a robot chuck 42d for gripping the work W in a detachable manner is provided.
- the main body 42a can be rotated around the rotation axis of the grip portion described later by the rotation drive unit 42b, and the robot chucks 42c and 42d can be rotated and switched to two positions (downward position in the Y-axis direction and backward position in the Z-axis direction). Is possible.
- the grip portion 42 sets the work W on the mounting surface (for example, the mounting surface of the work mounting device 60) facing upward in the Y-axis direction by setting the robot chucks 42c and 42d in the downward position in the Y-axis direction. Can be handed over.
- the grip portion 42 has a mounting surface facing toward the front side in the Z-axis direction (for example, a mounting surface of the spindle chuck 21 of the spindles 20a and 20b) by setting the robot chucks 42c and 42d at positions facing the back side in the Z-axis direction.
- Work W can be delivered to.
- the robot chucks 42c and 42d have a plurality of gripping claws (not shown), and the work W can be gripped by closing these gripping claws and released by opening the gripping claws.
- the opening and closing of the robot chucks 42c and 42d is carried out according to an instruction from the control device 50.
- a rotation drive unit 42b provided on an inclined surface at the tip (lower end) of the Y-axis slider 45a is attached (connected) to the remaining side surface of the main body 42a.
- the remaining side surfaces of the main body 42a are arranged parallel to the inclined surface at the tip of the Y-axis slider 45a.
- the rotation drive unit 42b has a rotation drive shaft 42e provided in the rotation drive unit 42b and a rotation drive device 42f (see FIG. 3) for rotationally driving the rotation drive shaft 42e. ..
- the rotation drive shaft 42e has a rotation shaft (grip rotation shaft) orthogonal to the remaining side surface of the main body 42a, and is rotatable around this rotation axis.
- the rotation drive device 42f is provided on the Y-axis slider 45a or the main body 42a.
- the rotary drive device 42f includes a servomotor 42f1, a driving force transmission mechanism (not shown), and the like.
- the rotation drive shaft 42e is rotated with respect to the tip of the Y-axis slider 45a by the rotation output of the servo motor 42f1, and the grip portion 42 is around the grip portion rotation axis of the rotation drive shaft 42e with respect to the Y-axis slider 45a. It becomes rotatable.
- the servo motor 42f1 is connected to the control device 50.
- the servomotor 42f1 has a built-in position sensor 42f2 (see FIG. 3) that detects the position of the servomotor 42f1. The detection result of the position sensor 42f2 is transmitted to the control device 50.
- the grip portion moving portion 43 moves the grip portion 42 relative to the traveling portion slider 41a in the left-right direction (Z-axis direction) and the vertical direction (Y-axis direction) in FIG.
- the grip portion moving portion 43 has a Z-axis drive portion 44 that moves the grip portion 42 along the Z-axis direction, and a Y-axis drive portion 45 that moves the grip portion 42 along the Y-axis direction.
- the Z-axis drive unit 44 moves the Z-axis slider 44a slidably attached to the traveling unit slider 41a along the Z-axis direction.
- the Z-axis drive unit 44 includes a Z-axis slider 44a, a Z-axis guide unit 44b that guides and moves the Z-axis slider 44a, and a Z-axis for moving and driving the Z-axis slider 44a. It is equipped with a drive device 44c (see FIG. 3).
- the Z-axis slider 44a can mount the Y-axis drive unit 45 and thus the grip portion 42, extends along the left-right direction (Z-axis direction) in FIG. 2, and is guided by the Z-axis guide unit 44b. It is reciprocated (linearly) along the Z-axis direction.
- the Z-axis guide portion 44b is provided on the traveling portion slider 41a.
- the Z-axis drive device 44c (see FIG. 3) is provided on the Z-axis guide portion 44b or the Z-axis slider 44a.
- the Z-axis drive device 44c includes a servomotor 44c1, a driving force transmission mechanism (not shown), and the like.
- the Z-axis slider 44a moves with respect to the Z-axis guide portion 44b by the rotational output of the servomotor 44c1.
- the servo motor 44c1 is connected to the control device 50.
- the servomotor 44c1 is rotationally driven according to an instruction from the control device 50.
- the servomotor 44c1 has a built-in position sensor (for example, resolver, encoder) 44c2 for detecting the position (for example, rotation angle) of the servomotor 44c1. The detection result of the position sensor 44c2 is transmitted to the control device 50.
- the Y-axis drive unit 45 moves the Y-axis slider 45a (supported by the grip portion 42) slidably attached to the Z-axis slider 44a along the Y-axis direction.
- the Y-axis drive unit 45 includes a Y-axis slider 45a, a Y-axis guide unit 45b that guides and moves the Y-axis slider 45a, and a Y-axis for moving and driving the Y-axis slider 45a. It is equipped with a drive device 45c (see FIG. 3).
- the Y-axis slider 45a can mount the grip portion 42, extends along the vertical direction (Y-axis direction) in FIG. 2, and is guided by the Y-axis guide portion 45b along the Y-axis direction. It is reciprocated (straight).
- the Y-axis guide portion 45b is provided on the Z-axis slider 44a.
- the Y-axis drive device 45c (see FIG. 3) is provided on the Y-axis guide portion 45b or the Y-axis slider 45a.
- the Y-axis drive device 45c includes a servomotor 45c1, a driving force transmission mechanism (not shown), and the like.
- the Y-axis slider 45a moves with respect to the Y-axis guide portion 45b by the rotational output of the servomotor 45c1.
- the servo motor 45c1 is connected to the control device 50.
- the servomotor 45c1 is rotationally driven according to an instruction from the control device 50.
- the servomotor 45c1 has a built-in position sensor (for example, resolver, encoder) 45c2 for detecting the position (for example, rotation angle) of the servomotor 45c1. The detection result of the position sensor 45c2 is transmitted to the control device 50.
- the control device 50 is a control device that drives and controls the spindles 20a and 20b, the tool stands 30a and 30b, and the robots 40a and 40b. In particular, the control device 50 implements movement control of the robots 40a and 40b. As shown in FIG. 3, the control device 50 is connected to an input device 50a, a display device 50b, a storage device 50c, a position sensor 41c2, 44c2, 45c2, 42f2, and a servomotor 41c1, 44c1, 45c1, 42f1.
- the input device 50a is provided on the front surface of the machine tool 10 and is for an operator to input various settings, various instructions, and the like to the control device 50.
- the display device 50b is provided on the front surface of the machine tool 10 and is for displaying information such as an operation status and a maintenance status to the operator.
- the storage device 50c has data related to the control of the machine tool 10, for example, a control program (machining program), parameters used in the control program, data related to various settings and various instructions, load data (machining data), first and second. It stores control information from the robot control system.
- the control device 50 has a microcomputer (not shown), and the microcomputer includes an input / output interface, a CPU, a RAM, and a ROM (all not shown) connected via a bus. The CPU executes various programs to acquire data, detection signals, control information, etc.
- the RAM temporarily stores the variables necessary for executing the program, and the ROM stores the program.
- the control device 50 carries out the processing according to this flowchart.
- the control device 50 has a first robot control system which is a control system for controlling the first robot 40a and a second robot control system which is a control system for controlling the second robot 40b, and each robot 40a and 40b. Can be controlled independently. That is, both the first robot control system and the second robot control system carry out the processing according to this flowchart.
- the traveling control (including the interlock confirmation process) of the first robot 40a, which is carried out in the first robot control system, will be described.
- the running control of the second robot 40b (including the interlock confirmation process) according to this flowchart is carried out in the same manner as the running control of the first robot 40a.
- the first robot 40a is the own robot
- the second robot 40b is the partner robot
- the second robot 40b is the own robot
- the robot 40a is the partner robot.
- the origin of the robot located on the entrance side (left side in FIG. 1) is set at the left end of the guide portion 41b
- the origin of the robot located on the exit side (right side in FIG. 1) is the right end of the guide portion 41b. Is set to.
- the control device 50 determines in step S102 whether or not there is an instruction to start the interlock confirmation process in the machining program (particularly the robot program for controlling the robots 40a and 40b).
- the control device 50 describes the interlock confirmation process M code (for example, "M300") which is the M code indicating the interlock confirmation process in the machining program
- the control device 50 gives an instruction to start the interlock confirmation process (for example, "M300”). It is determined that there is a command) (“YES” in step S102), and the program proceeds to step S104. If the control device 50 does not have the interlock confirmation process M code (for example, "M300”) which is the M code indicating the interlock confirmation process in the machining program, there is no instruction to start the interlock confirmation process. The determination is made (“NO” in step S102), and the program is temporarily terminated.
- M code for example, "M300”
- the interlock confirmation process when the movement control (X-axis movement control) along the X axis of the first robot 40a or the second robot 40b is performed, the first robot 40a is performed when the movement control is performed. This is a process for confirming that the robot 40b and the second robot 40b do not come into contact with each other. That is, the interlock confirmation process is also a process for confirming whether or not the X-axis movement control of the own robot 40a is possible. Further, the interlock confirmation processing M code is described immediately before the program line related to the X-axis movement control of the robot 40a. A description example of the machining program is shown below (machining program example 1). (Processing program example 1) ⁇ ⁇ M300 G0X # 502 G0Y # 702 G0Z [# 602- # 100] ⁇ ⁇
- step S104 the control device 50 holds the interlock confirmation process started in step S102. That is, the control device 50 holds the program executed in the machining program in the interlock confirmation processing M code. As a result, the control device 50 can perform the interlock confirmation process before the start of the next X-axis movement process performed in the machining program.
- the control device 50 uses the current position and the next command value of the own robot, and the current position and the destination position of the partner robot before the own robot executes the X-axis movement control. , Judge whether the X-axis movement of the own robot is possible (interlock confirmation processing).
- the own robot is the first robot 40a in the first robot control system and the second robot 40b in the second robot control system.
- the partner robot is the second robot 40b in the first robot control system and the first robot 40a in the second robot control system.
- step S106 the control device 50 issues a movement control instruction to the own robot 40a immediately after the current position (own robot current position) of the own robot 40a at the start time (determination start time) of the interlock confirmation process.
- the next command value of the own robot which is an instruction value related to the above and indicates the position of the movement destination of the own robot 40a, is determined whether the robot is located closer to the entrance side or the exit side.
- the determination start time point is the time point when the determination of whether or not the own robot 40a can start traveling (movement along the X axis) is started.
- the movement control instruction is a next command which is a control instruction (control command) issued after the command for starting the interlock confirmation process.
- the entrance side is the side on which the work W is carried in the machine tool 10, and is the left side in the present embodiment.
- the outlet side is the side where the work W is carried out in the machine tool 10, and is the right side in the present embodiment.
- FIG. 5 shows a case where the current position of the own robot is located on the exit side (right side) of the next command value of the own robot.
- the current position of the own robot > the next command value of the own robot ( Current position of own robot-next command value of own robot> 0).
- the current position of the own robot ⁇ the next command value of the own robot (current position of the own robot-the next command value of the own robot ⁇ 0).
- the difference between the current position of the own robot and the next command value of the own robot is the second predetermined value. It is possible to determine whether the current position of the own robot is located on the exit side or the entrance side of the next command value of the own robot based on whether or not it is larger than 0.
- the second predetermined value may be set to a value other than 0 (zero). In this case, the second predetermined value may be set in consideration of the accessible distance between the own robot 40a and the partner robot 40b. Further, being located on the exit side means that the own robot is moved toward the entrance side and is moved in a direction away from the other robot. Being located on the entrance side means that the own robot is moving toward the exit side, and that it is moving in a direction approaching the other robot.
- step S106 determines that the own robot 40a is being moved toward the inlet side. To determine "YES"
- step S116 the control device 50 cancels the interlock confirmation process held in step S104.
- step S104 the control device 50 can execute the next movement control instruction (next movement control instruction) of the own robot 40a.
- the control device 50 ends this flowchart after the process of step S116 is completed.
- the control device 50 determines that the own robot 40a is being moved toward the exit side (step S106). (Determined as" NO "), and the program proceeds to step S108.
- step S108 the control device 50 determines whether or not to preferentially perform the movement possibility determination (interlock confirmation process) of the own robot 40a with respect to the partner robot 40b (movability determination priority determination).
- the control device 50 can stand by without performing the mobility determination of the own robot 40a.
- the control device 50 performs a moveability determination priority determination depending on whether or not the own robot 40a is located closer to the entrance side than the partner robot 40b.
- the control device 50 determines that the movement possibility determination of the own robot is prioritized (the movement possibility priority determination of the own robot). (“YES” in step S108), when the own robot 40a is located on the exit side of the partner robot 40b, it is determined that the movement possibility determination of the partner robot is prioritized (movability of the partner robot). Priority determination) is performed (“NO” in step S108).
- the control device 50 continues or stops the determination of whether or not the own robot 40a can move, depending on whether or not the determination of whether or not the own robot 40a can move has priority over the determination of whether or not the other robot 40b can move. It is determined whether to do it (second determination unit).
- the control device 50 determines whether or not the own robot 40a can move, depending on whether or not the movement control of the own robot 40a (first robot) is prioritized over the movement control of the partner robot 40b (second robot).
- a second determination unit for determining whether to continue or stop the determination) by the first determination unit may be provided.
- the control device 50 determines "YES” in step S108, advances the program to step S110 or later, and moves the own robot 40a. Continue the judgment of approval or disapproval.
- the control device 50 determines "NO" in step S108, and advances the program to step S118 or later. , Further confirm the mobility determination status of the partner robot 40b.
- step S118 the control device 50 acquires control information from the second robot control system and determines whether or not the partner robot 40b is in the wait start scan state.
- the wait start scan state is a scan state for the partner robot 40b to start the interlock confirmation process, that is, a state in which the partner robot 40b has detected (searched) the start of the interlock confirmation process.
- the control information includes the determination result of the start of the interlock confirmation process in each of the robots 40a and 40b.
- the start determination result of the interlock confirmation process is transmitted from one of the robots 40a and 40b to the other.
- Each of the robots 40a and 40b can determine whether or not the partner robot 40b is in the waiting start scan state from the acquired determination result of the start of the interlock confirmation process of the partner.
- the robots 40a and 40b have not acquired the determination result of the start of the interlock confirmation process of the other party, they determine that the other robot is in the waiting start scan state, while the interlock confirmation process of the other party.
- the determination result of the start of is acquired, it is determined that the partner robot is not in the wait start scan state (the wait start scan state has ended).
- step S118 determines "YES” in step S118, and until the partner robot 40b is no longer in the wait start scan state (until the wait start scan state ends). ) The process of step S118 is repeatedly executed. If the partner robot 40b is not in the wait start scan state (when the wait start scan state ends), the control device 50 determines "NO" in step S118, and advances the program to step S120.
- step S120 the control device 50 acquires control information from the second robot control system, and determines whether or not the entrance side robot (other robot 40b) is "waiting” (described later).
- "Waiting” is a state in which both robots 40a and 40b may come into contact with each other when the own robot 40a and / or the partner robot 40b executes the next movement control instruction.
- "waiting" means that the target robot (here, the partner robot 40b on the entrance side) is in the interlock confirmation process and is waiting for the execution of the movement control after the interlock confirmation process.
- the control information includes a determination result (movement OK, movement NG (waiting), etc.) in the interlock confirmation process of the entrance side robot (other robot 40b) in each of the robots 40a and 40b.
- step S120 the control device 50 determines that the entrance side robot (other robot 40b) is not “waiting” (step S120). (Determined as” NO "), the program proceeds to step S110, and the interlock confirmation process of the own robot 40a is restarted.
- the partner robot 40b and the own robot 40a do not contact (interfere) with each other even if the movement control is performed by the next movement control instruction
- the partner robot 40b Is moved and controlled according to the next movement control instruction
- the own robot 40a is moved and controlled according to the next movement control instruction after restarting the interlock confirmation process and releasing the holding of the interlock confirmation process.
- FIG. 6 shows a case where the partner robot 40b and the own robot 40a do not contact (interfere) even if the movement control is performed by the next movement control instruction.
- the other robot 40b moves (or stops) in the + side direction of the X axis, and the own robot 40a Is a case where If it is located in.
- step S120 the control device 50 determines that the entrance side robot (other robot 40b) is "waiting”. (Determining "YES” in step S120), the program advances to step S122, and the evacuation operation process for retracting the own robot 40a is performed.
- the partner robot 40b moves from the current position in the X-axis + side direction (to the right in FIG. 7), exceeds the current position of the own robot 40a, and becomes the next command value (next move destination).
- the own robot 40a tries to move from the current position in the X-axis-side direction (left direction in FIG. 7) and tries to move beyond the current position of the partner robot 40b to the next command value (next move destination). If the movement control is performed as it is, the partner robot 40b and the own robot 40a come into contact with each other (interference).
- step S120 the interlock confirmation process is interrupted (without performing the process of step S110-116), and the own robot 40a is moved (evacuated) from the current position to a position where it does not contact (interfere) (evacuation position: see FIG. 8) (evacuation position). Step S122) is possible.
- the evacuation position is the next movement destination position of the own robot 40a that does not come into contact with (interfere with) the own robot 40a even if the other robot 40b moves according to the next movement control instruction.
- the control device 50 performs the evacuation operation process of the own robot 40a in step S122.
- the control device 50 performs a block re-search (block re-search) to perform an evacuation operation block.
- a block is a unit that constitutes a machining program, and is divided according to the operation content of the robot.
- the robots 40a and 40b continuously execute a plurality of blocks. Examples of blocks include an entrance block, an M / C block, a cycle stop block, a evasion operation block, and the like.
- the entrance block is a block in which the robots 40a and 40b take the work W to be machined to the work mounting device 60 on the entrance side.
- the M / C block is a block in which the robots 40a and 40b move (approach) to the machined portions 35a and 35b and exchange the machined work W and the unprocessed work W.
- the cycle stop block is a block that returns the robots 40a and 40b to the origin and ends the automatic operation of the robots 40a and 40b.
- the evacuation operation block moves a robot (own robot 40a) that is not on the priority control side (non-priority control) to an evacuation position that does not come into contact with the partner robot 40b when the robots 40a and 40b may contact (interfere). It is a block to make.
- Block re-search is to forcibly perform a block search in the middle of a block, not at the end of the block.
- the block re-search interrupts the currently executing block immediately after the search is completed, and executes the searched block. For example, if an abnormality occurs in the M / C during the M / C block, the cycle stop block is searched when the block re-search is executed. As a result, the M / C block is interrupted and the cycle stop block is started.
- Block search is to determine (search) the block to be executed next when the block is completed. After the search is completed, the searched block is executed. For example, when the block search is performed after the end of the input block, the M / C block is searched when the robots 40a and 40b have the raw work W. Then, the M / C block is started.
- step S122 the control device 50 calculates (calculates) the retracted position from the next command value of the partner robot 40b acquired earlier in the retracting operation block, and then controls the traveling drive device 41c (servo motor 41c1). Move the own robot 40a to the shelter position.
- the control device 50 temporarily terminates the program after the processing of step S122.
- the control device 50 can determine whether or not the own robot can move according to the movement control instruction from the first difference between the own robot next command value and the destination robot movement destination position (first determination). Department).
- the own robot next command value is an instruction value related to the movement control instruction issued to the own robot 40a immediately after the determination start time, and indicates the position of the movement destination of the own robot 40a, as in the process of step S106.
- the destination robot move destination position is a value related to the movement control instruction executed by the partner robot 40b at the start of the interlock confirmation process, and indicates the destination position of the partner robot 40b. Is.
- the destination robot movement destination position is the movement destination of the partner robot 40b currently moving, and the movement destination is acquired from the second robot control system. Further, the partner robot's next command value (the partner's robot's next move destination) may be adopted as the partner robot's move destination position.
- the first difference is the difference between the destination robot movement destination position and the own robot next command value, which is the other robot movement destination position-the own robot next command value (the other robot movement destination position own robot next command value difference).
- FIG. 9 shows a case where the destination robot movement destination position is located on the right side (exit side) of the own robot next command value.
- the own robot 40a overtakes (catch up) the other robot 40b, and the own robot 40a is the other robot. It does not come into contact with 40b.
- the destination position of the other robot ⁇ the next command value of the own robot (the position of the destination of the other robot-the next command value of the own robot). It becomes ⁇ 0).
- the own robot 40a may overtake (catch up) the other robot 40b, and the own robot 40a may overtake (catch up) the other robot 40a. It will come into contact with 40b.
- the difference between the other robot's move destination position-the own robot's next command value, the difference between the other robot's move destination position and the own robot's next command value is the first. 1 Whether the destination robot's destination position is located on the exit side or the entrance side of the own robot's next command value based on whether or not it is larger than the predetermined value (whether or not the own robot 40a contacts the other robot 40b). ) Can be determined.
- the first predetermined value is a value larger than 0 (zero) and smaller than a distance (accessible distance) at which both robots 40a and 40b that are approaching can stop with a margin so that they do not come into contact with each other even if they are close to each other. It is preferably set to. In the present embodiment, the first predetermined value is set to the approachable distance.
- the control device 50 When the first difference (the position where the other robot moves-the next command value of the own robot) is larger than the first predetermined value (accessible distance), the control device 50 has no possibility that the own robot 40a overtakes the other robot 40b. , It is determined that the possibility that the own robot 40a comes into contact with the partner robot 40b is low (determined as "YES" in step S110), and the program proceeds to step S112.
- the own robot 40a may overtake the other robot 40b. It is determined that the own robot 40a comes into contact with the partner robot 40b (determined as "NO" in step S110), and the determination process of step S110 is repeatedly executed until the first difference becomes larger than the approachable distance.
- the robot control system on the other side is also controlled in the same manner as the robot control system on the other side, and if the movement control of the robot on the other side is preferentially executed, the robot on the other side Is moved, so the first difference may be larger than the approachable distance.
- the control device 50 can determine whether or not the own robot can move according to the movement control instruction from the third difference between the next command value of the own robot and the current position of the partner robot (first determination unit). ).
- the own robot next command value is an instruction value related to the movement control instruction issued to the own robot 40a immediately after the determination start time, and indicates the position of the movement destination of the own robot 40a, as in the process of step S106.
- the current position of the partner robot is the current position of the partner robot 40b at the time when the interlock confirmation process is started. At this time, as the current position, the actual coordinates indicating the actual position detected by the above-mentioned position sensor are used.
- the actual coordinates include the amount of delay that occurs with respect to the servo command.
- a position indicating a command value corresponding to the servo command may be used.
- the current position of the partner robot is acquired from the second robot control system.
- the third difference is the difference between the current position of the other robot and the next command value of the own robot, which is the current position of the other robot-the next command value of the own robot (difference between the current position of the other robot and the next command value of the own robot).
- FIG. 9-12 shows a case where the current position of the partner robot is located on the right side (exit side) of the next command value of the own robot.
- the current position of the other robot> the next command value of the own robot current position of the other robot-the next command value of the own robot> 0.
- the own robot 40a overtakes (catch up) the other robot 40b, and the own robot 40a is the other robot 40b.
- the own robot 40a is the other robot 40b.
- the current position of the other robot when the current position of the other robot is located on the left side (entrance side) of the next command value of the own robot, the current position of the other robot ⁇ the next command value of the own robot (current position of the other robot). -The next command value of the own robot ⁇ 0). If the current position of the other robot is located on the left side (entrance side) of the next command value of the own robot, the own robot 40a may overtake (catch up) the other robot 40b, and the own robot 40a comes into contact with the other robot 40b. It will be.
- the difference between the current position of the other robot and the next command value of the own robot which is the current position of the other robot-the next command value of the own robot (the difference between the current position of the other robot and the next command value of the own robot: the third difference), is the third predetermined value. Based on whether it is larger or not, it is determined whether the current position of the other robot is located on the exit side or the entrance side of the next command value of the own robot (whether the own robot 40a contacts the other robot 40b). It becomes possible.
- the third predetermined value is a value larger than 0 (zero) like the first predetermined value, and is a distance at which both robots 40a and 40b that are close to each other can stop with a margin so that they do not come into contact with each other even if they are close to each other. It is preferable to set it to a value smaller than (accessible distance). In the present embodiment, the third predetermined value is set to the approachable distance.
- step S116 the control device 50 cancels the interlock confirmation process held in step S104. As a result, the interlock confirmation process is completed, and the control device 50 can execute the next movement control instruction (next movement control instruction) of the own robot 40a.
- the control device 50 ends this flowchart after the process of step S116 is completed.
- the control device 50 may overtake the partner robot 40b. Yes, it is determined that the own robot 40a may come into contact with the partner robot 40b (determined as "NO" in step S112), and the program proceeds to step S114.
- the control device 50 may determine whether or not the own robot can move according to the movement control instruction from the fourth difference between the current position of the partner robot and the current position of the own robot at the start of the interlock confirmation process. It becomes possible (first determination unit).
- the current position of the partner robot is the current position of the partner robot 40b at the time when the interlock confirmation process is started.
- the current position of the own robot is the current position of the own robot 40a at the time when the interlock confirmation process is started.
- the current position of the partner robot is acquired from the second robot control system. At this time, it is preferable that the actual position (described above) indicating the actual position detected by the position sensor described above is used as the current position of the partner robot.
- the movement destination position which is a command value corresponding to the servo command
- the fourth difference is the difference between the current position of the other robot and the current position of the own robot (difference between the current position of the other robot and the current position of the own robot), which is the current position of the other robot-the current position of the own robot.
- FIG. 16 shows a case where the current position of the partner robot is located on the right side (exit side) of the current position of the own robot.
- the current position of the other robot > the current position of the own robot (the current position of the other robot-the current position of the own robot> 0).
- the difference between the current position of the other robot and the current position of the own robot (the current position of the other robot: the difference in the current position of the own robot: the fourth difference), which is the current position of the other robot and the current position of the own robot, is larger than the fourth predetermined value. It is possible to determine whether or not the own robot 40a can follow the other robot 40b based on the above. In other words, it is possible to determine whether or not the partner robot 40b is overtaken by the own robot 40a by the time the partner robot 40b reaches the destination position of the partner robot.
- the fourth predetermined value is the distance at which the own robot 40a can follow the partner robot 40b (the followable distance: or the own robot 40a overtakes the partner robot 40b by the time the partner robot 40b reaches the destination position of the partner robot. It is preferable to set it to a value larger than (distance that can catch up).
- the followable distance can be calculated from the speed of the own robot 40a, the current position, the speed of the partner robot 40b, and the current position. In the present embodiment, the fourth predetermined value is set as the followable distance.
- step S116 the control device 50 cancels the interlock confirmation process held in step S104. As a result, the interlock confirmation process is completed, and the control device 50 can execute the next movement control instruction (next movement control instruction) of the own robot 40a.
- the control device 50 ends this flowchart after the process of step S116 is completed.
- the control device 50 cannot follow the other robot 40b (the own robot 40a). It is determined that the own robot 40a catches up with and contacts the other robot 40b) (determines "NO" in step S114), and the determination process of steps S110-S114 is performed until the fourth difference becomes larger than the followable distance. Execute repeatedly. At this time, the robot control system on the other side is also controlled in the same manner as the robot control system on the other side, and if the movement control of the robot on the other side is preferentially executed, the robot on the other side Is moved, so the fourth difference may be larger than the followable distance.
- Case 1 When the own robot moves in the-side direction from the current position and the other robot stops or moves in the + side direction from the current position) Further, the operation will be described separately for each case. First, Case 1 will be described. Case 1 is a case where the own robot 40a is located on the entrance side and the partner robot 40b is located on the exit side as shown in FIG. 5, and the partner robot 40b is stopped (or the + side of the X axis). (Move in the direction), and the robot 40a moves in the-side direction of the X-axis. That is, the case 1 is a case where the own robot 40a located on the entrance side moves away from the partner robot 40b.
- the entrance side is the side on which the work W is carried in the machine tool 10, and is the left side in the present embodiment.
- the outlet side is the side where the work W is carried out in the machine tool 10, and is the right side in the present embodiment.
- the direction of the arrow indicates the moving direction of the robots 40a and 40b, and the length indicates the moving amount (moving destination).
- the current position of the own robot at the start time of the interlock confirmation process is a movement control instruction (interlock confirmation process) issued to the own robot 40a immediately after the determination start time. It is an instruction value related to the control instruction (control command) issued next to the start command of the robot 40a, and is on the exit side of the robot next command value indicating the movement destination position of the robot 40a. Therefore, the current position of the own robot> the next command value of the own robot, and the second difference between the current position of the own robot and the next command value of the own robot is larger than 0 (zero), which is the second predetermined value.
- step S106 the control device 50 can determine "YES” and determine that the own robot 40a can be moved by the movement control instruction (movement OK determination).
- Case 2-1 is a case where the own robot 40a is located on the entrance side and the other robot 40b is located on the exit side, as shown in FIG. 9, the other robot 40b is stopped, and the own robot 40a is located. This is a case where the robot moves in the + side direction (toward the partner robot) from the current position, but moves within a range that does not reach the stopped partner robot 40b.
- Cases 2-2 and 2-3 are cases where the own robot 40a is located on the entrance side and the partner robot 40b is located on the exit side, as shown in FIGS.
- the partner robot 40b is X.
- the own robot 40a moves in the + side direction (toward the other robot) from the current position while moving in the + side direction or the-side direction of the axis, the next command value of the own robot is on the left side (toward the other robot's destination position). This is the case when it is located on the entrance side).
- the second difference is that the current position of the own robot ⁇ the next command value of the own robot, and the current position of the own robot-the next command value of the own robot. It is smaller than the second predetermined value. Therefore, since there is a possibility that the own robot 40a and the partner robot 40b collide with each other, the control device 50 determines "NO" in step S106. Further, since the own robot 40a is located on the inlet side, the control device 50 determines "YES" in step S108.
- the first difference is larger than the first predetermined value
- the third difference between the other robot's current position and the own robot's next command value is the third predetermined value (accessible distance). ) Greater. Therefore, since there is no possibility that the own robot 40a and the partner robot 40b collide with each other, the control device 50 determines "YES" in steps S110 and 112, respectively, and the own robot 40a can be moved by the movement control instruction. It is possible to determine that there is (movement OK determination).
- Case 2-4 When the own robot moves in the + side direction of the X axis (toward the other robot) from the current position, but moves within the range where there is a possibility of contact with the other robot)
- Case 2-4 is a case where the own robot 40a is located on the entrance side and the partner robot 40b is located on the exit side as shown in FIG. 12, and the partner robot 40b is located in the-side direction of the X-axis. This is a case where the own robot 40a moves in the + side direction (toward the partner robot) from the current position while moving, and the own robot next command value is located on the right side (exit side) of the partner robot's destination position.
- the second difference which is the current position of the own robot ⁇ the next command value of the own robot, and the current position of the own robot-the next command value of the own robot, is smaller than the second predetermined value. .. Therefore, since there is a possibility that the own robot 40a and the partner robot 40b collide with each other, the control device 50 determines "NO" in step S106. Further, since the own robot 40a is located on the entrance side, the control device 50 determines "YES" in step S108.
- the first difference which is the destination robot movement destination position ⁇ the own robot next command value, and the other robot movement destination position-the own robot next command value, is the first. Less than the specified value. Therefore, since there is a possibility that the own robot 40a and the partner robot 40b collide with each other, the control device 50 determines "NO" in step S110, and determines that the own robot 40a cannot be moved by the movement control instruction ( It is possible to make a move NG (waiting) judgment).
- Case 3-1 is a case where the own robot 40a is located on the entrance side and the other robot 40b is located on the exit side, as shown in FIG. 13, the other robot 40b is stopped, and the own robot 40a is located. This is a case where the robot moves in the + side direction (toward the other robot) from the current position, and the next command value of the own robot is located on the right side (exit side) of the stopped partner robot 40b (the position where the partner robot moves). ..
- Cases 3-2 and 3-3 are cases where the own robot 40a is located on the entrance side and the partner robot 40b is located on the exit side, as shown in FIGS. 14 and 15, and the partner robot 40b is X. While moving in the + side or-side direction of the axis, the own robot 40a moves in the + side direction (toward the other robot) from the current position, and the next command value of the own robot is on the right side (exit) from the destination robot movement destination position. If it is located on the side).
- the second difference in which the current position of the own robot ⁇ the next command value of the own robot and the current position of the own robot-the next command value of the own robot is It is smaller than the second predetermined value. Therefore, since there is a possibility that the own robot 40a and the partner robot 40b collide with each other, the control device 50 determines "NO" in step S106. Further, since the own robot 40a is located on the entrance side, the control device 50 determines "YES" in step S108.
- the first difference is smaller than the first predetermined value. Therefore, since there is a possibility that the own robot 40a and the partner robot 40b collide with each other, the control device 50 determines "NO" in step S110, and determines that the own robot 40a cannot be moved by the movement control instruction ( It is possible to make a move NG (waiting) determination).
- Case 3-4 The own robot moves in the + side direction of the X axis (toward the partner robot) from the current position, and the partner robot moves in the + side direction of the X axis from the current position, but both robots do not touch.
- Case 3-4 is a case where the own robot 40a is located on the entrance side and the partner robot 40b is located on the exit side as shown in FIG. 16, and the partner robot 40b is located in the + side direction of the X axis.
- the own robot 40a also moves in the + side direction (toward the partner robot) from the current position, and the own robot next command value is located on the left side (entrance side) of the partner robot's destination position.
- the second difference which is the current position of the own robot ⁇ the next command value of the own robot, and the current position of the own robot-the next command value of the own robot, is smaller than the second predetermined value. .. Therefore, since there is a possibility that the own robot 40a and the partner robot 40b collide with each other, the control device 50 determines "NO" in step S106. Further, since the own robot 40a is located on the inlet side, the control device 50 determines "YES" in step S108.
- the first difference which is the destination robot movement destination position> the own robot next command value, and the other robot movement destination position-the own robot next command value, is the first.
- the third difference which is larger than the predetermined value and the other robot's current position ⁇ the own robot's next command value, and the other robot's current position-the own robot's next command value, is smaller than the third predetermined value (accessible distance), and
- the fourth difference between the current position of the opponent robot and the current position of the own robot is larger than the fourth predetermined value (followable distance).
- control device 50 determines "YES”, “NO”, and "YES” in steps S110, 112, and 114, respectively, and controls the movement. It is possible to determine that the own robot 40a can be moved according to the instruction (movement OK determination).
- the work processing apparatus (machine tool 10) according to the above-described embodiment has two work transfer robots capable of traveling the same guide portion (running table) 41b and carrying the work W into and out of the processing portions 35a and 35b. It is a work processing device including 40a and 40b and a control device 50 for performing movement control of the work transfer robots 40a and 40b. Of the two work transfer robots 40a and 40b, one is the first robot 40a and the other is the second robot 40b.
- the control device 50 is an instruction value related to a movement control instruction issued to the first robot 40a immediately after the time when the first robot 40a starts determining whether or not the traveling can be started, and is an instruction value of the first robot 40a.
- the first robot next instruction value (own robot next command value) indicating the movement destination position, and the value related to the movement control instruction executed by the second robot 40b at the time when the determination is started, and the second robot 40b. From the first difference from the second robot movement destination position (other robot movement destination position) indicating the movement destination position of the robot, it is determined whether or not the first robot 40a can be moved by the movement control instruction (first determination unit: step S110). ).
- the movement destination position (the partner robot movement destination position) of the second robot 40b according to the movement control instruction carried out at that time and the movement destination position are carried out at that time.
- the movement destination position (self-robot next command value) of the first robot 40a by the movement control instruction (movement control instruction that will be executed at the fastest (shortest) at that time) that is executed next to the movement control instruction that is being performed By using the first difference of the above, it becomes possible to more accurately and accurately determine whether or not the first robot 40a can move. Then, based on this determination result, it becomes possible to appropriately carry out the movement control of the first robot 40a, and as a result, it is possible to further suppress the collision between the robots 40a and 40b installed on the same guide portion 41b. can.
- control device 50 (first determination unit) has a first robot next instruction value (own robot next command value) and a current position of the first robot 40a (own robot current position) at the time when the determination is started. Further taking into account the second difference, it is determined whether or not the first robot 40a can be moved by the movement control instruction (step S106). According to this, by using the second difference between the first robot next instruction value and the current position of the first robot 40a at the time when the determination is started, the first robot 40a according to the movement control instruction can be used. It is possible to determine whether or not the robot can move. Therefore, since it is possible to more accurately and accurately determine whether or not the first robot 40a can move, it is possible to further suppress collisions between the robots 40a and 40b installed on the same guide portion 41b.
- control device 50 (first determination unit) has a first robot next instruction value (own robot next command value) and a current position of the second robot 40b (current position of the partner robot) at the time when the determination is started. Further taking into account the third difference, it is determined whether or not the first robot 40a can move according to the movement control instruction (step S112). According to this, by using the third difference between the first robot next instruction value and the current position of the second robot 40b at the time when the determination is started, the first robot 40a according to the movement control instruction can be used. It is possible to determine whether or not the robot can move. Therefore, since it is possible to more accurately and accurately determine whether or not the first robot 40a can move, it is possible to further suppress collisions between the robots 40a and 40b installed on the same guide portion 41b.
- control device 50 (first determination unit) has a current position of the first robot 40a (current position of the own robot) at the time when the determination is started and a current position of the second robot 40b at the time when the determination is started. Further considering the fourth difference from (the current position of the partner robot), it is determined whether or not the first robot 40a can move according to the movement control instruction (step S114). According to this, the fourth difference between the current position of the first robot 40a at the time when the determination is started and the current position of the second robot 40b at the time when the determination is started is also used. It is possible to determine whether or not the first robot 40a can move according to the movement control instruction. Therefore, since it is possible to more accurately and accurately determine whether or not the first robot 40a can move, it is possible to further suppress collisions between the robots 40a and 40b installed on the same guide portion 41b.
- the control device 50 continues or stops the determination by the first determination unit depending on whether the determination of the mobility of the first robot 40a has priority over the determination of the mobility of the second robot 40b.
- a second determination unit (step S108) for determining whether to do so is provided. According to this, it is appropriately determined whether to continue or stop the determination by the first determination unit according to the priority of the determination of the mobility of the first robot 40a and the determination of the mobility of the second robot 40b. It becomes possible to do. Therefore, since it is possible to more accurately and accurately determine whether or not the first robot 40a can move, it is possible to further suppress collisions between the robots 40a and 40b installed on the same guide portion 41b.
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
Description
以下、ワーク加工装置が適用された工作機械の一例である一実施形態について説明する。以下の各図において、XYZ座標系を用いて図中の方向を説明する。このXYZ座標系においては、水平面に平行な平面をXZ平面とする。このXZ平面において、後述する工作機械10の主軸20a,20bの軸線方向をZ軸方向と表記し、Z軸方向に直交する方向をX軸方向と表記する。また、XZ平面に垂直な方向はY軸方向と表記する。
ロボット40a及び40bは、同一走行台の走行がそれぞれ可能であり、かつワークWを主軸20a,20bやワーク載置装置60に搬入出可能である。ワーク載置装置60は、ワークWを載置可能な装置であり、例えば、工作機械10に搬入されるワークWを載置面に載置するワーク搬入装置、工作機械10から搬出されるワークWを載置面に載置するワーク搬出装置、工作機械10から搬出されたワークWの姿勢を反転させたりシフトさせたりする反転・シフト装置などがある。
図1に示すように、走行部41は、走行部スライダ41a(X軸スライダと称してもよい。)と、走行部スライダ41aをガイドして走行させる走行台であるガイド部41bと、走行部スライダ41aを走行駆動させるための走行駆動装置41c(図3参照)とを備えている。
主として図2に示すように、把持部42は、Y軸スライダ45aに回転駆動部42bを介して回転可能に連結されている。把持部42は、直交する2つの側面と残りの側面を有する三角柱形状の本体42aを有している。直交する2つの側面のうち一方の側面は、X-Z平面に平行可能な平面であり、ワークWを脱着可能に把持するロボットチャック42cが設けられている。他方の側面は、X-Y平面に平行な平面であり、ワークWを脱着可能に把持するロボットチャック42dが設けられている。
把持部移動部43は、把持部42を走行部スライダ41aに対して図2にて左右方向(Z軸方向)及び上下方向(Y軸方向)に沿って相対移動させるものである。把持部移動部43は、把持部42をZ軸方向に沿って移動させるZ軸駆動部44と、把持部42をY軸方向に沿って移動させるY軸駆動部45とを有している。
Z軸駆動部44は、走行部スライダ41aに対して摺動可能に取り付けられたZ軸スライダ44aをZ軸方向に沿って移動させる。主として図2に示すように、Z軸駆動部44は、Z軸スライダ44aと、Z軸スライダ44aをガイドして移動させるZ軸ガイド部44bと、Z軸スライダ44aを移動駆動させるためのZ軸駆動装置44c(図3参照)とを備えている。
Y軸駆動部45は、Z軸スライダ44aに対して摺動可能に取り付けられたY軸スライダ45a(把持部42が支持されている)をY軸方向に沿って移動させる。主として図2に示すように、Y軸駆動部45は、Y軸スライダ45aと、Y軸スライダ45aをガイドして移動させるY軸ガイド部45bと、Y軸スライダ45aを移動駆動させるためのY軸駆動装置45c(図3参照)とを備えている。
制御装置50は、主軸20a,20b、工具台30a,30b、ロボット40a,40bを駆動制御する制御装置である。特に、制御装置50は、ロボット40a,40bの移動制御を実施する。制御装置50は、図3に示すように、入力装置50a、表示装置50b、記憶装置50c、位置センサ41c2,44c2,45c2,42f2及びサーボモータ41c1,44c1,45c1,42f1に接続されている。入力装置50aは、工作機械10の前面に設けられており、作業者が各種設定、各種指示などを制御装置50に入力するためのものである。表示装置50bは、工作機械10の前面に設けられており、作業者に対して運転状況やメンテナンス状況などの情報を表示するためのものである。記憶装置50cは、工作機械10の制御に係るデータ、例えば、制御プログラム(加工プログラム)、制御プログラムで使用するパラメータ、各種設定や各種指示に関するデータ、負荷データ(加工データ)、第1及び第2ロボット制御系からの制御情報などを記憶している。制御装置50は、マイクロコンピュータ(不図示)を有しており、マイクロコンピュータは、バスを介してそれぞれ接続された入出力インターフェース、CPU、RAMおよびROM(いずれも不図示)を備えている。CPUは、各種プログラムを実施して、入力装置50a、記憶装置50c及び位置センサ41c2,44c2,45c2,42f2からデータ、検出信号、制御情報などを取得したり、表示装置50b及びサーボモータ41c1,44c1,45c1,42f1を制御したりする。RAMは同プログラムの実施に必要な変数を一時的に記憶するものであり、ROMは前記プログラムを記憶するものである。
さらに、上述した工作機械10(ワーク加工装置)によるロボット40aの走行制御について図4に示すフローチャートに沿って説明する。制御装置50は、本フローチャートに沿った処理を実施する。制御装置50は、第1ロボット40aを制御する制御系である第1ロボット制御系と、第2ロボット40bを制御する制御系である第2ロボット制御系を有しており、各ロボット40a,40bをそれぞれ独立に制御することが可能となっている。すなわち、第1ロボット制御系においても、第2ロボット制御系においても、本フローチャートに沿った処理を実施する。本実施形態においては、第1ロボット制御系において実施されている第1ロボット40aの走行制御(インターロック確認処理を含む。)について説明する。
(加工プログラム例1)
・
・
M300
G0X#502
G0Y#702
G0Z[#602-#100]
・
・
制御装置50は、ステップS108において、相手ロボット40bに対して優先的に自ロボット40aの移動可否判定(インターロック確認処理)を実施してよいか否かを判定する(移動可否判定優先判定)。制御装置50は、相手ロボット40bの移動可否判定が優先される場合には、自ロボット40aの移動可否判定を実施しないで待機することが可能となる。具体的には、ステップS108において、制御装置50は、自ロボット40aが相手ロボット40bよりも入口側に位置しているか否かに応じて移動可否判定優先判定を実施する。制御装置50は、自ロボット40aが相手ロボット40bよりも入口側に位置している場合には、自ロボットの移動可否判定を優先して実施する旨の判定(自ロボット移動可否優先判定)をし(ステップS108にて「YES」)、自ロボット40aが相手ロボット40bよりも出口側に位置している場合には、相手ロボットの移動可否判定を優先して実施する旨の判定(相手ロボット移動可否優先判定)をする(ステップS108にて「NO」)。
さらに、各ケースに分けて作動を説明する。最初にケース1について説明する。ケース1は、図5に示すように、自ロボット40aが入口側に位置し、相手ロボット40bが出口側に位置している場合であって、相手ロボット40bが停止し(またはX軸の+側方向に移動し)、自ロボット40aがX軸の-側方向に移動する場合である。すなわち、ケース1は、入口側に位置する自ロボット40aが相手ロボット40bから遠ざかる場合である。入口側とは、工作機械10においてワークWが搬入される側であり、本実施形態では左側である。出口側とは、工作機械10においてワークWが搬出される側であり、本実施形態では右側である。尚、図5において、矢印の方向はロボット40a,40bの移動方向を示し、長さは移動量(移動先)を示している。
ケース2-1は、図9に示すように、自ロボット40aが入口側に位置し、相手ロボット40bが出口側に位置している場合であって、相手ロボット40bが停止し、自ロボット40aが現在位置より+側方向(相手ロボットに向けて)に移動するものの、停止している相手ロボット40bに到達しない範囲で移動する場合である。ケース2-2,2-3は、図10,11に示すように、自ロボット40aが入口側に位置し、相手ロボット40bが出口側に位置している場合であって、相手ロボット40bはX軸の+側方向または-側方向に移動するとともに、自ロボット40aが現在位置より+側方向(相手ロボットに向けて)に移動するものの、自ロボット次指令値が相手ロボット移動先位置より左側(入口側)に位置する場合である。
ケース2-4は、図12に示すように、自ロボット40aが入口側に位置し、相手ロボット40bが出口側に位置している場合であって、相手ロボット40bはX軸の-側方向に移動するとともに、自ロボット40aが現在位置より+側方向(相手ロボットに向けて)に移動し、自ロボット次指令値が相手ロボット移動先位置より右側(出口側)に位置する場合である。
ケース3-1は、図13に示すように、自ロボット40aが入口側に位置し、相手ロボット40bが出口側に位置している場合であって、相手ロボット40bが停止し、自ロボット40aが現在位置より+側方向(相手ロボットに向けて)に移動し、自ロボット次指令値が、停止している相手ロボット40b(相手ロボット移動先位置)より右側(出口側)に位置する場合である。ケース3-2,3-3は、図14,15に示すように、自ロボット40aが入口側に位置し、相手ロボット40bが出口側に位置している場合であって、相手ロボット40bはX軸の+側方向または-側方向に移動するとともに、自ロボット40aが現在位置より+側方向(相手ロボットに向けて)に移動し、自ロボット次指令値が相手ロボット移動先位置より右側(出口側)に位置する場合である。
ケース3-4は、図16に示すように、自ロボット40aが入口側に位置し、相手ロボット40bが出口側に位置している場合であって、相手ロボット40bはX軸の+側方向に移動するとともに、自ロボット40aも現在位置より+側方向(相手ロボットに向けて)に移動し、自ロボット次指令値が相手ロボット移動先位置より左側(入口側)に位置する場合である。
上述した実施形態によるワーク加工装置(工作機械10)は、同一ガイド部(走行台)41bの走行が可能でありかつワークWを加工部35a,35bに搬入出可能である2台のワーク搬送ロボット40a,40bと、ワーク搬送ロボット40a,40bの移動制御を実施する制御装置50と、を備えたワーク加工装置である。2台のワーク搬送ロボット40a,40bのうち一方を第1ロボット40aとし、他方を第2ロボット40bとする。制御装置50は、第1ロボット40aが前記走行の開始をできるか否かの判定を開始した時点の直後に第1ロボット40aに出される移動制御指示に係る指示値でありかつ第1ロボット40aの移動先位置を示す第1ロボット次指示値(自ロボット次指令値)と、前記判定を開始した時点に第2ロボット40bにて実行されている移動制御指示に係る値でありかつ第2ロボット40bの移動先位置を示す第2ロボット移動先位置(相手ロボット移動先位置)との第1差分から、前記移動制御指示による第1ロボット40aの移動可否の判定をする(第1判定部:ステップS110)。
これによれば、第1ロボット次指示値と、前記判定を開始した時点における第1ロボット40aの現在位置との第2差分も加えて使用することにより、前記移動制御指示による第1ロボット40aの移動可否の判定をすることが可能となる。よって、第1ロボット40aの移動可否をより的確かつ正確に判定することが可能となるため、同じガイド部41b上に設置されたロボット同士40a,40bの衝突をより抑制することができる。
これによれば、第1ロボット次指示値と、前記判定を開始した時点における第2ロボット40bの現在位置との第3差分も加えて使用することにより、前記移動制御指示による第1ロボット40aの移動可否の判定をすることが可能となる。よって、第1ロボット40aの移動可否をより的確かつ正確に判定することが可能となるため、同じガイド部41b上に設置されたロボット同士40a,40bの衝突をより抑制することができる。
これによれば、前記判定を開始した時点における前記第1ロボット40aの現在位置と、前記判定を開始した時点における前記第2ロボット40bの現在位置との第4差分も加えて使用することにより、前記移動制御指示による第1ロボット40aの移動可否の判定をすることが可能となる。よって、第1ロボット40aの移動可否をより的確かつ正確に判定することが可能となるため、同じガイド部41b上に設置されたロボット同士40a,40bの衝突をより抑制することができる。
これによれば、第1ロボット40aの移動可否の判定と第2ロボット40bの移動可否の判定の優先有無に応じて、前記第1判定部による前記判定を継続するか停止するかを適切に判定することが可能となる。よって、第1ロボット40aの移動可否をより的確かつ正確に判定することが可能となるため、同じガイド部41b上に設置されたロボット同士40a,40bの衝突をより抑制することができる。
Claims (5)
- 同一走行台の走行が可能でありかつワークを加工部に搬入出可能である2台のワーク搬送ロボットと、前記ワーク搬送ロボットの移動制御を実施する制御装置と、を備えたワーク加工装置であって、
前記2台のワーク搬送ロボットのうち一方を第1ロボットとし、他方を第2ロボットとし、
前記制御装置は、前記第1ロボットが前記走行の開始をできるか否かの判定を開始した時点の直後に前記第1ロボットに出される移動制御指示に係る指示値でありかつ前記第1ロボットの移動先位置を示す第1ロボット次指示値と、前記判定を開始した時点に前記第2ロボットにて実行されている移動制御指示に係る値でありかつ前記第2ロボットの移動先位置を示す第2ロボット移動先位置との第1差分から、前記移動制御指示による前記第1ロボットの移動可否の判定をする第1判定部を備えたワーク加工装置。 - 前記第1判定部は、前記第1ロボット次指示値と、前記判定を開始した時点における前記第1ロボットの現在位置との第2差分をさらに加味して、前記移動制御指示による前記第1ロボットの移動可否の判定をする請求項1に記載のワーク加工装置。
- 前記第1判定部は、前記第1ロボット次指示値と、前記判定を開始した時点における前記第2ロボットの現在位置との第3差分をさらに加味して、前記移動制御指示による前記第1ロボットの移動可否の判定をする請求項1に記載のワーク加工装置。
- 前記第1判定部は、前記判定を開始した時点における前記第1ロボットの現在位置と、前記判定を開始した時点における前記第2ロボットの現在位置との第4差分をさらに加味して、前記移動制御指示による前記第1ロボットの移動可否の判定をする請求項3に記載のワーク加工装置。
- 前記制御装置は、前記第1ロボットの前記移動可否の判定が前記第2ロボットの前記移動可否の判定より優先されるか否かに応じて、前記第1判定部による前記判定を継続するか停止するかを判定する第2判定部を備えた請求項1に記載のワーク加工装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE112020007849.3T DE112020007849T5 (de) | 2020-12-18 | 2020-12-18 | Werkstück-Verarbeitungsvorrichtung |
JP2022569654A JPWO2022130608A1 (ja) | 2020-12-18 | 2020-12-18 | |
US18/249,399 US20230381968A1 (en) | 2020-12-18 | 2020-12-18 | Workpiece processing apparatus |
PCT/JP2020/047382 WO2022130608A1 (ja) | 2020-12-18 | 2020-12-18 | ワーク加工装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2020/047382 WO2022130608A1 (ja) | 2020-12-18 | 2020-12-18 | ワーク加工装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022130608A1 true WO2022130608A1 (ja) | 2022-06-23 |
Family
ID=82059314
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2020/047382 WO2022130608A1 (ja) | 2020-12-18 | 2020-12-18 | ワーク加工装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230381968A1 (ja) |
JP (1) | JPWO2022130608A1 (ja) |
DE (1) | DE112020007849T5 (ja) |
WO (1) | WO2022130608A1 (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07271415A (ja) * | 1994-03-30 | 1995-10-20 | Nec Corp | 協調ロボット制御方法 |
JP2019098511A (ja) * | 2017-11-30 | 2019-06-24 | キヤノン株式会社 | 搬送システムおよび物品の製造方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2792443B2 (ja) | 1994-08-22 | 1998-09-03 | 村田機械株式会社 | ローダ装置 |
-
2020
- 2020-12-18 DE DE112020007849.3T patent/DE112020007849T5/de active Pending
- 2020-12-18 WO PCT/JP2020/047382 patent/WO2022130608A1/ja active Application Filing
- 2020-12-18 JP JP2022569654A patent/JPWO2022130608A1/ja active Pending
- 2020-12-18 US US18/249,399 patent/US20230381968A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07271415A (ja) * | 1994-03-30 | 1995-10-20 | Nec Corp | 協調ロボット制御方法 |
JP2019098511A (ja) * | 2017-11-30 | 2019-06-24 | キヤノン株式会社 | 搬送システムおよび物品の製造方法 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2022130608A1 (ja) | 2022-06-23 |
DE112020007849T5 (de) | 2023-11-02 |
US20230381968A1 (en) | 2023-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10632611B2 (en) | Machine tool | |
US10345788B2 (en) | Robot system | |
JP3905075B2 (ja) | 作業プログラム作成装置 | |
US8694160B2 (en) | NC machine tool system | |
CN110303494B (zh) | 机器人加工系统 | |
JP2016203181A (ja) | 曲げ加工装置 | |
WO2014123054A1 (ja) | ロボット制御装置及びロボット制御方法 | |
WO2020090079A1 (ja) | ワーク自動搬送機 | |
WO2022130608A1 (ja) | ワーク加工装置 | |
KR20180043254A (ko) | 공작 기계 | |
JPS5856701A (ja) | 工作機械 | |
US10052762B2 (en) | Method of controlling robot with hand gripping two workpieces and robot control apparatus | |
US10875136B2 (en) | Machine tool system and clamping method | |
CN109789558B (zh) | 工件搬运用末端执行器以及工件搬运装置 | |
JP2000284817A (ja) | 共通経路上の2つの可動体を同時制御する数値制御装置 | |
JP7198568B2 (ja) | 多関節ロボット | |
JP2693023B2 (ja) | 多頭の主軸頭を有する工作機械の送り制御方法 | |
JP7447411B2 (ja) | 制御装置、工作装置、制御方法、搬送制御プログラム | |
WO2022208899A1 (ja) | ワーク加工装置 | |
WO2022190155A1 (ja) | ワーク加工装置 | |
JP7220294B2 (ja) | 多関節ロボット、多関節ロボットの制御方法及び多関節ロボットの制御プログラム | |
JP7328074B2 (ja) | 多関節ロボット | |
JP3099197B2 (ja) | 工作機械におけるワーク受け渡し装置 | |
JP7186276B2 (ja) | 工作機械 | |
CN113910002B (zh) | 双主轴双y轴复合数控机床的加工方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20965995 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2022569654 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 18249399 Country of ref document: US |
|
WWE | Wipo information: entry into national phase |
Ref document number: 112020007849 Country of ref document: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20965995 Country of ref document: EP Kind code of ref document: A1 |