WO2016151668A1 - ティーチング装置及び制御情報の生成方法 - Google Patents

ティーチング装置及び制御情報の生成方法 Download PDF

Info

Publication number
WO2016151668A1
WO2016151668A1 PCT/JP2015/058427 JP2015058427W WO2016151668A1 WO 2016151668 A1 WO2016151668 A1 WO 2016151668A1 JP 2015058427 W JP2015058427 W JP 2015058427W WO 2016151668 A1 WO2016151668 A1 WO 2016151668A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
information
marker
work
movement
Prior art date
Application number
PCT/JP2015/058427
Other languages
English (en)
French (fr)
Inventor
政利 藤田
児玉 誠吾
Original Assignee
富士機械製造株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 富士機械製造株式会社 filed Critical 富士機械製造株式会社
Priority to JP2017507137A priority Critical patent/JP6499273B2/ja
Priority to PCT/JP2015/058427 priority patent/WO2016151668A1/ja
Priority to EP15886225.0A priority patent/EP3272473B1/en
Priority to US15/556,185 priority patent/US10754307B2/en
Publication of WO2016151668A1 publication Critical patent/WO2016151668A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/402Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for positioning, e.g. centring a tool relative to a hole in the workpiece, additional detection means to correct position
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/423Teaching successive positions by walk-through, i.e. the tool head or end effector being grasped and guided directly, with or without servo-assistance, to follow a path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33321Observation learning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36442Automatically teaching, teach by showing
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36453Handheld tool like probe
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36494Record position and inclination of tool, wrist
    • 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/40391Human to robot skill transfer
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/02Arm motion controller
    • Y10S901/03Teaching system

