WO2013027313A1 - ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路 - Google Patents

ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路 Download PDF

Info

Publication number
WO2013027313A1
WO2013027313A1 PCT/JP2012/003257 JP2012003257W WO2013027313A1 WO 2013027313 A1 WO2013027313 A1 WO 2013027313A1 JP 2012003257 W JP2012003257 W JP 2012003257W WO 2013027313 A1 WO2013027313 A1 WO 2013027313A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
change point
robot arm
time
motion
Prior art date
Application number
PCT/JP2012/003257
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 JP2013529840A priority Critical patent/JP5583282B2/ja
Publication of WO2013027313A1 publication Critical patent/WO2013027313A1/ja
Priority to US14/186,230 priority patent/US9486920B2/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • 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/34Director, elements to supervisory
    • G05B2219/34406Effect of computer, communication delay in real time control
    • 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/36433Position assisted teaching
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39469Grip flexible, deformable plate, object and manipulate it
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40032Peg and hole insertion, mating and joining, remote center compliance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40059Mount, couple and demount, decouple exchangeable mechanical modules
    • 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/40116Learn by operator observation, symbiosis, show, watch
    • 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 robot arm control device and control method for generating and teaching a robot motion, a robot having a robot arm control device, a robot arm control program, and an integrated electronic circuit.
  • operations such as flexible substrate insertion operations that handle flexible objects are complicated, and are still performed manually.
  • a person can perform a complicated operation by estimating a deflection state or a position of a flexible object by a reaction force transmitted to a hand when the flexible object comes into contact with the object and the flexible object bends.
  • Direct teaching is used to teach the robot by touching it as a method of teaching the work.
  • sensor feedback law the relationship between environmental information and information on human operation of the robot
  • it is applied to origami work that requires a sensor feedback law based on changes in minute force information (see Non-Patent Document 1).
  • FIGS. 54A to 54H and FIG. 54A to 54H show a procedure in which a human hand 1001 operates and teaches the robot arm 1102.
  • 54A shows a procedure in which a human hand 1001 teaches the robot arm 1102 in the order of FIG. 54A ⁇ FIG. 54C ⁇ FIG. 54E ⁇ FIG. 54G.
  • the states of the flexible substrate 1002 and the connector 1003 at that time are shown in the order of FIG. 54B ⁇ FIG. 54D ⁇ FIG. 54F ⁇ FIG. 54H.
  • the human hand 1001 grasps the robot arm 1102 and the person starts teaching the robot.
  • the flexible substrate 1002 and the connector 1003 are not in contact with each other, the reaction force at the time of contact between the flexible substrate 1002 and the connector 1003 is not transmitted to the human hand 1001.
  • FIG. 54C shows a point in time when the flexible substrate 1002 and the entrance of the connector 1003 are in contact with each other. At this time, it is the moment when the force at the time of contact is generated, and no force is transmitted to the human hand 1001.
  • FIG. 54E it is immediately after the flexible substrate 1002 and the entrance of the connector 1003 are in contact with each other, and the force at the time of contact is not transmitted to the human hand 1001. However, an unstable operation occurs in the human hand 1001 due to the reaction of the contact, and the robot arm 102 moves.
  • the reaction time has elapsed since the contact between the flexible substrate 1002 and the entrance of the connector 1003, and the force at the time of contact is transmitted to the human hand 1001.
  • a time point at which the flexible substrate 1002 is pushed into the connector 1003 and an insertion operation is performed is shown.
  • the human hand 1001 feels the reaction force at this time, the person adjusts how the flexible board 1002 is inserted into the connector 1003.
  • FIG. 55 shows the value of the force sensor 1716 and the position information of the robot arm 1102 in the teaching operation of FIGS. 54A to 54H.
  • the value of the force sensor 1716 indicates the magnitude of the reaction force transmitted to the human hand 1001 that is generated when the flexible substrate 1002 contacts the connector 1003.
  • a first solid line graph 550 indicates a value detected by the force sensor 1716.
  • a second solid line graph 551 indicates the position of the robot arm 1102.
  • the horizontal axis of FIG. 55 shows the time (ms) from the insertion work start time (0 ms) to the insertion work end time.
  • the left vertical axis in FIG. 55 indicates the position (mm) of the robot arm 1102.
  • the right vertical axis in FIG. 55 indicates the value (N) detected by the force sensor 1716.
  • the figure drawn below the graph of FIG. 55 shows whether the flexible substrate 1002 is inserted into the connector 1003 during the insertion operation time (the states of FIGS. 55A, 55C, 55E, and 55G).
  • the time indicated by reference symbol A is the time when the flexible substrate 1002 and the connector 1003 contact each other.
  • the time indicated by reference character C in FIG. 55 is a time zone in which an unstable operation occurs within the reaction time. As can be seen from the position information of the time zone, it can be confirmed that the position of the robot arm 102 has suddenly moved back and forth unintentionally.
  • the object of the present invention has been made in view of such problems, and when extracting human skills from teaching data such as direct teaching, prevents the influence of unstable operations that occur within human reaction time, It is an object to provide a robot arm control device and control method, a robot, a robot arm control program, and an integrated electronic circuit that can accurately extract human skills.
  • the present invention is configured as follows.
  • a control device for a robot arm that controls the operation of the robot arm, An operation information acquisition unit that acquires at least one operation information of the position, posture, and speed of the robot arm when the robot arm operates; An environment information acquisition unit that acquires environment information that is at least one of force information about the surrounding environment generated when the robot arm operates, volume information, and position information; A default reaction time information acquisition unit that acquires default reaction time information that is a predetermined time information from when the person receives the environmental information when operating the robot arm until the person operates the robot arm; Information change point detection that detects, as an information change point, a time point when at least one of the one or more pieces of movement information acquired by the movement information acquisition unit and the environmental information acquired by the environmental information acquisition unit changes.
  • the behavior change point detection unit for detecting the first detected time as a behavior change point
  • Feedback that generates, as a feedback rule, at least one piece of information of the one or more pieces of movement information acquired by the movement information acquisition unit and the environment information acquired by the environmental information acquisition unit for the time after the behavior change point
  • a motion generation unit configured to generate a motion of the robot arm based on the one or more motion information, the information change point, the behavior change point, and the feedback rule;
  • a robot arm control device comprising a control unit for controlling the operation of the robot arm based on the motion generation unit.
  • the feedback rule of the human operation since the feedback rule of the human operation at the time when the reaction time has elapsed from the time when the stimulus is generated, the feedback rule as intended by the person can be generated. In addition, unstable operation occurring within the reaction time can be prevented, and safety can be improved.
  • FIG. 1A is a block diagram of a robot arm in the robot according to the first embodiment of the present invention
  • FIG. 1B is a block diagram of the robot arm during teaching in the robot according to the first embodiment of the present invention
  • FIG. 1C is a block diagram of the robot arm during reproduction in the robot according to the first embodiment of the present invention
  • FIG. 1D is a block diagram of an input / output IF in the robot according to the first embodiment of the present invention
  • FIG. 2 is a data diagram of motion information in the robot according to the first embodiment of the present invention.
  • FIG. 3 is a data diagram of environmental information in the robot according to the first embodiment of the present invention.
  • FIG. 4 is a data diagram of predetermined reaction time information in the robot according to the first embodiment of the present invention.
  • FIG. 5 is a data diagram of information change points in the robot according to the first embodiment of the present invention.
  • FIG. 6 is a data diagram of behavior change points in the robot according to the first embodiment of the present invention.
  • FIG. 7 is an explanatory diagram of a robot arm in the robot according to the first embodiment of the present invention.
  • FIG. 8A is a diagram of the flexible substrate in the robot according to the first embodiment of the present invention viewed from below with respect to the insertion direction; FIG.
  • FIG. 8B is a diagram of the flexible substrate in the robot according to the first embodiment of the present invention viewed from the side with respect to the insertion direction;
  • FIG. 9A is a front view of the connector in the robot according to the first embodiment of the present invention with respect to the insertion direction;
  • FIG. 9B is a diagram of the connector in the robot according to the first embodiment of the present invention viewed from the side with respect to the insertion direction;
  • FIG. 10A is an explanatory diagram of an teaching operation of flexible substrate insertion work of a robot arm in the robot according to the first embodiment of the present invention (an example using force information);
  • FIG. 10B is an explanatory diagram of the teaching operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using force information);
  • FIG. 10C is an explanatory diagram (example using force information) of the teaching operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention;
  • FIG. 10D is an explanatory diagram (example using force information) of the teaching operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention;
  • FIG. 10E is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using force information);
  • FIG. 10F is an explanatory diagram (example using force information) of the teaching operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention.
  • FIG. 10G is an explanatory diagram (example using force information) of the teaching operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention;
  • FIG. 10H is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using force information);
  • FIG. 10I is an explanatory diagram (example using force information) of the teaching operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention;
  • FIG. 10G is an explanatory diagram (example using force information) of the teaching operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention.
  • FIG. 10H is an explanatory diagram of teaching operation of flexible substrate insertion
  • FIG. 10J is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using force information);
  • FIG. 11A is a diagram of force information and position information during teaching operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention;
  • FIG. 11B shows force information and position at the time of teaching operation of the flexible substrate insertion work of the robot arm in the robot of the first embodiment of the present invention for explaining another example of the behavior change point detection method shown in FIG. 11A.
  • Information diagram, FIG. 12A is an explanatory diagram of an operation for reproducing the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using force information);
  • FIG. 12A is an explanatory diagram of an operation for reproducing the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using force information);
  • FIG. 12A is an explanatory diagram of an
  • FIG. 12B is an explanatory diagram of an operation for reproducing the flexible substrate insertion operation of the robot arm in the robot according to the first embodiment of the present invention (an example using force information);
  • FIG. 12C is an explanatory diagram of a reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using force information);
  • FIG. 12D is an explanatory diagram (example of using force information) of the reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention;
  • FIG. 12E is an explanatory diagram of an operation of reproducing the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using force information);
  • FIG. 12F is an explanatory diagram of an operation for reproducing the flexible arm of the robot arm in the robot according to the first embodiment of the present invention (an example using force information);
  • FIG. 12G is an explanatory diagram (example using force information) of the reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention;
  • FIG. 12H is an explanatory diagram (example of using force information) of the reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention;
  • FIG. 12I is an explanatory diagram (example of using force information) of the reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention;
  • FIG. 12F is an explanatory diagram of an operation for reproducing the flexible arm of the robot arm in the robot according to the first embodiment of the present invention (an example using force information)
  • FIG. 12G is an explanatory diagram (example using force information) of the
  • FIG. 12J is an explanatory diagram (example of using force information) of the reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention
  • FIG. 13 is a diagram of force information and position information during the reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention
  • FIG. 14 is a diagram of a mounting position of the sound collecting device in the robot according to the first embodiment of the present invention
  • FIG. 15A is an explanatory diagram of an teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using volume information);
  • FIG. 15B is an explanatory diagram of the teaching operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using volume information);
  • FIG. 15C is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using volume information);
  • FIG. 15D is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using volume information);
  • FIG. 15E is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using volume information);
  • FIG. 15B is an explanatory diagram of the teaching operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using volume information);
  • FIG. 15D is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the
  • FIG. 15F is an explanatory diagram of the teaching operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using volume information);
  • FIG. 15G is an explanatory diagram of the teaching operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using volume information);
  • FIG. 15H is an explanatory diagram of the teaching operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using volume information);
  • FIG. 15I is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using volume information);
  • FIG. 15F is an explanatory diagram of the teaching operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using volume information);
  • FIG. 15H is an explanatory diagram of the teaching operation of the flexible substrate insertion work
  • FIG. 15J is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using volume information);
  • FIG. 16 is a diagram of volume information during teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention;
  • FIG. 17A is an explanatory diagram (example of using volume information) of the reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention;
  • FIG. 17B is an explanatory diagram of an operation of reproducing the flexible arm of the robot arm in the robot according to the first embodiment of the present invention (an example using volume information);
  • FIG. 17C is an explanatory diagram (example of using volume information) of the reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention
  • FIG. 17D is an explanatory diagram (example of using volume information) of the reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention
  • FIG. 17E is an explanatory diagram of reproduction operation of the flexible arm insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using volume information)
  • FIG. 17F is an explanatory diagram of an operation of reproducing the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using volume information);
  • FIG. 17G is an explanatory diagram (example of using volume information) of the reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention
  • FIG. 17H is an explanatory diagram (example of using volume information) of the reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention
  • FIG. 17I is an explanatory diagram of reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using volume information)
  • FIG. 17J is an explanatory diagram of a reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using volume information);
  • FIG. 18 is a diagram of volume information during the reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention
  • FIG. 19A is an explanatory diagram of object position information of the robot arm in the robot according to the first embodiment of the present invention.
  • FIG. 19B is an explanatory diagram of object position information of the robot arm in the robot according to the first embodiment of the present invention.
  • FIG. 19C is an explanatory diagram of object position information of the robot arm in the robot according to the first embodiment of the present invention.
  • FIG. 19D is an explanatory diagram of object position information of the robot arm in the robot according to the first embodiment of the present invention;
  • FIG. 19A is an explanatory diagram of object position information of the robot arm in the robot according to the first embodiment of the present invention.
  • FIG. 19B is an explanatory diagram of object position information of the robot arm in the robot according to the first embodiment of the present invention.
  • FIG. 19C is an explanatory diagram of object position information of the robot
  • FIG. 20A is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using object position information);
  • FIG. 20B is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using object position information);
  • FIG. 20C is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using object position information);
  • FIG. 20D is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using object position information);
  • FIG. 20A is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using object position information);
  • FIG. 20B is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the
  • FIG. 20E is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using object position information);
  • FIG. 20F is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using object position information);
  • FIG. 20G is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using object position information);
  • FIG. 20H is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using object position information);
  • FIG. 20E is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using object position information);
  • FIG. 20G is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in
  • FIG. 20I is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using object position information);
  • FIG. 20J is an explanatory diagram of teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (example using object position information);
  • FIG. 21 is a diagram of target object position information during teaching operation of flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention;
  • FIG. 22A is an explanatory diagram of a reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using object position information);
  • FIG. 22B is an explanatory diagram of the reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using the object position information);
  • FIG. 22C is an explanatory diagram of a reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using object position information);
  • FIG. 22D is an explanatory diagram of an operation of reproducing the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using object position information);
  • FIG. 22E is an explanatory diagram of an operation of reproducing the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using object position information);
  • FIG. 22C is an explanatory diagram of the reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using object position information);
  • FIG. 22D is an explanatory diagram of an operation of reproduc
  • FIG. 22F is an explanatory diagram of the reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using the object position information);
  • FIG. 22G is an explanatory diagram of an operation of reproducing the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using object position information);
  • FIG. 22H is an explanatory diagram of an operation for reproducing the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using object position information);
  • FIG. 22I is an explanatory diagram of an operation of reproducing the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using object position information);
  • FIG. 22F is an explanatory diagram of the reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using the object position information);
  • FIG. 22G is an explanatory diagram of an operation of
  • FIG. 22J is an explanatory diagram of an operation of reproducing the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention (an example using object position information);
  • FIG. 23 is a diagram of object position information during the reproduction operation of the flexible substrate insertion work of the robot arm in the robot according to the first embodiment of the present invention;
  • FIG. 24 is a flowchart of the robot according to the first embodiment of the present invention.
  • FIG. 25A is a block diagram of a robot arm in the robot according to the second embodiment of the present invention.
  • FIG. 25B is a block diagram of a motion generation unit in the robot according to the second embodiment of the present invention.
  • FIG. 33A is a diagram of force information and position information when the operation of the actual reaction time information during the reproduction operation of the flexible substrate insertion work of the robot arm in the robot of the third embodiment of the present invention is not deleted;
  • FIG. 33B is a diagram of force information and position information when deleting the operation of the actual reaction time information during the reproduction operation of the flexible arm insertion work of the robot arm in the robot of the third embodiment of the present invention;
  • FIG. 33C is a diagram of force information and position information in the case of interpolating the operation of the actual reaction time information during the reproduction operation of the flexible arm insertion work of the robot arm in the robot of the third embodiment of the present invention.
  • FIG. 34 is a flowchart of the robot according to the third embodiment of the present invention.
  • FIG. 35 is a block diagram of a robot arm in a robot according to a fourth embodiment of the present invention.
  • FIG. 36A is an explanatory diagram of a preliminary experiment of a robot arm in the robot according to the fourth embodiment of the present invention.
  • FIG. 36B is an explanatory diagram of a preliminary experiment of a robot arm in the robot according to the fourth embodiment of the present invention.
  • FIG. 36C is an explanatory diagram of a preliminary experiment of the robot arm in the robot according to the fourth embodiment of the present invention.
  • FIG. 36D is an explanatory diagram of a preliminary experiment of a robot arm in the robot according to the fourth embodiment of the present invention.
  • FIG. 37 is a diagram of force information and position information of a robot arm preliminary experiment in the robot according to the fourth embodiment of the present invention.
  • FIG. 38 is a data diagram of predetermined reaction time information in the robot according to the fourth embodiment of the present invention.
  • FIG. 39 is a flowchart of the robot according to the fourth embodiment of the present invention.
  • FIG. 40 is a block diagram of a robot arm in the robot according to the fifth embodiment of the present invention.
  • FIG. 41A is a diagram of force information and position information during teaching operation of flexible substrate insertion work of a robot arm in a robot according to a fifth embodiment of the present invention;
  • FIG. 41B is a diagram of force information and position information during teaching operation of the flexible substrate insertion work of the robot arm in the robot according to the fifth embodiment of the present invention;
  • FIG. 41C is a diagram of force information and position information during teaching operation of flexible substrate insertion work of the robot arm in the robot according to the fifth embodiment of the present invention
  • FIG. 42 is a data diagram of teaching data in the robot according to the fifth embodiment of the present invention.
  • FIG. 43 is a flowchart of the robot according to the fifth embodiment of the present invention.
  • FIG. 44 is a block diagram of a robot arm in the robot according to the sixth embodiment of the present invention.
  • FIG. 45 is a diagram of force information and position information during teaching operation of flexible substrate insertion work of a robot arm in a robot according to a sixth embodiment of the present invention; FIG.
  • FIG. 46A is a diagram of force information and position information during the reproduction operation of the flexible arm insertion work of the robot arm in the robot according to the sixth embodiment of the present invention (when preliminary operation information is corrected);
  • FIG. 46B is a diagram of force information and position information during the reproduction operation of the flexible arm insertion work of the robot arm in the robot according to the sixth embodiment of the present invention (when preliminary operation information is not corrected);
  • FIG. 47 is a flowchart of the robot according to the sixth embodiment of the present invention.
  • FIG. 48 is a block diagram of a robot arm in the robot according to the seventh embodiment of the present invention.
  • FIG. 49 is a diagram of force information of the teaching operation of the robot arm in the robot according to the seventh embodiment of the present invention.
  • FIG. 50 is a flowchart of the robot according to the seventh embodiment of the present invention.
  • FIG. 51A is a block diagram of a robot arm in the robot of the eighth embodiment of the present invention;
  • FIG. 51B is a block diagram of an information change point detection unit in the robot according to the eighth embodiment of the present invention.
  • FIG. 51C is a block diagram of a behavior change point detection unit in the robot according to the eighth embodiment of the present invention.
  • FIG. 52 is an explanatory diagram for detecting a change point of a robot arm in a robot according to an eighth embodiment of the present invention.
  • FIG. 53 is a flowchart of the robot according to the eighth embodiment of the present invention.
  • FIG. 51A is a block diagram of a robot arm in the robot of the eighth embodiment of the present invention
  • FIG. 51B is a block diagram of an information change point detection unit in the robot according to the eighth embodiment of the present invention.
  • FIG. 51C is a block diagram of a behavior change point detection unit in the robot
  • FIG. 54A is an explanatory diagram of a teaching operation of flexible substrate insertion work of a robot arm in a conventional robot
  • FIG. 54B is an explanatory diagram of a teaching operation of flexible substrate insertion work of a robot arm in a conventional robot
  • FIG. 54C is an explanatory diagram of a teaching operation of flexible substrate insertion work of a robot arm in a conventional robot
  • FIG. 54D is an explanatory diagram of a teaching operation of a flexible arm insertion work of a robot arm in a conventional robot
  • FIG. 54E is an explanatory view of a teaching operation of flexible substrate insertion work of a robot arm in a conventional robot
  • FIG. 54A is an explanatory diagram of a teaching operation of flexible substrate insertion work of a robot arm in a conventional robot
  • FIG. 54B is an explanatory diagram of a teaching operation of flexible substrate insertion work of a robot arm in a conventional robot
  • FIG. 54C is an explanatory diagram of a teaching operation of flexible substrate insertion work
  • FIG. 54F is an explanatory diagram of a teaching operation of flexible substrate insertion work of a robot arm in a conventional robot
  • FIG. 54G is an explanatory diagram of the teaching operation of the flexible substrate insertion work of the robot arm in the conventional robot
  • FIG. 54H is an explanatory diagram of a teaching operation of flexible substrate insertion work of a robot arm in a conventional robot
  • FIG. 55 is a diagram of force information and position information during teaching operation of flexible substrate insertion work of a robot arm in a conventional robot.
  • a control device for a robot arm that controls the operation of the robot arm, An operation information acquisition unit that acquires at least one operation information of the position, posture, and speed of the robot arm when the robot arm operates; An environment information acquisition unit that acquires environment information that is at least one of force information about the surrounding environment generated when the robot arm operates, volume information, and position information; A default reaction time information acquisition unit that acquires default reaction time information that is a predetermined time information from when the person receives the environmental information when operating the robot arm until the person operates the robot arm; Information change point detection that detects, as an information change point, a time point when at least one of the one or more pieces of movement information acquired by the movement information acquisition unit and the environmental information acquired by the environmental information acquisition unit changes.
  • the behavior change point detection unit for detecting the first detected time as a behavior change point
  • Feedback that generates, as a feedback rule, at least one piece of information of the one or more pieces of movement information acquired by the movement information acquisition unit and the environment information acquired by the environmental information acquisition unit for the time after the behavior change point
  • a motion generation unit configured to generate a motion of the robot arm based on the one or more motion information, the information change point, the behavior change point, and the feedback rule;
  • a robot arm control device comprising a control unit for controlling the operation of the robot arm based on the motion generation unit.
  • the feedback rule of the operation of the person at the time when the reaction time has elapsed from the time when the stimulus is generated since the feedback rule of the operation of the person at the time when the reaction time has elapsed from the time when the stimulus is generated, the feedback rule as intended by the person can be generated. In addition, unstable operation occurring within the reaction time can be prevented, and safety can be improved.
  • the reaction time when the behavior change point detection unit determines that the behavior change point is not detected at a time after the reaction time has elapsed from the information change point, the reaction time
  • the robot arm control device searches for a time until the information change point in a time before the elapsed time point and detects a time point first detected as the behavior change point.
  • the reaction time of a person is early (for example, when the skill level is high or when the concentration is high)
  • the change of the person's behavior can be accurately expressed, and the behavior change It can detect points and transfer human skills to the robot arm.
  • the work can be performed in the same manner as in the case of a person.
  • a time difference between the information change point detected by the information change point detection unit and the behavior change point detected by the behavior change point detection unit is detected as actual reaction time information. It has an actual reaction time information detector,
  • the motion generation unit is configured to use the one or more pieces of motion information acquired by the motion information acquisition unit when the person operates the robot arm, and the information change point detection unit when controlling the motion of the robot arm.
  • the robot arm control device according to the second aspect is provided that corrects according to the feedback law generated by the feedback law generator.
  • the feedback rule corresponding to the target work is obtained from the action information in the action generating unit. Based on the above, it can be applied by the control unit. Moreover, the unstable motion of the person who is working during the reaction time can be corrected (for example, deleted), and the motion intended by the person can be reproduced.
  • the apparatus further comprises a predetermined reaction time information measuring unit for measuring the predetermined reaction time information
  • the operation of the robot arm controlled by the robot arm control device is an assembly work, Assembling work with the robot arm in advance as an experiment, and the predetermined time information from when the person receives the environmental information when operating the robot arm until the person operates the robot arm.
  • the reaction time information is measured by the predetermined reaction time information measuring unit and used for teaching the assembly work.
  • the fourth aspect by measuring the predetermined reaction time information by the predetermined reaction time information measuring unit in advance, it is possible to deal with a difference in reaction time due to a person, a target work, or environmental information. As a result, the behavior change point can be accurately obtained by the behavior change point detection unit, and the work can be accurately performed even when the person, the target work, the environment information, or the like is changed.
  • the motion generation unit is the most actual reaction time information based on one or more of the motion information, the information change point, the behavior change point, and the feedback rule.
  • a robot arm control device according to a third aspect of the present invention that generates a short motion of the robot arm.
  • the motion generating unit can generate the motion of the robot arm having the shortest actual reaction time information, even when there are a plurality of teaching data, the best teaching data (in other words, , Teaching data with the shortest actual reaction time information) can be selected and reproduced by the action generation unit, and efficient work can be performed.
  • the action change point detection unit detects the preliminary action detection threshold time from the action change point.
  • the motion generation unit calculates the motion information of the time between the first time point and the second time point as the size of the motion information at the first time point and the second time point.
  • the behavior change point detection unit by detecting and correcting the motion information (preliminary motion information) of the time between the first time point and the second time point by the behavior change point detection unit, It is possible to correct teaching data not intended by a person. Therefore, accurate operation information can be created, and accurate work can be performed even when environmental fluctuations are large. In addition, if the preliminary motion is reproduced as it is, it moves rapidly, causing damage to the object. In such a case, it is possible to prevent the object from being damaged by deleting the preliminary motion information by the motion generation unit based on the person's selection motion.
  • the information change point detection unit includes a plurality of the environment information to be the information change points at the same time with respect to one behavior change point, If the force information is present, the force information is used; if the force information is not present, the volume information is used; if there is no volume information, the position information is used. Providing the device.
  • the seventh aspect even when there are a plurality of environment information as information change points, the environment information determined by the person is selected as described above, and the information change point is detected as the information change point. It can be detected by the part. Therefore, it is possible to accurately extract human skills and perform accurate work by the robot.
  • the information change point detection unit is at least one of the one or more pieces of motion information acquired by the motion information acquisition unit and the environment information acquired by the environment information acquisition unit.
  • the time when the displacement of the above information exceeds the information change point detection threshold is detected as an information change point
  • the behavior change point detection unit is a behavior change inspection in which at least one displacement of the one or more pieces of motion information acquired by the motion information acquisition unit and the environment information acquired by the environment information acquisition unit is detected.
  • the robot arm control device detects a time point that exceeds a use threshold as a behavior change point.
  • the information change point detection unit and the behavior change point detection unit smooth one or more pieces of the motion information and the environment information, respectively, and smooth the information before smoothing.
  • a control device for a robot arm according to a second aspect is provided in which a difference from the original information is obtained, and a time at which the smoothed difference exceeds a change point detection threshold is detected as a change point.
  • the ninth aspect it is possible to reduce the influence of noise by obtaining using the information smoothed when detecting the information change point or behavior change point by the information change point detection unit or behavior change point detection unit,
  • the change point can be detected accurately.
  • the robot arm control device in the motion generation unit, the robot arm control device according to a third aspect, wherein the robot arm is corrected so as to delete the operation of the robot arm at the time detected as the actual reaction time information.
  • the operation in the actual reaction time information when the operation in the actual reaction time information is deleted, the operation of the human reaction time can be deleted, and the unstable operation can be deleted.
  • the operation of the robot arm during the time detected as the actual reaction time information is corrected to be interpolated based on the operation at the information change point and the action at the behavior change point.
  • a robot arm control apparatus is provided.
  • the robot arm is corrected to be interpolated, and the motion correction switching
  • the robot arm control device according to the tenth or eleventh aspect, wherein the robot arm is corrected so as to delete the operation of the robot arm when it falls below a threshold value.
  • the robot arm A robot comprising the robot arm control device according to any one of the first to twelfth aspects for controlling the robot arm is provided.
  • the feedback rule of the operation of the person at the time when the reaction time has elapsed from the time when the stimulus is generated since the feedback rule of the operation of the person at the time when the reaction time has elapsed from the time when the stimulus is generated, the feedback law as intended by the person can be generated. In addition, unstable operation occurring within the reaction time can be prevented, and safety can be improved.
  • a robot arm control method for controlling an operation of a robot arm, Acquiring at least one or more movement information of the position, posture, and speed of the robot arm when the robot arm is moved by the movement information acquisition unit;
  • the environmental information acquisition unit acquires environmental information that is at least one of force information about the surrounding environment generated when the robot arm operates, volume information, and position information,
  • the default reaction time information which is a predetermined time information from when the person receives the environment information until the person operates the robot arm, is acquired by a default reaction time information acquisition unit
  • the information change point detection unit a time point when at least one of the one or more pieces of movement information acquired by the movement information acquisition unit and the environmental information acquired by the environmental information acquisition unit changes is an information change point.
  • Detection The time point at which the displacement of at least one of the one or more pieces of the operation information acquired by the operation information acquisition unit and the environment information acquired by the environment information acquisition unit changes from the information change point to the predetermined point.
  • Search for the time after the reaction time has passed detect the first detected time as a behavior change point in the behavior change point detection unit,
  • a feedback rule is generated using at least one piece of information of the one or more pieces of the movement information acquired by the movement information acquisition unit and the environment information acquired by the environmental information acquisition unit for a time after the behavior change point as a feedback rule.
  • the motion generation unit Generated by Based on one or more of the motion information, the information change point, the behavior change point, and the feedback rule, the motion generation unit generates a motion of the robot arm,
  • a control method for a robot arm wherein the operation of the robot arm is controlled by a control unit based on the motion generation unit.
  • the feedback rule of the human operation since the feedback rule of the human operation at the time when the reaction time has elapsed from the time when the stimulus is generated, the feedback rule as intended by the person can be generated. In addition, unstable operation occurring within the reaction time can be prevented, and safety can be improved.
  • the robot arm control program for controlling the operation of the robot arm, Acquiring at least one piece of movement information of the position, posture, and speed of the robot arm when the robot arm is moved by a movement information acquisition unit; Acquiring environmental information, which is at least one of force information about the surrounding environment generated when the robot arm is operated, volume information, and position information, in an environment information acquisition unit; A step of acquiring a predetermined reaction time information, which is a predetermined time information from when the person receives the environmental information when operating the robot arm until the person operates the robot arm, with a predetermined reaction time information acquisition unit.
  • a time point when at least one of the one or more pieces of movement information acquired by the movement information acquisition unit and the environmental information acquired by the environmental information acquisition unit changes is an information change point.
  • Detecting step The predetermined reaction time from the information change point to a time point when at least one of the one or more pieces of operation information acquired by the operation information acquisition unit and the environment information acquired by the environment information acquisition unit changes. Searching for the time after the point in time, and detecting at the behavior change point detection unit as the behavior change point at the first detected time, A feedback rule is generated using at least one piece of information of the one or more pieces of the movement information acquired by the movement information acquisition unit and the environment information acquired by the environmental information acquisition unit for a time after the behavior change point as a feedback rule.
  • Generating in part Generating a motion of the robot arm by a motion generation unit based on the one or more motion information, the information change point, the behavior change point, and the feedback rule;
  • a robot arm control program for causing a computer to execute a step of controlling the operation of the robot arm by a control unit based on the motion generation unit.
  • the feedback rule of the human operation at the time when the reaction time has elapsed from the time when the stimulus is generated since the feedback rule of the human operation at the time when the reaction time has elapsed from the time when the stimulus is generated, the feedback rule as intended by the person can be generated. In addition, unstable operation occurring within the reaction time can be prevented, and safety can be improved.
  • an integrated electronic circuit for controlling the operation of the robot arm, Acquiring at least one or more movement information of the position, posture, and speed of the robot arm when the robot arm is moved by the movement information acquisition unit;
  • the environmental information acquisition unit acquires environmental information that is at least one of force information about the surrounding environment generated when the robot arm operates, volume information, and position information,
  • the default reaction time information which is a predetermined time information from when the person receives the environment information until the person operates the robot arm, is acquired by a default reaction time information acquisition unit
  • the information change point detection unit a time point when at least one of the one or more pieces of movement information acquired by the movement information acquisition unit and the environmental information acquired by the environmental information acquisition unit changes is an information change point.
  • Detection The time point at which the displacement of at least one of the one or more pieces of the operation information acquired by the operation information acquisition unit and the environment information acquired by the environment information acquisition unit changes from the information change point to the predetermined point.
  • Search for the time after the reaction time has passed detect the first detected time as a behavior change point in the behavior change point detection unit,
  • a feedback rule is generated using at least one piece of information of the one or more pieces of the movement information acquired by the movement information acquisition unit and the environment information acquired by the environmental information acquisition unit for a time after the behavior change point as a feedback rule.
  • the motion generation unit Generated by Based on one or more of the motion information, the information change point, the behavior change point, and the feedback rule, the motion generation unit generates a motion of the robot arm,
  • An integrated electronic circuit is provided, wherein the operation of the robot arm is controlled by a control unit based on the operation generation unit.
  • the feedback rule of the operation of the person at the time when the reaction time has elapsed from the time when the stimulus is generated since the feedback rule of the operation of the person at the time when the reaction time has elapsed from the time when the stimulus is generated, the feedback rule as intended by the person can be generated. In addition, unstable operation occurring within the reaction time can be prevented, and safety can be improved.
  • FIG. 1A shows a block diagram of the robot 101 in the first embodiment of the present invention.
  • a robot 101 includes a robot arm 102 and a control device 103 for the robot arm 102.
  • the control device 103 of the robot arm 102 includes a control device main body 104 and a peripheral device 105.
  • the control device main body 104 includes an operation information acquisition unit 106, an environment information acquisition unit 107, a default reaction time information acquisition unit 108, a default reaction time information storage unit 108A, an information change point detection unit 109, and a behavior change inspection.
  • the output unit 110, the feedback rule generation unit 111, the operation generation unit 112, the operation storage unit 112A, the mode switching unit 113, and the control unit 114 are configured.
  • the peripheral device 105 includes an input / output IF (interface) 115 and a motor driver 116. Each function will be described below.
  • the motion information acquisition unit 106 receives position information and posture information of the robot arm 102 from the input / output IF 115 and time information from a timer built in the input / output IF 115. Further, the motion information acquisition unit 106 acquires speed information by differentiating position information and posture information acquired from the input / output IF 111 with respect to time information.
  • FIG. 2 shows time information, position information, posture information, speed information, and angular speed information acquired by the motion information acquisition unit 106.
  • the movement information acquisition unit 106 includes the acquired position information, posture information, speed information, and time information of the robot arm 102, an information change point detection unit 109, a behavior change point detection unit 110, and a feedback rule generation unit. 111 and the motion generation unit 112.
  • the environment information acquisition unit 107 acquires environment information that is at least one of force information, sound volume information, and position information related to the surrounding environment generated when the robot arm 102 operates.
  • the environment information acquisition unit 107 includes a measurement value of a force sensor 716 (see FIG. 7) described later, a measurement value of a sound collecting device 717 (see FIG. 7) described later, and an image capturing device 718 described later.
  • At least one piece of information of the captured image is input from the input / output IF 115.
  • time information from a timer built in the input / output IF 115 is input to the environment information acquisition unit 107.
  • the input measurement value of the force sensor 716 is used as force information
  • the measurement value of the sound collecting device 717 is used as volume information
  • the position information of the object is acquired from the captured image information of the image imaging device 718.
  • the force information is a value of a force sensor 716 attached to the robot arm 102, and indicates the magnitude of a reaction force generated when the robot arm 102 comes into contact with an object.
  • the sound volume information is a value of the sound collecting device 717 attached around the robot arm 102, and indicates a sound volume generated when the robot arm 102 moves and a contact occurs.
  • the object position information is the position information of the object obtained from the imaged image information of the image capturing device 718 attached around the robot arm 102, and indicates the distance between the robot arm 102 and the object (details will be described later). To do).
  • FIG. 3 shows time information, force information, volume information, and object position information acquired by the environment information acquisition unit 107.
  • the environment information acquisition unit 107 includes at least one environment information and time information among force information, volume information, and object position information, an information change point detection unit 109, and a behavior change point detection unit. 110, the feedback rule generation unit 111, and the motion generation unit 112.
  • the default reaction time information acquisition unit 108 obtains the default reaction time information based on the information input from the input / output IF 115 and stores it in the default reaction time information storage unit 108A. Output to the output unit 110.
  • Predetermined reaction time information is information on the time that elapses from the presentation of a sensory stimulus to the occurrence of a response by action, which can be input by the input / output IF 115, and is set to 200 ms, for example, here. .
  • a person inputs a work experience year and a target work using a keyboard, a mouse, a touch panel, a voice input device, or the like as an example of the input / output IF 115.
  • the default reaction time information acquisition unit 108 determines the default reaction time information.
  • FIG. 4 shows an example of a data diagram used when the default reaction time information acquisition unit 108 determines the default reaction time information.
  • the default reaction time information and the information for determining the default reaction time information are stored in the default reaction time information storage unit 108A by the default reaction time information acquisition unit 108, respectively.
  • the information change point detection unit 109 includes at least one of position information, posture information, and speed information input from the motion information acquisition unit 106, time information, and environment input from the environment information acquisition unit 107.
  • the information change point is detected based on at least one of the three pieces of information.
  • the information change point detection unit 109 outputs the detected information change point and time information corresponding to the information change point to the behavior change point detection unit 110, the feedback rule generation unit 111, and the action generation unit 112. .
  • the information change point detection unit 109 obtains the displacement of the environment information input from the environment information acquisition unit 107 to the information change point detection unit 109, and the information change point detection unit 109 obtains the first displacement (information change inspection).
  • a location that exceeds the threshold for use is defined as an information change point.
  • “exceeding the threshold” means that the sign is the same as the threshold and the absolute value is larger than the threshold.
  • the first threshold value can be input using the input / output IF 115, and varies depending on the environment information. For example, the force information is 3N, the volume information is 10 dB, and the object position information is 10 mm.
  • the information change point detection unit 109 does not detect a location that exceeds the first threshold, the information change point is not detected.
  • the information change point detection unit 109 obtains the displacement of the environment information input from the environment information acquisition unit 107 to the information change point detection unit 109 and the displacement of the operation information input from the operation information acquisition unit 106, and the information change point detection unit In 109, an information change point is a location where both of the obtained displacements exceed the first threshold (information change point detection threshold).
  • the first threshold value includes a threshold value related to operation information in addition to the threshold value related to environment information described above.
  • the position information is 10 mm
  • the posture information is 0.2 rad
  • the speed information is 0.1 mm / ms.
  • the information change point is a place where all the information used similarly exceeds the first threshold value.
  • FIG. 5 shows a data diagram of time information and information change points.
  • the behavior change point detection unit 110 receives at least one piece of movement information including time information, position information, posture information, and speed information from the movement information acquisition unit 106, and time information. Time information is input, default reaction time information is input from the default reaction time acquisition unit 108, and information change points and time information corresponding to the points are input from the information change point detection unit 109. The behavior change point detection unit 110 detects a behavior change point based on the input information. The detected behavior change point and the time information corresponding to the detected point are output to the feedback rule generation unit 111.
  • the behavior change point detection unit 110 performs the operation after the point where the predetermined reaction time has elapsed from the information change point in the operation information input from the operation information acquisition unit 106 and the environment information input from the environment information acquisition unit 107.
  • a location exceeding the threshold value 2 (behavior change point detection threshold) is searched, and a location exceeding the second threshold is first detected as an action change point.
  • the second threshold value can be input by the input / output IF 115 and differs depending on each information.
  • force information is 0.5 N
  • volume information is 1 dB
  • object position information is 1 mm
  • position information is 1 mm
  • speed information is 0.01 mm / ms.
  • a behavior change point is not detected.
  • a location exceeding the second threshold is detected by a plurality of pieces of information
  • a plurality of behavior change points are detected.
  • FIG. 6 shows a data diagram of time information and behavior change points.
  • the feedback law generation unit 111 receives at least one piece of movement information and time information from the movement information acquisition unit 106 and the position information, the posture information, and the speed information, and the time information. Is input from the information change point detection unit 109 and the time information corresponding to the point, and the behavior change point and the time information corresponding to the point are input from the behavior change point detection unit 110. .
  • the feedback rule generation unit 111 generates a feedback rule based on the input information.
  • the feedback law generation unit 111 outputs the generated feedback law and time information to the action generation unit 112.
  • a method for generating a feedback rule in the feedback rule generating unit 111 will be described.
  • information operation information or environment information
  • the approximate curve derivation method uses the feedback rule generation unit 111 to obtain information from the action change point to the next information change point. Is approximated by an approximate curve using the least squares method.
  • the feedback rule generation unit 111 determines that there is no information change point in the time after the behavior change point, the feedback rule generation unit 111 performs the least square method for the time after the behavior change point (until the end time of the teaching data). Use to approximate with an approximate curve.
  • the feedback law generation unit 111 may also generate a feedback law by a method that does not approximate with an approximate curve, such as a method that uses the information where the behavior change point is detected as it is as a target value or a method that uses a constant as a target value. Is possible.
  • the motion generation unit 112 receives position information, posture information, at least one motion information of speed information, and time information from the motion information acquisition unit 106, and receives environment information and time information from the environment information acquisition unit 107. An information change point and time information corresponding to the information change point are input from the information change point detection unit 109. The motion generation unit 112 generates motion information based on the input information. In addition, the action generation unit 112 receives the feedback rule and time information from the feedback rule generation unit 111. The motion generation unit 112 outputs the generated motion information and time information to the control unit 114. The motion generation unit 112 stores the generated motion information, feedback rule, and time information in the motion storage unit 112A.
  • the operation information generation method in the operation generation unit 112 will be described.
  • the motion generation unit 112 creates the motion information input from the motion information acquisition unit as motion information.
  • an information change point is input from the information change point detection unit 109 during the operation of the robot arm 102
  • an operation to which a feedback rule is applied is generated based on the operation information and the environment information.
  • the action applied to the feedback rule is to change the action information so as to follow the input approximate curve.
  • the mode switching unit 113 outputs the mode information input from the input / output IF 115 to the control unit 114.
  • the mode information can be input by the input / output IF 115, and includes any information of “teach mode”, “reproduction mode”, or “stop mode”.
  • “Teaching mode” is a mode in which a person teaches an operation to the robot arm 102, and the robot arm 102 is moved by a human operation.
  • the “reproduction mode” is a mode in which the robot arm 102 automatically reproduces an operation taught by a person in the “teach mode”, and the robot arm 102 automatically moves regardless of a human operation.
  • the “stop mode” is a mode in which the robot arm 102 does not move, and the robot arm 102 stops without moving.
  • FIG. 1B A block diagram of “teach mode” is shown in FIG. 1B, and a block diagram of “playback mode” is shown in FIG. 1C.
  • the elements represented by broken lines are not used (for example, the control unit 114 in FIG. 1B, the default reaction time information acquisition unit 108, the default reaction time information storage unit 108A, and the behavior change point detection unit 110 in FIG. 1C).
  • an information change point is detected by the information change point detection unit 109 and a behavior change point is detected by the behavior change point detection unit 110 based on data (motion information, environment information) obtained by teaching.
  • the feedback rule generation unit 111 generates a feedback rule
  • the operation generation unit 112 generates operation information for a reproduction operation.
  • control unit 114 reproduces the operation generated at the time of teaching.
  • a feedback rule is applied by the control unit 114 based on the operation information in the operation generation unit 112.
  • the start point and end point of “teach mode” and “playback mode” are output to the control unit 114.
  • the output at the start time and the end time is performed by pressing a button (for example, a start button or an end button) of the input / output IF 115 by a human operation.
  • a button for example, a start button or an end button
  • the robot arm 102 moves by a human operation.
  • the robot arm 102 automatically moves by the control unit 114 so as to follow the locus of the teaching data.
  • the time from the start to the end moves automatically, but other times are stopped.
  • the robot arm 102 stops at the current position and posture and does not move.
  • the control unit 114 receives operation information and time information from the operation generation unit 112.
  • the input operation information is output to the input / output IF 115 at regular intervals (for example, every 1 ms) using a timer built in the input / output IF 115.
  • mode information is input from the mode switching unit 113 to the control unit 114.
  • the control unit 114 outputs the operation information from the operation generation unit 112 to the input / output IF 115.
  • the control unit 114 does not output the operation information from the operation generation unit 112 to the input / output IF 115, and the robot arm 102 automatically Does not move, but operates by human operation.
  • the mode information input from the mode switching unit 113 is “stop mode”
  • the control unit 114 does not output the motion information from the motion generation unit 112 to the input / output IF 115 and stops at the same position and posture.
  • the operation information is output to the input / output IF 115.
  • the input / output IF 115 outputs the operation information input from the control unit 114 to the motor driver 116.
  • the input / output IF 115 obtains environmental information from the measurement value of the force sensor 716, the measurement value of the sound collecting device 717, the captured image of the image imaging device 718, and time information from a timer built in the input / output IF 115. To the output.
  • the position information and posture information of the robot arm 102 is obtained from the value input from the encoder 715 by the arithmetic unit inside the encoder 615 (details will be described later), and the position information and posture information and the timer built in the input / output IF 115 are received.
  • the time information is output from the control unit 114 to the operation information acquisition unit 106.
  • the predetermined reaction time information (for example, 200 ms) input by the person to the control unit 114 via the input / output IF 111 is output from the control unit 114 to the predetermined reaction time acquisition unit 108.
  • mode information input by the person to the control unit 114 via the input / output IF 111 is output from the control unit 114 to the mode switching unit 113.
  • the input / output IF 115 includes an input unit 115A and an output unit 115B, as shown in FIG. 1D.
  • the input unit 115A is an input IF, and when a person selects an item using a keyboard, mouse, touch panel, or voice input, or when a person inputs a number using a keyboard, mouse, touch panel, or voice input, etc. Used for.
  • the output unit 115B is an output IF, and is used when the acquired information or the like is output to the outside or displayed on a display or the like.
  • the motor driver 116 outputs a command value to each motor 714 (see FIG. 7) of the robot arm 102 to the robot arm 102 in order to control the robot arm 102 based on the operation information acquired from the input / output IF 115. .
  • the position information of the robot arm 102 is stored in the encoder 615 by using each encoder 715 of the robot arm 102 at certain time intervals (for example, every 1 ms). And output to the input / output IF 115.
  • the robot arm 102 is controlled in accordance with a command value from the motor driver 116.
  • the robot arm 102 constitutes a multi-link manipulator having six degrees of freedom so as to be rotatable around a total of six axes.
  • the robot arm 102 is an articulated robot arm as an example, and specifically, a multi-link manipulator having 6 degrees of freedom.
  • the robot arm 102 includes a hand 701, a forearm link 703 having a wrist 702 to which the hand 701 is attached at a tip 703a, and an upper arm link 704 having a tip 704a rotatably connected to a base end 703b of the forearm link 703.
  • the base end 704b of the upper arm link 704 is provided with a base 705 that is rotatably connected and supported.
  • the platform 705 is fixed at a fixed position, but may be movably connected to a rail (not shown).
  • the wrist portion 702 has three mutually orthogonal rotation axes of a fourth joint portion 709, a fifth joint portion 710, and a sixth joint portion 711, and the relative posture of the hand 701 with respect to the forearm link 703. (Orientation) can be changed. That is, in FIG. 7, the fourth joint portion 709 can change the relative posture around the horizontal axis of the hand 701 with respect to the wrist portion 702. The fifth joint portion 710 can change the relative posture of the hand 701 with respect to the wrist portion 702 around the vertical axis perpendicular to the horizontal axis of the fourth joint portion 709.
  • the sixth joint portion 711 can change the relative posture of the hand 701 with respect to the wrist 702 about the horizontal axis orthogonal to the horizontal axis of the fourth joint portion 709 and the vertical axis of the fifth joint portion 710. .
  • the other end 703 b of the forearm link 703 is rotatable around the third joint portion 708 with respect to the tip 704 a of the upper arm link 704, that is, around a horizontal axis parallel to the horizontal axis of the fourth joint portion 709.
  • the other end of the upper arm link 704 is rotatable around the second joint 707 with respect to the base 705, that is, around the horizontal axis parallel to the horizontal axis of the fourth joint 709.
  • the upper movable portion 705a of the base portion 705 rotates around the first joint portion 706 relative to the lower fixed portion 705b of the base portion 705, that is, around the vertical axis parallel to the vertical axis of the fifth joint portion 710. It is possible.
  • the robot arm 102 constitutes the multi-link manipulator with six degrees of freedom so that it can rotate around a total of six axes.
  • a rotation drive device such as a motor 714 for driving the joint part and a rotation phase angle (that is, a joint angle) of the rotation axis of the motor 714 are detected.
  • an encoder 715 (actually disposed inside each joint portion of the robot arm 102) that calculates and outputs position information and posture information by a calculation unit inside the encoder 715.
  • the motor 714 (actually disposed inside each joint portion of the robot arm 102) has a pair of members (for example, a rotation-side member and the rotation-side member) constituting each joint portion.
  • the drive is controlled by a motor driver 116 provided on one of the supporting members.
  • the rotation shaft of the motor 714 provided in one member of each joint is connected to the other member of each joint and rotates the rotation shaft in the forward and reverse directions so that the other member is moved with respect to the one member. Can be rotated around each axis.
  • Reference numeral 712 denotes an absolute coordinate system having a relative positional relationship fixed with respect to the lower fixed portion 705b of the base portion 705, and reference numeral 713 denotes a hand having a relative positional relationship fixed with respect to the hand 701. Coordinate system.
  • the origin position O e (x, y, z) of the hand coordinate system 713 viewed from the absolute coordinate system 712 is set as the hand position of the robot arm 102, and the posture of the hand coordinate system 713 viewed from the absolute coordinate system 712 is set to the roll angle.
  • the horizontal axis of the fourth joint portion 709 can be positioned parallel to the x axis of the hand coordinate system 713 and the horizontal axis of the sixth joint portion 711 relative to the y axis of the hand coordinate system 713.
  • the axis can be positioned in parallel, and the vertical axis of the fifth joint 710 can be positioned in parallel to the z-axis of the hand coordinate system 713.
  • the rotation angle of the hand coordinate system 713 with respect to the x axis is the yaw angle ⁇
  • the rotation angle with respect to the y axis is the pitch angle ⁇
  • the rotation angle with respect to the z axis is the roll angle ⁇ .
  • the force sensor 616 is attached to the wrist 702 of the forearm link 703 to which the hand 701 of the robot arm 102 is attached, and can detect a force acting on the hand 701.
  • the sound collecting device 617 is disposed in the vicinity of the tip of the connector 1003 so as to collect a clicking sound generated when the flexible substrate 1002 and the connector 1003 come into contact with each other.
  • the image capturing device 618 is attached to the periphery (for example, above) of the robot arm 102 and can acquire a captured image including the hand 701 of the robot arm 102 and the connector 1003 (object). That is, the image capturing device 618 can acquire data that can determine the length from the tip of the hand 701 of the robot arm 102 to the connector 1003 (object).
  • the flexible substrate 1002 of this example has a width of 5.5 mm and a thickness of 0.3 mm, and has 10 connection pins for the connector 1003.
  • the size of the insertion opening of the connector 1003 is 5.57 mm in width and 0.35 mm in thickness.
  • FIG. 8A is a view of the flexible substrate 1002 as viewed from below with respect to the insertion direction of the connector 1003.
  • FIG. 8B is a view of the flexible substrate 1002 as viewed from the side with respect to the insertion direction of the connector 1003.
  • FIG. 9A is a view of the connector 1003 as viewed from the front with respect to the insertion direction.
  • FIG. 9B is a view of the connector 1003 as viewed from the side with respect to the insertion direction.
  • the flexible substrate 1002 is a thin flexible substrate, insertion into the connector 1003 is very fine and difficult.
  • the person uses the hand 1001 to move the robot arm 102 holding the flexible board to the hand 701, and teaches the operation of the robot arm 102 to insert the flexible board into a connector fixed to a jig or the like.
  • FIG. 10A to 10J a procedure for teaching the robot arm 102 by the human hand 1001 in the order of FIG. 10A ⁇ FIG. 10C ⁇ FIG. 10E ⁇ FIG. 10G ⁇ FIG.
  • the state with the connector 1003 is shown in the order of FIG. 10B ⁇ FIG. 10D ⁇ FIG. 10F ⁇ FIG. 10H ⁇ FIG.
  • the mode switching unit 113 selects “teach mode”.
  • the person presses the start button of the IF 115 at the time of FIG. 10A, and the person presses the end button of the IF 115 at the time of FIG. 10I.
  • FIG. 10A shows a point in time when a human hand 1001 grips the robot arm 102 and the person starts teaching the robot arm 102. At this time, since the flexible substrate 1002 held by the hand 701 of the robot arm 102 and the connector 1003 are not in contact with each other, the reaction force at the time of contact between the flexible substrate 1002 and the connector 1003 is not transmitted to the human hand 1001. .
  • FIG. 10C shows a point in time when the tip of the flexible substrate 1002 and the entrance of the connector 1003 are in contact with each other.
  • the reaction time elapses from this point, the reaction force at the time of contact is transmitted to the human hand 1001, and the behavior is changed.
  • a person changes the force applied to the flexible substrate 1002 or the insertion direction of the flexible substrate 1002 while estimating the deflection or position of the flexible substrate 1002 based on the magnitude of the reaction force felt by the hand 1001. Is inserted into the connector 1003.
  • the magnitude of the reaction force at that time is detected by the force sensor 716.
  • FIG. 10E shows a point in time when the flexible board 1002 is pushed into the connector 1003 and the insertion work after contact is performed. At this time, the reaction force when the flexible board 1002 is inserted into the connector 1003 is transmitted to the human hand 1001. When the human hand 1001 feels the reaction force at this time, the person adjusts how the flexible board 1002 is inserted into the connector 1003.
  • FIG. 10G shows a point in time when the distal end of the flexible substrate 1002 contacts the back of the connector 1003 and the insertion operation is completed.
  • the reaction time elapses from this time point, the reaction force when the tip of the flexible substrate 1002 comes into contact with the back of the connector 1003 is transmitted to the human hand 1001, and the behavior is changed.
  • the human hand 1001 feels the reaction force at this time, the person confirms the completion of the insertion of the flexible board 1002 into the connector 1003.
  • FIG. 10I shows the time point when the teaching operation is finished.
  • the flexible substrate 1002 is not pushed into the connector 1003 and the teaching operation is finished.
  • FIG. 11A shows the value of the force sensor 716 and the position information of the robot arm 102 in the teaching operation of FIGS. 10A to 10J.
  • the position information of the robot arm 102 indicates the position information acquired by the motion information acquisition unit 106.
  • a first solid line graph 310 indicates a value detected by the force sensor 716.
  • a second solid line graph 311 indicates the position of the robot arm 102.
  • the horizontal axis of FIG. 11A shows the teaching operation time (ms) from the teaching operation start time (0 ms) to the teaching operation end time.
  • the left vertical axis in FIG. 11A indicates the position (mm) of the robot arm 102.
  • the right vertical axis in FIG. 11A indicates the value (N) detected by the force sensor 716.
  • 11A shows a state in which the flexible board 1002 is inserted into the connector 1003 during the teaching operation time (states of FIGS. 10A, 10C, 10E, 10G, and 10I).
  • the information change point detection unit 109 detects a point in time when the displacement of the force information exceeds the first threshold value of the force information.
  • the first threshold value of force information is set to ⁇ 0.5N.
  • the force information at the time of reference signs A and D in FIG. 11A is detected by the information change point detection unit 109 as an information change point.
  • the behavior change point detection unit 110 detects when the predetermined reaction time has elapsed from the time of the information change point (time of reference signs A and D in FIG. 11A) (time of reference signs B and E in FIG. 11A). Thereafter, a time point at which the displacement of the force information exceeds the second threshold value of the force information is detected.
  • the second threshold value of the force information is set to ⁇ 0.2N, and the force information at the point of reference symbol C in FIG. 11A is detected by the behavior change point detection unit 110 as a behavior change point.
  • the behavior change point is not detected by the behavior change point detection unit 110 since there is no time exceeding the second threshold value of the force information after the time of the reference symbol E in FIG. 11A.
  • the feedback rule generation unit 111 represents force information from the action change point (at the time point of reference symbol C in FIG. 11A) to the next information change point (at the time point of reference symbol D in FIG. 11A) as an approximate curve. .
  • an approximate curve with a slope of ⁇ 0.1 N is generated by the feedback law generator 111.
  • the force information from the behavior change point to the next information change point is obtained by the feedback law generation unit 111 by approximating it to a linear function using the least square method.
  • the obtained approximate curve is indicated by reference symbol F in FIG. 11A.
  • a method of detecting a point in time when the displacement exceeds the threshold is adopted as a method for detecting the behavior change point. Another method will be described with reference to FIG. 11B.
  • a section from an information change point to the next information change point is divided by the behavior change point detection unit 110 (for example, divided into five), and the behavior change point detection unit 110 uses the least square method to calculate force information of each section. Approximate with linear function.
  • the behavior change point detection unit 110 compares the slopes of two adjacent linear functions, and the behavior change point detection unit 110 sets the time when the difference is large. In FIG.
  • a section from the information change point A to the next information change point F is divided into five by the behavior change point detector 110, and each section is approximated by a linear function in the behavior change point detector 110 (G ⁇ ). K).
  • the inclinations of adjacent linear functions are compared by the behavior change point detection unit 110 (G and H, H and I, I and J, J and K).
  • the behavior change point detection unit 110 sets a time point (boundary between I and J) having the largest difference as a behavior change point.
  • the information change point and the behavior change point are detected from the teaching data by the information change point detection unit 109 and the behavior change point detection unit 110, respectively, and the feedback rule is generated by the feedback rule generation unit 111.
  • the states of the flexible substrate 1002 and the connector 1003 at that time are shown in the order of FIG. 12B ⁇ FIG. 12D ⁇ FIG. 12F ⁇ FIG. 12H ⁇ FIG.
  • “reproduction mode” is selected in the mode switching unit 113.
  • FIG. 13 shows the value of the force sensor 716 and the position information of the robot arm 102 in the reproducing operation of FIGS. 12A to 12J.
  • the position information of the robot arm 102 indicates the position information acquired by the motion information acquisition unit 106.
  • a first solid line graph 313 indicates a value detected by the force sensor 716, and a second solid line graph 314 indicates the position of the robot arm 102.
  • the horizontal axis in FIG. 13 represents the reproduction operation time (ms) from the reproduction operation start time (0 ms) to the reproduction operation end time.
  • the left vertical axis in FIG. 13 indicates the position (mm) of the robot arm 102.
  • the right vertical axis in FIG. 13 indicates the value (N) detected by the force sensor 716.
  • the diagram drawn below the graph of FIG. 13 shows the insertion state of the flexible substrate 1002 with respect to the connector 1003 during the reproduction operation time (the states of FIGS. 12A, 12C, 12E, 12G, and 12I).
  • FIG. 12A shows a point in time when the robot arm 102 starts a reproduction operation. At this time, the position information of the teaching data is reproduced, and the flexible substrate 1002 and the connector 1003 are not in contact (see FIG. 13).
  • FIG. 12C shows a point in time when the tip of the flexible substrate 1002 contacts the entrance of the connector 1003.
  • the information change point detection unit 109 detects the displacement of the force information as the information change point exceeding the first threshold ( ⁇ 0.5N) (see the point of reference A in FIG. 13). From this point, the control unit 114 applies the feedback rule based on the motion information in the motion generation unit 112.
  • FIG. 12E shows a point in time when the flexible board 1002 is pushed into the connector 1003 and an insertion operation is performed.
  • the control unit 114 applies the feedback law based on the motion information in the motion generation unit 112, and moves the position of the robot arm 102 so that the force information follows an approximate curve with a slope of ⁇ 0.1N. Adjustment is performed by the control unit 114 based on the operation information in the generation unit 112 (see FIG. 13).
  • FIG. 12G shows a point in time when the distal end of the flexible substrate 1002 contacts the back of the connector 1003 and the insertion operation is completed.
  • the motion generation unit 112 determines that the value of the force sensor 716 exceeds a certain threshold (reproduction motion end condition threshold) (here, -5.0 N), the motion generation unit 112 causes the robot arm 102 to move.
  • the robot arm 102 is set to be stationary. (Refer to the time point of reference symbol B in FIG. 13).
  • FIG. 12I it is the time when the reproduction operation is finished (see FIG. 13).
  • the feedback rule is generated by the feedback rule generation unit 111 based on the teaching data, and is reproduced by the control unit 114 based on the motion information including the generated feedback law and created by the motion generation unit 112. Even when the environment fluctuates, the same operation as the teaching operation can be performed during reproduction.
  • the sound collector 717 is attached to a jig 1003J that supports the connector 1003 at a position where the distance L from the front end of the sound collector 717 to the front end of the connector 1003 is, for example, within 10.0 cm, as indicated by reference symbol L in FIG. Install.
  • a clicking sound generated when the flexible substrate 1002 and the connector 1003 come into contact with each other is collected by the sound collecting device 717.
  • the jig 1003J is omitted for simplification.
  • FIG. 15A to FIG. 15J show a procedure in which a human hand 1001 operates and teaches the robot arm 102.
  • FIG. 15A shows a procedure in which a human hand 1001 teaches the robot arm 102 in the order of FIG. 15A, FIG. 15C, FIG. 15E, FIG. 15G, and FIG. Further, the state of the flexible substrate 1002 and the connector 1003 at that time is shown in the order of FIG. 15B ⁇ FIG. 15D ⁇ FIG. 15F ⁇ FIG. 15H ⁇ FIG.
  • “teach mode” is selected. At the time of FIG. 15A, the person presses the start button of IF 115, and at the time of FIG. 15I, the person presses the end button of IF 115.
  • a human hand 1001 grips the robot arm 102, and the person starts teaching the robot arm 102.
  • the flexible board 1002 and the connector 1003 are not yet in contact with each other, the volume information is very small.
  • FIG. 15C shows a point in time when the tip of the flexible substrate 1002 and the entrance of the connector 1003 are in contact with each other. At this time, the volume information is increased due to the influence of the sound generated at the time of contact.
  • FIG. 15E shows a point in time when the flexible board 1002 is pushed into the connector 1003 and an insertion operation is performed. At this time, the volume information gradually increases as the flexible board 1002 is pushed into the connector 1003.
  • FIG. 15G shows a point in time when the distal end of the flexible substrate 1002 contacts the back of the connector 1003 and the insertion operation is completed.
  • the volume information increases due to the influence of sound generated when the tip of the flexible substrate 1002 comes into contact with the back of the connector 1003.
  • the reaction time elapses from this point, a sound at the time of contact is heard and a person confirms the completion of the insertion of the flexible board 1002 into the connector 1003.
  • FIG. 15I it is the time point when the teaching is finished.
  • FIG. 16 shows volume information acquired by the sound collecting device 717 in the teaching operation of FIGS. 15A to 15J.
  • the horizontal axis represents the time from the teaching operation start time (0 ms) to the teaching operation end time
  • the vertical axis represents the volume information (dB).
  • the diagram drawn below the graph of FIG. 16 shows the insertion state of the flexible substrate 1002 with respect to the connector 1003 (the states of FIGS. 15A, 15C, 15E, 15G, and 15I) during the teaching operation time.
  • the information change point detection unit 109 detects a time point when the displacement of the volume information acquired by the sound collecting device 717 exceeds the first threshold.
  • the first threshold value is set to 10 dB
  • the volume information at the point of reference symbol A in FIG. 16 is detected by the information change point detection unit 109 as an information change point.
  • the behavior change point detection unit 110 is a time point when the displacement of the volume information exceeds the second threshold after the time point (reference symbol B) when the predetermined reaction time has elapsed from the time point of the information change point (reference symbol A). Is detected.
  • the second threshold value is set to 5 dB
  • the volume information after the action change point (at the time indicated by reference character C in FIG. 16) is represented by an approximate curve.
  • an approximate curve with an inclination of 3 dB is generated by the feedback law generation unit 111.
  • the feedback rule generation unit 111 obtains volume information from the behavior change point to the next information change point by approximating it to a linear function using the least square method.
  • the approximate curve obtained by the feedback law generation unit 111 is indicated by reference symbol D in FIG.
  • the information change point and the behavior change point are detected from the teaching data by the information change point detection unit 109 and the behavior change point detection unit 110, respectively, and the feedback rule is generated by the feedback rule generation unit 111.
  • FIG. 17A shows a procedure in which the robot arm 102 reproduces in the order of FIG. 17A ⁇ FIG. 17C ⁇ FIG. 17E ⁇ FIG. 17G ⁇ FIG. Further, the states of the flexible substrate 1002 and the connector 1003 at that time are shown in the order of FIG. 17B ⁇ FIG. 17D ⁇ FIG. 17F ⁇ FIG. 17H ⁇ FIG.
  • “reproduction mode” is selected in the mode switching unit 113.
  • the person presses the start button of IF 115 the person presses the end button of IF 115.
  • FIG. 17A shows a point in time when the robot arm 102 starts a reproduction operation. At this time, the position information of the teaching data is reproduced, and the flexible board 1002 and the connector 1003 are not yet in contact (see FIG. 18).
  • FIG. 17C shows a point in time when the tip of the flexible substrate 1002 contacts the entrance of the connector 1003.
  • the information change point detection unit 109 detects the displacement of the sound volume information as the information change point exceeding the first threshold (10 dB) (refer to the time point of reference symbol A in FIG. 18). From this point, the control unit 114 applies the feedback rule based on the motion information in the motion generation unit 112.
  • FIG. 17E shows a point in time when the flexible board 1002 is pushed into the connector 1003 and an insertion operation is performed.
  • the control unit 114 applies the feedback law based on the motion information in the motion generation unit 112, and sets the position of the robot arm 102 so that the volume information follows an approximate curve with a slope of 3 dB.
  • the adjustment is made by the control unit 114 based on the operation information at (see FIG. 18).
  • FIG. 17G shows a point in time when the distal end of the flexible substrate 1002 contacts the back of the connector 1003 and the insertion operation is completed.
  • the motion generation unit 112 determines that the volume information exceeds a certain threshold value (reproduction operation end condition threshold value) (here, 50 dB)
  • the motion generation unit 112 sets the robot arm 102 to be stationary.
  • the robot arm 102 is stationary. (Refer to the point of reference sign B in FIG. 18).
  • FIG. 17I it is the time when the reproduction operation is finished (see FIG. 18).
  • the feedback rule is generated by the feedback rule generation unit 111 based on the teaching data, and is reproduced by the control unit 114 based on the motion information including the generated feedback law and created by the motion generation unit 112. Even when the environment fluctuates, the same operation as the teaching operation can be performed during reproduction.
  • the object position information is information acquired by the environment information acquisition unit 107 and is obtained based on the captured image acquired by the image capturing device 718. Specifically, the length from the tip of the hand 701 of the robot arm 102 to the connector 1003 (object) is shown. A distance L between each feature point (the tip of the hand 701 of the robot arm 102 and the tip of the connector 1003) is calculated from the captured image. This will be described with reference to FIGS. 19A to 19D. The length of the portion denoted by reference symbol L in FIGS. 19A to 19D is the object position information.
  • FIG. 20A to 20J a procedure in which a human hand 1001 operates and teaches the robot arm 102 is shown.
  • 20A, FIG. 20C, FIG. 20E, FIG. 20G, and FIG. 20I show a procedure in which a human hand 1001 teaches the robot arm 102 in this order.
  • the states of the flexible substrate 1002 and the connector 1003 at that time are shown in the order of FIG. 20B ⁇ FIG. 20D ⁇ FIG. 20F ⁇ FIG. 20H ⁇ FIG.
  • “teach mode” is selected.
  • the person presses the start button of IF 115 the person presses the end button of IF 115.
  • a human hand 1001 grips the robot arm 102, and the person starts teaching the robot arm 102.
  • the flexible board 1002 and the connector 1003 are not yet in contact with each other, the value of the length L as the object position information is large.
  • FIG. 20C shows a point in time when the tip of the flexible substrate 1002 and the entrance of the connector 1003 are in contact with each other. At this time, since the flexible board 1002 starts to enter the connector 1003 at the time of contact, the displacement of the object position information starts to change. When the reaction time elapses from this point, the person visually confirms the contact and changes the behavior.
  • FIG. 20E shows a point in time when the flexible substrate 1002 is pushed into the connector 1003 and an insertion operation is performed.
  • FIG. 20G shows a point in time when the distal end of the flexible substrate 1002 contacts the back of the connector 1003 and the insertion operation is completed.
  • the displacement of the object position information stops when the tip of the flexible substrate 1002 contacts the back of the connector 1003.
  • the reaction time has elapsed from this point, it is confirmed that the person has stopped visually and the person confirms the completion of the insertion of the flexible board 1002 into the connector 1003.
  • FIG. 20I it is the time point when the teaching is finished.
  • FIG. 21 shows the object position information in the teaching operation of FIGS. 20A to 20J.
  • the horizontal axis represents the teaching operation time from the teaching operation start time (0 ms) to the teaching operation end time
  • the vertical axis represents the object position information (mm).
  • the drawings depicted below the graph of FIG. 21 show the insertion states of the flexible substrate 1002 with respect to the connector 1003 (the states of FIGS. 20A, 20C, 20E, 20G, and 20I).
  • the information change point detection unit 109 detects a time point when the displacement of the object position information acquired by the environment information acquisition unit 107 exceeds the first threshold.
  • the first threshold value is set to ⁇ 0.5 mm, and the object position information at the point of reference symbol A in FIG. 21 is detected by the information change point detection unit 109 as an information change point.
  • the behavior change point detection unit 110 the object is detected after the predetermined reaction time has elapsed from the time point of the information change point (time point of reference symbol A in FIG. 21) (time point of reference symbol B in FIG. 21). A time point at which the displacement of the position information exceeds the second threshold is detected.
  • the second threshold value is set to ⁇ 1.0 mm
  • the object position information at the point of reference symbol C in FIG. 21 is detected by the information change point detection unit 109 as a behavior change point.
  • the object position information after the behavior change point (at the time indicated by reference character C in FIG. 21) in the feedback rule generation unit 111 is represented by an approximate curve.
  • an approximate curve with an inclination of ⁇ 0.8 mm is generated by the feedback law generation unit 111.
  • the feedback rule generation unit 111 obtains volume information from the behavior change point to the next information change point by approximating it to a linear function using the least square method.
  • the approximate curve obtained by the feedback law generation unit 111 is indicated by reference symbol D in FIG.
  • the information change point and the behavior change point are detected from the teaching data by the information change point detection unit 109 and the behavior change point detection unit 110, respectively, and the feedback rule is generated by the feedback rule generation unit 111.
  • FIG. 22A shows a procedure in which the robot arm 102 reproduces in the order of FIG. 22A, FIG. 22C, FIG. 22E, FIG. 22G, and FIG. Further, the states of the flexible substrate 1002 and the connector 1003 at that time are shown in the order of FIG. 22B ⁇ FIG. 22D ⁇ FIG. 22F ⁇ FIG. 22H ⁇ FIG.
  • “reproduction mode” is selected in the mode switching unit 113. At the time of FIG. 22A, the person presses the start button of IF 115, and at the time of FIG. 22I, the person presses the end button of IF 115.
  • FIG. 23 shows object position information in the reproduction operation of FIGS. 22A to 22J.
  • the solid line graph in FIG. 23 shows the object position information.
  • the horizontal axis of FIG. 23 represents the reproduction operation time (ms), the reproduction operation start time is 0 ms, and the time from the reproduction operation start time to the reproduction operation end time is illustrated.
  • the vertical axis in FIG. 23 indicates object position information (mm).
  • Each of the diagrams drawn below the graph of FIG. 23 shows an insertion state of the flexible board 1002 with respect to the connector 1003, and how the flexible board 1002 is in relation to the connector 1003 during the reproduction operation time indicated by the horizontal axis of the graph. It shows what the state is.
  • the robot arm 102 starts the reproduction operation. At this time, the position information of the teaching data is reproduced, and the flexible board 1002 and the connector 1003 are not yet in contact (see FIG. 23).
  • FIG. 22C shows a point in time when the tip of the flexible substrate 1002 and the entrance of the connector 1003 are in contact with each other.
  • the information change point detection unit 109 detects the displacement of the object position information as the information change point exceeding the first threshold ( ⁇ 0.5 mm) (refer to the time point of reference symbol A in FIG. 23). From this point, the control unit 114 applies the feedback rule based on the motion information in the motion generation unit 112.
  • FIG. 22E shows a point in time when the flexible board 1002 is pushed into the connector 1003 and an insertion operation is performed.
  • the control unit 114 applies the feedback law based on the motion information in the motion generation unit 112, and sets the position of the robot arm 102 so that the object position information follows an approximate curve with a slope of ⁇ 0.8 mm. Then, the control unit 114 adjusts based on the motion information in the motion generation unit 112 (see FIG. 23).
  • FIG. 22G shows a point in time when the distal end of the flexible substrate 1002 contacts the back of the connector 1003 and the insertion operation is completed.
  • the motion generation unit 112 determines that the object position information exceeds a certain threshold (reproduction motion end condition threshold) (here, -10.0 mm)
  • the motion generation unit 112 causes the robot arm 102 to be stationary.
  • the robot arm 102 is stationary.
  • FIG. 22I it is the time when the reproduction operation is finished (see FIG. 23).
  • the feedback rule is generated by the feedback rule generation unit 111 based on the teaching data, and is reproduced by the control unit 114 based on the motion information including the generated feedback law and created by the motion generation unit 112. Even when the environment fluctuates, the same operation as the teaching operation can be performed during reproduction.
  • step S2401 the operation information acquisition unit 106 acquires the operation information
  • the environment information acquisition unit 107 acquires the environment information
  • the default reaction time information acquisition unit 108 acquires the default reaction time information
  • step S2402 mode information (whether “teach mode” or “reproduction mode”) is output from the mode switching unit 113 to the control unit 114.
  • mode information (whether “teach mode” or “reproduction mode”) is output from the mode switching unit 113 to the control unit 114.
  • the process proceeds to step S2403, and in the case of “reproduction mode”, the process proceeds to step S2406.
  • step S2403 the information change point detection unit 109 detects an information change point from the acquired teaching data (information acquired in step S2401), outputs the detected information change point to the behavior change point detection unit 110, and step S2404. Proceed to
  • step S2404 the behavior change point detection unit 110 searches for the behavior change point after the point when the predetermined reaction time has elapsed from the time of the information change point acquired from the information change point detection unit 109.
  • the behavior change point detection unit 110 outputs the behavior change point detected as a result of the search to the feedback rule generation unit 111, and the process proceeds to step S2405.
  • the feedback rule generation unit 111 represents the information after the behavior change point acquired from the behavior change point detection unit 110 as an approximate curve, generates a feedback rule, and outputs the feedback rule to the operation generation unit 112. finish.
  • step S2406 if the information change point detection unit 109 determines that an information change point has been detected, the process proceeds to step S2407. If the information change point detection unit 109 determines that no information change point has been detected, the process advances to step S2408.
  • step S2407 the motion generation unit 112 generates motion information obtained by applying a feedback rule to the motion information acquired from the motion information acquisition unit 106, and the process proceeds to step S2408.
  • step S2408 the control unit 114 controls the robot arm 102 based on the motion information generated by the motion generation unit 112, and the flow ends.
  • the mode using the “teach mode” and the “reproduction mode” is described.
  • the present invention is also used when analyzing the teaching data using only the “teach mode”. be able to.
  • a behavior change point is detected, and a feedback rule is generated from that point.
  • a configuration is also possible in which a feedback rule is generated from a time point when a predetermined reaction time has elapsed from an information change point without detecting a behavior change point.
  • a feedback rule at the time of reproduction it is also possible to reproduce the teaching data from the action change point when the information change point is detected by simply reproducing without generating the feedback rule. Is possible.
  • a change in a person's behavior with respect to a change in the environment is generated as a feedback rule considering the reaction time. It can be transferred to the robot arm 102, and even when the environment changes, the work can be performed in the same manner as in the case of a person.
  • an operation during a reaction time of a person can be deleted and reproduced, an unstable operation occurring within the reaction time can be deleted.
  • FIG. 25A shows a block diagram of the robot 101 according to the second embodiment of the present invention.
  • the robot 101 according to the second embodiment includes a robot arm 102, a peripheral device 105, an operation information acquisition unit 106, an environment information acquisition unit 107, a default reaction time acquisition unit 108, and an information change check in the control device 103.
  • the output unit 109, the feedback rule generation unit 111, the operation generation unit 112, the mode switching unit 113, and the control unit 114 are the same as those in the first embodiment. Is omitted.
  • the second embodiment will be described in detail below with respect to portions different from the first embodiment.
  • the behavior change point detection unit 2501 is provided in the control device 103 in place of the behavior change point detection unit 110, and position information, posture information, speed information, and time information are input from the motion information acquisition unit 106. Environment information and time information are input from the information acquisition unit 107, default reaction time information is input from the default reaction time acquisition unit 108, and information change points and time information corresponding to the points are received from the information change point detection unit 109. Entered.
  • the behavior change point detector 2501 detects a behavior change point based on the input information.
  • the behavior change point detection unit 2501 outputs the detected behavior change point and time information corresponding to the detected point to the feedback rule generation unit 111.
  • the behavior change point detection unit 2501 takes the time after the point where the predetermined reaction time has elapsed from the information change point in the operation information input from the operation information acquisition unit 106 and the environment information input from the environment information acquisition unit 107. A location exceeding the threshold of 2 is searched, and a location exceeding the second threshold is first detected as a behavior change point.
  • the second threshold value can be input by the input / output IF 115 and differs depending on each information. For example, the force information is 0.5 N, the volume information is 1 dB, the object position information is 1 mm, the position information is 1 mm, and the posture information is 0. 02 rad, the speed information is 0.01 mm / ms.
  • the behavior change point detection unit 2501 determines that a location exceeding the second threshold is not detected at a time after the location where the predetermined reaction time has elapsed from the information change point
  • the behavior change point detection unit 2501 Search before the point where the default reaction time has elapsed from the point.
  • the behavior change point detection unit 2501 does not detect the behavior change point.
  • the behavior change point detection unit 2501 determines that a location exceeding the second threshold is detected by a plurality of pieces of information
  • the behavior change point detection unit 2501 detects a plurality of behavior change points.
  • FIG. 26 shows the value of the force sensor 716 and the position information of the robot arm 102 in the teaching operation, as in FIG. 11A.
  • the feedback rule generation unit 111 is newly generated by the feedback rule generation unit 111.
  • the information change point and the behavior change point to be newly detected are detected by the information change point detection unit 109 and the behavior change point detection unit 2501, respectively, and the feedback rule generation unit 111 generates a newly generated feedback rule. Will be described.
  • the information change point detection unit 109 detects a time point when the displacement of the force information exceeds the first threshold value.
  • the first threshold is set to ⁇ 1.0 N, and the force information at the point of reference symbol D in FIG. Is detected by the information change point detection unit 109.
  • the behavior change point detection unit 110 detects the force after a predetermined reaction time has passed from the time point of the information change point (time point of reference symbol D in FIG. 26) (time point of reference symbol E in FIG. 26). A time point at which the displacement of the information exceeds the second threshold is detected.
  • the second threshold in addition to the second threshold set in the first embodiment, for example, the second threshold is set to 0.2N.
  • the behavior change point detection unit 110 does not detect the time point when the displacement of the force information exceeds the second threshold after the time point of the reference symbol E in FIG. Therefore, the behavior change point detection unit 110 searches before the time indicated by reference symbol E in FIG. Then, the force information at the time of reference symbol F in FIG. 26 is detected by the behavior change point detection unit 110 as a behavior change point. Note that when the displacement exceeds 0.2 N, the displacement around the point E is small, so that the point is not detected unless the point F is reached.
  • the method of generating an approximate curve in the feedback rule generation unit 111 uses the least square method for information from the action change point to the next information change point when there is an information change point in the time after the action change point. Approximate with an approximate curve. When there is no information change point at the time after the action change point, the feedback rule generation unit 111 approximates the time after the action change point with an approximate curve using the least square method.
  • the information change point and the behavior change point are detected from the teaching data by the information change point detection unit 109 and the behavior change point detection unit 110, respectively, and the feedback rule is generated by the feedback rule generation unit 111.
  • FIG. 27 shows the value of the force sensor 716 and the position information of the robot arm 102 in the reproducing operation of FIGS. 12A to 12J, as in FIG.
  • FIG. 12A shows the same operation as in the first embodiment.
  • FIG. 12C shows a point in time when the tip of the flexible substrate 1002 contacts the entrance of the connector 1003.
  • the information change point detection unit 109 detects the information change point detected in the first embodiment because the displacement of the force information exceeds the first threshold ( ⁇ 0.5N) (reference symbol A in FIG. 27). See point in time).
  • control unit 114 applies the feedback rule generated in the first embodiment based on the operation information in the operation generation unit 112.
  • FIG. 12E shows a point in time when the flexible board 1002 is pushed into the connector 1003 and an insertion operation is performed.
  • the control unit 114 applies the feedback law generated in the first embodiment based on the motion information in the motion generation unit 112 so that the force information follows an approximate curve with a slope of ⁇ 0.1N.
  • the position of the arm 102 is adjusted by the control unit 114 based on the motion information in the motion generation unit 112 (see FIG. 27).
  • FIG. 12G shows a point in time when the distal end of the flexible substrate 1002 contacts the back of the connector 1003 and the insertion operation is completed.
  • the information change point detection unit 109 detects a point where the first threshold value exceeds ⁇ 1.0 N as the information change point for the force information (see the time point of reference symbol B in FIG. 27).
  • the feedback law generated in the second embodiment is applied by the control unit 114 based on the motion information in the motion generation unit 112.
  • the force information is applied to an approximate curve with a slope of 0.1N.
  • the position of the robot arm 102 is adjusted by the control unit 114 based on the motion information in the motion generation unit 112 so as to follow.
  • the feedback rule is generated by the feedback rule generation unit 111 based on the teaching data, and is reproduced by the control unit 114 based on the motion information including the generated feedback law and created by the motion generation unit 112. Even when the environment fluctuates, the same operation as the teaching operation can be performed during reproduction.
  • the control unit 114 is based on the feedback law in a plurality of directions and the motion information in the motion generation unit 112. In some cases, it may be applied.
  • the operation of inserting the flexible board 1002 into the connector 1003 has a plurality of directions such as an insertion direction, a lateral direction, and a height direction as shown in FIG.
  • the priority is given by the motion generation unit 112 as described below, and the feedback rule is applied by the control unit 114 based on the motion information in the motion generation unit 112.
  • FIG. 25B is a diagram showing details of the inside of the motion generation unit 112 when the feedback rule is applied in a plurality of directions by the control unit 114 based on the motion information in the motion generation unit 112.
  • the motion generation unit 112 includes an information acquisition unit 112B, a direction order determination unit 112C, and an information generation unit 112D.
  • the information acquisition unit 112B acquires information input to the motion generation unit 112 from other elements, and outputs the information to the direction-specific order determination unit 112C and the information generation unit 112D.
  • the direction-specific order determination unit 112C determines the order for each direction based on the environment information input from the information acquisition unit 112B, and outputs the information to the information generation unit 112D. An example of the order determination method will be described.
  • the direction-specific order determining unit 112C compares the displacement at a certain point in the environmental information acquired from the information acquiring unit 112B by direction, and the order is determined by the direction-specific order determining unit 112C in descending order of the displacement.
  • the information generation unit 112D generates a reproduction operation based on the information input from the information acquisition unit 112B. Further, when the feedback rule is applied by the information generation unit 112D, the playback operation is performed so that the information generation unit 112D applies feedback to the direction based on the rank information input from the direction-specific rank determination unit 112C. Generated by the information generation unit 112D. Based on the motion information generated by the information generation unit 112D of the motion generation unit 112, the control unit 114 applies the feedback rule.
  • 29A to 29C show the values of the force sensor 716 and the robot arm 102 in the insertion direction (FIG. 29A), the lateral direction (FIG. 29B), and the height direction (FIG. 29C) in the teaching operation shown in FIGS. 10A to 10J. Position information.
  • 29A to 29C are the same as those in FIG. 11A.
  • the direction order determining unit 112C is larger in the order of the insertion direction, the horizontal direction, and the height direction.
  • the control unit 114 applies the feedback rule in the order of priority in the insertion direction, the horizontal direction, and the height direction in the order of large displacement based on the motion information in the motion generation unit 112.
  • the reproduction operation is generated by the information generation unit 112D so that the feedback rule is applied in the order in which the displacement of the force information is large, and the feedback rule is applied by the control unit 114 based on the operation information generated by the information generation unit 112D.
  • the feedback law can be applied by the control unit 114 based on the motion information in the motion generation unit 112 in a manner similar to the work performed while the human hand 1001 feels force.
  • the feedback rule is applied only in one direction in descending order of priority, and the control unit 114 applies the feedback rule based on the operation information in the operation generation unit 112. For example, when information change points are detected in all directions during reproduction, the control unit 114 applies the feedback rule only in the insertion direction based on the motion information in the motion generation unit 112. When the information change point is detected in the horizontal direction and the height direction, the control unit 114 applies the feedback law only in the horizontal direction based on the motion information in the motion generation unit 112.
  • the robot arm 102 can reproduce the same insertion method as when a person is working by applying feedback laws in multiple directions by the control unit 114 based on the motion information in the motion generation unit 112. It is possible to cope with the case where the environment changes or the object is changed.
  • step S2401 the operation information acquisition unit 106 acquires operation information
  • the environment information acquisition unit 107 acquires environment information
  • the default reaction time information acquisition unit 108 acquires default reaction time information.
  • step S2402 the mode switching unit 113 switches the teaching mode. Specifically, mode information (whether “teach mode” or “reproduction mode”) is output to the control unit 114. In the case of “teach mode”, the process proceeds to step S2403, and in the case of “reproduction mode”, the process proceeds to step S2406.
  • step S2403 the information change point detection unit 109 detects an information change point from the acquired teaching data (information acquired in step S2401), and outputs the detected information change point to the behavior change point detection unit 2501.
  • step S3001 the behavior change point detection unit 2501 searches for a behavior change point after a predetermined reaction time has elapsed from the time of the information change point acquired from the information change point detection unit 109. If the behavior change point detection unit 2501 determines that no behavior change point has been detected as a result of the search by the behavior change point detection unit 2501, the detection is performed before the time when the predetermined reaction time has elapsed from the time of the information change point. The behavior change point detection unit 2501 searches for the changed behavior change point. The behavior change point detected by the behavior change point detection unit 2501 is output from the behavior change point detection unit 2501 to the feedback rule generation unit 111, and the process proceeds to step S2405.
  • the feedback rule generation unit 111 represents the information after the behavior change point acquired from the behavior change point detection unit 2501 as an approximate curve, generates a feedback rule, outputs the feedback rule to the operation generation unit 112, and executes the flow. finish.
  • step S2407 the motion generation unit 112 generates motion information in which a feedback rule is applied to the motion information acquired from the motion information acquisition unit 106.
  • step S2408 the control unit 114 controls the robot arm 102 based on the motion information generated by the motion generation unit 112, and ends the flow.
  • the second embodiment even when a person's reaction time is early (such as when the skill level is high or when the concentration is high), it is possible to accurately represent a change in a person's behavior and detect a behavior change point. Can transfer human skills to the robot arm. As a result, even when the environment changes, the work can be performed in the same manner as in the case of a person.
  • FIG. 31 is a block diagram of the robot 101 according to the third embodiment of the present invention.
  • the actual reaction time information detection unit 3101 is newly provided in the control device 103, and an information change point and time information corresponding to the point are input from the information change point detection unit 109.
  • the actual reaction time information detection unit 3101 receives the behavior change point and the time information corresponding to the point from the behavior change point detection unit 2501.
  • the actual reaction time information detection unit 3101 obtains actual reaction time information by subtracting the time of the information change point from the acquired behavior change point.
  • the actual reaction time information and time information obtained by the actual reaction time information detection unit 3101 are output from the actual reaction time information detection unit 3101 to the action generation unit 3102.
  • FIG. 32 is the teaching data obtained during the teaching operation shown in FIGS. 10A to 10J, as in FIG. 11A.
  • Reference signs A and C in FIG. 32 indicate information change points
  • reference signs B and D in FIG. 32 indicate action change points.
  • the motion generation unit 3102 is provided in the control device 103 instead of the motion generation unit 112, (I) position information, posture information, speed information, time information input from the motion information acquisition unit 106; (Ii) environment information and time information input from the environment information acquisition unit 107; (Iii) information change point input from the information change point detection unit 109 and time information corresponding to the point; Based on (iv) actual reaction time information and time information input from the actual reaction time information detection unit 3101, operation information is generated, and the generated operation information and time information are output to the control unit 114.
  • the motion generation unit 3102 stores the generated motion information, feedback rule, and time information in the motion storage unit 3102A.
  • the operation information generation method in the operation generation unit 3102 will be described.
  • the motion generation unit 3102 creates the motion information input from the motion information acquisition unit 106 as motion information.
  • the motion generation unit 3102 generates a motion to which a feedback rule is applied.
  • the action applied to the feedback rule is to change the action information so as to follow the input approximate curve.
  • the operation generation unit 3102 selects whether to reproduce or delete the operation in the actual reaction time information using the input / output IF 115. Encourage you to do.
  • an instruction for prompting selection of whether to reproduce or delete the operation in the actual reaction time information is displayed on a display device such as a display as an example of the input / output IF 115. Therefore, selection information selected by the person using the input / output IF 115 can be input to the action generation unit 3102 to select whether to reproduce or delete the action in the actual reaction time information.
  • the operation in the actual reaction time information is reproduced when performing the same operation as the teaching operation, and the operation in the actual reaction time information is deleted and reproduced in the case of reproducing efficiently in a short time.
  • the action of the human reaction time can be deleted, and the unstable action can be deleted.
  • FIGS. 12A to 12J are graphs of force information and position information in the reproduction operation shown in FIGS. 12A to 12J, as in FIG. Specifically, FIG. 33A shows the result when the operation in the actual reaction time information is reproduced, and FIG. 33B shows the result when the operation in the actual reaction time information is deleted.
  • FIG. 33A shows that the same results as the teaching data shown in FIG. 26 are obtained.
  • FIG. 33B since the operation in the actual reaction time information has been deleted, it can be seen that the operation during the human reaction time has been deleted (intervals of reference symbols C and D in FIG. 33A are shown in FIG. 33B). I deleted it).
  • the motion of the human reaction time can also be interpolated.
  • the time information between the information when the state change point is detected and the information when the reaction time elapses from the state change point is interpolated.
  • any interpolation method such as linear interpolation, polynomial interpolation, or circular interpolation is possible.
  • FIG. 33C shows a graph of force information and position information in the reproduction operation after interpolation.
  • linear interpolation is performed in the sections of reference symbols C and D.
  • the difference between the absolute values of the force information at the time when the state change point is detected and the force information at the time when the reaction time has elapsed from the state change point is an arbitrary threshold (operation correction switching threshold) (0.1 N )
  • Interpolation is performed in the above case, and deletion is performed if it is smaller than the arbitrary threshold (threshold for operation correction switching) (0.1 N).
  • step S2401 the operation information acquisition unit 106 acquires the operation information
  • the environment information acquisition unit 107 acquires the environment information
  • the default reaction time information acquisition unit 108 acquires the default reaction time information
  • step S2402 the mode switching unit 113 outputs mode information (whether “teach mode” or “reproduction mode”) to the control unit 114.
  • mode information whether “teach mode” or “reproduction mode”
  • the process proceeds to step S2403, and in the case of “reproduction mode”, the process proceeds to step S2406.
  • step S2403 the information change point detection unit 109 detects an information change point from the acquired teaching data (information acquired in step S2401), outputs the detected information change point to the behavior change point detection unit 2501, and step S3001. Proceed to
  • step S3001 the behavior change point detection unit 2501 searches for a behavior change point after the point when the predetermined reaction time has elapsed from the time of the information change point acquired from the information change point detection unit 109. Further, if the behavior change point detection unit 2501 determines that the behavior change point has not been detected as a result of the search by the behavior change point detection unit 2501, it is detected before the time when the predetermined reaction time has elapsed from the time of the information change point. To search for behavior change points. The behavior change point detected by the behavior change point detection unit 2501 is output from the behavior change point detection unit 2501 to the feedback rule generation unit 111, and the process proceeds to step S2405.
  • step S2405 the feedback rule generation unit 111 represents the information after the behavior change point acquired from the behavior change point detection unit 2501 as an approximate curve, generates a feedback rule, and outputs the feedback rule to the motion generation unit 3102.
  • step S3401 Proceed to
  • step S3401 the actual reaction time information detection unit 3101 calculates the difference between the action change point time point and the information change point time point, and detects the actual reaction time information.
  • the actual reaction time information detected by the actual reaction time information detection unit 3101 is output from the actual reaction time information detection unit 3101 to the action generation unit 3102 and the flow ends.
  • step S2406 if the information change point detection unit 109 determines that an information change point has been detected, the process advances to step S3402. If the information change point detection unit 109 determines that no information change point has been detected, the process advances to step S2408.
  • step S3402 the action generation unit 3102 prompts the person to use the input / output IF 115 to select whether or not to delete the action in the actual reaction time information when applying the feedback rule. If the action in the actual reaction time information is to be deleted, the process proceeds to step S3403. If the action in the actual reaction time information is not to be deleted, the process proceeds to step S3404.
  • step S3403 the motion generation unit 3102 generates motion information in which the motion in the actual reaction time information is deleted and the feedback rule is applied to the motion information acquired from the motion information acquisition unit 106, and the process proceeds to step S2408. .
  • step S3404 the motion generation unit 3102 generates motion information in which the feedback rule is applied to the motion information acquired from the motion information acquisition unit 106 without deleting the motion in the actual reaction time information. move on.
  • step S2408 the robot arm 102 is controlled by the control unit 114 based on the motion information generated by the motion generation unit 3102, and the flow ends.
  • the action generation unit 3102 can prompt a person to select whether or not to delete an action in the actual reaction time information using the input / output IF 115. For this reason, the selection information selected by the person using the input / output IF 115 is input to the action generation unit 3102 to select whether or not to delete the action in the actual reaction time information.
  • the control unit 114 can apply a feedback rule according to the information based on the motion information in the motion generation unit 3102. In addition, the unstable motion of the person who is working during the reaction time can be deleted, and the motion intended by the person can be reproduced.
  • FIG. 35 shows a block diagram of a robot 101 according to the fourth embodiment of the present invention.
  • the change point detection unit 109, the behavior change point detection unit 2501, the feedback rule generation unit 111, the operation generation unit 3102, the mode switching unit 113, the actual reaction time information detection unit 3101, and the control unit 114 are the third type. Since it is the same as that of an embodiment, common referential mark is attached and explanation of a common portion is omitted, and only a different portion is explained in detail below.
  • reaction time information corresponding to the worker or the target work is determined in advance as the default reaction time information, and the teaching mode and the reproduction mode are controlled based on the information.
  • the environment information generation unit 3501 is newly provided in the control device 103, generates environment information used when measuring the predetermined reaction time information, and outputs it to the input / output IF 115.
  • the environmental information is at least one information of force information, volume information, and object position information.
  • the default reaction time information measurement unit 3502 is newly provided in the control device 103, and when the environment information generation unit 3501 acquires the environment information, (I) an information change point input from the information change point detection unit 109 and time information corresponding to the point; Based on (ii) the behavior change point input from the behavior change point detection unit 2501 and the time information corresponding to the point, the difference between the time point of the behavior change point and the time point of the information change point is determined as default reaction time information.
  • the obtained predetermined reaction time information is output to the input / output IF 115.
  • the mode information of the mode switching unit 113 is “teach mode”.
  • “teach mode” is selected. 36A, the person presses the start button of IF 115, and at the time of FIG. 36D, the person presses the end button of IF 115.
  • FIG. 36A shows a state where a human hand 1001 holds the robot arm 102 and is stationary.
  • FIG. 36B shows a state in which force information is generated by the environment information generation unit 3501. Specifically, the force information is generated by the environment information generation unit 3501 by controlling the position and presenting the force. Alternatively, the hand 701 of the robot arm 102 is actually collided with the object.
  • FIG. 36C is a time when the reaction time has elapsed from the time when the force information is generated by the environment information generation unit 3501, and the force information is transmitted to the human hand 1001 and the human hand 1001 moves the robot arm 102. It is.
  • the time from the time point of FIG. 36B to the time point of FIG. 36C is measured by the predetermined reaction time measurement unit 3502 as the predetermined reaction time information.
  • FIG. 36D shows a state in which a human hand 1001 holds the robot arm 102 and is stationary, and the preliminary experiment is completed.
  • FIG. 37 shows the position information of the robot arm 102 and the measured value of the force sensor 716 obtained during the preliminary experiment of FIGS. 36A to 36D.
  • a solid line graph 400 in FIG. 37 shows values detected by the force sensor 716.
  • a solid line graph 401 indicates the position of the robot arm 102.
  • the horizontal axis of FIG. 37 shows the preliminary experiment time from the preliminary experiment start time (0 ms) to the preliminary experiment end time.
  • the left vertical axis in FIG. 37 indicates the position (mm) of the robot arm 102.
  • the right vertical axis in FIG. 37 indicates the value (N) detected by the force sensor 716.
  • Reference numerals A and B in FIG. 37 represent information change points and behavior change points. Further, reference symbol C in FIG. 37 represents predetermined reaction time information.
  • the displacement of the force information increases in the state of FIG. 36B, and the information change point is detected by the information change point detection unit 109.
  • the displacement of the position information increases in the state of FIG. 36C, and the behavior change point is detected by the behavior change point detection unit 2501.
  • the time from the time of the information change point to the time of the behavior change point is obtained by the default reaction time acquisition unit 108 as the default reaction time information.
  • the default reaction time information corresponding to the difference in the reaction time due to the person, the target work, or the environment information is acquired by the default reaction time acquisition unit 108. It can be acquired by the unit 108.
  • the determined default reaction time information is stored in the default response time information storage unit 108A, and is output from the default reaction time acquisition unit 108 to the behavior change point detection unit 2501 as the default reaction time information.
  • Preliminary experiments are performed as preparations for actual work, differ for each worker or target work, and are stored as information as shown in FIG.
  • step S3901 a preliminary experiment is performed, the default reaction time information measurement unit 3502 measures the default reaction time information, and the default reaction time information measurement unit 3502 outputs the information to the input / output IF 115, and the process proceeds to step S2401.
  • step S2401 the operation information acquisition unit 106 acquires the operation information
  • the environment information acquisition unit 107 acquires the environment information
  • the default reaction time information acquisition unit 108 acquires the default reaction time information
  • the process proceeds to step S2402. .
  • step S2402 the mode switching unit 113 outputs mode information (whether “teach mode” or “reproduction mode”) to the control unit 114.
  • mode information whether “teach mode” or “reproduction mode”
  • the process proceeds to step S2403, and in the case of “reproduction mode”, the process proceeds to step S2406.
  • step S2403 the information change point detection unit 109 detects an information change point from the acquired teaching data (information acquired in step S2401), outputs the detected information change point to the behavior change point detection unit 2501, and step S3001 Proceed to
  • step S3001 the behavior change point detection unit 2501 searches for a behavior change point after the point when the predetermined reaction time has elapsed from the time of the information change point acquired from the information change point detection unit 109. Further, if the behavior change point detection unit 2501 determines that the behavior change point has not been detected as a result of the search by the behavior change point detection unit 2501, it is detected before the time point when the predetermined reaction time has elapsed from the time of the information change point. The behavior change point detection unit 2501 searches for the changed behavior change point. The behavior change point detected by the behavior change point detection unit 2501 is output from the behavior change point detection unit 2501 to the feedback rule generation unit 111, and the process proceeds to step S2405.
  • step S2405 the feedback rule generation unit 111 represents the information after the behavior change point acquired from the behavior change point detection unit 2501 as an approximate curve, generates a feedback rule, and outputs the feedback rule to the action generation unit 3102.
  • step S3401 the actual reaction time information detection unit 3101 calculates the difference between the action change point time point and the information change point time point, and detects the actual reaction time information.
  • the detected actual reaction time information is output from the actual reaction time information detection unit 3101 to the action generation unit 3102, and the flow ends.
  • step S2406 if the information change point detection unit 109 determines that an information change point has been detected, the process advances to step S3402. If the information change point detection unit 109 determines that no information change point has been detected, the process advances to step S2408.
  • step S3402 the action generation unit 3102 prompts the person to use the input / output IF 115 to select whether or not to delete the action in the actual reaction time information when applying the feedback rule. If the action in the actual reaction time information is to be deleted, the process proceeds to step S3403. If the action in the actual reaction time information is not to be deleted, the process proceeds to step S3404.
  • step S3403 the motion generation unit 3102 generates motion information in which the motion in the actual reaction time information is deleted and the feedback rule is applied to the motion information acquired from the motion information acquisition unit 106, and the process proceeds to step S2408. .
  • step S3404 the motion generation unit 3102 generates motion information in which the feedback rule is applied to the motion information acquired from the motion information acquisition unit 106 without deleting the motion in the actual reaction time information. move on.
  • step S2408 the robot arm 102 is controlled by the control unit 114 based on the motion information generated by the motion generation unit 3102, and the flow ends.
  • the behavior change point detection unit 2501 can accurately determine the behavior change point, and the task can be accurately performed even when the person, the target work, the environment information, or the like changes.
  • FIG. 40 is a block diagram of the robot 101 according to the fifth embodiment of the present invention.
  • the change point detection unit 109, the behavior change point detection unit 2501, the feedback rule generation unit 111, the mode switching unit 113, the actual reaction time information detection unit 3101 and the control unit 114 are the same as those in the third embodiment. Therefore, common reference numerals are assigned and descriptions of common parts are omitted, and only different parts will be described in detail below.
  • the motion generation unit 4001 is provided in the control device 103 in place of the motion generation unit 112, (I) at least one piece of movement information input from the movement information acquisition unit 106, position information, posture information, and speed information; time information; (Ii) environment information and time information input from the environment information acquisition unit 107; (Iii) information change point input from the information change point detection unit 109 and time information corresponding to the point; Based on (iv) the actual reaction time information input from the actual reaction time information detection unit 3101 and the information input with the time information, operation information is generated.
  • the motion generation unit 4001 outputs the generated motion information and time information to the control unit 114.
  • the motion generation unit 4001 stores the generated motion information, feedback rule, and time information in the motion storage unit 4002A.
  • the operation information generation method in the operation generation unit 4001 will be described.
  • the motion generation unit 4001 creates the motion information input from the motion information acquisition unit 106 as motion information.
  • the operation generation unit 4001 generates an operation to which a feedback rule is applied.
  • the action applied to the feedback rule is to change the action information so as to follow the input approximate curve.
  • the person is prompted to select whether to reproduce or delete the operation in the actual reaction time information using the input / output IF 115.
  • selection information selected by the person using the input / output IF 115 can be input to the action generation unit 4001 to select whether to reproduce or delete the action in the actual reaction time information.
  • the same operation as the teaching data is possible.
  • the operation in the actual reaction time information is reproduced when performing the same operation as the teaching operation, and the operation in the actual reaction time information is deleted when reproducing in a short time efficiently.
  • the action of the human reaction time can be deleted, and the unstable action can be deleted.
  • the actual reaction time information input from the actual reaction time information detection unit 3101 to the action generation unit 4001 in each teaching data is compared by the operation generation unit 4001, and the actual reaction time information is the most.
  • the operation generation unit 4001 generates short teaching data as operation information.
  • the case where there are a plurality of teaching data indicates a case where the same worker teaches a plurality of times in the same work, or a case where a plurality of workers teach in the same work.
  • the action generation unit 4001 compares the actual reaction time information (BA in FIGS. 41A to 41C).
  • the actual reaction time information is 524 ms in FIG. 41A, 416 ms in FIG. 41B, and 594 ms in FIG. 41C.
  • the operation generation unit 4001 since the actual reaction time information in FIG. 41B is the shortest, the operation generation unit 4001 generates the teaching data in FIG. 41B as operation information.
  • teaching data indicates, for example, time-series data as shown in FIG.
  • step S2401 the operation information acquisition unit 106 acquires the operation information
  • the environment information acquisition unit 107 acquires the environment information
  • the default reaction time information acquisition unit 108 acquires the default reaction time information
  • step S2402 the mode switching unit 113 outputs mode information (whether “teach mode” or “reproduction mode”) to the control unit 114.
  • mode information whether “teach mode” or “reproduction mode”
  • the process proceeds to step S2403, and in the case of “reproduction mode”, the process proceeds to step S2406.
  • step S2403 the information change point detection unit 109 detects an information change point from the acquired teaching data (information acquired in step S2401), outputs the detected information change point to the behavior change point detection unit 2501, and step S3001 Proceed to
  • step S3001 the behavior change point detection unit 2501 searches for a behavior change point after the point when the predetermined reaction time has elapsed from the time of the information change point acquired from the information change point detection unit 109. Further, when the information change point detection unit 109 determines that the behavior change point has not been detected as a result of the search by the information change point detection unit 109, the information change point detection unit 109 detects the change before the time when the predetermined reaction time has elapsed from the time of the information change point. The information change point detection unit 109 searches for the changed action change point. The action change point detected by the information change point detection unit 109 is output from the information change point detection unit 109 to the feedback rule generation unit 111, and the process proceeds to step S2405.
  • step S2405 the feedback rule generation unit 111 represents the information after the behavior change point acquired from the behavior change point detection unit 2501 as an approximate curve, generates a feedback rule, and outputs the feedback rule to the operation generation unit 4001, step S3401. Proceed to
  • step S3401 the actual reaction time information detection unit 3101 calculates the difference between the action change point time point and the information change point time point, and detects the actual reaction time information.
  • the actual reaction time information detected by the actual reaction time information detection unit 3101 is output from the actual reaction time information detection unit 3101 to the action generation unit 4001, and the flow ends.
  • step S2406 if the information change point detection unit 109 determines that an information change point has been detected, the process advances to step S3402. If the information change point detection unit 109 determines that no information change point has been detected, the process advances to step S4301.
  • step S3402 the action generation unit 4001 prompts the person to select, using the input / output IF 115, whether or not to delete the action in the actual reaction time information when applying the feedback rule. If the action in the actual reaction time information is to be deleted, the process proceeds to step S3403. If the action in the actual reaction time information is not to be deleted, the process proceeds to step S3404.
  • step S3403 the motion generation unit 4001 generates motion information in which the motion in the actual reaction time information is deleted and the feedback rule is applied to the motion information acquired from the motion information acquisition unit 106, and the process proceeds to step S4301. .
  • step S3404 the motion generation unit 4001 generates motion information in which the feedback rule is applied to the motion information acquired from the motion information acquisition unit 106 without deleting the motion in the actual reaction time information, and in step S4301 move on.
  • step S4301 the control unit 114 controls the robot arm 102 based on the motion information generated by the motion generation unit 4001, and the flow ends.
  • the motion generation unit 4001 controls the robot arm 102 using the teaching data with the shortest actual reaction time information as the motion information.
  • the best teaching data can be selected and reproduced by the motion generation unit 4001, so that efficient work can be performed.
  • FIG. 44 is a block diagram of the robot 101 according to the sixth embodiment of the present invention.
  • the behavior change point detection unit 4401 is provided in the control device 103 in place of the behavior change point detection unit 2501, detects preliminary motion information in addition to the function of the behavior change point detection unit 2501 in the third embodiment, and performs preliminary motion information. When is detected, a behavior change point is detected at a time after the detected time point.
  • the preliminary motion information detected by the behavior change point detection unit 4401 is output from the behavior change point detection unit 4401 to the motion generation unit 4402.
  • Preliminary motion information is a preliminary motion before a person changes behavior, and is detected in the motion information. Specifically, in the operation of inserting the flexible substrate 1002, this represents an operation that a person is performing unconsciously so as to perform an operation of pulling the flexible substrate 1002 minutely before pushing it into the connector 1003.
  • Information change point is detected by the information change point detection unit 4401 (reference symbol A in FIG. 45).
  • the behavior change point detection unit 4401 detects a time point when the displacement of the position information exceeds a second threshold (for example, ⁇ 0.05 mm) as a behavior change point (reference symbol B in FIG. 45).
  • the displacement of the position information exceeds the second threshold (eg, 0.05 mm) and is detected between the behavior change point and the third threshold (eg, 200 ms).
  • Position information having the same size as the behavior change point is detected (reference symbol C in FIG. 45).
  • the behavior change point detection unit 4401 searches for the behavior change point after the time point of the reference symbol C in FIG. 45, and detects the behavior change point from the force information (reference symbol D in FIG. 45). As described above, the behavior change point detector 4401 detects the preliminary motion information (from reference characters B to C in FIG. 45) and the behavior change point (reference symbol D in FIG. 45), and the motion generator 4402.
  • the third threshold value is a threshold value for detecting the preliminary motion, and it is confirmed that the preliminary motion is an unconscious motion performed by a person and occurs within a short time, and detects that it is within this short time. It is a threshold of time for.
  • the motion generation unit 4402 is provided in the control device 103 in place of the motion generation unit 3102 and is based on preliminary motion information input from the behavior change point detection unit 4401 in addition to the function of the motion generation unit 3102 in the third embodiment.
  • the user is prompted to select whether to correct the operation information or not using the input / output IF 115. Therefore, selection information selected by a person using the input / output IF 115 can be input to the operation generation unit 4402 to select whether to correct the operation information or not to correct the operation information.
  • the motion information of the time between the preliminary motion information (from reference numerals B to C in FIG. 45) is uniformly corrected to the same size.
  • motion information similar to the teaching data is created.
  • the preliminary motion information is not corrected when the same operation as the teaching operation is performed, and the preliminary motion information is corrected when an unnecessary motion that is not intended by a person is deleted.
  • the motion generation unit 4402 stores the generated motion information, feedback rule, and time information in the motion storage unit 4402A.
  • 46A and 46B show a reproduction result when the preliminary operation information is corrected and a reproduction result when the preliminary operation information is not corrected. 46A and 46B, it can be confirmed that the operation information during reproduction differs depending on whether or not the preliminary operation information is modified.
  • step S2401 the operation information acquisition unit 106 acquires the operation information
  • the environment information acquisition unit 107 acquires the environment information
  • the default reaction time information acquisition unit 108 acquires the default reaction time information
  • step S2402 the mode switching unit 113 outputs mode information (whether “teach mode” or “reproduction mode”) to the control unit 114.
  • mode information whether “teach mode” or “reproduction mode”
  • the process proceeds to step S2403, and in the case of “reproduction mode”, the process proceeds to step S2406.
  • step S2403 the information change point detection unit 109 detects an information change point from the acquired teaching data (information acquired in step S2401), outputs the detected information change point to the behavior change point detection unit 4401, and step S4701 Proceed to
  • step S4701 the behavior change point detector 4401 detects preliminary motion information, outputs it to the motion generator 4402, and proceeds to step S4702.
  • step S4702 the behavior change point detection unit 4401 searches for behavior change points after the time point when the preliminary motion information is detected.
  • the behavior change point detection unit 4401 outputs the detected behavior change point to the feedback rule generation unit 111, and the process proceeds to step S2405.
  • step S2405 the feedback rule generation unit 111 represents the information after the behavior change point acquired from the behavior change point detection unit 4401 as an approximate curve, generates a feedback rule, and outputs the feedback rule to the action generation unit 4402.
  • step S3401 the actual reaction time information detection unit 3101 calculates the difference between the action change point time point and the information change point time point, and detects the actual reaction time information.
  • the actual reaction time information detection unit 3101 outputs the detected actual reaction time information to the action generation unit 4402 and ends the flow.
  • step S4703 when the preliminary motion information is acquired from the behavior change point detection unit 4401 in the motion generation unit 4402, the person selects whether to correct the preliminary motion information or not using the input / output IF 115. Prompt. Therefore, selection information selected by the person using the input / output IF 115 is input to the action generation unit 4402 to select whether or not to correct the preliminary action information.
  • step S4704 If the preliminary operation information is not corrected, the process proceeds to step S2406.
  • step S4704 the motion generation unit 4402 corrects the preliminary motion information, and the process proceeds to step S2406.
  • step S2406 if the information change point detection unit 109 determines that an information change point has been detected, the process advances to step S3402. If the information change point detection unit 109 determines that no information change point has been detected, the process advances to step S2408.
  • step S3402 the action generation unit 4402 prompts the person to select, using the input / output IF 115, whether or not to delete the action in the actual reaction time information when applying the feedback rule. Therefore, selection information selected by the person using the input / output IF 115 is input to the action generation unit 4402 to select whether or not to delete the action in the actual reaction time information. If the action in the actual reaction time information is to be deleted, the process proceeds to step S3403. If the action in the actual reaction time information is not to be deleted, the process proceeds to step S3404.
  • step S3403 the operation generation unit 4402 generates operation information obtained by deleting the operation in the actual reaction time information and applying the feedback rule to the operation information acquired from the operation information acquisition unit 106, and the process proceeds to step S2408. .
  • step S3404 the motion generation unit 4402 generates motion information in which the feedback rule is applied to the motion information acquired from the motion information acquisition unit 106 without deleting the motion in the actual reaction time information, and the process proceeds to step S2408. move on.
  • step S2408 the control unit 114 controls the robot arm 102 based on the motion information generated by the motion generation unit 4402, and the flow ends.
  • teaching data unintended by a person can be corrected by detecting and correcting the preliminary movement information by the behavior change point detection unit 4401. Therefore, accurate operation information can be created, and accurate work can be performed even when environmental fluctuations are large.
  • the preliminary motion is reproduced as it is, it moves rapidly, causing damage to the object. In such a case, it is possible to prevent the object from being damaged by deleting the preliminary motion information by the motion generation unit 4402 based on the person's selection motion.
  • FIG. 48 is a block diagram of the robot 101 according to the sixth embodiment of the present invention.
  • the change point detection unit 2501, the feedback rule generation unit 111, the operation generation unit 3102, the mode switching unit 113, the actual reaction time information detection unit 3101 and the control unit 114 are the same as those in the third embodiment, Common reference numerals are assigned, and description of common parts is omitted, and only different parts will be described in detail below.
  • An information change point detection unit 4801 is provided in the control device 103 in place of the information change point detection unit 109.
  • a plurality of environment information is changed at the same time.
  • it has a function of narrowing the information change point to one information in the priority order of force information, volume information, and object position information. That is, when force information, volume information, and object position information are detected by the information change point detection unit 4801 as information change points, the force information is used by the information change point detection unit 4801 as information change points.
  • the force change information and the volume information are detected by the information change point detection unit 4801 as information change points
  • the force change information is used by the information change point detection unit 4801 as information change points.
  • the information change point detection unit 4801 uses the volume information as information change points. This is because human reaction time is fast in the order of haptic information, auditory information, and visual information.
  • FIG. 49 (A) to (D) are teaching data
  • FIG. 49 (A) is force information
  • FIG. 49 (B) is volume information
  • FIG. 49 (C) is object position information
  • FIG. (D) in the figure indicates position information.
  • Reference numerals A, B, and C in (A) to (C) of FIG. 49 are times when the first threshold value is exceeded.
  • the information change point detection unit 4801 detects force information (reference symbol A in FIG. 49A) as an information change point according to the priority order.
  • the reference sign D in FIG. 49D is detected by the information change point detection unit 4801 as a behavior change point.
  • step S2401 the operation information acquisition unit 106 acquires the operation information
  • the environment information acquisition unit 107 acquires the environment information
  • the default reaction time information acquisition unit 108 acquires the default reaction time information
  • step S2402 the mode switching unit 113 outputs mode information (whether “teach mode” or “reproduction mode”) to the control unit 114.
  • mode information whether “teach mode” or “reproduction mode”
  • the process proceeds to step S5001.
  • the process proceeds to step S2406.
  • step S5001 the information change point detection unit 4801 detects an information change point from the acquired teaching data (information acquired in step S2401), outputs the detected information change point to the behavior change point detection unit 2501, and step S3001 Proceed to Further, when a plurality of pieces of environment information are detected as information change points at the same time in the information change point detection unit 4801, one environment information is set as an information change point in the priority order of force information, volume information, and object position information. To detect.
  • step S3001 the behavior change point detection unit 2501 searches for a behavior change point after the point when the predetermined reaction time has elapsed from the time of the information change point acquired from the information change point detection unit 4801. Further, if the behavior change point detection unit 2501 determines that the behavior change point has not been detected as a result of the search by the behavior change point detection unit 2501, it is detected before the time when the predetermined reaction time has elapsed from the time of the information change point. To search for behavior change points. The behavior change point detected by the behavior change point detection unit 2501 is output from the behavior change point detection unit 2501 to the feedback rule generation unit 111, and the process proceeds to step S2405.
  • step S2405 the feedback rule generation unit 111 represents the information after the behavior change point acquired from the behavior change point detection unit 2501 as an approximate curve, generates a feedback rule, and outputs the feedback rule to the motion generation unit 3102.
  • step S3401 Proceed to
  • step S3401 the actual reaction time information detection unit 3101 calculates the difference between the action change point time point and the information change point time point, and detects the actual reaction time information.
  • the actual reaction time information detected by the actual reaction time information detection unit 3101 is output from the actual reaction time information detection unit 3101 to the action generation unit 3102 and the flow ends.
  • step S2406 if the information change point detection unit 4801 determines that an information change point is detected, the process advances to step S3402. If the information change point detection unit 4801 determines that an information change point has not been detected, the process advances to step S2408.
  • step S3402 the action generation unit 3102 prompts the person to select, using the input / output IF 115, whether or not to delete the action in the actual reaction time information when applying the feedback rule. Therefore, selection information selected by a person using the input / output IF 115 is input to the action generation unit 3102 to select whether or not to delete the action in the actual reaction time information. If the action in the actual reaction time information is to be deleted, the process proceeds to step S3403. If the action in the actual reaction time information is not to be deleted, the process proceeds to step S3404.
  • step S3403 the motion generation unit 3102 generates motion information in which the motion in the actual reaction time information is deleted and the feedback rule is applied to the motion information acquired from the motion information acquisition unit 106, and the process proceeds to step S2408. .
  • step S3404 the motion generation unit 3102 generates motion information in which the feedback rule is applied to the motion information acquired from the motion information acquisition unit 106 without deleting the motion in the actual reaction time information. move on.
  • step S2408 the robot arm 102 is controlled by the control unit 114 based on the motion information generated by the motion generation unit 3102, and the flow ends.
  • the seventh embodiment even when there are a plurality of environment information as information change points, the environment information determined by the person can be selected and detected by the information change point detection unit 4801 as the information change point. . Therefore, it is possible to accurately extract human skills and perform accurate work by the robot.
  • FIG. 51A shows a block diagram of a robot 101 according to the eighth embodiment of the present invention.
  • the robot arm 102, the peripheral device 105, the operation information acquisition unit 106 of the control device 103, the environment information acquisition unit 107, the default reaction time acquisition unit 108, and feedback Since the law generation unit 111, the operation generation unit 112, the mode switching unit 113, and the control unit 114 are the same as those in the third embodiment, common reference numerals are assigned and descriptions of common parts are omitted, and are different. Only the portion will be described in detail below.
  • the information change point detection unit 5101 and the behavior change point detection unit 5102 have the same functions as the information change point detection unit 109 and the behavior change point detection unit 2501 in the second embodiment, but detect a change point.
  • the method is different.
  • the change point is detected by the displacement of the operation information or the environment information.
  • the information change point detection unit 5101 or the action change point detection unit 5102 compares the acquired operation information or environment information with the operation information or environment information smoothed using the smoothing filter. Then, the information change point detection unit 5101 or the behavior change point detection unit 5102 detects a point having a large difference as a change point. For example, a Gaussian filter is used as the smoothing filter. Thus, by obtaining the change point by the information change point detection unit 5101 or the behavior change point detection unit 5102, the change point can be accurately detected without detecting the noise as the change point.
  • a Gaussian filter is used as the smoothing filter.
  • FIG. 51B is a diagram showing the details of the inside of the information change point detection unit 5101.
  • the information change point detection unit 5101 includes an information acquisition unit 5101A, a calculation unit 5101B, a comparison unit 5101C, and a detection unit 5101D.
  • the information acquisition unit 5101A acquires information input to the information change point detection unit 5101 from other elements and outputs the information to the calculation unit 5101B and the comparison unit 5101C.
  • the calculation unit 5101B smoothes the motion information or environment information acquired from the information acquisition unit 5101A using a smoothing filter, and outputs the smoothed motion information or environment information to the comparison unit 5101C.
  • the comparison unit 5101C compares the operation information or environment information acquired from the information acquisition unit 5101A with the smoothed operation information or environment information acquired from the calculation unit 5101B (determines a difference).
  • the comparison unit 5101C outputs the obtained comparison information to the detection unit 5101D.
  • the detecting unit 5101D detects a portion having a large difference as an information change point based on the comparison information input from the comparing unit 5101C. That is, a portion where the comparison information exceeds the detection threshold is detected as an information change point.
  • FIG. 51C is a diagram showing the details of the inside of the behavior change point detection unit 5102, and the method for deriving the change point therein is the same as that of the information change point 5101 described above. That is, the behavior change point detection unit 5102 includes an information acquisition unit 5102A, a calculation unit 5102B, a comparison unit 5102C, and a detection unit 5102D.
  • the information acquisition unit 5102A acquires information input to the behavior change point detection unit 5102 from other elements, and outputs the information to the calculation unit 5102B and the comparison unit 5102C.
  • the calculation unit 5102B smoothes the motion information or environment information acquired from the information acquisition unit 5102A using a smoothing filter, and outputs the smoothed motion information or environment information to the comparison unit 5102C.
  • the comparison unit 5102C compares the operation information or environment information acquired from the information acquisition unit 5102A with the smoothed operation information or environment information acquired from the calculation unit 5102B (determines a difference).
  • the comparison unit 5102C outputs the obtained comparison information to the detection unit 5102D.
  • the detecting unit 5102D detects a portion having a large difference as a behavior change point based on the comparison information input from the comparing unit 5102C. That is, the part where the comparison information exceeds the detection threshold is detected as a behavior change point.
  • the solid line in FIG. 52 is force information acquired by the environment information acquisition unit, and the broken line is force information obtained by smoothing the force information using a Gaussian filter.
  • the two pieces of force information described above are compared, and a point in time when the difference exceeds a fourth threshold (change point detection threshold) (for example, 1N) is detected as a change point (location indicated by reference symbol A in FIG. 52). .
  • a fourth threshold change point detection threshold
  • step S2401 the operation information acquisition unit 106 acquires the operation information
  • the environment information acquisition unit 107 acquires the environment information
  • the default reaction time information acquisition unit 108 acquires the default reaction time information
  • step S2402 the mode switching unit 113 outputs mode information (whether “teach mode” or “reproduction mode”) to the control unit 114.
  • mode information whether “teach mode” or “reproduction mode”
  • the process proceeds to step S5301.
  • the process proceeds to step S2406.
  • step S5301 the information change point detection unit 5101 detects an information change point from the acquired teaching data (information acquired in step S2401), outputs the detected information change point to the behavior change point detection unit 5102, and step S5302 Proceed to
  • step S5302 the behavior change point detection unit 5102 searches for the behavior change point after the point when the predetermined reaction time has elapsed from the time of the information change point acquired from the information change point detection unit 5101. Further, when the behavior change point detection unit 5102 determines that the behavior change point has not been detected as a result of the search by the behavior change point detection unit 5102, the behavior change point detection unit 5102 is detected before the time point when the predetermined reaction time has elapsed from the time of the information change point. The behavior change point detection unit 5102 searches for the changed behavior change point. The behavior change point detected by the behavior change point detection unit 5102 is output from the behavior change point detection unit 5102 to the feedback rule generation unit 111, and the process proceeds to step S2405.
  • the feedback rule generation unit 111 represents the information after the behavior change point acquired from the behavior change point detection unit 5102 as an approximate curve, generates a feedback rule, and outputs the feedback rule to the operation generation unit 112. finish.
  • step S2406 if the information change point detection unit 5101 determines that an information change point has been detected, the process advances to step S2407. If the information change point detection unit 5101 determines that no information change point is detected, the process advances to step S2408.
  • step S2407 the motion generation unit 112 generates motion information obtained by applying a feedback rule to the motion information acquired from the motion information acquisition unit 106, and the process proceeds to step S2408.
  • step S2408 the control unit 114 controls the robot arm 102 based on the motion information generated by the motion generation unit 112, and the flow ends.
  • the influence of noise is reduced by obtaining using the information smoothed when the information change point or behavior change point is detected by the information change point detection unit 5101 or the behavior change point detection unit 5102.
  • the change point can be detected accurately. As a result, it is possible to accurately extract human skills and to perform work accurately with a robot.
  • each control device is a computer system including a microprocessor, a ROM, a RAM, a hard disk unit, a display unit, a keyboard, a mouse, and the like.
  • a computer program is stored in the RAM or hard disk unit. Each unit achieves its function by the microprocessor operating according to the computer program.
  • the computer program is configured by combining a plurality of instruction codes indicating instructions for the computer in order to achieve a predetermined function.
  • each component can be realized by a program execution unit such as a CPU reading and executing a software program recorded on a recording medium such as a hard disk or a semiconductor memory.
  • a program execution unit such as a CPU reading and executing a software program recorded on a recording medium such as a hard disk or a semiconductor memory.
  • achieves a part or all of the element which comprises the control apparatus in the said embodiment or modification is the following programs.
  • this program is a control program for the robot arm that controls the operation of the robot arm, Acquiring at least one piece of movement information of the position, posture, and speed of the robot arm when the robot arm is moved by a movement information acquisition unit; Acquiring environmental information, which is at least one of force information about the surrounding environment generated when the robot arm is operated, volume information, and position information, in an environment information acquisition unit; A step of acquiring a predetermined reaction time information, which is a predetermined time information from when the person receives the environmental information when operating the robot arm until the person operates the robot arm, with a predetermined reaction time information acquisition unit.
  • a time point when at least one of the one or more pieces of movement information acquired by the movement information acquisition unit and the environmental information acquired by the environmental information acquisition unit changes is an information change point.
  • Detecting step The predetermined reaction time from the information change point to a time point when at least one of the one or more pieces of operation information acquired by the operation information acquisition unit and the environment information acquired by the environment information acquisition unit changes. Searching for the time after the point in time, and detecting at the behavior change point detection unit as the behavior change point at the first detected time, A feedback rule is generated using at least one piece of information of the one or more pieces of the movement information acquired by the movement information acquisition unit and the environment information acquired by the environmental information acquisition unit for a time after the behavior change point as a feedback rule.
  • Generating in part Generating a motion of the robot arm by a motion generation unit based on the one or more motion information, the information change point, the behavior change point, and the feedback rule;
  • a robot arm control program for causing a computer to execute a step of controlling the operation of the robot arm by a control unit based on the motion generation unit.
  • the program may be executed by being downloaded from a server or the like, and a program recorded on a predetermined recording medium (for example, an optical disk such as a CD-ROM, a magnetic disk, or a semiconductor memory) is read out. May be executed.
  • a predetermined recording medium for example, an optical disk such as a CD-ROM, a magnetic disk, or a semiconductor memory
  • the computer that executes this program may be singular or plural. That is, centralized processing may be performed, or distributed processing may be performed.
  • the robot arm control device and method, the robot, the robot arm control program, and the integrated electronic circuit according to the present invention provide feedback based on the relationship between the time when the stimulus is generated and the change in behavior after the reaction time has elapsed.
  • a control device and control method for a robot arm of a movable mechanism in an industrial robot or a production facility, etc., a robot, and a robot arm It is useful as a control program and an integrated electronic circuit.
  • the robot arm control device and method, the robot, the robot arm control program, and the integrated electronic circuit according to the present invention are not limited to industrial robots, but are robot robots for home robots, robot arm control devices, and There is a possibility of being applied as a control method, a robot, a control program for a robot arm, and an integrated electronic circuit.

