WO2014080652A1 - 把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置 - Google Patents

把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置 Download PDF

Info

Publication number
WO2014080652A1
WO2014080652A1 PCT/JP2013/064699 JP2013064699W WO2014080652A1 WO 2014080652 A1 WO2014080652 A1 WO 2014080652A1 JP 2013064699 W JP2013064699 W JP 2013064699W WO 2014080652 A1 WO2014080652 A1 WO 2014080652A1
Authority
WO
WIPO (PCT)
Prior art keywords
trajectory
obstacle
gripping mechanism
carrying
work
Prior art date
Application number
PCT/JP2013/064699
Other languages
English (en)
French (fr)
Inventor
有史 沖田
大西 浩之
Original Assignee
大日本スクリーン製造株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 大日本スクリーン製造株式会社 filed Critical 大日本スクリーン製造株式会社
Publication of WO2014080652A1 publication Critical patent/WO2014080652A1/ja

Links

Images

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/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40032Peg and hole insertion, mating and joining, remote center compliance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40317For collision avoidance and detection
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40475In presence of moving obstacles, dynamic environment

Definitions

  • the present invention relates to a technology for transporting a workpiece using a gripping mechanism, and more particularly to a technology for generating a trajectory for moving the gripping mechanism for transporting the workpiece.
  • the trajectory of the gripping mechanism can be generated and used for controlling the gripping mechanism by an offline computer or the like, for example.
  • the arrangement of obstacles that are obstacles to the transport of the workpiece changes every time the workpiece is transported.
  • other works existing around the work to be transported can be cited. That is, the surrounding work can be an obstacle to the work to be transported.
  • the placement status of each workpiece in other words, the placement status of the obstacle changes.
  • the present invention has been made in view of the above problems, and in the case where a plurality of workpieces are transported in order, the grip for transporting each workpiece while avoiding a collision with the obstacle while the disposition state of the obstacle changes.
  • An object of the present invention is to provide a technique capable of appropriately calculating the trajectory of the mechanism.
  • the trajectory generating device for a gripping mechanism performs a transporting operation of gripping a transport target work to be transported among a plurality of works at a position before transport and transporting it to a position after transport.
  • Storage means for storing obstacle placement information indicating the placement of a workpiece that becomes an obstacle when the gripping mechanism is executed, and a gripping mechanism that sequentially carries a plurality of workpieces while avoiding a collision with the obstacle
  • the trajectory generation method of the gripping mechanism performs a transporting operation of gripping a transport target work to be transported among a plurality of works at a position before transport and transporting it to a position after transport.
  • the obstacle arrangement information indicating the arrangement of a workpiece that becomes an obstacle when the gripping mechanism is executed
  • the operation of the gripping mechanism that sequentially carries a plurality of workpieces while avoiding a collision with an obstacle is performed.
  • the trajectory simulation for calculating the transport trajectory of the gripping mechanism by simulation is executed while updating the obstacle placement information in accordance with the change in the work placement caused by the transport work.
  • the track generation program of the gripping mechanism performs a transporting operation of gripping a transport target work to be transported among a plurality of works at a position before transporting and transporting it to a post-transport position.
  • Storage means for storing obstacle placement information indicating the placement of a workpiece that becomes an obstacle when the gripping mechanism is executed, and a gripping mechanism that sequentially carries a plurality of workpieces while avoiding collision with the obstacle Trajectory calculation means for executing the trajectory simulation for calculating the transport trajectory of the gripping mechanism by simulating the movement of the object based on the obstacle disposition information while updating the obstacle disposition information according to the change in the work placement caused by the transport operation It is characterized by functioning a computer.
  • the recording medium according to the present invention is characterized in that, in order to achieve the above object, the above-mentioned trajectory generation program for the gripping mechanism is recorded so as to be readable by a computer.
  • a robot program creation device is a robot program creation device that creates a robot program that causes a computer to execute control of a robot that transports a workpiece using a gripping mechanism.
  • Storage means for storing obstacle arrangement information indicating the arrangement of a workpiece that becomes an obstacle when the gripping mechanism performs a conveyance operation of grasping a conveyance object workpiece to be conveyed at a position before conveyance and conveying it to a position after conveyance
  • a trajectory simulation that calculates the transport trajectory of the gripping mechanism by simulating the operation of the gripping mechanism that sequentially performs the transporting operation for a plurality of workpieces while avoiding the collision with the obstacle based on the obstacle arrangement information Executes while updating obstacle placement information according to changes in workpiece placement caused by transportation
  • a trajectory calculation means that, to pass through the conveying track trajectory calculation means has calculated the gripping mechanism, characterized by comprising a program creation means for creating a robot program.
  • a transport target to be transported among a plurality of workpieces A transport track of a gripping mechanism that performs a transport operation of gripping a workpiece at a position before transport and transporting the work to a position after transport is calculated. More specifically, based on the obstacle placement information indicating the placement of the workpiece that becomes an obstacle when carrying the carrying work on the work to be carried, the multiple workpieces are sequentially ordered while avoiding the collision with the obstacle. The operation of the gripping mechanism that performs the transporting operation is simulated, and the transporting trajectory of the gripping mechanism is calculated (trajectory simulation).
  • the trajectory simulation is executed while the obstacle arrangement information is updated according to the change in the arrangement of the work caused by the carrying work, and the carrying trajectory of the gripping mechanism is calculated.
  • the trajectory simulation is executed while the obstacle arrangement information is updated according to the change in the arrangement of the work caused by the carrying work, and the carrying trajectory of the gripping mechanism is calculated.
  • the trajectory calculation means configures the trajectory generator of the gripping mechanism so as to register the post-carrying arrangement of the work carried by the carrying work in the obstacle arrangement information every time the carrying work in the orbit simulation is completed. May be.
  • the transportation track of the gripping mechanism that can accurately avoid the collision with the work after transportation due to the transportation work by accurately reflecting the change in the placement of the work carried by the transportation work in the obstacle placement information. Can be calculated appropriately.
  • the trajectory calculation means sets the trajectory generation device of the gripping mechanism so as to register the arrangement of the workpieces other than the conveyance target work at the position before the conveyance in the obstacle arrangement information before the start of each conveyance operation in the trajectory simulation. It may be configured. With such a configuration, it is possible to appropriately calculate the transporting trajectory of the gripping mechanism that can reliably avoid collision with not only the work after transporting but also the work before transporting.
  • the trajectory calculation means configures the trajectory generation device of the gripping mechanism so as to delete the arrangement of the work to be transported before transport from the obstacle layout information before the start of each transport work in the trajectory simulation. Also good. Thereby, the conveyance trajectory of the gripping mechanism can be calculated while accurately reflecting the arrangement of the workpiece that changes before and after the conveyance by the conveyance operation in the obstacle arrangement information.
  • FIG. 2 is a block diagram schematically showing an electrical configuration for controlling the robot shown in FIG. 1. It is a figure which shows typically the holding
  • FIG. 1 is a perspective view schematically showing an example of a robot that can be controlled based on a robot program created according to the present invention.
  • a computer 3 that controls the robot 2 is shown in addition to the robot 2.
  • FIG. 2 is a block diagram schematically showing an electrical configuration for controlling the robot shown in FIG.
  • xyz orthogonal coordinate axes having the vertical direction as the z-axis direction are shown as appropriate.
  • the robot 2 shown in FIG. 1 is a double-arm robot having a schematic configuration in which two arms 22 are attached to the body portion 21.
  • Each arm 22 is attached via a shoulder joint 23 connected to a drive motor M23. Therefore, the arm 22 can be moved by rotating the shoulder joint 23 with the drive motor M23.
  • a hand 25 is attached to the tip of each arm 22 via a wrist joint 24.
  • a drive motor M24 is connected to the wrist joint 24. Therefore, the direction of the hand 25 can be changed by rotating the wrist joint 24 with the drive motor M24.
  • a drive motor M25 is connected to the hand 25. Therefore, the hand 25 can be opened and closed by the drive motor M25.
  • the operation of the robot 2 is controlled by the computer 3.
  • the computer 3 includes a main control unit 31 composed of a CPU (Central Processing Unit) and a memory.
  • the main control unit 31 controls the drive motors M23 to M25, so that the hand 25 grips the part P (mechanical part, electronic part), moves the hand 25 that grips the part P, or rotates the hand 25.
  • the robot 2 can perform basic operations such as changing the posture of the component P and releasing the component P from the hand 25.
  • the computer 3 is installed with a robot program 4 created for causing the robot 2 to execute a predetermined procedure. That is, the main control unit 31 controls the drive motors M23 to M25 according to the robot program 4 to cause the robot 2 to execute the procedure specified in the robot program 4.
  • the robot program 4 described in this embodiment causes the robot 2 to assemble a plurality of parts P. That is, according to the robot program 4, the hand 25 assembles a plurality of parts P by carrying out a transporting operation for gripping the part P at the initial position and moving it to the assembly position for each of the plurality of parts P. In order to execute the assembly of the component P, it is necessary to accurately grip the component P with the hand 25. Therefore, the robot program 4 causes the hand 25 to perform the gripping operation of the component P based on the TCP (Tool Center Point) set for the hand 25.
  • TCP Tool Center Point
  • FIG. 3 is a diagram schematically showing the gripping operation of the hand provided in the robot of FIG.
  • the hand 25 that moves toward the component P at the initial position is indicated by a broken line
  • the hand 25 that grips the component P at the initial position is indicated by a solid line.
  • TCP 6 which is a virtual point
  • TCP 6 is set for the hand 25.
  • the positional relationship between the hand 25 and the TCP 6 is fixed, and the hand 25 moves with the TCP 6.
  • the part P can be gripped by the hand 25 by operating (closing) the hand 25 in a state where the part P and the TCP 6 satisfy a predetermined positional relationship.
  • the component P can be grasped by the hand 25 in a state where an appropriate representative point set for the component P and the TCP 6 coincide with each other.
  • FIG. 4 is a diagram schematically showing an example of alignment between the gripping point of the component and the TCP of the tool.
  • the “movement” column shows how the hand 25 moves toward the component P at the initial position
  • the “gripping” column shows how the hand 25 grips the component P at the initial position.
  • TCP 7 representsative point
  • the component-side TCP 7 can be set at a position suitable for the gripping mode of the component P. Then, by moving the hand 25 to the component P and operating the hand 25 in a state where the hand-side TCP 6 is aligned with the component-side TCP 7, the component P can be gripped by the hand 25.
  • a plurality of component-side TCPs 7 are set in accordance with variations in the gripping mode of the component P, and the component P and the hand 25 are set based on the one component-side TCP7 selected according to the gripping mode of the component P. It can also be configured to perform alignment.
  • FIG. 5 is a block diagram schematically showing an example of the electrical configuration of the robot program creation device.
  • a recording medium 300 on which a creation program 200 for creating a robot program is recorded and a simulator 400 are also shown.
  • the robot program creation device 100 is a computer that includes a main control unit 110 composed of a CPU and a memory. Further, the robot program creation device 100 includes an input / output unit 120 that controls input / output of data to / from the outside, a storage unit 130 configured by a memory and a hard disk, an input device 140 configured by a keyboard and a mouse, and a display 150. It has. As the display 150, a display having an input function such as a touch panel type may be used.
  • the robot program creation device 100 having such a configuration creates the robot program 4 based on the creation program 200 read into the storage unit 130.
  • the creation program 200 is supplied in a state of being recorded on a recording medium 300 that can be read by the robot program creation device 100, for example.
  • Examples of the recording medium 300 include various types such as a CD (Compact Disc), a DVD (Digital Versatile Disc), and a USB (Universal Serial Bus) memory.
  • the hand 25 that is the control target of the robot program 4 grabs the transport target part to be transported among the plurality of parts P at the position before transport (initial position) and transports it to the position after transport (assembly position).
  • the carrying operation is executed in order (in assembly order) for the plurality of parts P.
  • This transporting operation needs to be performed while avoiding a collision with an obstacle (specifically, a collision between the hand 25 and a part to be transported gripped by the hand 25 and the obstacle).
  • the robot program creation device 100 the arrangement of the part P that becomes an obstacle when the hand 25 executes the carrying work is stored in the storage unit 130 as the obstacle arrangement information Io. Then, the operation of the hand 25 that sequentially performs the transportation operation on the plurality of parts P while avoiding the collision with the obstacle is simulated based on the obstacle arrangement information Io, and the transportation trajectory of the hand 25 is calculated. (Orbit simulation). In particular, the trajectory simulation is executed while updating the obstacle arrangement information Io in accordance with the change in the arrangement of the parts P caused by the transportation operation virtually executed in the trajectory simulation. Then, the robot program creation device 100 creates the robot program 4 so that the hand 25 passes through the transport path thus obtained. Specifically, a flowchart shown in FIG. 6 is incorporated in the creation program 200, and the robot program creation device 100 creates the robot program 4 by executing the flowchart.
  • FIG. 6 is a diagram showing an example of a flowchart for creating a robot program.
  • FIG. 7 is a perspective view schematically showing an example of the work executed in the flowchart of FIG.
  • a substantially rectangular part Pb is superimposed on a substantially trapezoidal part Pa in plan view, and the parts Pa and Pb are fixed to each other with two screw-like parts Pc and Pd.
  • An example of assembling the parts P (Pa to Pd) is shown.
  • the state before the assembly of the plurality of parts Pa to Pd is shown in the column “Before assembly”, and the parts Pa to Pd are assembled.
  • the state is shown in the column “After Assembly”.
  • the flowchart of FIG. 6 includes step S100 for initial setting, step S200 for generating a trajectory of the hand 25 by performing trajectory simulation based on the initial setting, and creating the robot program 4 so that the hand 25 passes the trajectory. Step S300.
  • FIG. 8 is a flowchart showing an example of an operation executed in the initial setting shown in FIG.
  • CAD computer aided ⁇ design
  • creation of the assembly drawing may be performed by an external three-dimensional CAD tool, or may be performed by the robot program creation device 100 using three-dimensional CAD software.
  • the robot program creation device 100 may reproduce the assembly drawing created by the external three-dimensional CAD tool as it is.
  • the robot program creation device 100 may create a drawing based on the CAD data of each part P read by an external three-dimensional CAD tool and reproduce it.
  • step S103 the post-conveyance reference points 8a to 8d of the parts Pa to Pd after assembly are set in the storage unit 130 based on the created assembly drawing. Specifically, as shown in the “after assembly” column of FIG. 7, these post-transport reference points 8 (8a to 8d) are hands 25 that grip the parts P (Pa to Pd) after transport in the assembly position. And is represented as a point (x, y, z) in a three-dimensional virtual space. This post-transport reference point 8 corresponds to the component-side TCP 7 of the component P after transport.
  • step S103 the postures (Rx, Ry, Rz) of the hand 25 that holds the parts P (Pa to Pd) after transportation are set.
  • step S103 the approach direction (Dx, Dy, Dz) when the TCP 6 of the hand 25 approaches the post-transport reference point 8 (8a-8d) when transporting the parts P (Pa-Pd) to the assembly position.
  • the posture (Rx, Ry, Rz) of the hand 25 indicates the posture of the hand 25 in terms of Euler angles or roll / pitch / yaw angles.
  • the approach direction (Dx, Dy, Dz) of the hand 25 indicates the approach direction of the hand 25 by a three-dimensional vector.
  • the setting mode of the post-transport reference point 8 may be configured as follows.
  • the post-transportation reference point 8 may be set at a position designated by the user by placing a cursor that can be operated with a mouse at an appropriate location of the transported component P displayed on the display 150. good.
  • the post-transport reference point 8 may be set at a position designated by the user by pressing the display 150.
  • the position designated by the user on the display 150 that displays the states of the parts Pa to Pd in the virtual space is set as the post-transport reference point 8. If the user's designated position is not appropriate, a message to that effect is displayed on the display 150 to prompt the user to change the designated position, or the position corrected by the main control unit 110 from the user's designated position is the post-transportation reference point 8.
  • the main control unit 110 reproduces an initial layout diagram showing a state before the assembly of the plurality of parts Pa to Pd on the virtual space based on the CAD data.
  • initial position information indicating the initial positions of the parts Pa to Pb is acquired in advance from the result of imaging the parts Pa to Pb before assembly in the actual work space, and the individual parts P are obtained.
  • an initial layout diagram is created.
  • pre-transportation reference points 9a to 9d of the parts Pa to Pd before assembly are set in the storage unit 130.
  • these pre-transportation reference points 9 (9a to 9d) are hands 25 for gripping the parts P (Pa to Pd) before transporting in the initial positions. And is represented as a point (x, y, z) in a three-dimensional virtual space.
  • This pre-transportation reference point 9 corresponds to the component-side TCP 7 of the component P before transporting.
  • the setting of the pre-transportation reference points 9a to 9d can be executed based on the designation of the user on the display 150 in the same manner as the setting of the post-transportation reference points 8a to 8d.
  • the setting of the pre-transportation reference points 9a to 9d may be automatically performed by the calculation by the main control unit 110 based on the initial layout and the setting results of the post-transportation reference points 8a to 8d. That is, the positional relationship between the reference points 9a to 9d before transportation and the parts Pa to Pd and the positional relationship between the reference points 8a to 8d after transportation and the parts Pa to Pd are the same.
  • the pre-transportation reference points 9a to 9d are determined from the positions of the parts Pa to Pd in the initial layout drawing. 9d is automatically obtained by calculation.
  • step S105 the posture (Rx, Ry, Rz) of the hand 25 that holds the parts P (Pa to Pd) before transportation is set. Furthermore, in step S105, in order to go to grip the parts P (Pa to Pd) in the initial position, the approach direction (Dx,) when the TCP 6 of the hand 25 approaches the pre-transportation reference point 9 (9a to 9d). Dy, Dz) are set. These values such as the posture (Rx, Ry, Rz) and approach direction (Dx, Dy, Dz) of the hand 25 can be set while the user confirms the assembly drawing reproduced in the virtual space on the display 150. It can be executed by operating the device 140 or the like.
  • step S106 based on the setting results in the previous steps S103 and S105, the main control unit 110 creates a list of reference points 8 and 9 before and after assembly (FIG. 9) and stores them in the storage unit 130.
  • FIG. 9 is a table showing an example of a list of reference points before and after assembly. As shown in FIG. 9, reference points, postures, and approach directions before and after assembly are obtained for each of the parts Pa to Pd.
  • step S107 the trajectory calculation unit 111 labels the parts Pa to Pd with the assembly order n.
  • the assembly order n of 1 to 4 is labeled in the order of the parts Pa to Pd.
  • the parts Pa to Pd are appropriately expressed as P (1) to P (4), respectively.
  • the trajectory calculation unit 111 first recognizes the part Pa on which the carrying work is performed, and registers the arrangement of the parts Pb to Pd excluding the part Pa before the conveyance in the obstacle arrangement information Io (FIG. 10). ).
  • FIG. 10 is a diagram showing an example of the obstacle arrangement information as a table.
  • the obstacle arrangement information Io the arrangement of parts that become obstacles when the hand 25 performs the carrying operation for the parts to be carried is registered.
  • the position, posture, and height of the part are registered as representing the arrangement of the part.
  • parts Pb to Pd other than the part to be transported Pa are registered in the obstacle arrangement information Io in step S108.
  • the trajectory calculation unit 111 included in the main control unit 110 executes the trajectory simulation in step S200 shown in FIG.
  • FIG. 11 is a flowchart showing an example of operations executed in the trajectory simulation shown in FIG.
  • the trajectory simulation is to calculate the trajectory of the hand 25 by simulating in the virtual space the operation of the hand 25 that sequentially performs the transport operation on the plurality of parts P.
  • “1” is assigned to the assembly order n.
  • the hand 25 is moved to the gripping point of the part P (n) by moving the TCP 6 of the hand 25 to the TCP 9a of the part P (n) in the initial position before transport (step S202). Hold the part P (n) (step S203).
  • step S204 the transport path for the hand 25 holding the part P (n) to transport the part P (n) from the initial position before transporting to the assembly position after transporting is calculated.
  • the transport trajectory of the hand 25 is included in the obstacle arrangement information Io.
  • the TCP 6 of the hand 25 is transported from the pre-transportation reference point 9 to the post-transportation reference point 8 of the part P (n).
  • the transport trajectory of the hand 25 is calculated so as to satisfy the condition of moving up to.
  • Such a trajectory calculation can be performed using a route search technique for searching for a route from the departure point (reference point 9 before transportation) to the destination (reference point 8 after transportation).
  • step S204 the TCP 6 of the hand 25 moves from the approach direction before assembly set for the next condition / part to be transported P (n) to the reference point 9 before transport of the part P (n).
  • Approaching ⁇ When the TCP 6 of the hand 25 is at the reference point 9 before transportation of the part P (n) to be transported, the hand 25 takes the posture before transportation set for the part P (n). From the approach direction after assembly set for a part P (n), the TCP 6 of the hand 25 approaches the post-transport reference point 8 of the part P (n).
  • the trajectory of the hand 25 may be calculated so that the hand 25 satisfies the post-transport posture set for the part P (n) when at the post-transport reference point 8 of n). By performing a trajectory simulation of the hand 25 so as to satisfy such conditions, a more appropriate trajectory can be calculated.
  • a plurality of trajectory candidates for the hand 25 may be obtained.
  • a candidate having the shortest transportation time can be selected as a trajectory of the hand 25 from among a plurality of candidates, and a more appropriate trajectory of the hand 25 can be calculated.
  • the hand 25 is moved to the assembly position after the transportation of the part P (n) by moving the TCP 6 of the hand 25 to the TCP 8a of the part P (n) in the assembly position after the transportation.
  • Steps S203 to S205 the operation of the hand 25 that performs the transportation work of the component P (n) is simulated, and the transportation trajectory of the hand 25 is calculated.
  • the obstacle arrangement information Io is updated to reflect the change in the arrangement of the part P (n) caused by the carrying work performed on the part P (n). That is, the arrangement after the conveyance of the part P (n) conveyed by the conveyance operation is added to the obstacle arrangement information Io. Further, the arrangement of the conveyance target part P (n + 1) (here, the part P (b)) of the next conveyance operation is deleted from the obstacle arrangement information. As a result, the post-transportation arrangement of the part P (n) that has already been transported and the parts P (Pc, Pd) before transport other than the transport target part P (n + 1) of the transport work to be executed next are performed. It will be registered in the obstacle arrangement information Io.
  • step S207 it is determined whether or not the trajectory calculation has been completed for all the parts P (1) to P (4). If not completed (in the case of “NO” in step S207), the process proceeds to step S208, the assembly order n is incremented by “1”, and then the process returns to step S202, where all the parts P (1) to P ( Steps S202 to S208 are repeatedly executed until the trajectory is calculated for 4). On the other hand, when completed (in the case of “YES” in step S207), the trajectory simulation ends. Thus, the transport trajectory of the hand 25 is calculated for each of the parts P (1) to P (4), that is, the parts Pa to Pd.
  • the robot program creation device 100 can output the calculated transport trajectory of the hand 25 by executing the trajectory simulation described above in a non-stop manner. Specifically, the main control unit 110 displays a start button on the display 150 for starting the trajectory simulation. When the user selects a start button (click with the mouse or touches the touch panel) after the initial setting (step S100) is completed, the robot program creation device 100 starts a trajectory simulation (step S200). The started trajectory simulation is executed without interruption until the transport trajectories have been calculated for all the parts Pa to Pd. Thus, the trajectory simulation can be executed non-stop from the start to the end thereof without requiring any user operation.
  • the trajectory calculation unit 111 When the trajectory simulation is completed, the trajectory calculation unit 111 outputs the calculated transport trajectory to the program creation unit 112 configured in the main control unit 110. And the program preparation part 112 performs step S300 shown in FIG. Specifically, the program creation unit 112 generates a transport program for controlling the robot 2 so that the hand 25 transports the parts Pa to Pd through the trajectories generated for the parts Pa to Pd. Generate every time.
  • the program creation unit 112 also creates a posture adjustment program for performing such posture adjustment.
  • the part P may be slightly deviated from the initial position determined before assembly.
  • the position of the hand 25 is corrected based on the result of recognition of the actual positions of the components Pa to Pd by the camera. Is called. Therefore, the program creation unit 112 also creates a position correction program for performing such position correction.
  • the program creation unit 112 creates the robot program 4 by combining the transportation program, the posture adjustment program, and the position correction program. Thus, the creation of the robot program 4 is completed.
  • the robot program 4 created by the robot program creation device 100 can be verified by the simulator 400.
  • the simulator 400 is configured by a personal computer or the like, and can output a result of a simulation in which the robot 2 is operated according to the robot program 4. Therefore, the user can determine the suitability of the robot program 4 based on the simulation result.
  • the hand which performs the conveyance work which grasps conveyance object part P (n) used as conveyance object among a plurality of parts P in the position before conveyance, and conveys it to the position after conveyance. 25 transport trajectories are calculated. More specifically, based on the obstacle arrangement information Io indicating the arrangement of the part P that becomes an obstacle when carrying the carrying work on the carrying target part P (n), a plurality of collisions with the obstacle are avoided. The operation of the hand 25 that sequentially performs the carrying work on the component P is simulated, and the carrying track of the hand 25 is calculated (track simulation). However, when transporting a plurality of parts P in order, it is necessary to obtain the transport trajectory of the hand 25 while the disposition state of the obstacle changes.
  • the trajectory simulation is executed while the obstacle arrangement information Io is updated according to the change in the arrangement of the parts P caused by the carrying operation, and the carrying trajectory of the hand 25 is calculated.
  • the trajectory simulation is executed while the obstacle arrangement information Io is updated according to the change in the arrangement of the parts P caused by the carrying operation, and the carrying trajectory of the hand 25 is calculated.
  • the placement of the parts P (n) carried by the transportation work after the transportation is registered in the obstacle placement information Io.
  • the movement of the hand 25 that can accurately avoid the collision with the part P after the transportation by the transportation work by accurately reflecting the change in the parts placement carried by the transportation work in the obstacle arrangement information Io.
  • the trajectory can be calculated appropriately.
  • the arrangement of the parts P other than the conveyance target part P (n) at the position before conveyance is registered in the obstacle arrangement information Io before the start of each conveyance operation in the trajectory simulation.
  • the part P (n) (part to be transported) is registered in the obstacle arrangement information Io before the start of the transporting operation for the previous part P. Therefore, in this embodiment, in starting the transportation work for the part P (n) before transportation in the trajectory simulation, the part P (n) (parts to be transported) before transportation, which is the object of the transportation work, is determined. It is removed from the obstacle arrangement information Io.
  • the arrangement of the parts P (n) to be transported before transportation is deleted from the obstacle arrangement information Io before the start of each transportation work in the trajectory simulation.
  • the transportation trajectory of the hand 25 can be calculated while accurately reflecting the arrangement of the parts P changing before and after the transportation by the transportation work in the obstacle arrangement information Io.
  • the robot program creation device 100 corresponds to an example of the “grip mechanism trajectory generation device” or “robot program creation device” of the present invention
  • the creation program 200 of the present invention refers to the “gripping mechanism trajectory generation device”.
  • the recording medium 300 corresponds to an example of “orbit generation program”, and the recording medium 300 corresponds to an example of “recording medium” of the present invention.
  • the storage unit 130 corresponds to an example of the “storage unit” of the present invention
  • the trajectory calculation unit 111 corresponds to an example of the “orbit calculation unit” of the present invention
  • the program creation unit 112 corresponds to the “program creation unit” of the present invention.
  • the obstacle arrangement information Io corresponds to an example of “obstacle arrangement information” of the present invention
  • the part P corresponds to an example of “work” of the present invention
  • the robot program creation device 100 corresponds to an example of “computer” of the present invention.
  • the present invention is not limited to the above-described embodiment, and various modifications other than those described above can be made without departing from the spirit of the present invention. Therefore, the contents registered in the obstacle arrangement information Io may be appropriately changed from the above. For example, in the trajectory simulation of the above embodiment, all the parts P other than the transportation target part P (n) are registered in the obstacle arrangement information Io. However, parts P that are unlikely to cause a collision in the transportation work of the parts P (n) to be transported, specifically, parts P that are lower than a predetermined threshold are not registered in the obstacle arrangement information Io. It can also be configured as follows.
  • timing for updating the obstacle arrangement information Io and the content to be updated can be changed as appropriate.
  • the trajectory simulation is started when the user selects the start button.
  • the main control unit 100 of the robot program creation device 100 may detect the completion of the initial setting and automatically start the trajectory simulation.
  • the transport trajectory of the hand 25 is calculated so that the TCP 6 of the hand 25 moves from the reference point 9 before transportation of the part P (n) to be transported to the reference point 8 after transportation.
  • the specific method for calculating the transport trajectory of the hand 25 is not limited to this, and may be changed as appropriate.
  • the robot program creation device 100 may be configured to display the trajectory generated by the trajectory calculation unit 111 on the display 150 (trajectory display unit).
  • the user can determine the suitability while confirming the generated trajectory on the display 150, and the operability for the user is improved.
  • the display 150 may display a moving image of the state of the hand 25 moving along the trajectory.
  • the conditions set for generating the trajectory of the hand 25 in the above embodiment can be changed as appropriate. Specifically, among the above conditions, the conditions related to the approach direction and the posture of the hand 25 may be deleted as appropriate. Alternatively, the trajectory of the hand 25 can be generated so as to further satisfy conditions other than the above conditions.
  • the robot program creation device 100 can be modified to add various functions.
  • the robot program creation device 100 may have the simulation function of the simulator 400 described above.
  • the TCP 6 is set at substantially the center of the plurality of fingers of the hand 25.
  • the setting location of TCP 6 may be changed as appropriate.
  • the main control unit 110 may be configured to automatically perform these settings.
  • the hand 25 that performs a gripping operation by gripping an object (part P) has been mentioned.
  • the specific configuration of the gripping mechanism is not limited to this, and for example, the gripping mechanism may suck and grip an object.
  • the present invention can be applied to all techniques for obtaining the trajectory of a gripping mechanism for transporting a workpiece, and particularly applicable to a technique for transporting and assembling parts with a robot hand.

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

 複数の部品(P)を順番に運搬する場合において、障害物の配置状況が変化する中で、障害物との衝突を回避しつつ各部品(P)を運搬するハンド(25)の軌跡を適切に算出することを可能とする技術を提供する。 運搬対象部品(P(n))に対して運搬作業を実行するにあたって障害物となる部品(P)の配置を示す障害物配置情報(Io)に基づいて、障害物との衝突を回避しつつ複数の部品(P)に対して順番に運搬作業を実行するハンド(25)の動作がシミュレーションされて、ハンド(25)の運搬軌道が算出される(軌道シミュレーション)。運搬作業によって生じる部品(P)の配置の変化に応じて障害物配置情報(Io)を更新しつつ、軌道シミュレーションが実行される。よって、障害物の配置状況が変化する中で、障害物との衝突を回避しつつ各部品(P)を運搬するハンド(25)の軌跡を適切に算出することができる。