Definitions

  • the present invention relates to a teaching device for teaching an operation to a robot and a method for generating control information for controlling the robot.
  • Some industrial robots for example, robot arms, include a so-called parallel link mechanism that supports one end effector by a plurality of arm units arranged in parallel, or a plurality of arm units such as an articulated robot in one direction.
  • Patent Document 1 there is a teaching device that simulates the work performed by the robot arm, acquires the motion of the simulated person by motion capture, and teaches the robot arm (for example, Patent Document 1).
  • Patent Literature 1 when an operator operates the measuring device (in the literature, “motion capture”) while wearing the hand, based on the three-dimensional coordinate data transmitted from the measuring device, The position of the measuring device is sampled at a predetermined sampling interval.
  • the teaching device calculates the movement position, movement speed, and the like based on the sampled data, and controls the arm unit to move the calculated movement position at the movement speed.
  • the present invention has been made in view of the above-described problems, and an object of the present invention is to provide a teaching apparatus and a control information generation method that can teach not only moving work but also finer work contents.
  • a teaching device that generates control information for controlling the operation of a robot including a moving unit and a working unit provided in the moving unit.
  • a jig having a position marker portion indicating the position of the moving portion, a detection portion for detecting a position marker portion that moves as the jig moves, and work information related to work performed by the work portion at the work position.
  • Position information generation processing for generating position information of dimensional coordinates, movement information generation processing for generating movement information related to the moving direction and moving speed of the position marker portion based on the position information, and position information Moving the moving portion in accordance with the fine movement information, and characterized by executing a control information generation process of generating control information of a series of operations for the work to the work unit in accordance with working information.
  • the jig includes a movable portion, a drive portion that drives the movable portion, and a marker portion for movable portion that indicates the position of the movable portion.
  • the processing unit generates position information of the movable part marker unit that moves as the movable unit operates based on the drive of the driving unit as the position information generation process.
  • the processing unit performs the work by the working unit after moving the moving unit in the control information generation process.
  • Control information for correcting the position of the working part at the work position is added as control information to be executed before the operation.
  • the processing unit includes a plurality of feature points from the generated position information in the position information generation process. And a correction process for approximating position information between feature points is performed.
  • the processing unit performs position information generation processing based on the detection data based on the position of the position marker unit. And the position of the sampling point is generated as position information.
  • the processing unit includes adjacent sampling points at a plurality of sampling points generated by the position information generation process.
  • the moving direction is detected based on the positional relationship between them, and the moving speed is detected based on the distance between adjacent sampling points and the sampling period.
  • the processing unit moves The position information is corrected when the speed exceeds a predetermined speed and at least one of the cases where the acceleration at the moving speed exceeds the predetermined acceleration.
  • the teaching device according to claim 8 is the teaching device according to any one of claims 1 to 7, further comprising a reference marker portion provided at a position serving as a reference for the operation of the robot.
  • the reference marker unit is detected, and the processing unit generates a relative position of the position marker unit with respect to the reference marker unit as position information in the position information generation process.
  • the robot includes a serial link mechanism as a drive mechanism of the moving unit.
  • a control information generation method generates control information for controlling an operation of a robot including a moving unit and a working unit provided in the moving unit.
  • a method comprising a jig having a position marker portion indicating the position of the moving portion, a detecting portion for detecting a position marker portion that moves with the movement of the jig, and work performed by the working portion at the work position.
  • a position information generating step for generating position information of three-dimensional coordinates of the position marker unit based on detection data obtained by detecting the position marker unit with respect to a teaching device provided with an input unit for inputting work information; Based on the position information, a movement information generation step for generating movement information related to the movement direction and movement speed of the position marker section, and the movement section is moved according to the position information and movement information. And wherein the executing and a control information generating step processing for generating control information of a series of operations for the work to the work unit in accordance with working information.
  • control information for controlling a robot including a moving unit and a working unit is generated.
  • the jig provided with the position marker portion is used as the detected object, so that it is not necessary to use the hand of the person wearing the measuring device.
  • a detection method of the position marker part for example, an optical motion capture that irradiates light of a specific wavelength to the position marker part and calculates position information and the like from imaging data obtained by imaging the reflected light can be used.
  • the detection method of the position marker portion is not limited to this, and other methods, for example, image processing for detecting the shape of the position marker portion with respect to the imaging data may be executed, and the position may be detected from the execution result.
  • the teaching device inputs work information related to work performed by the working unit at the work position, for example, work such as pinching the work, gripping the work, irradiating with a laser, performing imaging, and picking up the work.
  • work information related to work performed by the working unit at the work position for example, work such as pinching the work, gripping the work, irradiating with a laser, performing imaging, and picking up the work.
  • An input unit is provided. For this reason, the user can set the detailed work of the work unit to the teaching device by operating the input unit at an appropriate timing and inputting the work content desired to be performed by the robot as work information. It becomes.
  • the processing unit moves the moving unit according to the position information and movement information generated from the detection data, and generates a series of work control information that causes the working unit to work according to the work information. That is, the processing unit can generate control information by linking movement information and work information and the like in the control information generation process. Accordingly, in the teaching device, for example, correction processing for adjusting the work position of the work unit is included in a series of work processes in accordance with the movement of the moving unit so as to be performed at appropriate timing and work content. It becomes possible.
  • the jig includes a drive unit that drives the movable unit provided with the movable unit marker.
  • the processing unit performs motion capture of the movable unit marker of the movable unit that is movable in accordance with the driving of the driving unit.
  • the accuracy of movement of the position marker portion depends on the precision of the person operating the jig. For this reason, in the teaching device according to claim 3 of the present application, when higher work accuracy is required, position correction processing is performed before work is performed at the work position, and the final work position is corrected. Thus, it is possible to cope with work requiring high accuracy.
  • the processing unit performs extraction of feature points and correction processing for approximating position information between the feature points.
  • the feature point extraction for example, a point whose movement direction is changed by a predetermined angle or more is extracted as a feature point.
  • the feature points are extracted by, for example, extracting points at fixed intervals from the plurality of pieces of position information as feature points.
  • the processing unit sets the extracted feature points as, for example, the starting point and the ending point of the operation of the robot, and corrects the positional information between the feature points so that the robot can move from the starting point toward the ending point. For example, as a correction process, when a point whose position is significantly shifted due to external noise is between feature points, the position information related to the point is discarded as unnecessary data. Alternatively, as correction processing, position information between feature points is approximated by a straight line or a curve connecting the feature points. As a result, the robot can be operated more smoothly based on the generated control information, and wasteful operations can be omitted to improve work efficiency. In addition, it is possible to correct a positional information shift caused by shaking of a person's hand when the person operates the jig.
  • the processing unit generates position information from the detection data at a predetermined sampling period. For this reason, in the teaching apparatus, it is possible to adjust the accuracy with which the processing unit detects the position of the position marker unit by changing the time of the sampling cycle.
  • the processing unit detects the moving direction and the moving speed based on the position information of the adjacent sampling points. For this reason, in the teaching apparatus, it is possible to adjust the accuracy with which the processing unit detects the moving direction and the moving speed of the position marker unit by changing the time of the sampling cycle.
  • position information is generated with reference to the reference marker portion.
  • the robot can be accurately controlled by matching the position of the reference marker portion with the reference in the actual work area.
  • the reference in the work area here is, for example, an XY robot, a position used as a reference when determining the positions in the X direction and the Y direction.
  • control information can be captured and used by matching the position of the reference marker portion with the reference position of the tool. It becomes easy. Further, for example, by generating the control information of the two robots separately using the same reference marker part and simulating the position of the reference marker part of the two control information according to the reference position of the tool, 2 It is possible to confirm whether the operations of the two robots do not interfere with each other.
  • the invention according to the present application is not limited to the teaching device, and can be implemented as an invention of a method for generating control information by the teaching device.
  • FIG. 1 schematically shows a configuration of a main part of the teaching device 10 of the present embodiment.
  • the teaching device 10 includes a plurality of cameras 13 (only one is shown in FIG. 1), two jigs 15 (only one is shown in FIG. 1), and a control information generating device 17 by optical motion capture. Prepare.
  • the teaching device 10 images each movement of the jig 15 with a plurality of cameras 13, and uses the control information generating device 17 to obtain control information D5 for controlling the robot arms 101 and 103 shown in FIG. Generate.
  • each of the plurality of cameras 13 is attached to a frame portion 23 in which a plurality of (12 in this embodiment) pipes 21 are assembled in a rectangular parallelepiped shape.
  • Each of the plurality of pipes 21 is formed with the same length, and any three of the twelve pipes 21 are connected to each other by the connecting member 25 at the corner portion of the rectangular parallelepiped frame portion 23. It is connected.
  • Each connecting member 25 inserts and holds the end portions 21A of the three pipes 21, and fixes the three pipes 21 so as to be orthogonal to each other.
  • the direction orthogonal to the placement surface of the table 19 on which the frame portion 23 is arranged is the vertical direction, the direction orthogonal to the vertical direction and going forward and backward in FIG.
  • the direction orthogonal to the front-rear direction is referred to as the left-right direction and will be described.
  • a total of six cameras 13 are attached to the frame portion 23.
  • the six cameras will be collectively referred to as “camera 13”.
  • four cameras 13 ⁇ / b> A, 13 ⁇ / b> B, 13 ⁇ / b> C, and 13 ⁇ / b> D are attached to each of the four pipes 21 on the upper side of the frame portion 23 by a fixing member 27.
  • Each of the four cameras 13A to 13D is attached to a position close to each of the upper four connecting members 25.
  • the fixing member 27 fixes each of the cameras 13A to 13D so that the imaging direction faces the central portion of the frame portion 23.
  • the remaining two cameras 13E and 13F are connected to each of a pair of pipes 21 that face each other diagonally among the four pipes 21 provided along the vertical direction.
  • the fixing member 27 is attached.
  • the cameras 13 ⁇ / b> E and 13 ⁇ / b> F are attached to a lower end portion of the pipe 21 on the side of the base 19, and are fixed by a fixing member 27 so that the imaging direction faces the central portion of the frame portion 23.
  • These six cameras 13 move the tracking region R1, that is, the jig 15 and the marker unit 43, in the cube-shaped region surrounded by the frame unit 23 in order to photograph the marker unit 43 of the jig 15 to be described later. Is set as an area for tracking.
  • the six cameras 13 are set so that the imaging ranges overlap each other in order to track the marker unit 43, for example, and the tracking region R1 can be imaged three-dimensionally.
  • the shape of the frame part 23 shown in FIG. 2, the number of cameras 13, the attachment position of the camera 13, etc. are examples, and can be changed suitably.
  • each of the cameras 13 includes an image sensor 31 and illumination devices 33 and 34.
  • the image sensor 31 is, for example, a CCD image sensor or a CMOS image sensor.
  • the illumination devices 33 and 34 are, for example, LED illuminations, and irradiate light having different wavelengths. This is two types of light corresponding to the marker portions 43A and 43B provided in each of two jigs 15A and 15B (see FIG. 4) described later.
  • the camera 13 receives reflected light reflected from the marker units 43 ⁇ / b> A and 43 ⁇ / b> B by the imaging device 31 while being irradiated from the illumination devices 33 and 34.
  • the camera 13 outputs the captured data as imaging data D1 to the teaching device 10 via the video cable 35.
  • the camera 13 has an optical filter corresponding to the wavelength of light emitted from the illumination devices 33 and 34 attached to the light entrance of the image sensor 31 so that the reflected light of the marker units 43A and 43B can be easily detected. Also good.
  • a jig 15 shown in FIG. 1 is a detection target that simulates the robot arms 101 and 103 of the industrial robot 100 shown in FIG. 3, and includes a main body portion 41, a marker portion 43, an end effector 45, and a gripping portion 47.
  • FIG. 3 schematically shows the configuration of the industrial robot 100.
  • the robot arm 101 is an articulated robot having a serial link mechanism that connects two arm portions 105 (an example of a moving unit) in one direction and supports a hand unit 109 (an example of a working unit) that is an end effector at a tip portion. It is.
  • the robot arm 103 connects the two arm portions 107 in one direction and supports the hand portion 111 at the tip portion.
  • the industrial robot 100 drives the robot arms 101 and 103 to attach the workpieces W1 and W2 sandwiched between the hand units 109 and 111 to the substrate B.
  • the workpieces W1 and W2 are, for example, electronic parts, screws, and the like.
  • the teaching device 10 of the present embodiment generates control information D5 for operating the two robot arms 101 and 103 in a coordinated manner. Therefore, two types of jigs 15A and 15B (see FIG. 4) are used, and motion capture is performed assuming that the jigs 15A and 15B are different robot arms 101 and 103, respectively.
  • the two jigs 15 when it is necessary to distinguish between the two types of jigs 15 or the parts (marker parts 43 and the like) provided in the jigs 15, as shown in FIG. It will be described later with an alphabet. When there is no need to distinguish between them, the two jigs will be collectively referred to as “jigs 15”.
  • the marker part 43 is fixed to the outer peripheral part of the main body part 41.
  • the marker unit 43 forms a sphere and reflects light emitted from the illumination devices 33 and 34 of each camera 13.
  • the marker portion 43A provided in the jig 15A shown in FIG. 4 is made of a material having a reflection characteristic that reflects light of a specific wavelength irradiated by the illumination device 33.
  • the marker portion 43B provided on the other jig 15B is made of a material having a reflection characteristic that reflects light of a specific wavelength irradiated by the illumination device 34.
  • the end effector 45 has a shape simulating the hand portions 109 and 111 sandwiching the workpieces W1 and W2 of the robot arms 101 and 103 (see FIG. 3), and a pair of end portions bent in a direction approaching each other. It is comprised by the rod-shaped member.
  • a pair of end effector 45 is provided in the position which pinches the marker part 43, and the front-end
  • a movable portion marker portion 46 for tracking the movement of the end effector 45 is provided at the tip portion of each end effector 45.
  • the movable portion marker portions 46A and 46B are configured with mutually different reflection characteristics, and reflect the light emitted from each of the illumination devices 33 and 34 of the camera 13.
  • the control information generation device 17 can also acquire the position information D2 of the end effector 45 as in the case of the jig 15.
  • the camera 13 may include a dedicated illumination device that irradiates the end effector 45 with light separately from the illumination devices 33 and 34 used for the jig 15.
  • the main body 41 has an actuator 49 for opening and closing the end effector 45 built therein.
  • the main body 41 is attached with a tip end portion of a rod-shaped gripping portion 47 at a portion opposite to the marker portion 43 and the end effector 45.
  • the gripping portion 47 is a state in which the user hands the proximal end portion of the gripping portion 47 protruding out of the frame portion 23 in a state where the jig 15 is placed in the tracking region R1 (see FIG. 2) of the frame portion 23. It has a length that can be held by Thereby, the user can operate the jig 15 without putting a part of the body into the tracking region R1.
  • a driving switch 51 for driving or stopping the actuator 49 is provided at the base end portion of the gripping portion 47 opposite to the main body portion 41.
  • the drive switch 51 is connected to the actuator 49 by a connection line 53 disposed in the grip portion 47 and the main body portion 41.
  • the user holds the proximal end portion of the grip portion 47 and the jig 15 provided at the distal end portion from the start position within the tracking region R1 of the frame portion 23.
  • the robot arms 101 and 103 are moved to the work position where the hands W1 and W2 are clamped by the hand units 109 and 111, respectively.
  • the user turns on the drive switch 51 to close the distal end portion of the end effector 45.
  • control information D5 is control information D5 for controlling the hand units 109 and 111 of the industrial robot 100 shown in FIG.
  • the control information generation device 17 is, for example, a personal computer mainly composed of a CPU (Central Processing Unit) 61, and includes a conversion unit 63, a storage unit 65, an input unit 67, a display unit 69, and the like.
  • the control information generation device 17 inputs the imaging data D1 output from the camera 13 to the conversion unit 63 via the video cable 35 (see FIG. 2).
  • the conversion unit 63 arranges the imaging data D1 captured by the plurality of cameras 13 in time series, adds identification information of the camera 13, time information, and the like, and outputs them to the CPU 61.
  • the CPU 61 stores the imaging data D1 input from the conversion unit 63 in the storage unit 65.
  • the storage unit 65 includes a memory, a hard disk, and the like, and stores a control program D7, design information D6, and the like in addition to the imaging data D1.
  • the control program D7 is a program executed on the CPU 61.
  • the design information D6 is information related to the industrial robot 100 shown in FIG. 3, and is information such as the outer dimensions of the arm portions 105 and 107, the maximum moving speed of the arm portions 105 and 107, and the like.
  • the CPU 61 implements various processing modules of the position information generation unit 71, the movement information generation unit 73, and the control information generation unit 75 by reading and executing the control program D7 stored in the storage unit 65.
  • the position information generation unit 71 and the like are configured as software realized by the CPU 61 executing the control program D7, but may be configured as dedicated hardware.
  • the input unit 67 is an input device such as a keyboard or a mouse that receives input from the user.
  • the teaching device 10 of the present embodiment moves the jig 15 to the working position, and then opens and closes the end effector 45 by operating the drive switch 51, and the hand portions 109 and 111 (see FIG. 3). ) Can be taught to the teaching device 10 to generate the work information D3.
  • the user can instruct the teaching device 10 to generate other work information D3 by operating the input unit 67 after moving the jig 15 to the work position. It has become.
  • the user operates the input unit 67 to suck the workpieces W1 and W2, to irradiate a part of the workpieces W1 and W2 with a laser, and to apply an adhesive to the workpieces W1 and W2.
  • Etc. can be entered.
  • the teaching device 10 can generate a series of work control information D5 in which the position information D2 of the jig 15 and the work information D3 are linked.
  • the display unit 69 displays various information such as the progress in the process of generating the control information D5 and the result information after generation.
  • FIG. 4 schematically shows a state in which motion capture is performed.
  • supply devices 81 and 82 for supplying the workpieces W ⁇ b> 1 and W ⁇ b> 2 are arranged in the tracking region R ⁇ b> 1 of the frame portion 23.
  • the supply devices 81 and 82 are, for example, a tape feeder type supply device for feeding taped electronic components (workpieces) one by one to a supply position, or a plurality of trays in which electronic components are arranged at predetermined intervals.
  • a supply position marker portion 84 is provided at the supply position of the workpiece W2 of the supply device 81.
  • a supply position marker portion 85 is provided at the supply position of the workpiece W1 of the supply device 82.
  • the supply device 81 and the supply device 82 are arranged so that the supply positions (supply position marker portions 84 and 85) face each other in the front-rear direction.
  • a substrate 86 is disposed between the supply devices 81 and 82 in the front-rear direction.
  • the substrate 86 is formed in a rectangular shape, and is disposed horizontally such that the plane is along the front-rear direction and the left-right direction.
  • mounting position marker portions 88 are provided on the four corners of the substrate 86.
  • the mounting position marker portion 88 on which the jig 15A performs the mounting operation is referred to as a mounting position marker portion 88A in order to distinguish it from the other mounting position marker portions 88.
  • the mounting position marker portion 88 on which the jig 15B performs the mounting operation is referred to as a mounting position marker portion 88B in order to distinguish it from other mounting position marker portions 88.
  • the supply devices 81 and 82 and the substrate 86 described above may be actual devices or substrates, or may be members that simulate shapes. Further, three reference marker portions 91 are provided adjacent to each other at the center of the substrate 86.
  • the reference marker unit 91 is a position serving as a reference for the operation of the robot arms 101 and 103 (see FIG. 3).
  • the jig 15A teaches the work of picking up the workpiece W1 from the supply position of the supply device 82 (see FIG. 4) by the hand unit 109 of the robot arm 101 shown in FIG.
  • the user operates the jig 15A by holding the grip portion 47A, and moves the jig 15A from the start position shown in FIG. 4 to the supply position marker portion 85.
  • the user turns on the drive switch 51A to close the end effector 45A.
  • the user Before operating the drive switch 51A, the user operates the input unit 67 of the control information generation device 17 and inputs work information D3 indicating that the end effector 45A is operated.
  • the user moves the jig 15A from the supply position marker portion 85 to the position of the mounting position marker portion 88A. Then, at the position of the mounting position marker portion 88A, the user turns off the drive switch 51A to open the end effector 45A. Also in this case, the user operates the input unit 67 before operating the drive switch 51A, and inputs work information D3 indicating that the end effector 45A is operated.
  • the jig 15B teaches the work of picking up the workpiece W2 from the supply position of the supply device 81 (see FIG. 4) by the hand unit 111 of the robot arm 103 and mounting it on the substrate B. This operation is performed simultaneously with the operation of the robot arm 101 described above.
  • the user moves the jig 15B from the start position shown in FIG. 4 to the supply position marker section 84 as shown by the broken line arrow 95 in FIG. 4 to operate the jig 15B while holding the grip portion 47B.
  • the user inputs the work information D3 by the input unit 67 at the position of the supply position marker unit 84, the user turns on the drive switch 51B to close the end effector 45B.
  • the user moves the jig 15B from the supply position marker portion 84 to the position of the mounting position marker portion 88B. Then, after the user inputs the work information D3 with the input unit 67 at the position of the mounting position marker unit 88B, the user turns off the drive switch 51B to open the end effector 45B. Note that the user who operates the jig 15B may be a different user from the user who operates the jig 15A.
  • the control information generation device 17 generates the control information D5 by tracking the operation of the jigs 15A and 15B. More specifically, after the CPU 61 executes the control program D7 and starts processing, the user operates the input unit 67 at step 11 shown in FIG. 5 (hereinafter simply referred to as “S”). It is determined whether or not information D3 has been input.
  • the CPU 61 If the input work information D3 is information indicating that the end effector 45 is to be operated in S12 (S12: YES), the CPU 61 generates position information D2 and the like shown in S15 and subsequent steps, and the end effector 45A, Control information D5 corresponding to the position, inclination, movement direction, etc. of each of the movable portion marker portions 46A and 46B of 45B, that is, control information D5 for causing the hand portions 109 and 111 (see FIG. 3) to perform a desired operation is generated. To do. In the following description, a process of generating the control information D5 based mainly on the imaging data D1 obtained by imaging the marker portion 43 of the jig 15 will be described. Since the process of generating the control information D5 based on the imaging data D1 obtained by imaging the movable part marker unit 46 of the actuator 49 is the same as that of the marker unit 43, it is omitted as appropriate.
  • the CPU 61 executes a process of taking the imaging data D1 from the conversion unit 63 and storing it in the storage unit 65 (S15).
  • the CPU 61 of this embodiment processes the imaging data D1 of the camera 13 in real time so as to notify the user of errors detected during motion capture.
  • the CPU 61 may store all the imaging data D1 once in the storage unit 65 and process all the imaging data D1 collectively later.
  • the position information generating unit 71 is based on the identification information and time information of the camera 13 added to the imaging data D1 stored in the storage unit 65, and the marker units 43A and 43B attached to the jigs 15A and 15B.
  • the position of the three-dimensional coordinates for each photographing time is calculated (S17).
  • the position information generation unit 71 stores the calculated position information D2 in the storage unit 65.
  • the position information generation unit 71 performs labeling on the binarized imaging data D1, performs processing using an algorithm such as epipolar matching, and coordinates positions of the marker units 43A and 43B in the three-dimensional space. Is calculated.
  • the position information generation unit 71 calculates the position of the coordinates relative to the reference marker unit 91.
  • the position information generation unit 71 calculates the coordinate positions of the marker units 43 ⁇ / b> A and 43 ⁇ / b> B on the basis of the barycentric positions of the three reference marker units 91.
  • each of the marker portions 43A and 43B has a structure having different reflection characteristics according to the wavelength of light emitted from the illumination devices 33 and 34. For this reason, the position information generation unit 71 identifies the reflected light from the marker units 43A and 43B, for example, based on the difference in luminance, and calculates the coordinate position for each of the marker units 43A and 43B with respect to the imaging data D1. .
  • the processing method by which the position information generation unit 71 calculates the coordinate position (position information D2) is not particularly limited.
  • the position information D2 may be calculated by the principle of triangulation.
  • the position information generating unit 71 is the work information D3 indicating that the end effector 45 (drive switch 51) is operated in S12 (S12: YES), the position information generating unit 71 is for the movable unit as in the case of the marker unit 43.
  • the position information D2 is generated for the marker unit 46.
  • the position information generation unit 71 performs a process of displaying the position information D2 on the display unit 69 (S19). For example, as illustrated in FIG. 6, the position information generation unit 71 acquires sampling points SP1 and SP2 obtained by sampling the respective positions of the marker units 43A and 43B at predetermined time intervals as the position information D2. The position information generation unit 71 performs a process of displaying all the acquired sampling points SP1 and SP2 (position information D2) on the display unit 69 in real time. Thereby, the user can check the acquired position information D2 as appropriate by checking the display on the display unit 69 and determine whether or not it is appropriate.
  • the position information generation unit 71 may display only the feature points such as the start point, the end point, and the point where the moving direction changes by a predetermined angle or more without displaying all the sampling points SP1 and SP2.
  • a black circle sampling point SP1 shown in FIG. 6 corresponds to the marker portion 43A of the jig 15A.
  • a black square sampling point SP2 corresponds to the marker portion 43B of the jig 15B.
  • the position information generation unit 71 determines whether or not the distance between the marker units 43A and 43B is normal based on the sampling points SP1 and SP2 of the position information D2 (S21).
  • the two jigs 15A and 15B simulate the robot arms 101 and 103 shown in FIG. 3, but it is conceivable to reduce the outer shape of the actual object in consideration of operability by the user's hand. In this case, when the robot arms 101 and 103 are moved based on the control information D5 created by operating the jigs 15A and 15B, the arm portions 105 and 107 may collide and interfere with each other.
  • the position information generation unit 71 based on the design information D6 stored in the storage unit 65, the position information generation unit 71, for example, sets a distance corresponding to the dimension of the outer shape of the arm unit 105 from the center of the marker unit 43A to a distance that may cause a collision. Set as. Then, the position information generation unit 71 calculates the distance between the sampling points SP1 and SP2, and when it is determined that the calculated distance is equal to or less than the distance that may cause a collision (S21: YES), an error is displayed on the display unit 69. Is executed (S23).
  • the position information generation unit 71 may calculate and determine the distance between the sampling points SP1 and SP2 at the same time, for example. Alternatively, the position information generation unit 71 may calculate and determine the distance from one sampling point SP1 with respect to the sampling point SP2 within a predetermined time with reference to the time of the sampling point SP1.
  • the location information generation unit 71 After executing S23, the location information generation unit 71 temporarily stops the process until there is a response from the user to the error display, for example. Alternatively, when the predetermined time has elapsed, the position information generation unit 71 delivers necessary data and shifts the subject of processing to the movement information generation unit 73 (S25). If the position information generation unit 71 determines in S21 that the calculated distance is greater than the distance that may cause a collision (S21: NO), the position information generation unit 71 shifts the subject of processing to the movement information generation unit 73 (S25). .
  • the movement information generation unit 73 generates movement information D4 related to the movement of the marker units 43A and 43B based on the position information D2 stored in the storage unit 65 (S25).
  • the movement information generation unit 73 calculates physical quantities such as movement distance, movement direction, speed, acceleration, and angle from the position information D2 as movement information D4 of the marker units 43A and 43B.
  • the movement information generation unit 73 extracts feature points from a plurality of sampling points SP1 shown in FIG. Specifically, the movement information generation unit 73 extracts, for example, a sampling point SP1A corresponding to the movement start position of the jig 15A as a feature point as a feature point serving as a starting point. In addition, the movement information generation unit 73 greatly changes the movement direction at a point close to the supply position marker unit 85 at a point where the movement direction is changed by a predetermined angle or more from among the plurality of sampling points SP1. Sampling point SP1B is extracted as a feature point. This feature point determination may be made automatically by the movement information generation unit 73 based on the movement speed and movement direction, or may be instructed by the user operating the input unit 67.
  • the movement information generation unit 73 calculates the inclination from the coordinate position of the extracted feature points (sampling points SP1A, SP1B), and detects the movement direction of the marker unit 43A (the jig 15A). Or the movement information generation part 73 divides the distance of the extracted feature point by the time between feature points, for example, and detects the moving speed of the marker part 43A.
  • the movement information generation unit 73 may perform a correction process for approximating the position information D2 of the sampling point SP1 between the feature points. For example, the movement information generation unit 73 sets the extracted feature points (sampling points SP1A, SP1B) as the movement start point and end point, and moves the robot arm from the start point (sampling point SP1A) toward the end point (sampling point SP1B). The position information D2 of the sampling point SP1 between the feature points is corrected so that the arm part 105 of 101 (see FIG. 3) can move. For example, when the sampling point SP1 whose position is greatly shifted due to external noise is between the feature points, the movement information generation unit 73 discards the position information D2 related to the sampling point SP1 as unnecessary data. Alternatively, the movement information generation unit 73 approximates the position information D2 between feature points with a straight line connecting the feature points.
  • the movement information generation unit 73 may approximate the feature points with a curve. For example, among the plurality of sampling points SP2 shown in FIG. 6, the movement information generation unit 73 extracts sampling points SP2A and SP2B whose movement directions are changed by a predetermined angle or more as feature points. The movement between the two feature points (sampling points SP2A, SP2B) is curving while gradually changing the movement direction. In this case, for example, the movement information generation unit 73 approximates the position information D2 of the sampling point SP2 between the feature points (sampling points SP2A and SP2B) with a curve using the sampling point SP2A as a starting point and the sampling point SP2B as an end point. .
  • the movement information generation unit 73 is not limited to the method using the feature points described above, and may detect the movement direction or the like using another method.
  • the movement information generation unit 73 calculates the inclination from the coordinate position of the adjacent sampling point SP1 among the plurality of sampling points SP1 sampled by the position information generation unit 71, and the movement direction of the marker unit 43A (the jig 15A) May be detected.
  • the movement information generation unit 73 may detect the movement speed of the marker unit 43A by multiplying, for example, the distance between adjacent sampling points SP1 and the sampling period of the position information generation unit 71.
  • the information D2 is corrected, and the generation of the movement information D4 is executed again (S27).
  • the sampling point SP2C which is one of the plurality of sampling points SP2
  • the marker unit 43B is greatly curved and moved.
  • the movement information generation unit 73 uses, for example, the curvature connecting the sampling points SP2 (for example, between the sampling points SP2A and SP2B) based on the design information D6 stored in the storage unit 65 as the movement capability of the robot arm 103. If the curvature is larger than the curvature set accordingly, the position information D2 is corrected so as to have a movable curvature. Then, the movement information generation unit 73 generates movement information D4 again based on the corrected position information D2 (sampling point SP2).
  • the distance between the sampling points SP1C and SP1D which are two of the plurality of sampling points SP1 is greatly separated.
  • the moving speed of the calculation result increases. If this moving speed exceeds the moving ability of the actual robot arm 103 or if it is desired to exceed the safe moving speed, the robot arm 103 is controlled even if the control information D5 is generated as in the above-described curvature. It becomes difficult.
  • the movement information generation unit 73 determines that the movement speed calculated from the distance between the sampling points SP1C and SP1D based on the design information D6 stored in the storage unit 65 is the robot arm, for example. If it is larger than the maximum moving speed 103, the position information D2 is corrected so as to be a movable speed. Then, the movement information generation unit 73 generates the movement information D4 again based on the corrected position information D2 (sampling points SP1C, SP1D). When the movement information generation unit 73 corrects the sampling points SP1 and SP2 (position information D2) according to the curvature and the movement speed, the distance between the corrected sampling points SP1 and SP2 may cause the above-described collision. Correct so that it is more than a certain distance.
  • the CPU 61 inquires of the conversion unit 63 whether there is imaging data D1 that has not been captured (S29). When there is imaging data D1 that has not been captured (S29: NO), the CPU 61 executes the processing from S11 again.
  • the CPU 61 instructs the control information generation unit 75 to generate the control information D5.
  • the control information generation unit 75 moves the robot arms 101 and 103 based on the position information D2, the movement information D4, and the work information D3 stored in the storage unit 65, and operates the hand units 109 and 111 at the work position.
  • Control information D5 of a series of work to be generated is generated (S31).
  • the control information generation unit 75 allows the user to operate the input unit 67 after the unprocessed work information D3, for example, the jigs 15A and 15B reach the positions of the mounting position marker units 88A and 88B and finish the imaging. If there is work information D3 input in this way, it is preferable to process the work information D3 together.
  • control information generation part 75 produces
  • control information generation unit 75 moves the arm units 105 and 107 to a predetermined work position (such as the supply position marker unit 84 in FIG. 4), and then holds the workpieces W1 and W2 by the hand units 109 and 111. It becomes possible to generate control information D5 of a series of work to be performed.
  • control information generation unit 75 executes a process of adding the correction work to the control information D5 in S31. Specifically, for example, the control information generation unit 75 moves the arm units 105 and 107 to the supply positions of the supply devices 81 and 82 (positions of the supply position marker units 84 and 85), Before performing the clamping work of the workpieces W1 and W2 by 111, information for correcting an error between the supply position of the supply device 82 and the positions of the hand units 109 and 111 is added to the control information D5. For example, when a camera for imaging the substrate B or the like is mounted on the hand unit 109 of the robot arm 101, the supply position of the supply device 82 is imaged using the camera, and the hand unit 109 is based on the imaging data. A process of correcting the relative position error between the supply position and the supply position is added to the control information D5. In this way, the teaching device 10 can generate the control information D5 by executing motion capture.
  • the camera 13 is an example of a detection unit.
  • the marker unit 43 is an example of a position marker unit.
  • the end effector 45 is an example of a movable part.
  • the actuator 49 is an example of a drive unit.
  • the CPU 61 is an example of a processing unit.
  • the robot arms 101 and 103 are examples of robots.
  • the arm units 105 and 107 are an example of a moving unit.
  • the hand units 109 and 111 are examples of a working unit.
  • the process of S17 is an example of a position information generation process.
  • the process of S25 is an example of a movement information generation process.
  • the process of S31 is an example of a control information generation process.
  • the teaching device 10 generates control information D5 for controlling the robot arms 101 and 103 including the arm units 105 and 107 and the hand units 109 and 111 shown in FIG.
  • the teaching device 10 includes an input unit 67 for inputting work information D3 such as work for sandwiching the workpieces W1 and W2 performed by the hand units 109 and 111 at the work position.
  • work information D3 such as work for sandwiching the workpieces W1 and W2 performed by the hand units 109 and 111 at the work position.
  • the user performs the motion capture by moving the jig 15 provided with the marker unit 43
  • the user operates the input unit 67 at an appropriate timing and inputs the work content desired to be caused to the industrial robot 100 as the work information D3.
  • the teaching device 10 can generate a series of work control information D5 in which the position information D2 of the jig 15 and the work information D3 are linked.
  • the actuator 49 is driven when the drive switch 51 is operated.
  • the end effector 45 to which the movable portion marker portion 46 is attached is driven.
  • the control information generation device 17 tracks the operation of the movable portion marker unit 46 that is movable in accordance with the driving of the actuator 49 during motion capture. As a result, the user operates the end effector 45 by the actuator 49 at a predetermined work position, thereby more faithfully performing an operation of grasping the workpieces W1 and W2 or the like than when simulating with a human finger or the like. It can be reproduced.
  • the control information generation unit 75 moves the arm units 105 and 107 to the supply positions of the supply devices 81 and 82 (positions of the supply position marker units 84 and 85), and then the hand units 109, Before performing the clamping work of the workpieces W1 and W2 by 111, information for correcting an error between the supply position of the supply device 82 and the positions of the hand units 109 and 111 is added to the control information D5.
  • the control information generation unit 75 adds control information D5 to the control information D5 before performing work at the work position, so that control information that can be used for work that requires high accuracy. D5 can be generated.
  • the movement information generation unit 73 extracts feature points from the plurality of sampling points SP1 shown in FIG. 6, and from the coordinate positions of the extracted feature points (for example, sampling points SP1A and SP1B), The inclination between the feature points is calculated and the movement direction of the marker portion 43A (the jig 15A) is detected. Further, the movement information generation unit 73 performs a correction process for approximating the position information D2 of the sampling point SP1 between the feature points. As a result, the robot arms 101 and 103 can be operated more smoothly based on the generated control information D5, and wasteful operations can be omitted to improve work efficiency.
  • the movement information generation unit 73 has an inclination from the coordinate position of the adjacent sampling point SP1 among the plurality of sampling points SP1 sampled by the position information generation unit 71. It is possible to calculate and detect the moving direction of the marker portion 43A (the jig 15A). Alternatively, the movement information generation unit 73 may detect the movement speed of the marker unit 43A by multiplying, for example, the distance between adjacent sampling points SP1 and the sampling period of the position information generation unit 71. In such a configuration, it is possible to adjust the accuracy of detecting the position, moving direction, and moving speed of the marker unit 43 by changing the time of the sampling period.
  • the position information generation unit 71 calculates the relative coordinate positions of the marker units 43A and 43B with reference to the barycentric positions of the three reference marker units 91.
  • the industrial robot 100 is configured by matching the position of the center of gravity of the reference marker unit 91 with the reference in the actual work area, for example, the center position of the substrate B shown in FIG. Can be accurately controlled.
  • this invention is not limited to the said embodiment, It is possible to implement in the various aspect which gave various change and improvement based on the knowledge of those skilled in the art.
  • the plurality of jigs 15A and 15B are used.
  • the present invention is not limited to this, and one or three or more jigs 15 may be used.
  • a plurality of pieces of control information D5 acquired by operating one jig 15 a plurality of times may be synthesized later.
  • FIG. 7 shows another example of the jig 120.
  • the pair of end effectors 123 and 124 of the jig 120 has a curved shape that opens outward, and a marker portion 43 is provided between them.
  • Each of the end effectors 123 and 124 is provided with movable portion markers 126 and 127 having different shapes.
  • the movable part markers 126 and 127 have a long rectangular shape on one side, and are arranged in the extending direction of the end effectors 123 and 124.
  • the movable part marker 126 is longer than the movable part marker 127. In such a configuration, it is possible to easily detect the vertical direction and inclination of the jig 120 by providing a difference in the shape as well as the reflection characteristics of the movable part markers 126 and 127.
  • the main body portion 129 of the jig 120 is provided with three main body portion marker portions 131.
  • the three main body marker portions 131 are provided, for example, at positions corresponding to the vertices of one right triangle so that the distance from each other is different. In such a configuration, for example, each position of the three main body marker portions 131 can be detected, and the inclination of the jig 120 can be detected by an algorithm using the principle of triangulation or the like.
  • a jig 140 that does not include the end effector 45 may be used.
  • the jig 140 shown in FIG. 8 has a T shape, and marker portions 142, 143, and 144 are provided in portions extending in three orthogonal directions.
  • the marker portions 142 to 144 have a long rectangular shape on one side, and have different lengths. Even when the jig 140 having such a configuration is used, it is possible to teach the control information generating device 17 the positions and moving directions of the arm portions 105 and 107.
  • the marker portion 43A of the jig 15A has a reflection characteristic that reflects light of a specific wavelength irradiated by the illumination device 33, and the illumination device 34 irradiates the marker portion 43B of the other jig 15B.
  • the identification method is not limited to this.
  • the identification method is not limited to this, but is configured by reflecting the reflection characteristics of the two marker portions 43A and 43B.
  • three marker portions 151 are provided on one jig 150 and four marker portions 161 are provided on the other jig 160 as shown in FIG. You may identify.
  • the same components as those of the jig 120 in FIG. 7 are denoted by the same reference numerals, and the description thereof is omitted as appropriate.
  • each of the three marker portions 151 is provided at the distal end portion of the end effector 123, the distal end portion of the end effector 124, and the central portion of the main body portion 129, as indicated by a one-dot chain line in FIG. 9.
  • the four marker portions 161 are provided at the tip portion of the end effector 123, the tip portion of the end effector 124, and the end portions of the main body portion 129 (the left and right end portions in FIG. 10).
  • the alternate long and short dash line in FIG. 10 it is provided at a position that forms a trapezoid. For this reason, the gravity center position 153 of the marker portion 151 and the gravity center position 163 of the marker portion 161 are different from each other.
  • the control information generation device 17 images the jig 150 inserted in the tracking region R1, groups the three marker portions 151, and The center of gravity position 153 is set as a detection target. Similarly, the control information generation device 17 images the jig 160, groups the four marker portions 161, and sets the center of gravity position 163 of the marker portion 161 as a detection target.
  • the marker parts 151 and 161 (center of gravity positions 153 and 153) 163) is prevented from being confused in the position and the moving direction, and can be detected with high accuracy. Further, since the gravity center positions 153 and 163 of the marker portions 151 and 161 are different from each other, matching between the extracted coordinate positions and the marker portions 151 and 161 is facilitated. Also, for example, even if one of the three marker portions 151 cannot be detected, the position of the marker portion 151 that cannot be detected based on the position information of the other marker portion 151 is interpolated to obtain the center of gravity position 153. It is possible to prevent the position from being lost.
  • the identification method of the two marker portions 43A and 43B is not limited to the reflection characteristics and grouping described above, and the two marker portions 43A and 43B are identified by different colors, sizes, shapes and the like. May be.
  • the marker portions 43A and 43B may be identified by giving different characteristics depending on the combination thereof.
  • marker part 43A, 43B may be comprised by LED of the different luminescent color, etc., and marker part 43A, 43B itself may be light-emitted.
  • the CPU 61 corrects the position information D2 based on the curvature and the moving speed in S27. However, the CPU 61 corrects the position information D2 based on the maximum acceleration of the industrial robot 100. Also good.
  • the operation information D3 is input in real time by operating the input unit 67.
  • the present invention is not limited to this.
  • a specific marker part may be registered in advance, and the control information generation device 17 may store the timing at which the specific marker part is detected in the control information D5 as timing information for adding the work information D3.
  • the user may search for information on the timing at which the work information D3 stored in the control information D5 should be inserted, and add the necessary work information D3.
  • the specific marker portion is an example of the input portion in the present application.
  • the position information generation unit 71 may execute a process of correcting the generated position information D2 (coordinate position) in order to correct a shake caused by a user's manual work. Further, the control information D5 extracts only feature points (start point, passing point, arrival point) without using all the position information D2 generated by the position information generation unit 71, and connects the feature points. The control information D5 that enables the movement may be generated.
  • the robot in the present application may be a robot including a working unit that performs operations such as electronic component suction, laser beam irradiation, and screw tightening.
  • the robot is not limited to a robot having a serial link mechanism, and may be a robot that operates orthogonal to the XY axis direction or a robot that has a parallel link mechanism.
  • the motion capture using the optical method has been described.
  • the motion capture in the present application may be a method with another method, for example, a magnetic method for detecting the operation of the magnetic sensor.
  • a magnetic sensor that transmits position data may be attached to the jig 15, and a receiving device that receives position data may be attached instead of the camera 13.
  • the magnetic sensor corresponds to a position marker portion indicating the position of the moving portion in the present application.
  • the receiving device corresponds to the detection unit.