Landscapes

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

Abstract

 ロボットアーム(102)の制御装置であって、情報変化点検出部(109)と行動変化点検出部(110)とによりそれぞれ検出された、教示データにおける、刺激が発生した時点と反応時間が経過した後の行動の変化との関係から、フィードバック則をフィードバック則生成部(111)で生成して、動作情報と情報変化点と行動変化点とフィードバック則とに基づいて、ロボットアームの動作を動作生成部(112)で生成し、制御部(114)で動作制御する。

Description

ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路
 本発明は、ロボットの動作を生成、教示するためのロボットアームの制御装置及び制御方法、ロボットアームの制御装置を有するロボット、ロボットアームの制御プログラム、集積電子回路に関する。
 近年、製造現場では多品種少量生産のため、モデルチェンジが頻繁に起こる。セル生産の製造現場において、ネジ締め作業、部品の嵌合作業、装着作業、フレキシブル基板などの挿入作業、又は、研磨作業などをロボットにより自動化するためには、多種多様な部品又は作業手順に柔軟に対応する必要がある。部品が変わるごとに組み立てる位置又は向きなどが変わり、作業を行う順番も変わるので、それらの変化に対応する必要がある。
 また、フレキシブル基板の挿入作業などのように柔軟物を取り扱う作業などは、作業が複雑であり、依然として人手中心で行っている。人は、柔軟物が対象物に接触し、柔軟物がたわむ際の手に伝わる反力によって、柔軟物のたわみ具合又は位置を推測し、それによって、複雑な作業を行うことができる。
 これに対して、ロボットは、試行ごとにたわみ方又は位置などが変わる柔軟物の力情報又は位置情報を定式化できないため、得られる反力に応じた複雑な作業を行うことは非常に困難である。以上の問題を解決し、そのような人手中心で行っている作業をロボットにより自動化する需要は大きい。
 ロボットに作業を教示する方法としてロボットを触って教示するダイレクトティーチングが用いられている。また、得られた教示データから環境の情報と人がロボットを操作する情報との関係性(センサフィードバック則と呼ぶ)を抽出し、ロボットの自動再生時に適用することによって、環境変動又はワークの変動に対応する例がある(特許文献1、2参照)。ダイレクトティーチングの例としては、微小な力情報の変化によるセンサフィードバック則が必要となる折り紙作業に適用されている(非特許文献1参照)。