Description

把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置
 この発明は、把持機構を用いてワークを運搬する技術に関し、特にワークの運搬のために把持機構を移動させる軌道を生成する技術に関する。
 従来、ワークに対して所定作業を実行するロボットが知られている。また、特許文献1、2等に記載のように、所定作業をワークに実行するために必要となるロボットの動作をシミュレーションにより求める技術も種々提案されている。
特開2005-135278号公報 特開2002-273675号公報
 ところで、ロボットが具備するハンド等の把持機構を用いて複数のワークを順番に運搬して、例えばこれらを組み立てるといった作業を実行することができる。この際、複数のワークを順番に運搬する把持機構の軌跡を算出できれば、例えばオフラインのコンピュータ等で把持機構の軌跡を生成して把持機構の制御に用いることができ好適である。
 しかしながら、複数のワークを順番に運搬する場合、ワークの運搬に対して障害となる障害物の配置状況は、ワークの運搬の度に変化する。具体例としては、運搬対象となるワークの周囲に存在する他のワークを挙げることができる。つまり、運搬対象となるワークの運搬に対して、周囲のワークは障害物となり得る。しかも、ワークが運搬される度に、各ワークの配置状況、換言すれば障害物の配置状況が変化する。そこで、障害物の配置状況が変化する中で、障害物との衝突を回避しつつ各ワークを運搬する把持機構の軌跡を適切に算出する技術が望まれていた。
 この発明は上記課題に鑑みなされたものであり、複数のワークを順番に運搬する場合において、障害物の配置状況が変化する中で、障害物との衝突を回避しつつ各ワークを運搬する把持機構の軌跡を適切に算出することを可能とする技術の提供を目的とする。
 この発明にかかる把持機構の軌道生成装置は、上記目的を達成するために、複数のワークのうち運搬対象となる運搬対象ワークを運搬前の位置で掴んで運搬後の位置まで運搬する運搬作業を把持機構が実行するにあたって障害物となるワークの配置を示す障害物配置情報を記憶する記憶手段と、障害物との衝突を回避しつつ複数のワークに対して順番に運搬作業を実行する把持機構の動作を障害物配置情報に基づいてシミュレーションして把持機構の運搬軌道を算出する軌道シミュレーションを、運搬作業によって生じるワークの配置の変化に応じて障害物配置情報を更新しつつ実行する軌道演算手段とを備えたことを特徴とする。
 この発明にかかる把持機構の軌道生成方法は、上記目的を達成するために、複数のワークのうち運搬対象となる運搬対象ワークを運搬前の位置で掴んで運搬後の位置まで運搬する運搬作業を把持機構が実行するにあたって障害物となるワークの配置を示す障害物配置情報に基づいて、障害物との衝突を回避しつつ複数のワークに対して順番に運搬作業を実行する把持機構の動作をシミュレーションして把持機構の運搬軌道を算出する軌道シミュレーションを、運搬作業によって生じるワークの配置の変化に応じて障害物配置情報を更新しつつ実行することを特徴とする。
 この発明にかかる把持機構の軌道生成プログラムは、上記目的を達成するために、複数のワークのうち運搬対象となる運搬対象ワークを運搬前の位置で掴んで運搬後の位置まで運搬する運搬作業を把持機構が実行するにあたって障害物となるワークの配置を示す障害物配置情報を記憶する記憶手段、および障害物との衝突を回避しつつ複数のワークに対して順番に運搬作業を実行する把持機構の動作を障害物配置情報に基づいてシミュレーションして把持機構の運搬軌道を算出する軌道シミュレーションを、運搬作業によって生じるワークの配置の変化に応じて障害物配置情報を更新しつつ実行する軌道演算手段としてコンピュータを機能させることを特徴とする。
 この発明にかかる記録媒体は、上記目的を達成するために、上記の把持機構の軌道生成プログラムがコンピュータにより読み出し可能に記録されたことを特徴としている。
 この発明にかかるロボットプログラム作成装置は、上記目的を達成するために、把持機構を用いてワークを運搬するロボットの制御をコンピュータに実行させるロボットプログラムを作成するロボットプログラム作成装置において、複数のワークのうち運搬対象となる運搬対象ワークを運搬前の位置で掴んで運搬後の位置まで運搬する運搬作業を把持機構が実行するにあたって障害物となるワークの配置を示す障害物配置情報を記憶する記憶手段と、障害物との衝突を回避しつつ複数のワークに対して順番に運搬作業を実行する把持機構の動作を障害物配置情報に基づいてシミュレーションして把持機構の運搬軌道を算出する軌道シミュレーションを、運搬作業によって生じるワークの配置の変化に応じて障害物配置情報を更新しつつ実行する軌道演算手段と、軌道演算手段が算出した運搬軌道を把持機構が通るように、ロボットプログラムを作成するプログラム作成手段とを備えたことを特徴とする。
 このように構成された発明(把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置)では、複数のワークのうち運搬対象となる運搬対象ワークを運搬前の位置で掴んで運搬後の位置まで運搬する運搬作業を実行する把持機構の運搬軌道が算出される。より詳しくは、運搬対象ワークに対して運搬作業を実行するにあたって障害物となるワークの配置を示す障害物配置情報に基づいて、障害物との衝突を回避しつつ複数のワークに対して順番に運搬作業を実行する把持機構の動作がシミュレーションされて、把持機構の運搬軌道が算出される(軌道シミュレーション)。ただし、上述したように、複数のワークを順番に運搬する場合においては、障害物の配置状況が変化する中で、把持機構の運搬軌道を求める必要がある。これに対して、この発明では、運搬作業によって生じるワークの配置の変化に応じて障害物配置情報を更新しつつ、軌道シミュレーションが実行されて、把持機構の運搬軌道が算出される。これによって、障害物の配置状況が変化する中で、障害物との衝突を回避しつつ各ワークを運搬する把持機構の軌跡を適切に算出することが可能となっている。
 また、軌道演算手段は、軌道シミュレーションにおける運搬作業の完了の度に、運搬作業により運搬されたワークの運搬後の配置を障害物配置情報に登録するように、把持機構の軌道生成装置を構成しても良い。このような構成では、運搬作業によって運搬されたワークの配置の変化を障害物配置情報に的確に反映して、運搬作業による運搬後のワークとの衝突を確実に回避可能な把持機構の運搬軌道を適切に算出することができる。
 また、軌道演算手段は、軌道シミュレーションにおける各運搬作業の開始の前に運搬前の位置にある運搬対象ワーク以外のワークの配置を障害物配置情報に登録するように、把持機構の軌道生成装置を構成しても良い。このような構成では、運搬後のワークのみならず運搬前のワークとの衝突も確実に回避可能な把持機構の運搬軌道を適切に算出することができる。
 ちなみに、複数のワークに対して順番に運搬作業を行う構成で上記のように運搬前のワークの配置を障害物配置情報に登録する場合、軌道シミュレーションにおいて運搬作業の対象となる運搬前のワーク(運搬対象ワーク)は先のワークに対する運搬作業の開始前に障害物配置情報に登録されている。そこで、軌道シミュレーションにおいて運搬前のワークに対して運搬作業を開始するにあたっては、この運搬作業の対象となる運搬前のワーク(運搬対象ワーク)を障害物配置情報から外しておいても良い。具体的には、軌道演算手段は、軌道シミュレーションにおける各運搬作業の開始の前に運搬前の運搬対象ワークの配置を障害物配置情報から削除するように、把持機構の軌道生成装置を構成しても良い。これによって、運搬作業による運搬の前後で変化するワークの配置を的確に障害物配置情報に反映させつつ、把持機構の運搬軌道を算出することができる。
 複数のワークを順番に運搬する場合において、障害物の配置状況が変化する中で、障害物との衝突を回避しつつ各ワークを運搬する把持機構の軌跡を適切に算出することが可能となる。