Abstract

移動作業だけでなく、より細かい作業内容も教示できるティーチング装置を提供すること。ティーチング装置(10)は、ロボットアームが作業位置において実施するワークを挟む作業等の作業情報(D3)を入力するための入力部(67)を備える。ユーザは、マーカー部(43)を設けた治具(15)(ロボットアームを模擬したもの)を動かしてモーションキャプチャーを実施する際に、適切なタイミングで入力部67を操作し、ロボットアームにさせたい作業内容を作業情報(D3)として入力することで、ティーチング装置(10)に対しロボットアームの細かい作業内容を設定することが可能となる。これにより、ティーチング装置(10)は、治具(15)の位置情報(D2)等と、作業情報(D3)とをリンクさせ、ロボットアームを制御する制御情報(D5)を生成することが可能となる。

Description

ティーチング装置及び制御情報の生成方法
 本発明は、ロボットに対して動作を教示するためのティーチング装置及び当該ロボットを制御する制御情報を生成する方法に関する。
 近年、生産現場における省人化を図るべく、産業用ロボットを使用した作業の自動化が進んでいる。産業用ロボット、例えばロボットアームの中には、並行に配置した複数のアーム部によって1つのエンドエフェクタを支持するいわゆるパラレルリンク機構を備えるものや、多関節ロボットのような複数のアーム部を1方向に連結させてエンドエフェクタを支持するシリアルリンク機構を備えるものがある。
 また、従来、ロボットアームで行う作業を人が模擬し、模擬した人の動作をモーションキャプチャーによって取得し、ロボットアームに対して教示するティーチング装置がある(例えば、特許文献1など)。特許文献1に開示されるティーチング装置では、作業者が測定装置(文献では、「モーションキャプチャー」)を手に装着した状態で動作させると、測定装置から送信される3次元座標データに基づいて、予め定められたサンプリング間隔で測定装置の位置をサンプリングする。ティーチング装置は、サンプリングしたデータに基づいて、移動位置、移動速度等を演算し、演算した移動位置を移動速度で移動するようにアーム部を制御している。