特開平6-23682号公報 特開2006-192548号公報
田中、木原、横小路、「人間の直接教示動作の統計的性質に基づいた折り紙ロボットの目標軌道とセンサフィードバック則生成法」、日本ロボット学会誌、Vol.27、No.6、pp.685~695、2009年7月
 フレキシブル基板の挿入作業のように、柔軟で細かな作業を行う場合には、反応時間を考慮することが重要となる。例えば、フレキシブル基板とコネクタとが接触する際の反動で人が意図しない不安定動作を起こし、フレキシブル基板又はコネクタを破損させることもある。ロボットの自動化を行う場合は、人の不安定動作の影響を防ぎ、センサフィードバック則を抽出することが非常に重要である。このような不安定動作が生じる現象を図54A~図54H、図55を用いて説明する。図54A~図54Hは、人の手1001がロボットアーム1102を操作し、教示している手順を示す。図54A→図54C→図54E→図54Gの順に人の手1001がロボットアーム1102に教示していく手順を示している。また、そのときのフレキシブル基板1002とコネクタ1003の状態を図54B→図54D→図54F→図54Hの順に示す。
 図54Aでは、人の手1001がロボットアーム1102を把持し、人がロボットに対して教示を開始した時点である。この時点では、まだ、フレキシブル基板1002とコネクタ1003とが接触していないので、人の手1001には、フレキシブル基板1002とコネクタ1003との接触時の反力は伝わらない。
 図54Cは、フレキシブル基板1002とコネクタ1003の入り口とが接触した時点である。この時点では、接触の際の力が発生した瞬間であり、人の手1001には力が伝わっていない。
 図54Eでは、フレキシブル基板1002とコネクタ1003の入り口とが接触した直後であり、人の手1001には接触の際の力が伝わっていない。しかしながら、接触の反動により人の手1001に不安定動作が起こり、ロボットアーム102は移動している。
 図54Gでは、フレキシブル基板1002とコネクタ1003の入り口とが接触した時点から反応時間が経過しており、人の手1001には接触の際の力が伝わっている。フレキシブル基板1002をコネクタ1003に押し込み、挿入作業を行っている時点を示す。このときの反力を人の手1001が感じることによって、コネクタ1003へのフレキシブル基板1002の挿入具合を人が調整する。
 図55は、図54A~図54Hの教示動作における、力センサ1716の値とロボットアーム1102の位置情報を示す。力センサ1716の値は、フレキシブル基板1002がコネクタ1003に接触する際に生じる、人の手1001に伝わる反力の大きさを示す。第一の実線のグラフ550は、力センサ1716で検出される値を示す。第二の実線のグラフ551は、ロボットアーム1102の位置を示す。図55の横軸は、挿入作業開始時間(0ms)から挿入作業終了時間までの時間(ms)を示す。図55の左縦軸は、ロボットアーム1102の位置(mm)を示す。図55の右縦軸は、力センサ1716で検出される値(N)を示す。図55のグラフの下に描かれている図は、挿入作業時間において、コネクタ1003に対するフレキシブル基板1002の挿入状態(図55A、図55C、図55E、図55Gの状態)にあるのかを示す。
 図55中の参照符号Aの時点がフレキシブル基板1002とコネクタ1003とが接触した時点である。図55中の参照符号Cの時間が反応時間内の不安定動作が生じている時間帯である。その時間帯の位置情報からわかる通り、人が意図せずロボットアーム102の位置が前後に急激に移動していることが確認できる。
 本発明の目的は、このような課題に鑑みてなされたものであり、ダイレクトティーチングなどの教示データから人の技能を抽出する際に、人の反応時間内に生じる不安定動作の影響を防ぎ、正確に人の技能を抽出することができる、ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路を提供することにある。
 前記の目的を達成するために、本発明は以下のように構成する。
 本発明の1つの態様によれば、ロボットアームの動作を制御するロボットアームの制御装置であって、
 前記ロボットアームが動作する際の前記ロボットアームの位置と、姿勢と、速度との少なくとも1つ以上の動作情報を取得する動作情報取得部と、
 前記ロボットアームが動作する際に生じる周辺環境に関する力情報と、音量情報と、位置情報との少なくとも1つ以上の情報である環境情報を取得する環境情報取得部と、
 人が前記ロボットアームを操作する際に前記環境情報を受けてから前記人が前記ロボットアームの操作を行うまでの既定の時間情報である既定反応時間情報を取得する既定反応時間情報取得部と、
 前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報が変化する時点を情報変化点として検出する情報変化点検出部と、
 前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報が変化する時点を、前記情報変化点から前記既定反応時間が経過した時点以降の時間を探索し、初めに検出された時点を行動変化点として検出する行動変化点検出部と、
 前記行動変化点以降の時間の前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報をフィードバック則として生成するフィードバック則生成部と、
 1つ以上の前記動作情報と、前記情報変化点と、前記行動変化点と、前記フィードバック則とに基づいて、前記ロボットアームの動作を生成する動作生成部と、
 前記動作生成部に基づいて、前記ロボットアームの前記動作を制御する制御部とを備えるロボットアームの制御装置を提供する。
 これらの概括的かつ特定の態様は、システム、方法、コンピュータプログラム並びにシステム、方法及びコンピュータプログラムの任意の組み合わせにより実現してもよい。
 本発明の前記態様によれば、刺激が発生した時点から反応時間が経過した時点の人の操作のフィードバック則を生成することから、人の意図通りのフィードバック則を生成できる。また、反応時間内に生じる不安定動作を防ぐことができ、安全性を向上させることができる。
 本発明のこれらと他の目的と特徴は、添付された図面についての実施形態に関連した次の記述から明らかになる。この図面においては、