本発明により作成したロボットプログラムに基づいて制御可能なロボットの一例を模式的に示す斜視図である。 図1に示すロボットを制御する電気的構成を模式的に示すブロック線図である。 図1のロボットが備えるハンドの把持動作を模式的に示す図である。 部品の把持点とツールのTCPの位置合わせの一例を模式的に示す図である。 ロボットプログラム作成装置の電気的構成の一例を模式的に示すブロック線図である。 ロボットプログラムを作成するフローチャートの一例を示す図である。 図6のフローチャートで実行される作業の一例を模式的に示す斜視図である。 図6に示す初期設定で実行される動作の一例を示すフローチャートである。 組立前後における基準点等のリストの一例を表で示す図である。 障害物配置情報の一例を表として示す図である。 図6に示す軌道シミュレーションで実行される動作の一例を示すフローチャートである。
 図1は、本発明により作成したロボットプログラムに基づいて制御可能なロボットの一例を模式的に示す斜視図である。なお、図1では、ロボット2を制御するコンピュータ3がロボット2の他に併記されている。図2は、図1に示すロボットを制御する電気的構成を模式的に示すブロック線図である。図1および以下に示す図では、鉛直方向をz軸方向とするxyz直交座標軸を適宜示すこととする。
 図1に示すロボット2は、胴体部21に2本のアーム22を取り付けた概略構成を備えた双腕ロボットである。各アーム22は、駆動モータM23に接続された肩関節23を介して取り付けられている。したがって、駆動モータM23で肩関節23を回転させて、アーム22を動かすことができる。また、各アーム22の先端には、手首関節24を介してハンド25が取り付けられている。この手首関節24には駆動モータM24が接続されている。したがって、駆動モータM24で手首関節24を回転させることで、ハンド25の向きを変えることができる。さらに、ハンド25には駆動モータM25が接続されている。したがって、駆動モータM25によってハンド25を開閉させることができる。
 このようなロボット2の動作は、コンピュータ3によって制御される。コンピュータ3は、CPU(Central Processing Unit)やメモリーで構成された主制御部31を備える。そして、主制御部31は駆動モータM23~M25を制御することで、ハンド25で部品P(機械部品、電子部品)を掴んだり、部品Pを掴んだハンド25を移動させたり、ハンド25を回転させて部品Pの姿勢を変えたり、ハンド25から部品Pを放したりといった基本動作を、ロボット2に実行させることができる。
 特に、コンピュータ3には、ロボット2に所定手順を実行させるために作成されたロボットプログラム4がインストールされている。つまり、主制御部31はロボットプログラム4に従って駆動モータM23~M25を制御することで、ロボットプログラム4に規定された手順をロボット2に実行させる。具体的には、この実施形態で説明するロボットプログラム4は、複数の部品Pの組み立てをロボット2に実行させるものである。つまり、ハンド25は、ロボットプログラム4に従って、部品Pを初期位置で把持して組立位置まで移動させる運搬作業を複数の部品Pそれぞれについて実行して、複数の部品Pを組み立てる。なお、このような部品Pの組み立てを実行するためには、ハンド25によって部品Pを的確に把持する必要がある。そこで、ロボットプログラム4は、ハンド25に対して設定されたTCP(Tool Center Point)を基準に、ハンド25に部品Pの把持動作を実行させる。
 図3は、図1のロボットが備えるハンドの把持動作を模式的に示す図である。図3では、初期位置にある部品Pへ向けて移動するハンド25が破線で示され、初期位置で部品Pを把持するハンド25が実線で示されている。図3に示すように、ハンド25に対しては、仮想的な点であるTCP6が設定されている。ハンド25とTCP6との位置関係は固定されており、ハンド25はTCP6を伴って移動する。そして、部品PとTCP6とが所定の位置関係を満たす状態で、ハンド25を作動させる(閉じる)ことで、部品Pをハンド25で把持することができる。具体的には、例えば図4に示すように、部品Pに対して設定された適当な代表点とTCP6とが一致した状態で、部品Pをハンド25で把持できるように構成することができる。
 図4は、部品の把持点とツールのTCPの位置合わせの一例を模式的に示す図である。同図において、「移動」の欄ではハンド25が初期位置の部品Pへ向けて移動する様子が示され、「把持」の欄ではハンド25が初期位置で部品Pを把持する様子が示されている。同図に示す例では、ハンド25のみならず、部品Pに対してもTCP7(代表点)が付されている。この部品側TCP7は、部品Pの把持態様に適した位置に設定することができる。そして、部品Pまでハンド25を移動させて、部品側TCP7にハンド側TCP6を一致させた状態でハンド25を作動させることで、部品Pをハンド25で把持することができる。この際、部品Pの把持態様のバリエーションに応じて複数の部品側TCP7を設定しておき、部品Pの把持態様に応じて選択された一の部品側TCP7を基準に、部品Pとハンド25の位置合わせを行なうように構成することもできる。
 このようなハンド25の動作は、上述のとおりロボットプログラム4に基づいて制御される。続いては、このロボットプログラム4を作成する構成および動作の一例について説明する。図5は、ロボットプログラム作成装置の電気的構成の一例を模式的に示すブロック線図である。なお、図5では、ロボットプログラム作成装置100の他に、ロボットプログラム作成用の作成プログラム200を記録した記録媒体300およびシミュレータ400が併記されている。
 ロボットプログラム作成装置100は、CPUやメモリーで構成された主制御部110を具備するコンピュータである。さらに、ロボットプログラム作成装置100は、外部とのデータの入出力を制御する入出力部120、メモリーやハードディスクで構成された記憶部130、キーボードやマウスで構成された入力機器140、およびディスプレイ150を具備する。なお、ディスプレイ150としては、タッチパネル型のように入力機能を有するものを用いても良い。
 かかる構成を具備するロボットプログラム作成装置100は、記憶部130に読み込んだ作成プログラム200に基づいてロボットプログラム4を作成する。作成プログラム200は、例えばロボットプログラム作成装置100により読み取りが可能な記録媒体300に記録された状態で供給される。このような記録媒体300としては、例えば、CD(Compact Disc)、DVD(Digital Versatile Disc)、USB(Universal Serial Bus)メモリー等の種々のものが挙げられる。
 ちなみに、ロボットプログラム4の制御対象であるハンド25は、複数の部品Pのうち運搬対象となる運搬対象部品を運搬前の位置(初期位置)で掴んで運搬後の位置(組立位置)まで運搬する運搬作業を、複数の部品Pに対して(組立順序で)順番に実行する。この運搬作業は、障害物との衝突(具体的には、ハンド25およびハンド25が把持する運搬対象部品と障害物との衝突)を回避しつつ実行される必要がある。
 そこで、ロボットプログラム作成装置100では、運搬作業をハンド25が実行するにあたって障害物となる部品Pの配置が障害物配置情報Ioとして記憶部130に記憶される。そして、障害物との衝突を回避しつつ複数の部品Pに対して順番に運搬作業を実行するハンド25の動作が、障害物配置情報Ioに基づいてシミュレーションされて、ハンド25の運搬軌道が算出される(軌道シミュレーション)。特に、軌道シミュレーションは、当該軌道シミュレーションにおいて仮想的に実行される運搬作業によって生じる部品Pの配置の変化に応じて障害物配置情報Ioを更新しつつ実行される。そして、ロボットプログラム作成装置100は、こうして求めた運搬軌道をハンド25が通るように、ロボットプログラム4を作成する。具体的には、作成プログラム200には、図6に示すフローチャートが組み込まれており、ロボットプログラム作成装置100は、同フローチャートを実行することでロボットプログラム4を作成する。
 図6は、ロボットプログラムを作成するフローチャートの一例を示す図である。図7は、図6のフローチャートで実行される作業の一例を模式的に示す斜視図である。図7では、平面視において略台形状の部品Paの上に平面視において略矩形状の部品Pbを重ねて、2本のネジ状の部品Pc、Pdで部品Pa、Pbを相互に固定することで、部品P(Pa~Pd)を組み立てる例が示されており、複数の部品Pa~Pdの組立前における状態が「組立前」の欄に示され、複数の部品Pa~Pdの組立後における状態が「組立後」の欄に示されている。
 図6のフローチャートは、初期設定を行うステップS100、当該初期設定に基づいて軌道シミュレーションを行ってハンド25の軌道を生成するステップS200、および当該軌道をハンド25が通過するようにロボットプログラム4を作成するステップS300で構成される。これらの詳細は次のとおりである。
 図8は、図6に示す初期設定で実行される動作の一例を示すフローチャートである。ロボットプログラム4の作成が開始すると、ステップS101において、組立対象である複数の部品Pa~PdのCAD(computer aided design)データが、外部の三次元CADツールから入出力部120を介して記憶部130に読み込まれる。続くステップS102では、主制御部110が、複数の部品Pa~Pdの組立後における状態を示す組み図を、読み込んだCADデータに基づいて仮想空間上に再現する。
 この際、組み図の作成は、外部の三次元CADツールで行なっても良いし、三次元CADソフトを用いてロボットプログラム作成装置100で行なっても良い。前者の例では、ロボットプログラム作成装置100は、外部の三次元CADツールで作成された組み図をそのまま再現すれば良い。後者の例では、ロボットプログラム作成装置100は、外部の三次元CADツールが読み込んだ個々の部品PのCADデータに基づいて組み図を作成して、これを再現すれば良い。
 ステップS103では、作成された組み図に基づいて、組立後における各部品Pa~Pdの運搬後基準点8a~8dが記憶部130に設定される。具体的には図7の「組立後」の欄に示すように、これら運搬後基準点8(8a~8d)は、組立位置にある運搬後の部品P(Pa~Pd)を把持するハンド25のTCP6の位置に設定され、三次元の仮想空間における点(x,y,z)として表される。この運搬後基準点8は、運搬後における部品Pの部品側TCP7に相当する。
 また、ステップS103では、運搬後の部品P(Pa~Pd)を把持するハンド25の姿勢(Rx、Ry、Rz)が設定される。さらに、ステップS103では、組立位置に部品P(Pa~Pd)を運搬するにあたって、ハンド25のTCP6が運搬後基準点8(8a~8d)に接近する際のアプローチ方向(Dx、Dy、Dz)が設定される。ここで、ハンド25の姿勢(Rx、Ry、Rz)は、ハンド25の姿勢をオイラー角あるいはロール・ピッチ・ヨー角で示したものである。また、ハンド25のアプローチ方向(Dx、Dy、Dz)は、ハンド25のアプローチ方向を三次元ベクトルで示したものである。
 これら運搬後基準点8、ハンド25の姿勢(Rx、Ry、Rz)およびアプローチ方向(Dx、Dy、Dz)等の各値の設定は、ユーザが仮想空間上で再現された組み図をディスプレイ150で確認しながら、入力機器140等を操作することで実行できる。特に運搬後基準点8の設定態様については、次のように構成しても良い。
 すなわち、ディスプレイ150に表示された運搬後の部品Pの適当な箇所に、マウスで操作可能なカーソルを合わせることでユーザが指定した位置に、運搬後基準点8を設定するように構成しても良い。あるいは、タッチパネル型のディスプレイ150を用いた場合は、ディスプレイ150を押すことでユーザが指定した位置に、運搬後基準点8を設定するように構成しても良い。これらの構成例では、部品Pa~Pdの状態を仮想空間上で表示するディスプレイ150上でユーザにより指定された位置が、運搬後基準点8として設定される。なお、ユーザの指定位置が適当でない場合は、その旨をディスプレイ150に表示して指定位置の変更をユーザに促したり、主制御部110がユーザの指定位置から修正した位置を運搬後基準点8として設定したりするように、構成することもできる。
 続くステップS104では、主制御部110が、複数の部品Pa~Pdの組立前における状態を示す初期配置図をCADデータに基づいて仮想空間上に再現する。具体例を挙げて説明すると、実作業空間における組立前の部品Pa~Pbをカメラで撮像した結果から、部品Pa~Pbの初期位置を示す初期位置情報を予め取得しておき、個々の部品PのCADデータを初期位置情報の示す位置に配置することで、初期配置図が作成される。
 ステップS105では、作成した初期配置図に基づいて、組立前における各部品Pa~Pdの運搬前基準点9a~9dが記憶部130に設定される。具体的には図7の「組立前」の欄に示すように、これら運搬前基準点9(9a~9d)は、初期位置にある運搬前の部品P(Pa~Pd)を把持するハンド25のTCP6の位置に設定され、三次元の仮想空間における点(x,y,z)として表される。この運搬前基準点9は、運搬前における部品Pの部品側TCP7に相当する。
 この際、運搬前基準点9a~9dの設定は、運搬後基準点8a~8dの設定と同様にして、ディスプレイ150上でのユーザの指定に基づいて実行することができる。あるいは、運搬前基準点9a~9dの設定は、初期配置図と運搬後基準点8a~8dの設定結果に基づいて主制御部110が演算により自動的に実行しても良い。つまり、運搬前基準点9a~9dと部品Pa~Pdの位置関係と、運搬後基準点8a~8dと部品Pa~Pdの位置関係とは互いに同一である。したがって、先のステップS103で設定済みの運搬後基準点8a~8dと部品Pa~Pdの位置関係を参照することで、初期配置図における各部品Pa~Pdの位置から、運搬前基準点9a~9dを演算によって自動的に求められる。
 また、ステップS105では、運搬前の部品P(Pa~Pd)を把持するハンド25の姿勢(Rx、Ry、Rz)が設定される。さらに、ステップS105では、初期位置にある部品P(Pa~Pd)を把持しに行くために、ハンド25のTCP6が運搬前基準点9(9a~9d)に接近する際のアプローチ方向(Dx、Dy、Dz)が設定される。これらハンド25の姿勢(Rx、Ry、Rz)およびアプローチ方向(Dx、Dy、Dz)等の各値の設定は、ユーザが仮想空間上で再現された組み図をディスプレイ150で確認しながら、入力機器140等を操作することで実行できる。
 ステップS106では、先のステップS103、S105での設定結果に基づいて、主制御部110が組立前後の基準点8、9等のリスト(図9)を作成して、記憶部130に記憶する。ここで、図9は、組立前後における基準点等のリストの一例を表で示す図である。図9に示すように、組立前と組立後それぞれにおける基準点、姿勢およびアプローチ方向が、部品Pa~Pdのそれぞれについて求められる。
 ステップS107では、軌道演算部111は、部品Pa~Pdを組立順序nでラベルする。この実施形態で示す例では、部品Pa、Pb、Pc、Pdの順番に運搬作業が実行されて組立が実行されるため、部品Pa~Pdの順番に1~4の組立順序nがラベルされる。これに対応して以下では、部品Pa~PdをそれぞれP(1)~P(4)と適宜表記する。ステップS108では、軌道演算部111は、最初に運搬作業が実行される部品Paを認識して、部品Paを除く部品Pb~Pdの運搬前の配置を障害物配置情報Ioに登録する(図10)。
 図10は、障害物配置情報の一例を表として示す図である。同図に示すように、障害物配置情報Ioとしては、ハンド25が運搬対象部品に対する運搬作業を実行するにあたって障害物となる部品の配置が登録されており、より具体的には、障害物となる部品の位置、姿勢および高さが部品の配置を表すものとして登録されている。ちなみに、以後に実行される軌道シミュレーションにおいて最初に運搬対象部品となるのは部品Paであるため、ステップS108では、運搬対象部品Pa以外の部品Pb~Pdが障害物配置情報Ioに登録される。また、図10には表れていないが、部品P以外に障害物が存在する場合には、これらの配置も障害物配置情報Ioに併せて登録される。こうして、初期設定が終了すると、主制御部110に構成された軌道演算部111が、図6に示したステップS200の軌道シミュレーションを実行する。
 図11は、図6に示す軌道シミュレーションで実行される動作の一例を示すフローチャートである。この軌道シミュレーションは、複数の部品Pに対して順番に運搬作業を実行するハンド25の動作を仮想空間でシミュレーションして、ハンド25の軌道を算出するものである。まず、ステップS201では、組立順序nに「1」が代入される。続いて、運搬前の初期位置にある部品P(n)のTCP9aにハンド25のTCP6を移動させることで、ハンド25を部品P(n)の把持点に移動させて(ステップS202)、ハンド25に部品P(n)を把持させる(ステップS203)。
 ステップS204では、部品P(n)を把持するハンド25が、部品P(n)を運搬前の初期位置から運搬後の組立位置まで運搬するための運搬軌道が算出される。特にこの実施形態では、障害物との衝突を回避しつつハンド25が部品P(n)の運搬作業を実行可能な運搬軌道を求めるために、ハンド25の運搬軌道は、障害物配置情報Ioに基づき算出される。具体的には、障害物配置情報Ioに登録された障害物との衝突を回避しつつ、ハンド25のTCP6が運搬対象である部品P(n)の運搬前基準点9から運搬後基準点8まで移動するといった条件を満たすように、ハンド25の運搬軌道が算出される。このような軌道算出は、出発地(運搬前基準点9)から目的地(運搬後基準点8)までの経路を探索する経路探索技術を用いて行うことができる。
 この際、ステップS204では、さらに次の条件