特開2011-200997号公報
 しかしながら、上記したティーチング装置では、例えば、アーム部の移動位置や移動速度を演算して教示することは可能であるが、部品の供給位置や取り付け位置でのエンドエフェクタの細かい作業を人の指で模擬することは難しい。
 また、移動作業や取り付け作業などのアーム部やエンドエフェクタが実施する作業とは異なる作業、例えば、装置内の基準点を撮像し画像処理を行うことでエンドエフェクタの作業位置を調整する補正処理などを、アーム部の移動に合わせて一連の作業工程に盛り込みたい場合、従来のティーチング装置では、どのようなタイミングで、どのような種類の作業を盛り込めばいいのかを指示することは難しい。このため、例えば、モーションキャプチャーで制御情報を一度作成した上で、作成した制御情報のメインプログラムのどのステップの後に、補正処理等に対応したサブルーチンを追加するのかを探す作業等が必要となってくる。
 本発明は、上記した課題を鑑みてなされたものであり、移動作業だけでなく、より細かい作業内容も教示できるティーチング装置及び制御情報の生成方法を提供することを目的とする。
 上記課題を解決するために、本願の請求項1に記載のティーチング装置は、移動部と、移動部に設けられた作業部とを備えるロボットの動作を制御する制御情報を生成するティーチング装置であって、移動部の位置を示す位置マーカー部を有する治具と、治具の移動にともなって移動する位置マーカー部を検出する検出部と、作業部が作業位置において実施する作業に係わる作業情報を入力する入力部と、検出部が位置マーカー部を検出した検出データと、入力部の作業情報とを処理する処理部と、を備え、処理部は、検出データに基づいて、位置マーカー部の3次元座標の位置情報を生成する位置情報生成処理と、位置情報に基づいて、位置マーカー部の移動方向及び移動速度に係わる移動情報を生成する移動情報生成処理と、位置情報及び移動情報に応じて移動部を移動させ、且つ作業情報に応じて作業部に作業をさせる一連の作業の制御情報を生成する制御情報生成処理と、を実行することを特徴とする。
 また、請求項2に記載のティーチング装置では、請求項1に記載のティーチング装置において、治具は、可動部と、可動部を駆動する駆動部と、可動部の位置を示す可動部用マーカー部とを有し、処理部は、位置情報生成処理として、駆動部の駆動に基づいて可動部が動作するのにともなって移動する可動部用マーカー部の位置情報を生成することを特徴とする。
 また、請求項3に記載のティーチング装置では、請求項1又は請求項2に記載のティーチング装置において、処理部は、制御情報生成処理において、移動部を移動させた後、作業部による作業を実施する前に実行する制御情報として、作業位置における作業部の位置を補正する制御情報を追加することを特徴とする。
 また、請求項4に記載のティーチング装置では、請求項1乃至請求項3のいずれかに記載のティーチング装置において、処理部は、位置情報生成処理において、生成した位置情報の中から複数の特徴点を抽出し、特徴点の間の位置情報を近似する補正処理を行うことを特徴とする。
 また、請求項5に記載のティーチング装置では、請求項1乃至請求項3のいずれかに記載のティーチング装置において、処理部は、位置情報生成処理として、検出データに基づいて、位置マーカー部の位置をサンプリングし、サンプリング点の位置を位置情報として生成することを特徴とする。
 また、請求項6に記載のティーチング装置では、請求項5に記載のティーチング装置において、処理部は、移動情報生成処理として、位置情報生成処理によって生成された複数のサンプリング点において、隣接するサンプリング点間の位置関係に基づいて移動方向を検出し、隣接するサンプリング点間の距離とサンプリング周期とに基づいて移動速度を検出することを特徴とする。
 また、請求項7に記載のティーチング装置では、請求項6に記載のティーチング装置において、処理部は、移動情報生成処理として、サンプリング点を結ぶ曲線の曲率が所定の曲率を超えていた場合、移動速度が所定の速度を超えていた場合、及び移動速度における加速度が所定の加速度を超えていた場合の少なくとも一つの場合に、位置情報を補正することを特徴とする。
 また、請求項8に記載のティーチング装置では、請求項1乃至請求項7のいずれかに記載のティーチング装置において、ロボットの動作の基準となる位置に設けられた基準マーカー部を備え、検出部は、基準マーカー部を検出し、処理部は、位置情報生成処理において、基準マーカー部に対する位置マーカー部の相対的な位置を、位置情報として生成することを特徴とする。
 また、請求項9に記載のティーチング装置では、請求項1乃至請求項8のいずれかに記載のティーチング装置において、ロボットは、移動部の駆動機構としてシリアルリンク機構を備えることを特徴とする。
 また、上記課題を解決するために、本願の請求項10に記載の制御情報の生成方法は、移動部と、移動部に設けられた作業部とを備えるロボットの動作を制御する制御情報の生成方法であって、移動部の位置を示す位置マーカー部を有する治具と、治具の移動にともなって移動する位置マーカー部を検出する検出部と、作業部が作業位置において実施する作業に係わる作業情報を入力する入力部と、を備えるティーチング装置に対し、検出部が位置マーカー部を検出した検出データに基づいて、位置マーカー部の3次元座標の位置情報を生成する位置情報生成ステップと、位置情報に基づいて、位置マーカー部の移動方向及び移動速度に係わる移動情報を生成する移動情報生成ステップと、位置情報及び移動情報に応じて移動部を移動させ、且つ作業情報に応じて作業部に作業をさせる一連の作業の制御情報を生成する制御情報生成ステップ処理と、を実行させることを特徴とする。
 本願の請求項1に記載のティーチング装置では、移動部と、作業部とを備えるロボットを制御する制御情報を生成する。モーションキャプチャーの作業では、位置マーカー部を設けた治具を被検出体として用いることで、測定装置を装着した人の手等を用いる必要がなくなる。位置マーカー部の検出方法としては、例えば、特定の波長の光を位置マーカー部に照射し、その反射光を撮像した撮像データから位置情報等を演算する光学方式のモーションキャプチャーを用いることができる。なお、位置マーカー部の検出方法は、これに限らず、他の方法、例えば、撮像データに対し位置マーカー部の形状を検出する画像処理を実行し、実行結果から位置を検出してもよい。あるいは、位置マーカー部として磁気センサを用いて、移動する磁気センサからの位置データを受信して、受信した位置データから位置情報等を演算する磁気方式のモーションキャプチャーを用いることができる。
 また、当該ティーチング装置は、作業部が作業位置において実施する作業、例えば、ワークを挟む、ワークを掴む、レーザを照射する、撮像を行う、ワークを吸着する等の作業に係わる作業情報を入力するための入力部を備える。このため、ユーザは、入力部を適切なタイミングで操作し、且つ、ロボットにさせたい作業内容を作業情報として入力することで、ティーチング装置に対して作業部の細かい作業等を設定することが可能となる。
 そして、処理部は、検出データから生成した位置情報及び移動情報に応じて移動部を移動させ、且つ作業情報に応じて作業部に作業をさせる一連の作業の制御情報を生成する。つまり、処理部は、制御情報生成処理において、移動情報等と、作業情報等をリンクさせて制御情報を生成することが可能となる。これにより、当該ティーチング装置では、例えば、作業部の作業位置を調整する補正処理等を、適切なタイミングや作業内容で実施するように、移動部の移動に合わせた一連の作業工程の中に盛り込むことが可能となる。
 また、本願の請求項2に記載のティーチング装置では、治具は、可動部用マーカーが設けられた可動部を駆動する駆動部を備える。処理部は、駆動部の駆動に応じて可動する可動部の可動部用マーカーをモーションキャプチャーする。これにより、ユーザは、所定の作業位置において、駆動部によって可動部を動作させることによって、人の指等で模擬する場合に比べて、ワークを掴んだり、離したりする動作をより忠実に再現することが可能となる。
 また、例えば、治具を人が手で動かす場合には、位置マーカー部の移動の精度は、人が治具を操る精度に依存する。このため、本願の請求項3に記載のティーチング装置では、より高い作業精度が要求される場合、作業位置で作業を実施する前に位置補正の処理を実施し、最終的な作業位置を補正することで、高い精度が要求される作業にも対応することが可能となる。
 また、本願の請求項4に記載のティーチング装置では、処理部は、特徴点の抽出と、当該特徴点間の位置情報を近似する補正処理を行う。特徴点の抽出は、例えば、移動方向が所定の角度以上変更された点を特徴点として抽出する。あるいは、特徴点の抽出は、例えば、複数の位置情報の中から一定の間隔ごとの点を特徴点として抽出する。
 処理部は、抽出した特徴点を、例えば、ロボットの動作の起点や終点として設定し、その起点から終点に向かってロボットが移動可能となるように、特徴点間の位置情報を補正する。例えば、補正処理として、外部からのノイズによって、大幅に位置のずれた点が特徴点間にある場合、当該点に係わる位置情報を不要なデータとして破棄する。あるいは、補正処理として、特徴点間の位置情報を、当該特徴点を結ぶ直線や曲線で近似する。これにより、生成した制御情報に基づいてロボットをより滑らかに動作させ、無駄な動作を省いて作業効率を向上させることが可能となる。また、治具を人が操作する場合の人の手の震えなどによる位置情報のずれを補正することが可能となる。
 また、本願の請求項5に記載のティーチング装置では、処理部は、所定のサンプリング周期で、検出データから位置情報を生成する。このため、当該ティーチング装置では、サンプリング周期の時間を変更することで、処理部が位置マーカー部の位置を検出する精度を調整することが可能となる。
 また、本願の請求項6に記載のティーチング装置では、処理部は、隣接するサンプリング点の位置情報に基づいて、移動方向や移動速度を検出する。このため、当該ティーチング装置では、サンプリング周期の時間を変更することで、処理部が位置マーカー部の移動方向及び移動速度を検出する精度を調整することが可能となる。
 また、例えば、治具を人が操作して、その治具の移動する向き、移動速度、加速度が、制御情報を適用するロボットの移動能力を超えていた場合、制御情報を生成したとしても、ロボットに所望の作業を実行させることは困難となる。そこで、本願の請求項7に記載のティーチング装置では、例えば、サンプリング点を結ぶ曲線の曲率が、所定の曲率(例えば、ロボットの移動可能な曲率)を超えていた場合、移動可能な曲率となるように位置情報(座標等)を補正する。これにより、モーションキャプチャーによって生成した制御情報を、実際にロボットを制御するデータとして容易に使用することが可能となる。
 また、モーションキャプチャーを行う場合、治具の動作をトラッキングするトラッキング領域と、ロボットを実際に作業させる作業領域との位置がずれる虞がある。そこで、本願の請求項8に記載のティーチング装置では、基準マーカー部を基準として位置情報を生成する。これにより、生成した制御情報を使用する場合、基準マーカー部の位置を、実際の作業領域内の基準に合わせることで、ロボットを精度よく制御することが可能となる。ここでいう作業領域内の基準とは、例えば、XYロボットであれば、X方向及びY方向の位置を決定する際に基準とする位置である。
 また、例えば、制御情報をシミュレーション用のツール(三次元CADなど)に取り込んでロボットの動きを確認したい場合、基準マーカー部の位置をツールの基準位置に合わせることによって、制御情報の取り込みや使用が容易となる。また、例えば、同じ基準マーカー部を使用して2つのロボットの制御情報を別々に生成しておき、2つの制御情報の基準マーカー部の位置をツールの基準位置に合わせてシミュレーションすることによって、2つのロボットの動作が互いに干渉しないか否かを確認することが可能となる。
 また、本願の請求項9に記載のティーチング装置において、本願のロボットとして、生産現場で広く使用されているシリアルリンク機構を備えるロボット、例えば、多関節のロボットアームに適用することは有効である。
 さらに、本願に係る発明は、ティーチング装置に限定されることなく、ティーチング装置によって制御情報を生成する方法の発明としても実施し得るものである。
本実施形態のティーチング装置の要部の構成を概略的に示した図である。 複数のカメラが取り付けられた枠部の斜視図である。 制御情報を用いて制御する対象である産業用ロボットの構成を示す模式図である。 本実施形態のティーチング装置を用いてモーションキャプチャーを実施する状態を示す模式図である。 CPUによる制御情報の生成処理を示すフローチャートである。 2つの治具が備える各マーカー部の位置をサンプリングしたサンプリング点を示す図である。 別例の治具を示す模式図である。 別例の治具を示す模式図である。 別例の治具を示す模式図である。 別例の治具を示す模式図である。
 以下、本発明のティーチング装置の一実施形態について、図面を参照しつつ説明する。図1は、本実施形態のティーチング装置10の要部の構成を概略的に示している。ティーチング装置10は、光学方式のモーションキャプチャーによって、複数(図1では1台のみ図示)のカメラ13と、2つの治具15(図1では1つのみ図示)と、制御情報生成装置17とを備える。ティーチング装置10は、治具15の各々の動きを複数のカメラ13によって撮像し、カメラ13の撮像データD1から図3に示すロボットアーム101,103を制御する制御情報D5を制御情報生成装置17によって生成する。