図1Aは、本発明の第1実施形態のロボットにおけるロボットアームのブロック図、 図1Bは、本発明の第1実施形態のロボットにおける教示時のロボットアームのブロック図、 図1Cは、本発明の第1実施形態のロボットにおける再生時のロボットアームのブロック図、 図1Dは、本発明の第1実施形態のロボットにおける入出力IFのブロック図、 図2は、本発明の第1実施形態のロボットにおける動作情報のデータ図、 図3は、本発明の第1実施形態のロボットにおける環境情報のデータ図、 図4は、本発明の第1実施形態のロボットにおける既定反応時間情報のデータ図、 図5は、本発明の第1実施形態のロボットにおける情報変化点のデータ図、 図6は、本発明の第1実施形態のロボットにおける行動変化点のデータ図、 図7は、本発明の第1実施形態のロボットにおけるロボットアームの説明図、 図8Aは、本発明の第1実施形態のロボットにおけるフレキシブル基板を挿入方向に対して下から見た図、 図8Bは、本発明の第1実施形態のロボットにおけるフレキシブル基板を挿入方向に対して横から見た図、 図9Aは、本発明の第1実施形態のロボットにおけるコネクタを挿入方向に対して正面から見た図、 図9Bは、本発明の第1実施形態のロボットにおけるコネクタを挿入方向に対して横から見た図、 図10Aは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(力情報を使用する例)、 図10Bは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(力情報を使用する例)、 図10Cは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(力情報を使用する例)、 図10Dは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(力情報を使用する例)、 図10Eは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(力情報を使用する例)、 図10Fは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(力情報を使用する例)、 図10Gは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(力情報を使用する例)、 図10Hは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(力情報を使用する例)、 図10Iは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(力情報を使用する例)、 図10Jは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(力情報を使用する例)、 図11Aは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作時の力情報と位置情報の図、 図11Bは、行動変化点の検出方法の図11Aとは別の例を説明するための、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作時の力情報と位置情報の図、 図12Aは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(力情報を使用する例)、 図12Bは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(力情報を使用する例)、 図12Cは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(力情報を使用する例)、 図12Dは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(力情報を使用する例)、 図12Eは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(力情報を使用する例)、 図12Fは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(力情報を使用する例)、 図12Gは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(力情報を使用する例)、 図12Hは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(力情報を使用する例)、 図12Iは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(力情報を使用する例)、 図12Jは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(力情報を使用する例)、 図13は、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作時の力情報と位置情報の図、 図14は、本発明の第1実施形態のロボットにおける集音装置の取り付け位置の図、 図15Aは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(音量情報を使用する例)、 図15Bは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(音量情報を使用する例)、 図15Cは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(音量情報を使用する例)、 図15Dは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(音量情報を使用する例)、 図15Eは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(音量情報を使用する例)、 図15Fは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(音量情報を使用する例)、 図15Gは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(音量情報を使用する例)、 図15Hは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(音量情報を使用する例)、 図15Iは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(音量情報を使用する例)、 図15Jは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(音量情報を使用する例)、 図16は、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作時の音量情報の図、 図17Aは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(音量情報を使用する例)、 図17Bは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(音量情報を使用する例)、 図17Cは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(音量情報を使用する例)、 図17Dは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(音量情報を使用する例)、 図17Eは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(音量情報を使用する例)、 図17Fは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(音量情報を使用する例)、 図17Gは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(音量情報を使用する例)、 図17Hは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(音量情報を使用する例)、 図17Iは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(音量情報を使用する例)、 図17Jは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(音量情報を使用する例)、 図18は、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作時の音量情報の図、 図19Aは、本発明の第1実施形態のロボットにおけるロボットアームの対象物位置情報の説明図、 図19Bは、本発明の第1実施形態のロボットにおけるロボットアームの対象物位置情報の説明図、 図19Cは、本発明の第1実施形態のロボットにおけるロボットアームの対象物位置情報の説明図、 図19Dは、本発明の第1実施形態のロボットにおけるロボットアームの対象物位置情報の説明図、 図20Aは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(対象物位置情報を使用する例)、 図20Bは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(対象物位置情報を使用する例)、 図20Cは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(対象物位置情報を使用する例)、 図20Dは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(対象物位置情報を使用する例)、 図20Eは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(対象物位置情報を使用する例)、 図20Fは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(対象物位置情報を使用する例)、 図20Gは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(対象物位置情報を使用する例)、 図20Hは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(対象物位置情報を使用する例)、 図20Iは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(対象物位置情報を使用する例)、 図20Jは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図(対象物位置情報を使用する例)、 図21は、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作時の対象物位置情報の図、 図22Aは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(対象物位置情報を使用する例)、 図22Bは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(対象物位置情報を使用する例)、 図22Cは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(対象物位置情報を使用する例)、 図22Dは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(対象物位置情報を使用する例)、 図22Eは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(対象物位置情報を使用する例)、 図22Fは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(対象物位置情報を使用する例)、 図22Gは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(対象物位置情報を使用する例)、 図22Hは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(対象物位置情報を使用する例)、 図22Iは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(対象物位置情報を使用する例)、 図22Jは、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作の説明図(対象物位置情報を使用する例)、 図23は、本発明の第1実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作時の対象物位置情報の図、 図24は、本発明の第1実施形態のロボットにおけるフローチャート、 図25Aは、本発明の第2実施形態のロボットにおけるロボットアームのブロック図、 図25Bは、本発明の第2実施形態のロボットにおける動作生成部のブロック図、 図26は、本発明の第2実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作時の力情報と位置情報の図、 図27は、本発明の第2実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作時の力情報と位置情報の図、 図28は、本発明の第2実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業における各方向の説明図、 図29Aは、本発明の第2実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作時の挿入方向の力情報と位置情報の図、 図29Bは、本発明の第2実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作時の横方向の力情報と位置情報の図、 図29Cは、本発明の第2実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作時の高さ方向の力情報と位置情報の図、 図30は、本発明の第2実施形態のロボットにおけるフローチャート、 図31は、本発明の第3実施形態のロボットにおけるロボットアームのブロック図、 図32は、本発明の第3実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業における実反応時間情報の説明図、 図33Aは、本発明の第3実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作時の実反応時間情報の動作を削除しない場合の力情報と位置情報の図、 図33Bは、本発明の第3実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作時の実反応時間情報の動作を削除する場合の力情報と位置情報の図、 図33Cは、本発明の第3実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作時の実反応時間情報の動作を補間する場合の力情報と位置情報の図、 図34は、本発明の第3実施形態のロボットにおけるフローチャート、 図35は、本発明の第4実施形態のロボットにおけるロボットアームのブロック図、 図36Aは、本発明の第4実施形態のロボットにおけるロボットアームの予備実験の説明図、 図36Bは、本発明の第4実施形態のロボットにおけるロボットアームの予備実験の説明図、 図36Cは、本発明の第4実施形態のロボットにおけるロボットアームの予備実験の説明図、 図36Dは、本発明の第4実施形態のロボットにおけるロボットアームの予備実験の説明図、 図37は、本発明の第4実施形態のロボットにおけるロボットアームの予備実験の力情報と位置情報の図、 図38は、本発明の第4実施形態のロボットにおける既定反応時間情報のデータ図、 図39は、本発明の第4実施形態のロボットにおけるフローチャート、 図40は、本発明の第5実施形態のロボットにおけるロボットアームのブロック図、 図41Aは、本発明の第5実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作時の力情報と位置情報の図、 図41Bは、本発明の第5実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作時の力情報と位置情報の図、 図41Cは、本発明の第5実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作時の力情報と位置情報の図、 図42は、本発明の第5実施形態のロボットにおける教示データのデータ図、 図43は、本発明の第5実施形態のロボットにおけるフローチャート、 図44は、本発明の第6実施形態のロボットにおけるロボットアームのブロック図、 図45は、本発明の第6実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作時の力情報と位置情報の図、 図46Aは、本発明の第6実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作時の力情報と位置情報の図(予備動作情報を修正する場合)、 図46Bは、本発明の第6実施形態のロボットにおけるロボットアームのフレキシブル基板挿入作業の再生動作時の力情報と位置情報の図(予備動作情報を修正しない場合)、 図47は、本発明の第6実施形態のロボットにおけるフローチャート、 図48は、本発明の第7実施形態のロボットにおけるロボットアームのブロック図、 図49は、本発明の第7実施形態のロボットにおけるロボットアームの教示動作の力情報の図、 図50は、本発明の第7実施形態のロボットにおけるフローチャート、 図51Aは、本発明の第8実施形態のロボットにおけるロボットアームのブロック図、 図51Bは、本発明の第8実施形態のロボットにおける情報変化点検出部のブロック図、 図51Cは、本発明の第8実施形態のロボットにおける行動変化点検出部のブロック図、 図52は、本発明の第8実施形態のロボットにおけるロボットアームの変化点検出の説明図、 図53は、本発明の第8実施形態のロボットにおけるフローチャート、 図54Aは、従来のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図、 図54Bは、従来のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図、 図54Cは、従来のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図、 図54Dは、従来のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図、 図54Eは、従来のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図、 図54Fは、従来のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図、 図54Gは、従来のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図、 図54Hは、従来のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作の説明図、 図55は、従来のロボットにおけるロボットアームのフレキシブル基板挿入作業の教示動作時の力情報と位置情報の図である。
 以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する。
 以下、図面を参照して本発明における実施形態を詳細に説明する前に、本発明の種々の態様について説明する。
 本発明の第1態様によれば、ロボットアームの動作を制御するロボットアームの制御装置であって、
 前記ロボットアームが動作する際の前記ロボットアームの位置と、姿勢と、速度との少なくとも1つ以上の動作情報を取得する動作情報取得部と、
 前記ロボットアームが動作する際に生じる周辺環境に関する力情報と、音量情報と、位置情報との少なくとも1つ以上の情報である環境情報を取得する環境情報取得部と、
 人が前記ロボットアームを操作する際に前記環境情報を受けてから前記人が前記ロボットアームの操作を行うまでの既定の時間情報である既定反応時間情報を取得する既定反応時間情報取得部と、
 前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報が変化する時点を情報変化点として検出する情報変化点検出部と、
 前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報が変化する時点を、前記情報変化点から前記既定反応時間が経過した時点以降の時間を探索し、初めに検出された時点を行動変化点として検出する行動変化点検出部と、
 前記行動変化点以降の時間の前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報をフィードバック則として生成するフィードバック則生成部と、
 1つ以上の前記動作情報と、前記情報変化点と、前記行動変化点と、前記フィードバック則とに基づいて、前記ロボットアームの動作を生成する動作生成部と、
 前記動作生成部に基づいて、前記ロボットアームの前記動作を制御する制御部とを備えるロボットアームの制御装置を提供する。
 前記第1態様によれば、刺激が発生した時点から反応時間が経過した時点の人の操作のフィードバック則を生成することから、人の意図通りのフィードバック則を生成できる。また、反応時間内に生じる不安定動作を防ぐことができ、安全性を向上させることができる。
 本発明の第2態様によれば、前記行動変化点検出部は、前記情報変化点から前記反応時間が経過した時点以降の時間に前記行動変化点が検出されないと判定した場合、前記反応時間が経過した時点以前の時間において前記情報変化点までの時間を探索し、初めに検出された時点を前記行動変化点として検出する第1の態様に記載のロボットアームの制御装置を提供する。
 前記第2態様によれば、例えば人の反応時間が早い場合(例えば、熟練度が高い場合又は集中力が高い場合など)においても、人の行動の変化を正確に表すことができ、行動変化点を検出でき、人の技能をロボットアームに移し込むことができる。その結果、環境が変化した場合においても人の場合と同様に作業を行うことができる。
 本発明の第3態様によれば、前記情報変化点検出部で検出された前記情報変化点と前記行動変化点検出部で検出された前記行動変化点との時間差を実反応時間情報として検出する実反応時間情報検出部を備え、
 前記動作生成部は、前記人が前記ロボットアームを操作する際に前記動作情報取得部で取得した1つ以上の前記動作情報を、前記ロボットアームの動作を制御する際に前記情報変化点検出部で情報変化点が検出された場合は、前記フィードバック則生成部で生成された前記フィードバック則に従い修正する第2の態様に記載のロボットアームの制御装置を提供する。
 前記第3態様によれば、実反応時間情報における動作を修正(例えば削除)するか、又は、しないかの選択に基づき、対象となる作業に応じたフィードバック則を、動作生成部での動作情報を基に制御部で適用することができる。また、反応時間内に生じる作業中の人の不安定動作を修正(例えば削除)することができ、人の意図した動作を再生することができる。
 本発明の第4態様によれば、前記既定反応時間情報を測定する既定反応時間情報測定部をさらに備え、
 前記ロボットアームの制御装置で制御する前記ロボットアームの動作は組立作業であり、
 前記ロボットアームで組立作業を実験として予め行い、前記人が前記ロボットアームを操作する際に前記環境情報を受けてから前記人が前記ロボットアームの操作を行うまでの既定の時間情報である前記既定反応時間情報を前記既定反応時間情報測定部で測定して、前記組立作業の教示に使用する第3の態様に記載のロボットアームの制御装置を提供する。
 前記第4態様によれば、予め既定反応時間情報を既定反応時間情報測定部で測定することによって、人、又は、対象作業、又は、環境情報などによる反応時間の差異に対応することができる。その結果、行動変化点検出部で行動変化点を正確に求めることができ、人、又は、対象作業、又は、環境情報などが変わった場合においても、正確に作業を行うことができる。
 本発明の第5態様によれば、前記動作生成部は、1つ以上の前記動作情報と、前記情報変化点と、前記行動変化点と、前記フィードバック則とに基づいて、最も実反応時間情報が短い前記ロボットアームの動作を生成する第3の態様に記載のロボットアームの制御装置を提供する。
 前記第5態様によれば、前記動作生成部により前記最も実反応時間情報が短い前記ロボットアームの動作を生成することができるため、教示データが複数ある場合においても、最も良い教示データ(言い換えれば、実反応時間情報が最も短い教示データ)を動作生成部で選択して再生することができ、効率の良い作業を行うことができる。
 本発明の第6態様によれば、前記行動変化点検出部は、前記動作情報が前記行動変化点として検出された場合、前記行動変化点から予備動作検出用閾値の時間を経過する間に前記動作情報が変化する時点が前記行動変化点も含めて2箇所あり、かつ、前記2箇所のうちの1箇所目の時点と2箇所目の時点との前記動作情報の大きさが同じ大きさのとき、前記2箇所目の時点以降の時間に前記行動変化点を探索し、
 前記動作生成部は、前記1箇所目の時点と前記2箇所目の時点との間の時間の前記動作情報を、前記1箇所目の時点と前記2箇所目の時点の前記動作情報の大きさと同じ大きさの動作情報に修正する第3の態様に記載のロボットアームの制御装置を提供する。
 前記第6態様によれば、前記1箇所目の時点と前記2箇所目の時点との間の時間の前記動作情報(予備動作情報)を行動変化点検出部で検出して修正することによって、人の意図しない教示データを修正することができる。よって、正確な動作情報を作成することができ、環境変動が大きい場合においても、正確な作業が可能となる。また、予備動作をそのまま再生すると急激に移動するので、対象物の破損などの原因となる。このような場合、人の選択動作に基づき動作生成部によって予備動作情報を削除することによって、対象物の破損などを防ぐことができる。
 本発明の第7態様によれば、前記情報変化点検出部には、1つの前記行動変化点に対して同じ時点に前記情報変化点となる前記環境情報が複数ある場合、前記情報変化点として、前記力情報があれば前記力情報を使用し、前記力情報がなければ前記音量情報を使用し、前記音量情報がなければ前記位置情報を使用する第3の態様に記載のロボットアームの制御装置を提供する。
 前記第7態様によれば、情報変化点として複数の環境情報がある場合においても、前記のように判断することによって人が判断している環境情報を選択し、情報変化点として情報変化点検出部で検出することができる。よって、人の技能を正確に抽出することができ、ロボットによって正確な作業を行うことができる。
 本発明の第8態様によれば、前記情報変化点検出部は、前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報の変位が情報変化点検出用閾値を上回る時点を情報変化点として検出し、
 前記行動変化点検出部は、前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報の変位が、行動変化点検出用閾値を上回る時点を行動変化点として検出すること第2の態様に記載のロボットアームの制御装置を提供する。
 本発明の第9態様によれば、前記情報変化点検出部及び前記行動変化点検出部は、1つ以上の前記動作情報と前記環境情報とをそれぞれ平滑化し、平滑化した情報と平滑化前の元の情報との差をそれぞれ求め、平滑化求めた差が変化点検出用閾値を上回る時点を変化点として検出する第2の態様に記載のロボットアームの制御装置を提供する。
 前記第9態様によれば、情報変化点又は行動変化点を情報変化点検出部又は行動変化点検出部で検出する際に平滑化した情報を用いて求めることによって、ノイズの影響を軽減でき、正確に変化点を検出することができる。その結果、人の技能を正確に抽出することができ、ロボットにより正確に作業を行うことができる。
 本発明の第10態様によれば、前記動作生成部において、
 前記実反応時間情報として検出された時間における、前記ロボットアームの動作を削除するように修正する第3の態様に記載のロボットアームの制御装置を提供する。
 前記第10態様によれば、実反応時間情報における動作を削除する場合は、人の反応時間の動作を削除することができ、不安定動作を削除することができる。
 本発明の第11態様によれば、前記動作生成部において、
 前記実反応時間情報として検出された時間における、前記ロボットアームの動作について、前記情報変化点での動作と前記行動変化点での動作とを基に補間するように修正する第3の態様に記載のロボットアームの制御装置を提供する。
 本発明の第12態様によれば、前記動作生成部において、
 前記実反応時間情報として検出された時間における、前記ロボットアームの動作について、
 前記情報変化点での情報と前記行動変化点での情報との差の絶対値が、動作修正切替用閾値以上のときは前記ロボットアームの動作を補間するように修正し、前記動作修正切替用閾値を下回るときは前記ロボットアームの動作を削除するように修正する第10又は11の態様に記載のロボットアームの制御装置を提供する。
 本発明の第13態様によれば、前記ロボットアームと、
 前記ロボットアームを制御する第1~12のいずれか1つの態様に記載の前記ロボットアームの制御装置とを備えるロボットを提供する。
 前記第13態様によれば、刺激が発生した時点から反応時間が経過した時点の人の操作のフィードバック則を生成することから、人の意図通りのフィードバック則を生成できる。また、反応時間内に生じる不安定動作を防ぐことができ、安全性を向上させることができる。
 本発明の第14態様によれば、ロボットアームの動作を制御するロボットアームの制御方法であって、
 前記ロボットアームが動作する際の前記ロボットアームの位置と、姿勢と、速度との少なくとも1つ以上の動作情報を動作情報取得部で取得し、
 前記ロボットアームが動作する際に生じる周辺環境に関する力情報と、音量情報と、位置情報との少なくとも1つ以上の情報である環境情報を環境情報取得部で取得し、
 人が前記ロボットアームを操作する際に前記環境情報を受けてから前記人が前記ロボットアームの操作を行うまでの既定の時間情報である既定反応時間情報を既定反応時間情報取得部で取得し、
 前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報が変化する時点を情報変化点として情報変化点検出部で検出し、
 前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報の変位が変化する時点を、前記情報変化点から前記既定反応時間が経過した時点以降の時間を探索し、初めに検出された時点を行動変化点として行動変化点検出部で検出し、
 前記行動変化点以降の時間の前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報をフィードバック則としてフィードバック則生成部で生成し、
 1つ以上の前記動作情報と、前記情報変化点と、前記行動変化点と、前記フィードバック則とに基づいて、前記ロボットアームの動作を動作生成部で生成し、
 前記動作生成部に基づいて、前記ロボットアームの前記動作を制御部で制御することを特徴とするロボットアームの制御方法を提供する。
 前記第14態様によれば、刺激が発生した時点から反応時間が経過した時点の人の操作のフィードバック則を生成することから、人の意図通りのフィードバック則を生成できる。また、反応時間内に生じる不安定動作を防ぐことができ、安全性を向上させることができる。
 本発明の第15態様によれば、ロボットアームの動作を制御する前記ロボットアームの制御プログラムであって、
 前記ロボットアームが動作する際の前記ロボットアームの位置と、姿勢と、速度との少なくとも1つ以上の動作情報を動作情報取得部で取得するステップと、
 前記ロボットアームが動作する際に生じる周辺環境に関する力情報と、音量情報と、位置情報との少なくとも1つ以上の情報である環境情報を環境情報取得部で取得するステップと、
 人が前記ロボットアームを操作する際に前記環境情報を受けてから前記人が前記ロボットアームの操作を行うまでの既定の時間情報である既定反応時間情報を既定反応時間情報取得部で取得するステップと、
 前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報が変化する時点を情報変化点として情報変化点検出部で検出するステップと、
 前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報が変化する時点を、前記情報変化点から前記既定反応時間が経過した時点以降の時間を探索し、初めに検出された時点を行動変化点として行動変化点検出部で検出するステップと、
 前記行動変化点以降の時間の前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報をフィードバック則としてフィードバック則生成部で生成するステップと、
 1つ以上の前記動作情報と、前記情報変化点と、前記行動変化点と、前記フィードバック則とに基づいて、前記ロボットアームの動作を動作生成部で生成するステップと、
 前記動作生成部に基づいて、前記ロボットアームの前記動作を制御部で制御するステップとをコンピュータに実行させるための、ロボットアームの制御プログラムを提供する。
 前記第15態様によれば、刺激が発生した時点から反応時間が経過した時点の人の操作のフィードバック則を生成することから、人の意図通りのフィードバック則を生成できる。また、反応時間内に生じる不安定動作を防ぐことができ、安全性を向上させることができる。
 本発明の第16態様によれば、ロボットアームの動作を制御する集積電子回路であって、
 前記ロボットアームが動作する際の前記ロボットアームの位置と、姿勢と、速度との少なくとも1つ以上の動作情報を動作情報取得部で取得し、
 前記ロボットアームが動作する際に生じる周辺環境に関する力情報と、音量情報と、位置情報との少なくとも1つ以上の情報である環境情報を環境情報取得部で取得し、
 人が前記ロボットアームを操作する際に前記環境情報を受けてから前記人が前記ロボットアームの操作を行うまでの既定の時間情報である既定反応時間情報を既定反応時間情報取得部で取得し、
 前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報が変化する時点を情報変化点として情報変化点検出部で検出し、
 前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報の変位が変化する時点を、前記情報変化点から前記既定反応時間が経過した時点以降の時間を探索し、初めに検出された時点を行動変化点として行動変化点検出部で検出し、
 前記行動変化点以降の時間の前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報をフィードバック則としてフィードバック則生成部で生成し、
 1つ以上の前記動作情報と、前記情報変化点と、前記行動変化点と、前記フィードバック則とに基づいて、前記ロボットアームの動作を動作生成部で生成し、
 前記動作生成部に基づいて、前記ロボットアームの前記動作を制御部で制御することを特徴とする集積電子回路を提供する。
 前記第16態様によれば、刺激が発生した時点から反応時間が経過した時点の人の操作のフィードバック則を生成することから、人の意図通りのフィードバック則を生成できる。また、反応時間内に生じる不安定動作を防ぐことができ、安全性を向上させることができる。
 以下、本発明の実施の形態について、図面を参照しながら説明する。
 (第1実施形態)
 図1Aは、本発明の第1実施形態における、ロボット101のブロック図を示す。図1Aにおいて、ロボット101は、ロボットアーム102と、ロボットアーム102の制御装置103とで構成されている。
 <ロボットアームの制御装置の説明>
 ロボットアーム102の制御装置103は、制御装置本体部104と、周辺装置105とで構成されている。
 <制御装置本体部の説明>
 制御装置本体部104は、動作情報取得部106と、環境情報取得部107と、既定反応時間情報取得部108と、既定反応時間情報記憶部108Aと、情報変化点検出部109と、行動変化点検出部110と、フィードバック則生成部111と、動作生成部112と、動作記憶部112Aと、モード切替部113と、制御部114とで構成されている。
 周辺装置105は、入出力IF(インターフェース)115と、モータドライバ116とで構成されている。それぞれの機能について、以下に説明する。
 動作情報取得部106は、入出力IF115からロボットアーム102の位置情報及び姿勢情報と、入出力IF115に内蔵されたタイマーからの時間情報とが入力される。また、動作情報取得部106は、入出力IF111から取得した位置情報及び姿勢情報を時間情報で微分することによって、速度情報を取得する。図2は、動作情報取得部106で取得する時間情報と、位置情報と、姿勢情報と、速度情報と、角速度情報とを示す。
 動作情報取得部106は、取得したロボットアーム102の位置情報と、姿勢情報と、速度情報と、時間情報とを、情報変化点検出部109と、行動変化点検出部110と、フィードバック則生成部111と、動作生成部112とに出力する。
 環境情報取得部107は、ロボットアーム102が動作する際に生じる周辺環境に関する力情報、音量情報、及び、位置情報の少なくとも1つ以上の情報である環境情報を取得する。具体的には、環境情報取得部107には、後述する力センサ716(図7参照)の測定値と、後述する集音装置717(図7参照)の測定値と、後述する画像撮像装置718(図7参照)の撮像画像とのうちで少なくとも1つ以上の情報が、入出力IF115から入力される。また、環境情報取得部107には、入出力IF115に内蔵されたタイマーからの時間情報が入力される。環境情報取得部107では、入力された力センサ716の測定値を力情報とし、集音装置717の測定値を音量情報とし、画像撮像装置718の撮像画像情報から対象物の位置情報を取得して対象物位置情報とする。力情報は、ロボットアーム102に取り付けられた力センサ716の値であり、ロボットアーム102が対象物と接触した際に生じる反力の大きさを示す。音量情報は、ロボットアーム102周辺に取り付けられた集音装置717の値であり、ロボットアーム102が移動し、接触などが生じる際に発生する音量を示す。対象物位置情報は、ロボットアーム102の周辺に取り付けられた画像撮像装置718の撮像画像情報から求めた対象物の位置情報であり、ロボットアーム102と対象物との距離を示す(詳細については後述する)。図3は、環境情報取得部107で取得する時間情報と、力情報と、音量情報と、対象物位置情報とを示す。
 環境情報取得部107は、力情報と、音量情報と、対象物位置情報とのうちで少なくとも1つ以上の環境情報と、時間情報とを、情報変化点検出部109と、行動変化点検出部110と、フィードバック則生成部111と、動作生成部112とに出力する。
 既定反応時間情報取得部108は、入出力IF115から入力された情報に基づいて既定反応時間情報が求められて既定反応時間情報記憶部108Aに記憶し、入力された既定反応時間情報を行動変化点検出部110に出力する。
 既定反応時間情報とは、人が感覚刺激の提示から行動による反応が生じるまでに経過した時間の情報のことであり、入出力IF115で入力することができ、ここでは例えば200msと設定されている。具体的には、人が入出力IF115の一例としてのキーボード又はマウス又はタッチパネル又は音声入力装置などを用いて、作業経験年数と対象作業とを入力し、入力された作業経験年数と対象作業とに基づき、既定反応時間情報取得部108で既定反応時間情報が決定される。図4は、既定反応時間情報取得部108で既定反応時間情報を決定する際に利用するデータ図の一例を示す。また、既定反応時間情報、及び、既定反応時間情報を決定する際の情報は、それぞれ、既定反応時間情報取得部108により、既定反応時間情報記憶部108Aに記憶する。
 情報変化点検出部109は、動作情報取得部106から入力された位置情報と、姿勢情報と、速度情報のうちの少なくとも1つの情報と、時間情報と、環境情報取得部107から入力された環境情報との3つの情報のうちの少なくとも1つの情報とに基づいて、情報変化点を検出する。情報変化点検出部109は、検出した情報変化点と、前記情報変化点に対応した時間情報とを、行動変化点検出部110と、フィードバック則生成部111と、動作生成部112とに出力する。
 この情報変化点の検出方法について説明する。
 まず、1つの環境情報を使用する場合について説明する。環境情報取得部107から情報変化点検出部109に入力された環境情報の変位を情報変化点検出部109で求め、情報変化点検出部109において、求めた変位が第1の閾値(情報変化点検出用閾値)を上回る箇所を情報変化点とする。ただし、「閾値を上回る」とは、閾値と符号が同じであり、かつ絶対値が閾値より大きいことを意味する。以降、本明細書では、同様の意味で用いる。また、第1の閾値とは、入出力IF115を用いて閾値の値を入力することができ、それぞれの環境情報により異なり、例えば、力情報では3N、音量情報では10dB、対象物位置情報では10mmとする。
 また、情報変化点検出部109において、第1の閾値を上回る箇所が検出されない場合は、情報変化点を検出しない。
 次に、1つの動作情報と1つの環境情報を使用する場合について説明する。環境情報取得部107から情報変化点検出部109に入力された環境情報の変位と動作情報取得部106から入力された動作情報の変位とを情報変化点検出部109で求め、情報変化点検出部109において、求めた変位が共に第1の閾値(情報変化点検出用閾値)を上回る箇所を情報変化点とする。第1の閾値とは、前記で説明した環境情報に関する閾値に加え、動作情報に関する閾値も含まれる。例えば、位置情報では10mm、姿勢情報では0.2rad、速度情報では0.1mm/msとする。また、複数の情報を使用する場合においても、同様に使用する情報がすべて第1の閾値を上回る箇所を情報変化点とする。
 図5は、時間情報と情報変化点とのデータ図を示す。
 行動変化点検出部110には、動作情報取得部106から位置情報と、姿勢情報と、速度情報との少なくとも1つの動作情報と、時間情報とが入力され、環境情報取得部107から環境情報と時間情報とが入力され、既定反応時間取得部108から既定反応時間情報が入力され、情報変化点検出部109から情報変化点とその点に対応した時間情報とが入力される。行動変化点検出部110は、入力された情報に基づいて、行動変化点を検出する。検出した行動変化点とその点に対応した時間情報とをフィードバック則生成部111に出力する。
 行動変化点検出部110での行動変化点の検出方法について説明する。行動変化点検出部110は、動作情報取得部106から入力された動作情報と環境情報取得部107から入力された環境情報とにおいて、情報変化点から既定反応時間が経過した箇所以降の時間に第2の閾値(行動変化点検出用閾値)を上回る箇所を探索し、初めに第2の閾値を上回る箇所を行動変化点として検出する。第2の閾値とは、入出力IF115により入力することができ、各情報により異なり、例えば、力情報では0.5N、音量情報では1dB、対象物位置情報では1mm、位置情報では1mm、姿勢情報では0.02rad、速度情報では0.01mm/msとする。また、行動変化点検出部110において、第2の閾値を上回る箇所が検出されない場合は、行動変化点を検出しない。行動変化点検出部110において、第2の閾値を上回る箇所が複数の情報で検出される場合は、行動変化点を複数検出する。
 図6は、時間情報と行動変化点のデータ図を示す。
 フィードバック則生成部111は、動作情報取得部106から位置情報と、姿勢情報と、速度情報の少なくとも1つの動作情報と、時間情報とが入力され、環境情報取得部107から環境情報と時間情報とが入力され、情報変化点検出部109から情報変化点とその点に対応した時間情報とが入力され、行動変化点検出部110から行動変化点とその点に対応した時間情報とが入力される。フィードバック則生成部111は、入力された情報に基づいて、フィードバック則を生成する。フィードバック則生成部111は、生成したフィードバック則と時間情報とを動作生成部112に出力する。
 フィードバック則生成部111でのフィードバック則の生成方法について説明する。フィードバック則生成部111においては、行動変化点検出部110から入力された行動変化点以降の時間において、行動変化点が検出された情報(動作情報又は環境情報)を近似曲線で近似する。近似曲線の導出方法は、行動変化点以降の時間に情報変化点があるとフィードバック則生成部111で判定した場合は、フィードバック則生成部111で、行動変化点から次の情報変化点までの情報について最小二乗法を用いて近似曲線で近似する。行動変化点以降の時間に情報変化点がないとフィードバック則生成部111で判定した場合は、フィードバック則生成部111で、行動変化点以降の時間(教示データの終了時点まで)について最小二乗法を用いて近似曲線で近似する。なお、行動変化点が検出された情報をそのまま目標値とする方法又は定数を目標値とする方法のように、近似曲線で近似しない方法により、フィードバック則生成部111でフィードバック則を生成することも可能である。
 動作生成部112は、動作情報取得部106から位置情報と、姿勢情報と、速度情報の少なくとも1つの動作情報と、時間情報とが入力され、環境情報取得部107から環境情報と時間情報とが入力され、情報変化点検出部109から情報変化点とその点に対応した時間情報とが入力される。動作生成部112は、入力された情報に基づいて、動作情報を生成する。また、動作生成部112は、フィードバック則生成部111からフィードバック則と時間情報が入力される。動作生成部112は、生成した動作情報と時間情報とを制御部114に出力する。動作生成部112は、生成した動作情報と、フィードバック則と、時間情報とを動作記憶部112Aに記憶する。
 動作生成部112での動作情報の生成方法について説明する。動作生成部112においては、動作情報取得部から入力された動作情報を動作情報として作成する。ただし、ロボットアーム102の動作中に情報変化点検出部109から情報変化点が入力された場合、動作情報と環境情報とを基にフィードバック則を適用させた動作を生成する。フィードバック則に適用させた動作とは、入力される近似曲線に沿うように動作情報を変化させることである。
 モード切替部113は、入出力IF115から入力されるモード情報を制御部114に出力する。モード情報とは、入出力IF115で入力することができ、「教示モード」又は「再生モード」又は「停止モード」のいずれかの情報が含まれている。
 「教示モード」とは、人がロボットアーム102に対して動作を教えるモードであり、人の操作によりロボットアーム102を動かす。「再生モード」とは、「教示モード」において人から教えられた動作をロボットアーム102が自動的に再生するモードであり、人の操作によらず自動的にロボットアーム102が動く。「停止モード」とは、ロボットアーム102が動かないモードであり、ロボットアーム102は移動を行わず停止している。
 「教示モード」のブロック図を図1Bに示し、「再生モード」のブロック図を図1Cに示す。ここで、破線で表された要素は使用しない要素(例えば、図1Bの制御部114と、図1Cの既定反応時間情報取得部108と既定反応時間情報記憶部108Aと行動変化点検出部110とフィードバック則生成部111)である。「教示モード」においては、教示して得られたデータ(動作情報、環境情報)を基に情報変化点を情報変化点検出部109で検出するとともに行動変化点を行動変化点検出部110で検出し、フィードバック則生成部111でフィードバック則を生成するとともに動作生成部112で再生動作のための動作情報を生成する。そのため、制御部以外の要素を使用する。「再生モード」においては、教示時に生成された動作を制御部114で再生する。情報変化点が情報変化点検出部109で検出された場合には、動作生成部112での動作情報を基に制御部114で、フィードバック則が適用される。
 「教示モード」及び「再生モード」の開始時点及び終了時点を制御部114に出力する。これらの開始時点及び終了時点の出力は、人の操作による入出力IF115のボタン(例えば、開始ボタン、終了ボタン)の押下により行う。「教示モード」では、人の操作によってロボットアーム102が移動する。人の操作によってロボットアーム102が移動しているとき、その開始から終了までの情報を教示データとする。「再生モード」では、ロボットアーム102が教示データの軌跡を追従するように自動で制御部114により移動する。開始から終了までの時間は自動で移動するが、その他の時間は停止している。「停止モード」では、現在の位置及び姿勢に停止し、ロボットアーム102は移動しない。
 制御部114は、動作生成部112から動作情報と時間情報が入力される。制御部114においては、入力された動作情報を入出力IF115に内蔵されたタイマーを利用して、ある一定時間毎(例えば、1ms毎)に、入出力IF115に出力する。また、モード切替部113からモード情報が制御部114に入力される。モード切替部113から入力されたモード情報が「再生モード」の場合は、制御部114は、動作生成部112からの動作情報を入出力IF115に出力する。一方、モード切替部113から入力されたモード情報が「教示モード」の場合は、制御部114は、動作生成部112からの動作情報を入出力IF115に出力せず、ロボットアーム102は自動的には動かず、人の操作による動作を行う。また、モード切替部113から入力されたモード情報が「停止モード」の場合は、制御部114は、動作生成部112からの動作情報を入出力IF115に出力せず、同じ位置及び姿勢に停止する動作情報を入出力IF115に出力する。
 <周辺装置の説明>
 入出力IF115は、制御部114から入力された動作情報をモータドライバ116に出力する。また、入出力IF115は、力センサ716の測定値と、集音装置717の測定値と、画像撮像装置718の撮像画像と、入出力IF115に内蔵されたタイマーからの時間情報とを環境情報取得部に出力する。エンコーダ715から入力された値からロボットアーム102の位置情報及び姿勢情報をエンコーダ615内部の演算部で求め(詳細は後で述べる)、位置情報及び姿勢情報と入出力IF115に内蔵されたタイマーからの時間情報とを、制御部114から動作情報取得部106に出力する。人が入出力IF111を経て制御部114に入力した既定反応時間情報(例えば、200ms)を、制御部114から既定反応時間取得部108に出力する。また、人が入出力IF111を経て制御部114に入力したモード情報を、制御部114からモード切替部113に出力する。また、入出力IF115は、図1Dに示すように、入力部115Aと出力部115Bとによって構成される。入力部115Aは、入力IFとなっており、キーボード又はマウス又はタッチパネル又は音声入力などにより人が項目を選択する場合、又は、キーボード又はマウス又はタッチパネル又は音声入力などにより人が数字を入力する場合などに用いられる。出力部115Bは、出力IFとなっており、取得した情報などを外部に出力する場合又はディスプレイなどに表示する場合などに用いられる。
 モータドライバ116は、入出力IF115から取得した動作情報を基に、ロボットアーム102を制御するために、ロボットアーム102のそれぞれのモータ714(図7参照)への指令値をロボットアーム102に出力する。
 <ロボットアームの説明>
 ロボットアーム102において、入出力IF115に内蔵されたタイマーを利用して、ある一定時間毎(例えば、1ms毎)に、ロボットアーム102の位置情報をロボットアーム102の各エンコーダ715を用いてエンコーダ615内部の演算部で求めて入出力IF115に出力する。