・運搬対象である部品P(n)について設定された組立前のアプローチ方向から、ハンド25のTCP6が当該部品P(n)の運搬前基準点9へ接近する
・ハンド25のTCP6が運搬対象である部品P(n)の運搬前基準点9にあるとき、ハンド25が当該部品P(n)について設定された運搬前の姿勢を取る
・運搬対象である部品P(n)について設定された組立後のアプローチ方向から、ハンド25のTCP6が当該部品P(n)の運搬後基準点8へ接近する
・ハンド25のTCP6が運搬対象である部品P(n)の運搬後基準点8にあるとき、ハンド25が当該部品P(n)について設定された運搬後の姿勢を取る
を満たすように、ハンド25の軌道を算出しても良い。このような条件も満たすようにハンド25の軌道シミュレーションを行うことで、より適切な軌道を算出することが可能となる。
 ちなみに、ステップS204では、ハンド25の軌道の候補を複数求めても良い。この場合、複数の候補のうちから例えば運搬時間が最短となる候補をハンド25の軌道として選出することができ、より適切なハンド25の軌道を算出することができる。続くステップS205では、運搬後の組立位置にある部品P(n)のTCP8aにハンド25のTCP6を移動させることで、ハンド25を部品P(n)の運搬後の組立位置に移動させる。このように、ステップS203~205を実行することで、部品P(n)の運搬作業を実行するハンド25の動作がシミュレーションされて、ハンド25の運搬軌道が算出される。
 ステップS206では、部品P(n)に実行された運搬作業によって生じる部品P(n)の配置の変化を反映させるために、障害物配置情報Ioが更新される。つまり、当該運搬作業により運搬された部品P(n)の運搬後の配置が障害物配置情報Ioに追加される。さらに、次の運搬作業の運搬対象部品P(n+1)(ここでは、部品P(b))の配置が障害物配置情報から削除される。これによって、既に運搬作業が完了した部品P(n)の運搬後の配置と、次に実行する運搬作業の運搬対象部品P(n+1)以外の運搬前の部品P(Pc、Pd)が障害物配置情報Ioに登録されることとなる。
 ステップS207では、全ての部品P(1)~P(4)について軌道算出が完了したかが判断される。完了していない場合(ステップS207で「NO」の場合)には、ステップS208に進んで組立順序nを「1」だけインクリメントした後にステップS202に戻って、全ての部品P(1)~P(4)について軌道が算出されるまで、ステップS202~S208が繰り返し実行される。一方、完了している場合(ステップS207で「YES」の場合)には、軌道シミュレーションが終了する。こうして、部品P(1)~P(4)、すなわち部品Pa~Pdそれぞれについて、ハンド25の運搬軌道が算出される。
 なお、ロボットプログラム作成装置100は、上述した軌道シミュレーションをノンストップで実行して、算出したハンド25の運搬軌道を出力することができる。具体的には、主制御部110は、軌道シミュレーションを開始するための開始ボタンをディスプレイ150に表示する。そして、初期設定(ステップS100)が完了した後にユーザが開始ボタンを選択(マウスによるクリックあるいはタッチパネルをタッチ)すると、ロボットプログラム作成装置100が軌道シミュレーション(ステップS200)を開始する。開始された軌道シミュレーションは、全ての部品Pa~Pdについて運搬軌道を算出し終えるまで中断することなく実行される。こうして、軌道シミュレーションは、ユーザによる操作を要することなく、その開始から終了までをノンストップで実行することができる。
 軌道シミュレーションが終了すると、軌道演算部111は、主制御部110に構成されたプログラム作成部112に、算出した運搬軌道を出力する。そして、プログラム作成部112が図6に示したステップS300を実行する。具体的には、プログラム作成部112は、部品Pa~Pdそれぞれについて生成された軌道を通ってハンド25が当該部品Pa~Pdを運搬するようにロボット2を制御する運搬プログラムを、部品Pa~Pd毎に生成する。
 ちなみに、実際の組立作業では、部品Pを運搬する以外の目的で、部品Pの姿勢等を調整する必要が生じることがある。例えばネジ等の部品は、ネジ止めを行う方向に合わせてその姿勢を調整する必要がある。このような場合には、運搬途中において部品Pの姿勢を調整するといったことが行われる。そこで、プログラム作成部112は、このような姿勢調整を行う姿勢調整プログラムも作成する。
 さらに、実際の作業空間では、組立前において部品Pが決められた初期位置から多少ずれて配置されることがある。このような場合、初期位置からずれた部品Pを適切に把持するためには、部品Pa~Pdの実際の位置をカメラで認識した結果に基づいて、ハンド25の位置を補正するといったことが行われる。そこで、プログラム作成部112は、このような位置補正を行う位置補正プログラムも作成する。そして、プログラム作成部112は、運搬プログラム、姿勢調整プログラムおよび位置補正プログラムを組み合わせて、ロボットプログラム4を作成する。こうして、ロボットプログラム4の作成が終了する。
 この際、ロボットプログラム作成装置100が作成したロボットプログラム4は、シミュレータ400によって検証することができる。具体的には、シミュレータ400は、パーソナルコンピュータ等で構成されており、ロボットプログラム4に従ってロボット2を動作させたシミュレーションの結果を出力することができる。したがって、ユーザは、このシミュレーション結果に基づいて、ロボットプログラム4の適否を判断できる。
 以上に説明したように、この実施形態では、複数の部品Pのうち運搬対象となる運搬対象部品P(n)を運搬前の位置で掴んで運搬後の位置まで運搬する運搬作業を実行するハンド25の運搬軌道が算出される。より詳しくは、運搬対象部品P(n)に対して運搬作業を実行するにあたって障害物となる部品Pの配置を示す障害物配置情報Ioに基づいて、障害物との衝突を回避しつつ複数の部品Pに対して順番に運搬作業を実行するハンド25の動作がシミュレーションされて、ハンド25の運搬軌道が算出される(軌道シミュレーション)。ただし、複数の部品Pを順番に運搬する場合においては、障害物の配置状況が変化する中で、ハンド25の運搬軌道を求める必要がある。これに対して、この実施形態では、運搬作業によって生じる部品Pの配置の変化に応じて障害物配置情報Ioを更新しつつ、軌道シミュレーションが実行されて、ハンド25の運搬軌道が算出される。これによって、障害物の配置状況が変化する中で、障害物との衝突を回避しつつ各部品Pを運搬するハンド25の軌跡を適切に算出することが可能となっている。
 また、この実施形態では、軌道シミュレーションにおける運搬作業の完了の度に、運搬作業により運搬された部品P(n)の運搬後の配置が障害物配置情報Ioに登録される。このような構成では、運搬作業によって運搬された部品配置の変化を障害物配置情報Ioに的確に反映して、運搬作業による運搬後の部品Pとの衝突を確実に回避可能なハンド25の運搬軌道を適切に算出することができる。
 また、この実施形態では、軌道シミュレーションにおける各運搬作業の開始の前に運搬前の位置にある運搬対象部品P(n)以外の部品Pの配置が、障害物配置情報Ioに登録される。このような構成では、運搬後の部品Pのみならず運搬前の部品Pとの衝突も確実に回避可能なハンド25の運搬軌道を適切に算出することができる。
 ちなみに、複数の部品Pに対して順番に運搬作業を行う構成で上記のように運搬前の部品Pの配置を障害物配置情報Ioに登録する場合、軌道シミュレーションにおいて運搬作業の対象となる運搬前の部品P(n)(運搬対象部品)は先の部品Pに対する運搬作業の開始前に障害物配置情報Ioに登録されている。そこで、この実施形態では、軌道シミュレーションにおいて運搬前の部品P(n)に対して運搬作業を開始するにあたっては、この運搬作業の対象となる運搬前の部品P(n)(運搬対象部品)が障害物配置情報Ioから外される。すなわち、軌道シミュレーションにおける各運搬作業の開始の前に運搬前の運搬対象部品P(n)の配置が障害物配置情報Ioから削除される。これによって、運搬作業による運搬の前後で変化する部品Pの配置を的確に障害物配置情報Ioに反映させつつ、ハンド25の運搬軌道を算出することができる。
 このように、上記実施形態では、ロボットプログラム作成装置100が本発明の「把持機構の軌道生成装置」あるいは「ロボットプログラム作成装置」の一例に相当し、作成プログラム200が本発明の「把持機構の軌道生成プログラム」の一例に相当し、記録媒体300が本発明の「記録媒体」の一例に相当する。また、記憶部130が本発明の「記憶手段」の一例に相当し、軌道演算部111が本発明の「軌道演算手段」の一例に相当し、プログラム作成部112が本発明の「プログラム作成手段」の一例に相当し、障害物配置情報Ioが本発明の「障害物配置情報」の一例に相当し、部品Pが本発明の「ワーク」の一例に相当し、ハンド25が本発明の「把持機構」の一例に相当し、ステップS200が本発明の「軌道シミュレーション」の一例に相当し、ロボットプログラム作成装置100が本発明の「コンピュータ」の一例に相当する。
 なお、本発明は上記した実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて上述したもの以外に種々の変更を行うことが可能である。そこで、障害物配置情報Ioに登録する内容を上記のものから適宜変更しても構わない。例えば上記実施形態の軌道シミュレーションでは、運搬対象部品P(n)以外の全部品Pが障害物配置情報Ioに登録されていた。しかしながら、運搬対象部品P(n)の運搬作業において衝突を起こす可能性が低い部品P、具体的には所定の閾値よりも高さの低い部品Pなどについては、障害物配置情報Ioに登録しないように構成することもできる。
 また、障害物配置情報Ioを更新するタイミングや、更新する内容についても、適宜変更することができる。
 また、上記実施形態では、ユーザによる開始ボタンの選択をきっかけに軌道シミュレーションが開始すると説明した。しかしながら、ロボットプログラム作成装置100の主制御部100が初期設定の完了を検知して自動的に軌道シミュレーションを開始するように構成しても良い。
 また、上記実施形態では、ハンド25のTCP6が運搬対象である部品P(n)の運搬前基準点9から運搬後基準点8まで移動するように、ハンド25の運搬軌道が算出されていた。しかしながら、ハンド25の運搬軌道を算出するための具体的手法はこれに限られず、適宜変更しても構わない。
 また、軌道演算部111が生成した軌道をディスプレイ150(軌道表示部)に表示するように、ロボットプログラム作成装置100を構成しても良い。このような構成では、ユーザは、生成された軌道をディスプレイ150で確認しながらその適否を判断でき、ユーザにとっての操作性が向上する。さらに、この際、ディスプレイ150には、軌道を移動するハンド25の様子を動画で表示しても構わない。
 また、上記実施形態においてハンド25の軌道生成のために設定された条件についても適宜変更可能である。具体的には、上記条件のうち、アプローチ方向やハンド25の姿勢に関する条件については、適宜削除しても構わない。あるいは、上記条件以外の条件をさらに満たすように、ハンド25の軌道を生成することも可能である。
 また、ロボットプログラム作成装置100に対して、各種の機能を追加するような変形も可能である。具体例を挙げれば、上記のシミュレータ400が有するシミュレーション機能を、ロボットプログラム作成装置100に持たせても良い。
 また、上記実施形態で示した例では、ハンド25が有する複数のフィンガーの略中心にTCP6が設定されていた。しかしながら、TCP6の設定箇所は、適宜変更しても構わない。
 また、上記実施形態では、運搬前・運搬後基準点9、8、ハンド25の姿勢(Rx、Ry、Rz)およびアプローチ方向(Dx、Dy、Dz)等の設定は、ユーザによって実行されていた。しかしながら、これらの設定を例えば主制御部110が自動的に行うように構成しても良い。
 また、ハンド25により組み立てる部品Pの形状、個数および組立態様等が上記の例に限られないことは、言うまでもない。
 また、上記実施形態では、把持機構の一例として、対象物(部品P)を掴むことで把持動作を実行するハンド25が挙げられていた。しかしながら、把持機構の具体的構成はこれに限られず、例えば対象物を吸着して把持するものであっても良い。
 この発明は、ワークを運搬する把持機構の軌道を求める技術全般に対して適用可能であり、特に、部品をロボットのハンドで運搬して組み立てる技術に好適に適用可能である。
 100…ロボットプログラム作成装置
 110…主制御部
 111…軌道演算部
 112…プログラム作成部
 120…入出力部
 130…記憶部
 140…入力機器
 150…ディスプレイ
 200…作成プログラム
 300…記録媒体
 25…ハンド(把持機構)
 4…ロボットプログラム
 6…TCP
 7…TCP
 8a,8b,8c,8d…運搬後基準点
 9a,9b,9c,9d…運搬前基準点
 Io…障害物配置情報
 Pa,Pb,Pc,Pd,P…部品(ワーク)
 P(1),P(2),P(3),P(4),P(n)…部品(ワーク)