<カメラ13について>
 図2に示すように、複数のカメラ13の各々は、複数(本実施形態では、12本)のパイプ21を直方体形状に組み付けた枠部23に取付けられている。複数のパイプ21の各々は、同一の長さで形成されており、直方体形状の枠部23の角部分において、12本のパイプ21のうち、任意の3本のパイプ21が連結部材25によって互いに連結されている。各連結部材25は、3本のパイプ21の各々の端部21Aを挿入して保持しており、3本のパイプ21の各々を互いに直交するようにして固定している。以下、図2に示すように、枠部23を配置する台19の載置面に対して直交する方向を上下方向、上下方向に直交し図2において前後に向かう方向を前後方向、上下方向及び前後方向に直交する方向を左右方向と称し、説明する。
 本実施形態のティーチング装置10は、例えば、合計で6個のカメラ13が枠部23に取付けられている。以下、複数のカメラ13を区別する必要があるときは、図2に示すように、カメラ13の符号の後にアルファベットを付して説明する。また、区別する必要がないときは、6台のカメラを「カメラ13」と総称して説明する。6台のカメラ13うち、4台のカメラ13A,13B,13C,13Dは、枠部23の上方側となる4本のパイプ21の各々に、固定部材27によって取付けられている。4台のカメラ13A~13Dの各々は、上方側の4つの連結部材25のそれぞれに近接する位置に取り付けられている。固定部材27は、カメラ13A~13Dの各々を、撮像方向が枠部23の中央部分を向くようにして固定している。
 また、6台のカメラ13のうち、残りの2台のカメラ13E,13Fは、上下方向に沿って設けられた4本のパイプ21のうち、対角線上で対向する一組のパイプ21の各々に、固定部材27によって取り付けられている。カメラ13E,13Fは、パイプ21における台19側となる下端部に取り付けられ、撮像方向が枠部23の中央部分を向くようにして固定部材27によって固定されている。これら6台のカメラ13は、後述する治具15のマーカー部43を撮影するため、枠部23で取り囲まれた立方体形状の領域をトラッキング領域R1、即ち、治具15及びマーカー部43を可動させて追跡するための領域として設定している。なお、6台のカメラ13は、例えば、マーカー部43をトラッキングするために、撮像範囲が互いに重複するように設定され、トラッキング領域R1を3次元的に撮像可能となっている。また、図2に示す枠部23の形状、カメラ13の台数、カメラ13の取り付け位置等は、一例であり、適宜変更可能である。
 図1及び図2に示すように、カメラ13の各々は、撮像素子31と、照明装置33,34とを備える。撮像素子31は、例えば、CCDイメージセンサやCMOSイメージセンサである。照明装置33,34は、例えば、LED照明であり、互いに異なる波長の光を照射する。これは、後述する2つの治具15A,15B(図4参照)の各々に設けられたマーカー部43A,43Bに対応した2種類の光である。カメラ13は、照明装置33,34から照射しマーカー部43A,43Bによって反射した反射光を撮像素子31によって受光する。カメラ13は、撮像したデータを撮像データD1として、映像ケーブル35を介してティーチング装置10へ出力する。なお、カメラ13は、マーカー部43A,43Bの反射光を検出し易いように、照明装置33,34から照射する光の波長に応じた光学フィルターを、撮像素子31の光の入射口に取り付けてもよい。
<治具15について>
 次に、検出対象である治具15について説明する。図1に示す治具15は、図3に示す産業用ロボット100のロボットアーム101,103を模擬した被検出体であり、本体部41と、マーカー部43と、エンドエフェクタ45と、把持部47とを備えている。図3は、産業用ロボット100の構成を模式的に示したものである。ロボットアーム101は、2つのアーム部105(移動部の一例)を1方向に連結させ、先端部分にエンドエフェクタであるハンド部109(作業部の一例)を支持するシリアルリンク機構を備える多関節ロボットである。同様に、ロボットアーム103は、2つのアーム部107を1方向に連結させ、先端部分にハンド部111を支持する。産業用ロボット100は、例えば、ロボットアーム101,103を駆動して、ハンド部109,111に挟持したワークW1,W2を基板Bに取り付ける作業を行う。ワークW1,W2は、例えば、電子部品やネジ等である。
 図1に示す治具15の本体部41は、ロボットアーム101,103のアーム部105,107に対応する。ここで、後述するように、本実施形態のティーチング装置10では、2つのロボットアーム101,103を協調させて動作させるための制御情報D5を生成する。このため、2種類の治具15A,15B(図4参照)を使用し、各治具15A,15Bを、それぞれ異なるロボットアーム101,103であると仮定してモーションキャプチャーを行う。以下の説明では、この2種類の治具15、あるいは当該治具15が備える各部(マーカー部43など)を区別する必要があるときは、図4に示すように、治具15等の符号の後にアルファベットを付して説明する。また、区別する必要がないときは、2つの治具を「治具15」と総称して説明する。
 マーカー部43は、本体部41の外周部分に固定されている。マーカー部43は、球体をなし、各カメラ13の照明装置33,34から照射される光を反射する。例えば、図4に示す治具15Aに設けられたマーカー部43Aは、照明装置33が照射する特定の波長の光を反射する反射特性を有する材質等で構成されている。また、もう一方の治具15Bに設けられたマーカー部43Bは、照明装置34が照射する特定の波長の光を反射する反射特性を有する材質等で構成されている。
 エンドエフェクタ45は、ロボットアーム101,103(図3参照)のワークW1,W2を挟むハンド部109,111を模擬した形状をなしており、先端部分が互いに近接する方向に向かって屈曲した一対の棒状の部材で構成されている。一対のエンドエフェクタ45は、マーカー部43を挟む位置に設けられ、先端部分が開閉可能に構成されている。エンドエフェクタ45の各々の先端部分には、当該エンドエフェクタ45の動きをトラッキングするための可動部用マーカー部46が設けられている。例えば、可動部用マーカー部46A,46Bは、マーカー部43A,43Bと同様に、互いに異なる反射特性で構成されており、カメラ13の照明装置33,34の各々から照射される光を反射する。これにより、制御情報生成装置17は、治具15と同様に、エンドエフェクタ45の位置情報D2も取得することが可能となる。なお、カメラ13は、治具15に使用する照明装置33,34とは別に、エンドエフェクタ45に光を照射する専用の照明装置を備えてもよい。
 また、本体部41には、エンドエフェクタ45を開閉動作させるためのアクチュエーター49が内蔵されている。また、本体部41には、マーカー部43やエンドエフェクタ45とは反対側の部分に棒状の把持部47の先端部が取り付けられている。把持部47は、例えば、枠部23のトラッキング領域R1(図2参照)内に治具15を入れた状態で、枠部23の外に飛び出した当該把持部47の基端部をユーザが手に持つことができる程度の長さで構成されている。これにより、ユーザは、体の一部をトラッキング領域R1に入れることなく、治具15を操作することが可能となる。
 把持部47の本体部41とは反対側の基端部には、アクチュエーター49を駆動、又は停止させるための駆動スイッチ51が設けられている。駆動スイッチ51は、把持部47及び本体部41内に配設された接続線53によってアクチュエーター49と接続されている。例えば、モーションキャプチャーを実行する際には、ユーザは、把持部47の基端部を持って、先端部に設けられた治具15を、枠部23のトラッキング領域R1内において、開始位置から所望の位置、例えば、ロボットアーム101,103がハンド部109,111でワークW1,W2を挟持する作業位置まで移動させる。ユーザは、移動させた後に、駆動スイッチ51をオン操作することで、エンドエフェクタ45の先端部分を閉じた状態とする。あるいは、ユーザは、駆動スイッチ51をオフ操作することで、エンドエフェクタ45の先端部分を開いた状態とする。ティーチング装置10は、エンドエフェクタ45の動作をトラッキングし、後述する制御情報D5を生成する。この制御情報D5は、図3に示す産業用ロボット100のハンド部109,111を制御する制御情報D5である。