また、ロボットアーム102は、モータドライバ116からの指令値に従って制御される。
 これらの詳細については、以下に、図7を用いて説明する。ロボットアーム102は、一例として、合計6個の軸周りに回転可能として6自由度の多リンクマニピュレータを構成している。
 図7に示すように、ロボットアーム102は、一例として、多関節ロボットアームであって、具体的には、6自由度の多リンクのマニピュレータである。
 ロボットアーム102は、ハンド701と、ハンド701が取り付けられている手首部702を先端703aに有する前腕リンク703と、前腕リンク703の基端703bに回転可能に先端704aが連結される上腕リンク704と、上腕リンク704の基端704bが回転可能に連結支持される台部705とを備えている。台部705は、一定位置に固定されているが、図示しないレールに移動可能に連結されていても良い。
 手首部702は、第4関節部709と、第5関節部710と、第6関節部711との3つの互いに直交する回転軸を有しており、前腕リンク703に対するハンド701の相対的な姿勢(向き)を変化させることができる。すなわち、図7において、第4関節部709は、手首部702に対するハンド701の横軸周りの相対的な姿勢を変化させることができる。第5関節部710は、手首部702に対するハンド701の、第4関節部709の横軸とは直交する縦軸周りの相対的な姿勢を変化させることができる。第6関節部711は、手首部702に対するハンド701の、第4関節部709の横軸及び第5関節部710の縦軸とそれぞれ直交する横軸周りの相対的な姿勢を変化させることができる。前腕リンク703の他端703bは、上腕リンク704の先端704aに対して第3関節部708周りに、すなわち、第4関節部709の横軸と平行な横軸周りに回転可能とする。上腕リンク704の他端は、台部705に対して第2関節部707周りに、すなわち、第4関節部709の横軸と平行な横軸周りに回転可能とする。さらに、台部705の上側可動部705aは、台部705の下側固定部705bに対して第1関節部706周りに、すなわち、第5関節部710の縦軸と平行な縦軸周りに回転可能としている。
 この結果、ロボットアーム102は、合計6個の軸周りに回転可能として前記6自由度の多リンクマニピュレータを構成している。
 ロボットアーム102の各軸の回転部分を構成する各関節部には、関節部駆動用のモータ714のような回転駆動装置と、モータ714の回転軸の回転位相角(すなわち関節角)を検出して位置情報と姿勢情報をエンコーダ715内部の演算部で算出して出力するエンコーダ715(実際には、ロボットアーム102の各関節部の内部に配設されている。)とを備えている。モータ714(実際には、ロボットアーム102の各関節部の内部に配設されている。)は、各関節部を構成する一対の部材(例えば、回動側部材と、該回動側部材を支持する支持側部材)のうちの一方の部材に備えられる、モータドライバ116により駆動制御される。各関節部の一方の部材に備えられたモータ714の回転軸が、各関節部の他方の部材に連結されて、前記回転軸を正逆回転させることにより、他方の部材を一方の部材に対して各軸周りに回転可能とする。
 また、712は、台部705の下側固定部705bに対して相対的な位置関係が固定された絶対座標系であり、713は、ハンド701に対して相対的な位置関係が固定された手先座標系である。絶対座標系712から見た手先座標系713の原点位置O(x,y,z)をロボットアーム102の手先位置とするとともに、絶対座標系712から見た手先座標系713の姿勢をロール角とピッチ角とヨー角とで表現した(φ,θ,ψ)をロボットアーム102の手先姿勢(姿勢情報)とし、手先位置及び姿勢ベクトルをベクトルr=[x,y,z,φ,θ,ψ]と定義する。よって、一例として、絶対座標系712のz軸に対して第1関節部706の縦軸が平行であり、絶対座標系712のx軸に対して第2関節部707の横軸が平行に位置可能とする。また、別の例として、手先座標系713のx軸に対して第4関節部709の横軸が平行に位置可能であり、手先座標系713のy軸に対して第6関節部711の横軸が平行に位置可能であり、手先座標系713のz軸に対して第5関節部710の縦軸が平行に位置可能とする。
 なお、手先座標系713のx軸に対しての回転角をヨー角ψとし、y軸に対しての回転角をピッチ角θとし、z軸に対しての回転角をロール角φとする。
 なお、図7では、ロボットアーム102が動作する際に生じる環境情報をそれぞれ取得する、力センサ716と、集音装置717と、画像撮像装置718とを備えるように構成しているが、環境情報を取得するためには、力センサ616と、集音装置617と、画像撮像装置618とのうちの少なくとも1つ以上の装置を備えて構成すれば良い。力センサ616は、ロボットアーム102のハンド701が取り付けられている、前腕リンク703の手首部702に取り付けられて、ハンド701に作用する力を検出可能とする。集音装置617は、コネクタ1003の先端の近傍に配置して、フレキシブル基板1002とコネクタ1003とが接触するときに生じるカチッという音を集音可能とする。画像撮像装置618は、ロボットアーム102の周辺(例えば、上方)に取り付けて、ロボットアーム102のハンド701とコネクタ1003(被対象物)とを含む撮像画像を取得可能とする。すなわち、画像撮像装置618は、ロボットアーム102のハンド701の先端からのコネクタ1003(被対象物)までの長さを求めることが可能なデータを取得可能とする。
 次に、人の手1001がロボットアーム102を移動操作して動作を生成する教示モードと、ロボットアーム102が動作を再生する再生モードの手順を説明する。
 第1実施形態の例は、フレキシブル基板1002の挿入作業を説明する。
 本例のフレキシブル基板1002は、幅5.5mm、厚さ0.3mmであり、コネクタ1003に対して10本の接続ピンを有する。コネクタ1003の挿入口のサイズは、幅5.57mm、厚さ0.35mmである。
 図8Aは、フレキシブル基板1002をコネクタ1003の挿入方向に対して下から見た図である。図8Bは、フレキシブル基板1002をコネクタ1003の挿入方向に対して横から見た図である。図9Aは、コネクタ1003を挿入方向に対して正面から見た図である。図9Bは、コネクタ1003を挿入方向に対して横から見た図である。
 フレキシブル基板1002は、薄く柔軟性の高いフレキシブル基板であるため、コネクタ1003への挿入作業は非常に細かく難しい作業となる。
 ここで、環境情報として、(i)力情報を使用する例、(ii)音量情報を使用する例、(iii)対象物位置情報を使用する例の3例を以下に説明する。
 (i)力情報を使用する例
 <教示モードの説明>
 力情報を使用する例について説明する。
 人は、手1001を用いて、フレキシブル基板をハンド701に把持したロボットアーム102を移動させて、治具などに固定されたコネクタに、前記フレキシブル基板を挿入するロボットアーム102の動作を教示する。
 図10A~図10Jのうちは、図10A→図10C→図10E→図10G→図10Iの順に人の手1001によりロボットアーム102に動作を教示していく手順を示し、対応するフレキシブル基板1002とコネクタ1003との状態を図10B→図10D→図10F→図10H→図10Jの順に示す。ここでは、モード切替部113は、「教示モード」を選択している。教示の際に、図10Aの時点で、人によりIF115の開始ボタンが押下され、図10Iの時点で、人によりIF115の終了ボタンが押下される。
 図10Aは、人の手1001がロボットアーム102を把持し、人がロボットアーム102に対して教示を開始した時点である。この時点では、ロボットアーム102のハンド701に把持したフレキシブル基板1002とコネクタ1003とが接触していないので、人の手1001には、フレキシブル基板1002とコネクタ1003との接触時の反力は伝わらない。
 次いで、図10Cは、フレキシブル基板1002の先端とコネクタ1003の入り口とが接触した時点である。この時点から反応時間分経過すると、人の手1001に接触時の反力が伝わり、行動を変化させる。人は、手1001で感じる反力の大きさを基に、フレキシブル基板1002のたわみ具合又は位置を推測しながら、フレキシブル基板1002に加える力又はフレキシブル基板1002の挿入方向を変化させて、フレキシブル基板1002をコネクタ1003に対して挿入する。そのときの反力の大きさを力センサ716で検出する。
 次いで、図10Eでは、フレキシブル基板1002をコネクタ1003に押し込み、接触後の挿入作業を行っている時点を示す。この時点では、人の手1001に、フレキシブル基板1002をコネクタ1003に挿入する際の反力が伝わる。このときの反力を人の手1001が感じることによって、コネクタ1003へのフレキシブル基板1002の挿入具合を人が調整する。
 次いで、図10Gは、フレキシブル基板1002の先端がコネクタ1003の奥に接触し、挿入作業が完了した時点を示す。この時点から反応時間分が経過すると、人の手1001に、フレキシブル基板1002の先端がコネクタ1003の奥に接触した際の反力が伝わり、行動を変化させる。このときの反力を人の手1001が感じることによって、コネクタ1003へのフレキシブル基板1002の挿入の完了を人が確認する。
 次いで、図10Iは、教示動作を終了した時点である。図10Gの時点で、挿入作業が完了の反力を人の手1001が感じてから教示動作終了時点までは、コネクタ1003に対してフレキシブル基板1002を押し込まず、教示動作を終了する。
 以上のようにして、フレキシブル基板1002のコネクタ1003への挿入作業を教示する。
 次に、図11Aを用いて教示動作時のデータから、情報変化点及び行動変化点を検出し、フィードバック則を生成する手順を示す。
 図11Aは、図10A~図10Jの教示動作における、力センサ716の値とロボットアーム102の位置情報とを示す。ロボットアーム102の位置情報は、動作情報取得部106で取得した位置情報を示す。第一の実線のグラフ310は、力センサ716で検出される値を示す。第二の実線のグラフ311は、ロボットアーム102の位置を示す。図11Aの横軸は、教示動作開始時間(0ms)から教示動作終了時間までの教示動作時間(ms)を示す。図11Aの左縦軸は、ロボットアーム102の位置(mm)を示す。図11Aの右縦軸は、力センサ716で検出される値(N)を示す。図11Aのグラフの下に描かれている図は、教示動作時間における、コネクタ1003に対するフレキシブル基板1002の挿入状態(図10A、図10C、図10E、図10G、図10Iの状態)を示す。
 情報変化点検出部109は、力情報の変位が力情報の第1の閾値を上回る時点を検出する。第1実施形態では、力情報の第1の閾値を-0.5Nとする。図11A中の参照符号A、Dの時点の力情報が情報変化点として情報変化点検出部109で検出される。次に、行動変化点検出部110は、情報変化点の時点(図11A中の参照符号A、Dの時点)から既定反応時間が経過した時点(図11A中の参照符号B、Eの時点)以降に力情報の変位が力情報の第2の閾値を上回る時点を検出する。ここでは、力情報の第2の閾値を-0.2Nとし、図11A中の参照符号Cの時点の力情報が行動変化点として行動変化点検出部110で検出される。図11A中の参照符号Eの時点以降には、力情報の第2の閾値を上回る時点がないので行動変化点は行動変化点検出部110で検出されない。最後に、フィードバック則生成部111は、行動変化点(図11A中の参照符号Cの時点)から次の情報変化点(図11A中の参照符号Dの時点)までの力情報を近似曲線で表す。ここでは、傾き-0.1Nの近似曲線をフィードバック則生成部111で生成する。近似曲線の生成方法は、行動変化点から次の情報変化点までの力情報を、最小二乗法を用いて一次関数に近似することによってフィードバック則生成部111で求める。求めた近似曲線を図11A中の参照符号Fで示す。
 また、行動変化点の検出方法として、上述したように変位が閾値を上回る時点を検出する方法を採用している。その他の方法として、図11Bを用いて説明する。情報変化点から次の情報変化点までの区間を行動変化点検出部110で分割し(例えば、5分割)、行動変化点検出部110により、それぞれの区間の力情報を最小二乗法を用いて一次関数で近似する。隣り合う2つの一次関数の傾きを行動変化点検出部110で比較し、差が大きい時点を行動変化点検出部110で行動変化点とする。図11Bでは、情報変化点Aから次の情報変化点Fまでの区間を行動変化点検出部110で5分割し、行動変化点検出部110において、それぞれの区間を一次関数で近似する(G~K)。隣り合う一次関数の傾きを行動変化点検出部110で比較する(GとH、HとI、IとJ、JとK)。比較した差の大きさが最も大きい時点(IとJの境界)を行動変化点検出部110で行動変化点とする。
 以上のようにして、教示データから、情報変化点及び行動変化点を情報変化点検出部109及び行動変化点検出部110でそれぞれ検出し、フィードバック則をフィードバック則生成部111で生成する。
 <再生モードの説明>
 次に、図12A~図12J、図13を用いて、教示データを基にロボットアーム102を再生している手順を説明する。図12A→図12C→図12E→図12G→図12Iの順にロボットアーム102が再生していく手順を示している。そのときのフレキシブル基板1002とコネクタ1003の状態を、図12B→図12D→図12F→図12H→図12Jの順に示す。ここでは、モード切替部113において、「再生モード」が選択されている。図12Aの時点で、人によりIF115の開始ボタンが押下され、図12Iの時点で、人によりIF115の終了ボタンが押下される。
 図13は、図12A~図12Jの再生動作における、力センサ716の値とロボットアーム102の位置情報とを示す。ロボットアーム102の位置情報は、動作情報取得部106で取得した位置情報を示す。第一の実線のグラフ313は、力センサ716で検出される値を示し、第二の実線のグラフ314は、ロボットアーム102の位置を示す。図13の横軸は、再生動作開始時間(0ms)からから再生動作終了時間までの再生動作時間(ms)を示す。図13の左縦軸は、ロボットアーム102の位置(mm)を示す。図13の右縦軸は、力センサ716で検出される値(N)を示す。図13のグラフの下に描かれている図は、再生動作時間におけるフレキシブル基板1002のコネクタ1003に対する挿入状態(図12A、図12C、図12E、図12G、図12Iの状態)を示す。
 図12Aは、ロボットアーム102が再生動作を開始した時点である。この時点では、教示データの位置情報を再生しており、フレキシブル基板1002とコネクタ1003とが接触していない(図13参照)。
 次いで、図12Cは、フレキシブル基板1002の先端とコネクタ1003の入り口とが接触した時点である。この時点では、情報変化点検出部109において、力情報の変位が第1の閾値(-0.5N)を上回り、情報変化点として検出する(図13の参照符号Aの時点参照)。この時点から、動作生成部112での動作情報を基に制御部114で、フィードバック則を適用させる。
 次いで、図12Eは、フレキシブル基板1002をコネクタ1003に押し込み、挿入作業を行っている時点を示す。この時点では、動作生成部112での動作情報を基に制御部114で、フィードバック則を適用させ、力情報が傾き-0.1Nの近似曲線に追従するようにロボットアーム102の位置を、動作生成部112での動作情報を基に制御部114で調整する(図13参照)。
 次いで、図12Gは、フレキシブル基板1002の先端がコネクタ1003の奥に接触し、挿入作業が完了した時点を示す。この時点では、力センサ716の値がある閾値(再生動作終了条件用閾値)(ここでは、-5.0N)を上回ると動作生成部112で判定すると、動作生成部112で、ロボットアーム102を静止させるように設定しており、ロボットアーム102が静止する。(図13の参照符号Bの時点参照)。
 次いで、図12Iでは、再生動作を終了した時点である(図13参照)。
 以上のように、教示データを基にフィードバック則をフィードバック則生成部111で生成し、生成したフィードバック則を含みかつ動作生成部112で作成した動作情報を基に制御部114で再生することによって、環境の変動が生じた場合においても、教示動作と同様の動作が再生時に行うことができる。
 (ii)音量情報を使用する例
 次に、音量情報を使用する例について説明する。
 <教示モードの説明>
 集音装置717は、図14の参照符号Lに示すように集音装置717の先端からコネクタ1003の先端までの距離Lが例えば10.0cm以内の位置に、コネクタ1003を支持する治具1003Jに取り付ける。また、その際にフレキシブル基板1002とコネクタ1003とが接触するときに生じるカチッという音を集音装置717で集音する。なお、以下の図では、簡略化のため、治具1003Jを省略して図示する。
 図15A~図15Jを用いて、人の手1001がロボットアーム102を操作し、教示している手順を示す。図15A→図15C→図15E→図15G→図15Iの順に人の手1001がロボットアーム102に教示していく手順を示している。また、そのときのフレキシブル基板1002とコネクタ1003との状態を、図15B→図15D→図15F→図15H→図15Jの順に示す。ここでは、モード切替部113において、「教示モード」が選択されている。図15Aの時点で、人によりIF115の開始ボタンが押下され、図15Iの時点で、人によりIF115の終了ボタンが押下される。
 図15Aでは、人の手1001がロボットアーム102を把持し、人がロボットアーム102に対して教示を開始した時点である。この時点では、まだ、フレキシブル基板1002とコネクタ1003とが接触していないので、音量情報は非常に小さい。
 次いで、図15Cは、フレキシブル基板1002の先端とコネクタ1003の入り口とが接触した時点である。この時点では、接触の際に生じる音の影響で音量情報が大きくなる。
 次いで、図15Eでは、フレキシブル基板1002をコネクタ1003に押し込み、挿入作業を行っている時点を示す。この時点では、フレキシブル基板1002をコネクタ1003に押し込むにつれて、音量情報が徐々に大きくなる。
 次いで、図15Gでは、フレキシブル基板1002の先端がコネクタ1003の奥に接触し、挿入作業が完了した時点を示す。この時点では、フレキシブル基板1002の先端がコネクタ1003の奥に接触した際に生じる音の影響で音量情報が大きくなる。この時点から反応時間分が経過すると接触時の音を聞き取り、コネクタ1003へのフレキシブル基板1002の挿入の完了を人が確認する。
 次いで、図15Iでは、教示を終了した時点である。
 以上のようにしてフレキシブル基板1002のコネクタ1003への挿入作業を教示する。
 次に、図16を用いて教示データから、情報変化点及び行動変化点を検出し、フィードバック則を生成する手順を示す。
 図16は、図15A~図15Jの教示動作における、集音装置717で取得した音量情報を示す。図16において、横軸は、教示動作開始時間(0ms)から教示動作終了時間までの時間を示し、縦軸は、音量情報(dB)を示す。図16のグラフの下に描かれている図は、教示動作時間における、フレキシブル基板1002のコネクタ1003に対する挿入状態(図15A、図15C、図15E、図15G、図15Iの状態)を示す。
 情報変化点検出部109は、集音装置717で取得した音量情報の変位が第1の閾値を上回る時点を検出する。ここでは、例えば、第1の閾値を10dBとし、図16中の参照符号Aの時点の音量情報が情報変化点として情報変化点検出部109で検出される。次に、行動変化点検出部110は、前記情報変化点の時点(参照符号A)から既定反応時間が経過した時点(参照符号B)から後に、音量情報の変位が第2の閾値を上回る時点を検出する。ここでは、例えば、第2の閾値を5dBとし、図16中の参照符号Cの時点の音量情報が行動変化点として情報変化点検出部109で検出される。最後に、フィードバック則生成部111において行動変化点(図16中の参照符号Cの時点)以降の音量情報を近似曲線で表す。ここでは、例えば、傾き3dBの近似曲線をフィードバック則生成部111で生成する。近似曲線の生成方法は、行動変化点から次の情報変化点までの音量情報を、最小二乗法を用いて一次関数に近似することによってフィードバック則生成部111で求める。フィードバック則生成部111で求めた近似曲線を図16中の参照符号Dで示す。
 以上のようにして、教示データから、情報変化点及び行動変化点を情報変化点検出部109及び行動変化点検出部110でそれぞれ検出し、フィードバック則をフィードバック則生成部111で生成する。
 <再生モードの説明>
 次に、図17A~図17J、図18を用いて、教示データを基にロボットアーム102を再生している手順を説明する。図17A→図17C→図17E→図17G→図17Iの順にロボットアーム102が再生していく手順を示している。また、そのときのフレキシブル基板1002とコネクタ1003の状態を、図17B→図17D→図17F→図17H→図17Jの順に示す。ここでは、モード切替部113において、「再生モード」が選択されている。図17Aの時点で、人によりIF115の開始ボタンが押下され、図17Iの時点で、人によりIF115の終了ボタンが押下される。
 図18は、図17A~図17Jの再生動作における、集音装置717で取得した音量情報を示す。図18において、横軸は、再生動作開始時間(0ms)から再生動作終了時間までの時間を示し、縦軸は、音量情報(dB)を示す。図18のグラフの下に描かれている図は、フレキシブル基板1002のコネクタ1003に対する挿入状態(図17A、図17C、図17E、図17G、図17Iの状態)を示す。
 図17Aでは、ロボットアーム102が再生動作を開始した時点である。この時点では、教示データの位置情報を再生しており、まだフレキシブル基板1002とコネクタ1003とが接触していない(図18参照)。
 次いで、図17Cは、フレキシブル基板1002の先端とコネクタ1003の入り口とが接触した時点である。この時点では、情報変化点検出部109において、音量情報の変位が第1の閾値(10dB)を上回り、情報変化点として検出する(図18の参照符号Aの時点参照)。この時点から、動作生成部112での動作情報を基に制御部114で、フィードバック則を適用させる。
 次いで、図17Eでは、フレキシブル基板1002をコネクタ1003に押し込み、挿入作業を行っている時点を示す。この時点では、動作生成部112での動作情報を基に制御部114で、フィードバック則を適用させ、音量情報が傾き3dBの近似曲線に追従するようにロボットアーム102の位置を、動作生成部112での動作情報を基に制御部114で調整する(図18参照)。
 次いで、図17Gでは、フレキシブル基板1002の先端がコネクタ1003の奥に接触し、挿入作業が完了した時点を示す。この時点では、音量情報がある閾値(再生動作終了条件用閾値)(ここでは、50dB)を上回ると動作生成部112で判定すると、動作生成部112で、ロボットアーム102を静止させるように設定しており、ロボットアーム102が静止する。(図18の参照符号Bの時点参照)。
 次いで、図17Iでは、再生動作を終了した時点である(図18参照)。
 以上のように、教示データを基にフィードバック則をフィードバック則生成部111で生成し、生成したフィードバック則を含みかつ動作生成部112で作成した動作情報を基に制御部114で再生することによって、環境の変動が生じた場合においても、教示動作と同様の動作が再生時に行うことができる。
 (iii)対象物位置情報を使用する例
 <教示モードの説明>
 対象物位置情報を使用する例について説明する。対象物位置情報は、環境情報取得部107により取得する情報であり、画像撮像装置718で取得した撮像画像を基に求める。具体的には、ロボットアーム102のハンド701の先端からのコネクタ1003(被対象物)までの長さを示す。それぞれの特徴点(ロボットアーム102のハンド701の先端とコネクタ1003の先端)間の距離Lを撮像画像から算出する。図19A~図19Dを用いて説明する。図19A~図19Dの参照符号Lの部分の長さが対象物位置情報である。
 図20A~図20Jを用いて、人の手1001がロボットアーム102を操作し、教示している手順を示す。図20A→図20C→図20E→図20G→図20Iの順に人の手1001がロボットアーム102に教示していく手順を示している。また、そのときのフレキシブル基板1002とコネクタ1003との状態を図20B→図20D→図20F→図20H→図20Jの順に示す。ここでは、モード切替部113において、「教示モード」が選択されている。図20Aの時点で、人によりIF115の開始ボタンが押下され、図20Iの時点で、人によりIF115の終了ボタンが押下される。
 図20Aでは、人の手1001がロボットアーム102を把持し、人がロボットアーム102に対して教示を開始した時点である。この時点では、まだ、フレキシブル基板1002とコネクタ1003とが接触していないので、対象物位置情報である長さLの値は大きい。
 次いで、図20Cは、フレキシブル基板1002の先端とコネクタ1003の入り口とが接触した時点である。この時点では、接触の際にフレキシブル基板1002がコネクタ1003に入り始めるので、対象物位置情報の変位が変化し始める。この時点から反応時間分が経過すると、人が目視で接触を確認し、行動を変化させる。
 次いで、図20Eでは、フレキシブル基板1002をコネクタ1003に押し込み、挿入作業を行っている時点を示す。
 次いで、図20Gでは、フレキシブル基板1002の先端がコネクタ1003の奥に接触し、挿入作業が完了した時点を示す。この時点では、フレキシブル基板1002の先端がコネクタ1003の奥に接触することによって対象物位置情報の変位が止まる。この時点から反応時間分が経過すると、人が目視で止まったことを確認し、コネクタ1003へのフレキシブル基板1002の挿入の完了を人が確認する。
 次いで、図20Iでは、教示を終了した時点である。
 以上のようにしてフレキシブル基板1002のコネクタ1003への挿入作業を教示する。
 次に、図21を用いて教示データから、情報変化点及び行動変化点を検出し、フィードバック則を生成する手順を示す。
 図21は、図20A~図20Jの教示動作における、対象物位置情報を示す。図21において、横軸は、教示動作開始時間(0ms)から教示動作終了時間までの教示動作時間を示し、縦軸は、対象物位置情報(mm)を示す。図21のグラフの下に描かれている図は、それぞれ、フレキシブル基板1002のコネクタ1003に対する挿入状態(図20A、図20C、図20E、図20G、図20Iの状態)を示す。
 情報変化点検出部109において、環境情報取得部107により取得した対象物位置情報の変位が第1の閾値を上回る時点を検出する。ここでは、例えば、第1の閾値を-0.5mmとし、図21中の参照符号Aの時点の対象物位置情報が情報変化点として情報変化点検出部109で検出される。次に、行動変化点検出部110において、情報変化点の時点(図21中の参照符号Aの時点)から既定反応時間が経過した時点(図21中の参照符号Bの時点)以降に対象物位置情報の変位が第2の閾値を上回る時点を検出する。ここでは、例えば、第2の閾値を-1.0mmとし、図21中の参照符号Cの時点の対象物位置情報が行動変化点として情報変化点検出部109で検出される。最後に、フィードバック則生成部111において行動変化点(図21中の参照符号Cの時点)以降の対象物位置情報を近似曲線で表す。ここでは、例えば、傾き-0.8mmの近似曲線をフィードバック則生成部111で生成する。近似曲線の生成方法は、行動変化点から次の情報変化点までの音量情報を、最小二乗法を用いて一次関数に近似することによってフィードバック則生成部111で求める。フィードバック則生成部111で求めた近似曲線を図21中の参照符号Dで示す。
 以上のようにして、教示データから、情報変化点及び行動変化点を情報変化点検出部109及び行動変化点検出部110でそれぞれ検出し、フィードバック則をフィードバック則生成部111で生成する。
 <再生モードの説明>
 次に、図22A~図22J、図23を用いて、教示データを基にロボットアーム102を再生している手順を説明する。図22A→図22C→図22E→図22G→図22Iの順にロボットアーム102が再生していく手順を示している。また、そのときのフレキシブル基板1002とコネクタ1003の状態を、図22B→図22D→図22F→図22H→図22Jの順に示す。ここでは、モード切替部113において、「再生モード」が選択されている。図22Aの時点で、人によりIF115の開始ボタンが押下され、図22Iの時点で、人によりIF115の終了ボタンが押下される。
 図23は、図22A~図22Jの再生動作における、対象物位置情報を示す。図23における実線のグラフは、対象物位置情報を示す。図23の横軸は、再生動作時間(ms)を示し、再生動作開始時間を0msとし、再生動作開始時間から再生動作終了時間までの時間を示している。図23の縦軸は、対象物位置情報(mm)を示している。図23のグラフの下に描かれている図は、それぞれ、フレキシブル基板1002のコネクタ1003に対する挿入状態を示し、グラフの横軸が示す再生動作時間において、コネクタ1003に対してフレキシブル基板1002がどのような状態にあるのかを示す。
 図22Aでは、ロボットアーム102が再生動作を開始した時点である。この時点では、教示データの位置情報を再生しており、まだフレキシブル基板1002とコネクタ1003とが接触していない(図23参照)。
 次いで、図22Cは、フレキシブル基板1002の先端とコネクタ1003の入り口とが接触した時点である。この時点では、情報変化点検出部109において、対象物位置情報の変位が第1の閾値(-0.5mm)を上回り、情報変化点として検出する(図23の参照符号Aの時点参照)。この時点から、動作生成部112での動作情報を基に制御部114で、フィードバック則を適用させる。
 次いで、図22Eでは、フレキシブル基板1002をコネクタ1003に押し込み、挿入作業を行っている時点を示す。この時点では、動作生成部112での動作情報を基に制御部114で、フィードバック則を適用させ、対象物位置情報が傾き-0.8mmの近似曲線に追従するようにロボットアーム102の位置を、動作生成部112での動作情報を基に制御部114で調整する(図23参照)。
 次いで、図22Gでは、フレキシブル基板1002の先端がコネクタ1003の奥に接触し、挿入作業が完了した時点を示す。この時点では、対象物位置情報がある閾値(再生動作終了条件用閾値)(ここでは、-10.0mm)を上回ると動作生成部112で判定すると、動作生成部112で、ロボットアーム102を静止させるように設定しており、ロボットアーム102が静止する。(図23の参照符号Bの時点参照)。 次いで、図22Iでは、再生動作を終了した時点である(図23参照)。
 以上のように、教示データを基にフィードバック則をフィードバック則生成部111で生成し、生成したフィードバック則を含みかつ動作生成部112で作成した動作情報を基に制御部114で再生することによって、環境の変動が生じた場合においても、教示動作と同様の動作が再生時に行うことができる。
 なお、ここでは、人が直接ロボットを操作して教示を行った例(ダイレクトティーチング)で説明したが、人がマスターロボットを操作しスレーブロボットに対して教示を行う例(マスタースレーブ)に本発明を適用することも可能である。
 第1実施形態のロボットアーム102の制御装置103の操作手順を図24のフローチャートを用いて説明する。
 ステップS2401では、動作情報取得部106において動作情報を取得し、環境情報取得部107において環境情報を取得し、既定反応時間情報取得部108において既定反応時間情報を取得し、ステップS2402に進む。
 次いで、ステップS2402では、モード切替部113からモード情報(「教示モード」か「再生モード」か)が制御部114に出力される。「教示モード」の場合は、ステップS2403に進み、「再生モード」の場合は、ステップS2406に進む。
 ステップS2403では、情報変化点検出部109において、取得した教示データ(ステップS2401で取得した情報)から情報変化点を検出し、検出した情報変化点を行動変化点検出部110に出力し、ステップS2404に進む。
 次いで、ステップS2404では、行動変化点検出部110において、情報変化点検出部109から取得した情報変化点の時点から既定反応時間が経過した時点以降に行動変化点を探索する。行動変化点検出部110において、探索の結果、検出された行動変化点をフィードバック則生成部111に出力し、ステップS2405に進む。
 次いで、ステップS2405では、フィードバック則生成部111において、行動変化点検出部110から取得した行動変化点以降の情報を近似曲線で表し、フィードバック則を生成し、動作生成部112に出力し、フローを終了する。
 ステップS2406では、情報変化点が検出されたと情報変化点検出部109で判定された場合は、ステップS2407に進む。情報変化点が検出されなかったと情報変化点検出部109で判定された場合は、ステップS2408に進む。
 ステップS2407では、動作生成部112において、動作情報取得部106から取得した動作情報にフィードバック則を適用させた動作情報を生成し、ステップS2408に進む。
 ステップS2408では、動作生成部112で生成された動作情報に基づいて制御部114でロボットアーム102を制御し、フローを終了する。
 なお、第1実施形態では、「教示モード」及び「再生モード」を使用した形態を説明しているが、本発明は、「教示モード」のみを使用して教示データを分析する場合においても用いることができる。また、前記説明では、行動変化点を検出し、その時点からフィードバック則を生成している。しかしながら、行動変化点を検出せずに、情報変化点から既定反応時間が経過した時点からフィードバック則を生成する構成も可能である。また、再生時にフィードバック則を使用した例を説明しているが、フィードバック則を生成せず単純に再生のみで、情報変化点が検出された時点で行動変化点からの教示データを再生することも可能である。
 第1実施形態によれば、人がロボットアーム102を直接操作している際の、環境の変化に対する人の行動の変化を反応時間を考慮したフィードバック則として生成しているので、人の技能をロボットアーム102に移しこむことができ、環境が変化した場合においても人の場合と同様に作業を行うことができる。また、人の反応時間の際の動作を削除して再生することができるので、反応時間内に生じる不安定動作を削除することができる。
 (第2実施形態)
 図25Aは、本発明の第2実施形態のロボット101のブロック図を示す。第2実施形態のロボット101は、ロボットアーム102と、周辺装置105と、制御装置103のうちの動作情報取得部106と、環境情報取得部107と、既定反応時間取得部108と、情報変化点検出部109と、フィードバック則生成部111と、動作生成部112と、モード切替部113と、制御部114について、第1実施形態と同様であり、共通の参照符号を付して共通部分の説明は省略する。第2実施形態は、第1実施形態と異なる部分について、以下、詳細に説明する。
 行動変化点検出部2501は、行動変化点検出部110に代えて制御装置103に備えられ、動作情報取得部106から位置情報と、姿勢情報と、速度情報と、時間情報とが入力され、環境情報取得部107から環境情報と時間情報とが入力され、既定反応時間取得部108から既定反応時間情報が入力され、情報変化点検出部109から情報変化点とその点に対応した時間情報とが入力される。
 行動変化点検出部2501は、入力された情報に基づいて、行動変化点を検出する。行動変化点検出部2501は、検出した行動変化点とその点に対応した時間情報とをフィードバック則生成部111に出力する。
 行動変化点の検出方法について説明する。行動変化点検出部2501は、動作情報取得部106から入力された動作情報と環境情報取得部107から入力された環境情報とにおいて、情報変化点から既定反応時間が経過した箇所以降の時間に第2の閾値を上回る箇所を探索し、初めに第2の閾値を上回る箇所を行動変化点として検出する。第2の閾値とは、入出力IF115により入力でき、各情報により異なり、例えば、力情報では0.5N、音量情報では1dB、対象物位置情報では1mm、位置情報では1mm、姿勢情報では0.02rad、速度情報では0.01mm/msとする。また、情報変化点から既定反応時間が経過した箇所以降の時間に第2の閾値を上回る箇所が検出されないと行動変化点検出部2501で判定した場合は、行動変化点検出部2501は、情報変化点から既定反応時間が経過した箇所以前の時間に探索する。探索を終了する時点は情報変化点までとし、それでも第2の閾値を上回る箇所が検出されないと行動変化点検出部2501で判定した場合は、行動変化点検出部2501は行動変化点を検出しない。第2の閾値を上回る箇所が複数の情報で検出されたと行動変化点検出部2501で判定した場合は、行動変化点検出部2501は行動変化点を複数検出する。
 第2実施形態と第1実施形態との差異は、情報変化点から既定反応時間が経過した時点以前の時間にも行動変化点検出部2501で探索することであり、そのようにすることで既定反応時間より早く反応する場合においても、行動変化点を行動変化点検出部2501で抽出することができる。既定反応時間より早く反応する場合とは、作業の熟練度が増している場合又は繊細な作業のため集中している場合など様々な場合で生じる。
 第2実施形態の使用例として、フレキシブル基板1002のコネクタ1003への挿入作業を説明する。
 <教示モード>
 図26は、図11Aと同様に、教示動作における、力センサ716の値とロボットアーム102の位置情報を示す。
 教示動作時のデータから、情報変化点及び行動変化点を情報変化点検出部109及び行動変化点検出部2501で検出し、フィードバック則を生成する手順を示す。第2実施形態では、第1実施形態で検出した情報変化点(図26中の参照符号Aの時点)及び行動変化点(図26中の参照符号Cの時点)、生成したフィードバック則(図26中の参照符号Gの近似曲線)に加えて、新たに情報変化点(図26中の参照符号Dの時点)及び行動変化点(図26中の参照符号Fの時点)を情報変化点検出部109及び行動変化点検出部2501で検出し、新たにフィードバック則(図26中の参照符号Hの近似曲線)をフィードバック則生成部111で生成する。以下には、新たに検出する情報変化点及び行動変化点を情報変化点検出部109及び行動変化点検出部2501でそれぞれ検出し、新たに生成するフィードバック則をフィードバック則生成部111で生成する手順について説明する。
 情報変化点検出部109は、力情報の変位が第1の閾値を上回る時点を検出する。第2実施形態では、第1実施形態で設定した第1の閾値に加えて、例えば、第1の閾値を-1.0Nとし、図26中の参照符号Dの時点の力情報が情報変化点として情報変化点検出部109で検出される。
 次に、行動変化点検出部110は、情報変化点の時点(図26中の参照符号Dの時点)から既定反応時間が経過した時点(図26中の参照符号Eの時点)の後に、力情報の変位が第2の閾値を上回る時点を検出する。第2実施形態では、第1実施形態で設定した第2の閾値に加えて、例えば第2の閾値を0.2Nとする。
 しかしながら、図26中の参照符号Eの時点以降に力情報の変位が第2の閾値を上回る時点は行動変化点検出部110で検出されない。そこで、図26中の参照符号Eの時点以前において行動変化点検出部110で探索する。すると、図26中の参照符号Fの時点の力情報が行動変化点として行動変化点検出部110で検出される。なお、変位が0.2Nを上回る時点は、E点周辺の変位は小さいため、F点にならないと検出されない。
 最後に、フィードバック則生成部111は、行動変化点(図26中の参照符号F)以降の力情報を近似曲線で表す。ここでは、例えば、傾き0.1Nの近似曲線をフィードバック則生成部111で生成する。近似曲線の生成方法は、行動変化点から教示動作終了時間までの力情報を、最小二乗法を用いて一次関数に近似することによってフィードバック則生成部111で求める。フィードバック則生成部111で求めた近似曲線を図26中の参照符号Hで示す。
 また、フィードバック則生成部111での近似曲線の生成方法は、行動変化点以降の時間に情報変化点がある場合は、行動変化点から次の情報変化点までの情報について最小二乗法を用いて近似曲線で近似する。行動変化点以降の時間に情報変化点がない場合は、フィードバック則生成部111により、行動変化点以降の時間について最小二乗法を用いて近似曲線で近似する。
 以上のようにして、教示データから、情報変化点及び行動変化点を情報変化点検出部109及び行動変化点検出部110でそれぞれ検出し、フィードバック則をフィードバック則生成部111で生成する。
 <再生モードの説明>
 教示動作時のデータを基にロボットアーム102を再生する手順は、図12A~図12Jと同様であり、異なる点を以下に省略する。
 図27は、図13と同様に、図12A~図12Jの再生動作における、力センサ716の値とロボットアーム102の位置情報とを示す。
 図12Aは、第1実施形態と同じ動作である。
 次いで、図12Cは、フレキシブル基板1002の先端とコネクタ1003の入り口とが接触した時点である。この時点では、情報変化点検出部109において、力情報の変位が第1の閾値(-0.5N)を上回り、第1実施形態で検出した情報変化点として検出する(図27の参照符号Aの時点参照)。
 この時点から、第1実施形態で生成したフィードバック則を、動作生成部112での動作情報を基に制御部114で、適用させる。
 次いで、図12Eでは、フレキシブル基板1002をコネクタ1003に押し込み、挿入作業を行っている時点を示す。この時点では、動作生成部112での動作情報を基に制御部114で、第1実施形態で生成したフィードバック則を適用させ、力情報が傾き-0.1Nの近似曲線に追従するようにロボットアーム102の位置を、動作生成部112での動作情報を基に制御部114で調整する(図27参照)。
 次いで、図12Gは、フレキシブル基板1002の先端がコネクタ1003の奥に接触し、挿入作業が完了した時点を示す。この時点で、情報変化点検出部109は、力情報について、第1の閾値を-1.0Nを越える点を情報変化点として検出する(図27の参照符号Bの時点参照)。この時点から、前述した第2実施形態で生成したフィードバック則を、動作生成部112での動作情報を基に制御部114で適用し、具体的には力情報が傾き0.1Nの近似曲線に追従するようにロボットアーム102の位置を、動作生成部112での動作情報を基に制御部114で調整する。
 次いで、図12Iは、再生動作を終了した時点である(図27参照)。なお、前記したように、第1の閾値は、教示モード及び再生モード共に情報変化点を検出する閾値として使用し、第2の閾値は教示モードにおいてフィードバック則を生成する際に使用する。
 以上のように、教示データを基にフィードバック則をフィードバック則生成部111で生成し、生成したフィードバック則を含みかつ動作生成部112で作成した動作情報を基に制御部114で再生することによって、環境の変動が生じた場合においても、教示動作と同様の動作を再生時に行うことができる。
 (変形例:複数方向へのフィードバック則の適用)
 前記第2実施形態は、主に一方向(挿入方向)の作業についてのフィードバック則の適用について述べたが、複数の方向にフィードバック則を、動作生成部112での動作情報を基に制御部114で、適用させる場合がある。例えば、フレキシブル基板1002をコネクタ1003に挿入する作業は、図28に示す通り、挿入方向、横方向、及び、高さ方向などの複数の方向がある。本変形例は、このような場合に、下記するように動作生成部112で優先順位をつけて、フィードバック則を、動作生成部112での動作情報を基に制御部114で適用する。
 図25Bは、複数方向にフィードバック則を、動作生成部112での動作情報を基に制御部114で適用させる場合の動作生成部112の内部の詳細を示した図である。ここでは、動作生成部112は、情報取得部112Bと、方向別順位決定部112Cと、情報生成部112Dとを備えて構成している。
 情報取得部112Bは、他の要素から動作生成部112に入力される情報を取得し、方向別順位決定部112C及び情報生成部112Dにそれぞれ出力する。
 方向別順位決定部112Cは、情報取得部112Bから入力された環境情報を基に方向別に順位を決定し、その情報を情報生成部112Dに出力する。順位の決定方法の一例を説明する。情報取得部112Bから取得した環境情報のある時点の変位を方向別に方向別順位決定部112Cで比較し、その変位が大きい順に順位を方向別順位決定部112Cで決定する。
 情報生成部112Dは、情報取得部112Bから入力された情報を基に再生動作を生成する。また、フィードバック則を情報生成部112Dで適用する際に、方向別順位決定部112Cから入力された順位情報を基にその方向に対してフィードバックを情報生成部112Dで適用するように、再生動作を情報生成部112Dで生成する。動作生成部112の情報生成部112Dで生成した動作情報を基に、フィードバック則を制御部114で適用させる。
 図29A~図29Cは、図10A~図10Jに示す教示動作における、挿入方向(図29A)、横方向(図29B)、高さ方向(図29C)における、力センサ716の値とロボットアーム102の位置情報とを示す。
 図29A~図29Cの説明は、図11Aと同様である。
 各方向における情報変化点及び行動変化点が検出された時点の力情報の変位を方向別順位決定部112Cで比較すると、挿入方向、横方向、高さ方向の順に大きいと方向別順位決定部112Cで判定されるとする。
 再生時は、変位の大きい順序である挿入方向、横方向、高さ方向の優先順位でフィードバック則を、動作生成部112での動作情報を基に制御部114で適用させる。人が作業を行う場合は、力の変位の大きい方向の力を手で感じ、作業方法を変更する。よって、力情報の変位の大きい順序で、フィードバック則を適用させるように再生動作を情報生成部112Dで生成し、情報生成部112Dで生成した動作情報を基に、フィードバック則を制御部114で適用させる。このように構成することで、人の手1001が力を感じながら行う作業と同様の方法で、フィードバック則を、動作生成部112での動作情報を基に制御部114で適用することができる。
 適用例は、優先順位の高い順に1つの方向のみにフィードバック則を、動作生成部112での動作情報を基に制御部114で適用させる。例えば、再生時に全ての方向で情報変化点が検出された場合は、挿入方向のみにフィードバック則を、動作生成部112での動作情報を基に制御部114で適用させる。また、横方向及び高さ方向で情報変化点が検出された場合は、横方向のみにフィードバック則を、動作生成部112での動作情報を基に制御部114で適用させる。
 なお、前記の適用方法以外にも情報変化点が検出された方向は全てフィードバック則を適用するなど他の方法を採用することも可能である。
 複数方向にフィードバック則を、動作生成部112での動作情報を基に制御部114で適用させることによって、人が作業を行っている場合と同様の挿入方法を、ロボットアーム102によって再生することができ、環境変動又は対象物が変更される場合においても対応することができる。
 第2実施形態のロボットアーム102の制御装置103の操作手順を図30のフローチャートを用いて説明する。
 ステップS2401では、動作情報取得部106は動作情報を取得し、環境情報取得部107は環境情報を取得し、既定反応時間情報取得部108は既定反応時間情報を取得する。
 次いで、ステップS2402では、モード切替部113は、教示モードを切り替える。具体的には、モード情報(「教示モード」か「再生モード」か)を制御部114に出力する。「教示モード」の場合は、ステップS2403に進み、「再生モード」の場合は、ステップS2406に進む。
 (教示モードのフロー)
 ステップS2403では、情報変化点検出部109は、取得した教示データ(ステップS2401で取得した情報)から情報変化点を検出し、検出した情報変化点を行動変化点検出部2501に出力する。
 次いで、ステップS3001では、行動変化点検出部2501は、情報変化点検出部109から取得した情報変化点の時点から既定反応時間が経過した時点以降に行動変化点を探索する。また、行動変化点検出部2501での探索の結果、行動変化点が検出されなかったと行動変化点検出部2501で判定された場合、情報変化点の時点から既定反応時間が経過した時点以前に検出された行動変化点を行動変化点検出部2501で探索する。行動変化点検出部2501で検出された行動変化点を行動変化点検出部2501からフィードバック則生成部111に出力し、ステップS2405に進む。
 次いで、ステップS2405では、フィードバック則生成部111は、行動変化点検出部2501から取得した行動変化点以降の情報を近似曲線で表し、フィードバック則を生成し、動作生成部112に出力し、フローを終了する。
 (再生モードのフロー)
 ステップS2406では、情報変化点が検出されたと情報変化点検出部109で判定された場合は、再生モードのフローはステップS2407に進み、情報変化点が検出されなかったと情報変化点検出部109で判定された場合は、再生モードのフローはステップS2408に進む。
 ステップS2407では、動作生成部112は、動作情報取得部106から取得した動作情報にフィードバック則を適用させた動作情報を生成する。
 ステップS2408では、制御部114は、動作生成部112で生成された動作情報に基づいてロボットアーム102を制御すし、フローを終了する。
 第2実施形態によれば、人の反応時間が早い場合(熟練度が高い場合又は集中力が高い場合など)においても、人の行動の変化を正確に表すことができ、行動変化点を検出でき、人の技能をロボットアームに移しこむことができる。その結果、環境が変化した場合においても人の場合と同様に作業を行うことができる。
 (第3実施形態)
 図31は、本発明の第3実施形態のロボット101のブロック図を示す。本発明の第2実施形態のロボット101におけるロボットアーム102と、周辺装置105と、制御装置103のうちの動作情報取得部106と、環境情報取得部107と、既定反応時間取得部108と、情報変化点検出部109と、行動変化点検出部2501と、フィードバック則生成部111と、モード切替部113と、制御部114とは第2実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
 実反応時間情報検出部3101は、制御装置103に新たに備えられ、情報変化点検出部109から情報変化点とその点に対応した時間情報とが入力される。また、実反応時間情報検出部3101には、行動変化点検出部2501から行動変化点とその点に対応した時間情報とが入力される。実反応時間情報検出部3101は、取得した行動変化点の時点から情報変化点の時点を引き、実反応時間情報を求める。実反応時間情報検出部3101で求めた実反応時間情報と時間情報を、実反応時間情報検出部3101から動作生成部3102に出力する。
 図32は、図11Aと同様に、図10A~図10Jで示す教示動作の際に得られた教示データである。図32の参照符号A、Cは情報変化点を示し、図32の参照符号B、Dは行動変化点を示す。
 図32における実反応時間は、それぞれB-A、D-Cで表される。
 動作生成部3102は、動作生成部112に代えて制御装置103に備えられ、
 動作情報取得部106から入力された(i)位置情報と、姿勢情報と、速度情報と、時間情報と、
 環境情報取得部107から入力された(ii)環境情報と時間情報と、
 情報変化点検出部109から入力された(iii)情報変化点とその点に対応した時間情報と、
 実反応時間情報検出部3101から入力された(iv)実反応時間情報と時間情報と
 に基づいて、動作情報を生成し、生成した動作情報と時間情報とを制御部114に出力する。動作生成部3102は、生成した動作情報と、フィードバック則と、時間情報とを動作記憶部3102Aに記憶する。
 動作生成部3102での動作情報の生成方法について説明する。動作生成部3102は、動作情報取得部106から入力された動作情報を、動作情報として作成する。ただし、ロボットアーム102の動作中に情報変化点検出部109から情報変化点が動作生成部3102に入力された場合、フィードバック則を適用させた動作を動作生成部3102で生成する。フィードバック則に適用させた動作とは、入力される近似曲線に沿うように動作情報を変化させることである。また、情報変化点が検出されてフィードバック則を適用させる場合に、実反応時間情報における動作を再生するか、又は、削除するかを、動作生成部3102は、人が入出力IF115を用いて選択するのを促す。例えば、入出力IF115の一例としてのディスプレイなどの表示装置に、実反応時間情報における動作を再生するか、又は、削除するかの選択を促す指示が表示される。よって、人が入出力IF115を用いて選択した選択情報を動作生成部3102に入力して、実反応時間情報における動作を再生するか、又は、削除するかを選択することができる。選択の基準としては、教示動作と同様の動作を行う場合においては実反応時間情報における動作を再生し、効率良く短時間で再生する場合においては実反応時間情報における動作を削除して再生する。
 再生する場合は、教示データと同様の動作が可能である。
 実反応時間情報における動作を削除する場合は、人の反応時間の動作を削除することができ、不安定動作を削除することができる。
 図33A及び図33Bは、図13と同様に、図12A~図12Jで示す再生動作における、力情報と位置情報とのグラフである。具体的には、図33Aは、実反応時間情報における動作を再生する場合の結果を示し、図33Bは、実反応時間情報における動作を削除する場合の結果を示す。
 図33Aでは、図26に示される教示データと同様の結果が得られていることがわかる。一方で、図33Bでは、実反応時間情報における動作が削除されているので、人の反応時間中の動作が削除されていることがわかる(図33A中の参照符号C、Dの区間を図33Bでは削除している)。
 また、動作生成部3102において、上述した人の反応時間の動作を削除することの他に、人の反応時間の動作を補間することもできる。例えば、状態変化点が検出された時点での情報と状態変化点から反応時間経過した時点での情報との間の時間の情報を補間する。補間方法としては、線形補間、多項式補間、又は、円弧補間など、いかなる補間方法も可能である。
 図33Cに、補間を行った再生動作における、力情報と位置情報とのグラフを示す。図33Cでは、参照符号C、Dの区間において線形補間を施している。
 また、状態変化点が検出された時点での情報と状態変化点から反応時間経過した時点での情報との大きさの差によって、削除するか又は補間するかを自動的に切り替えることも可能である。例えば、状態変化点が検出された時点での力情報と状態変化点から反応時間経過した時点での力情報との絶対値の差が、任意の閾値(動作修正切替用閾値)(0.1N)以上の場合は補間を行い、前記任意の閾値(動作修正切替用閾値)(0.1N)より小さい場合は削除を行う。
 第3実施形態のロボットアーム102の制御装置103の操作手順を図34のフローチャートを用いて説明する。
 ステップS2401では、動作情報取得部106において動作情報を取得し、環境情報取得部107において環境情報を取得し、既定反応時間情報取得部108において既定反応時間情報を取得し、ステップS2402に進む。
 次いで、ステップS2402では、モード切替部113において、モード情報(「教示モード」か「再生モード」か)が制御部114に出力される。「教示モード」の場合は、ステップS2403に進み、「再生モード」の場合は、ステップS2406に進む。
 ステップS2403では、情報変化点検出部109において、取得した教示データ(ステップS2401で取得した情報)から情報変化点を検出し、検出した情報変化点を行動変化点検出部2501に出力し、ステップS3001に進む。
 次いで、ステップS3001では、行動変化点検出部2501において、情報変化点検出部109から取得した情報変化点の時点から既定反応時間が経過した時点以降に行動変化点を探索する。また、行動変化点検出部2501での探索の結果、行動変化点が検出されなかったと行動変化点検出部2501で判定した場合、情報変化点の時点から既定反応時間が経過した時点以前に検出された行動変化点を探索する。行動変化点検出部2501で検出された行動変化点を行動変化点検出部2501からフィードバック則生成部111に出力し、ステップS2405に進む。
 次いで、ステップS2405では、フィードバック則生成部111において、行動変化点検出部2501から取得した行動変化点以降の情報を近似曲線で表し、フィードバック則を生成し、動作生成部3102に出力し、ステップS3401に進む。
 次いで、ステップS3401では、実反応時間情報検出部3101において、行動変化点の時点と情報変化点の時点との差を取り、実反応時間情報を検出する。実反応時間情報検出部3101で検出した実反応時間情報を、実反応時間情報検出部3101から動作生成部3102に出力し、フローを終了する。
 ステップS2406では、情報変化点が検出されたと情報変化点検出部109で判定された場合は、ステップS3402に進む。情報変化点が検出されなかったと情報変化点検出部109で判定された場合は、ステップS2408に進む。
 ステップS3402では、動作生成部3102において、フィードバック則を適用させる場合に、実反応時間情報における動作を削除するか又は削除しないかを人が入出力IF115を用いて選択するのを促す。実反応時間情報における動作を削除する場合はステップS3403に進み、実反応時間情報における動作を削除しない場合はステップS3404に進む。
 ステップS3403では、動作生成部3102において、動作情報取得部106から取得した動作情報に対して、実反応時間情報における動作を削除してフィードバック則を適用させた動作情報を生成し、ステップS2408に進む。
 ステップS3404では、動作生成部3102において、動作情報取得部106から取得した動作情報に対して、実反応時間情報における動作を削除せずにフィードバック則を適用させた動作情報を生成し、ステップS2408に進む。
 ステップS2408では、動作生成部3102で生成された動作情報に基づいて制御部114でロボットアーム102を制御し、フローを終了する。
 第3実施形態によれば、動作生成部3102により、実反応時間情報における動作を削除するか又は削除しないかを人が入出力IF115を用いて選択するのを促すことができる。このため、人が入出力IF115を用いて選択した選択情報を動作生成部3102に入力して、実反応時間情報における動作を削除するか、又は、削除しないかを選択するので、対象となる作業に応じたフィードバック則を、動作生成部3102での動作情報を基に制御部114で適用することができる。また、反応時間内に生じる作業中の人の不安定動作を削除することができ、人の意図した動作を再生することができる。
 (第4実施形態)
 図35は、本発明の第4実施形態のロボット101のブロック図を示す。本発明の第3実施形態のロボット101におけるロボットアーム102と、周辺装置105と、制御装置103のうちの動作情報取得部106と、環境情報取得部107と、既定反応時間取得部108と、情報変化点検出部109と、行動変化点検出部2501と、フィードバック則生成部111と、動作生成部3102と、モード切替部113と、実反応時間情報検出部3101と、制御部114とは第3実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
 第4実施形態では、既定反応時間情報として、作業者又は対象作業に対応した反応時間情報を予め決めておき、その情報に基づいて、教示モードと再生モードとを制御するものである。
 環境情報生成部3501は、制御装置103に新たに備えられ、既定反応時間情報を測定する際に使用する環境情報を生成し、入出力IF115に出力する。環境情報は力情報と、音量情報と、対象物位置情報との少なくとも1つ以上の情報である。
 既定反応時間情報測定部3502は、制御装置103に新たに備えられ、環境情報生成部3501による環境情報を取得した場合に、
  情報変化点検出部109から入力された(i)情報変化点とその点に対応した時間情報と、
  行動変化点検出部2501から入力された(ii)行動変化点とその点に対応した時間情報と
 に基づいて、既定反応時間情報として、行動変化点の時点と情報変化点の時点との差を求め、入出力IF115に求めた既定反応時間情報を出力する。
 既定反応時間情報を測定する予備実験について説明する。環境情報として、力情報を使用した予備実験について、図36A~図36Dを用いて説明する。予備実験は、図36A→図36B→図36C→図36Dの手順で行う。予備実験は、モード切替部113のモード情報が「教示モード」で行われる。ここでは、モード切替部113において、「教示モード」が選択されている。図36Aの時点で、人によりIF115の開始ボタンが押下され、図36Dの時点で、人によりIF115の終了ボタンが押下される。
 図36Aは、人の手1001がロボットアーム102を把持し、静止している状態である。
 図36Bは、環境情報生成部3501によって力情報が生成された状態である。具体的には、位置を制御し力を提示することによって、力情報を環境情報生成部3501で生成する。又は、実際に被対象物にロボットアーム102のハンド701を衝突させる。
 このとき、力センサ716の値は変化するが、人の手1001には、まだ力情報が伝わっていない。
 図36Cは、環境情報生成部3501によって力情報が生成された時点から反応時間が経過した時点であり、人の手1001に力情報が伝わり、人の手1001がロボットアーム102を移動させた状態である。図36Bの時点から図36Cの時点までの時間が、既定反応時間情報として、既定反応時間測定部3502で測定される。
 図36Dは、人の手1001がロボットアーム102を把持し、静止している状態であり、予備実験が終了した状態である。
 図37は、図36A~図36Dの予備実験中に得られたロボットアーム102の位置情報と力センサ716の測定値を示す。図37における、実線のグラフ400は、力センサ716で検出される値を示す。実線のグラフ401は、ロボットアーム102の位置を示す。図37の横軸は、予備実験開始時間(0ms)から予備実験終了時間までの予備実験時間を示す。図37の左縦軸は、ロボットアーム102の位置(mm)を示す。図37の右縦軸は、力センサ716で検出される値(N)を示す。図37のグラフの下には、図36A~図36Dのどの状態にあるのかを示す。図37の参照符号A、Bは情報変化点を表し、行動変化点を表す。また、図37の参照符号Cは既定反応時間情報を表す。
 図37より、図36Bの状態において力情報の変位が大きくなり、情報変化点が情報変化点検出部109で検出されていることがわかる。また、図36Cの状態において位置情報の変位が大きくなり、行動変化点が行動変化点検出部2501で検出されていることがわかる。情報変化点の時点から行動変化点の時点までの時間(図37中の参照符号C)を既定反応時間情報として既定反応時間取得部108で求める。このように求めた既定反応時間情報を用いることによって、人、又は、対象作業、又は、環境情報などによる反応時間の差異に対応した既定反応時間情報を既定反応時間取得部108の既定反応時間取得部108で取得することができる。また、求めた既定反応時間情報は、既定反応時間情報記憶部108Aで記憶され、既定反応時間情報として既定反応時間取得部108から行動変化点検出部2501に出力される。予備実験は、実際の作業の前準備として実施され、作業者又は対象作業ごとに異なり、図38に示すような情報として記憶する。
 第4実施形態のロボットアーム102の制御装置103の操作手順を図39のフローチャートを用いて説明する。
 ステップS3901では、予備実験を行い、既定反応時間情報測定部3502で既定反応時間情報を測定し、既定反応時間情報測定部3502から入出力IF115に出力し、ステップS2401に進む。
 次いで、ステップS2401では、動作情報取得部106において動作情報を取得し、環境情報取得部107において環境情報を取得し、既定反応時間情報取得部108において既定反応時間情報を取得し、ステップS2402に進む。
 次いで、ステップS2402では、モード切替部113において、モード情報(「教示モード」か「再生モード」か)が制御部114に出力される。「教示モード」の場合は、ステップS2403に進み、「再生モード」の場合は、ステップS2406に進む。
 ステップS2403では、情報変化点検出部109において、取得した教示データ(ステップS2401で取得した情報)から情報変化点を検出し、検出した情報変化点を行動変化点検出部2501に出力し、ステップS3001に進む。
 次いで、ステップS3001では、行動変化点検出部2501において、情報変化点検出部109から取得した情報変化点の時点から既定反応時間が経過した時点以降に行動変化点を探索する。また、行動変化点検出部2501での探索の結果、行動変化点が検出されなかったと行動変化点検出部2501で判定した場合、情報変化点の時点から既定反応時間が経過した時点以前に検出された行動変化点を行動変化点検出部2501で探索する。行動変化点検出部2501で検出された行動変化点を、行動変化点検出部2501からフィードバック則生成部111に出力し、ステップS2405に進む。
 次いで、ステップS2405では、フィードバック則生成部111において、行動変化点検出部2501から取得した行動変化点以降の情報を近似曲線で表し、フィードバック則を生成し、動作生成部3102に出力し、ステップS3401に進む。
 次いで、ステップS3401では、実反応時間情報検出部3101において、行動変化点の時点と情報変化点の時点との差を取り、実反応時間情報を検出する。検出した実反応時間情報を実反応時間情報検出部3101から動作生成部3102に出力し、フローを終了する。
 ステップS2406では、情報変化点が検出されたと情報変化点検出部109で判定された場合は、ステップS3402に進む。情報変化点が検出されなかったと情報変化点検出部109で判定された場合は、ステップS2408に進む。
 ステップS3402では、動作生成部3102において、フィードバック則を適用させる場合に、実反応時間情報における動作を削除するか又は削除しないかを人が入出力IF115を用いて選択するのを促す。実反応時間情報における動作を削除する場合はステップS3403に進み、実反応時間情報における動作を削除しない場合はステップS3404に進む。
 ステップS3403では、動作生成部3102において、動作情報取得部106から取得した動作情報に対して、実反応時間情報における動作を削除してフィードバック則を適用させた動作情報を生成し、ステップS2408に進む。
 ステップS3404では、動作生成部3102において、動作情報取得部106から取得した動作情報に対して、実反応時間情報における動作を削除せずにフィードバック則を適用させた動作情報を生成し、ステップS2408に進む。
 ステップS2408では、動作生成部3102で生成された動作情報に基づいて制御部114でロボットアーム102を制御し、フローを終了する。
 第4実施形態によれば、予備実験を行い既定反応時間情報を既定反応時間情報測定部3502で測定することによって、人、又は、対象作業、又は、環境情報などによる反応時間の差異に対応することができる。その結果、行動変化点検出部2501で行動変化点を正確に求めることができ、人、又は、対象作業、又は、環境情報などが変わった場合においても、正確に作業を行うことができる。
 (第5実施形態)
 図40は、本発明の第5実施形態のロボット101のブロック図を示す。本発明の第3実施形態のロボット101におけるロボットアーム102と、周辺装置105と、制御装置103のうちの動作情報取得部106と、環境情報取得部107と、既定反応時間取得部108と、情報変化点検出部109と、行動変化点検出部2501と、フィードバック則生成部111と、モード切替部113と、実反応時間情報検出部3101と、制御部114とは第3実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
 動作生成部4001は、動作生成部112に代えて制御装置103に備えられ、
  動作情報取得部106から入力された(i)位置情報と、姿勢情報と、速度情報との少なくとも1つの動作情報と、時間情報と、
  環境情報取得部107から入力された(ii)環境情報と時間情報と、
  情報変化点検出部109から入力された(iii)情報変化点とその点に対応した時間情報と、
  実反応時間情報検出部3101から入力された(iv)実反応時間情報と時間情報とが入力された情報と
 に基づいて、動作情報を生成する。動作生成部4001は、生成した動作情報と時間情報とを制御部114に出力する。動作生成部4001は、生成した動作情報と、フィードバック則と、時間情報とを動作記憶部4002Aに記憶する。
 動作生成部4001での動作情報の生成方法について説明する。動作生成部4001は、動作情報取得部106から入力された動作情報を、動作情報として作成する。ただし、ロボットアーム102の動作中に情報変化点検出部109から情報変化点が入力された場合、フィードバック則を適用させた動作を動作生成部4001で生成する。フィードバック則に適用させた動作とは、入力される近似曲線に沿うように動作情報を変化させることである。また、情報変化点が検出されてフィードバック則を適用させる場合に、実反応時間情報における動作を再生するか、又は、削除するかを人が入出力IF115を用いて選択するのを促す。よって、人が入出力IF115を用いて選択した選択情報を動作生成部4001に入力して、実反応時間情報における動作を再生するか、又は、削除するかを選択することができる。実反応時間情報における動作を再生する場合は、教示データと同様の動作が可能である。選択の基準としては、教示動作と同様の動作を行う場合においては実反応時間情報における動作を再生し、効率良く短時間で再生する場合においては実反応時間情報における動作を削除する。さらに、実反応時間情報における動作を削除する場合は、人の反応時間の動作を削除することができ、不安定動作を削除することができる。
 また、教示データが複数ある場合において、それぞれの教示データにおける実反応時間情報検出部3101から動作生成部4001に入力される実反応時間情報を動作生成部4001で比較し、実反応時間情報が最も短い教示データを動作情報として動作生成部4001で生成する。教示データが複数ある場合とは、同一作業において同一の作業者が複数回教示を行う場合、又は、同一作業において複数人の作業者が教示する場合のことを示す。
 図41A~図41Cに表される3つの教示データがあった場合、それぞれの実反応時間情報(図41A~図41C中のB-A)を動作生成部4001で比較する。それぞれの実反応時間情報は、図41Aは524ms、図41Bは416ms、図41Cは594msである。この場合、図41Bの実反応時間情報が最も短いので、図41Bの教示データを動作情報として動作生成部4001で生成する。
 また、教示データとは例えば、図42で表されるような時系列のデータのことを示す。
 第5実施形態のロボットアーム102の制御装置103の操作手順を図43のフローチャートを用いて説明する。
 ステップS2401では、動作情報取得部106において動作情報を取得し、環境情報取得部107において環境情報を取得し、既定反応時間情報取得部108において既定反応時間情報を取得し、ステップS2402に進む。
 次いで、ステップS2402では、モード切替部113において、モード情報(「教示モード」か「再生モード」か)が制御部114に出力される。「教示モード」の場合は、ステップS2403に進み、「再生モード」の場合は、ステップS2406に進む。
 ステップS2403では、情報変化点検出部109において、取得した教示データ(ステップS2401で取得した情報)から情報変化点を検出し、検出した情報変化点を行動変化点検出部2501に出力し、ステップS3001に進む。
 次いで、ステップS3001では、行動変化点検出部2501において、情報変化点検出部109から取得した情報変化点の時点から既定反応時間が経過した時点以降に行動変化点を探索する。また、情報変化点検出部109での探索の結果、行動変化点が検出されなかったと情報変化点検出部109で判定した場合、情報変化点の時点から既定反応時間が経過した時点以前に検出された行動変化点を情報変化点検出部109で探索する。情報変化点検出部109で検出された行動変化点を、情報変化点検出部109からフィードバック則生成部111に出力し、ステップS2405に進む。
 次いで、ステップS2405では、フィードバック則生成部111において、行動変化点検出部2501から取得した行動変化点以降の情報を近似曲線で表し、フィードバック則を生成し、動作生成部4001に出力し、ステップS3401に進む。
 次いで、ステップS3401では、実反応時間情報検出部3101において、行動変化点の時点と情報変化点の時点との差を取り、実反応時間情報を検出する。実反応時間情報検出部3101で検出した実反応時間情報を、実反応時間情報検出部3101から動作生成部4001に出力し、フローを終了する。
 ステップS2406では、情報変化点が検出されたと情報変化点検出部109で判定された場合は、ステップS3402に進む。情報変化点が検出されなかったと情報変化点検出部109で判定された場合は、ステップS4301に進む。
 ステップS3402では、動作生成部4001において、フィードバック則を適用させる場合に、実反応時間情報における動作を削除するか又は削除しないかを、人が入出力IF115を用いて選択するのを促す。実反応時間情報における動作を削除する場合はステップS3403に進み、実反応時間情報における動作を削除しない場合はステップS3404に進む。
 ステップS3403では、動作生成部4001において、動作情報取得部106から取得した動作情報に対して、実反応時間情報における動作を削除してフィードバック則を適用させた動作情報を生成し、ステップS4301に進む。
 ステップS3404では、動作生成部4001において、動作情報取得部106から取得した動作情報に対して、実反応時間情報における動作を削除せずにフィードバック則を適用させた動作情報を生成し、ステップS4301に進む。
 ステップS4301では、動作生成部4001で生成された動作情報に基づいて制御部114でロボットアーム102を制御し、フローを終了する。複数の教示データがある場合においては、動作生成部4001により、実反応時間情報が最も短い教示データを動作情報としてロボットアーム102を制御する。
 第5実施形態によれば、教示データが複数ある場合においても、最も良い教示データを動作生成部4001で選択して再生することができるので、効率の良い作業を行うことができる。
 (第6実施形態)
 図44は、本発明の第6実施形態のロボット101のブロック図を示す。本発明の第3実施形態のロボット101におけるロボットアーム102と、周辺装置105と、制御装置103のうちの動作情報取得部106と、環境情報取得部107と、既定反応時間取得部108と、情報変化点検出部109と、フィードバック則生成部111と、モード切替部113と、実反応時間情報検出部3101と、制御部114とは第3実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
 行動変化点検出部4401は、行動変化点検出部2501に代えて制御装置103に備えられ、第3実施形態における行動変化点検出部2501の機能に加え、予備動作情報を検出し、予備動作情報が検出された場合は検出された時点以降の時間で行動変化点を検出する。行動変化点検出部4401で検出した予備動作情報は、行動変化点検出部4401から動作生成部4402に出力する。予備動作情報とは、人が行動を変化させる前の予備的な動作であり、動作情報において検出される。具体的には、フレキシブル基板1002の挿入作業において、フレキシブル基板1002をコネクタ1003に押し込む前に一度微小に引く動作を行うように、人が無意識のうちに行っている動作のことを表す。
 行動変化点検出部4401での予備動作情報の具体的な検出方法を図45の教示データを用いて説明する。
 情報変化点検出部4401において情報変化点が検出される(図45中の参照符号A)。次に、行動変化点検出部4401において、位置情報の変位が第2の閾値(例えば、-0.05mm)を上回る時点を行動変化点として検出する(図45中の参照符号B)。次に、行動変化点検出部4401において、行動変化点から第3の閾値(例えば、200ms)の間において、位置情報の変位が第2の閾値(例えば、0.05mm)を上回り、かつ検出した行動変化点と同じ大きさの位置情報を検出する(図45中の参照符号C)。このとき、行動変化点検出部4401において、位置情報の図45中の参照符号Bから図45中の参照符号Cの位置情報を予備動作情報とする。次に、行動変化点検出部4401において、図45中の参照符号Cの時点以降に行動変化点を探索し、力情報から行動変化点を検出する(図45中の参照符号D)。以上のように、行動変化点検出部4401では、予備動作情報(図45中の参照符号BからCまで)と、行動変化点(図45中の参照符号D)とを検出し、動作生成部4402に出力する。第3の閾値は、予備動作検出用閾値であって、予備動作は人が行う無意識の動作であって短時間の間に起こることが確認できており、この短時間以内であることを検出するための時間の閾値である。
 動作生成部4402は、動作生成部3102に代えて制御装置103に備えられ、第3実施形態における動作生成部3102の機能に加え、行動変化点検出部4401から入力される予備動作情報を基に、動作情報を修正するか修正しないか人が入出力IF115を用いて選択するのを促す。よって、人が入出力IF115を用いて選択した選択情報を動作生成部4402に入力して、動作情報を修正するか、又は、動作情報を修正しないかを選択することができる。動作情報を修正する場合は、予備動作情報(図45中の参照符号BからCまで)の間の時間の動作情報を均一に同じ大きさに修正する。動作情報を修正しない場合は、教示データと同様の動作情報を作成する。選択の基準としては、教示動作と同様の動作を行う場合においては予備動作情報を修正せず、人が意図しない余計な動作を削除する場合においては予備動作情報を修正する。動作生成部4402は、生成した動作情報と、フィードバック則と、時間情報とを動作記憶部4402Aに記憶する。
 図46A及び図46Bは、予備動作情報を修正する場合の再生結果と、予備動作情報を修正しない場合の再生結果を示す。図46Aと図46Bの参照符号A、Bの箇所を比較すると、予備動作情報を修正の有無により、再生時の動作情報が異なっていることが確認できる。
 第6実施形態のロボットアーム102の制御装置103の操作手順を図47のフローチャートを用いて説明する。
 ステップS2401では、動作情報取得部106において動作情報を取得し、環境情報取得部107において環境情報を取得し、既定反応時間情報取得部108において既定反応時間情報を取得し、ステップS2402に進む。
 次いで、ステップS2402では、モード切替部113において、モード情報(「教示モード」か「再生モード」か)が制御部114に出力される。「教示モード」の場合は、ステップS2403に進み、「再生モード」の場合は、ステップS2406に進む。
 ステップS2403では、情報変化点検出部109において、取得した教示データ(ステップS2401で取得した情報)から情報変化点を検出し、検出した情報変化点を行動変化点検出部4401に出力し、ステップS4701に進む。
 次いで、ステップS4701では、行動変化点検出部4401において、予備動作情報を検出し、動作生成部4402に出力し、ステップS4702に進む。
 次いで、ステップS4702では、行動変化点検出部4401において、予備動作情報が検出された時点以降に行動変化点を探索する。行動変化点検出部4401において、検出された行動変化点をフィードバック則生成部111に出力し、ステップS2405に進む。
 次いで、ステップS2405では、フィードバック則生成部111において、行動変化点検出部4401から取得した行動変化点以降の情報を近似曲線で表し、フィードバック則を生成し、動作生成部4402に出力し、ステップS3401に進む。
 次いで、ステップS3401では、実反応時間情報検出部3101において、行動変化点の時点と情報変化点の時点との差を取り、実反応時間情報を検出する。実反応時間情報検出部3101において、検出した実反応時間情報を動作生成部4402に出力し、フローを終了する。
 ステップS4703では、動作生成部4402において、行動変化点検出部4401から予備動作情報を取得した場合、予備動作情報を修正するか又は修正しないかを、人が入出力IF115を用いて選択するのを促す。よって、人が入出力IF115を用いて選択した選択情報を動作生成部4402に入力して、予備動作情報を修正するか、又は、修正しないかを選択する。予備動作情報を修正する場合は、ステップS4704に進む。予備動作情報を修正しない場合は、ステップS2406に進む。
 ステップS4704では、動作生成部4402において、予備動作情報を修正し、ステップS2406に進む。
 ステップS2406では、情報変化点が検出されたと情報変化点検出部109で判定された場合は、ステップS3402に進む。情報変化点が検出されなかったと情報変化点検出部109で判定された場合は、ステップS2408に進む。
 ステップS3402では、動作生成部4402において、フィードバック則を適用させる場合に、実反応時間情報における動作を削除するか又は削除しないかを、人が入出力IF115を用いて選択するのを促す。よって、人が入出力IF115を用いて選択した選択情報を動作生成部4402に入力して、実反応時間情報における動作を削除するか、又は、削除しないかを選択する。実反応時間情報における動作を削除する場合はステップS3403に進み、実反応時間情報における動作を削除しない場合はステップS3404に進む。
 ステップS3403では、動作生成部4402において、動作情報取得部106から取得した動作情報に対して、実反応時間情報における動作を削除してフィードバック則を適用させた動作情報を生成し、ステップS2408に進む。
 ステップS3404では、動作生成部4402において、動作情報取得部106から取得した動作情報に対して、実反応時間情報における動作を削除せずにフィードバック則を適用させた動作情報を生成し、ステップS2408に進む。
 ステップS2408では、動作生成部4402で生成された動作情報に基づいて制御部114でロボットアーム102を制御し、フローを終了する。
 第6実施形態によれば、予備動作情報を行動変化点検出部4401で検出して修正することによって、人の意図しない教示データを修正することができる。よって、正確な動作情報を作成することができ、環境変動が大きい場合においても、正確な作業が可能となる。また、予備動作をそのまま再生すると急激に移動するので、対象物の破損などの原因となる。このような場合、人の選択動作に基づき動作生成部4402によって予備動作情報を削除することによって、対象物の破損などを防ぐことができる。
 (第7実施形態)
 図48は、本発明の第6実施形態のロボット101のブロック図を示す。本発明の第3実施形態のロボット101におけるロボットアーム102と、周辺装置105と、制御装置103のうちの動作情報取得部106と、環境情報取得部107と、既定反応時間取得部108と、行動変化点検出部2501と、フィードバック則生成部111と、動作生成部3102と、モード切替部113と、実反応時間情報検出部3101と、制御部114とは第3実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
 情報変化点検出部4801は、情報変化点検出部109に代えて制御装置103に備えられ、第3実施形態における情報変化点検出部109の機能に加え、同じ時点に複数の環境情報が情報変化点として検出された場合、力情報、音量情報、対象物位置情報の優先順位で1つの情報に情報変化点を絞る機能を持つ。つまり、力情報と、音量情報と、対象物位置情報とが情報変化点として情報変化点検出部4801で検出された場合は、力情報を情報変化点として情報変化点検出部4801で用いる。また、力情報と音量情報とが情報変化点として情報変化点検出部4801で検出された場合は、力情報を情報変化点として情報変化点検出部4801で用いる。音量情報と対象物位置情報とが情報変化点として情報変化点検出部4801で検出された場合は、音量情報を情報変化点として情報変化点検出部4801で用いる。これは、人の反応時間は力覚情報、聴覚情報、視覚情報の順で早いためである。
 図49の(A)~(D)は教示データであり、図49の(A)が力情報、図49の(B)が音量情報、図49の(C)が対象物位置情報、図49の(D)が位置情報を示す。
 図49の(A)~(C)の参照符号A、B、Cは第1の閾値を上回っている時点である。この場合、複数の環境情報が情報変化点の候補として挙げられるので、優先順位に従い力情報(図49の(A)中の参照符号A)を情報変化点として情報変化点検出部4801で検出する。また、図49の(D)中の参照符号Dが行動変化点として情報変化点検出部4801で検出される。
 第7実施形態のロボットアーム102の制御装置103の操作手順を図50のフローチャートを用いて説明する。
 ステップS2401では、動作情報取得部106において動作情報を取得し、環境情報取得部107において環境情報を取得し、既定反応時間情報取得部108において既定反応時間情報を取得し、ステップS2402に進む。
 次いで、ステップS2402では、モード切替部113において、モード情報(「教示モード」か「再生モード」か)が制御部114に出力される。「教示モード」の場合は、ステップS5001に進む。「再生モード」の場合は、ステップS2406に進む。
 ステップS5001では、情報変化点検出部4801において、取得した教示データ(ステップS2401で取得した情報)から情報変化点を検出し、検出した情報変化点を行動変化点検出部2501に出力し、ステップS3001に進む。また、情報変化点検出部4801において、同じ時点に複数の環境情報が情報変化点として検出された場合、力情報、音量情報、対象物位置情報の優先順位で1つの環境情報を情報変化点として検出する。
 次いで、ステップS3001では、行動変化点検出部2501において、情報変化点検出部4801から取得した情報変化点の時点から既定反応時間が経過した時点以降に行動変化点を探索する。また、行動変化点検出部2501での探索の結果、行動変化点が検出されなかったと行動変化点検出部2501で判定した場合、情報変化点の時点から既定反応時間が経過した時点以前に検出された行動変化点を探索する。行動変化点検出部2501で検出された行動変化点を行動変化点検出部2501からフィードバック則生成部111に出力し、ステップS2405に進む。
 次いで、ステップS2405では、フィードバック則生成部111において、行動変化点検出部2501から取得した行動変化点以降の情報を近似曲線で表し、フィードバック則を生成し、動作生成部3102に出力し、ステップS3401に進む。
 次いで、ステップS3401では、実反応時間情報検出部3101において、行動変化点の時点と情報変化点の時点との差を取り、実反応時間情報を検出する。実反応時間情報検出部3101で検出した実反応時間情報を、実反応時間情報検出部3101から動作生成部3102に出力し、フローを終了する。
 ステップS2406では、情報変化点検出部4801において、情報変化点が検出されたと判定した場合は、ステップS3402に進む。情報変化点検出部4801において、情報変化点が検出されなかったと判定した場合は、ステップS2408に進む。
 ステップS3402では、動作生成部3102において、フィードバック則を適用させる場合に、実反応時間情報における動作を削除するか又は削除しないかを、人が入出力IF115を用いて選択するのを促す。よって、人が入出力IF115を用いて選択した選択情報を動作生成部3102に入力して、実反応時間情報における動作を削除するか、又は、削除しないかを選択する。実反応時間情報における動作を削除する場合はステップS3403に進み、実反応時間情報における動作を削除しない場合はステップS3404に進む。
 ステップS3403では、動作生成部3102において、動作情報取得部106から取得した動作情報に対して、実反応時間情報における動作を削除してフィードバック則を適用させた動作情報を生成し、ステップS2408に進む。
 ステップS3404では、動作生成部3102において、動作情報取得部106から取得した動作情報に対して、実反応時間情報における動作を削除せずにフィードバック則を適用させた動作情報を生成し、ステップS2408に進む。
 ステップS2408では、動作生成部3102で生成された動作情報に基づいて制御部114でロボットアーム102を制御し、フローを終了する。
 第7実施形態によれば、情報変化点として複数の環境情報がある場合においても、人が判断している環境情報を選択し、情報変化点として情報変化点検出部4801で検出することができる。よって、人の技能を正確に抽出することができ、ロボットによって正確な作業を行うことができる。
 (第8実施形態)
 図51Aは、本発明の第8実施形態のロボット101のブロック図を示す。本発明の第2実施形態のロボット101におけるロボットアーム102と、周辺装置105と、制御装置103のうちの動作情報取得部106と、環境情報取得部107と、既定反応時間取得部108と、フィードバック則生成部111と、動作生成部112と、モード切替部113と、制御部114とは第3実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
 情報変化点検出部5101と、行動変化点検出部5102とは、第2実施形態における情報変化点検出部109と、行動変化点検出部2501と機能はそれぞれ同じであるが、変化点を検出する方法が異なる。第7実施形態までの実施形態では、動作情報又は環境情報の変位により変化点を検出している。
 それに対して、第8実施形態では、取得した動作情報又は環境情報と、平滑化フィルタを用いて平滑化した動作情報又は環境情報とを情報変化点検出部5101又は行動変化点検出部5102で比較し、差が大きい箇所を変化点として情報変化点検出部5101又は行動変化点検出部5102で検出する。平滑化フィルタとしては、例えばガウシアンフィルタを用いる。このように情報変化点検出部5101又は行動変化点検出部5102で変化点を求めることによって、ノイズを変化点として検出せず、正確に変化点を検出することができる。
 図51Bは、情報変化点検出部5101の内部の詳細を示した図である。情報変化点検出部5101は、情報取得部5101Aと、演算部5101Bと、比較部5101Cと、検出部5101Dとを備えて構成している。
 情報取得部5101Aは、他の要素から情報変化点検出部5101に入力される情報を取得し、演算部5101B及び比較部5101Cに出力する。
 演算部5101Bは、情報取得部5101Aから取得した動作情報又は環境情報を平滑化フィルタを用いて平滑化し、平滑化した動作情報又は環境情報を比較部5101Cに出力する。
 比較部5101Cは、情報取得部5101Aから取得した動作情報又は環境情報と、演算部5101Bから取得した平滑化した動作情報又は環境情報とを比較する(差を求める)。比較部5101Cは、求めた比較情報を検出部5101Dに出力する。
 検出部5101Dは、比較部5101Cから入力された比較情報を基に、差が大きい箇所を情報変化点として検出する。つまり、比較情報が、検出用の閾値を超える箇所を情報変化点として検出する。
 図51Cは、行動変化点検出部5102の内部の詳細を示した図であり、その内部の変化点の導出方法は上述した情報変化点5101の場合と同様である。すなわち、行動変化点検出部5102は、情報取得部5102Aと、演算部5102Bと、比較部5102Cと、検出部5102Dとを備えて構成している。
 情報取得部5102Aは、他の要素から行動変化点検出部5102に入力される情報を取得し、演算部5102B及び比較部5102Cに出力する。
 演算部5102Bは、情報取得部5102Aから取得した動作情報又は環境情報を平滑化フィルタを用いて平滑化し、平滑化した動作情報又は環境情報を比較部5102Cに出力する。
 比較部5102Cは、情報取得部5102Aから取得した動作情報又は環境情報と、演算部5102Bから取得した平滑化した動作情報又は環境情報とを比較する(差を求める)。比較部5102Cは、求めた比較情報を検出部5102Dに出力する。
 検出部5102Dは、比較部5102Cから入力された比較情報を基に、差が大きい箇所を行動変化点として検出する。つまり、比較情報が、検出用の閾値を超える箇所を行動変化点として検出する。
 図52を用いて、力情報の変化点を導出する方法を説明する。図52における実線は環境情報取得部で取得した力情報であり、破線はその力情報をガウシアンフィルタを用いて平滑化した力情報である。上述した2つの力情報を比較し、その差が第4の閾値(変化点検出用閾値)(例えば、1N)を上回った時点を変化点として検出する(図52中の参照符号Aの箇所)。
 第8実施形態のロボットアーム102の制御装置103の操作手順を図53のフローチャートを用いて説明する。
 ステップS2401では、動作情報取得部106において動作情報を取得し、環境情報取得部107において環境情報を取得し、既定反応時間情報取得部108において既定反応時間情報を取得し、ステップS2402に進む。
 次いで、ステップS2402では、モード切替部113において、モード情報(「教示モード」か「再生モード」か)が制御部114に出力される。「教示モード」の場合は、ステップS5301に進む。「再生モード」の場合は、ステップS2406に進む。
 ステップS5301では、情報変化点検出部5101において、取得した教示データ(ステップS2401で取得した情報)から情報変化点を検出し、検出した情報変化点を行動変化点検出部5102に出力し、ステップS5302に進む。
 次いで、ステップS5302では、行動変化点検出部5102において、情報変化点検出部5101から取得した情報変化点の時点から既定反応時間が経過した時点以降に行動変化点を探索する。また、行動変化点検出部5102での探索の結果、行動変化点が検出されなかったと行動変化点検出部5102で判定した場合、情報変化点の時点から既定反応時間が経過した時点以前に検出された行動変化点を行動変化点検出部5102で探索する。行動変化点検出部5102で検出された行動変化点を、行動変化点検出部5102からフィードバック則生成部111に出力し、ステップS2405に進む。
 次いで、ステップS2405では、フィードバック則生成部111において、行動変化点検出部5102から取得した行動変化点以降の情報を近似曲線で表し、フィードバック則を生成し、動作生成部112に出力し、フローを終了する。
 ステップS2406では、情報変化点検出部5101において、情報変化点が検出されたと判定した場合は、ステップS2407に進む。情報変化点検出部5101において、情報変化点が検出されなかったと判定した場合は、ステップS2408に進む。
 ステップS2407では、動作生成部112において、動作情報取得部106から取得した動作情報にフィードバック則を適用させた動作情報を生成し、ステップS2408に進む。
 ステップS2408では、動作生成部112で生成された動作情報に基づいて制御部114でロボットアーム102を制御し、フローを終了する。
 第8実施形態によれば、情報変化点又は行動変化点を情報変化点検出部5101又は行動変化点検出部5102で検出する際に平滑化した情報を用いて求めることによって、ノイズの影響を軽減でき、正確に変化点を検出することができる。その結果、人の技能を正確に抽出することができ、ロボットにより正確に作業を行うことができる。
 なお、本発明を第1~第8実施形態及び変形例に基づいて説明してきたが、本発明は、前記の第1~第8実施形態及び変形例に限定されないのはもちろんである。以下のような場合も本発明に含まれる。
 前記各制御装置の一部又は全部は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記RAM又はハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、各部は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
 例えば、ハードディスク又は半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。なお、前記実施形態又は変形例における制御装置を構成する要素の一部又は全部を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、ロボットアームの動作を制御する前記ロボットアームの制御プログラムであって、
 前記ロボットアームが動作する際の前記ロボットアームの位置と、姿勢と、速度との少なくとも1つ以上の動作情報を動作情報取得部で取得するステップと、
 前記ロボットアームが動作する際に生じる周辺環境に関する力情報と、音量情報と、位置情報との少なくとも1つ以上の情報である環境情報を環境情報取得部で取得するステップと、
 人が前記ロボットアームを操作する際に前記環境情報を受けてから前記人が前記ロボットアームの操作を行うまでの既定の時間情報である既定反応時間情報を既定反応時間情報取得部で取得するステップと、
 前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報が変化する時点を情報変化点として情報変化点検出部で検出するステップと、
 前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報が変化する時点を、前記情報変化点から前記既定反応時間が経過した時点以降の時間を探索し、初めに検出された時点を行動変化点として行動変化点検出部で検出するステップと、
 前記行動変化点以降の時間の前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報をフィードバック則としてフィードバック則生成部で生成するステップと、
 1つ以上の前記動作情報と、前記情報変化点と、前記行動変化点と、前記フィードバック則とに基づいて、前記ロボットアームの動作を動作生成部で生成するステップと、
 前記動作生成部に基づいて、前記ロボットアームの前記動作を制御部で制御するステップとをコンピュータに実行させるための、ロボットアームの制御プログラムである。
 また、このプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体(例えば、CD-ROMなどの光ディスク、磁気ディスク、又は、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。
 また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
 なお、前記様々な実施形態又は変形例のうちの任意の実施形態又は変形例を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。
 本発明にかかるロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路は、刺激が発生した時点と反応時間が経過した後の行動の変化との関係から、フィードバック則を生成し、人の意図を正確に再現し、安全性の高い動作を生成することができ、産業用ロボット又は生産設備などにおける可動機構のロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路として有用である。また、本発明にかかるロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路は、産業用ロボットに限らず、家庭用ロボットのロボットアーム、ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路として適用される可能性もある。
 本発明は、添付図面を参照しながら実施形態に関連して充分に記載されているが、この技術の熟練した人々にとっては種々の変形又は修正は明白である。そのような変形又は修正は、添付した請求の範囲による本発明の範囲から外れない限りにおいて、その中に含まれると理解されるべきである。

Claims (16)

  1.  ロボットアームの動作を制御するロボットアームの制御装置であって、
     前記ロボットアームが動作する際の前記ロボットアームの位置と、姿勢と、速度との少なくとも1つ以上の動作情報を取得する動作情報取得部と、
     前記ロボットアームが動作する際に生じる周辺環境に関する力情報と、音量情報と、位置情報との少なくとも1つ以上の情報である環境情報を取得する環境情報取得部と、
     人が前記ロボットアームを操作する際に前記環境情報を受けてから前記人が前記ロボットアームの操作を行うまでの既定の時間情報である既定反応時間情報を取得する既定反応時間情報取得部と、
     前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報が変化する時点を情報変化点として検出する情報変化点検出部と、
     前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報が変化する時点を、前記情報変化点から前記既定反応時間が経過した時点以降の時間を探索し、初めに検出された時点を行動変化点として検出する行動変化点検出部と、
     前記行動変化点以降の時間の前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報をフィードバック則として生成するフィードバック則生成部と、
     1つ以上の前記動作情報と、前記情報変化点と、前記行動変化点と、前記フィードバック則とに基づいて、前記ロボットアームの動作を生成する動作生成部と、
     前記動作生成部に基づいて、前記ロボットアームの前記動作を制御する制御部とを備えるロボットアームの制御装置。
  2.  前記行動変化点検出部は、前記情報変化点から前記反応時間が経過した時点以降の時間に前記行動変化点が検出されないと判定した場合、前記反応時間が経過した時点以前の時間において前記情報変化点までの時間を探索し、初めに検出された時点を前記行動変化点として検出する請求項1に記載のロボットアームの制御装置。
  3.  前記情報変化点検出部で検出された前記情報変化点と前記行動変化点検出部で検出された前記行動変化点との時間差を実反応時間情報として検出する実反応時間情報検出部を備え、
     前記動作生成部は、前記人が前記ロボットアームを操作する際に前記動作情報取得部で取得した1つ以上の前記動作情報を、前記ロボットアームの動作を制御する際に前記情報変化点検出部で情報変化点が検出された場合は、前記フィードバック則生成部で生成された前記フィードバック則に従い修正する請求項2に記載のロボットアームの制御装置。
  4.  前記既定反応時間情報を測定する既定反応時間情報測定部をさらに備え、
     前記ロボットアームの制御装置で制御する前記ロボットアームの動作は組立作業であり、
     前記ロボットアームで組立作業を実験として予め行い、前記人が前記ロボットアームを操作する際に前記環境情報を受けてから前記人が前記ロボットアームの操作を行うまでの既定の時間情報である前記既定反応時間情報を前記既定反応時間情報測定部で測定して、前記組立作業の教示に使用する請求項3に記載のロボットアームの制御装置。
  5.  前記動作生成部は、1つ以上の前記動作情報と、前記情報変化点と、前記行動変化点と、前記フィードバック則とに基づいて、最も実反応時間情報が短い前記ロボットアームの動作を生成する請求項3に記載のロボットアームの制御装置。
  6.  前記行動変化点検出部は、前記動作情報が前記行動変化点として検出された場合、前記行動変化点から予備動作検出用閾値の時間を経過する間に前記動作情報が変化する時点が前記行動変化点も含めて2箇所あり、かつ、前記2箇所のうちの1箇所目の時点と2箇所目の時点との前記動作情報の大きさが同じ大きさのとき、前記2箇所目の時点以降の時間に前記行動変化点を探索し、
     前記動作生成部は、前記1箇所目の時点と前記2箇所目の時点との間の時間の前記動作情報を、前記1箇所目の時点と前記2箇所目の時点の前記動作情報の大きさと同じ大きさの動作情報に修正する請求項3に記載のロボットアームの制御装置。
  7.  前記情報変化点検出部には、1つの前記行動変化点に対して同じ時点に前記情報変化点となる前記環境情報が複数ある場合、前記情報変化点として、前記力情報があれば前記力情報を使用し、前記力情報がなければ前記音量情報を使用し、前記音量情報がなければ前記位置情報を使用する請求項3に記載のロボットアームの制御装置。
  8.  前記情報変化点検出部は、前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報の変位が情報変化点検出用閾値を上回る時点を情報変化点として検出し、
     前記行動変化点検出部は、前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報の変位が、行動変化点検出用閾値を上回る時点を行動変化点として検出すること請求項2に記載のロボットアームの制御装置。
  9.  前記情報変化点検出部及び前記行動変化点検出部は、1つ以上の前記動作情報と前記環境情報とをそれぞれ平滑化し、平滑化した情報と平滑化前の元の情報との差をそれぞれ求め、平滑化求めた差が変化点検出用閾値を上回る時点を変化点として検出する請求項2に記載のロボットアームの制御装置。
  10.  前記動作生成部において、
     前記実反応時間情報として検出された時間における、前記ロボットアームの動作を削除するように修正する請求項3に記載のロボットアームの制御装置。
  11.  前記動作生成部において、
     前記実反応時間情報として検出された時間における、前記ロボットアームの動作について、前記情報変化点での動作と前記行動変化点での動作とを基に補間するように修正する請求項3に記載のロボットアームの制御装置。
  12.  前記動作生成部において、
     前記実反応時間情報として検出された時間における、前記ロボットアームの動作について、
     前記情報変化点での情報と前記行動変化点での情報との差の絶対値が、動作修正切替用閾値以上のときは前記ロボットアームの動作を補間するように修正し、前記動作修正切替用閾値を下回るときは前記ロボットアームの動作を削除するように修正する請求項10又は11に記載のロボットアームの制御装置。
  13.  前記ロボットアームと、
     前記ロボットアームを制御する請求項1~11のいずれか1つに記載の前記ロボットアームの制御装置とを備えるロボット。
  14.  ロボットアームの動作を制御するロボットアームの制御方法であって、
     前記ロボットアームが動作する際の前記ロボットアームの位置と、姿勢と、速度との少なくとも1つ以上の動作情報を動作情報取得部で取得し、
     前記ロボットアームが動作する際に生じる周辺環境に関する力情報と、音量情報と、位置情報との少なくとも1つ以上の情報である環境情報を環境情報取得部で取得し、
     人が前記ロボットアームを操作する際に前記環境情報を受けてから前記人が前記ロボットアームの操作を行うまでの既定の時間情報である既定反応時間情報を既定反応時間情報取得部で取得し、
     前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報が変化する時点を情報変化点として情報変化点検出部で検出し、
     前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報の変位が変化する時点を、前記情報変化点から前記既定反応時間が経過した時点以降の時間を探索し、初めに検出された時点を行動変化点として行動変化点検出部で検出し、
     前記行動変化点以降の時間の前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報をフィードバック則としてフィードバック則生成部で生成し、
     1つ以上の前記動作情報と、前記情報変化点と、前記行動変化点と、前記フィードバック則とに基づいて、前記ロボットアームの動作を動作生成部で生成し、
     前記動作生成部に基づいて、前記ロボットアームの前記動作を制御部で制御するロボットアームの制御方法。
  15.  ロボットアームの動作を制御する前記ロボットアームの制御プログラムであって、
     前記ロボットアームが動作する際の前記ロボットアームの位置と、姿勢と、速度との少なくとも1つ以上の動作情報を動作情報取得部で取得するステップと、
     前記ロボットアームが動作する際に生じる周辺環境に関する力情報と、音量情報と、位置情報との少なくとも1つ以上の情報である環境情報を環境情報取得部で取得するステップと、
     人が前記ロボットアームを操作する際に前記環境情報を受けてから前記人が前記ロボットアームの操作を行うまでの既定の時間情報である既定反応時間情報を既定反応時間情報取得部で取得するステップと、
     前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報が変化する時点を情報変化点として情報変化点検出部で検出するステップと、
     前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報が変化する時点を、前記情報変化点から前記既定反応時間が経過した時点以降の時間を探索し、初めに検出された時点を行動変化点として行動変化点検出部で検出するステップと、
     前記行動変化点以降の時間の前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報をフィードバック則としてフィードバック則生成部で生成するステップと、
     1つ以上の前記動作情報と、前記情報変化点と、前記行動変化点と、前記フィードバック則とに基づいて、前記ロボットアームの動作を動作生成部で生成するステップと、
     前記動作生成部に基づいて、前記ロボットアームの前記動作を制御部で制御するステップとをコンピュータに実行させるための、ロボットアームの制御プログラム。
  16.  ロボットアームの動作を制御する集積電子回路であって、
     前記ロボットアームが動作する際の前記ロボットアームの位置と、姿勢と、速度との少なくとも1つ以上の動作情報を動作情報取得部で取得し、
     前記ロボットアームが動作する際に生じる周辺環境に関する力情報と、音量情報と、位置情報との少なくとも1つ以上の情報である環境情報を環境情報取得部で取得し、
     人が前記ロボットアームを操作する際に前記環境情報を受けてから前記人が前記ロボットアームの操作を行うまでの既定の時間情報である既定反応時間情報を既定反応時間情報取得部で取得し、
     前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報が変化する時点を情報変化点として情報変化点検出部で検出し、
     前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報の変位が変化する時点を、前記情報変化点から前記既定反応時間が経過した時点以降の時間を探索し、初めに検出された時点を行動変化点として行動変化点検出部で検出し、
     前記行動変化点以降の時間の前記動作情報取得部で取得した1つ以上の前記動作情報と前記環境情報取得部で取得した前記環境情報との少なくとも1つ以上の情報をフィードバック則としてフィードバック則生成部で生成し、
     1つ以上の前記動作情報と、前記情報変化点と、前記行動変化点と、前記フィードバック則とに基づいて、前記ロボットアームの動作を動作生成部で生成し、
     前記動作生成部に基づいて、前記ロボットアームの前記動作を制御部で制御する集積電子回路。
PCT/JP2012/003257 2011-08-24 2012-05-18 ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路 WO2013027313A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013529840A JP5583282B2 (ja) 2011-08-24 2012-05-18 ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路
US14/186,230 US9486920B2 (en) 2011-08-24 2014-02-21 Control apparatus and control method for robot arm, robot, control program for robot arm, and integrated electronic circuit

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011-182906 2011-08-24
JP2011182906 2011-08-24

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/186,230 Continuation US9486920B2 (en) 2011-08-24 2014-02-21 Control apparatus and control method for robot arm, robot, control program for robot arm, and integrated electronic circuit

Publications (1)

Publication Number Publication Date
WO2013027313A1 true WO2013027313A1 (ja) 2013-02-28

Family

ID=47746090

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/003257 WO2013027313A1 (ja) 2011-08-24 2012-05-18 ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路

Country Status (3)

Country Link
US (1) US9486920B2 (ja)
JP (1) JP5583282B2 (ja)
WO (1) WO2013027313A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10367650B2 (en) 2017-11-06 2019-07-30 Cognizant Technology Solutions India Pvt. Ltd. System and method for efficiently developing and testing home automation systems

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013035244A1 (ja) * 2011-09-06 2013-03-14 パナソニック株式会社 ロボットアームの制御装置及び制御方法、ロボット、制御プログラム、並びに、集積電子回路
US9694495B1 (en) * 2013-06-24 2017-07-04 Redwood Robotics Inc. Virtual tools for programming a robot arm
EP3263291A4 (en) * 2015-02-26 2018-11-21 Olympus Corporation Operation input device and medical manipulator system
KR101962889B1 (ko) * 2015-07-27 2019-03-28 한국전자통신연구원 작업환경 변화에 적응적인 로봇 동작 데이터 제공장치 및 그 방법
US10806534B2 (en) * 2015-08-25 2020-10-20 Kawasaki Jukogyo Kabushiki Kaisha Information sharing system and method of sharing information between a plurality of robot systems
DE102015012959B4 (de) * 2015-10-08 2019-01-17 Franka Emika Gmbh Robotersystem und Verfahren zur Steuerung eines Robotersystems
JP6575685B2 (ja) * 2016-07-26 2019-09-18 日産自動車株式会社 自己位置推定方法及び自己位置推定装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0623682A (ja) * 1992-07-06 1994-02-01 Mitsubishi Electric Corp ロボットの制御装置
JP2006192548A (ja) * 2005-01-17 2006-07-27 Institute Of Physical & Chemical Research 身まねロボットシステムとその身まね動作制御方法
JP2010234521A (ja) * 2009-01-22 2010-10-21 Panasonic Corp ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路
JP2011088273A (ja) * 2009-09-28 2011-05-06 Panasonic Corp ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、及び、ロボットアーム制御用集積電子回路

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008134903A (ja) 2006-11-29 2008-06-12 Yaskawa Electric Corp ロボットの教示再生装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0623682A (ja) * 1992-07-06 1994-02-01 Mitsubishi Electric Corp ロボットの制御装置
JP2006192548A (ja) * 2005-01-17 2006-07-27 Institute Of Physical & Chemical Research 身まねロボットシステムとその身まね動作制御方法
JP2010234521A (ja) * 2009-01-22 2010-10-21 Panasonic Corp ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路
JP2011088273A (ja) * 2009-09-28 2011-05-06 Panasonic Corp ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、及び、ロボットアーム制御用集積電子回路

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10367650B2 (en) 2017-11-06 2019-07-30 Cognizant Technology Solutions India Pvt. Ltd. System and method for efficiently developing and testing home automation systems

Also Published As

Publication number Publication date
JPWO2013027313A1 (ja) 2015-03-05
US20140172143A1 (en) 2014-06-19
JP5583282B2 (ja) 2014-09-03
US9486920B2 (en) 2016-11-08

Similar Documents

Publication Publication Date Title
JP5583282B2 (ja) ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路
JP5512048B2 (ja) ロボットアームの制御装置及び制御方法、ロボット、制御プログラム、並びに、集積電子回路
Wilson et al. Formulation of a new gradient descent MARG orientation algorithm: Case study on robot teleoperation
US11685042B2 (en) Working robot and control method for working robot
US11498216B2 (en) Remote control manipulator system and control device
US8175750B2 (en) Control apparatus and control method for robot arm, robot, control program for robot arm, and robot arm control-purpose integrated electronic circuit
JP6504541B2 (ja) マスタスレーブロボットの制御装置及び制御方法、マスタスレーブロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路
Tsunashima et al. Spatiotemporal coupler: Storage and reproduction of human finger motions
JP7483321B2 (ja) 制御装置、制御方法、ロボットシステム、物品の製造方法、表示装置、プログラム及び記録媒体
JP2010058202A (ja) ロボットの教示再生装置および教示再生方法
JP2018167334A (ja) 教示装置および教示方法
Bian et al. An extended DMP framework for robot learning and improving variable stiffness manipulation
WO2017088888A1 (en) Robot trajectory or path learning by demonstration
US20180117764A1 (en) Force control coordinate axis setting device, robot, and force control coordinate axis setting method
Simonič et al. Analysis of methods for incremental policy refinement by kinesthetic guidance
JP5948914B2 (ja) ロボット制御装置、ロボット制御方法、ロボット制御プログラムおよびロボットシステム
EP4400274A1 (en) Command value generating device, method, and program
JP6625266B1 (ja) ロボット制御装置
JP2013043250A (ja) ロボットアームの制御装置及び制御方法、ロボット、制御プログラム、並びに、集積電子回路
JP2013111684A (ja) ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、ロボットアームの制御用集積電子回路
JPH06250730A (ja) 産業用ロボットの教示装置
Kramberger A comparison of learning-by-demonstration methods for force-based robot skills
JP6743431B2 (ja) 制御装置、及びロボットシステム
Arsenopoulos et al. A human-robot interface for industrial robot programming using RGB-D sensor
JP2002361581A (ja) 作業自動化装置、作業自動化方法およびその方法を記憶した記憶媒体

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

Country of ref document: EP

Kind code of ref document: A1

DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)
ENP Entry into the national phase

Ref document number: 2013529840

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12825106

Country of ref document: EP

Kind code of ref document: A1