Claims (8)

  1.  複数のワークのうち運搬対象となる運搬対象ワークを運搬前の位置で掴んで運搬後の位置まで運搬する運搬作業を把持機構が実行するにあたって障害物となる前記ワークの配置を示す障害物配置情報を記憶する記憶手段と、
     前記障害物との衝突を回避しつつ前記複数のワークに対して順番に前記運搬作業を実行する前記把持機構の動作を前記障害物配置情報に基づいてシミュレーションして前記把持機構の運搬軌道を算出する軌道シミュレーションを、前記運搬作業によって生じる前記ワークの配置の変化に応じて前記障害物配置情報を更新しつつ実行する軌道演算手段と
    を備えたことを特徴とする把持機構の軌道生成装置。
  2.  前記軌道演算手段は、前記軌道シミュレーションにおける前記運搬作業の完了の度に、前記運搬作業により運搬された前記ワークの運搬後の配置を前記障害物配置情報に登録する請求項1に記載の把持機構の軌道生成装置。
  3.  前記軌道演算手段は、前記軌道シミュレーションにおける前記各運搬作業の開始の前に運搬前の位置にある前記運搬対象ワーク以外の前記ワークの配置を前記障害物配置情報に登録する請求項1または2に記載の把持機構の軌道生成装置。
  4.  前記軌道演算手段は、前記軌道シミュレーションにおける前記各運搬作業の開始の前に運搬前の前記運搬対象ワークの配置を前記障害物配置情報から削除する請求項3に記載の把持機構の軌道生成装置。
  5.  複数のワークのうち運搬対象となる運搬対象ワークを運搬前の位置で掴んで運搬後の位置まで運搬する運搬作業を把持機構が実行するにあたって障害物となる前記ワークの配置を示す障害物配置情報に基づいて、前記障害物との衝突を回避しつつ前記複数のワークに対して順番に前記運搬作業を実行する前記把持機構の動作をシミュレーションして前記把持機構の運搬軌道を算出する軌道シミュレーションを、前記運搬作業によって生じる前記ワークの配置の変化に応じて前記障害物配置情報を更新しつつ実行する把持機構の軌道生成方法。
  6.  複数のワークのうち運搬対象となる運搬対象ワークを運搬前の位置で掴んで運搬後の位置まで運搬する運搬作業を把持機構が実行するにあたって障害物となる前記ワークの配置を示す障害物配置情報を記憶する記憶手段、および
     前記障害物との衝突を回避しつつ前記複数のワークに対して順番に前記運搬作業を実行する前記把持機構の動作を前記障害物配置情報に基づいてシミュレーションして前記把持機構の運搬軌道を算出する軌道シミュレーションを、前記運搬作業によって生じる前記ワークの配置の変化に応じて前記障害物配置情報を更新しつつ実行する軌道演算手段
    としてコンピュータを機能させることを特徴とする把持機構の軌道生成プログラム。
  7.  請求項6に記載された把持機構の軌道生成プログラムがコンピュータにより読み出し可能に記録されたことを特徴とする記録媒体。
  8.  把持機構を用いてワークを運搬するロボットの制御をコンピュータに実行させるロボットプログラムを作成するロボットプログラム作成装置において、
     複数のワークのうち運搬対象となる運搬対象ワークを運搬前の位置で掴んで運搬後の位置まで運搬する運搬作業を把持機構が実行するにあたって障害物となる前記ワークの配置を示す障害物配置情報を記憶する記憶手段と、
     前記障害物との衝突を回避しつつ前記複数のワークに対して順番に前記運搬作業を実行する前記把持機構の動作を前記障害物配置情報に基づいてシミュレーションして前記把持機構の運搬軌道を算出する軌道シミュレーションを、前記運搬作業によって生じる前記ワークの配置の変化に応じて前記障害物配置情報を更新しつつ実行する軌道演算手段と、
     前記軌道演算手段が算出した前記運搬軌道を前記把持機構が通るように、前記ロボットプログラムを作成するプログラム作成手段と
    を備えたことを特徴とするロボットプログラム作成装置。