<制御情報生成装置17について>
 次に、制御情報生成装置17の構成について説明する。制御情報生成装置17は、例えば、CPU(Central Processing Unit)61を主体として構成されたパーソナルコンピュータであり、変換部63、記憶部65、入力部67、表示部69等を備える。制御情報生成装置17は、カメラ13から出力された撮像データD1を、映像ケーブル35(図2参照)を介して変換部63に入力する。変換部63は、複数のカメラ13で撮像された撮像データD1を、時系列的に整列させ、カメラ13の識別情報や時間情報等を付加してCPU61に出力する。CPU61は、変換部63から入力された撮像データD1を記憶部65に保存する。記憶部65は、メモリやハードディスク等を備えており、撮像データD1の他に、制御プログラムD7や設計情報D6等が保存されている。制御プログラムD7は、CPU61上で実行されるプログラムである。設計情報D6は、図3に示す産業用ロボット100に係わる情報であり、アーム部105,107の外形の寸法、アーム部105,107の最大移動速度等の情報である。
 CPU61は、記憶部65に保存された制御プログラムD7を読み出して実行することにより、位置情報生成部71、移動情報生成部73、制御情報生成部75の各種の処理モジュールを実現する。なお、本実施形態では、位置情報生成部71等は、CPU61で制御プログラムD7が実行されることによって実現されるソフトウェアとして構成されているが、専用のハードウェアとして構成してもよい。
 入力部67は、ユーザからの入力を受け付けるキーボードやマウス等の入力装置である。上記したように、本実施形態のティーチング装置10は、治具15を作業位置まで移動させた後、駆動スイッチ51を操作することでエンドエフェクタ45を開閉させ、ハンド部109,111(図3参照)を動作させるための作業情報D3の生成をティーチング装置10に教示することが可能となっている。また別の方法として、ユーザは、治具15を作業位置まで移動させた後、入力部67を操作することよって、他の作業情報D3を生成する旨をティーチング装置10に指示することが可能となっている。例えば、ユーザは、入力部67を操作し、ワークW1,W2を吸着する作業、ワークW1,W2の一部にレーザを照射して穴を開ける作業、ワークW1,W2に接着剤を塗布する作業などを入力することができる。これにより、ティーチング装置10は、治具15の位置情報D2等と、作業情報D3とをリンクさせた一連の作業の制御情報D5を生成することが可能となる。また、表示部69は、制御情報D5を生成する過程における途中経過や、生成後の結果情報などの各種情報を表示する。
 次に、制御情報生成装置17における制御情報D5の生成処理の一例について説明する。まず、モーションキャプチャーを実行する作業内容について説明する。以下の説明では、一例として、2台のロボットアーム101,103(図3参照)が、互いに協調して動作しながら基板BにワークW1,W2を実装する作業のモーションキャプチャーを実行する。図4は、モーションキャプチャーを実施する場合の状態を模式的に示している。
 図4に示すように、例えば、枠部23のトラッキング領域R1内にワークW1,W2(図3参照)を供給するための供給装置81,82を配置する。供給装置81,82は、例えば、テーピング化された電子部品(ワーク)を1つずつ供給位置に送り出すテープフィーダ型の供給装置、あるいは、電子部品が所定の間隔毎に並べられた複数のトレイを備えるトレイ型の供給装置である。供給装置81のワークW2の供給位置には、供給位置用マーカー部84が設けられている。また、供給装置82のワークW1の供給位置には、供給位置用マーカー部85が設けられている。供給装置81及び供給装置82は、前後方向において供給位置(供給位置用マーカー部84,85)を互いに対向させるようにして配置されている。
 また、供給装置81,82の前後方向における間には、基板86が配置されている。基板86は、長方形状に形成され、平面が前後方向及び左右方向に沿うようにして水平に配置されている。基板86の4つの角部分には、実装位置用マーカー部88が設けられている。なお、以下の説明では、治具15Aが実装作業を行う実装位置用マーカー部88を、他の実装位置用マーカー部88と区別するため、実装位置用マーカー部88Aと称する。また、治具15Bが実装作業を行う実装位置用マーカー部88を、他の実装位置用マーカー部88と区別するため、実装位置用マーカー部88Bと称する。また、上記した供給装置81,82及び基板86は、実物の装置や基板を用いてもよく、形状を模擬した部材を用いてもよい。また、基板86の中心部には、3つの基準マーカー部91が隣接して設けられている。基準マーカー部91は、ロボットアーム101,103(図3参照)の動作の基準となる位置である。
 例えば、図3に示すロボットアーム101のハンド部109によって供給装置82(図4参照)の供給位置からワークW1をピックアップし、基板Bに実装する作業を、治具15Aにて教示する。この場合、図4の実線の矢印93で示すように、ユーザは、把持部47Aを持って治具15Aを操作し、図4に示す開始位置から供給位置用マーカー部85まで治具15Aを移動させる。ユーザは、供給位置用マーカー部85の位置において、駆動スイッチ51Aをオン操作してエンドエフェクタ45Aを閉じた状態とする。ユーザは、駆動スイッチ51Aを操作する前に、制御情報生成装置17の入力部67を操作して、エンドエフェクタ45Aを操作する旨の作業情報D3を入力する。次に、ユーザは、治具15Aを、供給位置用マーカー部85から実装位置用マーカー部88Aの位置まで移動させる。そして、ユーザは、実装位置用マーカー部88Aの位置において、駆動スイッチ51Aをオフ操作してエンドエフェクタ45Aを開いた状態とする。この場合にもユーザは、駆動スイッチ51Aを操作する前に入力部67を操作して、エンドエフェクタ45Aを操作する旨の作業情報D3を入力する。
 また、ロボットアーム103のハンド部111によって供給装置81(図4参照)の供給位置からワークW2をピックアップし、基板Bに実装する作業を、治具15Bにて教示する。この作業は、上記したロボットアーム101の作業と同時に行う作業である。この場合、図4の破線の矢印95で示すように、ユーザは、把持部47Bを持って治具15Bを操作し、図4に示す開始位置から供給位置用マーカー部84まで治具15Bを移動させる。ユーザは、供給位置用マーカー部84の位置において、入力部67によって作業情報D3を入力した後、駆動スイッチ51Bをオン操作してエンドエフェクタ45Bを閉じた状態とする。次に、ユーザは、治具15Bを、供給位置用マーカー部84から実装位置用マーカー部88Bの位置まで移動させる。そして、ユーザは、実装位置用マーカー部88Bの位置において、入力部67によって作業情報D3を入力した後、駆動スイッチ51Bをオフ操作してエンドエフェクタ45Bを開いた状態とする。なお、治具15Bを操作するユーザは、治具15Aを操作するユーザとは別のユーザでもよい。
 次に、上記したモーションキャプチャー中において、CPU61が制御情報D5を生成する処理について、図5に示すフローチャートを参照しつつ説明する。なお、図5に示すフローチャートの処理の内容や処理の順番は、一例であり、適宜変更可能である。制御情報生成装置17は、上記した治具15A,15Bの動作をトラッキングして、制御情報D5を生成する。詳述すると、まず、CPU61は、制御プログラムD7を実行し処理を開始した後、図5に示すステップ(以下、単に「S」と表記する)11において、ユーザが入力部67を操作して作業情報D3を入力したか否かを判定する。これは、ユーザが入力部67を操作して作業情報D3を入力した場合、当該作業情報D3の内容に応じた処理を実行するためである。作業情報D3が入力された場合(S11:YES)、CPU61は、入力された作業情報D3がエンドエフェクタ45(駆動スイッチ51)を操作する旨の情報であるか否かを判定する(S12)。また、作業情報D3が入力されていない場合(S11:NO)、CPU61は、S15以降の処理を開始する。
 S12において、エンドエフェクタ45を操作する旨の作業情報D3でない場合(S12:NO)、CPU61は、入力された作業情報D3の種類に応じた制御情報、例えば、ワークW1,W2を吸着する作業に対応するサブルーチンのプログラムを、当該作業情報D3に付加して記憶部65に保存する(S13)。図4に示す矢印93,95の作業では、エンドエフェクタ45以外の作業情報D3の入力はなかったが、ユーザは、例えば、治具15が所定の作業位置に到達した場合に、入力部67を操作して、吸着作業、レーザの照射作業、接着剤の塗布作業等の作業情報を入力することができる。これにより、生成される制御情報D5の一連の作業工程の中に、各種の作業を追加等することが可能となる。
 また、S12において、入力された作業情報D3がエンドエフェクタ45を操作する旨の情報である場合(S12:YES)、CPU61は、S15以降に示す位置情報D2等の生成を行い、エンドエフェクタ45A,45Bの各々の可動部用マーカー部46A,46Bの位置、傾き、移動方向等に応じた制御情報D5、即ち、ハンド部109,111(図3参照)に所望の動作をさせる制御情報D5を生成する。なお、以下の説明では、主に治具15のマーカー部43を撮像した撮像データD1に基づいて制御情報D5を生成する処理について説明する。アクチュエーター49の可動部用マーカー部46を撮像した撮像データD1に基づいて制御情報D5を生成する処理は、マーカー部43と同様であるため、適宜省略する。
 次に、CPU61は、変換部63から撮像データD1を取り込んで記憶部65に保存する処理を実行する(S15)。なお、本実施形態のCPU61は、モーションキャプチャー中に検出したエラーをユーザに報知すべく、カメラ13の撮像データD1をリアルタイムで処理している。しかしながら、このようなリアルタイム処理に限らず、CPU61は、例えば、全ての撮像データD1を一度、記憶部65に記憶しておき、後からまとめて全ての撮像データD1を処理してもよい。
 次に、位置情報生成部71は、記憶部65に保存された撮像データD1に付加されたカメラ13の識別情報や時間情報等に基づいて、治具15A,15Bに取り付けたマーカー部43A,43Bの撮影時間ごとにおける3次元座標の位置を演算する(S17)。位置情報生成部71は、演算した位置情報D2を記憶部65に保存する。位置情報生成部71は、例えば、二値化した撮像データD1に対してラベリングを行い、エピポーラマッチングなどのアルゴリズムを利用した処理を行ってマーカー部43A,43Bの3次元空間内での座標の位置を演算する。また、位置情報生成部71は、基準マーカー部91に対する相対的な座標の位置を演算する。例えば、位置情報生成部71は、3つの基準マーカー部91の重心位置を基準として、マーカー部43A,43Bの座標位置を演算する。
 上記したように、マーカー部43A,43Bの各々は、照明装置33,34から照射する光の波長に合わせて、反射特性の異なる構造となっている。このため、位置情報生成部71は、撮像データD1に対し、例えば、輝度の違いなどによって、各マーカー部43A,43Bからの反射光を識別し、マーカー部43A,43Bごとの座標位置を演算する。なお、位置情報生成部71が座標位置(位置情報D2)を演算する処理方法は、特に限定されず、例えば、三角測量の原理等によって、位置情報D2を演算してもよい。また、位置情報生成部71は、S12において、エンドエフェクタ45(駆動スイッチ51)を操作する旨の作業情報D3であった場合(S12:YES)、マーカー部43の場合と同様に、可動部用マーカー部46について位置情報D2を生成する。
 また、位置情報生成部71は、位置情報D2を表示部69に表示する処理を行う(S19)。位置情報生成部71は、例えば、図6に示すように、マーカー部43A,43Bのそれぞれの位置を、所定時間ごとにサンプリングしたサンプリング点SP1,SP2を、位置情報D2として取得する。位置情報生成部71は、取得した全てのサンプリング点SP1,SP2(位置情報D2)を表示部69にリアルタイムに表示する処理を行う。これにより、ユーザは、表示部69の表示を確認することで、取得した位置情報D2を適宜確認し、適切か否かを判断することが可能となる。なお、位置情報生成部71は、全てのサンプリング点SP1,SP2を表示せずに、起点、終点、移動方向が所定角度以上変わる点などの特徴点のみを表示してもよい。また、図6に示す黒塗りの丸のサンプリング点SP1は、治具15Aのマーカー部43Aに対応している。また、黒塗りの四角のサンプリング点SP2は、治具15Bのマーカー部43Bに対応している。
 次に、位置情報生成部71は、位置情報D2のサンプリング点SP1,SP2に基づいて、マーカー部43A,43B間の距離が正常か否かを判定する(S21)。2つの治具15A,15Bは、図3に示すロボットアーム101,103を模擬したものであるが、ユーザの手による操作性を考慮して、実物に対して外形を小さくすることが考えられる。この場合、治具15A,15Bを動作させて作成した制御情報D5に基づいて、ロボットアーム101,103を動かした場合に、アーム部105,107等が衝突して互いに干渉する虞がある。
 そこで、位置情報生成部71は、記憶部65に保存された設計情報D6に基づいて、例えば、マーカー部43Aの中心からアーム部105の外形の寸法に応じた距離を、衝突の虞がある距離として設定する。そして、位置情報生成部71は、サンプリング点SP1,SP2間の距離を演算し、演算した距離が衝突の虞がある距離以下であると判定した場合(S21:YES)、表示部69にエラー表示を実行する(S23)。これにより、ユーザは、アーム部105,107等が衝突する虞のある距離まで治具15A,15Bが近づいたことを認識でき、モーションキャプチャーを再度やり直すなどの適切な対応を取ることが可能となる。なお、位置情報生成部71は、例えば、同時間のサンプリング点SP1,SP2の距離を演算し判定してもよい。あるいは位置情報生成部71は、1つのサンプリング点SP1に対して、当該サンプリング点SP1の時間を基準として、所定時間内のサンプリング点SP2との距離を演算し判定してもよい。
 位置情報生成部71は、S23を実行した後、例えば、エラー表示に対するユーザからの応答があるまで処理を一時的に中止する。あるいは、位置情報生成部71は、所定時間経過すると、必要なデータ等を受け渡して処理の主体を移動情報生成部73へ移行させる(S25)。また、位置情報生成部71は、S21において、演算した距離が衝突の虞がある距離よりも大きいと判定した場合(S21:NO)、処理の主体を移動情報生成部73へ移行させる(S25)。
 次に、移動情報生成部73は、記憶部65に保存された位置情報D2に基づいて、マーカー部43A,43Bの移動に係わる移動情報D4を生成する(S25)。移動情報生成部73は、位置情報D2から各マーカー部43A,43Bの移動情報D4として、移動距離、移動方向、速度、加速度、角度等の物理量を演算する。
<特徴点の抽出>
 例えば、移動情報生成部73は、図6に示す複数のサンプリング点SP1の中から特徴点の抽出を行う。具体的には、移動情報生成部73は、例えば、起点となる特徴点として、治具15Aの移動開始位置に対応するサンプリング点SP1Aを特徴点として抽出する。また、移動情報生成部73は、複数のサンプリング点SP1の中から移動方向が所定の角度以上変更された点を、例えば、供給位置用マーカー部85に近接する位置において大きく移動方向が変更されたサンプリング点SP1Bを特徴点として抽出する。なお、この特徴点の判定は、移動情報生成部73が移動速度や移動方向に基づいて自動的に判定してもよく、あるいはユーザが入力部67を操作して指示してもよい。
 そして、移動情報生成部73は、抽出した特徴点(サンプリング点SP1A,SP1B)の座標位置から傾きを演算し、マーカー部43A(治具15A)の移動方向を検出する。あるいは、移動情報生成部73は、例えば、抽出した特徴点の距離を、特徴点間の時間で除算してマーカー部43Aの移動速度を検出する。
 また、移動情報生成部73は、特徴点間のサンプリング点SP1の位置情報D2を近似する補正処理を行ってもよい。例えば、移動情報生成部73は、抽出した特徴点(サンプリング点SP1A,SP1B)を、移動の起点及び終点として設定し、当該起点(サンプリング点SP1A)から終点(サンプリング点SP1B)に向かってロボットアーム101(図3参照)のアーム部105が移動可能となるように、特徴点間のサンプリング点SP1の位置情報D2を補正する。例えば、移動情報生成部73は、外部からのノイズによって、大幅に位置のずれたサンプリング点SP1が特徴点間にある場合、当該サンプリング点SP1に係わる位置情報D2を不要なデータとして破棄する。あるいは、移動情報生成部73は、特徴点間の位置情報D2を、当該特徴点を結ぶ直線で近似する。
 また、移動情報生成部73は、特徴点間を曲線で近似してもよい。例えば、図6に示す複数のサンプリング点SP2のうち、移動情報生成部73は、特徴点として移動方向が所定角度以上変更されたサンプリング点SP2A,SP2Bを抽出する。2つの特徴点(サンプリング点SP2A,SP2B)間の移動は、移動方向を徐々に変更しながら湾曲して移動している。この場合、移動情報生成部73は、例えば、サンプリング点SP2Aを起点、サンプリング点SP2Bを終点として、当該特徴点(サンプリング点SP2A,SP2B)間のサンプリング点SP2の位置情報D2を、曲線で近似する。
<サンプリングによる演算>
 また、移動情報生成部73は、上記した特徴点による方法に限らず、他の方法により移動方向等を検出してもよい。例えば、移動情報生成部73は、位置情報生成部71によってサンプリングされた複数のサンプリング点SP1うち、隣接するサンプリング点SP1の座標位置から傾きを演算し、マーカー部43A(治具15A)の移動方向を検出してもよい。あるいは、移動情報生成部73は、例えば、隣接するサンプリング点SP1間の距離と、位置情報生成部71のサンプリング周期とを乗算してマーカー部43Aの移動速度を検出してもよい。
 次に、移動情報生成部73は、サンプリング点SP1,SP2を結ぶ曲線の曲率、及び検出した移動速度の少なくとも一方が、図3に示す産業用ロボット100の移動能力を超えていた場合に、位置情報D2を補正し、移動情報D4の生成を再度実行する(S27)。例えば、図6に示すように、複数のサンプリング点SP2のうちの1点であるサンプリング点SP2Cにおいて、マーカー部43Bが大きく湾曲して移動している。このような湾曲した移動が、実際のロボットアーム103の移動能力を超えていた場合、制御情報D5を生成したとしても、ロボットアーム103を制御することは困難となる。
 そこで、移動情報生成部73は、記憶部65の保存された設計情報D6に基づいて、例えば、サンプリング点SP2(例えば、サンプリング点SP2A,SP2B間)を結ぶ曲率が、ロボットアーム103の移動能力に応じて設定された曲率に比べて大きい場合、移動可能な曲率となるように位置情報D2を補正する。そして、移動情報生成部73は、補正後の位置情報D2(サンプリング点SP2)に基づいて、再度、移動情報D4を生成する。
 また、例えば、図6に示すように、複数のサンプリング点SP1のうちの2点であるサンプリング点SP1C,SP1D間の距離が大きく離れている。サンプリング点SP1C,SP1D間の距離が離れると、演算結果の移動速度も早くなる。この移動速度が、実際のロボットアーム103の移動能力を超えていた、あるいは安全な移動速度を超えていたい場合、上記した曲率と同様に、制御情報D5を生成したとしても、ロボットアーム103を制御することは困難となる。
 このため、移動情報生成部73は、曲率の場合と同様に、記憶部65の保存された設計情報D6に基づいて、例えば、サンプリング点SP1C,SP1Dの距離から算出された移動速度が、ロボットアーム103の最大移動速度に比べて大きい場合、移動可能な速度となるように位置情報D2を補正する処理を行う。そして、移動情報生成部73は、補正後の位置情報D2(サンプリング点SP1C,SP1D)に基づいて、再度、移動情報D4を生成する。なお、移動情報生成部73は、曲率や移動速度に応じてサンプリング点SP1,SP2(位置情報D2)を補正する場合は、補正後のサンプリング点SP1,SP2間の距離が上記した衝突の虞がある距離以上となるように補正する。
 CPU61は、移動情報生成部73による補正処理(S27)が完了すると、変換部63に対し取り込んでいない撮像データD1があるか否かを問い合わせる(S29)。取り込んでいない撮像データD1がある場合(S29:NO)、CPU61は、S11からの処理を再度、実行する。
 CPU61は、変換部63から取り込む撮像データD1がない場合(S29:YES)、制御情報生成部75に対し制御情報D5の生成を指示する。制御情報生成部75は、記憶部65に保存された位置情報D2、移動情報D4、及び作業情報D3に基づいて、ロボットアーム101,103を移動させ、且つ作業位置においてハンド部109,111に作業させる一連の作業の制御情報D5を生成する(S31)。なお、制御情報生成部75は、未処理の作業情報D3、例えば、治具15A,15Bを実装位置用マーカー部88A,88Bの位置まで到達させ撮像を終了させた後にユーザが入力部67を操作して入力した作業情報D3がある場合には、当該作業情報D3をあわせて処理することが好ましい。
 そして、制御情報生成部75は、例えば、マーカー部43の位置情報D2や移動情報D4に応じた位置や移動速度でアーム部105,107(図3参照)を動作させる制御情報D5を生成する。また、制御情報生成部75は、可動部用マーカー部46の撮像データD1から生成した位置情報D2に基づいて、エンドエフェクタ45(ハンド部109,111)の位置や向き等を検出する。制御情報生成部75は、アーム部105,107を移動させる制御情報D5に、ハンド部109,111を回転や開閉させる制御を追加する。これにより、制御情報生成部75は、アーム部105,107を所定の作業位置(図4の供給位置用マーカー部84など)まで移動させた後、ハンド部109,111によってワークW1,W2を挟持する一連の作業の制御情報D5を生成することが可能となる。
 また、制御情報生成部75は、S31において、補正作業を制御情報D5に追加する処理を実行する。具体的には、制御情報生成部75は、例えば、アーム部105,107を供給装置81,82の供給位置(供給位置用マーカー部84,85の位置)まで移動させた後、ハンド部109,111によるワークW1,W2の挟持作業を実施する前に、供給装置82の供給位置とハンド部109,111の位置との誤差を補正する情報を制御情報D5に追加する。例えば、ロボットアーム101のハンド部109に基板B等を撮像するカメラが搭載されている場合には、当該カメラを用いて供給装置82の供給位置を撮像し、撮像データに基づいて、ハンド部109と供給位置との相対的な位置の誤差を補正する処理を、制御情報D5に追加する。このようにして、ティーチング装置10は、モーションキャプチャーを実行して制御情報D5を生成することが可能となる。
 因みに、上記実施形態において、カメラ13は、検出部の一例である。マーカー部43は、位置マーカー部の一例である。エンドエフェクタ45は、可動部の一例である。アクチュエーター49は、駆動部の一例である。CPU61は、処理部の一例である。ロボットアーム101,103は、ロボットの一例である。アーム部105,107は、移動部の一例である。ハンド部109,111は、作業部の一例である。撮像データD1は、検出データの一例である。サンプリング点SP1A,SP1B,SP2A,SP2Bは、特徴点の一例である。S17の処理は、位置情報生成処理の一例である。S25の処理は、移動情報生成処理の一例である。S31の処理は、制御情報生成処理の一例である。
 以上、上記した本実施形態によれば以下の効果を奏する。
<効果1>ティーチング装置10は、図3に示すアーム部105,107と、ハンド部109,111とを備えるロボットアーム101,103を制御する制御情報D5を生成する。ティーチング装置10は、ハンド部109,111が作業位置において実施するワークW1,W2を挟む作業等の作業情報D3を入力するための入力部67を備える。ユーザは、マーカー部43を設けた治具15を動かしてモーションキャプチャーを実施する際に、適切なタイミングで入力部67を操作し、産業用ロボット100にさせたい作業内容を作業情報D3として入力することで、ティーチング装置10に対しハンド部109,111の細かい作業内容を設定することが可能となる。これにより、ティーチング装置10は、治具15の位置情報D2等と、作業情報D3とをリンクさせた一連の作業の制御情報D5を生成することが可能となる。
<効果2>治具15は、駆動スイッチ51が操作されることによってアクチュエーター49が駆動する。アクチュエーター49の駆動に応じて、可動部用マーカー部46が取り付けられたエンドエフェクタ45は、駆動する。制御情報生成装置17は、モーションキャプチャー時において、アクチュエーター49の駆動に応じて可動する可動部用マーカー部46の動作をトラッキングする。これにより、ユーザは、所定の作業位置において、アクチュエーター49によってエンドエフェクタ45を動作させることによって、人の指等で模擬する場合に比べて、ワークW1,W2を掴んだりする動作等をより忠実に再現することが可能となる。
<効果3>制御情報生成部75は、S31において、アーム部105,107を供給装置81,82の供給位置(供給位置用マーカー部84,85の位置)まで移動させた後、ハンド部109,111によるワークW1,W2の挟持作業を実施する前に、供給装置82の供給位置とハンド部109,111の位置との誤差を補正する情報を制御情報D5に追加する。治具15をユーザが手で動かす場合には、マーカー部43の移動の精度は、ユーザが治具15を操る精度に依存する。これに対し、制御情報生成部75は、作業位置で作業を実施する前に位置補正を実施する情報を制御情報D5に追加することで、高い精度が要求される作業にも対応可能な制御情報D5を生成することが可能となる。
<効果4>移動情報生成部73は、S25において、図6に示す複数のサンプリング点SP1の中から特徴点の抽出し、抽出した特徴点(例えば、サンプリング点SP1A,SP1B)の座標位置から、特徴点間の傾き等を演算しマーカー部43A(治具15A)の移動方向を検出する。また、移動情報生成部73は、特徴点間のサンプリング点SP1の位置情報D2を近似する補正処理を行う。これにより、生成した制御情報D5に基づいてロボットアーム101,103をより滑らかに動作させ、無駄な動作を省いて作業効率を向上させることが可能となる。
<効果5>また、移動情報生成部73は、特徴点とは別の処理方法として、位置情報生成部71によってサンプリングされた複数のサンプリング点SP1うち、隣接するサンプリング点SP1の座標位置から傾きを演算し、マーカー部43A(治具15A)の移動方向を検出してもよい。あるいは、移動情報生成部73は、例えば、隣接するサンプリング点SP1間の距離と、位置情報生成部71のサンプリング周期とを乗算してマーカー部43Aの移動速度を検出してもよい。このような構成では、サンプリング周期の時間を変更することで、マーカー部43の位置、移動方向、及び移動速度を検出する精度を調整することが可能となる。
<効果6>移動情報生成部73は、S27において、サンプリング点SP1,SP2を結ぶ曲線の曲率等が、産業用ロボット100の移動能力を超えていた場合、位置情報D2を補正し、移動情報D4の生成を再度実行する。これにより、生成した制御情報D5を実際に制御する産業用ロボット100の移動能力に最適化し、当該産業用ロボット100を制御するデータとして制御情報D5を使用することが容易となる。
<効果7>位置情報生成部71は、S17において、3つの基準マーカー部91の重心位置を基準として、マーカー部43A,43Bの相対的な座標位置を演算する。これにより、生成した制御情報D5を使用する場合、基準マーカー部91の重心位置を、実際の作業領域内の基準、例えば、図3に示す基板Bの中心位置に合わせることで、産業用ロボット100を精度よく制御することが可能となる。
 なお、本発明は、上記実施形態に限定されるものではなく、当業者の知識に基づいて種々の変更、改良を施した種々の態様で実施することが可能である。
 例えば、上記実施形態では、複数の治具15A,15Bを用いたが、これに限らず、1つ又は3つ以上の治具15を用いてもよい。また、1つの治具15を複数回動作させて取得した複数の制御情報D5を、後から合成してもよい。
 また、上記実施形態において、治具15の構成、可動部用マーカー部46の位置等は、一例であり、適宜変更可能である。図7は、別例の治具120を示している。なお、以下の説明では、上記実施形態と同様の構成については、同一符号を付し、その説明を適宜省略する。治具120の一対のエンドエフェクタ123,124は、外側に開く湾曲形状をなしており、互いの間にマーカー部43が設けられている。エンドエフェクタ123,124の各々には、形状の異なる可動部用マーカー126,127が設けられている。可動部用マーカー126,127は、一方に長い長方形状をなしており、エンドエフェクタ123,124の延設方向に向かって配置されている。可動部用マーカー126は、可動部用マーカー127に比べて長くなっている。このような構成では、可動部用マーカー126,127の反射特性だけでなく、形状に差を設けることで、治具120の上下方向の向きや傾きを検出し易くすることが可能となる。
 また、治具120の本体部129には、3つの本体部用マーカー部131が設けられている。3つの本体部用マーカー部131は、互いの距離が異なるように、例えば、1つの直角三角形の各頂点となる位置に設けられている。このような構成では、例えば、3つの本体部用マーカー部131の各位置を検出し、三角測量の原理等を利用したアルゴリズムによって治具120の傾き等を検出することが可能となる。
 また、図8に示すように、エンドエフェクタ45を備えない治具140を用いてもよい。図8に示す治具140は、T字形状をなしており、直交する3方向に延びる部分のそれぞれにマーカー部142,143,144が設けられている。マーカー部142~144は、一方に長い長方形状をなしており、互いに異なる長さとなっている。このような構成の治具140を用いても、制御情報生成装置17に対して、アーム部105,107の位置や移動方向等を教示することが可能となる。
 また上記実施形態では、治具15Aのマーカー部43Aを、照明装置33が照射する特定の波長の光を反射する反射特性とし、もう一方の治具15Bのマーカー部43Bを、照明装置34が照射する特定の波長の光を反射する反射特性として構成し、2つのマーカー部43A,43Bの反射特性に差を設けることで識別していたが、識別方法はこれに限定されない。例えば、図9に示すように、一方の治具150に3つのマーカー部151を設け、図10に示すように、他方の治具160に4つのマーカー部161を設けて、それぞれをグループ化して識別してもよい。なお、以下の説明では、図7の治具120と同様の構成については、同一符号を付し、その説明を適宜省略する。
 図9に示すように、3つのマーカー部151の各々は、エンドエフェクタ123の先端部、エンドエフェクタ124の先端部、本体部129の中央部分にそれぞれ設けられ、図9中に一点鎖線で示すように、略正三角形の頂点の位置に設けられている。また、図10に示すように、4つのマーカー部161は、エンドエフェクタ123の先端部、エンドエフェクタ124の先端部、本体部129における端部部分(図10における左右両側の端部)にそれぞれ設けられ、図10中に一点鎖線で示すように、台形を構成する位置に設けられている。このため、マーカー部151の重心位置153と、マーカー部161の重心位置163は、互いに異なる位置となる。
 そして、例えば、モーションキャプチャーを実行する前の初期設定として、制御情報生成装置17は、トラッキング領域R1内に挿入された治具150を撮像し、3つのマーカー部151をグループ化し、マーカー部151の重心位置153を被検出対象として設定する。同様に、制御情報生成装置17は、治具160を撮像し、4つのマーカー部161をグループ化し、マーカー部161の重心位置163を被検出対象として設定する。
 これにより、グループ化された各マーカー部151,161の群単位で、撮像データD1から抽出した位置情報D2(座標位置)のマッチングを実施することで、各マーカー部151,161(重心位置153,163)の位置や移動方向の混同を防ぎ、精度よく検出することが可能となる。また、マーカー部151,161の互いの重心位置153,163が異なるため、抽出した座標位置と、マーカー部151,161のマッチングが容易となる。また、例えば、3つのマーカー部151の一つの位置が検出できなくとも、他のマーカー部151の位置情報に基づいて検出できないマーカー部151の位置を補間し、重心位置153を取得することで、位置の消失を防止することが可能となる。
 また、2つのマーカー部43A,43Bの識別方法は、上記した反射特性やグループ化に限らず、2つのマーカー部43A,43Bの互いの色、大きさ、形状等を異ならせることで、識別してもよい。あるいは、これらの組み合わせによって異なる特性を付与し、マーカー部43A,43Bを識別してもよい。あるいは、マーカー部43A,43Bを異なる発光色のLED等で構成し、マーカー部43A,43B自体を発光させてもよい。
 また、上記実施形態において、CPU61は、S27において曲率及び移動速度に基づいて、位置情報D2を補正したが、これに限らず、産業用ロボット100の最大加速度に基づいて位置情報D2を補正してもよい。
 また、上記実施形態では、入力部67を操作してリアルタイムで作業情報D3を入力したが、これに限らない。例えば、特定のマーカー部を予め登録しておき、制御情報生成装置17は、その特定のマーカー部を検出したタイミングを、作業情報D3を追加するタイミングの情報として制御情報D5に保存してもよい。ユーザは、制御情報D5を生成した後に、制御情報D5に保存された作業情報D3を挿入すべきタイミングの情報を検索し、必要な作業情報D3を追加してもよい。従来の構成では、メインプログラムのどのポイントに必要なサブルーチンを追加するのかを、メインプログラムの内容を見ながら検索する必要があった。これに対し、当該方法によれば、追加すべきポイントが予め設定されているため、サブルーチンの追加が容易となる。この場合、特定のマーカー部は、本願における入力部の一例となる。
 また、上記実施形態において、位置情報生成部71は、ユーザの手作業によるぶれを修正するため、生成した位置情報D2(座標位置)を補正する処理を実行してもよい。
 また、制御情報D5は、位置情報生成部71が生成した位置情報D2のすべてを使用せずに、特徴点(開始点、通過点、到達点)だけを抽出して、その特徴点を結ぶ線路の移動を可能とする制御情報D5を生成してもよい。
 また、本願におけるロボットとして、ロボットアーム101,103に適用する例について説明したが、これに限定されない。例えば、本願におけるロボットは、電子部品の吸着やレーザビームの照射、ネジ締め等の作業を行う作業部を備えるロボットでもよい。また、シリアルリンク機構を備えたロボットに限らず、XY軸方向に直交して動作するロボット、パラレルリンク機構を備えたロボットでもよい。
 また、上記実施形態では、光学方式を用いたモーションキャプチャーについて説明したが、本願におけるモーションキャプチャーは、他との方法、例えば、磁気センサの動作を検出する磁気方式でもよい。例えば、治具15に位置データを送信する磁気センサを取り付け、カメラ13の代わりに位置データを受信する受信装置を取り付けてもよい。この場合、当該磁気センサは、本願における移動部の位置を示す位置マーカー部に対応する。また、受信装置は、検出部に対応する。
 10 ティーチング装置、13 カメラ(検出部)、15 治具、43 マーカー部(位置マーカー部)、45 エンドエフェクタ(可動部)、46 可動部用マーカー部、49 アクチュエーター(駆動部)、61 CPU(処理部)、67 入力部、91 基準マーカー部、101,103 ロボットアーム(ロボット)、105,107 アーム部(移動部)、109,111 ハンド部(作業部)、D1 撮像データ(検出データ)、D2 位置情報、D3 作業情報、D5 制御情報、SP1,SP2 サンプリング点、SP1A,SP1B,SP2A,SP2B サンプリング点(特徴点)。