PCT/JP2013/064699 2012-11-22 2013-05-28 把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置 WO2014080652A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012256201A JP2014100780A (ja) 2012-11-22 2012-11-22 把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置
JP2012-256201 2012-11-22

Publications (1)

Publication Number Publication Date
WO2014080652A1 true WO2014080652A1 (ja) 2014-05-30

Family

ID=50775845

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/064699 WO2014080652A1 (ja) 2012-11-22 2013-05-28 把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置

Country Status (2)

Country Link
JP (1) JP2014100780A (ja)
WO (1) WO2014080652A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016132521A1 (ja) * 2015-02-20 2016-08-25 株式会社日立製作所 教示データ生成装置
CN113334395A (zh) * 2021-08-09 2021-09-03 常州唯实智能物联创新中心有限公司 多夹具的机械臂无序抓取方法及系统

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6450726B2 (ja) 2016-10-26 2019-01-09 ファナック株式会社 ロボットの動作をシミュレーションするシミュレーション装置、およびシミュレーション方法
JP6444957B2 (ja) * 2016-10-27 2018-12-26 ファナック株式会社 ロボットシステムの動作のシミュレーションを行うシミュレーション装置、シミュレーション方法、およびコンピュータプログラムを記録する記録媒体
JP7074386B1 (ja) * 2021-01-28 2022-05-24 KiQ Robotics株式会社 ロボットシステム、把持制御方法、把持制御プログラム、及び、記録媒体

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0281102A (ja) * 1988-09-16 1990-03-22 Sanyo Electric Co Ltd 把持ロボットの行動計画方法
JPH05127718A (ja) * 1991-11-08 1993-05-25 Fujitsu Ltd マニピユレータの手先軌道自動生成装置
JPH0778017A (ja) * 1993-06-30 1995-03-20 Kobe Steel Ltd 動作物体間の干渉チェック方法及びその装置
JPH08108383A (ja) * 1994-10-05 1996-04-30 Fujitsu Ltd マニピュレータ制御装置
JPH10128686A (ja) * 1996-10-30 1998-05-19 Nippon Telegr & Teleph Corp <Ntt> ロボットマニピュレータの制御方法およびロボットマニピュレータの制御装置
JPH10312208A (ja) * 1997-03-13 1998-11-24 Fujitsu Ltd 分解経路生成装置、組立経路生成装置、および機械系設計支援システム
JPH11175572A (ja) * 1997-12-15 1999-07-02 Hitachi Information Systems Ltd レイアウト部品の干渉制御システム及びそれに用いる記憶媒体
JP2003150220A (ja) * 2001-11-12 2003-05-23 Fanuc Ltd シミュレーション装置
WO2004085120A1 (ja) * 2003-03-25 2004-10-07 Rorze Corporation ロボットシミュレーション装置、および、シミュレーションプログラム
JP2009274148A (ja) * 2008-05-12 2009-11-26 Kanto Auto Works Ltd シミュレーション装置
US20110196533A1 (en) * 2010-02-10 2011-08-11 Kuka Roboter Gmbh Method For Collision-Free Path Planning Of An Industrial Robot

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0281102A (ja) * 1988-09-16 1990-03-22 Sanyo Electric Co Ltd 把持ロボットの行動計画方法
JPH05127718A (ja) * 1991-11-08 1993-05-25 Fujitsu Ltd マニピユレータの手先軌道自動生成装置
JPH0778017A (ja) * 1993-06-30 1995-03-20 Kobe Steel Ltd 動作物体間の干渉チェック方法及びその装置
JPH08108383A (ja) * 1994-10-05 1996-04-30 Fujitsu Ltd マニピュレータ制御装置
JPH10128686A (ja) * 1996-10-30 1998-05-19 Nippon Telegr & Teleph Corp <Ntt> ロボットマニピュレータの制御方法およびロボットマニピュレータの制御装置
JPH10312208A (ja) * 1997-03-13 1998-11-24 Fujitsu Ltd 分解経路生成装置、組立経路生成装置、および機械系設計支援システム
JPH11175572A (ja) * 1997-12-15 1999-07-02 Hitachi Information Systems Ltd レイアウト部品の干渉制御システム及びそれに用いる記憶媒体
JP2003150220A (ja) * 2001-11-12 2003-05-23 Fanuc Ltd シミュレーション装置
WO2004085120A1 (ja) * 2003-03-25 2004-10-07 Rorze Corporation ロボットシミュレーション装置、および、シミュレーションプログラム
JP2009274148A (ja) * 2008-05-12 2009-11-26 Kanto Auto Works Ltd シミュレーション装置
US20110196533A1 (en) * 2010-02-10 2011-08-11 Kuka Roboter Gmbh Method For Collision-Free Path Planning Of An Industrial Robot

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016132521A1 (ja) * 2015-02-20 2016-08-25 株式会社日立製作所 教示データ生成装置
CN113334395A (zh) * 2021-08-09 2021-09-03 常州唯实智能物联创新中心有限公司 多夹具的机械臂无序抓取方法及系统
CN113334395B (zh) * 2021-08-09 2021-11-26 常州唯实智能物联创新中心有限公司 多夹具的机械臂无序抓取方法及系统

Also Published As

Publication number Publication date
JP2014100780A (ja) 2014-06-05

Similar Documents

Publication Publication Date Title
WO2014080652A1 (ja) 把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置
US10525594B2 (en) Teaching system, robot system, and teaching method
EP3166084B1 (en) Method and system for determining a configuration of a virtual robot in a virtual environment
CN108000523B (zh) 模拟机器人系统的动作的模拟装置、模拟方法及记录介质
KR102609030B1 (ko) 로봇 제어 방법 및 장치
EP2923806A1 (en) Robot control device, robot, robotic system, teaching method, and program
JP2017097426A (ja) シミュレーション装置、シミュレーション方法、およびシミュレーションプログラム
JP2011048621A (ja) ロボットのオフライン教示方法
JP7246267B2 (ja) 組立計画装置、組立計画方法、及び組立計画プログラム
WO2004085120A1 (ja) ロボットシミュレーション装置、および、シミュレーションプログラム
WO2013175666A1 (ja) 把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置
US20200246975A1 (en) Method and system for teaching a robot in reaching a given target in robot manufacturing
CN114080590A (zh) 使用先进扫描技术的机器人料箱拾取系统和方法
JP6387599B2 (ja) ロボット、ロボットシステム、制御装置及び制御方法
Gong et al. Projection-based augmented reality interface for robot grasping tasks
JP2019188545A (ja) ロボット制御装置
WO2016132521A1 (ja) 教示データ生成装置
WO2021250923A1 (ja) ロボットシステム、制御装置、及び制御方法
CN115008439A (zh) 信息处理设备和方法、机器人系统、产品制造方法
JP2018118330A (ja) 演算装置、演算方法、演算プログラムおよびロボットシステム
WO2018180298A1 (ja) ロボット教示装置、ロボット教示装置の制御方法及びロボット教示プログラム
WO2018180300A1 (ja) ロボット作業管理システム、ロボット作業管理プログラム
JP2015116631A (ja) 制御装置、ロボット、制御方法及びロボットシステム
WO2022254538A1 (ja) ロボットシミュレーション装置
EP4102423A1 (en) Automatic generation of bill of process from digital twin using exploratory simulation

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: 13856691

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13856691

Country of ref document: EP

Kind code of ref document: A1