Claims (10)

  1.  移動部と、前記移動部に設けられた作業部とを備えるロボットの動作を制御する制御情報を生成するティーチング装置であって、
     前記移動部の位置を示す位置マーカー部を有する治具と、
     前記治具の移動にともなって移動する前記位置マーカー部を検出する検出部と、
     前記作業部が作業位置において実施する作業に係わる作業情報を入力する入力部と、
     前記検出部が前記位置マーカー部を検出した検出データと、前記入力部の前記作業情報とを処理する処理部と、を備え、
     前記処理部は、
     前記検出データに基づいて、前記位置マーカー部の3次元座標の位置情報を生成する位置情報生成処理と、
     前記位置情報に基づいて、前記位置マーカー部の移動方向及び移動速度に係わる移動情報を生成する移動情報生成処理と、
     前記位置情報及び前記移動情報に応じて前記移動部を移動させ、且つ前記作業情報に応じて前記作業部に作業をさせる一連の作業の前記制御情報を生成する制御情報生成処理と、を実行することを特徴とするティーチング装置。
  2.  前記治具は、可動部と、前記可動部を駆動する駆動部と、前記可動部の位置を示す可動部用マーカー部とを有し、
     前記処理部は、前記位置情報生成処理として、前記駆動部の駆動に基づいて前記可動部が動作するのにともなって移動する前記可動部用マーカー部の前記位置情報を生成することを特徴とする請求項1に記載のティーチング装置。
  3.  前記処理部は、前記制御情報生成処理において、前記移動部を移動させた後、前記作業部による作業を実施する前に実行する前記制御情報として、前記作業位置における前記作業部の位置を補正する制御情報を追加することを特徴とする請求項1又は請求項2に記載のティーチング装置。
  4.  前記処理部は、前記位置情報生成処理において、生成した前記位置情報の中から複数の特徴点を抽出し、前記特徴点の間の前記位置情報を近似する補正処理を行うことを特徴とする請求項1乃至請求項3のいずれかに記載のティーチング装置。
  5.  前記処理部は、前記位置情報生成処理として、前記検出データに基づいて、前記位置マーカー部の位置をサンプリングし、サンプリング点の位置を前記位置情報として生成することを特徴とする請求項1乃至請求項3のいずれかに記載のティーチング装置。
  6.  前記処理部は、前記移動情報生成処理として、前記位置情報生成処理によって生成された複数のサンプリング点において、隣接する前記サンプリング点間の位置関係に基づいて前記移動方向を検出し、隣接する前記サンプリング点間の距離とサンプリング周期とに基づいて前記移動速度を検出することを特徴とする請求項5に記載のティーチング装置。
  7.  前記処理部は、前記移動情報生成処理として、前記サンプリング点を結ぶ曲線の曲率が所定の曲率を超えていた場合、前記移動速度が所定の速度を超えていた場合、及び前記移動速度における加速度が所定の加速度を超えていた場合の少なくとも一つの場合に、前記位置情報を補正することを特徴とする請求項6に記載のティーチング装置。
  8.  前記ロボットの動作の基準となる位置に設けられた基準マーカー部を備え、
     前記検出部は、前記基準マーカー部を検出し、
     前記処理部は、前記位置情報生成処理において、前記基準マーカー部に対する前記位置マーカー部の相対的な位置を、前記位置情報として生成することを特徴とする請求項1乃至請求項7のいずれかに記載のティーチング装置。
  9.  前記ロボットは、前記移動部の駆動機構としてシリアルリンク機構を備えることを特徴とする請求項1乃至請求項8のいずれかに記載のティーチング装置。
  10.  移動部と、前記移動部に設けられた作業部とを備えるロボットの動作を制御する制御情報の生成方法であって、前記移動部の位置を示す位置マーカー部を有する治具と、前記治具の移動にともなって移動する前記位置マーカー部を検出する検出部と、前記作業部が作業位置において実施する作業に係わる作業情報を入力する入力部と、を備えるティーチング装置に対し、
     前記検出部が前記位置マーカー部を検出した検出データに基づいて、前記位置マーカー部の3次元座標の位置情報を生成する位置情報生成ステップと、
     前記位置情報に基づいて、前記位置マーカー部の移動方向及び移動速度に係わる移動情報を生成する移動情報生成ステップと、
     前記位置情報及び前記移動情報に応じて前記移動部を移動させ、且つ前記作業情報に応じて前記作業部に作業をさせる一連の作業の前記制御情報を生成する制御情報生成ステップ処理と、を実行させることを特徴とする制御情報の生成方法。
PCT/JP2015/058427 2015-03-20 2015-03-20 ティーチング装置及び制御情報の生成方法 WO2016151668A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2017507137A JP6499273B2 (ja) 2015-03-20 2015-03-20 ティーチング装置及び制御情報の生成方法
PCT/JP2015/058427 WO2016151668A1 (ja) 2015-03-20 2015-03-20 ティーチング装置及び制御情報の生成方法
EP15886225.0A EP3272473B1 (en) 2015-03-20 2015-03-20 Teaching device and method for generating control information
US15/556,185 US10754307B2 (en) 2015-03-20 2015-03-20 Teaching device and control information generation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/058427 WO2016151668A1 (ja) 2015-03-20 2015-03-20 ティーチング装置及び制御情報の生成方法

Publications (1)

Publication Number Publication Date
WO2016151668A1 true WO2016151668A1 (ja) 2016-09-29

Family

ID=56977136

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/058427 WO2016151668A1 (ja) 2015-03-20 2015-03-20 ティーチング装置及び制御情報の生成方法

Country Status (4)

Country Link
US (1) US10754307B2 (ja)
EP (1) EP3272473B1 (ja)
JP (1) JP6499273B2 (ja)
WO (1) WO2016151668A1 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107272578A (zh) * 2017-07-01 2017-10-20 华中科技大学 一种基于多核处理器的视觉伺服控制系统
JP2018192569A (ja) * 2017-05-18 2018-12-06 ファナック株式会社 プログラミング装置及びロボット制御方法
WO2018230517A1 (ja) * 2017-06-13 2018-12-20 川崎重工業株式会社 作業システム
JP2018202501A (ja) * 2017-05-30 2018-12-27 セイコーエプソン株式会社 ロボット制御装置、ロボット、及びロボットシステム
JP2020097821A (ja) * 2018-12-17 2020-06-25 ドリルマシン株式会社 掘削システム
JP2020182669A (ja) * 2019-05-08 2020-11-12 住友ゴム工業株式会社 スイング解析装置
JP2020182670A (ja) * 2019-05-08 2020-11-12 住友ゴム工業株式会社 スイング解析装置

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180015774A (ko) * 2015-09-25 2018-02-14 두산로보틱스 주식회사 로봇 제어 방법 및 장치
US10427305B2 (en) * 2016-07-21 2019-10-01 Autodesk, Inc. Robotic camera control via motion capture
CN106774118B (zh) * 2016-12-20 2019-08-27 上海新时达电气股份有限公司 机器人操作盒及操作系统
WO2018222762A2 (en) * 2017-05-30 2018-12-06 Sisu Devices Llc Robotic point capture and motion control
WO2021005403A1 (en) * 2019-07-11 2021-01-14 Siemens Industry Software Ltd. Method and system for converting a movement operation into a robot trajectory
US11878432B2 (en) * 2019-10-21 2024-01-23 Silicon Laboratories Inc. Low-cost robotics for placement of integrated circuit and method therefor
US11529742B2 (en) 2019-10-21 2022-12-20 Silicon Laboratories Inc. Control of low-cost robotics and method therefor
US20220032461A1 (en) * 2020-07-31 2022-02-03 GrayMatter Robotics Inc. Method to incorporate complex physical constraints in path-constrained trajectory planning for serial-link manipulator
JP2022181974A (ja) * 2021-05-27 2022-12-08 株式会社ジャノメ 経路教示データ作成装置及び経路教示データ作成方法並びにプログラム

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02148111A (ja) * 1988-11-30 1990-06-07 Toshiba Corp ロボットの制御方法及びその装置
JPH06102919A (ja) * 1992-09-22 1994-04-15 Nippon Telegr & Teleph Corp <Ntt> ロボット軌道を教示するための方法
JPH0947989A (ja) * 1995-08-08 1997-02-18 Kawasaki Heavy Ind Ltd ロボット作業教示装置
US5617515A (en) * 1994-07-11 1997-04-01 Dynetics, Inc. Method and apparatus for controlling and programming a robot or other moveable object
JPH09216183A (ja) * 1996-02-13 1997-08-19 Kawasaki Heavy Ind Ltd ロボット3次元位置姿勢教示システム
JPH10264059A (ja) * 1997-03-27 1998-10-06 Trinity Ind Corp 塗装ロボットのティーチング装置
JP2004261878A (ja) * 2003-02-06 2004-09-24 Daihen Corp 作業ロボットを用いた制御システムおよびこの制御システムによるワーク加工方法
JP2004348250A (ja) * 2003-05-20 2004-12-09 Yaskawa Electric Corp ロボット制御装置
JP2005196242A (ja) * 2003-12-26 2005-07-21 Fanuc Ltd 倣い加工装置
JP2013034835A (ja) * 2011-08-04 2013-02-21 Olympus Corp 手術支援装置及びその制御方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60263691A (ja) * 1984-06-08 1985-12-27 株式会社日立製作所 ロボツト用検査装置
JPH077887U (ja) * 1993-07-06 1995-02-03 株式会社明電舎 ロボットと画像処理装置との座標合せ装置
JPH0876829A (ja) * 1994-09-07 1996-03-22 Sumitomo Metal Ind Ltd 連続作業経路のロボットへの教示方法
DE102008062624A1 (de) * 2008-12-17 2010-06-24 Kuka Roboter Gmbh Handgerät und Verfahren zur Erfassung der Raumposition eines Arbeitspunktes eines Manipulators
JP2011200997A (ja) 2010-03-26 2011-10-13 Kanto Auto Works Ltd ロボットのティーチング装置及びティーチング方法
JP5715809B2 (ja) * 2010-03-29 2015-05-13 株式会社ダイヘン ロボットの作業プログラム作成方法、ロボットの作業プログラム作成装置、及びロボット制御システム
DE102012009010A1 (de) * 2012-05-05 2012-12-13 Daimler Ag Verfahren zum Erzeugen einer Bewegung eines Roboters
US9242376B2 (en) * 2013-03-28 2016-01-26 Denso Wave Incorporated Method of generating path of multiaxial robot and control apparatus for the multiaxial robot
JP5890472B2 (ja) * 2014-06-13 2016-03-22 ファナック株式会社 周期動作サイクルに同期した重畳サイクルを重畳させる機能を有する数値制御装置
KR101661599B1 (ko) * 2014-08-20 2016-10-04 한국과학기술연구원 하드웨어 한계를 고려하는 동작 데이터의 압축 및 복원을 이용한 로봇 동작 데이터 처리 시스템
US10898272B2 (en) * 2017-08-08 2021-01-26 Biosense Webster (Israel) Ltd. Visualizing navigation of a medical device in a patient organ using a dummy device and a physical 3D model

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02148111A (ja) * 1988-11-30 1990-06-07 Toshiba Corp ロボットの制御方法及びその装置
JPH06102919A (ja) * 1992-09-22 1994-04-15 Nippon Telegr & Teleph Corp <Ntt> ロボット軌道を教示するための方法
US5617515A (en) * 1994-07-11 1997-04-01 Dynetics, Inc. Method and apparatus for controlling and programming a robot or other moveable object
JPH0947989A (ja) * 1995-08-08 1997-02-18 Kawasaki Heavy Ind Ltd ロボット作業教示装置
JPH09216183A (ja) * 1996-02-13 1997-08-19 Kawasaki Heavy Ind Ltd ロボット3次元位置姿勢教示システム
JPH10264059A (ja) * 1997-03-27 1998-10-06 Trinity Ind Corp 塗装ロボットのティーチング装置
JP2004261878A (ja) * 2003-02-06 2004-09-24 Daihen Corp 作業ロボットを用いた制御システムおよびこの制御システムによるワーク加工方法
JP2004348250A (ja) * 2003-05-20 2004-12-09 Yaskawa Electric Corp ロボット制御装置
JP2005196242A (ja) * 2003-12-26 2005-07-21 Fanuc Ltd 倣い加工装置
JP2013034835A (ja) * 2011-08-04 2013-02-21 Olympus Corp 手術支援装置及びその制御方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
LIAN-YI CHEN; ET AL.: "Robot teaching with operating stick using the virtual reality system, Robot and Human Communication, 1995. RO -MAN'95 TOKYO", PROCEEDINGS., 4TH IEEE INTERNATIONAL WORKSHOP, pages 345 - 350 *
See also references of EP3272473A4 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10647003B2 (en) 2017-05-18 2020-05-12 Fanuc Corporation Programming device and robot control method
JP2018192569A (ja) * 2017-05-18 2018-12-06 ファナック株式会社 プログラミング装置及びロボット制御方法
US11364636B2 (en) 2017-05-18 2022-06-21 Fanuc Corporation Programming device and robot control method
JP2018202501A (ja) * 2017-05-30 2018-12-27 セイコーエプソン株式会社 ロボット制御装置、ロボット、及びロボットシステム
US11613021B2 (en) 2017-06-13 2023-03-28 Kawasaki Jukogyo Kabushiki Kaisha Operation system
JPWO2018230517A1 (ja) * 2017-06-13 2020-04-23 川崎重工業株式会社 作業システム
CN110740841A (zh) * 2017-06-13 2020-01-31 川崎重工业株式会社 作业系统
WO2018230517A1 (ja) * 2017-06-13 2018-12-20 川崎重工業株式会社 作業システム
JP7145851B2 (ja) 2017-06-13 2022-10-03 川崎重工業株式会社 作業システム
CN110740841B (zh) * 2017-06-13 2023-10-27 川崎重工业株式会社 作业系统
CN107272578A (zh) * 2017-07-01 2017-10-20 华中科技大学 一种基于多核处理器的视觉伺服控制系统
JP2020097821A (ja) * 2018-12-17 2020-06-25 ドリルマシン株式会社 掘削システム
JP2020182669A (ja) * 2019-05-08 2020-11-12 住友ゴム工業株式会社 スイング解析装置
JP2020182670A (ja) * 2019-05-08 2020-11-12 住友ゴム工業株式会社 スイング解析装置
JP7283693B2 (ja) 2019-05-08 2023-05-30 住友ゴム工業株式会社 スイング解析装置
JP7283692B2 (ja) 2019-05-08 2023-05-30 住友ゴム工業株式会社 スイング解析装置

Also Published As

Publication number Publication date
JP6499273B2 (ja) 2019-04-10
EP3272473B1 (en) 2022-09-14
US20180046152A1 (en) 2018-02-15
US10754307B2 (en) 2020-08-25
EP3272473A1 (en) 2018-01-24
JPWO2016151668A1 (ja) 2018-02-15
EP3272473A4 (en) 2018-11-07

Similar Documents

Publication Publication Date Title
JP6499273B2 (ja) ティーチング装置及び制御情報の生成方法
Kofman et al. Teleoperation of a robot manipulator using a vision-based human-robot interface
TWI576221B (zh) Robot and its control method
US9519736B2 (en) Data generation device for vision sensor and detection simulation system
JP7064884B2 (ja) 部品組付装置の較正方法
JP2019018272A (ja) モーション生成方法、モーション生成装置、システム及びコンピュータプログラム
JP2018111155A (ja) ロボット制御装置、ロボット、及びロボットシステム
US20190030722A1 (en) Control device, robot system, and control method
JP6499272B2 (ja) ティーチング装置及び制御情報の生成方法
JP2008207262A (ja) マニピュレータシステム
JP2008168372A (ja) ロボット装置及び形状認識方法
JP2017100202A (ja) ロボットシステム、制御装置、制御方法、及びプログラム
JP6387599B2 (ja) ロボット、ロボットシステム、制御装置及び制御方法
JP2001287179A (ja) 産業用ロボット教示装置
JP2006082170A (ja) キャリブレーション方法
JP2006297559A (ja) キャリブレーションシステムおよびロボットのキャリブレーション方法
JP6660962B2 (ja) ティーチング装置及び制御情報の生成方法
WO2020179416A1 (ja) ロボット制御装置、ロボット制御方法、及びロボット制御プログラム
JP2011177808A (ja) ロボット制御装置
Zhang et al. Vision-guided robot alignment for scalable, flexible assembly automation
WO2023013740A1 (ja) ロボット制御装置、ロボット制御システム、及びロボット制御方法
TWI696529B (zh) 自動定位方法以及自動控制裝置
TWI725630B (zh) 加工路徑生成裝置及其方法
JP6343930B2 (ja) ロボットシステム、ロボット制御装置、及びロボット制御方法
US11712797B2 (en) Dual hand detection in teaching from demonstration

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017507137

Country of ref document: JP

Kind code of ref document: A

REEP Request for entry into the european phase

Ref document number: 2015886225

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 15556185

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE