WO2011021376A1 - Control device and control method for robot arm, household robot, control program for robot arm, and integrated electronic circuit for controlling robot arm - Google Patents

Control device and control method for robot arm, household robot, control program for robot arm, and integrated electronic circuit for controlling robot arm Download PDF

Info

Publication number
WO2011021376A1
WO2011021376A1 PCT/JP2010/005055 JP2010005055W WO2011021376A1 WO 2011021376 A1 WO2011021376 A1 WO 2011021376A1 JP 2010005055 W JP2010005055 W JP 2010005055W WO 2011021376 A1 WO2011021376 A1 WO 2011021376A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot arm
correction
force
information
unit
Prior art date
Application number
PCT/JP2010/005055
Other languages
French (fr)
Japanese (ja)
Inventor
優子 津坂
安直 岡▲崎▼
Original Assignee
パナソニック株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by パナソニック株式会社 filed Critical パナソニック株式会社
Publication of WO2011021376A1 publication Critical patent/WO2011021376A1/en

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/423Teaching successive positions by walk-through, i.e. the tool head or end effector being grasped and guided directly, with or without servo-assistance, to follow a path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36418Modify trajectory by operator gesture, gesture force sensed by end effector
    • 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/39343Force based impedance 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40411Robot assists human in non-industrial environment like home or office

Definitions

  • the present invention relates to a robot arm control device and control method for generating and teaching a housework operation of a robot that performs housework in a home, a robot arm and a housework robot having the control device, a robot arm control program, and a robot arm control
  • the present invention relates to an integrated electronic circuit.
  • home robots such as care robots or housework support robots have been actively developed. Unlike a robot for industrial use, a home robot is operated by an amateur at home, so it is necessary to be able to easily teach the operation. Furthermore, since the operating environment when the robot is working varies depending on the home, it is necessary to flexibly cope with the home environment.
  • a force sensor is attached to the wrist of the robot, the teaching operator directly holds the handle attached to the tip of the force sensor, and the robot is guided to the teaching point. Teaching is performed (see Patent Document 1).
  • Patent Document 1 since it is necessary for the teaching worker to teach all teaching points, teaching takes time and is very troublesome. Furthermore, in the industrial field, when correcting a part of the taught movement, it must be corrected by programming with a remote device called a teaching pendant, or all operations must be taught from the beginning. Was bad.
  • Patent Document 2 the teaching worker understands the intention of the teaching worker and directly changes the operational feeling during the operation when the teaching worker directly teaches. It does not understand the operation intention other than the operational feeling such as which parameter is to be operated among a plurality of types of teaching parameters such as speed. Therefore, it is necessary for the work teacher to explicitly set which parameter the work teacher teaches. Furthermore, part of the taught movement could not be corrected, and work efficiency was poor.
  • An object of the present invention has been made in view of such problems, and a robot arm control device and method, a housework robot, and a robot arm that enable an operator to teach a robot easily and in a short time. And an integrated electronic circuit for controlling a robot arm.
  • the present invention is configured as follows.
  • a control device for a robot arm that controls the operation of the robot arm and performs housework work while acting on the object of housework work by the robot arm in the home,
  • Force detecting means for detecting the force of a person acting on the robot arm
  • An information acquisition unit for acquiring information on the operation including the position of the robot arm in the housework and information on the human force detected by the force detection unit
  • Object state determination means for determining the state of the object; The motion from the information regarding the motion including the position of the robot arm in the housework work acquired by the information acquisition unit, the information regarding the force of the person, and the state of the target determined by the target state determination means.
  • Corrective action type determining means for determining the type of corrective action for correcting Information regarding the human force detected by the force detection unit and acquired by the information acquisition unit and the correction operation determined by the correction operation type determination unit during the domestic work of the robot arm determined in advance.
  • a control device for a robot arm comprising a motion correction means for controlling the robot arm and correcting the motion according to the type.
  • a control method for a robot arm that controls the operation of the robot arm and performs housework work while acting on an object of housework work by the robot arm in the home, Detecting the force of the person acting on the robot arm with force detection means, Information on the operation including the position of the robot arm in the housework and information on the human force detected by the force detection means are respectively acquired by the information acquisition unit, The state of the object is determined by the object state determination means, The motion from the information regarding the motion including the position of the robot arm in the housework work acquired by the information acquisition unit, the information regarding the force of the person, and the state of the target determined by the target status determination means.
  • the corrective action type determining means determines the type of corrective action to correct the human force detected by the force detecting means and acquired by the information acquisition unit during the housework of the robot arm determined in advance.
  • a control method of the robot arm wherein the robot arm is controlled and the motion is corrected by the motion correction means according to the information relating to the information and the type of the correction motion determined by the correction motion type determination means provide.
  • the robot arm There is provided a domestic robot comprising the robot arm control device according to any one of the first to fourteenth aspects for controlling the robot arm.
  • a control program for a robot arm that controls the operation of the robot arm and performs housework work while acting on the object of housework work by the robot arm in the home, Information related to the operation including the position of the robot arm in the housework and information detected by the force detection means and acquired by the information acquisition unit and determined by the object state determination means Determining a type of correction operation for correcting the operation from the state of the object by a correction operation type determination unit; Information regarding the human force detected by the force detection unit and acquired by the information acquisition unit and the correction operation determined by the correction operation type determination unit during the housework work of the robot arm determined in advance and the correction operation type determination unit
  • a robot arm control program for causing a computer to execute an operation correction step of controlling the robot arm and correcting the operation by an operation correction unit according to the type.
  • an integrated electronic circuit for controlling a robot arm that controls the operation of a robot arm and performs domestic work while acting on an object of domestic work by the robot arm in the home, Information related to the operation including the position of the robot arm in the housework and information detected by the force detection means and acquired by the information acquisition unit and determined by the object state determination means
  • a correction operation type determining means for determining a type of correction operation for correcting the operation from the state of the object; Information regarding the human force detected by the force detection unit and acquired by the information acquisition unit and the correction operation determined by the correction operation type determination unit during the housework work of the robot arm determined in advance and the correction operation type determination unit
  • an integrated electronic circuit for controlling a robot arm comprising: an operation correcting unit that controls the robot arm according to the type to correct the operation.
  • the force detection means As described above, according to the robot arm control device and the housework robot of the present invention, the force detection means, the information acquisition unit, the object state determination means, the correction action type determination means, and the action correction means.
  • the robot By having the robot, the robot can easily correct the housework operation according to the force of the person using the information about the action including the position of the robot arm in the housework and the information about the person's force.
  • the arm can be controlled.
  • the robot arm control integrated electronic circuit includes the correction operation type determination means and the operation correction means. It is possible to control the robot arm that can easily correct the housework operation according to the information related to the operation including the position of the robot arm and the information related to the human force.
  • correction operation type determination means it is possible to automatically switch and correct a plurality of operations without using a button or the like.
  • correction operation type determination means it is possible to switch between performing a plurality of types of corrections at a time or performing one type of correction in accordance with the skill of the operator.
  • control parameter management means by further comprising the control parameter management means and the impedance control means, by setting the mechanical impedance value of the robot arm according to the type of the correction operation, the mechanical impedance according to the correction direction of the robot arm. It is possible to control by changing the value, or to weaken or stop the suction force or the force on the work surface being corrected.
  • FIG. 1 is a diagram showing an outline of a configuration of a control device for a robot arm in the first embodiment of the present invention.
  • FIG. 2A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention;
  • FIG. 2B is a diagram illustrating an operation state of the robot arm control device according to the first embodiment of the present invention;
  • FIG. 3 is a diagram showing a detailed configuration of the robot arm control device and the robot arm that is a control target that constitute the housework robot in the first embodiment of the present invention;
  • FIG. 1 is a diagram showing an outline of a configuration of a control device for a robot arm in the first embodiment of the present invention.
  • FIG. 2A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 2B is a diagram illustrating an operation state of the robot arm control device according to the first embodiment of the present invention
  • FIG. 3 is a diagram showing a detailed configuration of the robot arm control
  • FIG. 4 is a diagram illustrating a list of operation information in an operation database of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 5 is a diagram for explaining information about an operation database flag of the robot arm control device according to the first embodiment of the present invention
  • FIG. 6 is a diagram for explaining information relating to a correction parameter flag of the robot arm control device according to the first embodiment of the present invention
  • FIG. 7 is a block diagram illustrating a configuration of a control unit of the robot arm control device according to the first embodiment of the present invention
  • FIG. 8 is a diagram relating to the path of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 9 is a diagram illustrating an operation state of the robot arm control device according to the first embodiment of the present invention
  • FIG. 10 is a diagram for explaining a list of work impossible area database information of the robot arm control device according to the first embodiment of the present invention
  • FIG. 11 is a diagram relating to a path of the robot arm control device according to the first embodiment of the present invention
  • FIG. 12A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 12B is a plan view (a view of FIG. 12A seen from above) showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 12C is a plan view showing an operation state of the robot arm control device according to the first embodiment of the present invention
  • FIG. 12A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 12B is a plan view (a view of FIG. 12A seen from above) showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 12C is a plan view showing an operation state
  • FIG. 12D is a plan view showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 13A is a diagram relating to a coordinate system of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 13B is a diagram related to a coordinate system of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 13C is a diagram related to a coordinate system of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 14 is a flowchart showing the operation steps of the correction operation type determination unit of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 13A is a diagram relating to a coordinate system of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 13B is a diagram related to a coordinate system of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 13C is a diagram related to a coordinate system of the control device for the robot arm in
  • FIG. 15 is a diagram illustrating a relationship between the force applied by a person of the control device for the robot arm and the time thereof in the first embodiment of the present invention
  • FIG. 16A is a side view showing an operation state of the robot arm control device according to the first embodiment of the present invention
  • FIG. 16B is a plan view showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 16C is a plan view showing an operation state of the robot arm control device according to the first embodiment of the present invention
  • FIG. 17 is a flowchart showing the operation steps of the correction operation type determination unit of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 16A is a side view showing an operation state of the robot arm control device according to the first embodiment of the present invention
  • FIG. 16B is a plan view showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 16C is a plan view showing an operation state of the robot arm control device according to the
  • FIG. 18A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 18B is a diagram illustrating an operation state of the robot arm control device according to the first embodiment of the present invention
  • FIG. 19 is a diagram illustrating a correspondence between a force applied by a person of the control device for the robot arm and a suction force in the first embodiment of the present invention
  • FIG. 20A is a diagram illustrating an operation state of the robot arm control device according to the first embodiment of the present invention
  • FIG. 20B is an enlarged plan view of the suction nozzle when explaining the operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 21 is a diagram illustrating a display unit of a peripheral device of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 22 is a diagram illustrating an operation state of the robot arm control device according to the first embodiment of the present invention
  • FIG. 23 is a diagram illustrating an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 24 shows operation steps of an operation correction unit, a correction operation type determination unit, an operation selection unit, an operation storage unit, an operation database, and a control parameter management unit of the robot arm control device according to the first embodiment of the present invention. It is a flowchart
  • FIG. 25 is a flowchart showing the operation steps of the control unit of the robot arm control device according to the first embodiment of the present invention
  • FIG. 25 is a flowchart showing the operation steps of the control unit of the robot arm control device according to the first embodiment of the present invention
  • FIG. 25 is a flowchart showing the operation steps of the control unit of the robot arm control device according to
  • FIG. 26 is a diagram illustrating a data input IF of a peripheral device of the robot arm control device according to the first embodiment of the present invention.
  • FIG. 27A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 27B is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 27C is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 28A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 28B is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 28A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 28B is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 28C is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 29A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 29B is a plan view (a view of FIG. 29A seen from above) showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 29C is a plan view showing an operation state of the robot arm control device according to the first embodiment of the present invention
  • FIG. 29D is a plan view showing an operation state of the robot arm control device according to the first embodiment of the present invention
  • FIG. 30A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 30B is a plan view (a view of FIG. 30A seen from above) showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 30C is a plan view showing an operation state of the robot arm control device according to the first embodiment of the present invention
  • FIG. 30D is a plan view showing an operation state of the robot arm control device according to the first embodiment of the present invention
  • FIG. 31 is a diagram illustrating an operation state of the robot arm control device according to the first embodiment of the present invention
  • FIG. 32A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 32B is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 32C is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention
  • FIG. 33 is a diagram for explaining the force and position threshold values of the robot arm control device according to the first embodiment of the present invention
  • FIG. 34 is a diagram showing an outline of the configuration of the control device for the robot arm in the second embodiment of the present invention.
  • FIG. 35 is a diagram for explaining a list of operation information in the operation database of the control device for the robot arm in the second embodiment of the present invention.
  • FIG. 36A is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention;
  • FIG. 36B is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention;
  • FIG. 36C is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention
  • FIG. 37 is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention
  • FIG. 38A is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention
  • FIG. 38B is a plan view showing the operation state of the control device for the robot arm according to the second embodiment of the present invention (a view of FIG. 38A as viewed from above);
  • FIG. 38C is a plan view showing an operation state of the robot arm controller in the second embodiment of the present invention;
  • FIG. 38D is a plan view showing an operation state of the robot arm control device according to the second embodiment of the present invention;
  • FIG. 38A is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention
  • FIG. 38B is a plan view showing the operation state of the control device for the robot arm according to the second embodiment of the present
  • FIG. 39A is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention
  • FIG. 39B is a diagram illustrating an operation state of the robot arm control device according to the second embodiment of the present invention
  • FIG. 39C is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention
  • FIG. 40A is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention
  • FIG. 40B is a diagram illustrating an operation state of the robot arm control device according to the second embodiment of the present invention
  • FIG. 40C is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention
  • FIG. 40A is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention
  • FIG. 40B is a diagram illustrating an operation state of the robot arm control device according to the second embodiment of the present invention
  • FIG. 40C is a diagram showing an operation state of the
  • FIG. 41A is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention
  • FIG. 41B is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention
  • FIG. 41C is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention
  • FIG. 42 is a flowchart showing the operation steps of the correction operation type determination unit of the control device for the robot arm in the second embodiment of the present invention
  • FIG. 43 is a diagram illustrating a detailed configuration of the robot arm control device and the robot arm that is a control target that configure the housework robot according to the second embodiment of the present invention
  • FIG. 41A is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention
  • FIG. 41B is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention
  • FIG. 41C is a diagram showing an operation state of the control device for the robot arm
  • FIG. 44A is a diagram illustrating a list of work procedure information in a work procedure information database of the control device for the robot arm in the second embodiment of the present invention
  • FIG. 44B is a diagram illustrating a list of work procedure information in a work procedure information database of the control device for the robot arm in the second embodiment of the present invention
  • FIG. 44C is a diagram illustrating a list of work procedure information in the work procedure information database of the robot arm control device according to the second embodiment of the present invention
  • FIG. 45 is a diagram illustrating a detailed configuration of the robot arm control device and the robot arm that is a control target that constitute the housework robot according to the second embodiment of the present invention.
  • a control device for a robot arm that controls the operation of the robot arm and performs housework work while acting on the object of housework work by the robot arm in the home,
  • Force detecting means for detecting the force of a person acting on the robot arm
  • An information acquisition unit for acquiring information on the operation including the position of the robot arm in the housework and information on the human force detected by the force detection unit
  • Object state determination means for determining the state of the object; The motion from the information regarding the motion including the position of the robot arm in the housework work acquired by the information acquisition unit, the information regarding the force of the person, and the state of the target determined by the target state determination means.
  • Corrective action type determining means for determining the type of corrective action for correcting Information regarding the human force detected by the force detection unit and acquired by the information acquisition unit and the correction operation determined by the correction operation type determination unit during the domestic work of the robot arm determined in advance.
  • a control device for a robot arm comprising a motion correction means for controlling the robot arm and correcting the motion according to the type.
  • the information related to the operation includes information on the position of the robot arm according to the housework performed by the robot arm, and force information applied to the work surface from the robot arm, Among the information regarding the direction of the robot arm, the information regarding the strength of the suction force of the robot arm, the speed information of the robot arm, and the work disabling area information which is information regarding the area where the robot arm is not operated
  • the robot arm control device is characterized by having at least one of the following information.
  • the information related to the movement includes information on force applied from the robot arm to the work surface according to the housework performed by the robot arm, and strength of the suction force of the robot arm.
  • the motion correction unit is configured to apply a force control mode in which a predetermined force is applied from the robot arm to the work surface based on the information related to the motion in the xyz axis direction in which the robot arm can move.
  • the robot arm control device according to the first aspect is characterized in that the magnitude or direction of the set force among the information regarding the correction is corrected.
  • a force control mode for performing the operation by applying a preset force from the robot arm to the work surface based on the information related to the operation in the xyz-axis direction in which the robot arm can move While the operation is being performed by the robot arm by setting for each axis, the setting of the information related to the operation before the correction operation is set according to the force of the person detected by the force detection means. The magnitude or direction of the applied force can be corrected.
  • the information related to the movement includes information on the position of the robot arm, information on the direction of the robot arm, and the robot arm according to the housework performed by the robot arm.
  • Speed information and work non-working area information that is information related to a work non-working area
  • the motion correction means is configured to apply a force applied to the robot arm from the person to the robot arm while operating in a position control mode for controlling the position of the robot arm based on information on the motion.
  • the impedance detection mode in which the robot arm operates is set for each axis in the xyz axis direction in which the robot arm can move, and the operation is performed while the operation is being performed.
  • the robot arm control device according to the first aspect is characterized in that the operation of the information related to the operation in the impedance control is corrected according to the human force acquired by the information acquisition unit.
  • the force detection unit is configured to operate the operation while setting an impedance control mode in which the robot arm operates according to a force applied to the arm for each axis in the xyz axis direction in which the robot arm can move.
  • the operation of the information related to the operation in the impedance control can be corrected according to the force of the person detected in (1).
  • control parameter management means for setting a mechanical impedance setting value of the robot arm based on the type of the correction action determined by the correction action type determination means;
  • the apparatus further comprises impedance control means for controlling the mechanical impedance value of the robot arm to the mechanical impedance set value set by the control parameter management means.
  • a control device for the described robot arm is provided.
  • the impedance control means individually sets the mechanical impedance setting values in the six axes of the translational direction and the rotational direction of the hand of the robot arm based on the type of the correction operation. And Further, when correcting the direction of the robot arm of the hand as the type of the correction operation determined by the correction operation type determination unit, the control parameter management means, the rigidity of the robot arm in the direction to be corrected, the robot arm control device according to the fifth aspect, wherein the mechanical impedance set value is set so as to be higher than the rigidity of the robot arm in a direction different from the direction to be corrected.
  • the direction in which the hand is desired to be corrected is made highly rigid, so that it becomes easier to detect the amount of change in the direction to be corrected and the robot arm can be moved in the direction to be corrected.
  • the direction different from the direction to be corrected low and highly rigid it can be made difficult to move.
  • the correction operation type determination means detects the amount of movement of the position of the hand of the robot arm in a direction parallel to the work surface, When the force component in the direction perpendicular to the work surface is equal to or less than a first threshold and the force component in the direction parallel to the work surface is equal to or greater than a second threshold, When the amount of movement of the position of the hand of the robot arm detected by the correction operation type determining means in the direction parallel to the work surface is equal to or greater than a third threshold value, the position of the work surface is determined as the type of correction operation.
  • the motion correction means according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction action determined by the correction action type determination means,
  • the robot arm control device according to the first aspect, wherein the position of the hand of the robot arm is corrected in a direction parallel to the work surface.
  • the correction operation type determination means detects the amount of movement of the position of the hand of the robot arm in a direction perpendicular to the work surface,
  • the correction operation type determination means has a force component in a direction perpendicular to the work surface equal to or greater than a first threshold, and the operation at the position of the hand of the robot arm detected by the correction operation type determination means.
  • the type of the correction operation is determined as the type of movement of the position in the direction perpendicular to the work surface.
  • the motion correction means according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction action determined by the correction action type determination means,
  • the robot arm control device according to the first aspect, wherein the position of the hand of the robot arm is corrected in a direction perpendicular to the work surface.
  • the correction operation type determining means detects the amount of movement of the position of the hand of the robot arm in a direction perpendicular to the work surface
  • the correction operation type determination means has a force component in a direction perpendicular to the work surface equal to or greater than a first threshold, and the operation at the position of the hand of the robot arm detected by the correction operation type determination means.
  • the type of correction operation is determined to be a correction type of force application .
  • the motion correction means according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction operation determined by the correction operation type determination means,
  • the robot arm control device according to the first aspect, wherein the force applied by the robot arm in a direction perpendicular to the work surface is corrected.
  • the correction operation type determination means detects the amount of movement of the position of the hand of the robot arm in a direction perpendicular to the work surface,
  • the correction operation type determination means has a force component in a direction perpendicular to the work surface equal to or greater than a first threshold, and the operation at the position of the hand of the robot arm detected by the correction operation type determination means.
  • the motion correction means according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction action determined by the correction action type determination means, The robot arm control device according to the first aspect, wherein the suction force in a direction perpendicular to the work surface is corrected.
  • the correction operation type determination means detects the amount of movement of the position of the hand of the robot arm in a direction parallel to the work surface
  • the correction operation type determination unit is configured to correct the correction when a force component in a direction perpendicular to the work surface is less than a first threshold value and a force component in a direction parallel to the work surface is greater than or equal to a second threshold value.
  • the correction action type is a speed correction type.
  • the motion correction means according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction action determined by the correction action type determination means,
  • the robot arm control device according to the first aspect, wherein the speed of the position of the hand of the robot arm is corrected in a direction parallel to the work surface.
  • the correction action type determination means is a force applied to the robot arm based on the force of the person applied to the robot arm detected by the force detection means and acquired by the information acquisition unit. If the displacement amount of the posture is larger than the displacement amount of the position component, the type of the correction operation is determined. Determined to be the type of posture correction, Further, the motion correction means, according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction operation determined by the correction operation type determination means, The robot arm control device according to the first aspect, wherein the posture of the hand of the robot arm is corrected.
  • the robot arm According to the human force detected by the force detection unit and acquired by the information acquisition unit and the type of the correction operation determined by the correction operation type determination unit, the robot arm The drive device of the robot arm can be reliably driven and controlled so as to correct the posture of the hand.
  • the correction operation type determination means detects the amount of movement of the position of the hand of the robot arm in a direction parallel to the work surface
  • the correction operation type determination means is configured so that a force applied to the robot arm by the human hand is parallel to the work surface and parallel to the work surface for a certain time detected by the correction operation type determination means.
  • the motion correction means according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction action determined by the correction action type determination means, The robot arm control device according to the first aspect, wherein the work impossible area is set by moving the position of the hand of the robot arm.
  • the work-impossible area can be easily set, and work can be made unnecessary for an area that is not desired to be worked.
  • the apparatus further comprises display means for displaying information on the type of the correction operation based on the type of the correction operation determined by the correction operation type determination unit.
  • display means for displaying information on the type of the correction operation based on the type of the correction operation determined by the correction operation type determination unit.
  • a control method for a robot arm that controls the operation of the robot arm and performs housework work while acting on an object of housework work by the robot arm in the home, Detecting the force of the person acting on the robot arm with force detection means, Information on the operation including the position of the robot arm in the housework and information on the human force detected by the force detection means are respectively acquired by the information acquisition unit, The state of the object is determined by the object state determination means, The motion from the information regarding the motion including the position of the robot arm in the housework work acquired by the information acquisition unit, the information regarding the force of the person, and the state of the target determined by the target state determination means.
  • the type of correction operation for correcting the correction is determined by the correction operation type determination means, Information regarding the human force detected by the force detection unit and acquired by the information acquisition unit and the correction operation determined by the correction operation type determination unit during the domestic work of the robot arm determined in advance.
  • a robot arm control method is provided, wherein the robot arm is controlled according to the type, and the motion is corrected by a motion correction means.
  • the correction type of the movement is determined based on information on the movement of the robot arm, the human force is detected, and the work of the robot arm is performed according to the human force and the correction type. The operation can be corrected.
  • the robot arm There is provided a domestic robot comprising the robot arm control device according to any one of the first to fourteenth aspects for controlling the robot arm.
  • a control program for a robot arm that controls the operation of the robot arm and performs housework work while acting on the object of housework work by the robot arm in the home, Information on the operation including the position of the robot arm in the housework and information on the force of the person acting on the robot arm detected by the force detection unit and acquired by the information acquisition unit and determined by the object state determination unit Determining a type of correction operation for correcting the operation from the state of the object by a correction operation type determination means; Information regarding the human force detected by the force detection unit and acquired by the information acquisition unit and the correction operation determined by the correction operation type determination unit during the housework work of the robot arm determined in advance and the correction operation type determination unit There is provided a robot arm control program for causing a computer to execute an operation correction step of controlling the robot arm and correcting the operation by an operation correction unit according to the type.
  • an integrated electronic circuit for controlling a robot arm that controls the operation of a robot arm and performs domestic work while acting on an object of domestic work by the robot arm in the home, Information on the motion including the position of the robot arm in the housework and information on the force of the person acting on the robot arm detected by the force detection means and acquired by the information acquisition unit and determined by the object state determination means
  • Corrective action type determining means for determining the type of corrective action for correcting the action from the state of the object;
  • an integrated electronic circuit for controlling a robot arm comprising: an operation correcting unit that controls the robot arm according to the type to correct the operation.
  • the household robot 1 includes a robot arm 5 and a control device 1000 that drives and controls the robot arm 5, and drives and controls the driving devices 65, 67, 43, and 62 with the control device 1000 in the home. The above work is performed.
  • the robot arm 5 is installed on a wall surface 7a of a work table 7 such as a kitchen or a table in the home, and the base end of the robot arm 5 is movably supported on a rail 8 fixed to the wall surface 7a.
  • the robot arm 5 can move in the lateral direction along the rail 8, for example, in the horizontal direction, automatically by the force of the hand 16 of the person 16 ⁇ / b> A or by a motor or the like.
  • the fixing position of the base end of the robot arm 5 is not limited to the wall surface 7a of the work table 7, but may be a ceiling or the like.
  • the side surface of the work table 7 includes a data input IF 26 such as an operation panel 26A on which buttons 26a and the like are arranged, and a display unit 14 as an example of display means arranged on the wall surface of the work table 7 and the like. Has been.
  • the rail 8 includes a rail fixing portion 8a fixed to the wall surface 7a, and a wheel (not shown) that is driven to rotate forward and backward by driving a motor 65 that is an example of a driving device for the rail movable portion. It is comprised with the rail movable part 8b which can move with respect to 8a.
  • the base part 34 to which the base end of the robot arm 5 is connected is connected to the rail movable part 8b, and the base part 34 of the robot arm 5 is configured to be movable together with the rail movable part 8b with respect to the rail fixing part 8a. ing.
  • a wheel that is driven to rotate forward and backward by a motor 65 is provided on the base portion 34 to which the base end of the robot arm 5 is connected, and along the rail 8 fixed to the wall surface 7a, It is good also as a structure that the base part 34 moves.
  • a suction nozzle 9 as an example of a cleaning unit is detachably attached to the tip of the robot arm 5 so as to be detachable.
  • the suction nozzle 9 is rotatably accommodated in the suction nozzle 9 and is rotationally driven by a rotary brush motor 67 which is an example of a rotary brush drive device in the suction nozzle 9, so that the work surface (cleaning surface) of the device 6 is driven.
  • a rotating brush 11 that sweeps up dust is disposed.
  • Reference numeral 10 denotes a mop as another example of a cleaning unit that can be detachably attached to the tip of the robot arm 5 in place of the suction nozzle 9 to wipe off the dirt of the device 6.
  • a mechanism for example, a known detachable attachment mechanism such as a mechanical chuck can be used.
  • the housework robot 1 is a robot that performs a work of sucking dust or dust of the device 6 with the suction nozzle 9, a work of wiping the dirt of the device 6 with the mop 10, or a work of polishing with the mop 10 with force.
  • the hand 16 of the person 16A is turned on by the data input IF 26 (for example, pressing “ON” of the power button 26a of the operation panel 26A of FIG. 26) arranged on the side surface of the work table 7.
  • the data input IF 26 for example, pressing “ON” of the power button 26a of the operation panel 26A of FIG. 26
  • the suction nozzle 9 is attached to the hand 30 at the tip of the robot arm 5 of the house robot 1 with a human hand 16, and when cleaning or polishing is performed, the house robot 1
  • the mop 10 is attached to the hand 30 at the tip of the robot arm 5 with the hand 16 of the person 16A.
  • data input from the data input IF 26 such as a button (for example, “open / close button 26b of the operation panel 26A of FIG. 26 for opening / closing the hand 30”
  • An instruction to open the hand 30 is issued to the control unit 22 (to be described later) of the household robot 1 to open the hand 30 by pressing “open” or the like.
  • the suction nozzle 9 or the mop 10 is attached to the hand 30 and data is input from the data input IF 26 (for example, pressing the “close” button of the open / close button 26b for opening / closing the hand 30 on the operation panel 26A in FIG. 26).
  • the suction nozzle 9 or the mop 10 is attached to the hand 30 by issuing an instruction to the control unit 22 to close the hand 30 and closing the hand 30.
  • the tip of the robot arm 5 is moved (for example, by pressing “open” of the open / close button 26b, the hand 30 at the tip of the robot arm 5 is automatically raised to the upward position.
  • the hand 30 at the tip of the robot arm 5 can be automatically lowered to the downward cleaning position by pressing “close” of the open / close button 26b.
  • the house robot 1 is activated. Then, an optimum operation, for example, a cleaning operation (for example, suction or wiping operation) is selected by an operation selection unit 29 to be described later, and a cleaning operation (for example, suction or wiping operation) based on the selected cleaning operation is started.
  • a cleaning operation for example, suction or wiping operation
  • the domestic robot 1 self-runs on the rail 8, and simultaneously with the self-running operation, the tip of the robot arm 5
  • the mop 10 performs a wiping and cleaning operation with a trajectory that draws a spiral, for example, while gradually shifting in the left-right direction around the position along the central axis along the front-rear direction of the robot arm 5.
  • the suction cleaning operation as shown in FIG. 16C, the housework robot 1 self-runs on the rail 8, and simultaneously with the self-running operation, the robot arm 5 is driven to suck the suction nozzle at the tip of the robot arm 5.
  • 9 performs suction cleaning by moving in a direction perpendicular to the self-running direction (that is, reciprocating along the front-rear direction perpendicular to the left-right direction).
  • the operation panel 26A as an example of the data input IF 26 is fixed to the side surface of the work table 7.
  • a remote control capable of remote operation may be used.
  • the person confirms the degree of dirt on the work surface, directly grips the robot arm 5 of the household robot 1 with the hand 16 of the person 16A, and corrects the cleaning operation (for example, toward a region where the degree of dirt is severe).
  • the robot arm 5 or the housework robot of the housework robot 1 is applied by applying a force to the suction nozzle 9 or the mop 10 at the tip of the robot arm 5. 1 operation is corrected. That is, as shown in FIG. 12C, when the suction nozzle 9 or the mop 10 is moved as shown by a solid line in the zigzag direction, for example, as shown in FIG.
  • the tip of the robot arm 5 or the suction nozzle 9 or the mop 10 is moved by a human hand 16 as shown by the arrow so as to move in the direction indicated by the dotted line, and the suction nozzle at the tip of the robot arm 5 is moved. 9 or mop 10 is moved to the left. In this way, as shown in FIG. 12D, the suction nozzle 9 or the mop 10 is located in the left region with respect to the position along the central axis along the front-rear direction of the hand of the robot arm 5.
  • the cleaning operation by the mop 10 can be performed as indicated by a solid line in the zigzag direction, for example.
  • FIG. 3 is a diagram showing in detail the components of the control device of the robot arm 5 constituting the housework robot 1, and includes a control device main body 45, a motion generation device 12 that generates a motion, and a robot arm that is a control target.
  • 5 is a diagram showing a detailed configuration of the rail 5, the rail 8, and the peripheral device 47.
  • the control device of the housework robot 1 is roughly composed of a control device main body 45, the motion generation device 12, and a peripheral device 47.
  • the control device main body 45, the motion generation device 12, and the peripheral device 47 are each configured by a general personal computer.
  • the control device main body 45 includes an operation correction unit 20 as an example of an operation correction unit of the operation generation device 12, a correction operation type determination unit 23 as an example of a correction operation type determination unit, and a data input IF 26 of a peripheral device 47, respectively.
  • Control parameter management unit 21 as an example of connected control parameter management means
  • control unit impedance control unit
  • the motion generation device 12 includes a motion database 17, an unworkable area database 28, a corrected motion type determination method setting unit 27, a motion correction unit 20, a corrected motion type determination unit 23, a motion storage unit 15, and a motion selection. It is comprised so that the part 29 and the information acquisition part 100 may be provided.
  • the motion storage unit 15 is connected to the motion database 17, the work impossible area database 28, and the motion correction unit 20.
  • the motion database 17 and the work impossible area database 28 are connected to the motion storage unit 15, the motion correction unit 20, and the motion selection unit 29, respectively.
  • the motion correction unit 20 is connected to the motion database 17, the work impossible region database 28, the motion storage unit 15, the control parameter management unit 21 of the control device main body 45, the correction motion type determination unit 23, and the data input IF 26 of the peripheral device 47. Has been.
  • the correction operation type determination unit 23 is connected to the operation correction unit 20, the correction operation type determination method setting unit 27, the data input IF 26 of the peripheral device 47, and the control parameter management unit 21 of the control device main body 45.
  • the action selection unit 29 is connected to the action database 17, the work impossible area database 28, and the data input IF 26.
  • the correction operation type determination method setting unit 27 is connected to the data input IF 26 and the correction operation type determination unit 23.
  • the information acquisition unit 100 is connected to the correction operation type determination unit 23, the operation database 17, the work impossible area database 28, and the force detection unit 53 of the control unit 22.
  • the information acquisition unit 100 acts on the information regarding the cleaning operation including the suction force of the cleaning units 9 and 10 and the cleaning position of the cleaning units 9 and 10 in the cleaning operation, and the robot arm 5 detected by the force detection unit 53. It is possible to obtain information on human power.
  • the information acquired by the information acquisition unit 100 is input to the correction operation type determination unit 23, and the cleaning operation is corrected as described later from the information regarding the cleaning operation and the information regarding human power acquired by the information acquisition unit 100, respectively.
  • the type of corrective action to be performed can be determined by the corrective action type determining means 23.
  • the peripheral device 47 includes a correction operation type determination unit 23, an operation correction unit 20, a control parameter management unit 21 of the control device body unit 45, a data input IF 26 connected to the display unit 14 and the operation generation device 12, and a rail movable unit.
  • An encoder 64 that is attached to the rotation shaft of the motor 65 of 8b and detects the rotation angle of the rotation shaft, and a rotation shaft of the motor 43 that is an example of a joint drive device for each joint portion.
  • the input / output IF 24 connected to the control unit 22, the motor 65 of the rail movable unit 8b, A motor driver 25 connected to the motor 43 of each joint part of the bot arm 5, the motor 62 for driving the hand opening / closing, and the motor 69 of the rotary brush 11, and the display unit 14 connected to the correction operation type determination unit 23; It is comprised so that it may comprise.
  • the input / output IF 24 is configured to include, for example, a D / A board, an A / D board, a counter board, and the like connected to an expansion slot such as a PCI bus of a personal computer.
  • the motion generation device 12 that controls the motion of the robot arm 5 and the rail movable portion 8b, the control device main body 45, and the peripheral device 47 execute the respective motions, whereby each of the joint portions of the robot arm 5 is performed.
  • Each joint angle information that is joint angle information and output from an encoder 44 described later is taken into the control device main body 45 through the input / output IF 24.
  • the control device main body 45 calculates a control command value in the rotation operation of each joint of the robot arm 5 based on each taken joint angle information.
  • the position information of the rail movable portion 8 b output from the encoder 64 of the motor 65 of the rail movable portion 8 b is taken into the control device main body 45 through the input / output IF 24.
  • control apparatus main-body part 45 calculates the control command value of the motor 65 of the rail movable part 8b based on each taken-in positional information. Further, the rotational force output from the encoder 66 of the motor 67 of the rotary brush 11 is taken into the control device main body 45 through the input / output IF 24, and the control device main body 45 receives the rotational force of the rotary brush 11 based on the taken rotational force. A control command value for the motor 67 is calculated.
  • the calculated control command value of the motor 43 of each joint part of the robot arm 5 is given to the motor driver 25 through the input / output IF 24, and each joint part of the robot arm 5 according to each control command value sent from the motor driver 25.
  • the motors 43 are driven independently.
  • the calculated control command value of the rail movable portion 8b8 is given to the motor driver 25 through the input / output IF 24, and the motor 65 of the rail movable portion 8b is driven according to each control command value sent from the motor driver 25. .
  • a hand opening / closing drive motor 62 and an encoder 61 that detects the rotational phase angle of the rotation shaft of the hand opening / closing drive motor 62 are further provided in the hand 30.
  • the hand 30 is opened by rotating the rotating shaft of the motor 62 in the forward direction so that the suction nozzle 9 or the mop 10 can be attached by a human hand 16, while the rotating shaft of the motor 62 is reversed.
  • the hand 30 can be closed by rotating in the direction, and the suction nozzle 9 or the mop 10 attached to the hand 30 can be fixed.
  • a control signal (open / close command) from the hand control unit 54 (shown in FIG. 7) of the control unit 22 of the control device main body 45.
  • the rotation of the hand opening / closing driving motor 62 is driven and controlled via the motor driver 25, and the hand 30 is opened / closed by rotating the rotating shaft of the hand opening / closing driving motor 62 forward and backward.
  • the calculated control command value of the motor 67 of the rotary brush 11 is given to the motor driver 25 through the input / output IF 24, and the motor 69 of the rotary brush 11 is driven according to the control command value sent from the motor driver 25. .
  • the robot arm 5 is a multi-link manipulator with 6 degrees of freedom, and the tip of the hand 30, the forearm link 32 having the wrist 31 to which the hand 30 is attached at the tip, and the proximal end of the forearm link 32 are rotatable.
  • the upper arm link 33 to be connected is provided, and a base portion 34 on which the base end of the upper arm link 33 is rotatably connected and supported.
  • the base part 34 is connected to the rail movable part 8b.
  • the wrist portion 31 has three rotation axes of the fourth joint portion 38, the fifth joint portion 39, and the sixth joint portion 40, and changes the relative posture of the hand 30 with respect to the forearm link 32. be able to. That is, in FIG.
  • the fourth joint portion 38 can change the relative posture around the horizontal axis of the hand 30 with respect to the wrist portion 31.
  • the sixth joint portion 40 can change the relative posture of the hand 30 with respect to the wrist portion 31 about the horizontal axis orthogonal to the horizontal axis of the fourth joint portion 38 and the vertical axis of the fifth joint portion 39.
  • the other end of the forearm link 32 is rotatable around the third joint portion 37 with respect to the tip of the upper arm link 33, that is, around a horizontal axis parallel to the horizontal axis of the fourth joint portion 38.
  • the other end of the upper arm link 33 is rotatable around the second joint portion 36 with respect to the base portion 34, that is, around a horizontal axis parallel to the horizontal axis of the fourth joint portion 38. Further, the upper movable portion 34a of the pedestal 34 rotates around the first joint 35 relative to the lower fixed portion 34b of the pedestal 34, that is, around the vertical axis parallel to the vertical axis of the fifth joint 39. It is possible. As a result, the robot arm 5 constitutes the multi-link manipulator having 6 degrees of freedom so as to be rotatable around a total of six axes.
  • Each joint that constitutes a rotating portion of each axis includes a motor 43 as an example of a rotation driving device and an encoder 44 that detects a rotation phase angle (that is, a joint angle) of the rotation axis of the motor 43.
  • the motor 43 is provided in one member of a pair of members (for example, a rotation-side member and a support-side member that supports the rotation-side member) constituting each joint portion, and is described later. (Actually, it is arranged inside one member of each joint portion of the robot arm 5).
  • the encoder 44 is provided in one member in order to detect the rotation phase angle (that is, the joint angle) of the rotation shaft of the motor 43 (actually, one member of each joint portion of the robot arm 5 is provided). Arranged inside).
  • the rotating shaft of the motor 43 provided in one member is connected to the other member, and the other member can be rotated around each axis with respect to the one member by rotating the rotating shaft forward and backward. .
  • Reference numeral 46 denotes a rail coordinate system O d , which indicates a relative positional relationship from the point O s at the end of the rail 8 (see FIG. 8).
  • Reference numeral 41 denotes a pedestal coordinate system of the pedestal 34 fixed to the rail movable portion 8b of the rail 8, and shows a relative positional relationship from the rail coordinate system Od .
  • the hand coordinate system 42 indicates a relative positional relationship from the platform coordinate system 41.
  • the origin position O d (x, y) of the rail coordinate system 46 viewed from the end point O s of the rail 8 is set as the position (rail position) of the rail movable portion 8b. Further, the origin position O e (x, y, z) of the hand coordinate system 42 viewed from the base coordinate system 41 is set as the hand position of the robot arm 5 (the position of the tip of the suction nozzle 9 and the mop 10), and the base coordinates
  • the roll angle, pitch angle, and yaw angle will be described with reference to FIGS. 13A to 13C.
  • this coordinate system is rotated around the Z axis by an angle ⁇ with Y ′ as the rotation axis (see FIG. 13B).
  • the coordinate axes at this time are [X ′′, Y ′, Z ′′].
  • this coordinate system is rotated around the X ′′ axis by an angle ⁇ using the X ′′ axis as a rotation axis (see FIG. 13C).
  • the coordinate axes at this time are [X ′′, Y ′ ′′, Z ′ ′′].
  • the posture of the coordinate system at this time is a roll angle ⁇ , a pitch angle ⁇ , and a yaw angle ⁇ , and the posture vector at this time is ( ⁇ , ⁇ , ⁇ ).
  • the hand position and orientation vector r When controlling the hand position and orientation of the robot arm 5 respectively, the hand position and orientation vector r, to be made to follow on the hand position generated by the target track generation unit 55 to be described later and orientation target vector r d become.
  • Reference numeral 26 denotes a data input IF (interface).
  • a person (housework worker) uses a button or a keyboard or an input device such as a mouse or a microphone to input a command to start or end the cleaning work to the housework robot 1. Interface.
  • the display unit 14 is, for example, a display device installed on the work table 7, and displays on the display unit 14 the type of a robot operation or a parameter to be corrected, which will be described later.
  • the operation database 17 stores and holds information (information related to the cleaning operation) regarding the movement of the rail movable unit 8b and the robot arm 5 such as the position and posture at a certain time.
  • the information related to the cleaning operation includes information on the position and orientation of the hand of the robot arm 5 according to the cleaning operation performed by the robot arm 5, information on the force applied by the robot arm 5 to the device 6, and information on the robot arm 5 6 includes at least one information of information on the strength of the suction force when sucking 6, speed information of the robot arm 5, and work impossible area information which is information on an area where cleaning is not performed.
  • the operation database 17 is, for example, information on the operation of the rail movable unit 8b and the robot arm 5 shown in FIG. 4, and a work ID number for identifying a cleaning work, and an operation ID number for identifying individual actions in the work. , Information on the position of the rail movable part 8b in the operation, information on the hand position and posture of the robot arm 5 in the operation, information on the force applied to the work surface by the robot arm 5 in the operation, and strong suction force Information on the height, information on a flag (validity flag) indicating whether or not any of the parameters of the position, posture, force, and suction force of the robot arm 5 is valid, and each action acts Information on time and the type of parameter to be corrected when correcting the operation information in the operation database 17 by the operation correction unit 20 described later And information about, configured to hold and progress information indicating whether the currently operating.
  • the work ID number for identifying the cleaning work in the operation database 17 is information indicating the work ID number assigned to each cleaning work in order to identify each other when there are a plurality of types of cleaning work.
  • the operation ID number for identifying each operation in the cleaning work in the operation database 17 identifies each cleaning operation in one cleaning operation from each other when one cleaning operation is composed of a plurality of cleaning operations. Therefore, it is information representing the operation ID number assigned to each cleaning operation.
  • the information on the position of the rail movable portion 8b in the operation database 17 represents the information on the rail position described above, that is, the origin position O d (x, y) of the rail coordinate system 46 viewed from the O s at the end of the rail 8.
  • the first rail position (x 1 , y 1) of the rail movable portion 8 b is performed.
  • Information on the position of the rail movable portion 8b in the operation database 17 is set in advance in the operation database 17, or the robot arm 5, the suction nozzle 9 or the mop 10 is directly held by the human hand 16 and will be described later.
  • the robot arm 5 may be moved and stored in the impedance control mode.
  • the information on the hand position and posture of the robot arm 5 in the motion database 17 represents the hand position and posture of the robot arm 5 described above, and from the origin position O e and the posture, (x, y, z, ⁇ , ⁇ , ⁇ ).
  • the robot database 5 or the suction nozzle 9 or the mop 10 is directly gripped by the human hand 16 and the impedance described later.
  • the robot arm 5 is moved, and information on the hand position and posture of the robot arm 5 (the dotted line path in FIG. 9) is acquired by the control unit 22 at certain time intervals (for example, every 0.2 msec).
  • the joint angle measured by the encoder 44 of each joint unit by the forward kinematics calculation unit 58 is converted into the hand position and posture, and the robot arm 5 Information on the hand position and posture is acquired) and stored together with the time information in the motion database 17 in the motion database 17.
  • information on position, posture and time may be generated in advance by the manufacturer at the time of product shipment and stored in the operation database 17. Further, the robot arm 5 is moved, and the environment (environment including the robot arm 56 and the device 6) is photographed with an image pickup device such as a camera (for example, disposed above the robot arm 5), and the obtained image A model matching process is performed between data (for example, the image of the device 6 in the obtained environment information) and an object image (for example, an image of the device 6) stored in advance, and the matching position is determined by the robot arm 5. Although it is not specifically shown, it may be stored in the operation storage unit 15 through the data input IF 26 as the hand position of the user.
  • the information on the force applied by the robot arm 5 stored in the motion database 17 indicates information on the force applied to the target object when the robot arm 5 performs work, and the robot arm 5 has x, y, and z directions. Forces to be applied are f x , f y , and f z , respectively, and forces to be applied in the ⁇ , ⁇ , and ⁇ directions are f ⁇ , f ⁇ , and f ⁇ . In operation database 17, expressed as (f x, f y, f z, f ⁇ , f ⁇ , f ⁇ ).
  • the information on the suction force in the operation database 17 indicates the suction force when the robot arm 5 performs the suction work.
  • the suction forces in the x, y, and z directions of the robot arm 5 are p x , p y , and p z , respectively, and the suction forces in the ⁇ , ⁇ , and ⁇ directions are p ⁇ , p ⁇ , and p ⁇ .
  • it is expressed as (p x , p y , p z , p ⁇ , p ⁇ , p ⁇ ).
  • the suction force increases.
  • the suction force is set to a large value (for example, set to a value of “5”).
  • the force is set small (for example, set to a value of “2”).
  • the flag information in the database 17 is a value indicating which information among the position, posture, force, and suction force of the robot arm 5 indicated by each action ID is valid. Specifically, the information is shown in FIG. It is expressed as a 32-bit numerical value. In FIG. 5, “1” is set when the values of the position, posture, force, and suction force are valid for each bit, and “0” is set when the values are invalid.
  • the 0th bit is “1” if the x-coordinate value of the position is valid, and “0” if it is invalid.
  • the first bit is “1” if the y-coordinate value of the position is valid, and “0” if it is invalid.
  • the second bit is “1” when the position z-coordinate value is valid, and “0” when the position is invalid.
  • the third, fourth, and fifth bits sequentially indicate the validity of the posture ⁇ , ⁇ , and ⁇ .
  • the sixth to eleventh bits indicate whether the force components f x , f y , f z , f ⁇ , f ⁇ , and f ⁇ are valid or invalid.
  • the 12th to 17th bits indicate whether the components p x , p y , p z , p ⁇ , p ⁇ , and p ⁇ of the attractive force are valid or invalid.
  • flags 32 bits
  • the 18th to 31st bits are not used, “0” is inserted, but only the 18th bit is used. Or a variable that can be stored.
  • Information on the time at which each action in the action database 17 acts that is, the time in the action database 17 in FIG. 4 is the time required for the housework robot 1 to execute each action, and the action stored in this action ID.
  • This time represents the relative time from the previous operation, not the absolute time. That is, the time until the rail movable part 8b and the robot arm 5 move is represented by the position of the rail movable part 8b and the position and posture of the robot arm 5 indicated by the operation ID.
  • This is information indicating which parameter is to be corrected according to the type. Specifically, it is represented by a 32-bit numerical value shown in FIG. In FIG. 6, “1” is set when each value of position, posture, force, and suction force can be corrected by each bit, and “0” is set when correction is impossible.
  • the 0th bit is “1” if the x-coordinate value of the position can be corrected, and “0” otherwise.
  • the first bit is “1” if the y-coordinate value of the position can be corrected, and “0” otherwise.
  • the second bit is “1” if the z-coordinate value of the position can be corrected, and “0” otherwise.
  • the third, fourth, and fifth bits sequentially indicate the possibility of correcting the postures ⁇ , ⁇ , and ⁇ .
  • the 6th to 11th bits indicate the correctability of the force
  • the 12th to 17th bits indicate the correctability of each component of the suction force.
  • many flags (32 bits) are prepared for future expansion in this example, since the 18th to 31st bits are not used, “0” is inserted, but only the 18th bit is used. Or a variable that can be stored.
  • the progress information indicating whether or not the operation database 17 is currently operating is information indicating whether or not the housework robot 1 is currently operating.
  • “1” is recorded and operating. Otherwise, “0” is recorded.
  • a person selects a cleaning operation to be performed via the data input IF 26, and the selected information is input from the data input IF 26 to the operation selection unit 29.
  • the operation selection unit 29 sets “1” for the operation currently in operation among the plurality of operations constituting the work. 17, and “0” is stored in the operation database 17 for operations that are not operating.
  • the information indicating whether or not the operation is in progress is input to the operation storage unit 15 through the operation correction unit 20 as a notification that the operation instructed from the control unit 22 has ended, and the operation storage unit 15 stores the information in the operation database 17.
  • the operation database 17 regarding the progress information is determined by measuring the time with the built-in timer of the control device 1000 and determining the end of the operation.
  • the unworkable area database 28 stores information related to areas where the housework robot 1 does not perform work (wipe cleaning work or suction work). Specific information is shown in FIG. In FIG. 10, the position (x, y) of the work disabling region represents a region where a person does not want the housework robot 1 to perform a wiping operation or a suctioning operation. For example, if the hatched area of the cleanable surface R in FIG.
  • the work non-operation area RB the coordinates necessary to represent the area RB (in this example, the coordinates of the four corners of the rectangular area ( x c1 , y c1 ), (x c2 , y c2 ), (x c3 , y c3 ), (x c4 , y c4 )) are stored. Note that each of the coordinates, of the working path of the cleaning area RA to perform cleaning, represented by relative coordinates from the coordinates O s of the rail. Coordinates representing these unworkable areas RB are generated by an operation correction unit 20 described later and stored in the unworkable area database 28.
  • the correction operation type determination unit 23 determines a type of correction that can be corrected by a person applying force to the robot arm 5 with his / her hand 16 in the operation correction unit 20 described later. For example, as shown in FIG. 12C, when a person applies force to the robot arm 5 from the lateral direction with his hand 16, the direction parallel to the work surface of the robot arm 5 (for example, when the work surface is along the horizontal direction, In the following description, in order to simplify the description, the cleaning area RA can be translated by simply moving the position of “horizontal direction”.
  • the type of correction operation in this case is “movement of the position of the work surface”.
  • the correction unit 20 can set the force applied during cleaning as shown in FIG. 27C.
  • the type of the correction operation in this case is “force application”.
  • the correction operation type determination unit 23 can determine the type of correction of the cleaning operation from the degree of force applied to the robot arm 5 by a human hand and the hand position of the robot arm 5. Details will be described later.
  • the motion correction unit 20 cleans the motion database 17 by applying a force to the robot arm 5 with the hand 16 while the housework robot 1 is performing a cleaning operation based on the position, posture, and time information of the motion database 17. It has a function to correct operation information. Details will be described later.
  • the operation storage unit 15 stores the operation information corrected by the operation correction unit 20 in the operation database 17 or the work impossible area database 28.
  • control parameter management unit 21 Details of the control parameter management unit 21 will be described.
  • the control parameter management unit 21 Based on the motion correction instruction from the motion correction unit 20, the control parameter management unit 21 performs impedance control mode, hybrid impedance control mode, force control mode, force hybrid impedance control mode, and high-rigidity position of the robot arm 5. Setting of switching between control modes, setting of mechanical impedance setting values in each control mode, and hand position and posture target correction output rd ⁇ output by the impedance calculation unit 51 of the control unit 22 in each control mode Setting and setting of operation information to the target trajectory setting unit 55 of the control unit 22 are performed.
  • control parameter management unit 21 detects the position of the rail movable unit 8b stored in the cleaning information database 17 (the origin position O d (x, y) of the rail coordinate system 46 as viewed from the coordinates O s of the end of the rail 8). ) To generate a route in the cleaning area RA excluding the work impossible area RB in the work impossible area database 28. Also, the control parameter management unit 21 receives information such as the hand position or force information of the robot arm 5 from the control unit 22, and notifies the operation correction unit 20 of the information. When a command for opening / closing the hand 30 is input by the data input IF 26, input information from the data input IF 26 is input to the hand control unit 54 of the control unit 22 via the control parameter management unit 21, and control parameter management is performed. An opening / closing command for the hand 30 is issued from the unit 21 to the hand control unit 54.
  • the position control mode is a mode in which the robot arm 5 operates based on a hand position and posture target vector command of a target trajectory generation unit 55 described later.
  • the impedance control mode is a mode in which the robot arm 5 operates according to the force applied to the robot arm 5 from a person or the like.
  • the hybrid impedance control mode is a mode (impedance control mode) in which the robot arm 5 operates according to the force applied to the robot arm 5 from a person or the like while the robot arm 5 is operating in the position control mode.
  • the position control mode and the impedance control mode are performed simultaneously. For example, during a cleaning operation for sucking dust or the like on the work surface, as shown in FIG. 12B, the robot arm 5 is directly held by a person's hand 16 and correction is performed such that the cleaning area RA is translated.
  • the force control mode is a control mode in which the robot arm 5 operates while pressing the suction nozzle 9 or the mop 10 against the work surface with a force applied in advance to the control unit 22. For example, the robot arm 5 moves against the work surface.
  • This is a control mode used for a work surface component of the robot arm 5 when performing a cleaning operation to wipe off dirt by applying a certain force.
  • the force hybrid impedance control mode is a control mode that switches between the hybrid impedance control mode and the impedance control mode for each of the six axes, and further operates in a force control mode that operates by applying a specified force. Note that the impedance control mode cannot be set in the direction in which the force control mode is set (the force control mode and the impedance control mode are in an exclusive relationship).
  • control modes are operated by setting appropriate control modes as follows for each direction and posture of the robot arm 5 during operation.
  • the housekeeping robot 1 performs a wiping operation by applying a specified force vertically downward to the work surface while moving in a circle parallel to the work surface of the device 6 as shown in FIG.
  • Set the control mode Specifically, the following control modes are set for each of the six axes (x, y, z, ⁇ , ⁇ , ⁇ ). That is, the (x, y) component operates in the hybrid impedance control mode, the ( ⁇ , ⁇ , ⁇ ) component operates in the impedance control mode, and the z-axis component operates in the force control mode. .
  • the direction parallel to the work surface of the device 6 is set to the hybrid impedance control mode, so that it is switched to the hybrid impedance control mode when a person is operating while operating in the position control mode.
  • the robot arm 5 can be moved according to the force applied to the robot arm 5 from a person or the like.
  • the posture of the robot arm 5 can be changed according to the force applied to the robot arm 5 from a person or the like while stopped. become.
  • the z-axis component to the force control mode, it becomes possible to operate while pressing with a designated force.
  • the force hybrid impedance control mode is set even when the housework robot 1 moves in a circular shape parallel to the work surface as shown in FIG. 23 and sucks and cleans the dust on the work surface.
  • the (x, y) component is operated in the hybrid impedance control mode
  • the ( ⁇ , ⁇ , ⁇ ) component is operated in the impedance control mode
  • the z-axis component is operated in the force control mode.
  • the high-rigidity position control mode is a mode in which the position control mode during the cleaning operation is further increased in rigidity, and is realized by increasing the gain in the position error compensation unit 56 described later.
  • the force applied by the human hand 16 can be detected by the force detection unit 53 based on the amount of change in the hand position of the robot arm 5 by making the robot arm 5 unable to move easily. it can.
  • ⁇ Inertia M, viscosity D, and rigidity K are set as mechanical impedance setting parameters.
  • Each parameter of the mechanical impedance set value is set based on the following evaluation formula using the correction value.
  • KM, KD, and KK are gains, each of which is a constant value.
  • the control parameter management unit 21 outputs the inertia M, viscosity D, and rigidity K of the mechanical impedance parameters calculated based on the equations (1) to (3) to the control unit 22, respectively.
  • control parameter management unit 21 receives information on the hand position and force of the robot arm 5 from the control unit 22, and moves to the operation selection unit 29, the operation storage unit 15, and the operation correction unit 20 from the control parameter management unit 21. Make a notification.
  • control parameter management unit 21 notifies the control unit 22 of operation information such as position, posture, and time input from the operation correction unit 20.
  • FIG. 7 shows a block diagram of the control unit 22.
  • the control unit 22 operates in the control mode set by the control parameter management unit 21, and further, according to the control mode, the mechanical impedance of the robot arm 5 set based on the set values of the inertia M, the viscosity D, and the stiffness K.
  • the mechanical impedance value of the robot arm 5 is controlled to the set value.
  • the control unit 22 performs control to rotate the rotating brush 11 while suctioning with a specified suction force.
  • the control part 22 performs control which presses a work surface with the designated force in the case of wiping and cleaning.
  • the control part 22 controls the rail movable part 8b, and performs control which moves the robot arm 5 to the designated position on the rail fixing
  • control unit 22 Details of the control unit 22 will be described with reference to FIG.
  • the control unit 22 includes a robot arm control unit 49 that controls driving of the motor 43 of each joint unit of the robot arm 5, a rotating brush control unit 13 that controls driving of the motor 69 of the rotating brush 11, and a rail movable unit 8b. And a rail control unit 48 for controlling the driving of the motor 65.
  • the robot arm control unit 49 includes a position error calculation unit 50, an impedance calculation unit 51, a force detection unit 53 as an example of a force detection unit, a hand control unit 54, a target trajectory generation unit 55, a position error compensation unit 56, and an approximate reverse motion.
  • a scientific calculation unit 57 and a forward kinematics calculation unit 58 are provided.
  • the position error compensation unit 56, approximate inverse kinematics calculation unit 57, and forward kinematics calculation unit 58 constitute a position control system 59.
  • the current value (joint angle vector) vector q [q 1 , q 2 , q 3 , q 4 , q 5 , q of the joint angle measured by the encoder 44 of the joint axis of each joint part. 6 ] T is output and taken into the control unit 22 by the input / output IF 24.
  • q 1 , q 2 , q 3 , q 4 , q 5 , q 6 are respectively the first joint part 35, the second joint part 36, the third joint part 37, the fourth joint part 38, and the fifth joint. This is the joint angle of the part 39 and the sixth joint part 40.
  • Target track generation unit 55 receives an input of the cleaning operation from the control parameter managing unit 21, for implementing the operation of the robot arm 5 to the target, and the hand position and orientation target vector r d, the hand force vector fd and a flag indicating which parameter is effective for each direction (a flag indicating validity) are output.
  • Target track generation unit 55 generates using a polynomial interpolation, and the track between points, and the force, by interpolating a suction force, the tip unit position and orientation target vector r d and the force vector f d and the suction force p d To do.
  • the hand control unit 54 instructs the hand opening / closing driving motor 62 of the robot arm 5 to open / close the hand 30 by driving the hand opening / closing driving motor 62 by the hand opening / closing command input from the control parameter management unit 21. Put out.
  • the force detection unit 53 functions as an example of a force detection unit, and detects an external force applied to the robot arm 5 due to contact between a person or the like and the robot arm 5.
  • the joint angle error compensation output u qe is fetched .
  • J v (q) is
  • v [v x , v y , v z , ⁇ x , ⁇ y , ⁇ z ] T
  • (v x , v y , v z ) represents the robot arm 5 in the hand coordinate system 42.
  • the translation speed of the hand, ( ⁇ x , ⁇ y , ⁇ z ) is the angular velocity of the hand of the robot arm 5 in the hand coordinate system 42.
  • m is the weight of the cleaning unit 9 or 10 attached to the hand 30 of the robot arm 5
  • g is the gravitational acceleration.
  • the value of the weight m of the cleaning unit 9 or 10 can be input by the person from the data input IF 26 to the force detection unit 53 before attaching the cleaning unit 9 or 10, but normally the cleaning unit suction nozzle 9 or mop Since the weight m of 10 is not a value that is frequently changed, it may be a preset value.
  • the impedance calculation unit 51 is a part that performs the function of realizing the control of the mechanical impedance value of the robot arm 5 to the mechanical impedance set value.
  • the hand position and posture target correction output rd ⁇ is output from the impedance calculator 51.
  • the force hybrid impedance control mode if there is a force component designated as valid by a flag (a flag indicating validity), inertia that is an impedance parameter set by the control parameter management unit 21 Based on M, viscosity D, rigidity K, current value q of the joint angle, external force F ext detected by the force detector 53, and f d output from the target trajectory generator 55, the robot arm 5
  • a hand position and posture target correction output rd ⁇ for realizing control that causes the machine impedance value to approach the machine impedance set value for the robot arm 5 is calculated by the impedance calculation unit 51 using the following equation (4). Output from the impedance calculator 51.
  • Hand position and orientation target correcting output r d? Is added by the position error calculation unit 50 to the hand position and orientation target vector rd outputted by the target track generation unit 55, the tip unit position and orientation correction target vector r dm is the position error calculation unit 50 is generated.
  • the position error calculation unit 50 sets the hand position and posture target correction output rd ⁇ other than the z component to 0. Set with.
  • Position error calculation unit 50 further calculates the tip unit position and orientation correction target vector r dm, error r e between the tip unit position and orientation vectors r calculated by the forward kinematics calculation unit 58 to be described later, the determined error r e is output to the position error compensator 56.
  • the forward kinematics calculator 58 receives a joint angle vector q, which is a current value q of the joint angle measured by the encoder 44 from the encoder 44 of each joint axis of each joint of the robot arm 5 via the input / output IF 24. Entered.
  • the forward kinematics calculator 58 performs a geometric calculation of conversion from the joint angle vector q of the robot arm 5 to the hand position and posture vector r.
  • the hand position and posture vector r calculated by the forward kinematics calculator 58 is output to the position error calculator 50, the impedance calculator 51, and the target trajectory generator 55.
  • Positional error compensating unit 56 based on the error r e obtained by the position error calculation unit 50, and outputs a positional error compensating output u re the approximation reverse kinematical calculation unit 57.
  • the position error compensation output ure is
  • K P is a proportional gain matrix
  • K I is an integral gain matrix
  • K d is the derivative gain matrix
  • diagonal components hand position vector r e [x, y, z, ⁇ , ⁇ , ⁇ ] It is a diagonal matrix composed of gains for each component of T.
  • the position error compensation unit 56 sets the proportional gain matrix K P , the integral gain matrix K I , and the differential gain matrix K D to large values set in advance.
  • the high rigidity means that the rigidity is higher than that in the normal position control, and specifically, a large value is set as compared with the normal position control mode. For example, if the value is set to about twice that in the normal position control mode, the rigidity can be increased to about twice.
  • J r (q) is
  • u in is an input to the approximate inverse kinematics calculation unit 57
  • u out is an output from the approximate inverse kinematics calculation unit 57
  • the input u in is the joint angle error q e
  • the joint angle error compensation output u qe is given as a voltage command value to the motor driver 25 of the robot arm 5 via the D / A board of the input / output IF 24, and each joint axis is driven to rotate forward and reverse by each motor 43. 5 operates.
  • the rotating brush control unit 13 controls to rotate the rotating brush 11 by driving and controlling the motor 69 of the rotating brush 11 according to the suction force input from the target trajectory generating unit 55.
  • the rail control unit 48 drives and controls the motor 65 of the rail movable unit 8b based on the positional information of the rail movable unit 8b input from the target track generation unit 55, and moves the robot arm 5 on the rail fixed unit 8a. Control is performed so as to move together with 8b. Specifically, the rail controller 48 controls forward / reverse rotation driving of the motor 65 of the rail movable portion 8b, and the rail movable portion 8b to which the robot arm 5 is connected can be moved in the left-right direction on the rail fixing portion 8a. It is said.
  • the joint angle data (joint variable vector or joint angle vector q) measured by the encoders 44 of the joints of the robot arm 5 is taken into the control device body 45 (step S51).
  • the inverse kinematics calculation unit 57 calculates the Jacobian matrix Jr and the like necessary for the kinematics calculation of the robot arm 5 (step S52).
  • the forward kinematics calculator 58 calculates the current hand position and posture vector r of the robot arm 5 from the joint angle data (joint angle vector q) from the robot arm 5 (step S53).
  • the target track calculation unit 55 calculates the tip unit position and orientation target vector r d and the force target vector f d of the robot arm 5 (step S54).
  • the force detection unit 53 calculates an equivalent hand external force F ext at the hand of the robot arm 5 from the drive current value i of the motor 43, the joint angle data (joint angle vector q), and the joint angle error compensation output u qe. Calculate (step S55).
  • step S56 the control mode set by the control parameter management unit 21 is set.
  • the process proceeds to step S57.
  • the process proceeds to step S58.
  • step S57 processing in the impedance calculation unit 51
  • the impedance calculation unit 51 sets the hand position and posture target correction output rd ⁇ to 0. Let it be a vector. Thereafter, the process proceeds to step S59.
  • the inertia M, viscosity D, and rigidity of the mechanical impedance parameter set in the control parameter management unit 21 are set.
  • joint angle data joint angle vector q
  • the hand position and posture target correction output rd ⁇ is obtained as an impedance calculation unit 51.
  • step S59 the position in the error calculating unit 50, and the tip unit position and orientation correction target vector r dm is the sum of the tip unit position and orientation target vector r d and the tip unit position and orientation target correcting output r d?
  • the current hand position and orientation vector r error r e difference tip unit position and orientation is a is calculated (step S59, the step S60).
  • a PID compensator can be considered as a specific example of the position error compensator 56. Control is performed so that the position error converges to 0 by appropriately adjusting three gains of proportionality, differentiation, and integration, which are constant diagonal matrices.
  • step S59 high gain position control is realized by increasing the gain to a certain value.
  • step S59 or step S61 subsequent to step S60 in the approximation reverse kinematical calculation unit 57, by multiplying the inverse matrix of the Jacobian matrix J r calculated in step S52 in the approximation reverse kinematical calculation unit 57, the position error compensation output
  • the approximate inverse kinematics calculation unit 57 converts u re into a joint angle error compensation output u qe that is a value related to a joint angle error from a value related to a hand position and posture error.
  • step S61 the joint angle error compensation output u qe is given from the approximate inverse kinematics calculation unit 57 to the motor driver 25 via the input / output IF 24, and the amount of current flowing through each motor 43 is changed to change the robot arm 5. Rotational motions of the respective joint axes are generated (step S62).
  • the above steps S51 to S62 are repeatedly executed as a control calculation loop, thereby controlling the operation of the robot arm 5, that is, controlling the mechanical impedance value of the robot arm 5 to the appropriately set value. Can be realized.
  • the correction operation type determination unit 23 determines the type of correction in which the operation correction unit 20 can correct the housework operation by applying force to the robot arm 5 with the human hand 16. There are the following seven types of correction.
  • the first correction type is “movement of the position of the work surface”. Specifically, as shown in FIG. 12A or 12B (viewed from above in FIG. 12A), while the device 6 is being cleaned in the position control mode with the robot arm 5, the robot with the human hand 16 as shown in FIG. 12C. When a force is applied to the arm 5 from the lateral direction, the cleaning region RA can be translated by moving the horizontal position of the robot arm 5 with respect to the work surface as shown in FIG.
  • the second type of correction is “force applied” to the work surface of the device 6 at the time of wiping and cleaning. This is effective when the force bit is “1” in the operation flag (the flag indicating validity) of the operation currently being performed (the progress information of the operation database 17 is “1”).
  • FIG. 27A while the work surface of the device 6 is being wiped and cleaned with the robot arm 5, as shown in FIG.
  • FIG. 27C when the force applied during wiping and cleaning is increased, and conversely, when the robot arm 5 is applied upward from below with the human hand 16, the force applied during wiping and cleaning is corrected to be weaker. be able to.
  • the third type of correction is “suction force” on the work surface of the device 6 during suction cleaning. This is effective when the bit of the suction force is “1” in the operation flag (the flag indicating validity) of the operation currently being performed (the progress information in the operation database 17 is “1”).
  • FIG. 28A when the work surface of the device 6 is suction-cleaned by the robot arm 5 and a force is applied downward from above to the robot arm 5 with a human hand 16 as shown in FIG.
  • the suction force at the time of suction cleaning is set to be strong, and conversely, if the human hand 16 applies an upward force from below to the robot arm 5, the suction force at the time of suction cleaning is set to be weak. be able to.
  • the fourth type of correction is the movement “speed” of the hand of the robot arm 5 (ie, the cleaning units 9 and 10). While cleaning the work surface of the device 6 with the robot arm 5 as shown in FIG. 29A or 29B (viewed from the upper side of FIG. 29A), the person moves in the direction opposite to the moving direction of the robot arm 5 as shown in FIG. 29C. When the force is applied to the robot arm 5 with the hand 16, the operation correction unit 20 can reduce the speed during cleaning as shown in FIG. 29D. On the contrary, when the human hand 16 applies a force to the robot arm 5 with the human hand 16 in accordance with the traveling direction of the robot arm 5 while cleaning the work surface of the device 6 with the robot arm 5, the motion correcting unit 20 , Can speed up cleaning.
  • the fifth type of correction is “change in direction (posture)”.
  • FIG. 30A or FIG. 30B viewed from above in FIG. 30A
  • the longitudinal direction of the cleaning units 9, 10 is illustrated with the human hand 16.
  • the motion correction unit 20 can change the traveling direction of the robot arm 5 during cleaning as shown in FIG. 30D. . This can be realized by changing the posture ( ⁇ , ⁇ , ⁇ ) of the hand of the robot arm 5.
  • the sixth type of correction is “area that you do not want to work on”. As shown in FIG. 31 with the hand 16 of the person 16A, the robot arm 5 (or the cleaning units 9 and 10) is forced along the outline of the region RB where the robot arm 5 is not desired to be operated. When the robot arm 5 is moved over, the operation correction unit 20 can set an area RB that is not desired to be worked as shown in FIG.
  • the seventh type of correction is “movement in the vertical direction of the work surface”. While the work surface of the device 6 is being cleaned with the robot arm 5 as shown in FIG. 32A, the robot arm 5 is moved upward by applying a force upward to the robot arm 5 with a human hand 16 as shown in FIG. 32B. Then, for example, as illustrated in FIG. 32C, the operation correction unit 20 can clean the work surface 6 as of another device 6 a such as a cutting board disposed on the work surface of the device 6.
  • the correction operation type determination unit 23 determines one type of correction among the seven types of correction. Specifically, one of the seven types of correction is selected by the data input IF 26 such as a button, or is detected by the force detection unit 53 and acquired by the information acquisition unit 100. Information on the relationship between the force applied to the robot arm 5 by the human hand 16, the force applied to the robot arm 5 stored in the motion database 17 and acquired by the information acquisition unit 100, and the type of correction (for example, the direction in which the force is applied) And the relationship information between the magnitude and the correction type), the correction operation type determination unit 23 estimates the type.
  • the robot arm 5 does not move.
  • the robot arm 5 is moved in the direction in which the robot arm 5 is moved in the impedance control mode (a mode in which the force of the human hand 16 is detected and moved by impedance control). Can be made.
  • the force detection unit 53 of the control unit 22 detects the force acting on the robot arm 5, and the information on the force detected by the force detection unit 53 is determined via the information acquisition unit 100. Input to the unit 23 (step S1).
  • step S2 all the components of the acquired in detected by the force detection unit 53 and the information acquisition section 100 a force (f x, f y, f z, f ⁇ , f ⁇ , 6 components of f [psi) is Whether or not it is below a certain threshold (specifically, (f dx , f dy , f dz , f d ⁇ , f d ⁇ , f d ⁇ )) of ID “1” in FIG. Judge with.
  • the control mode in that case is an impedance control mode.
  • step S2 one of the components (f x of the acquired detected by the force detection unit 53 and the information acquisition unit 100 force, f y, f z, f ⁇ , f ⁇ , of the six components of the f [psi ) Exceeds a certain threshold (specifically, (f dx , f dy , f dz , f d ⁇ , f d ⁇ , f d ⁇ ) of ID “1” in FIG. 33). If the type determining unit 23 determines, the process proceeds to step S3.
  • step S3 the corrected operation type determination unit 23 further determines whether the current housework robot 1 is operating in the operation database 17 based on the information acquired via the information acquisition unit 100. Specifically, the correction operation type determination unit 23 determines that no operation is selected by the operation selection unit 29 and the progress information is “0” for all the operation IDs in the operation database 17. In the case of determination (a state in which work is not started), the correction operation type determination unit 23 determines that the operation database 17 is not operating, and the process proceeds to step S6. When the operation selection unit 29 selects the cleaning operation and starts cleaning, and the correction operation type determination unit 23 determines that the progress information is “1”, the operation database 17 If it is operating, the correction operation type determination unit 23 determines that the operation is in progress, and the process proceeds to step S4.
  • step S4 when the robot arm 5 is gripped by a human hand 16 and a force is applied in a direction in which the operation of the robot arm 5 is to be corrected, the force applied to the robot arm 5 is detected by the force detection unit 53, and the force is detected. Displacement of each of the forces (f x , f y , f z , f ⁇ , f ⁇ , f ⁇ ) detected by the detection unit 53 and acquired through the information acquisition unit 100 for a certain period of time.
  • the amount is measured by the correction operation type determination unit 23, and it is determined whether the displacement amount of the position component (f x , f y , f z ) or the posture component (f ⁇ , f ⁇ , f ⁇ ) is larger. Measurement is performed by the determination unit 23. Specifically, as shown in FIG. 15, each time series force (f x , f y , f z , f ⁇ , f ⁇ , f ⁇ ) is measured by the correction operation type determination unit 23, and is constant.
  • the correction operation type determination unit 23 measures how much the force is displaced in time (for example, time 1), and the correction operation type determination unit 23 measures the component having the largest displacement. In this example, the displacement of f phi largest, as judged by the correction operation type determining unit 23 orientation component is force is applied from the position component, the process proceeds to step S9.
  • step S4 When the correction operation type determination unit 23 determines in step S4 that the displacement amount of the posture is larger than the displacement amount of the position, the correction operation type determination is made that the correction type is a “direction (posture) change” type. Then, the correction type estimation process is terminated (step S9).
  • the control mode at that time is the same control mode (force hybrid impedance control mode) as before the correction type is determined.
  • step S4 when the correction operation type determination unit 23 determines in step S4 that the displacement amount of the position is equal to or greater than the displacement amount of the posture, the force component in the direction perpendicular to the work surface (for example, installed horizontally on the ground) In the case where the work surface of the device 6 is polished, f z ) is determined by the correction operation type determination unit 23 to determine whether it is equal to or greater than a certain threshold (specifically, f dz of ID “1” in FIG. 33). (Step S5).
  • step S5 when it is determined by the correction operation type determination unit 23 that the force component in the direction perpendicular to the work surface is smaller than the certain threshold, the force component in the direction parallel to the work surface (for example, horizontal to the work table 7).
  • f x when cleaning the working surface of the device 6 set in, either or both of the f y) is, the certain threshold (specifically, f dx of ID in FIG. 33, "1", f dy) or Is determined by the correction operation type determination unit 23 (step S10).
  • step S10 (specifically, f x, f y of ID in FIG. 33, "1") a certain threshold the horizontal direction force component to the working surface determined by the less than correcting operation type determination unit 23 If so, it is determined that there is no correction (no type), and the correction type estimation process is terminated (step S11). If there is no correction, stop the correction and work.
  • step S10 when the correction operation type determination unit 23 determines that the force component in the direction horizontal to the work surface is equal to or greater than the certain threshold value, the process proceeds to step S13.
  • step S13 the horizontal movement amount of the work surface calculated by the correction operation type determination unit 23 is greater than or equal to a certain threshold (specifically, g x , g y of ID “2” in FIG. 33).
  • a certain threshold specifically, g x , g y of ID “2” in FIG. 33.
  • the correction operation type determination unit 23 determines the type of “movement of the position of the work surface” as the correction type, and ends the correction type estimation process (step S14).
  • the movement amount in the horizontal direction of the work surface is calculated by the correction operation type determination unit 23, specifically, the robot before a human operation from the control unit 22 via the control parameter management unit 21 or the information acquisition unit 100 is used.
  • the hand position of the arm 5 and the hand position during operation are input to the correction operation type determination unit 23, and a value obtained by subtracting the hand position before operation from the hand position during operation is calculated by the correction operation type determination unit 23. be able to.
  • the movement amount in the direction perpendicular to the work surface is calculated by the correction operation type determination unit 23, specifically, from the control unit 22 via the control parameter management unit 21 or the information acquisition unit 100 before the human operation.
  • a value obtained by inputting the z component of the hand position of the robot arm 5 and the z component of the hand position during operation to the correction operation type determination unit 23 and subtracting the z component of the hand position before operation from the z component of the hand position during operation. Can be calculated by the correction operation type determination unit 23 as a movement amount.
  • step S13 when the correction operation type determination unit 23 determines that the horizontal movement amount of the work surface is less than the certain threshold value, the “speed” in the direction horizontal to the work surface is set as the correction type. The type is determined, and the correction type estimation process is terminated (step S15).
  • step S5 when the correction operation type determination unit 23 determines that the force perpendicular to the work surface is equal to or greater than the certain threshold, the vertical direction of the work surface calculated by the correction operation type determination unit 23 is further determined.
  • the correction operation type determination unit 23 determines whether or not the movement amount is larger than a certain threshold (step S12).
  • step S12 when the correction operation type determination unit 23 determines that the amount of vertical movement of the work surface is greater than the certain threshold, the type of “movement in the vertical direction of the work surface” is used as the correction type.
  • the type is determined by the type determination unit 23, and the correction type estimation process is terminated (step S19).
  • step S12 determines in step S12 that the amount of vertical movement of the work surface is equal to or less than the certain threshold value. If the correction operation type determination unit 23 determines in step S12 that the amount of vertical movement of the work surface is equal to or less than the certain threshold value, the process proceeds to step S21, and in step S21, the current operation (operation) Whether the force bit is "1" or the suction force bit is "1" in the operation flag (validity flag) indicating that the progress information in the database 17 is "1") The type determination unit 23 makes the determination.
  • step S21 if the force bit is “1” in the operation flag (the flag indicating validity) of the operation currently in progress (the progress information in the operation database 17 is “1”), the corrected operation type determination unit 23 In the case of the determination, the wiping operation is meant, so that the correction type is determined as “force correction” (step S17), and the correction type estimation process is terminated.
  • the bit of the suction force is “1” in the flag of the operation (the progress information in the operation database 17 is “1”) (the flag indicating the validity)
  • the correction operation type determination unit 23 When the determination is made, it means that the cleaning is performed by suction. Therefore, it is determined that the correction type is “correction of suction force” (step S18), and the correction type estimation process is terminated.
  • step S3 If it is determined in step S3 that the operation is not performed in the operation database 17 by the correction operation type determination unit 23, the process proceeds to step S6.
  • the correction operation type determination unit 23 determines whether the applied force is horizontal to the work surface and the amount of movement in the horizontal direction for a certain period of time is equal to or greater than a certain threshold value.
  • step S6 when the force applied to the robot arm 5 by the human hand 16 is horizontal to the work surface and the amount of movement in the horizontal direction for a certain period of time is equal to or greater than the certain threshold value, the correction operation type determination unit 23 Is determined as the type of correction “region not desired to be worked” (step S8), and the correction type estimation process is terminated.
  • step S6 when the force applied to the robot arm 5 by the human hand 16 is not horizontal with respect to the work surface (for example, when it is vertical), or even when the force is horizontal to the work surface, the horizontal movement is performed.
  • the correction operation type determination unit 23 determines that the amount is less than the certain threshold, the correction type is determined as “no correction” (step S7), and the correction type estimation process ends.
  • the correction type can be switched by the correction operation type determination unit 23 without using the data input IF 26 such as a button.
  • the correction operation type determination unit 23 determines one type of the above seven types, but can also determine two types of correction at the same time.
  • the correction operation type determination method setting unit 27 in FIG. 3 sets the number of outputs determined by the correction operation type determination unit 23. However, the number of outputs may be input by the correction operation type determination unit 23 using the data input IF 26 and determined by a person.
  • the correction operation type determination unit 23 determines the correction type according to the number of outputs set by the correction operation type determination method setting unit 27. Specifically, when the number of outputs is 1, the correction type is determined by the algorithm of the correction type estimation method of FIG. 14, and when the number of outputs is “2”, the algorithm of FIG. To determine the type of correction. As a result, when the person who operates the household robot 1 is not familiar with the operation, setting the number of outputs to 1 makes it impossible to perform two types of correction at the same time, thus simplifying the operation. On the other hand, if you are used to the operation and want to correct two types at the same time, the correction can be performed efficiently by setting the number of outputs to a value of “2”.
  • the correction operation type determination unit 23 described above outputs one type, but as an example of outputting and correcting two types, the power of the operation database 17 is stronger during wiping work as shown in FIG. 18A. This is a case where it is necessary to clean the work surface at a higher speed than usual. In this case, the two types of wiping force and speed are corrected simultaneously.
  • FIG. 18B shows a case where the suction force is increased while moving the work surface in parallel when cleaning is performed to suck dust and the like. In this case, the two types of movement and position of the work surface and suction force are corrected simultaneously.
  • the robot arm 5 does not move.
  • the robot arm 5 is moved in the direction in which the robot arm 5 is moved in the impedance control mode (a mode in which the force of the human hand 16 is detected and moved by impedance control). Can be made.
  • the force detection unit 53 of the control unit 22 detects the force acting on the robot arm 5, and the information on the force detected by the force detection unit 53 is determined via the information acquisition unit 100.
  • the data is input to the unit 23 (step S31).
  • step S32 all the components of the acquired in detected by the force detection unit 53 and the information acquisition section 100 a force (f x, f y, f z, f ⁇ , f ⁇ , 6 components of f [psi) is (specifically, (f dx of ID "1" in FIG. 33, f dy, f dz, f d ⁇ , f d ⁇ , f d ⁇ )) is the threshold correction or not less whether the operation type determining unit 23 Judge with.
  • step S32 one of the components of the acquired in detected by the force detection unit 53 and the information acquisition section 100 a force (f x, f y, f z, f ⁇ , f ⁇ , 6 components of f [psi) is the (specifically, (f dx, f dy, f dz, f d ⁇ , f d ⁇ , f d ⁇ ) of ID in FIG. 33, "1”) is a threshold determined by the correcting operation type determination unit 23 exceeds If so, the process proceeds to step S33.
  • step S33 the corrective action type determination unit 23 further determines whether or not the current housework robot 1 is operating in the action database 17. Specifically, the cleaning operation is not selected by the operation selection unit 29, and the operation selection unit 29 does not select the operation for all the work IDs in the operation database 17, and the progress information is “0”. ”Is determined by the correction operation type determination unit 23 (when cleaning is not started), the correction operation type determination unit 23 determines that the operation database 17 is not operating, and the process proceeds to step S36. move on.
  • the operation selection unit 29 selects the cleaning operation and starts cleaning, and the correction operation type determination unit 23 determines that the progress information is “1”, the operation database 17 If it is operating, the correction operation type determination unit 23 determines that it is operating, and the process proceeds to step S34.
  • step S34 when the robot arm 5 is gripped by the human hand 16 and a force is applied in the direction in which the cleaning operation of the robot arm 5 is to be corrected, the force applied to the robot arm 5 is detected by the force detector 53, power from the human hand 16 obtained by the detected and the information acquisition unit 100 by the force detection unit 53 (f x, f y, f z, f ⁇ , f ⁇ , f ⁇ ) each having a certain time displacement of The amount is measured by the corrective action type determining unit 23, and the corrective action type is determined as to which of the position component (f x , f y , f z ) or the posture component (f ⁇ , f ⁇ , f ⁇ ) is larger.
  • each time series force (f x , f y , f z , f ⁇ , f ⁇ , f ⁇ ) is measured by the correction operation type determination unit 23, and is constant.
  • the correction operation type determination unit 23 measures how much the force is displaced in time (for example, time 1), and measures the component having the largest displacement. In this example, the displacement of f phi is the largest, the process proceeds as judged by the correction operation type determining unit 23 orientation component is force is applied from the position component to step S39.
  • step S34 determines in step S34 that the displacement amount of the posture is larger than the displacement amount of the position
  • the correction operation type determination is made that the correction type is the type of “change in direction (posture)”. Then, the correction type estimation process is terminated (step S39).
  • step S34 when the correction operation type determination unit 23 determines in step S34 that the displacement amount of the position is equal to or greater than the displacement amount of the posture, the force component in the direction perpendicular to the work surface (for example, installed horizontally on the ground) In the case where the device 6 to be cleaned is f z ), the correction operation type determination unit 23 determines whether or not the threshold value (specifically, f dz of ID “1” in FIG. 33) is greater than or equal to (step S35). ).
  • the threshold value specifically, f dz of ID “1” in FIG. 33
  • a horizontal force component on the work surface (if cleaning the equipment 6 that is set horizontally, for example, ground f x, either or both of the f y) is, to a certain threshold value (specifically 33, the correction operation type determination unit 23 determines whether or not it is greater than or equal to f dx , f dy of ID “1” in FIG. 33 (step S40).
  • step S35 If the correction operation type determination unit 23 determines in step S35 that the force component in the direction perpendicular to the work surface is smaller than the certain threshold value, it determines that there is no correction of the vertical surface (no type) and estimates the correction type. The process ends (step S45). If it is determined in step S40 that the force component in the direction parallel to the work surface is smaller than the certain threshold value, the correction operation type determination unit 23 determines that the horizontal plane is not corrected (no type), and correction type estimation processing is performed. Is finished (step S41).
  • step S40 If it is determined in step S40 that the correction action type determination unit 23 determines that the force component in the direction horizontal to the work surface is equal to or greater than the certain threshold value, the process proceeds to step S42.
  • step S42 it is further determined whether or not the horizontal movement amount of the work surface is equal to or greater than a certain threshold (specifically, g x , g y of ID “2” in FIG. 33). Judge with. In step S42, the correction operation type determination unit 23 determines that the amount of horizontal movement of the work surface is greater than or equal to the certain threshold (specifically, g x , g y of ID “2” in FIG. 33). If it is determined, the correction operation type determination unit 23 determines that the correction type is “movement of the position of the work surface”, and ends the correction type estimation process (step S43).
  • a certain threshold specifically, g x , g y of ID “2” in FIG. 33.
  • step S42 determines in step S42 that the horizontal movement amount of the work surface is less than the certain threshold value, the type of “speed” in the direction horizontal to the work surface is used as the correction type. And the correction type estimation process is terminated (step S44).
  • step S35 If it is determined in step S35 that the corrective action type determining unit 23 determines that the force perpendicular to the work surface is equal to or greater than the certain threshold value, then whether or not the vertical movement amount of the work surface is greater than a certain threshold value. This is determined by the correction operation type determination unit 23 (step S46).
  • step S46 when the correction operation type determination unit 23 determines that the vertical movement amount of the work surface is larger than the certain threshold value, the correction type is determined as the type of “movement in the vertical direction of the work surface”. Then, the correction type estimation process ends (step S50).
  • step S46 when the correction operation type determination unit 23 determines that the vertical movement amount of the work surface is equal to or less than the certain threshold value, the process proceeds to step S47, and in step S47, the current operation is being performed (operation database).
  • the operation flag the flag indicating effectiveness of 17 progress information is “1”
  • the force bit is “1” in the case of the wiping operation, or the suction force bit is “1”. It is determined by the correction operation type determination unit 23.
  • step S 47 if the force bit is “1” in the operation flag (validity flag indicating that the progress information in the operation database 17 is “1”), the correction operation type determination unit 23 In the case of the determination, it means a wiping operation, so that “correction of force” is determined as the correction type (step S48), and the correction type estimation process is terminated.
  • the bit of the suction force is “1” in the flag of the operation (the progress information in the operation database 17 is “1”) (the flag indicating the validity)
  • the correction operation type determination unit 23 When the determination is made, it means that the cleaning is performed by suction. Therefore, it is determined that the correction type is “correction of suction force” (step S49), and the correction type estimation process is terminated.
  • step S33 If it is determined in step S33 that the operation is not performed in the operation database 17 by the correction operation type determination unit 23, the process proceeds to step S36.
  • the correction operation type determination unit 23 determines whether the applied force is horizontal to the work surface and the amount of movement in the horizontal direction for a certain period of time is equal to or greater than a certain threshold value.
  • step S36 the corrective action type determination unit 23 determines that the force applied to the robot arm 5 by the human hand 16 is horizontal to the work surface and the amount of horizontal movement for a certain period of time is equal to or greater than a certain threshold value. In this case, it is determined that the type of correction is “region not desired to be worked” (step S38), and the correction type estimation process is terminated.
  • step S36 when the force applied to the robot arm 5 by the human hand 16 is not horizontal with respect to the work surface (for example, when it is vertical), or even when the force is horizontal to the work surface, the movement in the horizontal direction is performed.
  • the correction operation type determination unit 23 determines that the amount is less than the certain threshold, the correction type is determined as “no correction” (step S36), and the correction type estimation process ends.
  • two or more types of correction can be switched by the correction operation type determination unit 23 without using the data input IF 26 such as a button.
  • the motion correction unit 20 is a function that corrects motion information in the motion database 17 by applying a force to the robot arm 5 with a human hand 16 during motion based on the position, posture, and time of the motion database 17. .
  • the operation correction unit 20 When the power is turned on by a human hand 16 using a data input IF 26 (for example, the power button 26a of the operation panel 26A) disposed on the work table 7 of the housework robot 1, the operation correction unit 20 operates in the impedance control mode. A command is issued to the control parameter management unit 21.
  • a data input IF 26 for example, the power button 26a of the operation panel 26A
  • the operation selection unit 29 selects a desired work from the work list in the operation database 17 and gives an instruction to start the operation.
  • the motion correction unit 20 is based on the motion information of the work ID selected from the motion database 17 (specifically, the position of the rail movable unit 8b and the position, posture, and time of the robot arm 5).
  • the control parameter management unit 21 is instructed to operate the robot arm 5 in the force hybrid impedance control mode.
  • a hybrid impedance control mode (a mode in which the robot arm 5 operates according to a force applied to the robot arm 5 by a person or the like while operating in the position control mode) is set by the operation correction unit 20, and suction force is set.
  • a force control mode is set in the operation correction unit 20 for a component in which a bit of a force flag (a flag indicating effectiveness) is “1”.
  • the component for which neither the hybrid impedance control mode nor the force control mode is set has the impedance control mode set by the operation correction unit 20.
  • the work ID in FIG. 4 is “1”
  • the work for cleaning by sucking dust is shown, and the flag when the work ID is “1” and the operation ID is “1” is 1.
  • 2 and 14th bits are “1”, so that the hybrid impedance control mode is set by the operation correction unit 20 for the x-axis and y-axis components, and the force control mode for the z-axis components.
  • Is set by the motion correction unit 20 and the impedance control mode is set by the motion correction unit 20 for the posture component.
  • the hybrid impedance control mode is set by the motion correction unit 20 for the x-axis and y-axis components
  • the force control mode is set by the motion correction unit 20 for the z-axis component
  • impedance control is performed for the posture component.
  • the mode is set by the operation correction unit 20.
  • the control parameter management unit 21 receives a command from the operation correction unit 20. That is, when a command is issued from the motion correction unit 20 to the control parameter management unit 21 so as to perform the cleaning work in the force hybrid impedance control mode, the housework is performed at the position commanded by the rail movable unit 8b as shown in FIGS. 16A to 16C. While the robot 1 is self-propelled, the robot arm 5 starts the cleaning operation with the position, posture and force or suction force of the operation ID.
  • the robot arm 5 is directly gripped by a human hand 16 and a force is applied to the robot arm 5 parallel to the work surface so as to move in parallel with the work surface.
  • the correction type estimation shown in the flowchart of FIG. 14 based on the force applied by the human hand 16 to the robot arm 5 and the information stored in the operation database 17 acquired by the information acquisition unit 100 by the correction operation type determination unit 23.
  • the type of correction is estimated and determined by processing.
  • the human hand 16 since the human hand 16 applies a force in a direction parallel to the work surface to the robot arm 5 to move the robot arm 5 by a certain threshold value or more, in step S14, the correction type is “the position of the work surface.
  • the correction operation type determination unit 23 determines that the type is “movement”.
  • the x-axis component and the y-axis component move the robot arm 5 in the position control mode by the force hybrid impedance control mode.
  • the force applied to the robot arm 5 by the human hand 16 in the impedance control mode is detected by the force detection unit 53, and the robot arm 5 is moved in the x-axis direction in the direction in which the force is applied to the robot arm 5 by the human hand 16.
  • the cleaning position can be corrected as shown in FIG. 12D by moving in the direction and the y-axis direction.
  • the correction operation type determination unit 23 performs the correction operation type determination unit 23 at the timing when the correction type is determined.
  • the control parameter management unit 21 It can be set so that movements other than the direction of the x-axis and the direction of the y-axis cannot be performed.
  • the x-axis direction and y of the robot arm 5 are made lower than the rigidity in the other directions so that the robot arm 5 can be easily moved in the x-axis direction and the y-axis direction by the human hand 16, and the rigidity in directions other than the x-axis direction and the y-axis direction can be increased.
  • the robot arm 5 can be made difficult to move in a direction other than the x-axis direction and the y-axis direction by the human hand 16.
  • the correction operation type determination unit 23 causes the suction strength of the z-axis component or the force applied to the work surface to be weaker than the operation before the correction or It can also be made smaller (specifically about half).
  • a command can be issued from the correction operation type determination unit 23 to the control parameter management unit 21 so as to stop the suction or force control.
  • the 6th to 17th bits of the flag of the operation database 17 are set to “0” by the correction operation type determination unit 23.
  • the robot arm 5 is grasped by the human hand 16 and the robot arm 5 is moved in the x-axis direction and the y-axis direction by ⁇ x and ⁇ y by applying a force in a direction parallel to the work surface.
  • the value of ⁇ x and the value of ⁇ y are transmitted to the operation correction unit 20 via the control unit 22 and the control parameter management unit 21.
  • the motion correction unit 20 subtracts ⁇ x from all the x coordinate values of the motion information of the selected work ID, and further subtracts ⁇ y from all the y coordinate values to correct the motion information corrected by the motion correction unit 20.
  • the control parameter management unit 21 instructs the control unit 22 to operate the robot arm 5 with the corrected coordinates for ⁇ x and ⁇ y. Thereby, it correct
  • the operation information reduced by ⁇ x and ⁇ y is stored in the operation database 17 by the operation storage unit 15.
  • the correction type estimation process shown in the flowchart of FIG. 14 based on the force applied to the robot arm 5 by the human hand 16 and the information in the action database 17 respectively acquired by the information acquisition part 100 by the correction action type determination part 23.
  • the type of correction is estimated and determined.
  • the correction type is “vertical direction of the work surface”. Is determined by the correction operation type determination unit 23.
  • the cleaning position can be corrected as shown in FIG. 32C by moving the robot arm 5 in the z-axis direction in the applied direction.
  • the correction operation type determination unit 23 performs the second bit of FIG. 6 at the timing when the correction type is determined by the correction operation type determination unit 23.
  • the correction operation type determination unit 23 By setting “1” and setting the other bits to “0” and issuing a command from the correction operation type determination unit 23 to the control parameter management unit 21, movement other than in the z-axis direction cannot be performed. Can be set.
  • the rigidity in the z-axis direction is changed to another direction.
  • the rigidity of the robot arm 5 is made easier to move in the z-axis direction with the human hand 16 and the rigidity other than in the z-axis direction is increased, and the robot arm 5 is moved in the direction other than the z-axis direction with the human hand 16. It can be made difficult to move in the direction.
  • the correction action type determination unit 23 when correcting the movement of the robot arm 5 in the z-axis direction, causes the suction strength of the z-axis component or the force applied to the work surface to be weaker or smaller than that before the correction. (Specifically, about half).
  • a command can be issued from the correction operation type determination unit 23 to the control parameter management unit 21 so as to stop the suction or force control.
  • the 6th to 17th bits of the flag of the operation database 17 are set to “0” by the correction operation type determination unit 23. This prevents the robot arm 5 from being damaged by applying force or suction to the robot arm 5 while moving the robot arm 5 in the z-axis direction, or accidentally sucking in anything other than dust. it can.
  • the value of ⁇ z is Then, the data is transmitted to the operation correction unit 20 via the control unit 22 and the control parameter management unit 21.
  • the motion correction unit 20 transmits motion information corrected by subtracting ⁇ z from all z coordinate values of the motion information of the selected work ID from the motion correction unit 20 to the control parameter management unit 21.
  • the control parameter management unit 21 instructs the control unit 22 to operate the robot arm 5 with the corrected coordinates corresponding to ⁇ z. This corrects the operation as shown in FIG. 32C.
  • the motion information reduced by ⁇ z is stored in the motion database 17 by the motion storage unit 15.
  • the robot arm 5 is directly gripped by a human hand 16 as shown in FIG. 30C.
  • the robot arm 5 is moved in the direction in which the longitudinal direction is desired to be changed.
  • the correction type estimation process shown in the flowchart of FIG. 14 based on the force applied to the robot arm 5 by the human hand 16 and the information in the action database 17 respectively acquired by the information acquisition part 100 by the correction action type determination part 23.
  • the type of correction is estimated and determined.
  • the correction type “direction (posture)” is selected.
  • the correction operation type determination unit 23 determines that the type is “change”.
  • the correction operation type determination unit 23 sets the correction parameter flag in FIG. 6 at the timing when the correction type is determined by the correction operation type determination unit 23.
  • the third bit is set to “1” and the other bits are set to “0”, and a command is issued from the correction operation type determination unit 23 to the control parameter management unit 21.
  • the correction operation type determination unit 23 can set the movement other than the direction of the ⁇ axis so that the movement is not possible. Further, the mechanical impedance set value in the impedance control mode is changed by the correction operation type determination unit 23, and a command is issued from the correction operation type determination unit 23 to the control parameter management unit 21, so that the rigidity in the ⁇ -axis direction is changed to another direction.
  • the rigidity of the robot arm 5 is made easier to move in the ⁇ -axis direction by the human hand 16 and the rigidity other than the ⁇ -axis direction is increased, and the robot arm 5 is moved in the direction other than the ⁇ -axis direction by the human hand 16. It can be made difficult to move.
  • the correction operation type determination unit 23 causes the strength of suction of the z-axis component or the force applied to the work surface to be weaker or smaller than the operation before the correction (specifically Can be halved).
  • a command can be issued from the correction operation type determination unit 23 to the control parameter management unit 21 so as to stop the suction or force control.
  • the 6th to 17th bits of the flag of the operation database 17 are set to “0” by the correction operation type determination unit 23.
  • the robot arm 5 is gripped by a human hand 16 and a force is applied in a direction perpendicular to the work surface to rotate the robot arm 5 in the ⁇ axis direction by ⁇ , the value of ⁇ is Then, the data is transmitted to the operation correction unit 20 via the control unit 22 and the control parameter management unit 21.
  • the motion correction unit 20 transmits the motion information corrected by subtracting ⁇ from all the ⁇ coordinate values of the motion information of the selected work ID from the motion correction unit 20 to the control parameter management unit 21.
  • the control parameter management unit 21 instructs the control unit 22 to operate the robot arm 5 with the corrected coordinates corresponding to ⁇ . This corrects the operation as shown in FIG. 30D.
  • the operation information reduced by ⁇ is stored in the operation database 17 in the operation storage unit 15.
  • the motion correction unit 20 is generated by applying force to the robot arm 5 with the human hand 16 while operating in the force hybrid impedance control mode according to the position, posture, and time of the motion database 17.
  • the corrected position can be corrected for each direction.
  • the type of correction is estimated and determined.
  • the type of “force correction” is selected as the type of correction in step S17. Is determined by the correction operation type determination unit 23.
  • the correction operation type determination unit 23 controls the control parameter management unit to operate in the high-rigidity position control mode from the force hybrid impedance control mode.
  • a command is issued to 21.
  • the high-rigidity position control mode the high-rigidity at the time of position control can be set in the high-rigidity position control mode by the correction-operation-type determining unit 23 at the time of command from the correction operation type determining unit 23 to the control parameter management unit 21. Since the operation flag of operation ID “2” and operation ID “1” in the operation database 17 is set to “1” in the 0, 1, and 8 bits, the z-axis direction operates in the force control mode.
  • control parameter management unit 23 controls the control parameters so that only the z-axis direction operates in the high-rigidity position control mode and the other directions operate in the hybrid impedance control mode. A command is issued to the unit 21.
  • the high-rigidity position control mode is a mode in which the position control mode set for each direction among the hybrid impedance control modes at the time of cleaning is further increased in rigidity, and the gain in the position error compensation unit 56 is increased (specifically In this case, the robot arm 5 can be prevented from being easily moved by applying force to the robot arm 5 with a human hand 16.
  • the force applied to the robot arm 5 by the human hand 16 can be detected by the force detection unit 53.
  • the force detected by the force detection unit 53 of the control unit 22 is notified to the operation correction unit 20.
  • the motion can be corrected so as to strongly wipe only the dirty part.
  • the robot arm 5 is gripped to stop applying force to the robot arm 5.
  • step S20 in FIG. 14 When no force is applied to the robot arm 5 with the human hand 16, all the components of the force fall below the threshold value in step S2 in FIG. "None" (step S20 in FIG. 14).
  • the motion correction unit 20 receives the information of “no correction” and issues a command from the correction operation type determination unit 23 to the control parameter management unit 21 so as to control from the highly rigid position control mode to the hybrid impedance control mode. As a result, the corrected operation database 17 is cleaned.
  • the motion correction unit 20 uses the force information in the motion database 17 to perform cleaning with the corrected force when the human hand 16 applies force while operating in the hybrid impedance control mode. It becomes possible to correct.
  • the correction type estimation process shown in the flowchart of FIG. 14 based on the force applied to the robot arm 5 by the human hand 16 and the information in the action database 17 respectively acquired by the correction action type determination part 23 by the information acquisition part 100.
  • the type of correction is estimated and determined.
  • the correction type is “correction of suction force”. Is determined by the correction operation type determination unit 23.
  • a command is issued to the unit 21.
  • the high-rigidity position control mode the high-rigidity at the time of position control can be set in the high-rigidity position control mode by the correction-operation-type determining unit 23 at the time of command from the correction operation type determining unit 23 to the control parameter management unit 21. Since the operation flag of the operation database 17 with the operation ID “1” and the operation ID “1” is set to “1” in the 0, 1, and 14 bits, the z-axis direction operates in the suction control mode.
  • control parameter management unit 23 controls the control parameters so that only the z-axis direction operates in the high-rigidity position control mode and the other directions operate in the hybrid impedance control mode. A command is issued to the unit 21.
  • the high-rigidity position control mode is a mode in which the normal position control mode is further increased in rigidity, and is realized by increasing the gain in the position error compensation unit 56, and force is applied to the robot arm 5 with the human hand 16.
  • the robot arm 5 When applied, the robot arm 5 can be prevented from moving easily, and the force applied to the robot arm 5 by the human hand 16 can be detected by the force detection unit 53.
  • the force detected by the force detection unit 53 of the control unit 22 is notified to the motion correction unit 20 via the control parameter management unit 21, and the motion correction unit 20 uses the suction force in the z-axis direction of the motion database 17 as the motion database.
  • the force is converted into the suction force. For example, when the force applied to the robot arm 5 by the person is 4.5 [N], the suction force is converted to “4” corresponding to the force 4 to 5 [N] from the conversion table.
  • the robot arm 5 may be held by the person's hand 16 and the force applied to the robot arm 5 by the person's hand 16 may be stopped. That is, when no force is applied to the robot arm 5 with the human hand 16, all components of the force are equal to or less than the threshold values in step S ⁇ b> 2 of FIG. 14, so that the correction operation type determination unit 23 sets “ "No correction” is determined (step S20 in FIG. 14).
  • the motion correction unit 20 issues a command to the control parameter management unit 21 to control from the high-rigidity position control mode in the hybrid impedance control mode. As a result, the corrected operation database 17 is cleaned.
  • the motion correction unit 20 applies the force to the robot arm 5 with the human hand 16 while operating in the hybrid impedance control mode by the suction force of the motion database 17, thereby correcting the suction force. It can be corrected to clean.
  • the robot arm 5 is directly held by the person's hand 16 and accelerated.
  • the force is applied to the robot arm 5 with a human hand 16 in the direction opposite to the direction of cleaning.
  • the speed of the hand position of the robot arm 5 may be changed, but the force is applied to the robot arm 5 with the human hand 16 so as not to move the position beyond the certain threshold.
  • the correction type estimation process shown in the flowchart of FIG. 14 based on the force applied to the robot arm 5 by the human hand 16 and the information in the action database 17 respectively acquired by the correction action type determination part 23 by the information acquisition part 100.
  • the type of correction is estimated and determined.
  • the work surface is selected as the correction type in step S15 of FIG.
  • the correction operation type determination unit 23 determines that the type is “speed” in the horizontal direction.
  • the robot arm 5 While the robot arm 5 is moved in the position control mode by the hybrid impedance control mode, the force applied to the robot arm 5 by the human hand 16 is detected by the force detection unit 53 by the impedance control mode, and the robot is moved by the human hand 16.
  • the robot arm 5 is moved in the x-axis direction and the y-axis direction in the direction in which a force is applied to the arm 5. From the position of the robot arm 5 shown in the operation database 17, for example, work ID operation ID as (x 1, y 2, z 1), the position of the robot arm 5 of the next operation ID (x 2, y 2, z when the time to move to 2) and t 1, the case of changing the speed of the robot arm 5 by the force of the human hand 16 (see FIG.
  • the value of time t 2 is the control unit 22 and control parameter management.
  • the data is transmitted to the operation correction unit 20 via the unit 21.
  • the motion correction unit 20 changes the motion information of the selected work ID from the time t 1 to the time t 2 and transmits the motion information from the motion correction unit 20 to the control parameter management unit 21.
  • the control parameter managing unit 21 instructs the control parameter managing unit 21 to operate in t 2 is corrected time to the control unit 22.
  • the motion correction unit 20 applies the force to the robot arm 5 with the human hand 16 while operating in the force hybrid impedance control mode based on the information on the position, posture, and time of the motion database 17.
  • the operation speed of the robot arm 5 can be corrected.
  • FIG. 20A is a view of the work surface as viewed from above.
  • a region RB that is not desired to be worked is a hatched region
  • the human hand 16 moves the robot arm 5 (or the cleaning unit 9 or 10), As indicated by the arrow, the robot arm 5 (or the cleaning units 9 and 10) is moved along the outline of the region RB that is not desired to be worked.
  • a mark 63 is given to the center tip of the upper surface of the suction nozzle 9 (or the mop 10) attached to the hand (hand 30) of the robot arm 5 (see FIGS. 31, 20A and 20B). And move the mark 63 in the direction that you do not want.
  • the correction operation type determination unit 23 executes the correction type estimation process shown in FIG. 14 to determine that the operation database 17 is not operating (steps S2, S3, and S6). If the force applied to 5 is horizontal to the work surface and the amount of movement in the horizontal direction for a certain period of time is equal to or greater than the certain threshold value, in step S8, the “type of region that you do not want to work” is selected as the correction type. It is determined that it is a type.
  • the force applied to the robot arm 5 by the human hand 16 is detected by the force detection unit 53, and the robot arm 5 is moved in the x-axis direction and in the direction in which the force is applied to the robot arm 5 by the human hand 16.
  • the position (x 1 , y 1 ), the position (x 2 , y 2 ), the position (x 3 , y 3 ), and the position (x 4 , y 4 ) are moved in the y-axis direction.
  • these pieces of position information are transmitted to the operation correction unit 20 via the control unit 22 and the control parameter management unit 21.
  • the motion correction unit 20 stores these pieces of position information as information on the work impossible region RB in the work unavailable region database 28 by the operation storage unit 15.
  • the fact that these four positions are information on the apex of the work impossible area RB means that, for example, the hand position of the robot arm 5 moved by a person at a certain interval is acquired and the coordinates of the acquired hand position are connected.
  • An area can be generated and used as an unworkable area RB.
  • a function for determining the shape of the region is added. For example, when “rectangular” is set, the moving direction is changed at an angle close to 90 degrees.
  • the position is stored as vertex information, and when “random” is set, the hand position of the robot arm 5 moved by a person at a certain interval is acquired, and the coordinates of the acquired hand position are connected. And can be used as an unworkable area RB.
  • the correction parameter shown in FIG. 6 is displayed at the timing when the correction type is determined by the correction operation type determination unit 23.
  • the robot arm 5 is set by setting the 0th and 1st bits of the flag to “1” and setting the other bits to “0” and issuing a command from the correction operation type determination unit 23 to the control parameter management unit 21.
  • the rigidity in the x-axis direction and the y-axis direction can be reduced,
  • the hand 16 makes it easy to move the robot arm 5 in the x-axis direction and the y-axis direction, and increases the rigidity in the axial direction other than the x-axis direction and the y-axis direction. It can be made difficult to move in directions other than the y-axis direction.
  • the motion correction unit 20 can set an area where the user's hand 16 does not want to perform work (for example, cleaning work) by applying force.
  • the display unit 14 displays the screen of the display unit 14 divided into left and right two screens 14a and 14b, and the operation of the robot arm 5 described in the operation database 17 is displayed on the left screen 14a. Is displayed as video, photo or text. Further, the correction type information estimated by the correction operation type determination unit 23 is displayed on the screen 14b on the right side as video, photos, or text.
  • the correction operation type determination unit 23 sets “ At the timing determined to be the type of “force correction”, the image on which the force is corrected and the strength of the current force are displayed on the right screen 14b.
  • the power of the household robot 1 is turned on by the human hand 16 using the data input IF 26 (step S121).
  • the operation correction unit 20 issues a command to the control parameter management unit 21 to control in the impedance control mode (step S122).
  • step S130 determines whether or not the work impossible area RB is to be corrected. If the correction operation type determination unit 23 determines that the work impossible area RB is corrected, the operation correction unit 20 performs correction (step S133), and the correction information is stored in the operation database 17 by the operation storage unit 15. Store (step S134). Thereafter, the process proceeds to step S123.
  • step S130 If it is determined in step S130 that the correction operation type determination unit 23 does not correct the work impossible area RB, or if step S134 is executed, the process proceeds to step S123.
  • step S123 the operation selecting unit 29 selects one cleaning operation from the cleaning operation list displayed on the display unit 14 through the data input IF 26, and the operation selection unit 29 selects the progress information in the operation database 17 as progress information.
  • the current cleaning work is set (step S123).
  • the motion correction unit 20 instructs the control parameter management unit 21 to operate in the force hybrid impedance control mode, and guides the robot arm 5 to the work surface such as the device 6 with a human hand 16 to input the data input IF 26 (for example, an instruction to start the cleaning operation is issued using the start button of the cleaning switch 26c (step S124).
  • the correction operation type determination unit 23 estimates and determines the type of the correction operation (step S125).
  • step S125 when the correction operation type determination unit 23 determines that the type of correction is the type of force applied to the work surface or the type of suction force, highly rigid position control in the direction perpendicular to the work surface.
  • a command is issued from the operation correction unit 20 to the control parameter management unit 21 so as to operate in the mode (steps S126 and S127).
  • the motion correction unit 20 corrects the motion information by holding the robot arm 5 with the human hand 16 and applying a force to the robot arm 5 with the human hand 16 in the direction to be corrected (step S128).
  • step S125 if it is determined in step S125 that the correction type is a correction type other than the force applied to the work surface or the suction force type, the control mode is not changed in the force impedance control mode, and the person in the direction to be corrected is selected.
  • the motion correction unit 20 corrects the motion information (steps S 126 and S 128).
  • step S128 the cleaning operation information corrected in step S128 is stored in the operation database 17 by the operation storage unit 15, and the series of cleaning work and cleaning operation setting processing ends (step S129).
  • step S125 determines in step S125 that the correction type is “no correction”
  • step S126 and S131 the series of cleaning work and cleaning operation setting processing ends (steps S126 and S131).
  • the housework robot 1 After the setting process of the cleaning work and cleaning operation is completed, the housework robot 1 performs cleaning based on the set cleaning work and cleaning operation.
  • step S121 to S122, step S130, step S123, step S124, step S133 to step S134, step S125 to step S128, and step S131 the hybrid impedance control mode or the high rigidity can be obtained during the operation with the force hybrid impedance control.
  • the cleaning operation by the robot arm 5 is realized by correcting the cleaning operation by the position control.
  • correction operation type determination unit 23 can automatically switch and correct a plurality of cleaning operations by simply applying force to the robot arm 5 with a human hand 16 without using a button or the like.
  • the correction operation type determination unit 27 allows a person who is accustomed to the operation of the robot arm 5 or a skilled person to perform two types of correction at the same time at one time. Types of corrections can be made.
  • the machine impedance value of the robot arm 5 is appropriately set according to the type of the correction operation, so that the machine arm according to the correction direction of the robot arm 5. Since it can be controlled by changing the impedance value, or the suction force or force being corrected can be weakened or stopped, the device 6 may be damaged or a thing other than dust may be accidentally sucked in during the correction of the cleaning operation. Can be prevented.
  • the motion correction unit 20 includes the force applied to the robot arm 5 by the human hand 16 and the information in the motion database 17 respectively acquired by the information acquisition unit 100 by the correction operation type determination unit 23.
  • the correction operation type determination unit 23 may start the correction after a certain time after estimation. In this case, until the correction is started, the person can operate as many times as necessary until the intended correction type is selected.
  • the operation selection unit 29, the operation storage unit 15, the operation correction unit 20, the correction operation type determination unit 23, the correction operation type determination method setting unit 27, the control parameter management unit 21, and the control unit 22 Etc., or any part of them can itself be composed of software. Therefore, for example, as a computer program having steps constituting the control operation of the first embodiment of the present specification or an embodiment to be described later, it is readable and stored in a recording medium such as a storage device (hard disk or the like), and the computer Each step described above can be executed by reading the program into a temporary storage device (semiconductor memory or the like) of the computer and executing it using the CPU.
  • a temporary storage device semiconductor memory or the like
  • the basic configuration of the robot arm control device of the housework robot 1 including the robot arm control device is the same as that of the first embodiment, so the description of the common parts is as follows. Omitted and only different parts will be described in detail below.
  • the housework robot 1 is a robot that uses a robot arm 5 to stir the ingredients in the pot 3. That is, the housework robot 1 according to the second embodiment uses the robot arm 5 in the home to perform housework work while acting on the object of housework (cooking work) (for example, ingredients in the pot 3). Robot to perform.
  • the robot arm 5 of the household robot 1 is installed on the wall surface 7a of the work table 7, and the base end of the robot arm 5 is movably supported by the rail 8 fixed to the wall surface 7a.
  • the robot arm 5 can be moved on the rail 8 in the lateral direction along the rail 8, for example, in the horizontal direction, automatically by the force of the hand 16 of the person 16A, or by a motor or the like.
  • the fixing position of the base end of the robot arm 5 is not limited to the wall surface 7a of the work table 7, but may be a ceiling or the like.
  • the side surface of the work table 7 includes a data input IF 26 such as an operation panel 26A on which buttons 26a and the like are arranged, and a display unit 14 as an example of display means arranged on the wall surface of the work table 7 and the like. Has been.
  • the rail 8 has a rail fixed portion 8a fixed to the wall surface 7a and a rail movable portion that has a wheel (not shown) that is driven to rotate forward and backward by driving of the motor 65 and is movable with respect to the rail fixed portion 8a. 8b.
  • the base part 34 to which the base end of the robot arm 5 is connected is connected to the rail movable part 8b, and the base part 34 of the robot arm 5 is configured to be movable together with the rail movable part 8b with respect to the rail fixing part 8a. ing.
  • a wheel that is driven to rotate forward and backward by a motor 65 is provided on the base portion 34 to which the base end of the robot arm 5 is connected, and along the rail 8 fixed to the wall surface 7a, It is good also as a structure that the base part 34 moves.
  • a hand 30 that can detachably hold the ladle 4 as an example of a cooking utensil for stirring the pot 3.
  • the data input IF 26 for example, pressing “ON” of the power button 26a of the operation panel 26A in FIG. 26
  • the hand 16 of the person 16A is arranged on the side surface of the work table 7
  • the power is used.
  • the operation of detachably holding the ladle 4 on the hand 30 is the same as that of attaching the suction nozzle 9 or the mop 10 to the hand in the first embodiment, and thus the description thereof is omitted.
  • the housework robot 1 is activated,
  • An operation selecting unit 29 described later selects an optimal operation, for example, a housework operation (cooking operation), and starts a housework operation (cooking operation) based on the selected operation.
  • the ladle 4 attached to the hand 30 of the robot arm 5 starts the operation of stirring the whole ingredients in the pot while rubbing the pot bottom in the pot 3.
  • the person 16A confirms the condition of the ingredients of the pan 3, and corrects the operation of the robot arm 5 with a strong force so that the ladle 4 is mixed while rubbing the pan bottom strongly as shown in FIG. 36B.
  • the entire ingredients can be mixed while rubbing the pan bottom with a strong force in the ladle 4 held by the robot arm 5.
  • FIG. 43 is a diagram showing in detail the components of the control device for the robot arm 5 constituting the housework robot 1, and similarly to the first embodiment, the control device main body 45 and the motion generation device 12 for generating motion.
  • FIG. 4 is a diagram illustrating a detailed configuration of a robot arm 5 to be controlled, a rail 8, and a peripheral device 47.
  • the control device of the housework robot 1 is roughly composed of a control device main body 45, the motion generation device 12, and a peripheral device 47. Since the control device main body 45 and the robot arm 5 are the same as those in the first embodiment, description thereof is omitted.
  • the motion generation device 12 includes a motion database 17, an unworkable area database 28, a corrected motion type determination method setting unit 27, a motion correction unit 20, a corrected motion type determination unit 23, and an object state determination unit (object An example of a state determination unit) 19, an operation storage unit 15, an operation selection unit 29, and an information acquisition unit 100 are provided.
  • the work procedure information database 18 identifies a work ID number for identifying a work, a process ID number for identifying individual processes of the work, and an operation of the robot arm 5 in the process.
  • Operation ID number information related to the process corresponding to the process ID number, elapsed time that is the time taken for the process, amount to be cooked in the process, and state ID number that identifies the state of the object in the process
  • progress information indicating whether or not it is currently operating.
  • the state of the object means an object when cooking work is performed on an object (for example, ingredients in the pan 3) of housework (for example, cooking work) using the robot arm 5 in the home.
  • ingredients in the pan 3 means information on the state (for example, a viscous state, a rigid state, and a burned state, which will be described later).
  • the status ID indicates the status information shown in FIG. 44C as an example.
  • the state ID includes a state ID number that identifies the state, an object information ID number that is an ID number that identifies object information (object information) in the process, and the object information ID.
  • the information indicating the viscosity of the object information indicated by the object the information indicating the rigidity indicated by the object information ID, the information indicating the degree of burning of the object information ID, and the viscosity, rigidity, and burning
  • Priority state information indicating whether the state is prioritized.
  • This priority state information indicates “1” when priority is given to viscosity, “2” when priority is given to stiffness, “3” when priority is given to burning, and “0” when neither value is given priority.
  • the name of the object information is recorded for each object information ID.
  • the viscosity is expressed in five stages from “1” to “5”. “1” indicates that the viscosity value is small, for example, a state where there is no stickiness of the material indicated by the object information. When the viscosity value is 5, it indicates a state in which the stickiness is considerably strong.
  • the rigidity is shown in five stages from “1” to “5”. When the stiffness value is “1”, the material indicated by the object information is soft, and when it is “5”, it is hard. Burning is shown in five stages from “1” to “5”, “1” indicates that there is little burning, and “5” indicates that burning is large.
  • the progress information is information indicating whether or not the current operation is a process, and “1” indicates that the current operation is being performed, and “0” indicates that the operation is not being performed.
  • 44A shows a series of operation IDs in the operation database 17, and shows the operation of the robot arm 5 in each process.
  • the work procedure information database 18 collects home work procedure information such as cooking recipe information as an example of work from an information database 98 in an external web server via the Internet 99.
  • the manufacturer of the robot arm 5 may prepare in advance in the control device of the robot arm 5 when the robot arm 5 is shipped.
  • FIG. 35 is a specific example of the operation database 17 of the second embodiment. Since the description about each information is the same as that of 1st Embodiment, description is abbreviate
  • operation IDs “1” to “8” are operations for stirring the whole of the pot 3 while rubbing the pot bottom, as shown in FIG. 36A.
  • Information on the position, posture and time of the robot arm 5 in the motion database 17 is obtained by, for example, directly holding the robot arm 5 with a human hand 16 as shown in FIG. 5, the control unit 22 obtains information on the hand position and posture of the robot arm 5 at certain time intervals (for example, every 0.2 msec), and together with the time information, the operation database 17 stores the information on the operation database 17.
  • information on position, orientation, and time may be generated in advance by the manufacturer at the time of product shipment and stored in the operation database 17.
  • the object state determination unit 19 determines the state of the object according to information regarding the state of the work procedure information database 18 with respect to the process ID in which the robot arm 5 is operating in the work procedure information database 18 (for example, The state of the ingredients in the pan 3 as an example of the object is determined in terms of the viscous state, the rigid state, and the burned state). Specifically, the state ID with the process ID “1” in FIG. 44A is “1”, and the priority state with the state ID “1” in FIG. 44C is “0”. Assuming that the state determination unit 19 does not make a determination, the object state determination unit 19 outputs “0”. When the process ID in FIG. 44A is “2”, the state ID is “2”, and the priority state is “3” from FIG. 44C.
  • “Scorching” when the state ID is “2” has a small value of “1” (less than “3”, which is an example of a scoring threshold value).
  • the object state determination unit 19 outputs “0”.
  • the state ID in FIG. 44C is “3”
  • the priority state is “3”
  • the burnt state is prioritized.
  • “Burn” when the state ID is “3” is “3”. Therefore, when the burn value is “3” or more, which is an example of the threshold value for burn, the burned state and the object
  • the state determination unit 19 makes a determination, and the object state determination unit 19 outputs “1”. Since the priority states in the case where the state ID in FIG. 44C is “5” and the state ID is “9” respectively indicate “1”, the viscous state is prioritized.
  • the object state determination unit 19 determines that the viscosity is small, and the object state determination unit 19 sets “0”. Output.
  • the object state determination unit 19 determines that the viscosity is large, and the object state determination unit 19 sets “1”. Output. Since the priority states in the case of the state ID “6” and the state “7” in FIG. 44C are “2”, the rigidity state is given priority.
  • the object state determination unit 19 determines that the rigidity is small, that is, the soft state, and the target The object state determination unit 19 outputs “1”.
  • the object state determination unit 19 determines that the object is in a hard state, and the object state determination unit 19 sets “0”. Output.
  • the object state determination unit 19 compares the numerical value representing each state of the object with the threshold value related to each state, and changes the output value at or above the threshold value. Judging the state.
  • the operation selection unit 29 measures the time with the built-in timer of the control device 1000 from the time of selecting the work, and based on the elapsed time and information on the time during which each operation of the work procedure information database 18 acts.
  • the operation selection unit 29 refers to the operation ID of the selected process ID from the operation database 17 and sets “1” in the progress information of the currently operating operation ID.
  • the correction operation type determination unit 23 is a correction type that allows the operation correction unit 20 to correct an operation by applying a force to the robot arm 5 with a hand 16 of the person. To decide.
  • the first correction type is “movement of the position of the work surface”. Specifically, as shown in FIGS. 38A and 38B (viewed from the top of FIG. 38A), when the stirring operation is performed while rubbing the bottom of the pan 3, using the operation information that operates, FIG. As shown in FIG. 38, when a force is applied to the robot arm 5 from the side with the human hand 16, the position of the robot arm 5 in the horizontal direction with respect to the work surface of the robot arm 5 (the bottom of the pan 3) as shown in FIG. The ladle 4 held by the hand 30 of the robot arm 5 can be moved in parallel with the pan bottom surface of the pan 3.
  • the second type of correction is the “force applied” when the pot bottom is stirred. This is effective when the force bit is “1” in the operation flag (the flag indicating validity) of the operation currently being performed (the progress information of the operation database 17 is “1”).
  • the force bit is “1” in the operation flag (the flag indicating validity) of the operation currently being performed (the progress information of the operation database 17 is “1”).
  • FIG. 36A when a force is applied downward from above to the robot arm 5 with a human hand 16 as shown in FIG.
  • the mixing operation of the robot arm 5 can be corrected to weaken the force application.
  • the third type of correction is the “speed” of stirring (movement) of the hand of the robot arm 5 (ie, the ladle 4).
  • the robot arm 5 when the robot arm 5 is being stirred, if a force is applied to the robot arm 5 with a human hand 16 in a direction opposite to the advancing direction of the robot arm 5 as shown in FIG. As shown in FIG. 40C, the moving speed during the stirring operation can be reduced.
  • the motion correction unit 20 Speed can be accelerated.
  • the fourth type of correction is “change of direction (posture)”.
  • a force is applied to change the orientation of the hand 30 of the robot arm 5 with the human hand 16 as shown in FIG. 39B.
  • the motion correcting unit 20 can change the posture of the hand 30 of the robot arm 5 as shown in FIG. 39C and change the motion to rub the inner side surface of the pan 3 with the ladle 4. This can be realized by changing the posture ( ⁇ , ⁇ , ⁇ ) of the hand (hand 30) of the robot arm 5.
  • the fifth type of correction is “movement in the vertical direction of the work surface”.
  • FIG. 41A during the agitation work with the robot arm 5, as shown in FIG. 41B, an upward force is applied to the robot arm 5 with a human hand 16 to place the robot arm 5 on the convex portion 7a of the work table 7.
  • the operation correction unit 20 can perform the stirring work with the ladle 4 in the pan 3a as shown in FIG. 41C.
  • the correction operation type determination unit 23 determines one type of correction among the five types of correction. Specifically, one of the five types of correction is selected by the data input IF 26 such as a button, or is detected by the force detection unit 53 and acquired by the information acquisition unit 100. The force applied to the robot arm 5 by the human hand 16, the force applied to the robot arm 5 stored in the motion database 17 and acquired by the information acquisition unit 100, and the state of the object detected by the object state determination unit 19 Then, the correction operation type determination unit 23 estimates the type based on the relationship information with the correction type (for example, the relationship information between the direction in which the force is applied, the magnitude, and the correction type).
  • the relationship information with the correction type for example, the relationship information between the direction in which the force is applied, the magnitude, and the correction type.
  • the robot arm 5 does not move.
  • the robot arm 5 is moved in the direction in which the robot arm 5 is moved in the impedance control mode (a mode in which the force of the human hand 16 is detected and moved by impedance control). Can be made.
  • the force detection unit 53 of the control unit 22 detects the force acting on the robot arm 5, and the information on the force detected by the force detection unit 53 is determined via the information acquisition unit 100.
  • the data is input to the unit 23 (step S71).
  • step S72 the all components obtained in is detected by the force detection unit 53 and the information acquisition section 100 a force (f x, f y, f z, f ⁇ , f ⁇ , 6 components of f [psi) is (specifically, (f dx of ID "1" in FIG. 33, f dy, f dz, f d ⁇ , f d ⁇ , f d ⁇ )) is the threshold correction or not less whether the operation type determining unit 23 Judge with.
  • the control mode in that case is an impedance control mode.
  • step S72 the one of component (f x of the acquired detected by the force detection unit 53 and the information acquisition unit 100 force, f y, f z, f ⁇ , f ⁇ , of the six components of the f [psi ) Exceeds a certain threshold (specifically, (f dx , f dy , f dz , f d ⁇ , f d ⁇ , f d ⁇ ) of ID “1” in FIG. 33). If the type determining unit 23 determines, the process proceeds to step S73.
  • the corrected operation type determination unit 23 further determines whether or not the current household robot 1 is operating in the operation database 17 based on the information acquired through the information acquisition unit 100. Specifically, the correction operation type determination unit 23 determines that no operation is selected by the operation selection unit 29 and the progress information is “0” for all the operation IDs in the operation database 17. In the case of determination (a state in which work is not started), the correction operation type determination unit 23 determines that the operation database 17 is not operating, and does not perform correction (step S77). The correction type estimation process ends.
  • step S74 when the robot arm 5 is gripped by the human hand 16 and a force is applied in a direction in which the operation of the robot arm 5 is desired to be corrected, the force applied to the robot arm 5 is detected by the force detection unit 53, and the force is detected. Displacement of the forces (f x , f y , f z , f ⁇ , f ⁇ , f ⁇ ) from the human hand 16 detected by the detection unit 53 and acquired through the information acquisition unit 100 for a certain period of time.
  • the amount is measured by the correction action type determination unit 23, and the correction action type indicates which displacement amount of the position component (f x , f y , f z ) or the posture component (f ⁇ , f ⁇ , f ⁇ ) is larger. Measurement is performed by the determination unit 23. Specifically, as shown in FIG. 15, each time series force (f x , f y , f z , f ⁇ , f ⁇ , f ⁇ ) is measured by the correction operation type determination unit 23, and is constant.
  • the correction operation type determination unit 23 measures how much the force is displaced in time (for example, time 1), and the correction operation type determination unit 23 measures the component having the largest displacement. In this example, the displacement of f phi largest, as judged by the correction operation type determining unit 23 orientation component is force is applied from the position component, the process proceeds to step S79.
  • the correction operation type determination unit 23 determines in step S74 that the displacement amount of the posture is larger than the displacement amount of the position, the correction operation type determination is made that the correction type is “direction (posture) change”. Then, the correction type estimation process is completed (step S79).
  • the control mode at that time is the same control mode (force hybrid impedance control mode) as before the correction type is determined.
  • step S74 when the correction operation type determination unit 23 determines in step S74 that the displacement amount of the position is equal to or greater than the displacement amount of the posture, the force component in the direction perpendicular to the work surface (the bottom surface of the pan 3) Correction operation (for example, f z when stirring along the bottom of the pan 3 placed horizontally on the ground) is greater than a certain threshold (specifically, f dz of ID “1” in FIG. 33)
  • a certain threshold specifically, f dz of ID “1” in FIG. 33
  • step S75 when it is determined by the correction operation type determination unit 23 that the force component in the direction perpendicular to the work surface (the bottom surface of the pan 3) is smaller than the certain threshold value, the work surface (the bottom surface of the pan 3) Force component in a horizontal direction (for example, f x and / or f y when stirring along the bottom of the pan 3 horizontally disposed on the workbench 7) has a certain threshold (specifically, The correction operation type determination unit 23 determines whether or not it is greater than or equal to f dx , f dy of ID “1” in FIG. 33 (step S80).
  • step S80 (specifically, f x of ID "1" in FIG. 33, f y) working surface thresholds horizontal force component (pot bottom of the pot 3) is said to be less than the correction
  • the operation type determination unit 23 determines, no correction (no type) is determined, and the correction type estimation process ends (step S81). If there is no correction, stop the correction and work.
  • step S80 if the correction operation type determination unit 23 determines that the force component in the direction horizontal to the work surface (the bottom surface of the pan 3) is equal to or greater than the certain threshold value, the process proceeds to step S91.
  • step S91 the object state determination unit 19 determines the state of the object based on the information in the work procedure information database 18.
  • “1” is output from the object state determination unit 19, that is, when the object state determination unit 19 determines that the object is burnt, easily crushed, or has a strong stickiness
  • “Speed correction” is determined by the correction operation type determination unit 23 (step S85), and the correction type estimation process ends.
  • the object state determination unit 19 outputs “1” in step S91, that is, if it is determined that the object is scorched, crushed easily, or has a strong stickiness
  • the speed is determined in step S85. Correction can be made while adjusting the adjustment. For example, if the object is burnt, the speed can be increased. If the object is easily crushed, the speed can be decreased. If the object is strong, the object can be mixed at an increased speed.
  • step S91 when the object state determination unit 19 determines the state of the object based on the information in the work procedure information database 18, and outputs “0” from the object state determination unit 19, that is, burns. If the object state determination unit 19 determines that the object state is not hard, or the stickiness is small, the process proceeds to step S83.
  • step S83 the horizontal movement amount of the work surface (the bottom surface of the pan 3) calculated by the correction operation type determination unit 23 is set to a certain threshold value (specifically, g x of ID “2” in FIG. 33). , G y ) or more, when the correction operation type determination unit 23 determines that the correction type is “movement of the work surface position”, the correction operation type determination unit 23 determines the correction type estimation process. Is finished (step S84).
  • the control unit 22 through the control parameter management unit 21 or the information acquisition unit 100.
  • the hand position of the robot arm 5 before the human operation and the hand position during the operation are input to the correction operation type determination unit 23, and a correction operation is performed using a value obtained by subtracting the hand position before the operation from the hand position during the operation. It can be calculated by the type determining unit 23. Further, when the movement amount in the direction perpendicular to the work surface (the pan bottom surface of the pan 3) is calculated by the correction operation type determination unit 23, specifically, the control parameter management unit 21 or the information acquisition unit 100 is controlled from the control unit 22.
  • the z component of the hand position of the robot arm 5 before the human operation and the z component of the hand position during the operation are input to the correction operation type determination unit 23, and the hand position before the operation is determined from the z component of the hand position during the operation.
  • a value obtained by subtracting the z component of can be calculated by the correction operation type determination unit 23 as a movement amount.
  • step S83 when the correction operation type determination unit 23 determines that the horizontal movement amount of the work surface (the bottom surface of the pan 3) is less than the certain threshold value, the correction surface is horizontal as the correction type.
  • the type of “speed” in the correct direction is determined, and the correction type estimation process is terminated (step S85).
  • step S75 if the correction operation type determination unit 23 determines that the force perpendicular to the work surface (the bottom surface of the pan 3) is equal to or greater than the certain threshold value, the process proceeds to step S90.
  • step S90 the object state determination unit 19 determines the state of the object based on the information in the work procedure information database 18.
  • the “force correction” is determined by the object state determination unit 19 (step S86), and the correction type estimation process ends. If the object state is determined by the object state determination unit 19 in step S90 and “0” is output, that is, if it is determined that the object is not burnt, is hard, or has a small stickiness, the process proceeds to step S82. move on.
  • step S82 if the correction operation type determination unit 23 determines that the vertical movement amount of the work surface (the bottom surface of the pan 3) is equal to or less than the certain threshold value, the process proceeds to step S86.
  • step S90 when the state of the object is determined by the object state determination unit 19 and "0" is output, that is, the object state is determined to be burnt, easily crushed, or strong sticky.
  • the correction operation type determination unit further determines whether or not the vertical movement amount of the work surface (the bottom surface of the pan 3) calculated by the correction operation type determination unit 23 is greater than a certain threshold value. The determination is made at step 23 (step S82).
  • step S82 when the correction operation type determining unit 23 determines that the vertical movement amount of the work surface (the bottom surface of the pan 3) is larger than the certain threshold value, the correction type is “work surface vertical direction”.
  • step S90 when the object is scorched, is in a state of being easily crushed, or has a strong stickiness, correction can be performed while adjusting the force. For example, if it is burnt, the power can be increased, if it is crushed easily, the power can be weakened, and if it is sticky, the power can be increased to mix well.
  • the correction type can be switched by the correction operation type determination unit 23 without using the data input IF 26 such as a button.
  • the correction operation type determination unit 23 determines one type of the above five types, but can also determine two types of correction at the same time.
  • the correction operation type determination method setting unit 27 in FIG. 3 sets the number of outputs determined by the correction operation type determination unit 23. However, the number of outputs may be input by the correction operation type determination unit 23 using the data input IF 26 and determined by a person.
  • the correction operation type determination unit 23 determines the correction type according to the number of outputs set by the correction operation type determination method setting unit 27. Specifically, when the number of outputs is 1, the correction type is determined by the algorithm of the correction type estimation method in FIG. As a result, when the person who operates the household robot 1 is not familiar with the operation, setting the number of outputs to 1 makes it impossible to perform two types of correction at the same time, thus simplifying the operation. On the other hand, if you are used to the operation and want to correct two types at the same time, the correction can be performed efficiently by setting the number of outputs to a value of “2”.
  • the correction operation type determination unit 23 described above outputs one type, but it may output and correct two types as in the first embodiment.
  • the motion correction unit 20 applies the force to the robot arm 5 with the human hand 16 during the motion based on the position, posture, and time of the motion database 17, and thus the motion of the motion database 17. This function corrects information.
  • the operation correction unit 20 When the power is turned on by a human hand 16 using a data input IF 26 (for example, the power button 26a of the operation panel 26A) disposed on the work table 7 of the housework robot 1, the operation correction unit 20 operates in the impedance control mode. A command is issued to the control parameter management unit 21.
  • a data input IF 26 for example, the power button 26a of the operation panel 26A
  • the operation selection unit 29 selects a desired work from the work list in the work procedure information database 18 and gives an instruction to start the operation.
  • the motion correction unit 20 is based on the motion information of the motion ID indicated by the process ID in the work procedure information database 18 (specifically, the position of the rail movable portion 8b and the position, posture, and time of the robot arm 5).
  • the control mode of 8b and the robot arm 5 is set.
  • the flag bit is “1” in the flag (the flag indicating validity) for the operation ID “1” in the operation database 17.
  • a hybrid impedance control mode (a mode in which the robot arm 5 operates according to the force applied to the robot arm 5 from a person or the like while operating in the position control mode) for each position and posture of the robot arm 5 ) Is set by the operation correction unit 20, and a command is issued to the control parameter management unit 21.
  • a command is issued from the operation correction unit 20 to the control parameter management unit 21, a stirring operation is started as shown in FIG. 38A.
  • a hybrid impedance control mode (a mode in which the robot arm 5 is actuated according to the force applied to the robot arm 5 by a person or the like while operating in the position control mode) is set by the motion correction unit 20.
  • the force control mode is set by the operation correction unit 20 for the component in which the bit of the flag (flag indicating validity) is “1”.
  • the component for which neither the hybrid impedance control mode nor the force control mode is set has the impedance control mode set by the operation correction unit 20.
  • the work ID “3” in FIG. 35 shows the work of stirring while rubbing the bottom of the pot, and the flag when the operation ID is “1” is “1” only in the first, second, and eighth bits.
  • the hybrid impedance control mode is set by the motion correction unit 20 for the x-axis component and the y-axis component, and the force control mode is set by the motion correction unit 20 for the z-axis component.
  • the impedance control mode is set by the operation correction unit 20.
  • the control parameter management unit 21 receives a command from the operation correction unit 20. That is, when a command is issued from the operation correction unit 20 to the control parameter management unit 21 to perform the mixing operation in the force hybrid impedance control mode, the mixing operation is started as shown in FIG. 38A.
  • the robot arm 5 is directly gripped by a human hand 16 and is parallel to the work surface (the bottom surface of the pan 3) so as to move parallel to the work surface (the bottom surface of the pan 3). Apply force to the robot arm 5.
  • the correction type estimation shown in the flowchart of FIG. 42 based on the force applied by the human hand 16 to the robot arm 5 and the information stored in the action database 17 acquired by the correction action type determination unit 23 by the information acquisition unit 100.
  • the type of correction is estimated and determined by processing. While operating in the process ID “2”, when the human arm 16 moves the robot arm 5 by more than a certain threshold by applying a force to the robot arm 5 in a direction parallel to the work surface (the bottom surface of the pan 3). In step S90, since the priority information of the state “2” in the case of the process ID “2” is “3”, priority is given to scorching.
  • step S90 the object state determination unit 19 outputs “0”. If “0” in step S90, the process proceeds to step S82. Since the movement exceeds the threshold value in step S82, “movement in the vertical direction of the work surface” is determined. When a force is applied to the robot arm 5 in the direction parallel to the work surface (the bottom surface of the pan 3) with the human hand 16 during operation in the process ID “3”, the state is changed to “3” in step S90. ”, Since the priority information is“ 3 ”, priority is given to scorching.
  • the object state determination unit 19 determines “1”, and the object is scoring. "Force correction”. As a result, when it is in a burned state, it can be stirred with a stronger correction of power, so that it is possible to suppress scorching.
  • the state of the process ID [6] is “6” and the priority information is “3”, that is, the rigidity is given priority.
  • the rigidity of the state ID “6” is “3”, which is equal to or greater than “3”, which is an example of a stiffness threshold value, and therefore the object state determination unit 19 outputs “0”. Since “0” in step S90, “force correction” or “movement in the vertical direction of the work surface” is determined according to the amount of movement.
  • the priority information of the state “7” gives priority to “3”, that is, rigidity.
  • the stiffness value is “1”, which is easily crushed, and is less than “3”, which is an example of the stiffness threshold value.
  • step S86 the correction operation type determination unit 23 determines that the correction type is “force correction”. As a result, “potatoes” that tend to be crushed can be mixed so that they will not be crushed by correcting the force.
  • the process ID “5” and the process ID “9” are processes before and after adding the curry roux (or stew roux) and water, respectively.
  • priority information “1”, that is, viscosity is given priority.
  • the viscosity value is “1”, which is less than “3”, which is an example of a threshold value for viscosity. Therefore, the object state determination unit 19 outputs “0”.
  • step S83 since the movement amount is equal to or larger than the threshold value, “movement of the position of the work surface” is determined in step S84.
  • the viscosity value is “4”, which is equal to or greater than “3”, which is an example of a threshold value for viscosity, so the object state determination unit 19 outputs “1”.
  • step S85 “speed correction” is determined.
  • the mixing speed can be corrected quickly to make it possible to mix well.
  • the x-axis component and the y-axis component are moved by the force hybrid impedance control mode while moving the robot arm 5 in the position control mode.
  • the force applied to the robot arm 5 by the human hand 16 in the impedance control mode is detected by the force detection unit 53, and the robot arm 5 is moved in the x-axis direction and in the direction in which the force is applied to the robot arm 5 by the human hand 16.
  • the position can be corrected as shown in FIG. 38D.
  • the correction operation type determination unit 23 performs the correction operation type determination unit 23 at the timing when the correction type is determined.
  • the control parameter management unit 21 It can be set so that movements other than the direction of the x-axis and the direction of the y-axis cannot be performed.
  • the x-axis direction and y of the robot arm 5 are made lower than the rigidity in the other directions so that the robot arm 5 can be easily moved in the x-axis direction and the y-axis direction by the human hand 16, and the rigidity in directions other than the x-axis direction and the y-axis direction can be increased.
  • the robot arm 5 can be made difficult to move in a direction other than the x-axis direction and the y-axis direction by the human hand 16.
  • the force applied to the z-axis component by the correction operation type determination unit 23 is weaker or smaller than the operation before the correction (specifically, about half).
  • a command can be issued from the correction operation type determination unit 23 to the control parameter management unit 21 so as to stop the force control.
  • the 6th to 17th bits of the flag of the operation database 17 are set to “0” by the correction operation type determination unit 23. Accordingly, it is possible to prevent the pot 3 from being damaged by applying a force to the robot arm 5 during the correction by moving the robot arm 5 in the x-axis direction and the y-axis direction.
  • the robot arm 5 is gripped by a human hand 16 and a force is applied in a direction parallel to the work surface (the bottom surface of the pan 3) to cause the robot arm 5 to move in the x-axis direction by ⁇ x and ⁇ y.
  • the value of ⁇ x and the value of ⁇ y are transmitted to the operation correction unit 20 via the control unit 22 and the control parameter management unit 21.
  • the motion correction unit 20 subtracts ⁇ x from all the x coordinate values of the motion information of the selected work ID, and further subtracts ⁇ y from all the y coordinate values to correct the motion information corrected by the motion correction unit 20.
  • the control parameter management unit 21 instructs the control unit 22 to operate the robot arm 5 with the corrected coordinates for ⁇ x and ⁇ y. This corrects the operation as shown in FIG. 38D.
  • the operation information reduced by ⁇ x and ⁇ y is stored in the operation database 17 by the operation storage unit 15.
  • the robot arm 5 is directly gripped by a human hand 16 and the work surface (the pot 3 A force is applied to the robot arm 5 perpendicular to the work surface (the bottom of the pan 3) so as to move in a direction perpendicular to the bottom of the pan).
  • the type of correction is estimated and determined.
  • the robot arm 5 is moved by the human hand 16 in a direction perpendicular to the work surface (the bottom surface of the pan 3) with the human hand 16 to move the robot arm 5 by more than the predetermined threshold value, in step S87, the correction is performed.
  • the correction operation type determination unit 23 determines that the type is “movement of the work surface in the vertical direction”.
  • the force of the human hand 16 is detected by the force detection unit 53 by the impedance control mode and the force is applied to the robot arm 5 by the human hand 16.
  • the agitation position can be corrected as shown in FIG. 41C by moving the robot arm 5 in the z-axis direction in the applied direction.
  • the correction operation type determination unit 23 performs the second bit of FIG. 6 at the timing when the correction type is determined by the correction operation type determination unit 23.
  • the correction operation type determination unit 23 By setting “1” and setting the other bits to “0” and issuing a command from the correction operation type determination unit 23 to the control parameter management unit 21, movement other than in the z-axis direction cannot be performed. Can be set.
  • the rigidity in the z-axis direction is changed to another direction.
  • the rigidity of the robot arm 5 is made easier to move in the z-axis direction with the human hand 16 and the rigidity other than in the z-axis direction is increased, and the robot arm 5 is moved in the direction other than the z-axis direction with the human hand 16. It can be made difficult to move in the direction.
  • the correction action type determination unit 23 causes the force applied to the work surface of the z-axis component to be weaker or smaller than that before the correction (specifically, It can also be about half).
  • a command can be issued from the correction operation type determination unit 23 to the control parameter management unit 21 so as to stop the force control.
  • the 6th to 17th bits of the flag of the operation database 17 are set to “0” by the correction operation type determination unit 23.
  • the robot arm 5 is grasped by the human hand 16 and the robot arm 5 is moved in the z-axis direction by ⁇ z by applying a force in a direction perpendicular to the work surface (the bottom surface of the pan 3).
  • the value of ⁇ z is transmitted to the operation correction unit 20 via the control unit 22 and the control parameter management unit 21.
  • the motion correction unit 20 transmits motion information corrected by subtracting ⁇ z from all z coordinate values of the motion information of the selected work ID from the motion correction unit 20 to the control parameter management unit 21.
  • the control parameter management unit 21 instructs the control unit 22 to operate the robot arm 5 with the corrected coordinates corresponding to ⁇ z. This corrects the operation as shown in FIG. 41C.
  • the motion information reduced by ⁇ z is stored in the motion database 17 by the motion storage unit 15.
  • the correction type estimation process shown in the flowchart of FIG. The type of correction is estimated and determined.
  • the type of correction is “change in direction (posture)”, the correction operation is performed.
  • the type is determined by the type determining unit 23.
  • the force applied to the robot arm 5 by the human hand 16 is detected by the force detection unit 53 by the impedance control mode.
  • the direction can be corrected as shown in FIG. 39C by rotating the robot arm 5 in the ⁇ axis direction in the direction in which a force is applied to the robot arm 5.
  • the correction operation type determination unit 23 sets the correction parameter flag in FIG. 6 at the timing when the correction type is determined by the correction operation type determination unit 23.
  • the third bit is set to “1” and the other bits are set to “0”, and a command is issued from the correction operation type determination unit 23 to the control parameter management unit 21.
  • the correction operation type determination unit 23 can set the movement not to move in the direction other than the ⁇ -axis direction.
  • the mechanical impedance set value in the impedance control mode is changed by the correction operation type determination unit 23, and a command is issued from the correction operation type determination unit 23 to the control parameter management unit 21, so that the rigidity in the ⁇ -axis direction is changed to another direction.
  • the rigidity of the robot arm 5 is made easier to move in the ⁇ -axis direction by the human hand 16 and the rigidity other than the ⁇ -axis direction is increased, and the robot arm 5 is moved in the direction other than the ⁇ -axis direction by the human hand 16. It can be made difficult to move.
  • the force applied to the z-axis component work surface (the bottom surface of the pan 3) by the correction operation type determination unit 23 is weaker or smaller than that during the operation before the correction ( Specifically, it can be about half).
  • a command can be issued from the correction operation type determination unit 23 to the control parameter management unit 21 so as to stop the force control.
  • the 6th to 17th bits of the flag of the operation database 17 are set to “0” by the correction operation type determination unit 23.
  • the robot arm 5 is grasped by the human hand 16 and the robot arm 5 is rotated in the ⁇ axis direction by ⁇ by applying a force in a direction perpendicular to the work surface (the bottom of the pan 3).
  • the value of ⁇ is transmitted to the operation correction unit 20 via the control unit 22 and the control parameter management unit 21.
  • the motion correction unit 20 transmits the motion information corrected by subtracting ⁇ from all the ⁇ coordinate values of the motion information of the selected work ID from the motion correction unit 20 to the control parameter management unit 21.
  • the control parameter management unit 21 instructs the control unit 22 to operate the robot arm 5 with the corrected coordinates corresponding to ⁇ . This corrects the operation as shown in FIG. 39C.
  • the operation information reduced by ⁇ is stored in the operation database 17 in the operation storage unit 15.
  • the motion correction unit 20 applies force to the robot arm 5 with the human hand 16 while operating in the hybrid impedance control mode or the force hybrid impedance control mode depending on the position, posture, and time of the motion database 17. By applying, the generated position can be corrected for each direction.
  • the correction type estimation process shown in the flowchart of FIG. The type of correction is estimated and determined.
  • the type of correction is determined in step S86.
  • the correction action type determination unit 23 determines that the type is “force correction”.
  • the correction operation type determination unit 23 controls the control parameter management unit to operate in the high-rigidity position control mode from the force hybrid impedance control mode.
  • a command is issued to 21.
  • the high-rigidity position control mode the high-rigidity at the time of position control can be set in the high-rigidity position control mode by the correction-operation-type determining unit 23 at the time of command from the correction operation type determining unit 23 to the control parameter management unit 21. Since the operation flag of operation ID “3” and operation ID “1” in the operation database 17 is set to “1” in the 0, 1, and 8 bits, the z-axis direction operates in the force control mode.
  • control parameter management unit 23 controls the control parameters so that only the z-axis direction operates in the high-rigidity position control mode and the other directions operate in the hybrid impedance control mode. A command is issued to the unit 21.
  • the hybrid impedance control mode is a mode in which the position control mode set for each direction is further increased in rigidity, and the gain in the position error compensation unit 56 is increased (specifically, When the force is applied to the robot arm 5 with the human hand 16, the robot arm 5 can be prevented from moving easily. Thus, the force applied to the robot arm 5 can be detected by the force detection unit 53. The force detected by the force detection unit 53 of the control unit 22 is notified to the operation correction unit 20. By storing the force notified to the motion correction unit 20 in the motion database 17 in the motion storage unit 15, the motion can be corrected so as to stir strongly.
  • the robot arm 5 is gripped to stop applying force to the robot arm 5.
  • step S72 of FIG. 42 When no force is applied to the robot arm 5 with the human hand 16, all the components of the force are equal to or less than the threshold values in step S72 of FIG. 42, so that the correction operation type determination unit 23 sets “correction” as the correction type. "None" (step S88 in FIG. 42).
  • the motion correction unit 20 receives the information of “no correction” and issues a command from the correction operation type determination unit 23 to the control parameter management unit 21 so as to control from the highly rigid position control mode to the hybrid impedance control mode.
  • the mixing operation is performed in the corrected operation database 17.
  • the motion correction unit 20 works with the corrected force by applying the force of the human hand 16 in the state of operating in the hybrid impedance control mode based on the force information of the motion database 17. It becomes possible to correct.
  • the robot arm 5 is directly held by the human hand 16 and accelerated.
  • the human arm 16 applies force to the robot arm 5 in the direction opposite to the traveling direction.
  • the speed of the hand position of the robot arm 5 may be changed, but the force is applied to the robot arm 5 with the human hand 16 so as not to move the position beyond the certain threshold.
  • the correction type estimation process shown in the flowchart of FIG. 42 is performed based on the force applied to the robot arm 5 with the human hand 16 and the information in the action database 17 respectively acquired by the correction action type determination part 23 by the information acquisition part 100.
  • the type of correction is estimated and determined.
  • the correction operation type determination unit 23 determines that the type is “speed” in the direction horizontal to the work surface (the bottom of the pan 3).
  • the robot arm 5 While the robot arm 5 is moved in the position control mode by the hybrid impedance control mode, the force applied to the robot arm 5 by the human hand 16 is detected by the force detection unit 53 by the impedance control mode, and the robot is moved by the human hand 16.
  • the robot arm 5 is moved in the x-axis direction and the y-axis direction in the direction in which a force is applied to the arm 5. From the position of the robot arm 5 shown in the operation database 17, for example, work ID operation ID as (x 1, y 2, z 1), the position of the robot arm 5 of the next operation ID (x 2, y 2, z 2 ) If the time taken to move to t) is t 1 , when the speed of the robot arm 5 is changed by the force of the human hand 16 (see FIG.
  • the value of time t 2 is controlled by the control unit 22 and control parameter management. It is transmitted to the operation correction unit 20 via the unit 21.
  • the motion correction unit 20 changes the motion information of the selected work ID from the time t 1 to the time t 2 and transmits the motion information from the motion correction unit 20 to the control parameter management unit 21.
  • the control parameter managing unit 21 instructs the control parameter managing unit 21 to operate in t 2 is corrected time to the control unit 22. This corrects the operation as shown in FIG. 40C.
  • the time t 2 is stored in the operation database 17 by the operation storage unit 15.
  • the motion correction unit 20 applies the force to the robot arm 5 with the human hand 16 while operating in the force hybrid impedance control mode based on the information on the position, posture, and time of the motion database 17.
  • the operation speed of the robot arm 5 can be corrected.
  • the present invention relates to a robot arm control device and control method, a house robot, and a robot arm control for controlling the operation of a robot arm of a house robot when a person and a robot work together such as a home robot. It is useful as an integrated electronic circuit for program and robot arm control.

Abstract

A control device for a robot arm (5) for performing housework at home is provided with a motion database (17) in which information relating to the motion of the robot arm (5) is recorded, a correction motion type determination unit (23) which determines the type of correction of the motion, a force detection unit (53) which detects the force of a person (16), an object state identification unit (19) which identifies the state of an object, and a motion correction unit (20) which corrects the motion according to the force of the person (16) and the type of correction while the robot arm (5) is working.

Description

ロボットアームの制御装置及び制御方法、家事ロボット、ロボットアームの制御プログラム、及び、ロボットアーム制御用集積電子回路Robot arm control device and control method, housework robot, robot arm control program, and integrated electronic circuit for robot arm control
 本発明は、家庭内で家事を行うロボットの家事動作を生成及び教示するためのロボットアームの制御装置及び制御方法、ロボットアーム及びその制御装置を有する家事ロボット、ロボットアームの制御プログラム、ロボットアーム制御用集積電子回路に関する。 The present invention relates to a robot arm control device and control method for generating and teaching a housework operation of a robot that performs housework in a home, a robot arm and a housework robot having the control device, a robot arm control program, and a robot arm control The present invention relates to an integrated electronic circuit.
 近年、介護ロボット又は家事支援ロボットなどの家庭用ロボットが盛んに開発されるようになってきた。家庭ロボットは産業用ロボットと異なり、家庭の素人が操作するため、動作を簡単に教示できる必要がある。さらに、ロボットが作業する際の動作環境も、家庭に応じて様々であるため、家庭環境に柔軟に対応する必要がある。 In recent years, home robots such as care robots or housework support robots have been actively developed. Unlike a robot for industrial use, a home robot is operated by an amateur at home, so it is necessary to be able to easily teach the operation. Furthermore, since the operating environment when the robot is working varies depending on the home, it is necessary to flexibly cope with the home environment.
 ロボット装置の教示方法の一例として、ロボットの手首などに力センサを装着し、力センサの先に装着されたハンドルを教示作業者が直接把持してロボットを教示点に誘導し、ロボットの位置の教示を行っている(特許文献1を参照)。 As an example of the teaching method of the robot apparatus, a force sensor is attached to the wrist of the robot, the teaching operator directly holds the handle attached to the tip of the force sensor, and the robot is guided to the teaching point. Teaching is performed (see Patent Document 1).
 さらに、教示作業者がロボットを直接把持してロボットを教示する際に、教示作業者の意図を理解して教示作業中に力制御の操作感を自動的に変更することを行っている(特許文献2を参照)。 Furthermore, when the teaching worker teaches the robot by directly gripping the robot, the teaching worker understands the intention of the teaching worker and automatically changes the operational feeling of force control during the teaching operation (patent) Reference 2).
特開昭59-157715号公報JP 59-157715 A 特開2008-110406号公報JP 2008-110406 A
 しかしながら、特許文献1においては、全ての教示点を教示作業者が教示する必要があるため、教示に時間がかかり、非常に面倒であった。さらに、産業用分野にて、教示した動きの一部を修正する場合に、ティーチングペンダントと呼ばれる遠隔装置により、プログラミングにより修正するか、若しくは、全ての動作を一から教示しなければならず、効率が悪かった。 However, in Patent Document 1, since it is necessary for the teaching worker to teach all teaching points, teaching takes time and is very troublesome. Furthermore, in the industrial field, when correcting a part of the taught movement, it must be corrected by programming with a remote device called a teaching pendant, or all operations must be taught from the beginning. Was bad.
 さらに、特許文献2においては、教示作業者による直接教示時に、教示作業者の意図を理解し、作業中の操作感を自動的に変更しているが、教示作業者が位置、力、及び、速度などの複数種類の教示パラメータのうち、どのパラメータを操作しようとしているか、などの操作感以外の操作意図の理解は行っていない。そのため、作業教示者がどのパラメータを教示するか、を作業教示者が明示的に設定する必要がある。さらに、教示した動きの一部を修正することができず、作業効率が悪かった。 Furthermore, in Patent Document 2, the teaching worker understands the intention of the teaching worker and directly changes the operational feeling during the operation when the teaching worker directly teaches. It does not understand the operation intention other than the operational feeling such as which parameter is to be operated among a plurality of types of teaching parameters such as speed. Therefore, it is necessary for the work teacher to explicitly set which parameter the work teacher teaches. Furthermore, part of the taught movement could not be corrected, and work efficiency was poor.
 本発明の目的は、このような課題に鑑みてなされたものであり、作業者が簡単で短時間にロボットの教示を行うことが可能な、ロボットアームの制御装置及び方法、家事ロボット、ロボットアームの制御プログラム、ロボットアーム制御用集積電子回路を提供することにある。 An object of the present invention has been made in view of such problems, and a robot arm control device and method, a housework robot, and a robot arm that enable an operator to teach a robot easily and in a short time. And an integrated electronic circuit for controlling a robot arm.
 前記目的を達成するために、本発明は以下のように構成する。 In order to achieve the above object, the present invention is configured as follows.
 本発明の第1態様によれば、ロボットアームの動作を制御して、家庭内で前記ロボットアームにより家事作業の対象物に作用しながら家事作業を行うロボットアームの制御装置であって、
 前記ロボットアームに作用する人の力を検出する力検出手段と、
 前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と前記力検出手段で検出された前記人の力に関する情報とをそれぞれ取得する情報取得部と、
 前記対象物の状態を判断する対象物状態判断手段と、
 前記情報取得部でそれぞれ取得した前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と前記人の力に関する情報と前記対象物状態判断手段で判断された前記対象物の状態とから前記動作を補正する補正動作の種別を決定する補正動作種別決定手段と、
 予め定められた前記ロボットアームの前記家事作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記ロボットアームを制御して前記動作を補正する動作補正手段とを備えることを特徴とするロボットアームの制御装置を提供する。
According to the first aspect of the present invention, there is provided a control device for a robot arm that controls the operation of the robot arm and performs housework work while acting on the object of housework work by the robot arm in the home,
Force detecting means for detecting the force of a person acting on the robot arm;
An information acquisition unit for acquiring information on the operation including the position of the robot arm in the housework and information on the human force detected by the force detection unit;
Object state determination means for determining the state of the object;
The motion from the information regarding the motion including the position of the robot arm in the housework work acquired by the information acquisition unit, the information regarding the force of the person, and the state of the target determined by the target state determination means. Corrective action type determining means for determining the type of corrective action for correcting
Information regarding the human force detected by the force detection unit and acquired by the information acquisition unit and the correction operation determined by the correction operation type determination unit during the domestic work of the robot arm determined in advance. There is provided a control device for a robot arm, comprising a motion correction means for controlling the robot arm and correcting the motion according to the type.
 本発明の第15態様によれば、ロボットアームの動作を制御して、家庭内で前記ロボットアームにより家事作業の対象物に作用しながら家事作業を行うロボットアームの制御方法であって、
 前記ロボットアームに作用する人の力を力検出手段で検出し、
 前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と前記力検出手段で検出された前記人の力に関する情報とを情報取得部でそれぞれ取得し、
 前記対象物の状態を対象物状態判断手段で判断し、
 前記情報取得部でそれぞれ取得した前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と前記人の力に関する情報と前記対象物状態判断手段で判断された前記対象物の状態とから前記動作を補正する補正動作の種別を補正動作種別決定手段で決定し、予め定められた前記ロボットアームの前記家事作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記ロボットアームを制御して前記動作を動作補正手段で補正することを特徴とするロボットアームの制御方法を提供する。
According to a fifteenth aspect of the present invention, there is provided a control method for a robot arm that controls the operation of the robot arm and performs housework work while acting on an object of housework work by the robot arm in the home,
Detecting the force of the person acting on the robot arm with force detection means,
Information on the operation including the position of the robot arm in the housework and information on the human force detected by the force detection means are respectively acquired by the information acquisition unit,
The state of the object is determined by the object state determination means,
The motion from the information regarding the motion including the position of the robot arm in the housework work acquired by the information acquisition unit, the information regarding the force of the person, and the state of the target determined by the target status determination means. The corrective action type determining means determines the type of corrective action to correct the human force detected by the force detecting means and acquired by the information acquisition unit during the housework of the robot arm determined in advance. A control method of the robot arm, wherein the robot arm is controlled and the motion is corrected by the motion correction means according to the information relating to the information and the type of the correction motion determined by the correction motion type determination means provide.
 本発明の第16態様によれば、前記ロボットアームと、
 前記ロボットアームを制御する第1~14のいずれか1つの態様に記載のロボットアームの制御装置とを備えることを特徴とする家事ロボットを提供する。
According to a sixteenth aspect of the present invention, the robot arm;
There is provided a domestic robot comprising the robot arm control device according to any one of the first to fourteenth aspects for controlling the robot arm.
 本発明の第17態様によれば、ロボットアームの動作を制御して、家庭内で前記ロボットアームにより家事作業の対象物に作用しながら家事作業を行うロボットアームの制御プログラムであって、
 前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と力検出手段で検出しかつ情報取得部で取得した前記ロボットアームに作用する人の力に関する情報と対象物状態判断手段で判断された前記対象物の状態とから前記動作を補正する補正動作の種別を補正動作種別決定手段で決定するステップと、
 予め定められた前記ロボットアームの前記家事作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記ロボットアームを制御して前記動作を動作補正手段で補正する動作補正ステップとをコンピュータに実行させるためのロボットアームの制御プログラムを提供する。
According to a seventeenth aspect of the present invention, there is provided a control program for a robot arm that controls the operation of the robot arm and performs housework work while acting on the object of housework work by the robot arm in the home,
Information related to the operation including the position of the robot arm in the housework and information detected by the force detection means and acquired by the information acquisition unit and determined by the object state determination means Determining a type of correction operation for correcting the operation from the state of the object by a correction operation type determination unit;
Information regarding the human force detected by the force detection unit and acquired by the information acquisition unit and the correction operation determined by the correction operation type determination unit during the housework work of the robot arm determined in advance and the correction operation type determination unit There is provided a robot arm control program for causing a computer to execute an operation correction step of controlling the robot arm and correcting the operation by an operation correction unit according to the type.
 本発明の第18態様によれば、ロボットアームの動作を制御して、家庭内で前記ロボットアームにより家事作業の対象物に作用しながら家事作業を行うロボットアーム制御用集積電子回路であって、
 前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と力検出手段で検出しかつ情報取得部で取得した前記ロボットアームに作用する人の力に関する情報と対象物状態判断手段で判断された前記対象物の状態とから前記動作を補正する補正動作の種別を決定する補正動作種別決定手段と、
 予め定められた前記ロボットアームの前記家事作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記ロボットアームを制御して前記動作を補正する動作補正手段とを備えることを特徴とするロボットアーム制御用集積電子回路を提供する。
According to an eighteenth aspect of the present invention, there is provided an integrated electronic circuit for controlling a robot arm that controls the operation of a robot arm and performs domestic work while acting on an object of domestic work by the robot arm in the home,
Information related to the operation including the position of the robot arm in the housework and information detected by the force detection means and acquired by the information acquisition unit and determined by the object state determination means A correction operation type determining means for determining a type of correction operation for correcting the operation from the state of the object;
Information regarding the human force detected by the force detection unit and acquired by the information acquisition unit and the correction operation determined by the correction operation type determination unit during the housework work of the robot arm determined in advance and the correction operation type determination unit There is provided an integrated electronic circuit for controlling a robot arm, comprising: an operation correcting unit that controls the robot arm according to the type to correct the operation.
 以上述べたように、本発明のロボットアームの制御装置及び家事ロボットによれば、力検出手段と、情報取得部と、対象物状態判断手段と、補正動作種別決定手段と、動作補正手段とを有することにより、前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と前記人の力に関する情報とを利用して、人の力に応じて、家事動作を簡単に補正することができるロボットアームの制御が可能となる。 As described above, according to the robot arm control device and the housework robot of the present invention, the force detection means, the information acquisition unit, the object state determination means, the correction action type determination means, and the action correction means. By having the robot, the robot can easily correct the housework operation according to the force of the person using the information about the action including the position of the robot arm in the housework and the information about the person's force. The arm can be controlled.
 また、本発明のロボットアームの制御方法、ロボットアームの制御プログラム、及び、ロボットアーム制御用集積電子回路によれば、補正動作種別決定手段と、動作補正手段とを有することにより、前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と前記人の力に関する情報とに応じて、家事動作を簡単に補正することができるロボットアームの制御が可能となる。 According to the robot arm control method, robot arm control program, and robot arm control integrated electronic circuit of the present invention, the robot arm control integrated electronic circuit includes the correction operation type determination means and the operation correction means. It is possible to control the robot arm that can easily correct the housework operation according to the information related to the operation including the position of the robot arm and the information related to the human force.
 さらに、前記補正動作種別決定手段を有することにより、複数の動作をボタンなどを使わずに自動で切り替えて補正することが可能となる。 Furthermore, by providing the correction operation type determination means, it is possible to automatically switch and correct a plurality of operations without using a button or the like.
 さらに、前記補正動作種別決定手段を有することにより、操作する人のスキルなどに応じて、一度に複数種別の補正を行うか、1種類の補正を行うかを切り替えることができる。 Furthermore, by having the correction operation type determination means, it is possible to switch between performing a plurality of types of corrections at a time or performing one type of correction in accordance with the skill of the operator.
 また、前記制御パラメータ管理手段と前記インピーダンス制御手段とをさらに有することにより、補正動作の種別に応じて、ロボットアームの機械インピーダンス値を設定することで、ロボットアームの補正方向に応じて、機械インピーダンス値を変更させて制御したり、補正中の吸引力又は作業面に対する力を弱めたり停止することができる。 Further, by further comprising the control parameter management means and the impedance control means, by setting the mechanical impedance value of the robot arm according to the type of the correction operation, the mechanical impedance according to the correction direction of the robot arm. It is possible to control by changing the value, or to weaken or stop the suction force or the force on the work surface being corrected.
 本発明のこれらと他の目的と特徴は、添付された図面についての好ましい実施形態に関連した次の記述から明らかになる。この図面においては、
図1は、本発明の第1実施形態におけるロボットアームの制御装置の構成の概要を示す図であり、 図2Aは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図2Bは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図3は、本発明の前記第1実施形態における家事ロボットを構成する前記ロボットアームの制御装置と制御対象である前記ロボットアームの詳細構成を示す図であり、 図4は、本発明の前記第1実施形態における前記ロボットアームの制御装置の動作データベースの動作情報の一覧表を説明する図であり、 図5は、本発明の前記第1実施形態における前記ロボットアームの制御装置の動作データベースのフラグに関する情報を説明する図であり、 図6は、本発明の前記第1実施形態における前記ロボットアームの制御装置の補正パラメータのフラグに関する情報を説明する図であり、 図7は、本発明の前記第1実施形態における前記ロボットアームの制御装置の制御部の構成を示すブロック図であり、 図8は、本発明の前記第1実施形態におけるロボットアームの制御装置の経路に関する図であり、 図9は、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図10は、本発明の前記第1実施形態におけるロボットアームの制御装置の作業不可領域データベース情報の一覧表を説明する図であり、 図11は、本発明の前記第1実施形態における前記ロボットアームの制御装置の経路に関する図であり、 図12Aは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図12Bは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す平面図(図12Aを上方から見た図)であり、 図12Cは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す平面図であり、 図12Dは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す平面図であり、 図13Aは、本発明の前記第1実施形態における前記ロボットアームの制御装置の座標系に関する図であり、 図13Bは、本発明の前記第1実施形態における前記ロボットアームの制御装置の座標系に関する図であり、 図13Cは、本発明の前記第1実施形態における前記ロボットアームの制御装置の座標系に関する図であり、 図14は、本発明の前記第1実施形態における前記ロボットアームの制御装置の補正動作種別決定部の動作ステップを表すフローチャートであり、 図15は、本発明の前記第1実施形態における前記ロボットアームの制御装置の人のかける力とその時刻の関係を示す図であり、 図16Aは、本発明の前記第1実施形態における前記ロボットアームの制御装置の動作状態を示す側面図であり、 図16Bは、本発明の前記第1実施形態における前記ロボットアームの制御装置の動作状態を示す平面図であり、 図16Cは、本発明の前記第1実施形態における前記ロボットアームの制御装置の動作状態を示す平面図であり、 図17は、本発明の前記第1実施形態における前記ロボットアームの制御装置の補正動作種別決定部の動作ステップを表すフローチャートであり、 図18Aは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図18Bは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図19は、本発明の前記第1実施形態における前記ロボットアームの制御装置の人がかける力と吸引力の対応を示す図であり、 図20Aは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図20Bは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を説明するときの吸引ノズルの拡大平面図であり、 図21は、本発明の前記第1実施形態における前記ロボットアームの制御装置の周辺装置の表示部を説明する図であり、 図22は、本発明の前記第1実施形態における前記ロボットアームの制御装置の動作状態を示す図であり、 図23は、本発明の前記第1実施形態における前記ロボットアームの制御装置の動作状態を示す図であり、 図24は、本発明の前記第1実施形態における前記ロボットアームの制御装置の動作補正部と補正動作種別決定部と動作選択部と動作記憶部と動作データベースと制御パラメータ管理部の動作ステップを表すフローチャートであり、 図25は、本発明の前記第1実施形態における前記ロボットアームの制御装置の制御部の動作ステップを表すフローチャートであり、 図26は、本発明の前記第1実施形態における前記ロボットアームの制御装置の周辺装置のデータ入力IFを説明する図であり、 図27Aは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図27Bは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図27Cは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図28Aは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図28Bは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図28Cは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図29Aは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図29Bは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す平面図(図29Aを上方から見た図)であり、 図29Cは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す平面図であり、 図29Dは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す平面図であり、 図30Aは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図30Bは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す平面図(図30Aを上方から見た図)であり、 図30Cは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す平面図であり、 図30Dは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す平面図であり、 図31は、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図32Aは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図32Bは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図32Cは、本発明の前記第1実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図33は、本発明の前記第1実施形態における前記ロボットアームの制御装置の力と位置の閾値を説明する図であり、 図34は、本発明の第2実施形態におけるロボットアームの制御装置の構成の概要を示す図であり、 図35は、本発明の前記第2実施形態における前記ロボットアームの制御装置の動作データベースの動作情報の一覧表を説明する図であり、 図36Aは、本発明の前記第2実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図36Bは、本発明の前記第2実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図36Cは、本発明の前記第2実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図37は、本発明の前記第2実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図38Aは、本発明の前記第2実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図38Bは、本発明の前記第2実施形態における前記ロボットアームの制御装置の操作状態を示す平面図(図38Aを上から見た図)であり、 図38Cは、本発明の前記第2実施形態における前記ロボットアームの制御装置の操作状態を示す平面図であり、 図38Dは、本発明の前記第2実施形態における前記ロボットアームの制御装置の操作状態を示す平面図であり、 図39Aは、本発明の前記第2実施形態における前記ロボットアームの制御装置の動作状態を示す図であり、 図39Bは、本発明の前記第2実施形態における前記ロボットアームの制御装置の動作状態を示す図であり、 図39Cは、本発明の前記第2実施形態における前記ロボットアームの制御装置の動作状態を示す図であり、 図40Aは、本発明の前記第2実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図40Bは、本発明の前記第2実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図40Cは、本発明の前記第2実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図41Aは、本発明の前記第2実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図41Bは、本発明の前記第2実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図41Cは、本発明の前記第2実施形態における前記ロボットアームの制御装置の操作状態を示す図であり、 図42は、本発明の前記第2実施形態における前記ロボットアームの制御装置の補正動作種別決定部の動作ステップを表すフローチャートであり、 図43は、本発明の前記第2実施形態における家事ロボットを構成する前記ロボットアームの制御装置と制御対象である前記ロボットアームの詳細構成を示す図であり、 図44Aは、本発明の前記第2実施形態における前記ロボットアームの制御装置の作業手順情報データベースの作業手順情報の一覧表を説明する図であり、 図44Bは、本発明の前記第2実施形態における前記ロボットアームの制御装置の作業手順情報データベースの作業手順情報の一覧表を説明する図であり、 図44Cは、本発明の前記第2実施形態における前記ロボットアームの制御装置の作業手順情報データベースの作業手順情報の一覧表を説明する図であり、 図45は、本発明の前記第2実施形態における家事ロボットを構成する前記ロボットアームの制御装置と制御対象である前記ロボットアームの詳細構成を示す図である。
These and other objects and features of the invention will become apparent from the following description taken in conjunction with the preferred embodiments with reference to the accompanying drawings. In this drawing,
FIG. 1 is a diagram showing an outline of a configuration of a control device for a robot arm in the first embodiment of the present invention. FIG. 2A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 2B is a diagram illustrating an operation state of the robot arm control device according to the first embodiment of the present invention; FIG. 3 is a diagram showing a detailed configuration of the robot arm control device and the robot arm that is a control target that constitute the housework robot in the first embodiment of the present invention; FIG. 4 is a diagram illustrating a list of operation information in an operation database of the control device for the robot arm in the first embodiment of the present invention; FIG. 5 is a diagram for explaining information about an operation database flag of the robot arm control device according to the first embodiment of the present invention; FIG. 6 is a diagram for explaining information relating to a correction parameter flag of the robot arm control device according to the first embodiment of the present invention; FIG. 7 is a block diagram illustrating a configuration of a control unit of the robot arm control device according to the first embodiment of the present invention; FIG. 8 is a diagram relating to the path of the control device for the robot arm in the first embodiment of the present invention, FIG. 9 is a diagram illustrating an operation state of the robot arm control device according to the first embodiment of the present invention; FIG. 10 is a diagram for explaining a list of work impossible area database information of the robot arm control device according to the first embodiment of the present invention; FIG. 11 is a diagram relating to a path of the robot arm control device according to the first embodiment of the present invention; FIG. 12A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 12B is a plan view (a view of FIG. 12A seen from above) showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 12C is a plan view showing an operation state of the robot arm control device according to the first embodiment of the present invention; FIG. 12D is a plan view showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 13A is a diagram relating to a coordinate system of the control device for the robot arm in the first embodiment of the present invention; FIG. 13B is a diagram related to a coordinate system of the control device for the robot arm in the first embodiment of the present invention; FIG. 13C is a diagram related to a coordinate system of the control device for the robot arm in the first embodiment of the present invention; FIG. 14 is a flowchart showing the operation steps of the correction operation type determination unit of the control device for the robot arm in the first embodiment of the present invention; FIG. 15 is a diagram illustrating a relationship between the force applied by a person of the control device for the robot arm and the time thereof in the first embodiment of the present invention; FIG. 16A is a side view showing an operation state of the robot arm control device according to the first embodiment of the present invention; FIG. 16B is a plan view showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 16C is a plan view showing an operation state of the robot arm control device according to the first embodiment of the present invention; FIG. 17 is a flowchart showing the operation steps of the correction operation type determination unit of the control device for the robot arm in the first embodiment of the present invention; FIG. 18A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 18B is a diagram illustrating an operation state of the robot arm control device according to the first embodiment of the present invention; FIG. 19 is a diagram illustrating a correspondence between a force applied by a person of the control device for the robot arm and a suction force in the first embodiment of the present invention; FIG. 20A is a diagram illustrating an operation state of the robot arm control device according to the first embodiment of the present invention; FIG. 20B is an enlarged plan view of the suction nozzle when explaining the operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 21 is a diagram illustrating a display unit of a peripheral device of the control device for the robot arm in the first embodiment of the present invention; FIG. 22 is a diagram illustrating an operation state of the robot arm control device according to the first embodiment of the present invention; FIG. 23 is a diagram illustrating an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 24 shows operation steps of an operation correction unit, a correction operation type determination unit, an operation selection unit, an operation storage unit, an operation database, and a control parameter management unit of the robot arm control device according to the first embodiment of the present invention. It is a flowchart, FIG. 25 is a flowchart showing the operation steps of the control unit of the robot arm control device according to the first embodiment of the present invention; FIG. 26 is a diagram illustrating a data input IF of a peripheral device of the robot arm control device according to the first embodiment of the present invention. FIG. 27A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 27B is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 27C is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 28A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 28B is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 28C is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 29A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 29B is a plan view (a view of FIG. 29A seen from above) showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 29C is a plan view showing an operation state of the robot arm control device according to the first embodiment of the present invention; FIG. 29D is a plan view showing an operation state of the robot arm control device according to the first embodiment of the present invention; FIG. 30A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 30B is a plan view (a view of FIG. 30A seen from above) showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 30C is a plan view showing an operation state of the robot arm control device according to the first embodiment of the present invention; FIG. 30D is a plan view showing an operation state of the robot arm control device according to the first embodiment of the present invention; FIG. 31 is a diagram illustrating an operation state of the robot arm control device according to the first embodiment of the present invention; FIG. 32A is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 32B is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 32C is a diagram showing an operation state of the control device for the robot arm in the first embodiment of the present invention; FIG. 33 is a diagram for explaining the force and position threshold values of the robot arm control device according to the first embodiment of the present invention; FIG. 34 is a diagram showing an outline of the configuration of the control device for the robot arm in the second embodiment of the present invention. FIG. 35 is a diagram for explaining a list of operation information in the operation database of the control device for the robot arm in the second embodiment of the present invention; FIG. 36A is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention; FIG. 36B is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention; FIG. 36C is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention; FIG. 37 is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention, FIG. 38A is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention; FIG. 38B is a plan view showing the operation state of the control device for the robot arm according to the second embodiment of the present invention (a view of FIG. 38A as viewed from above); FIG. 38C is a plan view showing an operation state of the robot arm controller in the second embodiment of the present invention; FIG. 38D is a plan view showing an operation state of the robot arm control device according to the second embodiment of the present invention; FIG. 39A is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention; FIG. 39B is a diagram illustrating an operation state of the robot arm control device according to the second embodiment of the present invention; FIG. 39C is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention; FIG. 40A is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention; FIG. 40B is a diagram illustrating an operation state of the robot arm control device according to the second embodiment of the present invention; FIG. 40C is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention; FIG. 41A is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention; FIG. 41B is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention; FIG. 41C is a diagram showing an operation state of the control device for the robot arm in the second embodiment of the present invention; FIG. 42 is a flowchart showing the operation steps of the correction operation type determination unit of the control device for the robot arm in the second embodiment of the present invention; FIG. 43 is a diagram illustrating a detailed configuration of the robot arm control device and the robot arm that is a control target that configure the housework robot according to the second embodiment of the present invention; FIG. 44A is a diagram illustrating a list of work procedure information in a work procedure information database of the control device for the robot arm in the second embodiment of the present invention; FIG. 44B is a diagram illustrating a list of work procedure information in a work procedure information database of the control device for the robot arm in the second embodiment of the present invention; FIG. 44C is a diagram illustrating a list of work procedure information in the work procedure information database of the robot arm control device according to the second embodiment of the present invention; FIG. 45 is a diagram illustrating a detailed configuration of the robot arm control device and the robot arm that is a control target that constitute the housework robot according to the second embodiment of the present invention.
 本発明の記述を続ける前に、添付図面において同じ部品については同じ参照符号を付している。 Before continuing the description of the present invention, the same parts are denoted by the same reference numerals in the accompanying drawings.
 以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
 以下、図面を参照して本発明における実施形態を詳細に説明する前に、本発明の種々の態様について説明する。 Hereinafter, various embodiments of the present invention will be described before the embodiments of the present invention are described in detail with reference to the drawings.
 本発明の第1態様によれば、ロボットアームの動作を制御して、家庭内で前記ロボットアームにより家事作業の対象物に作用しながら家事作業を行うロボットアームの制御装置であって、
 前記ロボットアームに作用する人の力を検出する力検出手段と、
 前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と前記力検出手段で検出された前記人の力に関する情報とをそれぞれ取得する情報取得部と、
 前記対象物の状態を判断する対象物状態判断手段と、
 前記情報取得部でそれぞれ取得した前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と前記人の力に関する情報と前記対象物状態判断手段で判断された前記対象物の状態とから前記動作を補正する補正動作の種別を決定する補正動作種別決定手段と、
 予め定められた前記ロボットアームの前記家事作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記ロボットアームを制御して前記動作を補正する動作補正手段とを備えることを特徴とするロボットアームの制御装置を提供する。
According to the first aspect of the present invention, there is provided a control device for a robot arm that controls the operation of the robot arm and performs housework work while acting on the object of housework work by the robot arm in the home,
Force detecting means for detecting the force of a person acting on the robot arm;
An information acquisition unit for acquiring information on the operation including the position of the robot arm in the housework and information on the human force detected by the force detection unit;
Object state determination means for determining the state of the object;
The motion from the information regarding the motion including the position of the robot arm in the housework work acquired by the information acquisition unit, the information regarding the force of the person, and the state of the target determined by the target state determination means. Corrective action type determining means for determining the type of corrective action for correcting
Information regarding the human force detected by the force detection unit and acquired by the information acquisition unit and the correction operation determined by the correction operation type determination unit during the domestic work of the robot arm determined in advance. There is provided a control device for a robot arm, comprising a motion correction means for controlling the robot arm and correcting the motion according to the type.
 このような構成により、人の力に応じて、ロボットアームの家事動作を補正することができる。 構成 With this configuration, the housework movement of the robot arm can be corrected according to human power.
 本発明の第2態様によれば、前記動作に関する情報は、前記ロボットアームが行う前記家事作業に応じた、前記ロボットアームの前記位置の情報と、前記ロボットアームから作業面にかける力情報と、前記ロボットアームの方向に関する情報と、前記ロボットアームの吸引力の強さに関する情報と、前記ロボットアームの速度情報と、前記ロボットアームの作業を行わない領域に関する情報である作業不可領域情報とのうちの少なくとも1つの情報を有することを特徴とする第1の態様に記載のロボットアームの制御装置を提供する。 According to the second aspect of the present invention, the information related to the operation includes information on the position of the robot arm according to the housework performed by the robot arm, and force information applied to the work surface from the robot arm, Among the information regarding the direction of the robot arm, the information regarding the strength of the suction force of the robot arm, the speed information of the robot arm, and the work disabling area information which is information regarding the area where the robot arm is not operated The robot arm control device according to the first aspect is characterized by having at least one of the following information.
 このような構成により、前記ロボットアームが行う作業に応じて、それぞれの時間での、位置情報と、前記ロボットアームがかける力情報と、方向に関する情報と、吸引の強さに関する情報と、速度情報と、作業をして欲しくない領域に関する情報とのうちの少なくとも1つの情報を補正することができる。 With such a configuration, the position information, the force information applied by the robot arm, the information on the direction, the information on the strength of suction, and the speed information at each time according to the work performed by the robot arm. And at least one piece of information related to an area that you do not want to work on can be corrected.
 本発明の第3態様によれば、前記動作に関する情報は、前記ロボットアームが行う前記家事作業に応じた、前記ロボットアームから前記作業面にかける力情報と、前記ロボットアームの吸引力の強さに関する情報とを少なくとも有し、
 前記動作補正手段は、前記動作に関する情報に基づいて、予め設定された力を前記ロボットアームから前記作業面に作用させて前記動作を行なう力制御モードを前記ロボットアームが移動可能なxyz軸方向のそれぞれの軸別に設定して前記動作を前記ロボットアームで行っている最中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に応じて、補正動作前の前記動作に関する情報のうちの前記設定された力の大きさ又は方向を補正することを特徴とする第1の態様に記載のロボットアームの制御装置を提供する。
According to a third aspect of the present invention, the information related to the movement includes information on force applied from the robot arm to the work surface according to the housework performed by the robot arm, and strength of the suction force of the robot arm. And at least information about
The motion correction unit is configured to apply a force control mode in which a predetermined force is applied from the robot arm to the work surface based on the information related to the motion in the xyz axis direction in which the robot arm can move. The operation before the correction operation according to the force of the person detected by the force detection means and acquired by the information acquisition unit while performing the operation by the robot arm by setting for each axis The robot arm control device according to the first aspect is characterized in that the magnitude or direction of the set force among the information regarding the correction is corrected.
 このような構成により、前記動作に関する情報に基づいて、予め設定された力を前記ロボットアームから前記作業面に作用させて前記動作を行なう力制御モードを前記ロボットアームが移動可能なxyz軸方向のそれぞれの軸別に設定して前記動作を前記ロボットアームで行っている最中に、前記力検出手段で検出した前記人の力に応じて、補正動作前の前記動作に関する情報のうちの前記設定された力の大きさ又は方向を補正することができる。 With such a configuration, a force control mode for performing the operation by applying a preset force from the robot arm to the work surface based on the information related to the operation in the xyz-axis direction in which the robot arm can move. While the operation is being performed by the robot arm by setting for each axis, the setting of the information related to the operation before the correction operation is set according to the force of the person detected by the force detection means. The magnitude or direction of the applied force can be corrected.
 本発明の第4態様によれば、前記動作に関する情報は、前記ロボットアームが行う前記家事作業に応じた、前記ロボットアームの前記位置の情報と、前記ロボットアームの方向に関する情報と、前記ロボットアームの速度情報と、作業を行わない領域に関する情報である作業不可領域情報とを有し、
 前記動作補正手段は、前記動作に関する情報に基づいて、前記ロボットアームの位置を制御する位置制御モードで動作している最中に、前記ロボットアームに対して前記人から前記ロボットアームに加わる力に応じて前記ロボットアームが作動するインピーダンス制御モードを前記ロボットアームが移動可能なxyz軸方向のそれぞれの軸別に設定して前記作業を動作させている最中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に応じて、前記インピーダンス制御での前記動作に関する情報の前記動作を補正することを特徴とする第1の態様に記載のロボットアームの制御装置を提供する。
According to a fourth aspect of the present invention, the information related to the movement includes information on the position of the robot arm, information on the direction of the robot arm, and the robot arm according to the housework performed by the robot arm. Speed information and work non-working area information that is information related to a work non-working area,
The motion correction means is configured to apply a force applied to the robot arm from the person to the robot arm while operating in a position control mode for controlling the position of the robot arm based on information on the motion. In response, the impedance detection mode in which the robot arm operates is set for each axis in the xyz axis direction in which the robot arm can move, and the operation is performed while the operation is being performed. The robot arm control device according to the first aspect is characterized in that the operation of the information related to the operation in the impedance control is corrected according to the human force acquired by the information acquisition unit.
 このような構成により、前記動作に関する情報に基づいて、前記ロボットアームの位置を制御する位置制御モードで動作している最中に、駆動停止している前記ロボットアームに対して前記人から前記ロボットアームに加わる力に応じて前記ロボットアームが作動するインピーダンス制御モードを前記ロボットアームが移動可能なxyz軸方向のそれぞれの軸別に設定して前記作業を動作させている最中に、前記力検出手段で検出した前記人の力に応じて、前記インピーダンス制御での前記動作に関する情報の前記動作を補正することができる。 With such a configuration, from the person to the robot arm that has stopped driving while operating in the position control mode for controlling the position of the robot arm based on the information related to the operation, The force detection unit is configured to operate the operation while setting an impedance control mode in which the robot arm operates according to a force applied to the arm for each axis in the xyz axis direction in which the robot arm can move. The operation of the information related to the operation in the impedance control can be corrected according to the force of the person detected in (1).
 本発明の第5態様によれば、前記補正動作種別決定手段で決定した前記補正動作の種別に基づき、前記ロボットアームの機械インピーダンス設定値を設定する制御パラメータ管理手段と、
 前記制御パラメータ管理手段の設定した前記機械インピーダンス設定値に、前記ロボットアームの前記機械インピーダンスの値を制御するインピーダンス制御手段とをさらに備えることを特徴とする第1~4のいずれか1つの態様に記載のロボットアームの制御装置を提供する。
According to the fifth aspect of the present invention, control parameter management means for setting a mechanical impedance setting value of the robot arm based on the type of the correction action determined by the correction action type determination means;
In any one of the first to fourth aspects, the apparatus further comprises impedance control means for controlling the mechanical impedance value of the robot arm to the mechanical impedance set value set by the control parameter management means. A control device for the described robot arm is provided.
 このような構成により、補正動作の種別に基づいて、前記ロボットアームの機械インピーダンスの値を設定して制御することができる。 With such a configuration, it is possible to set and control the mechanical impedance value of the robot arm based on the type of correction operation.
 本発明の第6態様によれば、前記インピーダンス制御手段は、前記補正動作の種別に基づき、前記ロボットアームの前記手先の並進方向及び回転方向の6軸の方向の機械インピーダンス設定値を個別に設定するとともに、
 さらに、前記補正動作種別決定部で決定された前記補正動作の種別として、前記手先の前記ロボットアームの方向を補正するとき、前記制御パラメータ管理手段は、前記ロボットアームの補正したい方向の剛性を、前記ロボットアームの前記補正したい方向とは異なる方向の剛性よりも高くなるように前記機械インピーダンス設定値を設定することを特徴とする第5の態様に記載のロボットアームの制御装置を提供する。
According to the sixth aspect of the present invention, the impedance control means individually sets the mechanical impedance setting values in the six axes of the translational direction and the rotational direction of the hand of the robot arm based on the type of the correction operation. And
Further, when correcting the direction of the robot arm of the hand as the type of the correction operation determined by the correction operation type determination unit, the control parameter management means, the rigidity of the robot arm in the direction to be corrected, The robot arm control device according to the fifth aspect, wherein the mechanical impedance set value is set so as to be higher than the rigidity of the robot arm in a direction different from the direction to be corrected.
 このような構成により、補正の種別として、手先の補正したい方向を高剛性にすることで、補正したい方向での変化量を検出しやすくなってロボットアームを補正したい方向に動かしやすくなり、前記手先の補正したい方向とは異なる方向を低高剛性にすることで、動かしにくくすることができる。 With such a configuration, as the type of correction, the direction in which the hand is desired to be corrected is made highly rigid, so that it becomes easier to detect the amount of change in the direction to be corrected and the robot arm can be moved in the direction to be corrected. By making the direction different from the direction to be corrected low and highly rigid, it can be made difficult to move.
 本発明の第7態様によれば、前記補正動作種別決定手段は、前記ロボットアームの前記手先の位置の前記作業面に平行な方向の移動量を検出するとともに、
 前記補正動作種別決定手段は、前記作業面に垂直な方向の力成分が第1の閾値以下であり、かつ前記作業面に平行な方向の力成分が第2の閾値以上である場合に、前記補正動作種別決定手段により検出された前記ロボットアームの前記手先の位置の前記作業面に平行な方向の移動量が第3閾値以上である場合に、前記補正動作の種別として、作業面の位置の移動の種別であると決定し、
 さらに、前記動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記作業面に平行な方向に前記ロボットアームの前記手先の位置を補正することを特徴とする第1の態様に記載のロボットアームの制御装置を提供する。
According to the seventh aspect of the present invention, the correction operation type determination means detects the amount of movement of the position of the hand of the robot arm in a direction parallel to the work surface,
When the force component in the direction perpendicular to the work surface is equal to or less than a first threshold and the force component in the direction parallel to the work surface is equal to or greater than a second threshold, When the amount of movement of the position of the hand of the robot arm detected by the correction operation type determining means in the direction parallel to the work surface is equal to or greater than a third threshold value, the position of the work surface is determined as the type of correction operation. Decide that it is the type of movement,
Further, the motion correction means, according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction action determined by the correction action type determination means, The robot arm control device according to the first aspect, wherein the position of the hand of the robot arm is corrected in a direction parallel to the work surface.
 本発明の第8態様によれば、前記補正動作種別決定手段は、前記ロボットアームの前記手先の位置の前記作業面に垂直な方向の移動量を検出するとともに、
 前記補正動作種別決定手段は、前記作業面に垂直な方向の力成分が第1の閾値以上であり、かつ、前記補正動作種別決定手段で検出された前記ロボットアームの前記手先の位置の前記作業面に垂直な方向の移動量が第4の閾値より大きい場合に、前記補正動作の種別として、作業面垂直方向の位置の移動の種別であると決定し、
 さらに、前記動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記作業面に垂直な方向に前記ロボットアームの前記手先の位置を補正することを特徴とする第1の態様に記載のロボットアームの制御装置を提供する。
According to the eighth aspect of the present invention, the correction operation type determination means detects the amount of movement of the position of the hand of the robot arm in a direction perpendicular to the work surface,
The correction operation type determination means has a force component in a direction perpendicular to the work surface equal to or greater than a first threshold, and the operation at the position of the hand of the robot arm detected by the correction operation type determination means. When the amount of movement in the direction perpendicular to the surface is greater than a fourth threshold, the type of the correction operation is determined as the type of movement of the position in the direction perpendicular to the work surface,
Further, the motion correction means, according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction action determined by the correction action type determination means, The robot arm control device according to the first aspect, wherein the position of the hand of the robot arm is corrected in a direction perpendicular to the work surface.
 本発明の第9態様によれば、前記補正動作種別決定手段は、前記ロボットアームの前記手先の位置の前記作業面に垂直な方向の移動量を検出するとともに、
 前記補正動作種別決定手段は、前記作業面に垂直な方向の力成分が第1の閾値以上であり、かつ、前記補正動作種別決定手段で検出された前記ロボットアームの前記手先の位置の前記作業面に垂直な方向の移動量が第4の閾値以下であり、かつ、前記家事作業が拭き作業である場合に、前記補正動作の種別として、力のかけ具合の補正の種別であると決定し、
 さらに、前記動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記作業面に垂直な方向への前記ロボットアームのかかる力を補正することを特徴とする第1の態様に記載のロボットアームの制御装置を提供する。
According to the ninth aspect of the present invention, the correction operation type determining means detects the amount of movement of the position of the hand of the robot arm in a direction perpendicular to the work surface,
The correction operation type determination means has a force component in a direction perpendicular to the work surface equal to or greater than a first threshold, and the operation at the position of the hand of the robot arm detected by the correction operation type determination means. When the amount of movement in the direction perpendicular to the surface is less than or equal to a fourth threshold and the housework operation is a wiping operation, the type of correction operation is determined to be a correction type of force application ,
Further, the motion correction means, according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction operation determined by the correction operation type determination means, The robot arm control device according to the first aspect, wherein the force applied by the robot arm in a direction perpendicular to the work surface is corrected.
 本発明の第10態様によれば、前記補正動作種別決定手段は、前記ロボットアームの前記手先の位置の前記作業面に垂直な方向の移動量を検出するとともに、
 前記補正動作種別決定手段は、前記作業面に垂直な方向の力成分が第1の閾値以上であり、かつ、前記補正動作種別決定手段で検出された前記ロボットアームの前記手先の位置の前記作業面に垂直な方向の移動量が第4の閾値以下であり、かつ、前記家事作業が吸引作業である場合に、前記補正動作の種別として、吸引力の補正の種別であると決定し、
 さらに、前記動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記作業面に垂直な方向への前記吸引力を補正することを特徴とする第1の態様に記載のロボットアームの制御装置を提供する。
According to the tenth aspect of the present invention, the correction operation type determination means detects the amount of movement of the position of the hand of the robot arm in a direction perpendicular to the work surface,
The correction operation type determination means has a force component in a direction perpendicular to the work surface equal to or greater than a first threshold, and the operation at the position of the hand of the robot arm detected by the correction operation type determination means. When the amount of movement in the direction perpendicular to the surface is a fourth threshold value or less and the housework work is a suction work, it is determined that the type of the correction operation is a type of correction of the suction force,
Further, the motion correction means, according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction action determined by the correction action type determination means, The robot arm control device according to the first aspect, wherein the suction force in a direction perpendicular to the work surface is corrected.
 本発明の第11態様によれば、前記補正動作種別決定手段は、前記ロボットアームの前記手先の位置の前記作業面に平行な方向の移動量を検出するとともに、
 前記補正動作種別決定手段は、前記作業面に垂直な方向の力成分が第1閾値未満であり、かつ、前記作業面に平行な方向の力成分が第2閾値以上である場合に、前記補正動作種別決定手段により検出された前記ロボットアームの前記手先の位置の前記作業面に平行な方向の移動量が第3閾値未満である場合に、前記補正動作の種別として、速度の補正の種別であると決定し、
 さらに、前記動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記作業面に平行な方向に前記ロボットアームの前記手先の位置の速度を補正することを特徴とする第1の態様に記載のロボットアームの制御装置を提供する。
According to the eleventh aspect of the present invention, the correction operation type determination means detects the amount of movement of the position of the hand of the robot arm in a direction parallel to the work surface,
The correction operation type determination unit is configured to correct the correction when a force component in a direction perpendicular to the work surface is less than a first threshold value and a force component in a direction parallel to the work surface is greater than or equal to a second threshold value. When the movement amount in the direction parallel to the work surface of the position of the hand of the robot arm detected by the action type determining means is less than a third threshold, the correction action type is a speed correction type. Determined that there was
Further, the motion correction means, according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction action determined by the correction action type determination means, The robot arm control device according to the first aspect, wherein the speed of the position of the hand of the robot arm is corrected in a direction parallel to the work surface.
 本発明の第12態様によれば、前記補正動作種別決定手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記ロボットアームにかかる前記人の力に基づき前記ロボットアームにかかる力の変位量を計測して、計測結果に基づき位置成分と姿勢成分の変位量を比較して、前記姿勢の変位量が前記位置成分の変位量よりも大きい場合には、前記補正動作の種別として、姿勢の補正の種別であると決定し、
 さらに、前記動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記ロボットアームの前記手先の姿勢を補正することを特徴とする第1の態様に記載のロボットアームの制御装置を提供する。
According to a twelfth aspect of the present invention, the correction action type determination means is a force applied to the robot arm based on the force of the person applied to the robot arm detected by the force detection means and acquired by the information acquisition unit. If the displacement amount of the posture is larger than the displacement amount of the position component, the type of the correction operation is determined. Determined to be the type of posture correction,
Further, the motion correction means, according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction operation determined by the correction operation type determination means, The robot arm control device according to the first aspect, wherein the posture of the hand of the robot arm is corrected.
 このような構成により、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記ロボットアームの前記手先の姿勢を補正するようにロボットアームの駆動装置を確実に駆動制御することができる。 With such a configuration, according to the human force detected by the force detection unit and acquired by the information acquisition unit and the type of the correction operation determined by the correction operation type determination unit, the robot arm The drive device of the robot arm can be reliably driven and controlled so as to correct the posture of the hand.
 本発明の第13態様によれば、前記補正動作種別決定手段は、前記ロボットアームの前記手先の位置の前記作業面に平行な方向の移動量を検出するとともに、
 前記補正動作種別決定手段は、前記人の手により前記ロボットアームにかかる力が前記作業面に平行であり、かつ、前記補正動作種別決定手段により検出されたある一定時間の前記作業面に平行な方向の移動量が閾値以上の場合には、前記補正動作の種別として、作業不可領域の設定の種別であると決定し、
 さらに、前記動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記ロボットアームの前記手先の位置を移動させることで、前記作業不可領域を設定することを特徴とする第1の態様に記載のロボットアームの制御装置を提供する。
According to the thirteenth aspect of the present invention, the correction operation type determination means detects the amount of movement of the position of the hand of the robot arm in a direction parallel to the work surface,
The correction operation type determination means is configured so that a force applied to the robot arm by the human hand is parallel to the work surface and parallel to the work surface for a certain time detected by the correction operation type determination means. When the amount of movement in the direction is equal to or greater than a threshold, it is determined that the type of correction operation is the type of setting of the work impossible area,
Further, the motion correction means, according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction action determined by the correction action type determination means, The robot arm control device according to the first aspect, wherein the work impossible area is set by moving the position of the hand of the robot arm.
 このような構成により、前記作業不可領域を簡単に設定することができて、作業をして欲しくない領域については、作業を不要とすることができる。 With such a configuration, the work-impossible area can be easily set, and work can be made unnecessary for an area that is not desired to be worked.
 本発明の第14態様によれば、前記補正動作種別決定手段で決定した前記補正動作の種別に基づき、前記補正動作の種別に関する情報を表示する表示手段をさらに備えることを特徴とする第1~13のいずれか1つの態様に記載のロボットアームの制御装置を提供する。 According to a fourteenth aspect of the present invention, the apparatus further comprises display means for displaying information on the type of the correction operation based on the type of the correction operation determined by the correction operation type determination unit. A robot arm control device according to any one of the thirteenth aspects is provided.
 このような構成により、補正動作の種別に関する情報を表示することができる。 With this configuration, it is possible to display information regarding the type of correction operation.
 本発明の第15態様によれば、ロボットアームの動作を制御して、家庭内で前記ロボットアームにより家事作業の対象物に作用しながら家事作業を行うロボットアームの制御方法であって、
 前記ロボットアームに作用する人の力を力検出手段で検出し、
 前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と前記力検出手段で検出された前記人の力に関する情報とを情報取得部でそれぞれ取得し、
 前記対象物の状態を対象物状態判断手段で判断し、
 前記情報取得部でそれぞれ取得した前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と前記人の力に関する情報と前記対象物状態判断手段で判断された前記対象物の状態とから前記動作を補正する補正動作の種別を補正動作種別決定手段で決定し、
 予め定められた前記ロボットアームの前記家事作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記ロボットアームを制御して前記動作を動作補正手段で補正することを特徴とするロボットアームの制御方法を提供する。
According to a fifteenth aspect of the present invention, there is provided a control method for a robot arm that controls the operation of the robot arm and performs housework work while acting on an object of housework work by the robot arm in the home,
Detecting the force of the person acting on the robot arm with force detection means,
Information on the operation including the position of the robot arm in the housework and information on the human force detected by the force detection means are respectively acquired by the information acquisition unit,
The state of the object is determined by the object state determination means,
The motion from the information regarding the motion including the position of the robot arm in the housework work acquired by the information acquisition unit, the information regarding the force of the person, and the state of the target determined by the target state determination means. The type of correction operation for correcting the correction is determined by the correction operation type determination means,
Information regarding the human force detected by the force detection unit and acquired by the information acquisition unit and the correction operation determined by the correction operation type determination unit during the domestic work of the robot arm determined in advance. A robot arm control method is provided, wherein the robot arm is controlled according to the type, and the motion is corrected by a motion correction means.
 このような構成により、ロボットアームの動作に関する情報に基づき、前記動作の補正種別を決定し、人の力を検出し、前記ロボットアームの作業中に、前記人の力と前記補正種別に応じて、前記動作を補正することができる。 With such a configuration, the correction type of the movement is determined based on information on the movement of the robot arm, the human force is detected, and the work of the robot arm is performed according to the human force and the correction type. The operation can be corrected.
 本発明の第16態様によれば、前記ロボットアームと、
 前記ロボットアームを制御する第1~14のいずれか1つの態様に記載のロボットアームの制御装置とを備えることを特徴とする家事ロボットを提供する。
According to a sixteenth aspect of the present invention, the robot arm;
There is provided a domestic robot comprising the robot arm control device according to any one of the first to fourteenth aspects for controlling the robot arm.
 本発明の第17態様によれば、ロボットアームの動作を制御して、家庭内で前記ロボットアームにより家事作業の対象物に作用しながら家事作業を行うロボットアームの制御プログラムであって、
 前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と力検出手段で検出しかつ情報取得部で取得した前記ロボットアームに作用する人の力に関する情報と前記対象物状態判断手段で判断された前記対象物の状態とから前記動作を補正する補正動作の種別を補正動作種別決定手段で決定するステップと、
 予め定められた前記ロボットアームの前記家事作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記ロボットアームを制御して前記動作を動作補正手段で補正する動作補正ステップとをコンピュータに実行させるためのロボットアームの制御プログラムを提供する。
According to a seventeenth aspect of the present invention, there is provided a control program for a robot arm that controls the operation of the robot arm and performs housework work while acting on the object of housework work by the robot arm in the home,
Information on the operation including the position of the robot arm in the housework and information on the force of the person acting on the robot arm detected by the force detection unit and acquired by the information acquisition unit and determined by the object state determination unit Determining a type of correction operation for correcting the operation from the state of the object by a correction operation type determination means;
Information regarding the human force detected by the force detection unit and acquired by the information acquisition unit and the correction operation determined by the correction operation type determination unit during the housework work of the robot arm determined in advance and the correction operation type determination unit There is provided a robot arm control program for causing a computer to execute an operation correction step of controlling the robot arm and correcting the operation by an operation correction unit according to the type.
 本発明の第18態様によれば、ロボットアームの動作を制御して、家庭内で前記ロボットアームにより家事作業の対象物に作用しながら家事作業を行うロボットアーム制御用集積電子回路であって、
 前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と力検出手段で検出しかつ情報取得部で取得した前記ロボットアームに作用する人の力に関する情報と前記対象物状態判断手段で判断された前記対象物の状態とから前記動作を補正する補正動作の種別を決定する補正動作種別決定手段と、
 予め定められた前記ロボットアームの前記家事作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記ロボットアームを制御して前記動作を補正する動作補正手段とを備えることを特徴とするロボットアーム制御用集積電子回路を提供する。
According to an eighteenth aspect of the present invention, there is provided an integrated electronic circuit for controlling a robot arm that controls the operation of a robot arm and performs domestic work while acting on an object of domestic work by the robot arm in the home,
Information on the motion including the position of the robot arm in the housework and information on the force of the person acting on the robot arm detected by the force detection means and acquired by the information acquisition unit and determined by the object state determination means Corrective action type determining means for determining the type of corrective action for correcting the action from the state of the object;
Information regarding the human force detected by the force detection unit and acquired by the information acquisition unit and the correction operation determined by the correction operation type determination unit during the housework work of the robot arm determined in advance and the correction operation type determination unit There is provided an integrated electronic circuit for controlling a robot arm, comprising: an operation correcting unit that controls the robot arm according to the type to correct the operation.
 以下、本発明の実施の形態について図面を用いて詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
 (第1実施形態)
 まず、本発明の第1実施形態における家事ロボット1の構成について説明する。図1に示すように、家庭内で、IHクッキングヒータ又はキッチンの作業台などの機器6を研磨する作業又はほこりなどを吸引する作業を行う場合(言い換えれば、掃除作業を行う場合)を例にとって説明する。
(First embodiment)
First, the configuration of the household robot 1 according to the first embodiment of the present invention will be described. As shown in FIG. 1, an explanation will be given by taking as an example a case of performing an operation of polishing equipment 6 such as an IH cooking heater or a kitchen workbench or a suction operation of dust (in other words, a cleaning operation) in the home. To do.
 家事ロボット1は、ロボットアーム5と、ロボットアーム5を駆動制御する制御装置1000とを備えて構成されて、駆動装置65,67,43,62を前記制御装置1000で駆動制御して家庭内で前記作業を行うものである。 The household robot 1 includes a robot arm 5 and a control device 1000 that drives and controls the robot arm 5, and drives and controls the driving devices 65, 67, 43, and 62 with the control device 1000 in the home. The above work is performed.
 ロボットアーム5は、家庭内のキッチン又はテーブルなどの作業台7の壁面7aに設置され、ロボットアーム5の基端が、壁面7aに固定されたレール8に、移動可能に支持され、レール8上をロボットアーム5が、レール8沿いの横方向例えば水平方向に、人16Aの手16の力により、又はモータなどにより自動的に、移動可能とする。ロボットアーム5の基端の固定場所は、作業台7の壁面7aに限られるものではなく、天井などでもよい。 The robot arm 5 is installed on a wall surface 7a of a work table 7 such as a kitchen or a table in the home, and the base end of the robot arm 5 is movably supported on a rail 8 fixed to the wall surface 7a. The robot arm 5 can move in the lateral direction along the rail 8, for example, in the horizontal direction, automatically by the force of the hand 16 of the person 16 </ b> A or by a motor or the like. The fixing position of the base end of the robot arm 5 is not limited to the wall surface 7a of the work table 7, but may be a ceiling or the like.
 作業台7の側面には、ボタン26aなどが配置された操作盤26Aなどのデータ入力IF26と、作業台7の壁面などに配置された表示手段の一例としての表示部14とを備えるように構成されている。 The side surface of the work table 7 includes a data input IF 26 such as an operation panel 26A on which buttons 26a and the like are arranged, and a display unit 14 as an example of display means arranged on the wall surface of the work table 7 and the like. Has been.
 レール8は、壁面7aに固定されたレール固定部8aと、レール可動部用駆動装置の一例であるモータ65の駆動により正逆回転駆動される車輪(図示せず)を有してレール固定部8aに対して移動可能なレール可動部8bとで構成されている。ロボットアーム5の基端が連結された台部34が前記レール可動部8bに連結されて、レール固定部8aに対して、ロボットアーム5の台部34がレール可動部8bと共に移動可能に構成されている。又は、このような構成に代えて、ロボットアーム5の基端が連結された台部34にモータ65により正逆回転駆動される車輪を設けて、壁面7aに固定されたレール8に沿って、台部34が移動するような構成としてもよい。 The rail 8 includes a rail fixing portion 8a fixed to the wall surface 7a, and a wheel (not shown) that is driven to rotate forward and backward by driving a motor 65 that is an example of a driving device for the rail movable portion. It is comprised with the rail movable part 8b which can move with respect to 8a. The base part 34 to which the base end of the robot arm 5 is connected is connected to the rail movable part 8b, and the base part 34 of the robot arm 5 is configured to be movable together with the rail movable part 8b with respect to the rail fixing part 8a. ing. Alternatively, instead of such a configuration, a wheel that is driven to rotate forward and backward by a motor 65 is provided on the base portion 34 to which the base end of the robot arm 5 is connected, and along the rail 8 fixed to the wall surface 7a, It is good also as a structure that the base part 34 moves.
 ロボットアーム5の先端には、掃除部の一例としての、ほこりを吸引するための吸引ノズル9が着脱可能に取り付けられている。吸引ノズル9は、吸引ノズル9内に回転可能に収納されかつ吸引ノズル9内の回転ブラシ用駆動装置の一例である回転ブラシ用モータ67により回転駆動されて機器6の作業面(掃除面)の塵をかき上げる回転ブラシ11が配置されている。10はロボットアーム5の先端に、吸引ノズル9に代えて着脱可能に取り付け可能な掃除部の別の例としての、機器6の汚れをふき取るモップである。 A suction nozzle 9 as an example of a cleaning unit is detachably attached to the tip of the robot arm 5 so as to be detachable. The suction nozzle 9 is rotatably accommodated in the suction nozzle 9 and is rotationally driven by a rotary brush motor 67 which is an example of a rotary brush drive device in the suction nozzle 9, so that the work surface (cleaning surface) of the device 6 is driven. A rotating brush 11 that sweeps up dust is disposed. Reference numeral 10 denotes a mop as another example of a cleaning unit that can be detachably attached to the tip of the robot arm 5 in place of the suction nozzle 9 to wipe off the dirt of the device 6.
 30はロボットアーム5の先端に配置されたハンドであり、例えば、吸引ノズル9を着脱可能に取り付けるとともに、吸引ノズル9を、別の掃除部のモップ10に取り替えるための機構として機能する。このような機構としては、例えば、機械的チャックなど公知の着脱可能な取り付け機構を使用することができる。 30 is a hand arranged at the tip of the robot arm 5 and, for example, functions as a mechanism for detachably attaching the suction nozzle 9 and replacing the suction nozzle 9 with a mop 10 of another cleaning unit. As such a mechanism, for example, a known detachable attachment mechanism such as a mechanical chuck can be used.
 家事ロボット1は、機器6のほこり又は塵などを吸引ノズル9で吸引する作業、機器6の汚れをモップ10でふき取る作業、又は、力を入れてモップ10で磨く作業を行うロボットである。 The housework robot 1 is a robot that performs a work of sucking dust or dust of the device 6 with the suction nozzle 9, a work of wiping the dirt of the device 6 with the mop 10, or a work of polishing with the mop 10 with force.
 家事ロボット1の操作手順の概要を説明する。 The outline of the operation procedure of the household robot 1 will be described.
 まず、図2Aにおいて、人16Aの手16が作業台7の側面に配置されているデータ入力IF26(例えば図26の操作盤26Aの電源ボタン26aの「ON」を押すなど)により電源を入れる。 First, in FIG. 2A, the hand 16 of the person 16A is turned on by the data input IF 26 (for example, pressing “ON” of the power button 26a of the operation panel 26A of FIG. 26) arranged on the side surface of the work table 7.
 次に、埃又は塵などを吸引する場合は、家事ロボット1のロボットアーム5の先端のハンド30に吸引ノズル9を人の手16で取り付けるとともに、拭き掃除又は磨く作業行う場合は、家事ロボット1のロボットアーム5の先端のハンド30にモップ10を人16Aの手16で取り付ける。人16Aの手16で吸引ノズル9又はモップ10を取り付ける際には、ボタンなどのデータ入力IF26からのデータ入力(例えば図26の操作盤26Aの、ハンド30を開閉させるための開閉ボタン26bの「開」を押すなど)により、ハンド30を開く指示を、家事ロボット1の後述する制御部22へ指令を出し、ハンド30を開く。その後、吸引ノズル9若しくはモップ10をハンド30に取り付け、データ入力IF26からのデータ入力(例えば図26の操作盤26Aの、ハンド30を開閉させるための開閉ボタン26bの「閉」を押すなど)により、ハンド30を閉じる指示を制御部22へ指令を出して、ハンド30を閉じることにより、ハンド30に吸引ノズル9若しくはモップ10を取り付ける。なお、取り付けの際に、ロボットアーム5の先端を移動させて(例えば、開閉ボタン26bの「開」を押すことにより、ロボットアーム5の先端のハンド30が自動的に上向きの位置まで上昇させて)、ハンド30の操作をしやすいように、図2Bのように、人の手16の手元にくるように操作することができる。なお、例えば、開閉ボタン26bの「閉」を押すことにより、ロボットアーム5の先端のハンド30が自動的に下向きの掃除位置まで下降するようにすることもできる。 Next, when sucking dust or dust or the like, the suction nozzle 9 is attached to the hand 30 at the tip of the robot arm 5 of the house robot 1 with a human hand 16, and when cleaning or polishing is performed, the house robot 1 The mop 10 is attached to the hand 30 at the tip of the robot arm 5 with the hand 16 of the person 16A. When attaching the suction nozzle 9 or the mop 10 with the hand 16 of the person 16A, data input from the data input IF 26 such as a button (for example, “open / close button 26b of the operation panel 26A of FIG. 26 for opening / closing the hand 30” An instruction to open the hand 30 is issued to the control unit 22 (to be described later) of the household robot 1 to open the hand 30 by pressing “open” or the like. After that, the suction nozzle 9 or the mop 10 is attached to the hand 30 and data is input from the data input IF 26 (for example, pressing the “close” button of the open / close button 26b for opening / closing the hand 30 on the operation panel 26A in FIG. 26). The suction nozzle 9 or the mop 10 is attached to the hand 30 by issuing an instruction to the control unit 22 to close the hand 30 and closing the hand 30. At the time of attachment, the tip of the robot arm 5 is moved (for example, by pressing “open” of the open / close button 26b, the hand 30 at the tip of the robot arm 5 is automatically raised to the upward position. In order to facilitate the operation of the hand 30, it can be operated so as to come to the hand 16 of the person as shown in FIG. 2B. For example, the hand 30 at the tip of the robot arm 5 can be automatically lowered to the downward cleaning position by pressing “close” of the open / close button 26b.
 次に、作業台7の側面に配置されているデータ入力IF26(例えば図26の操作盤26Aの掃除スイッチ26cのスタートボタンなど)を人16Aの手16で押すことにより、家事ロボット1が作動し、後述する動作選択部29で最適な動作、例えば掃除動作(例えば吸引若しくは拭き掃除動作)を選択して、その選択された掃除動作に基づく掃除作業(例えば、吸引若しくは拭き掃除作業)を開始させる。 Next, when the data input IF 26 (for example, the start button of the cleaning switch 26c of the operation panel 26A in FIG. 26) disposed on the side surface of the workbench 7 is pushed with the hand 16 of the person 16A, the house robot 1 is activated. Then, an optimum operation, for example, a cleaning operation (for example, suction or wiping operation) is selected by an operation selection unit 29 to be described later, and a cleaning operation (for example, suction or wiping operation) based on the selected cleaning operation is started.
 拭き掃除動作の際には、図16A、図16B(図16Aを上方から見た図)に示すように、レール8上を家事ロボット1が自走し、自走動作と同時に、ロボットアーム5の先端のモップ10が、ロボットアーム5の手先方向の前後方向沿いの中心軸沿いの位置を中心に左右方向に少しずつずれながら、例えば螺旋を描くような軌跡で拭き掃除動作を行う。また、吸引の掃除動作の際には、図16Cに示すように、レール8上を家事ロボット1が自走し、自走動作と同時に、ロボットアーム5の駆動によりロボットアーム5の先端の吸引ノズル9が、自走方向と垂直な方向に動く(すなわち、左右方向と直交する前後方向沿いに往復移動する)ことで吸引掃除を行う。 During the wiping and cleaning operation, as shown in FIGS. 16A and 16B (views of FIG. 16A from above), the domestic robot 1 self-runs on the rail 8, and simultaneously with the self-running operation, the tip of the robot arm 5 The mop 10 performs a wiping and cleaning operation with a trajectory that draws a spiral, for example, while gradually shifting in the left-right direction around the position along the central axis along the front-rear direction of the robot arm 5. In the suction cleaning operation, as shown in FIG. 16C, the housework robot 1 self-runs on the rail 8, and simultaneously with the self-running operation, the robot arm 5 is driven to suck the suction nozzle at the tip of the robot arm 5. 9 performs suction cleaning by moving in a direction perpendicular to the self-running direction (that is, reciprocating along the front-rear direction perpendicular to the left-right direction).
 なお、データ入力IF26の一例としての操作盤26Aは、作業台7の側面に固定したが、遠隔操作が可能なリモコンでも良い。 The operation panel 26A as an example of the data input IF 26 is fixed to the side surface of the work table 7. However, a remote control capable of remote operation may be used.
 次に、人は作業面の汚れ具合を確認し、家事ロボット1のロボットアーム5を人16Aの手16で直接把持して、掃除動作を補正したい方向(例えば、汚れ具合のひどい領域に向けて、ロボットアーム5の先端の吸引ノズル9又はモップ10を移動させるように移動方向を変えたい方向)に力をかけることで、例えば、図12Aのように、家事ロボット1のロボットアーム5又は家事ロボット1の動作を補正する。すなわち、図12A及び図12Bに示すように、吸引ノズル9又はモップ10を、例えばジグザグ方向に実線で示すように移動させて掃除動作を行なっているときに、図12Cに示すように、例えばジグザグ方向に点線で示すように移動させるように、ロボットアーム5の先端部又は吸引ノズル9又はモップ10に人の手16で、矢印で示すように力をかけて、ロボットアーム5の先端の吸引ノズル9又はモップ10を左方向に移動させる。このようにすることで、図12Dに示すように、吸引ノズル9又はモップ10が、ロボットアーム5の手先の前後方向沿いの中心軸沿いの位置に対して、左側の領域において、吸引ノズル9又はモップ10による掃除動作を例えばジグザグ方向に実線で示すように行なうことができる。 Next, the person confirms the degree of dirt on the work surface, directly grips the robot arm 5 of the household robot 1 with the hand 16 of the person 16A, and corrects the cleaning operation (for example, toward a region where the degree of dirt is severe). For example, as shown in FIG. 12A, the robot arm 5 or the housework robot of the housework robot 1 is applied by applying a force to the suction nozzle 9 or the mop 10 at the tip of the robot arm 5. 1 operation is corrected. That is, as shown in FIG. 12C, when the suction nozzle 9 or the mop 10 is moved as shown by a solid line in the zigzag direction, for example, as shown in FIG. The tip of the robot arm 5 or the suction nozzle 9 or the mop 10 is moved by a human hand 16 as shown by the arrow so as to move in the direction indicated by the dotted line, and the suction nozzle at the tip of the robot arm 5 is moved. 9 or mop 10 is moved to the left. In this way, as shown in FIG. 12D, the suction nozzle 9 or the mop 10 is located in the left region with respect to the position along the central axis along the front-rear direction of the hand of the robot arm 5. The cleaning operation by the mop 10 can be performed as indicated by a solid line in the zigzag direction, for example.
 図3は、家事ロボット1を構成するロボットアーム5の制御装置の構成要素を詳細に示す図であり、制御装置本体部45と、動作を生成する動作生成装置12と、制御対象であるロボットアーム5と、レール8と、周辺装置47との詳細構成を示す図である。家事ロボット1の前記制御装置は、制御装置本体部45と、動作生成装置12と、周辺装置47とで大略構成されている。 FIG. 3 is a diagram showing in detail the components of the control device of the robot arm 5 constituting the housework robot 1, and includes a control device main body 45, a motion generation device 12 that generates a motion, and a robot arm that is a control target. 5 is a diagram showing a detailed configuration of the rail 5, the rail 8, and the peripheral device 47. FIG. The control device of the housework robot 1 is roughly composed of a control device main body 45, the motion generation device 12, and a peripheral device 47.
 制御装置本体部45及び動作生成装置12及び周辺装置47は、それぞれ、一般的なパーソナルコンピュータにより構成される。 The control device main body 45, the motion generation device 12, and the peripheral device 47 are each configured by a general personal computer.
 制御装置本体部45は、動作生成装置12の動作補正手段の一例としての動作補正部20と補正動作種別決定手段の一例としての補正動作種別決定部23と周辺装置47のデータ入力IF26とにそれぞれ接続された制御パラメータ管理手段の一例としての制御パラメータ管理部21と、制御パラメータ管理部21と周辺装置47の入出力IF24とに接続されたインピーダンス制御手段の一例としての制御部(インピーダンス制御部)22とを備えるように構成される。 The control device main body 45 includes an operation correction unit 20 as an example of an operation correction unit of the operation generation device 12, a correction operation type determination unit 23 as an example of a correction operation type determination unit, and a data input IF 26 of a peripheral device 47, respectively. Control parameter management unit 21 as an example of connected control parameter management means, and control unit (impedance control unit) as an example of impedance control means connected to control parameter management unit 21 and input / output IF 24 of peripheral device 47 22.
 動作生成装置12は、動作データベース17と、作業不可領域データベース28と、補正動作種別決定方法設定部27と、動作補正部20と、補正動作種別決定部23と、動作記憶部15と、動作選択部29と、情報取得部100とを備えるように構成される。動作記憶部15は、動作データベース17と作業不可領域データベース28と動作補正部20とに接続されている。動作データベース17と作業不可領域データベース28とは、それぞれ、動作記憶部15と動作補正部20と動作選択部29とに接続されている。動作補正部20は、動作データベース17と作業不可領域データベース28と動作記憶部15と制御装置本体部45の制御パラメータ管理部21と補正動作種別決定部23と周辺装置47のデータ入力IF26とが接続されている。補正動作種別決定部23は、動作補正部20と補正動作種別決定方法設定部27と周辺装置47のデータ入力IF26と制御装置本体部45の制御パラメータ管理部21とに接続されている。動作選択部29は動作データベース17と作業不可領域データベース28とデータ入力IF26と接続されている。補正動作種別決定方法設定部27は、データ入力IF26と補正動作種別決定部23と接続されている。情報取得部100は、補正動作種別決定部23と、動作データベース17と作業不可領域データベース28と、制御部22の力検出部53とに接続されている。よって、情報取得部100は、掃除作業における掃除部9,10の吸引力及び掃除部9,10の掃除位置を含む掃除動作に関する情報と、力検出部53で検出されたロボットアーム5に作用する人の力に関する情報とをそれぞれ取得可能としている。情報取得部100で取得した情報は、補正動作種別決定手段23に入力され、情報取得部100でそれぞれ取得した掃除動作に関する情報と人の力に関する情報とから、後述するように、掃除動作を補正する補正動作の種別を補正動作種別決定手段23で決定することができる。 The motion generation device 12 includes a motion database 17, an unworkable area database 28, a corrected motion type determination method setting unit 27, a motion correction unit 20, a corrected motion type determination unit 23, a motion storage unit 15, and a motion selection. It is comprised so that the part 29 and the information acquisition part 100 may be provided. The motion storage unit 15 is connected to the motion database 17, the work impossible area database 28, and the motion correction unit 20. The motion database 17 and the work impossible area database 28 are connected to the motion storage unit 15, the motion correction unit 20, and the motion selection unit 29, respectively. The motion correction unit 20 is connected to the motion database 17, the work impossible region database 28, the motion storage unit 15, the control parameter management unit 21 of the control device main body 45, the correction motion type determination unit 23, and the data input IF 26 of the peripheral device 47. Has been. The correction operation type determination unit 23 is connected to the operation correction unit 20, the correction operation type determination method setting unit 27, the data input IF 26 of the peripheral device 47, and the control parameter management unit 21 of the control device main body 45. The action selection unit 29 is connected to the action database 17, the work impossible area database 28, and the data input IF 26. The correction operation type determination method setting unit 27 is connected to the data input IF 26 and the correction operation type determination unit 23. The information acquisition unit 100 is connected to the correction operation type determination unit 23, the operation database 17, the work impossible area database 28, and the force detection unit 53 of the control unit 22. Therefore, the information acquisition unit 100 acts on the information regarding the cleaning operation including the suction force of the cleaning units 9 and 10 and the cleaning position of the cleaning units 9 and 10 in the cleaning operation, and the robot arm 5 detected by the force detection unit 53. It is possible to obtain information on human power. The information acquired by the information acquisition unit 100 is input to the correction operation type determination unit 23, and the cleaning operation is corrected as described later from the information regarding the cleaning operation and the information regarding human power acquired by the information acquisition unit 100, respectively. The type of corrective action to be performed can be determined by the corrective action type determining means 23.
 周辺装置47は、補正動作種別決定部23と動作補正部20と制御装置本体部45の制御パラメータ管理部21と表示部14と動作生成装置12とに接続されたデータ入力IF26と、レール可動部8bのモータ65の回転軸に取り付けられてその回転軸の回転角度を検出するエンコーダ64と各関節部の関節部用駆動装置の一例であるモータ43の回転軸に取り付けられてその回転軸の回転角度を検出するエンコーダ44とハンド用駆動装置の一例であるハンド開閉駆動用のモータ62の回転軸に取り付けられてその回転軸の回転角度を検出するエンコーダ61と回転ブラシ11のモータ69のエンコーダ68とからそれぞれの角度情報が入力されるとともに制御部22に接続された入出力IF24と、レール可動部8bのモータ65とロボットアーム5の各関節部のモータ43とハンド開閉駆動用のモータ62と回転ブラシ11のモータ69とにそれぞれ接続されたモータドライバ25と、補正動作種別決定部23に接続された表示部14とを備えるように構成される。 The peripheral device 47 includes a correction operation type determination unit 23, an operation correction unit 20, a control parameter management unit 21 of the control device body unit 45, a data input IF 26 connected to the display unit 14 and the operation generation device 12, and a rail movable unit. An encoder 64 that is attached to the rotation shaft of the motor 65 of 8b and detects the rotation angle of the rotation shaft, and a rotation shaft of the motor 43 that is an example of a joint drive device for each joint portion. An encoder 44 for detecting an angle and an encoder 68 for detecting a rotation angle of the rotating shaft 11 attached to a rotating shaft of a hand opening / closing driving motor 62 which is an example of a hand driving device and an encoder 68 of a motor 69 of the rotating brush 11. And the input / output IF 24 connected to the control unit 22, the motor 65 of the rail movable unit 8b, A motor driver 25 connected to the motor 43 of each joint part of the bot arm 5, the motor 62 for driving the hand opening / closing, and the motor 69 of the rotary brush 11, and the display unit 14 connected to the correction operation type determination unit 23; It is comprised so that it may comprise.
 入出力IF24は、パーソナルコンピュータのPCIバスなどの拡張スロットに接続された、例えばD/Aボードと、A/Dボードと、カウンタボードとなどを備えるように構成されている。 The input / output IF 24 is configured to include, for example, a D / A board, an A / D board, a counter board, and the like connected to an expansion slot such as a PCI bus of a personal computer.
 ロボットアーム5及びレール可動部8bの動作を制御する動作生成装置12と、制御装置本体部45と、周辺装置47とが、それぞれの動作を実行することにより、ロボットアーム5の各関節部の各関節角度情報であってかつ後述するエンコーダ44より出力される各関節角度情報が、入出力IF24を通じて制御装置本体部45に取り込まれる。そして、制御装置本体部45は、取り込まれた各関節角度情報に基づき、ロボットアーム5の各関節部の回転動作での制御指令値を算出する。さらに、レール可動部8bのモータ65のエンコーダ64より出力されるレール可動部8bの位置情報が、入出力IF24を通じて制御装置本体部45に取り込まれる。そして、制御装置本体部45は、取り込まれた各位置情報に基づき、レール可動部8bのモータ65の制御指令値を算出する。また、回転ブラシ11のモータ67のエンコーダ66より出力される回転力が入出力IF24を通じて制御装置本体部45に取り込まれ、制御装置本体部45は、取り込まれた回転力に基づき、回転ブラシ11のモータ67の制御指令値を算出する。 The motion generation device 12 that controls the motion of the robot arm 5 and the rail movable portion 8b, the control device main body 45, and the peripheral device 47 execute the respective motions, whereby each of the joint portions of the robot arm 5 is performed. Each joint angle information that is joint angle information and output from an encoder 44 described later is taken into the control device main body 45 through the input / output IF 24. Then, the control device main body 45 calculates a control command value in the rotation operation of each joint of the robot arm 5 based on each taken joint angle information. Further, the position information of the rail movable portion 8 b output from the encoder 64 of the motor 65 of the rail movable portion 8 b is taken into the control device main body 45 through the input / output IF 24. And the control apparatus main-body part 45 calculates the control command value of the motor 65 of the rail movable part 8b based on each taken-in positional information. Further, the rotational force output from the encoder 66 of the motor 67 of the rotary brush 11 is taken into the control device main body 45 through the input / output IF 24, and the control device main body 45 receives the rotational force of the rotary brush 11 based on the taken rotational force. A control command value for the motor 67 is calculated.
 算出されたロボットアーム5の各関節部のモータ43の制御指令値は、入出力IF24を通じてモータドライバ25に与えられ、モータドライバ25から送られた各制御指令値に従って、ロボットアーム5の各関節部のモータ43がそれぞれ独立して駆動される。 The calculated control command value of the motor 43 of each joint part of the robot arm 5 is given to the motor driver 25 through the input / output IF 24, and each joint part of the robot arm 5 according to each control command value sent from the motor driver 25. The motors 43 are driven independently.
 また、算出されたレール可動部8b8の制御指令値は、入出力IF24を通じてモータドライバ25に与えられ、モータドライバ25から送られた各制御指令値に従って、レール可動部8bのモータ65が駆動される。 Further, the calculated control command value of the rail movable portion 8b8 is given to the motor driver 25 through the input / output IF 24, and the motor 65 of the rail movable portion 8b is driven according to each control command value sent from the motor driver 25. .
 また、モータドライバ25により駆動制御されるハンド用駆動装置の一例としてハンド開閉駆動用のモータ62と、ハンド開閉駆動用のモータ62の回転軸の回転位相角を検出するエンコーダ61とをさらにハンド30に備えて、例えば、モータ62の回転軸を正方向に回転させることによりハンド30を開いて、吸引ノズル9又はモップ10を人の手16で取り付け可能とする一方、モータ62の回転軸を逆方向に回転させることによりハンド30を閉じて、ハンド30に取り付けられた吸引ノズル9又はモップ10を固定するように構成することができる。このような場合、エンコーダ61で検出されたモータ62の回転軸の回転角度を基に、制御装置本体部45の制御部22のハンド制御部54(図7に図示)からの制御信号(開閉指令信号)により、モータドライバ25を介してハンド開閉駆動用のモータ62の回転を駆動制御して、ハンド開閉駆動用のモータ62の回転軸を正逆回転させることによりハンド30を開閉させる。 Further, as an example of a hand drive device that is driven and controlled by the motor driver 25, a hand opening / closing drive motor 62 and an encoder 61 that detects the rotational phase angle of the rotation shaft of the hand opening / closing drive motor 62 are further provided in the hand 30. For example, the hand 30 is opened by rotating the rotating shaft of the motor 62 in the forward direction so that the suction nozzle 9 or the mop 10 can be attached by a human hand 16, while the rotating shaft of the motor 62 is reversed. The hand 30 can be closed by rotating in the direction, and the suction nozzle 9 or the mop 10 attached to the hand 30 can be fixed. In such a case, based on the rotation angle of the rotation shaft of the motor 62 detected by the encoder 61, a control signal (open / close command) from the hand control unit 54 (shown in FIG. 7) of the control unit 22 of the control device main body 45. Signal), the rotation of the hand opening / closing driving motor 62 is driven and controlled via the motor driver 25, and the hand 30 is opened / closed by rotating the rotating shaft of the hand opening / closing driving motor 62 forward and backward.
 また、算出された回転ブラシ11のモータ67の制御指令値は、入出力IF24を通じてモータドライバ25に与えられ、モータドライバ25から送られた制御指令値に従って、回転ブラシ11のモータ69が駆動される。 The calculated control command value of the motor 67 of the rotary brush 11 is given to the motor driver 25 through the input / output IF 24, and the motor 69 of the rotary brush 11 is driven according to the control command value sent from the motor driver 25. .
 ロボットアーム5は、6自由度の多リンクマニピュレータであり、ハンド30と、ハンド30が取り付けられている手首部31を先端に有する前腕リンク32と、前腕リンク32の基端に先端が回転可能に連結される上腕リンク33と、上腕リンク33の基端が回転可能に連結支持される台部34とを備えている。台部34は、レール可動部8bに連結されている。手首部31は、第4関節部38と、第5関節部39と、第6関節部40との3つの回転軸を有しており、前腕リンク32に対するハンド30の相対的な姿勢を変化させることができる。すなわち、図3において、第4関節部38は、手首部31に対するハンド30の横軸周りの相対的な姿勢を変化させることができる。第6関節部40は、手首部31に対するハンド30の、第4関節部38の横軸及び第5関節部39の縦軸とそれぞれ直交する横軸周りの相対的な姿勢を変化させることができる。前腕リンク32の他端は、上腕リンク33の先端に対して第3関節部37周りに、すなわち、第4関節部38の横軸と平行な横軸周りに回転可能とする。上腕リンク33の他端は、台部34に対して第2関節部36周りに、すなわち、第4関節部38の横軸と平行な横軸周りに回転可能とする。さらに、台部34の上側可動部34aは、台部34の下側固定部34bに対して第1関節部35周りに、すなわち、第5関節部39の縦軸と平行な縦軸周りに回転可能としている。この結果、ロボットアーム5は、合計6個の軸周りに回転可能として前記6自由度の多リンクマニピュレータを構成している。 The robot arm 5 is a multi-link manipulator with 6 degrees of freedom, and the tip of the hand 30, the forearm link 32 having the wrist 31 to which the hand 30 is attached at the tip, and the proximal end of the forearm link 32 are rotatable. The upper arm link 33 to be connected is provided, and a base portion 34 on which the base end of the upper arm link 33 is rotatably connected and supported. The base part 34 is connected to the rail movable part 8b. The wrist portion 31 has three rotation axes of the fourth joint portion 38, the fifth joint portion 39, and the sixth joint portion 40, and changes the relative posture of the hand 30 with respect to the forearm link 32. be able to. That is, in FIG. 3, the fourth joint portion 38 can change the relative posture around the horizontal axis of the hand 30 with respect to the wrist portion 31. The sixth joint portion 40 can change the relative posture of the hand 30 with respect to the wrist portion 31 about the horizontal axis orthogonal to the horizontal axis of the fourth joint portion 38 and the vertical axis of the fifth joint portion 39. . The other end of the forearm link 32 is rotatable around the third joint portion 37 with respect to the tip of the upper arm link 33, that is, around a horizontal axis parallel to the horizontal axis of the fourth joint portion 38. The other end of the upper arm link 33 is rotatable around the second joint portion 36 with respect to the base portion 34, that is, around a horizontal axis parallel to the horizontal axis of the fourth joint portion 38. Further, the upper movable portion 34a of the pedestal 34 rotates around the first joint 35 relative to the lower fixed portion 34b of the pedestal 34, that is, around the vertical axis parallel to the vertical axis of the fifth joint 39. It is possible. As a result, the robot arm 5 constitutes the multi-link manipulator having 6 degrees of freedom so as to be rotatable around a total of six axes.
 各軸の回転部分を構成する各関節部には、回転駆動装置の一例としてのモータ43と、モータ43の回転軸の回転位相角(すなわち関節角)を検出するエンコーダ44とを備えている。モータ43は、各関節部を構成する一対の部材(例えば、回動側部材と、該回動側部材を支持する支持側部材)のうちの一方の部材に備えられ、かつ後述するモータドライバ25により駆動制御される(実際には、ロボットアーム5の各関節部の一方の部材の内部に配設されている)。また、エンコーダ44は、モータ43の回転軸の回転位相角(すなわち、関節角)を検出するために、一方の部材に備えられる(実際には、ロボットアーム5の各関節部の一方の部材の内部に配設されている)。一方の部材に備えられたモータ43の回転軸が他方の部材に連結されて、前記回転軸を正逆回転させることにより、他方の部材を一方の部材に対して各軸周りに回転可能とする。 Each joint that constitutes a rotating portion of each axis includes a motor 43 as an example of a rotation driving device and an encoder 44 that detects a rotation phase angle (that is, a joint angle) of the rotation axis of the motor 43. The motor 43 is provided in one member of a pair of members (for example, a rotation-side member and a support-side member that supports the rotation-side member) constituting each joint portion, and is described later. (Actually, it is arranged inside one member of each joint portion of the robot arm 5). The encoder 44 is provided in one member in order to detect the rotation phase angle (that is, the joint angle) of the rotation shaft of the motor 43 (actually, one member of each joint portion of the robot arm 5 is provided). Arranged inside). The rotating shaft of the motor 43 provided in one member is connected to the other member, and the other member can be rotated around each axis with respect to the one member by rotating the rotating shaft forward and backward. .
 46はレール座標系Oであり、レール8の端の点O(図8参照)からの相対的な位置関係を示す。41はレール8のレール可動部8bに固定された台部34の台部座標系であり、レール座標系Oからの相対的な位置関係を示す。手先座標系42は台部座標系41からの相対的な位置関係を示す。 Reference numeral 46 denotes a rail coordinate system O d , which indicates a relative positional relationship from the point O s at the end of the rail 8 (see FIG. 8). Reference numeral 41 denotes a pedestal coordinate system of the pedestal 34 fixed to the rail movable portion 8b of the rail 8, and shows a relative positional relationship from the rail coordinate system Od . The hand coordinate system 42 indicates a relative positional relationship from the platform coordinate system 41.
 レール8の端の点Oから見たレール座標系46の原点位置O(x、y)をレール可動部8bの位置(レール位置)とする。さらに、台部座標系41から見た手先座標系42の原点位置O(x、y、z)をロボットアーム5の手先位置(吸引ノズル9,モップ10の先端の位置)とし、台部座標系41から見た手先座標系42の姿勢をロール角とピッチ角とヨー角とで表現した(φ、θ、ψ)をロボットアーム5の手先姿勢とし、手先位置及び姿勢ベクトルをベクトルr=[x、y、z、φ、θ、ψ]と定義する。ロール角、ピッチ角、ヨー角について図13A~図13Cを用いて説明する。 The origin position O d (x, y) of the rail coordinate system 46 viewed from the end point O s of the rail 8 is set as the position (rail position) of the rail movable portion 8b. Further, the origin position O e (x, y, z) of the hand coordinate system 42 viewed from the base coordinate system 41 is set as the hand position of the robot arm 5 (the position of the tip of the suction nozzle 9 and the mop 10), and the base coordinates The posture of the hand coordinate system 42 viewed from the system 41 is expressed by the roll angle, the pitch angle, and the yaw angle (φ, θ, ψ) as the hand posture of the robot arm 5, and the hand position and posture vector are expressed as a vector r = [ x, y, z, φ, θ, ψ] T. The roll angle, pitch angle, and yaw angle will be described with reference to FIGS. 13A to 13C.
 まず、絶対座標系35のZ軸を回転軸として、座標系を角度φだけ回転させた座標系を考える(図13A)。このときの座標軸を[X'、Y'、Z]とする。 First, consider a coordinate system in which the coordinate system is rotated by an angle φ with the Z axis of the absolute coordinate system 35 as the rotation axis (FIG. 13A). The coordinate axes at this time are assumed to be [X ′, Y ′, Z].
 次に、この座標系を、Y'を回転軸として角度θだけZ軸周りに回転させる(図13B参照)。このときの座標軸を[X’’、Y'、Z’’]とする。 Next, this coordinate system is rotated around the Z axis by an angle θ with Y ′ as the rotation axis (see FIG. 13B). The coordinate axes at this time are [X ″, Y ′, Z ″].
 最後に、この座標系を、X’’軸を回転軸として、角度ψだけX’’軸周りに回転させる(図13C参照)。このときの座標軸を[X’’、Y’’’、Z’’’]とする。このときの座標系の姿勢を、ロール角度φ、ピッチ角度θ、ヨー角度ψとし、このときの姿勢ベクトルは(φ,θ,ψ)となる。姿勢(φ,θ,ψ)の座標系が、原点位置を手先座標系42の原点位置O(x,y,z)に平行移動した座標系と、手先座標系42が一致する場合、手先座標系42の姿勢ベクトルは(φ,θ,ψ)であるとする。 Finally, this coordinate system is rotated around the X ″ axis by an angle ψ using the X ″ axis as a rotation axis (see FIG. 13C). The coordinate axes at this time are [X ″, Y ′ ″, Z ′ ″]. The posture of the coordinate system at this time is a roll angle φ, a pitch angle θ, and a yaw angle ψ, and the posture vector at this time is (φ, θ, ψ). When the coordinate system of the posture (φ, θ, ψ) matches the coordinate system obtained by translating the origin position to the origin position O e (x, y, z) of the hand coordinate system 42, and the hand coordinate system 42, Assume that the orientation vector of the coordinate system 42 is (φ, θ, ψ).
 ロボットアーム5の手先位置と姿勢とをそれぞれ制御する場合には、手先位置及び姿勢ベクトルrを、後述する目標軌道生成部55で生成された手先位置と姿勢目標ベクトルrとに追従させることになる。 When controlling the hand position and orientation of the robot arm 5 respectively, the hand position and orientation vector r, to be made to follow on the hand position generated by the target track generation unit 55 to be described later and orientation target vector r d Become.
 26はデータ入力IF(インターフェース)であり、人(家事作業者)がボタン又はキーボード又はマウス又はマイクなどの入力装置を使用して、掃除作業の開始、終了などの指令を家事ロボット1に入力するインターフェースである。 Reference numeral 26 denotes a data input IF (interface). A person (housework worker) uses a button or a keyboard or an input device such as a mouse or a microphone to input a command to start or end the cleaning work to the housework robot 1. Interface.
 表示部14は、例えば作業台7に設置されたディスプレイ装置であり、後述するロボットの動作又は補正するパラメータの種別などを表示部14に表示する。 The display unit 14 is, for example, a display device installed on the work table 7, and displays on the display unit 14 the type of a robot operation or a parameter to be corrected, which will be described later.
 動作データベース17は、レール可動部8b及びロボットアーム5の、ある時間における位置及び姿勢など動作に関する情報(掃除動作に関する情報)を記憶して保持している。ここで、掃除動作に関する情報とは、前記ロボットアーム5が行う掃除作業に応じた、ロボットアーム5の手先位置姿勢の情報と、ロボットアーム5が機器6に加える力情報と、ロボットアーム5が機器6を吸引する際の吸引力の強さに関する情報と、ロボットアーム5の速度情報と、掃除を行わない領域に関する情報である作業不可領域情報とのうちの少なくとも1つの情報を含むものである。 The operation database 17 stores and holds information (information related to the cleaning operation) regarding the movement of the rail movable unit 8b and the robot arm 5 such as the position and posture at a certain time. Here, the information related to the cleaning operation includes information on the position and orientation of the hand of the robot arm 5 according to the cleaning operation performed by the robot arm 5, information on the force applied by the robot arm 5 to the device 6, and information on the robot arm 5 6 includes at least one information of information on the strength of the suction force when sucking 6, speed information of the robot arm 5, and work impossible area information which is information on an area where cleaning is not performed.
 動作データベース17の詳細について説明する。 Details of the operation database 17 will be described.
 動作データベース17は、例えば、図4に示したレール可動部8b及びロボットアーム5の動作に関する情報で、掃除作業を識別する作業ID番号と、その作業内の個々の動作を識別する動作ID番号と、その動作におけるレール可動部8bの位置に関する情報と、前記動作におけるロボットアーム5の手先位置と姿勢とに関する情報と、前記動作におけるロボットアーム5が作業面にかける力に関する情報と、吸引力の強さに関する情報と、ロボットアーム5の位置と姿勢と力と吸引力とのパラメータのうちのいずれの情報が有効か否かを示すフラグ(有効性を示すフラグ)に関する情報と、各動作が作用する時間に関する情報と、後述する動作補正部20で動作データベース17の動作情報を補正する際の補正すべきパラメータの種別に関する情報と、現在動作中かどうかを示す進捗情報とを保持するように構成される。 The operation database 17 is, for example, information on the operation of the rail movable unit 8b and the robot arm 5 shown in FIG. 4, and a work ID number for identifying a cleaning work, and an operation ID number for identifying individual actions in the work. , Information on the position of the rail movable part 8b in the operation, information on the hand position and posture of the robot arm 5 in the operation, information on the force applied to the work surface by the robot arm 5 in the operation, and strong suction force Information on the height, information on a flag (validity flag) indicating whether or not any of the parameters of the position, posture, force, and suction force of the robot arm 5 is valid, and each action acts Information on time and the type of parameter to be corrected when correcting the operation information in the operation database 17 by the operation correction unit 20 described later And information about, configured to hold and progress information indicating whether the currently operating.
 動作データベース17の掃除作業を識別する作業ID番号は、複数種類の掃除作業がある場合に、互いに識別するために、それぞれの掃除作業に対して付された作業ID番号を表す情報である。 The work ID number for identifying the cleaning work in the operation database 17 is information indicating the work ID number assigned to each cleaning work in order to identify each other when there are a plurality of types of cleaning work.
 動作データベース17の掃除作業内の個々の動作を識別する動作ID番号は、1つの掃除作業が複数の掃除動作で構成されている場合に、1つの掃除作業内の個々の掃除動作を互いに識別するために、それぞれの掃除動作に対して付された動作ID番号を表す情報である。 The operation ID number for identifying each operation in the cleaning work in the operation database 17 identifies each cleaning operation in one cleaning operation from each other when one cleaning operation is composed of a plurality of cleaning operations. Therefore, it is information representing the operation ID number assigned to each cleaning operation.
 動作データベース17のレール可動部8bの位置に関する情報は、前述したレール位置の情報を表し、すなわち、レール8の端のOから見たレール座標系46の原点位置O(x、y)とし、例えば図8に示すように、家事ロボット1がレール固定部8a上を左から右に走行して掃除動作を行なう場合においては、レール可動部8bの第1のレール位置(x、y)、第2のレール位置(x、y)、第3のレール位置(x、y)などを記憶する。 The information on the position of the rail movable portion 8b in the operation database 17 represents the information on the rail position described above, that is, the origin position O d (x, y) of the rail coordinate system 46 viewed from the O s at the end of the rail 8. For example, as shown in FIG. 8, when the housework robot 1 performs a cleaning operation by running from left to right on the rail fixing portion 8 a, the first rail position (x 1 , y 1) of the rail movable portion 8 b is performed. ), The second rail position (x 2 , y 2 ), the third rail position (x 3 , y 3 ), and the like.
 動作データベース17のレール可動部8bの位置に関する情報は、動作データベース17内に、予め設定しておくか、ロボットアーム5又は吸引ノズル9若しくはモップ10を人の手16で直接把持して、後述するインピーダンス制御モードにて、ロボットアーム5を移動させて記憶させても良い。 Information on the position of the rail movable portion 8b in the operation database 17 is set in advance in the operation database 17, or the robot arm 5, the suction nozzle 9 or the mop 10 is directly held by the human hand 16 and will be described later. The robot arm 5 may be moved and stored in the impedance control mode.
 動作データベース17のロボットアーム5の手先位置と姿勢とに関する情報は、前述したロボットアーム5の手先位置と姿勢とを表し、原点位置Oと姿勢とから、(x、y、z、φ、θ、ψ)と表す。 The information on the hand position and posture of the robot arm 5 in the motion database 17 represents the hand position and posture of the robot arm 5 described above, and from the origin position O e and the posture, (x, y, z, φ, θ , Ψ).
 動作データベース17のロボットアーム5の位置及び姿勢・時間の情報は、例えば、図9に示すように、ロボットアーム5又は吸引ノズル9若しくはモップ10を人の手16で直接把持して、後述するインピーダンス制御モードにて、ロボットアーム5を移動させて、ある一定時間毎(例えば0.2msec毎)にロボットアーム5の手先位置と姿勢(図9の点線の経路)の情報を制御部22で取得し(具体的に、制御部22の説明でも記載しているように、順運動学計算部58により各関節部のエンコーダ44で計測された関節角を手先位置及び姿勢に変換してロボットアーム5の手先位置と姿勢の情報を取得し)、時間の情報と共に、動作データベース17に動作記憶部15で記憶する。なお、製品出荷時にメーカにてあらかじめ位置及び姿勢・時間の情報を同様の方法で生成し、動作データベース17に記憶しておいても良い。また、ロボットアーム5を移動させて、(例えば、ロボットアーム5の上方に配置された)カメラなどの画像撮像装置で環境(ロボットアーム56及び機器6を含む環境)を撮影し、得られた画像データ(例えば、得られた環境情報のうちの機器6の画像)と、あらかじめ記憶された物体の画像(例えば機器6の画像)との間でモデルマッチング処理を行い、合致した位置をロボットアーム5の手先位置として動作データベース17に、具体的には図示していないがデータ入力IF26を介して動作記憶部15で記憶するようにしても良い。 For example, as shown in FIG. 9, the robot database 5 or the suction nozzle 9 or the mop 10 is directly gripped by the human hand 16 and the impedance described later. In the control mode, the robot arm 5 is moved, and information on the hand position and posture of the robot arm 5 (the dotted line path in FIG. 9) is acquired by the control unit 22 at certain time intervals (for example, every 0.2 msec). (Specifically, as described in the explanation of the control unit 22, the joint angle measured by the encoder 44 of each joint unit by the forward kinematics calculation unit 58 is converted into the hand position and posture, and the robot arm 5 Information on the hand position and posture is acquired) and stored together with the time information in the motion database 17 in the motion database 17. It should be noted that information on position, posture and time may be generated in advance by the manufacturer at the time of product shipment and stored in the operation database 17. Further, the robot arm 5 is moved, and the environment (environment including the robot arm 56 and the device 6) is photographed with an image pickup device such as a camera (for example, disposed above the robot arm 5), and the obtained image A model matching process is performed between data (for example, the image of the device 6 in the obtained environment information) and an object image (for example, an image of the device 6) stored in advance, and the matching position is determined by the robot arm 5. Although it is not specifically shown, it may be stored in the operation storage unit 15 through the data input IF 26 as the hand position of the user.
 動作データベース17に記憶されているロボットアーム5がかける力に関する情報は、ロボットアーム5が作業をする際に対象となる物体にかける力の情報を示し、ロボットアーム5のx、y、z方向にかける力をそれぞれf、f、fとし、さらにφ、θ、ψ方向にかける力をfφ、fθ、fψとする。動作データベース17では、(f、f、f、fφ、fθ、fψ)と表す。例えばf=5[N]である場合は、z軸方向に5Nの力をかけて作業することを表し、機器6を拭き掃除する際に、機器6の垂直方向に力をかけて擦る場合などに使用するパラメータである。 The information on the force applied by the robot arm 5 stored in the motion database 17 indicates information on the force applied to the target object when the robot arm 5 performs work, and the robot arm 5 has x, y, and z directions. Forces to be applied are f x , f y , and f z , respectively, and forces to be applied in the φ, θ, and ψ directions are f φ , f θ , and f ψ . In operation database 17, expressed as (f x, f y, f z, f φ, f θ, f ψ). For example, when f z = 5 [N], this means that the work is performed with a force of 5N in the z-axis direction, and when the device 6 is wiped and cleaned, the device 6 is rubbed with a force in the vertical direction. It is a parameter used for.
 動作データベース17の吸引力に関する情報は、ロボットアーム5が吸引作業をする際の吸引する力を示す。ロボットアーム5のx、y、z方向の吸引力をそれぞれp、p、pとし、さらにφ、θ、ψ方向の吸引力をpφ、pθ、pψとする。動作データベース17では、(p、p、p、pφ、pθ、pψ)と表す。例えばpの値が大きくなるにつれて吸引力が大きくなり、例えば、埃が大量に付着している場合は吸引力が大きく設定(例えば「5」の値に設定)され、埃が少量の場合は吸引力が小さく設定(例えば「2」の値に設定)される。 The information on the suction force in the operation database 17 indicates the suction force when the robot arm 5 performs the suction work. The suction forces in the x, y, and z directions of the robot arm 5 are p x , p y , and p z , respectively, and the suction forces in the φ, θ, and ψ directions are p φ , p θ , and p ψ . In the operation database 17, it is expressed as (p x , p y , p z , p φ , p θ , p ψ ). For example, as the value of p increases, the suction force increases. For example, when a large amount of dust is attached, the suction force is set to a large value (for example, set to a value of “5”). The force is set small (for example, set to a value of “2”).
 動作データベース17の、ロボットアーム5の位置と姿勢と力と吸引力とのパラメータのうちのいずれの情報が有効か否かを示すフラグ(有効性を示すフラグ)に関する情報、すなわち、図4の動作データベース17のフラグの情報は、各動作IDが示すロボットアーム5の位置と姿勢と力と吸引力とのうちのいずれの情報が有効かを示す値であり、具体的には、図5で示した32ビットの数値で表す。図5において、それぞれのビットで位置、姿勢、力、吸引力のそれぞれの値が有効の場合は「1」とし、無効の場合は「0」とする。例えば、0ビット目は位置のx座標の値が有効の場合は「1」とし、無効の場合は「0」とする。1ビット目は位置のy座標の値が有効の場合は「1」とし、無効の場合は「0」とする。2ビット目は位置のz座標の値が有効の場合は「1」とし、無効の場合は「0」とし、順次、3,4,5ビット目は姿勢のφ、θ、ψの有効性を表す。6ビット目~11ビット目は力のそれぞれの成分f、f、f、fφ、fθ、fψが有効か無効かを表す。12~17ビット目は吸引力のそれぞれの成分p、p、p、pφ、pθ、pψが有効か無効かを示す。また、フラグは将来の拡張用に多め(32ビット)に用意しているため、この例では、18ビット目から31ビット目は使用しないので、「0」を入れておくが、18ビット目のみ、格納できる変数としても良い。図5では、0ビット目から1ビット目が「1」となり、8ビット目が「1」となっているので、動作情報のうち、位置のx、y情報と力のf情報のみが有効であることを示し、動作情報のうち、z、φ、θ、ψ及び力のf以外の値、及び、吸引力のそれぞれに、どういう値が記憶されていても無効であるとする。 Information on a flag (validity flag) indicating whether or not any of the parameters of the position, posture, force, and suction force of the robot arm 5 in the motion database 17 is valid, that is, the motion of FIG. The flag information in the database 17 is a value indicating which information among the position, posture, force, and suction force of the robot arm 5 indicated by each action ID is valid. Specifically, the information is shown in FIG. It is expressed as a 32-bit numerical value. In FIG. 5, “1” is set when the values of the position, posture, force, and suction force are valid for each bit, and “0” is set when the values are invalid. For example, the 0th bit is “1” if the x-coordinate value of the position is valid, and “0” if it is invalid. The first bit is “1” if the y-coordinate value of the position is valid, and “0” if it is invalid. The second bit is “1” when the position z-coordinate value is valid, and “0” when the position is invalid. The third, fourth, and fifth bits sequentially indicate the validity of the posture φ, θ, and ψ. To express. The sixth to eleventh bits indicate whether the force components f x , f y , f z , f φ , f θ , and f ψ are valid or invalid. The 12th to 17th bits indicate whether the components p x , p y , p z , p φ , p θ , and p ψ of the attractive force are valid or invalid. In addition, since many flags (32 bits) are prepared for future expansion in this example, since the 18th to 31st bits are not used, “0” is inserted, but only the 18th bit is used. Or a variable that can be stored. In Figure 5, 0 1 bit from bit is "1", since the 8th bit is "1", among the operations information, the position of x, only the f z information y information and force are valid It is assumed that any value stored in the values other than z, φ, θ, ψ and force f z and the suction force in the operation information is invalid.
 動作データベース17の各動作が作用する時間に関する情報、すなわち、図4の動作データベース17の時間は、各動作を家事ロボット1が実行するために必要な時間であり、この動作IDに記憶された動作を、ここで記憶された時間をかけて家事ロボット1が動作することを表す。この時間は、絶対時刻ではなく、前の動作からの相対時間を表す。すなわち、動作IDが示すレール可動部8bの位置及びロボットアーム5の位置及び姿勢に、レール可動部8b及びロボットアーム5がそれぞれ移動するまでの時間を表す。 Information on the time at which each action in the action database 17 acts, that is, the time in the action database 17 in FIG. 4 is the time required for the housework robot 1 to execute each action, and the action stored in this action ID. Represents that the housework robot 1 operates over the time stored here. This time represents the relative time from the previous operation, not the absolute time. That is, the time until the rail movable part 8b and the robot arm 5 move is represented by the position of the rail movable part 8b and the position and posture of the robot arm 5 indicated by the operation ID.
 動作データベース17の、動作補正部20で動作データベース17の動作情報を補正する際の補正すべきパラメータの種別に関する情報、すなわち、図4の補正パラメータフラグは、後述する補正動作種別決定部23で決定した種別に応じて、どのパラメータを補正するかを表す情報である。具体的には、図6に示した32ビットの数値で表す。図6において、それぞれのビットで位置、姿勢、力、吸引力のそれぞれの値の補正が可能な場合は「1」とし、補正が不可能な場合は「0」とする。例えば、0ビット目は位置のx座標の値の補正が可能な場合は「1」とし、不可能な場合は「0」とする。1ビット目は位置のy座標の値の補正が可能な場合は「1」とし、不可能な場合は「0」とする。2ビット目は位置のz座標の値の補正が可能な場合は「1」とし、不可能な場合は「0」とする。順次、3,4,5ビット目は姿勢のφ、θ、ψの補正可能性を表す。同様に、6ビット目~11ビット目は力の補正可能性を表し、12ビット目~17ビット目は吸引力のそれぞれの成分が補正可能性を表す。また、フラグは将来の拡張用に多め(32ビット)に用意しているため、この例では、18ビット目から31ビット目は使用しないので、「0」を入れておくが、18ビット目のみ、格納できる変数としても良い。 Information relating to the type of parameter to be corrected when the motion correction unit 20 corrects the motion information in the motion database 17 in the motion database 17, that is, the correction parameter flag in FIG. This is information indicating which parameter is to be corrected according to the type. Specifically, it is represented by a 32-bit numerical value shown in FIG. In FIG. 6, “1” is set when each value of position, posture, force, and suction force can be corrected by each bit, and “0” is set when correction is impossible. For example, the 0th bit is “1” if the x-coordinate value of the position can be corrected, and “0” otherwise. The first bit is “1” if the y-coordinate value of the position can be corrected, and “0” otherwise. The second bit is “1” if the z-coordinate value of the position can be corrected, and “0” otherwise. The third, fourth, and fifth bits sequentially indicate the possibility of correcting the postures φ, θ, and ψ. Similarly, the 6th to 11th bits indicate the correctability of the force, and the 12th to 17th bits indicate the correctability of each component of the suction force. In addition, since many flags (32 bits) are prepared for future expansion in this example, since the 18th to 31st bits are not used, “0” is inserted, but only the 18th bit is used. Or a variable that can be stored.
 動作データベース17の、現在動作中かどうかを示す進捗情報は、家事ロボット1の現在動作中の動作であるかどうか、を示す情報で、動作中の場合は「1」を記録するとともに、動作中でない場合は「0」を記録する。具体的には、人は、データ入力IF26を介して作業したい掃除作業を選択して、選択された情報がデータ入力IF26から動作選択部29に入力される。選択した作業のうちの一番目の掃除動作が家事ロボット1で開始されると、動作選択部29により、その作業を構成する複数の動作のうち、現在動作中の動作について「1」を動作データベース17に記憶するとともに、動作していない動作について「0」を動作データベース17に記憶する。なお、動作中か否かの情報は、制御部22から指令した動作が終了したことの通知を動作補正部20を介して動作記憶部15に入力し、動作記憶部15にて動作データベース17に記憶する。なお、動作データベース17において、進捗情報に関して、動作が終了したか否かは、制御装置1000の内蔵タイマーで時間を計測して、動作の終了を判定する。 The progress information indicating whether or not the operation database 17 is currently operating is information indicating whether or not the housework robot 1 is currently operating. When the operating database 17 is operating, “1” is recorded and operating. Otherwise, “0” is recorded. Specifically, a person selects a cleaning operation to be performed via the data input IF 26, and the selected information is input from the data input IF 26 to the operation selection unit 29. When the first cleaning operation of the selected work is started by the housework robot 1, the operation selection unit 29 sets “1” for the operation currently in operation among the plurality of operations constituting the work. 17, and “0” is stored in the operation database 17 for operations that are not operating. The information indicating whether or not the operation is in progress is input to the operation storage unit 15 through the operation correction unit 20 as a notification that the operation instructed from the control unit 22 has ended, and the operation storage unit 15 stores the information in the operation database 17. Remember. In the operation database 17, regarding the progress information, whether or not the operation has ended is determined by measuring the time with the built-in timer of the control device 1000 and determining the end of the operation.
 図3の動作選択部29は、動作データベース17の作業一覧(例えば、図26の掃除スイッチ26cの中央に表示された「拭く」及び「吸引」というような作業表示)から最適な掃除作業を人16Aがデータ入力IF26を介して選択するとき、選択された作業のうち、現在、動作している動作IDの進捗情報に「1」を設定して動作データベース17に記憶し、その他の動作については「0」を設定して動作データベース17に記憶する。 3 selects the optimum cleaning work from the work list of the action database 17 (for example, work indications such as “wiping” and “suction” displayed in the center of the cleaning switch 26c in FIG. 26). When 16A selects via the data input IF 26, “1” is set in the progress information of the currently operating operation ID among the selected operations and stored in the operation database 17; “0” is set and stored in the operation database 17.
 作業不可領域データベース28は、家事ロボット1で作業(拭き掃除作業又は吸引作業)をしない領域に関する情報を記憶しており、具体的な情報については、図10に示す。図10において、作業不可領域の位置(x、y)は、人が、家事ロボット1により拭き作業又は吸引などの作業をして欲しくない領域を表す。例えば、図11の掃除可能面Rのうち、斜線の領域を作業不可領域RBとした場合は、その領域RBを表すのに必要な座標(この例では、矩形領域の4個の角の座標(xc1,yc1)、(xc2,yc2)、(xc3,yc3)、(xc4,yc4))を記憶する。なお、それぞれの座標は、掃除を行う掃除領域RAの作業経路のうち、レールの座標Oからの相対座標で表す。これらの作業不可領域RBを表す座標は、後述する動作補正部20で生成され、作業不可領域データベース28に記憶される。 The unworkable area database 28 stores information related to areas where the housework robot 1 does not perform work (wipe cleaning work or suction work). Specific information is shown in FIG. In FIG. 10, the position (x, y) of the work disabling region represents a region where a person does not want the housework robot 1 to perform a wiping operation or a suctioning operation. For example, if the hatched area of the cleanable surface R in FIG. 11 is the work non-operation area RB, the coordinates necessary to represent the area RB (in this example, the coordinates of the four corners of the rectangular area ( x c1 , y c1 ), (x c2 , y c2 ), (x c3 , y c3 ), (x c4 , y c4 )) are stored. Note that each of the coordinates, of the working path of the cleaning area RA to perform cleaning, represented by relative coordinates from the coordinates O s of the rail. Coordinates representing these unworkable areas RB are generated by an operation correction unit 20 described later and stored in the unworkable area database 28.
 補正動作種別決定部23は、後述する動作補正部20にて、人がその手16でロボットアーム5に力をかけることにより動作の補正を行うことが可能な補正の種別を決定する。例えば、図12Cのように、人がその手16でロボットアーム5に横方向から力をかけると、ロボットアーム5の作業面に対する平行な方向(例えば、作業面が水平方向沿いの場合には水平方向を意味する。以下の説明では、説明を簡単にするため、単に「水平方向」と称する。)の位置を移動することで、掃除領域RAを平行移動させることができる。この場合の補正動作の種別は、「作業面の位置の移動」である。図27Aに示すようにロボットアーム5で機器6を拭き掃除中に、図27Bに示すように、人がその手16でロボットアーム5の上方からロボットアーム5に下向きの力をかけると、後述する動作補正部20によって、図27Cのように掃除時の力のかけ具合を強めに設定することができる。この場合の補正動作の種別は、「力のかけ具合」である。このように、補正動作種別決定部23は、人の手によるロボットアーム5への力のかけ具合とロボットアーム5の手先位置などから、掃除動作の補正の種別を決定することができる。なお、詳細については後述する。 The correction operation type determination unit 23 determines a type of correction that can be corrected by a person applying force to the robot arm 5 with his / her hand 16 in the operation correction unit 20 described later. For example, as shown in FIG. 12C, when a person applies force to the robot arm 5 from the lateral direction with his hand 16, the direction parallel to the work surface of the robot arm 5 (for example, when the work surface is along the horizontal direction, In the following description, in order to simplify the description, the cleaning area RA can be translated by simply moving the position of “horizontal direction”. The type of correction operation in this case is “movement of the position of the work surface”. When a person applies a downward force to the robot arm 5 from above the robot arm 5 with his / her hand 16 as shown in FIG. 27B while wiping and cleaning the device 6 with the robot arm 5 as shown in FIG. The correction unit 20 can set the force applied during cleaning as shown in FIG. 27C. The type of the correction operation in this case is “force application”. As described above, the correction operation type determination unit 23 can determine the type of correction of the cleaning operation from the degree of force applied to the robot arm 5 by a human hand and the hand position of the robot arm 5. Details will be described later.
 動作補正部20は、動作データベース17の位置と姿勢と時間との情報に基づいて家事ロボット1が掃除動作中に、人が手16でロボットアーム5に力をかけることにより、動作データベース17の掃除動作情報を補正する機能を持っている。詳細については、後述する。 The motion correction unit 20 cleans the motion database 17 by applying a force to the robot arm 5 with the hand 16 while the housework robot 1 is performing a cleaning operation based on the position, posture, and time information of the motion database 17. It has a function to correct operation information. Details will be described later.
 動作記憶部15は、動作補正部20により補正した動作情報を動作データベース17若しくは作業不可領域データベース28に記憶する。 The operation storage unit 15 stores the operation information corrected by the operation correction unit 20 in the operation database 17 or the work impossible area database 28.
 次に、制御パラメータ管理部21の詳細について説明する。 Next, details of the control parameter management unit 21 will be described.
 制御パラメータ管理部21は、動作補正部20の動作補正指示に基づいて、ロボットアーム5のインピーダンス制御モードと、ハイブリッドインピーダンス制御モードと、力制御モードと、力ハイブリッドインピーダンス制御モードと、高剛性の位置制御モードとを切り替える設定、及び、それぞれの制御モード時の機械インピーダンス設定値の設定、及び、それぞれの制御モードで制御部22のインピーダンス計算部51で出力する手先位置及び姿勢目標補正出力rdΔの設定、及び、制御部22の目標軌道設定部55への動作情報の設定を行う。 Based on the motion correction instruction from the motion correction unit 20, the control parameter management unit 21 performs impedance control mode, hybrid impedance control mode, force control mode, force hybrid impedance control mode, and high-rigidity position of the robot arm 5. Setting of switching between control modes, setting of mechanical impedance setting values in each control mode, and hand position and posture target correction output rdΔ output by the impedance calculation unit 51 of the control unit 22 in each control mode Setting and setting of operation information to the target trajectory setting unit 55 of the control unit 22 are performed.
 さらに、制御パラメータ管理部21は、掃除情報データベース17に記憶されているレール可動部8bの位置(レール8の端の座標Oから見たレール座標系46の原点位置O(x、y))から、作業不可領域データベース28の作業不可領域RBを除いた掃除領域RAでの経路を生成する。また、制御部22からロボットアーム5の手先位置又は力の情報などの情報を制御パラメータ管理部21で受けて、制御パラメータ管理部21から動作補正部20へそれらの情報の通知を行う。また、データ入力IF26によりハンド30の開閉の指令が入力されると、データ入力IF26からの入力情報が制御パラメータ管理部21を介して制御部22のハンド制御部54へ入力されて、制御パラメータ管理部21からハンド制御部54へハンド30の開閉指令を出す。 Further, the control parameter management unit 21 detects the position of the rail movable unit 8b stored in the cleaning information database 17 (the origin position O d (x, y) of the rail coordinate system 46 as viewed from the coordinates O s of the end of the rail 8). ) To generate a route in the cleaning area RA excluding the work impossible area RB in the work impossible area database 28. Also, the control parameter management unit 21 receives information such as the hand position or force information of the robot arm 5 from the control unit 22, and notifies the operation correction unit 20 of the information. When a command for opening / closing the hand 30 is input by the data input IF 26, input information from the data input IF 26 is input to the hand control unit 54 of the control unit 22 via the control parameter management unit 21, and control parameter management is performed. An opening / closing command for the hand 30 is issued from the unit 21 to the hand control unit 54.
 位置制御モードは、後述する目標軌道生成部55の手先位置及び姿勢目標ベクトル指令に基づいて、ロボットアーム5が作動するモードである。 The position control mode is a mode in which the robot arm 5 operates based on a hand position and posture target vector command of a target trajectory generation unit 55 described later.
 インピーダンス制御モードは、人などからロボットアーム5に加わる力に応じて、ロボットアーム5が作動するモードである。 The impedance control mode is a mode in which the robot arm 5 operates according to the force applied to the robot arm 5 from a person or the like.
 ハイブリッドインピーダンス制御モードは、位置制御モードでロボットアーム5が動作している最中に、人などからロボットアーム5に加わる力に応じて、ロボットアーム5が作動するモード(インピーダンス制御モード)であり、位置制御モードとインピーダンス制御モードを同時に行うモードである。例えば、作業面の塵などを吸引する掃除作業中に、図12Bのように、人の手16でロボットアーム5を直接持って、掃除領域RAを平行移動するなどの補正を行うモードである。 The hybrid impedance control mode is a mode (impedance control mode) in which the robot arm 5 operates according to the force applied to the robot arm 5 from a person or the like while the robot arm 5 is operating in the position control mode. In this mode, the position control mode and the impedance control mode are performed simultaneously. For example, during a cleaning operation for sucking dust or the like on the work surface, as shown in FIG. 12B, the robot arm 5 is directly held by a person's hand 16 and correction is performed such that the cleaning area RA is translated.
 力制御モードは、制御部22へ予め与えられた力でロボットアーム5が作業面に対して吸引ノズル9又はモップ10を押し付けながら動作する制御モードで、例えば、作業面に対してロボットアーム5が、ある力をかけて汚れをふき取る掃除動作をする際に、ロボットアーム5の作業面成分に使用する制御モードである。 The force control mode is a control mode in which the robot arm 5 operates while pressing the suction nozzle 9 or the mop 10 against the work surface with a force applied in advance to the control unit 22. For example, the robot arm 5 moves against the work surface. This is a control mode used for a work surface component of the robot arm 5 when performing a cleaning operation to wipe off dirt by applying a certain force.
 力ハイブリッドインピーダンス制御モードは、6軸の方向別にハイブリッドインピーダンス制御モードかインピーダンス制御モードかを切り替え、さらに、指定した力を作用させて動作する力制御モードで動作させる制御モードである。なお、力制御モードが設定された方向にインピーダンス制御モードを設定することはできない(力制御モードとインピーダンス制御モードは排他的な関係)。 The force hybrid impedance control mode is a control mode that switches between the hybrid impedance control mode and the impedance control mode for each of the six axes, and further operates in a force control mode that operates by applying a specified force. Note that the impedance control mode cannot be set in the direction in which the force control mode is set (the force control mode and the impedance control mode are in an exclusive relationship).
 これらの制御モードは、動作の際に、ロボットアーム5の方向及び姿勢別に、それぞれ、以下のように、適切な制御モードを設定して動作させる。 These control modes are operated by setting appropriate control modes as follows for each direction and posture of the robot arm 5 during operation.
 例えば、家事ロボット1が、図22のように機器6の作業面に平行に円状に動作しながら、作業面に垂直下向きに指定した力をかけて、拭き掃除をする場合には、力ハイブリッドインピーダンス制御モードを設定する。具体的には、(x、y、z、φ、θ、ψ)の6軸のそれぞれに、以下の制御モードを設定する。すなわち、(x、y)成分がハイブリッドインピーダンス制御モードで動作し、(φ、θ、ψ)成分がインピーダンス制御モードで動作し、z軸成分が力制御モードで動作する力ハイブリッドインピーダンス制御モードである。このように機器6の作業面と平行な方向は、ハイブリッドインピーダンス制御モードとすることで、位置制御モードで動作している最中に、人が操作している際に、ハイブリッドインピーダンス制御モードに切り替えることで、人などからロボットアーム5に加わる力に応じて、ロボットアーム5を移動させることができる。さらに、(φ、θ、ψ)成分をインピーダンス制御モードとすることで、停止している状態で人などからロボットアーム5に加わる力に応じて、ロボットアーム5の姿勢を変更することができるようになる。また、z軸成分を力制御モードに設定することで、指定された力で押し付けながら動作することができるようになる。 For example, when the housekeeping robot 1 performs a wiping operation by applying a specified force vertically downward to the work surface while moving in a circle parallel to the work surface of the device 6 as shown in FIG. Set the control mode. Specifically, the following control modes are set for each of the six axes (x, y, z, φ, θ, ψ). That is, the (x, y) component operates in the hybrid impedance control mode, the (φ, θ, ψ) component operates in the impedance control mode, and the z-axis component operates in the force control mode. . In this way, the direction parallel to the work surface of the device 6 is set to the hybrid impedance control mode, so that it is switched to the hybrid impedance control mode when a person is operating while operating in the position control mode. Thus, the robot arm 5 can be moved according to the force applied to the robot arm 5 from a person or the like. Further, by setting the (φ, θ, ψ) components in the impedance control mode, the posture of the robot arm 5 can be changed according to the force applied to the robot arm 5 from a person or the like while stopped. become. Further, by setting the z-axis component to the force control mode, it becomes possible to operate while pressing with a designated force.
 同様に、家事ロボット1が、図23のように作業面に平行に円状に動作しながら、作業面の塵を吸引して掃除する場合においても、力ハイブリッドインピーダンス制御モードを設定する。具体的には、(x、y)成分をハイブリッドインピーダンス制御モードで動作させ、(φ、θ、ψ)成分をインピーダンス制御モードで動作させ、z軸成分を力制御モードで動作させる。 Similarly, the force hybrid impedance control mode is set even when the housework robot 1 moves in a circular shape parallel to the work surface as shown in FIG. 23 and sucks and cleans the dust on the work surface. Specifically, the (x, y) component is operated in the hybrid impedance control mode, the (φ, θ, ψ) component is operated in the impedance control mode, and the z-axis component is operated in the force control mode.
 高剛性位置制御モードは、掃除作業中の位置制御モードを、さらに高剛性にしたモードで、かつ、後述する位置誤差補償部56でのゲインを大きくすることで実現し、人の手16で力をロボットアーム5にかけると、ロボットアーム5を容易に移動できなくすることで、ロボットアーム5の手先位置の変化量により、人の手16がかけた力を力検出部53で検出することができる。 The high-rigidity position control mode is a mode in which the position control mode during the cleaning operation is further increased in rigidity, and is realized by increasing the gain in the position error compensation unit 56 described later. When the robot arm 5 is applied to the robot arm 5, the force applied by the human hand 16 can be detected by the force detection unit 53 based on the amount of change in the hand position of the robot arm 5 by making the robot arm 5 unable to move easily. it can.
 機械インピーダンス設定値の設定パラメータとしては、慣性M、粘性D、剛性Kがある。機械インピーダンス設定値の各パラメータの設定は、補正値を使って、以下の評価式に基づいて行う。 設定 Inertia M, viscosity D, and rigidity K are set as mechanical impedance setting parameters. Each parameter of the mechanical impedance set value is set based on the following evaluation formula using the correction value.
Figure JPOXMLDOC01-appb-M000001
Figure JPOXMLDOC01-appb-M000001
Figure JPOXMLDOC01-appb-M000002
Figure JPOXMLDOC01-appb-M000002
Figure JPOXMLDOC01-appb-M000003
Figure JPOXMLDOC01-appb-M000003

 前記式(1)~(3)中のKM、KD、KKはゲインであり、それぞれ、ある定数値である。
 

In the equations (1) to (3), KM, KD, and KK are gains, each of which is a constant value.
 制御パラメータ管理部21は、前記式(1)~(3)に基づいて計算した機械インピーダンスパラメータの慣性M、粘性D、剛性Kを制御部22へそれぞれ出力する。 The control parameter management unit 21 outputs the inertia M, viscosity D, and rigidity K of the mechanical impedance parameters calculated based on the equations (1) to (3) to the control unit 22, respectively.
 前記式(1)~(3)により、例えば、図12Cのように、人が作業面の領域を移動させるように補正させたい場合に、x軸及びy軸以外の位置成分及び姿勢成分が簡単に動くと、前記補正作業を行うことが困難になる。そこで、x軸及びy軸以外の位置成分及び姿勢成分についてのみ、制御パラメータ管理部21で、上述の補正値を高く(具体的には約10倍だけ高く)設定することで、粘性D及び剛性Kが大きくなるように設定されることになり、ロボットアーム5の動きに抵抗感又は硬さが生じ、x軸及びy軸以外の位置成分及び姿勢成分について動きにくくなる。 According to the above equations (1) to (3), for example, as shown in FIG. 12C, when a person wants to make a correction so as to move the area of the work surface, position components and posture components other than the x-axis and y-axis can be simplified. If it moves to the point, it becomes difficult to perform the correction operation. Therefore, the viscosity D and stiffness are set by setting the above correction value high (specifically, about 10 times higher) in the control parameter management unit 21 only for position components and posture components other than the x-axis and y-axis. Since K is set to be large, resistance or hardness is generated in the movement of the robot arm 5, and it is difficult for the position component and posture component other than the x-axis and the y-axis to move.
 又は、別の方法として、後述するインピーダンス計算部51から出力される手先位置及び姿勢目標補正出力rdΔの各成分のうち、x軸及びy軸以外の値を、制御パラメータ管理部21で、全て0にする方法がある。これによって、x軸及びy軸以外は、人の手16の力で移動できなくなるため、誤操作を防ぐことができる。 Alternatively, as another method, among the components of the hand position and posture target correction output rdΔ output from the impedance calculation unit 51 described later, all values other than the x-axis and the y-axis are obtained by the control parameter management unit 21. There is a way to make it zero. As a result, the parts other than the x-axis and the y-axis cannot be moved by the force of the human hand 16, so that an erroneous operation can be prevented.
 さらに、動作補正部20に、ロボットアーム5の手先位置と姿勢と、人のかけた力の情報(ロボットアーム5に作用する人の力に関する情報)とを制御パラメータ管理部21から通知する必要がある。そのため、制御部22からロボットアーム5の手先位置及び力の情報を制御パラメータ管理部21が受けて、動作選択部29と、動作記憶部15と、動作補正部20とへ制御パラメータ管理部21から通知を行う。また、制御パラメータ管理部21は、動作補正部20から入力された、位置と姿勢と時間となどの動作情報を制御部22へ通知する。 Further, it is necessary to notify the motion correction unit 20 of the hand position and posture of the robot arm 5 and information on the force applied by the person (information on the force of the person acting on the robot arm 5) from the control parameter management unit 21. is there. Therefore, the control parameter management unit 21 receives information on the hand position and force of the robot arm 5 from the control unit 22, and moves to the operation selection unit 29, the operation storage unit 15, and the operation correction unit 20 from the control parameter management unit 21. Make a notification. In addition, the control parameter management unit 21 notifies the control unit 22 of operation information such as position, posture, and time input from the operation correction unit 20.
 図7は制御部22のブロック図を示す。制御部22は、制御パラメータ管理部21で設定された制御モードで動作し、さらに制御モードに応じて、慣性Mと粘性Dと剛性Kとの設定値に基づき設定されたロボットアーム5の機械インピーダンス設定値に、ロボットアーム5の機械インピーダンスの値を制御する。さらに、制御部22は、吸引を行う掃除の場合には、指定された吸引力で吸引しながら、回転ブラシ11を回転させる制御を行う。さらに、制御部22は、拭き掃除の場合には、指定された力で作業面を押し付ける制御を行う。さらに、制御部22は、レール可動部8bを制御して、ロボットアーム5をレール固定部8a上の指定された位置に移動する制御を行う。 FIG. 7 shows a block diagram of the control unit 22. The control unit 22 operates in the control mode set by the control parameter management unit 21, and further, according to the control mode, the mechanical impedance of the robot arm 5 set based on the set values of the inertia M, the viscosity D, and the stiffness K. The mechanical impedance value of the robot arm 5 is controlled to the set value. Furthermore, in the case of cleaning that performs suction, the control unit 22 performs control to rotate the rotating brush 11 while suctioning with a specified suction force. Furthermore, the control part 22 performs control which presses a work surface with the designated force in the case of wiping and cleaning. Furthermore, the control part 22 controls the rail movable part 8b, and performs control which moves the robot arm 5 to the designated position on the rail fixing | fixed part 8a.
 次に、制御部22の詳細について、図7により説明する。 Next, details of the control unit 22 will be described with reference to FIG.
 制御部22は、ロボットアーム5の各関節部のモータ43の駆動をそれぞれ制御するロボットアーム制御部49と、回転ブラシ11のモータ69の駆動を制御する回転ブラシ制御部13と、レール可動部8bのモータ65の駆動を制御するレール制御部48とを備えるように構成される。ロボットアーム制御部49は、位置誤差計算部50とインピーダンス計算部51と力検出手段の一例としての力検出部53とハンド制御部54と目標軌道生成部55と位置誤差補償部56と近似逆運動学計算部57と順運動学計算部58とを備えて構成している。位置誤差補償部56と近似逆運動学計算部57と順運動学計算部58とで位置制御系59を構成している。 The control unit 22 includes a robot arm control unit 49 that controls driving of the motor 43 of each joint unit of the robot arm 5, a rotating brush control unit 13 that controls driving of the motor 69 of the rotating brush 11, and a rail movable unit 8b. And a rail control unit 48 for controlling the driving of the motor 65. The robot arm control unit 49 includes a position error calculation unit 50, an impedance calculation unit 51, a force detection unit 53 as an example of a force detection unit, a hand control unit 54, a target trajectory generation unit 55, a position error compensation unit 56, and an approximate reverse motion. A scientific calculation unit 57 and a forward kinematics calculation unit 58 are provided. The position error compensation unit 56, approximate inverse kinematics calculation unit 57, and forward kinematics calculation unit 58 constitute a position control system 59.
 次に、ロボットアーム制御部49について詳細に説明する。 Next, the robot arm control unit 49 will be described in detail.
 ロボットアーム5からは、それぞれの関節部の関節軸のエンコーダ44により計測された関節角の現在値(関節角度ベクトル)ベクトルq=[q,q,q,q,q,qが出力され、入出力IF24により制御部22に取り込まれる。ただし、q,q,q,q,q,qは、それぞれ、第1関節部35、第2関節部36、第3関節部37、第4関節部38、第5関節部39、第6関節部40の関節角度である。 From the robot arm 5, the current value (joint angle vector) vector q = [q 1 , q 2 , q 3 , q 4 , q 5 , q of the joint angle measured by the encoder 44 of the joint axis of each joint part. 6 ] T is output and taken into the control unit 22 by the input / output IF 24. However, q 1 , q 2 , q 3 , q 4 , q 5 , q 6 are respectively the first joint part 35, the second joint part 36, the third joint part 37, the fourth joint part 38, and the fifth joint. This is the joint angle of the part 39 and the sixth joint part 40.
 目標軌道生成部55は、制御パラメータ管理部21からの掃除動作の入力を受けて、目標とするロボットアーム5の動作を実現するための、手先位置及び姿勢目標ベクトルrと、手先の力ベクトルfと、それぞれの方向別にどのパラメータが有効かを示すフラグ(有効性を示すフラグ)とが出力される。目標とするロボットアーム5の動作は、目的とする掃除作業に応じて、動作補正部20から、制御パラメータ管理部21を介して、それぞれの時間(t=0、t=t、t=t、・・・)でのポイントごとの位置及び姿勢(rd0、rd1、rd2、・・・)の情報と、力(fd0、fd1、fd2、・・・)の情報と、吸引力(pd0、pd1、pd2、・・・)の情報とが目標軌道生成部55に与えられる。 Target track generation unit 55 receives an input of the cleaning operation from the control parameter managing unit 21, for implementing the operation of the robot arm 5 to the target, and the hand position and orientation target vector r d, the hand force vector fd and a flag indicating which parameter is effective for each direction (a flag indicating validity) are output. The operation of the target robot arm 5 is performed from the operation correction unit 20 via the control parameter management unit 21 according to the target cleaning operation, for each time (t = 0, t = t 1 , t = t 2 ,...) And position information and posture information (r d0 , r d1 , r d2 ,...) And force information (f d0 , f d1 , f d2 ,...) , Information of suction force (p d0 , p d1 , p d2 ,...) Is given to the target trajectory generation unit 55.
 目標軌道生成部55は、多項式補間を使用し、各ポイント間の軌道と、力と、吸引力とを補間し、手先位置及び姿勢目標ベクトルr及び力ベクトルf及び吸引力pを生成する。 Target track generation unit 55, generates using a polynomial interpolation, and the track between points, and the force, by interpolating a suction force, the tip unit position and orientation target vector r d and the force vector f d and the suction force p d To do.
 ハンド制御部54は、制御パラメータ管理部21から入力したハンド開閉指令により、ハンド開閉駆動用のモータ62を駆動してハンド30を開閉するよう、ロボットアーム5のハンド開閉駆動用のモータ62へ指令を出す。 The hand control unit 54 instructs the hand opening / closing driving motor 62 of the robot arm 5 to open / close the hand 30 by driving the hand opening / closing driving motor 62 by the hand opening / closing command input from the control parameter management unit 21. Put out.
 力検出部53は、力検出手段の一例として機能し、人などとロボットアーム5との接触によってロボットアーム5に加わる外力を検出する。力検出部53には、モータドライバ47の電流センサで計測された、ロボットアーム5の各関節部を駆動するモータ43を流れる電流値i=[i,i,i,i,i,iが入出力IF24を介して取り込まれ、また、各関節部の各関節角の現在値qが入出力IF24を介して取り込まれるとともに、後述する近似逆運動学計算部57からの関節角度誤差補償出力uqeが取り込まれる。力検出部53は、オブザーバーとして機能し、以上の電流値iと関節角の現在値qと関節角度誤差補償出力uqeとに基づいて、ロボットアーム5に加わる外力により各関節部に発生するトルクτextを算出する。そして、Fext=J(q)-Tτext-[0,0,mg]によりロボットアーム5の手先における等価手先外力Fextに換算して等価手先外力Fextを出力する。ここで、J(q)は、 The force detection unit 53 functions as an example of a force detection unit, and detects an external force applied to the robot arm 5 due to contact between a person or the like and the robot arm 5. The force detection unit 53 includes a current value i = [i 1 , i 2 , i 3 , i 4 , i, which flows through the motor 43 that drives each joint unit of the robot arm 5 and is measured by a current sensor of the motor driver 47. 5 , i 6 ] T is taken in via the input / output IF 24, and the current value q of each joint angle of each joint is taken in via the input / output IF 24, and from an approximate inverse kinematics calculation unit 57 described later. The joint angle error compensation output u qe is fetched . The force detection unit 53 functions as an observer, and the torque generated in each joint by external force applied to the robot arm 5 based on the current value i, the current value q of the joint angle, and the joint angle error compensation output u qe. τ ext is calculated. Then, F ext = J v (q ) -T τ ext - [0,0, mg] in terms of the equivalent tip unit external force F ext at the tip unit of the robot arm 5 and outputs the equivalent tip unit external force F ext by T. Where J v (q) is
Figure JPOXMLDOC01-appb-M000004
Figure JPOXMLDOC01-appb-M000004

を満たすヤコビ行列である。ただし、ただし、v=[v、v、v、ω、ω、ωであり、(v、v、v)は手先座標系42でのロボットアーム5の手先の並進速度、(ω、ω、ω)は手先座標系42でのロボットアーム5の手先の角速度である。また、mはロボットアーム5のハンド30に取り付けられた掃除部9又は10の重さであり、gは重力加速度である。掃除部9又は10の重さmの値は、掃除部9又は10を取り付ける前に人がデータ入力IF26から力検出部53に入力することもできるが、通常は、掃除部吸引ノズル9又はモップ10の重さmは度々変更される値ではないため、予め設定した値とすることもできる。

Jacobian matrix that satisfies However, v = [v x , v y , v z , ω x , ω y , ω z ] T , and (v x , v y , v z ) represents the robot arm 5 in the hand coordinate system 42. The translation speed of the hand, (ω x , ω y , ω z ) is the angular velocity of the hand of the robot arm 5 in the hand coordinate system 42. Further, m is the weight of the cleaning unit 9 or 10 attached to the hand 30 of the robot arm 5, and g is the gravitational acceleration. The value of the weight m of the cleaning unit 9 or 10 can be input by the person from the data input IF 26 to the force detection unit 53 before attaching the cleaning unit 9 or 10, but normally the cleaning unit suction nozzle 9 or mop Since the weight m of 10 is not a value that is frequently changed, it may be a preset value.
 インピーダンス計算部51は、ロボットアーム5に機械インピーダンス設定値への前記ロボットアーム5の機械インピーダンスの値の制御を実現する機能を果たす部分である。 The impedance calculation unit 51 is a part that performs the function of realizing the control of the mechanical impedance value of the robot arm 5 to the mechanical impedance set value.
 インピーダンス制御モードが指定された際には、インピーダンス計算部51から手先位置及び姿勢目標補正出力rdΔを出力する。力ハイブリッドインピーダンス制御モードに切り替えられた際には、フラグ(有効性を示すフラグ)で有効と指定された力成分が存在する場合には、制御パラメータ管理部21で設定されたインピーダンスパラメータである慣性Mと粘性Dと剛性Kと、関節角の現在値qと、力検出部53が検出した外力Fextと、目標軌道生成部55から出力されるfとに基づいて、前記ロボットアーム5の機械インピーダンスの値がロボットアーム5に機械インピーダンス設定値に近づくようにする制御を実現するための手先位置及び姿勢目標補正出力rdΔを、以下の式(4)によりインピーダンス計算部51で計算し、インピーダンス計算部51から出力する。 When the impedance control mode is designated, the hand position and posture target correction output rdΔ is output from the impedance calculator 51. When switching to the force hybrid impedance control mode, if there is a force component designated as valid by a flag (a flag indicating validity), inertia that is an impedance parameter set by the control parameter management unit 21 Based on M, viscosity D, rigidity K, current value q of the joint angle, external force F ext detected by the force detector 53, and f d output from the target trajectory generator 55, the robot arm 5 A hand position and posture target correction output rdΔ for realizing control that causes the machine impedance value to approach the machine impedance set value for the robot arm 5 is calculated by the impedance calculation unit 51 using the following equation (4). Output from the impedance calculator 51.
 手先位置及び姿勢目標補正出力rdΔは、目標軌道生成部55の出力する手先位置及び姿勢目標ベクトルrdに位置誤差計算部50で加算され、手先位置及び姿勢補正目標ベクトルrdmが位置誤差計算部50で生成される。例えば、z軸方向のみ、力をかけて掃除し、その他の成分は位置制御モードで動くようにするには、手先位置及び姿勢目標補正出力rdΔのz成分以外を0に位置誤差計算部50で設定する。 Hand position and orientation target correcting output r d? Is added by the position error calculation unit 50 to the hand position and orientation target vector rd outputted by the target track generation unit 55, the tip unit position and orientation correction target vector r dm is the position error calculation unit 50 is generated. For example, in order to perform cleaning by applying force only in the z-axis direction and move the other components in the position control mode, the position error calculation unit 50 sets the hand position and posture target correction output rdΔ other than the z component to 0. Set with.
Figure JPOXMLDOC01-appb-M000005
Figure JPOXMLDOC01-appb-M000005

ただし、

However,
Figure JPOXMLDOC01-appb-M000006
Figure JPOXMLDOC01-appb-M000006
Figure JPOXMLDOC01-appb-M000007
Figure JPOXMLDOC01-appb-M000007
Figure JPOXMLDOC01-appb-M000008
Figure JPOXMLDOC01-appb-M000008

であり、sはラプラス演算子である。

And s is a Laplace operator.
 位置誤差計算部50は、さらに、手先位置及び姿勢補正目標ベクトルrdmと、後述する順運動学計算部58により計算される手先位置及び姿勢ベクトルrとの誤差rを求め、求められた誤差rを位置誤差補償部56に出力する。 Position error calculation unit 50 further calculates the tip unit position and orientation correction target vector r dm, error r e between the tip unit position and orientation vectors r calculated by the forward kinematics calculation unit 58 to be described later, the determined error r e is output to the position error compensator 56.
 順運動学計算部58には、ロボットアーム5の各関節部の各関節軸のエンコーダ44からエンコーダ44で計測された関節角の現在値qである関節角度ベクトルqが、入出力IF24を介して入力される。順運動学計算部58は、ロボットアーム5の関節角度ベクトルqから、手先位置及び姿勢ベクトルrへの変換の幾何学的計算を行う。順運動学計算部58で計算された手先位置及び姿勢ベクトルrは、位置誤差計算部50及びインピーダンス計算部51及び目標軌道生成部55に出力される。 The forward kinematics calculator 58 receives a joint angle vector q, which is a current value q of the joint angle measured by the encoder 44 from the encoder 44 of each joint axis of each joint of the robot arm 5 via the input / output IF 24. Entered. The forward kinematics calculator 58 performs a geometric calculation of conversion from the joint angle vector q of the robot arm 5 to the hand position and posture vector r. The hand position and posture vector r calculated by the forward kinematics calculator 58 is output to the position error calculator 50, the impedance calculator 51, and the target trajectory generator 55.
 位置誤差補償部56は、位置誤差計算部50で求められた誤差rに基づいて、位置誤差補償出力ureを近似逆運動学計算部57に出力する。 Positional error compensating unit 56, based on the error r e obtained by the position error calculation unit 50, and outputs a positional error compensating output u re the approximation reverse kinematical calculation unit 57.
 具体的には、位置誤差補償出力ureは、 Specifically, the position error compensation output ure is
Figure JPOXMLDOC01-appb-M000009
Figure JPOXMLDOC01-appb-M000009

により計算される。ここで、Kは比例ゲイン行列、Kは積分ゲイン行列、Kは微分ゲイン行列であり、その対角成分が手先位置ベクトルr = [x、y、z、φ、θ、ψ]Tの各成分に対するゲインで構成される対角行列である。

Is calculated by Here, K P is a proportional gain matrix, K I is an integral gain matrix, K d is the derivative gain matrix, diagonal components hand position vector r e = [x, y, z, φ, θ, ψ] It is a diagonal matrix composed of gains for each component of T.
 さらに、位置誤差補償部56では、高剛性位置制御モードが設定された際に、比例ゲイン行列K、積分ゲイン行列K、微分ゲイン行列Kをあらかじめ設定された値に大きく設定する。ここで、高剛性とは、通常の位置制御と比較して剛性が高くなることを意味し、具体的には、通常の位置制御モードと比較して大きな値を設定する。例えば、通常の位置制御モード時の2倍程度の値に設定すると、剛性を約2倍まで高くすることができる。 Further, when the high-rigidity position control mode is set, the position error compensation unit 56 sets the proportional gain matrix K P , the integral gain matrix K I , and the differential gain matrix K D to large values set in advance. Here, the high rigidity means that the rigidity is higher than that in the normal position control, and specifically, a large value is set as compared with the normal position control mode. For example, if the value is set to about twice that in the normal position control mode, the rigidity can be increased to about twice.
 このようにすることで、高剛性の位置制御を実現することができる。なお、前記ゲインを各成分毎に値を変えることで、例えば、z軸方向のみ高剛性で、その他の方向は通常の位置制御で動作するよう制御することができる。 In this way, highly rigid position control can be realized. Note that by changing the value of the gain for each component, for example, it is possible to control so that only the z-axis direction is highly rigid and the other directions are operated by normal position control.
 近似逆運動学計算部57は、位置誤差補償部56から入力される位置誤差補償出力ureとロボットアーム5において計測される関節角度ベクトルqとに基づいて、近似式uout=J(q)-1inにより、逆運動学の近似計算を行う。ただし、J(q)は、 The approximation reverse kinematical calculation unit 57, based on the joint angle vector q that is measured at the positional error compensating output u re and the robot arm 5 inputted from the positional error compensating unit 56, the approximation equation u out = J r (q ) Approximate inverse kinematics with -1 u in . However, J r (q) is
Figure JPOXMLDOC01-appb-M000010
Figure JPOXMLDOC01-appb-M000010

の関係を満たすヤコビ行列であり、uinは近似逆運動学計算部57への入力であり、uoutは近似逆運動学計算部57からの出力であり、入力uinを関節角度誤差qとすれば、q=J(q)-1のように手先の位置姿勢誤差rから関節角度誤差qへの変換式となる。

The Jacobian matrix satisfying the above relationship, u in is an input to the approximate inverse kinematics calculation unit 57, u out is an output from the approximate inverse kinematics calculation unit 57, and the input u in is the joint angle error q e Then, a conversion formula from the hand position / posture error r e to the joint angle error q e is obtained as q e = J r (q) −1 r e .
 従って、位置誤差補償部56から位置誤差補償出力ureが近似逆運動学計算部57に入力されると、近似逆運動学計算部57からの出力として、関節角度誤差qを補償するための関節角度誤差補償出力uqeが近似逆運動学計算部57から入出力IF24を介してロボットアーム5のモータドライバ25に出力される。 Therefore, when the positional error compensating output u re from the positional error compensating unit 56 is inputted to the approximation reverse kinematical calculation unit 57, as an output from the approximation reverse kinematical calculation unit 57, to compensate for the joint angle error q e The joint angle error compensation output u qe is output from the approximate inverse kinematics calculation unit 57 to the motor driver 25 of the robot arm 5 via the input / output IF 24.
 関節角度誤差補償出力uqeは、入出力IF24のD/Aボードを介してロボットアーム5のモータドライバ25に電圧指令値として与えられ、各モータ43により各関節軸が正逆回転駆動されロボットアーム5が動作する。 The joint angle error compensation output u qe is given as a voltage command value to the motor driver 25 of the robot arm 5 via the D / A board of the input / output IF 24, and each joint axis is driven to rotate forward and reverse by each motor 43. 5 operates.
 回転ブラシ制御部13は、目標軌道生成部55から入力された吸引力に応じて、回転ブラシ11のモータ69を駆動制御して、回転ブラシ11を回転させる制御を行う。 The rotating brush control unit 13 controls to rotate the rotating brush 11 by driving and controlling the motor 69 of the rotating brush 11 according to the suction force input from the target trajectory generating unit 55.
 レール制御部48は、目標軌道生成部55から入力されたレール可動部8bの位置情報に基づき、レール可動部8bのモータ65を駆動制御してレール固定部8a上でロボットアーム5をレール可動部8bと共に移動させるように制御を行う。具体的には、レール可動部8bのモータ65の正逆回転駆動をレール制御部48により制御して、ロボットアーム5が連結されたレール可動部8bをレール固定部8a上で左右方向に移動可能としている。 The rail control unit 48 drives and controls the motor 65 of the rail movable unit 8b based on the positional information of the rail movable unit 8b input from the target track generation unit 55, and moves the robot arm 5 on the rail fixed unit 8a. Control is performed so as to move together with 8b. Specifically, the rail controller 48 controls forward / reverse rotation driving of the motor 65 of the rail movable portion 8b, and the rail movable portion 8b to which the robot arm 5 is connected can be moved in the left-right direction on the rail fixing portion 8a. It is said.
 以下、ロボットアーム5のロボットアーム制御プログラムの実際の動作ステップについて、図25のフローチャートに基づいて説明する。 Hereinafter, actual operation steps of the robot arm control program of the robot arm 5 will be described based on the flowchart of FIG.
 ロボットアーム5の関節部のそれぞれのエンコーダ44により計測された関節角度データ(関節変数ベクトル又は関節角度ベクトルq)が制御装置本体部45に取り込まれる(ステップS51)。 The joint angle data (joint variable vector or joint angle vector q) measured by the encoders 44 of the joints of the robot arm 5 is taken into the control device body 45 (step S51).
 次いで、逆運動学計算部57にて、ロボットアーム5の運動学計算に必要なヤコビ行列J等の計算を行う (ステップS52)。 Next, the inverse kinematics calculation unit 57 calculates the Jacobian matrix Jr and the like necessary for the kinematics calculation of the robot arm 5 (step S52).
 次いで、順運動学計算部58にて、ロボットアーム5からの関節角度データ(関節角度ベクトルq)から、ロボットアーム5の現在の手先位置及び姿勢ベクトルrを計算する(ステップS53)。 Next, the forward kinematics calculator 58 calculates the current hand position and posture vector r of the robot arm 5 from the joint angle data (joint angle vector q) from the robot arm 5 (step S53).
 次いで、動作補正部20から送信された動作情報に基づき、目標軌道計算部55は、ロボットアーム5の手先位置及び姿勢目標ベクトルr及び力目標ベクトルfを計算する(ステップS54)。 Then, based on the operation information transmitted from the operation correction unit 20, the target track calculation unit 55 calculates the tip unit position and orientation target vector r d and the force target vector f d of the robot arm 5 (step S54).
 次いで、力検出部53は、モータ43の駆動電流値iと、関節角度データ(関節角度ベクトルq)と、関節角度誤差補償出力uqeとから、ロボットアーム5の手先における等価手先外力Fextを計算する(ステップS55)。 Next, the force detection unit 53 calculates an equivalent hand external force F ext at the hand of the robot arm 5 from the drive current value i of the motor 43, the joint angle data (joint angle vector q), and the joint angle error compensation output u qe. Calculate (step S55).
 次いで、ステップS56では、制御パラメータ管理部21で設定された制御モードを設定する。高剛性位置制御モードのみの場合には、ステップS57に処理を進める。一方、力ハイブリッドインピーダンス制御モード若しくはインピーダンス制御モード若しくはハイブリッドインピーダンス制御モードの場合には、ステップS58へ処理を進める。 Next, in step S56, the control mode set by the control parameter management unit 21 is set. In the case of only the high rigidity position control mode, the process proceeds to step S57. On the other hand, in the case of the force hybrid impedance control mode, the impedance control mode, or the hybrid impedance control mode, the process proceeds to step S58.
 ステップS57(インピーダンス計算部51での処理)では、制御パラメータ管理部21において、高剛性位置制御モードが設定された場合には、インピーダンス計算部51で、手先位置及び姿勢目標補正出力rdΔを0ベクトルとする。その後、ステップS59に進む。 In step S57 (processing in the impedance calculation unit 51), when the high rigidity position control mode is set in the control parameter management unit 21, the impedance calculation unit 51 sets the hand position and posture target correction output rdΔ to 0. Let it be a vector. Thereafter, the process proceeds to step S59.
 制御パラメータ管理部21において、力ハイブリッドインピーダンス制御モード、若しくはインピーダンス制御モード若しくはハイブリッドインピーダンス制御モードが設定された場合には、制御パラメータ管理部21において設定された機械インピーダンスパラメータの慣性Mと粘性Dと剛性Kと、関節角度データ(関節角度ベクトルq)と、力検出部53により計算されたロボットアーム5に加わる等価手先外力Fextとから、手先位置及び姿勢目標補正出力rdΔが、インピーダンス計算部51により計算される(ステップS58)。 When the force hybrid impedance control mode, the impedance control mode, or the hybrid impedance control mode is set in the control parameter management unit 21, the inertia M, viscosity D, and rigidity of the mechanical impedance parameter set in the control parameter management unit 21 are set. From the K, joint angle data (joint angle vector q), and the equivalent hand external force F ext applied to the robot arm 5 calculated by the force detection unit 53, the hand position and posture target correction output rdΔ is obtained as an impedance calculation unit 51. (Step S58).
 次いで、位置誤差計算部50では、手先位置及び姿勢目標ベクトルrと手先位置及び姿勢目標補正出力rdΔの和である手先位置及び姿勢補正目標ベクトルrdmと、現在の手先位置及び姿勢ベクトルrとの差である手先位置及び姿勢の誤差rが計算される(ステップS59、ステップS60)。ステップS60では、位置誤差補償部56の具体例としてはPID補償器が考えられる。定数の対角行列である比例、微分、積分の3つのゲインを適切に調整することにより、位置誤差が0に収束するように制御が働く。ステップS59では、そのゲインを、ある値まで大きくすることで、高剛性の位置制御を実現する。 Then, the position in the error calculating unit 50, and the tip unit position and orientation correction target vector r dm is the sum of the tip unit position and orientation target vector r d and the tip unit position and orientation target correcting output r d?, The current hand position and orientation vector r error r e difference tip unit position and orientation is a is calculated (step S59, the step S60). In step S60, a PID compensator can be considered as a specific example of the position error compensator 56. Control is performed so that the position error converges to 0 by appropriately adjusting three gains of proportionality, differentiation, and integration, which are constant diagonal matrices. In step S59, high gain position control is realized by increasing the gain to a certain value.
 ステップS59又はステップS60に次いでステップS61では、近似逆運動学計算部57では、ステップS52で計算したヤコビ行列Jの逆行列を近似逆運動学計算部57で乗算することにより、位置誤差補償出力ureを、手先位置及び姿勢の誤差に関する値から関節角度の誤差に関する値である関節角度誤差補償出力uqeに、近似逆運動学計算部57により変換する。 In step S59 or step S61 subsequent to step S60, in the approximation reverse kinematical calculation unit 57, by multiplying the inverse matrix of the Jacobian matrix J r calculated in step S52 in the approximation reverse kinematical calculation unit 57, the position error compensation output The approximate inverse kinematics calculation unit 57 converts u re into a joint angle error compensation output u qe that is a value related to a joint angle error from a value related to a hand position and posture error.
 ステップS61に次いで、関節角度誤差補償出力uqeが、近似逆運動学計算部57から入出力IF24を通じ、モータドライバ25に与えられ、それぞれのモータ43を流れる電流量を変化させることによりロボットアーム5のそれぞれの関節軸の回転運動が発生する(ステップS62)。 Following step S61, the joint angle error compensation output u qe is given from the approximate inverse kinematics calculation unit 57 to the motor driver 25 via the input / output IF 24, and the amount of current flowing through each motor 43 is changed to change the robot arm 5. Rotational motions of the respective joint axes are generated (step S62).
 以上のステップS51~ステップS62が制御の計算ループとして繰り返し実行されることにより、ロボットアーム5の動作の制御、すなわち、ロボットアーム5の機械インピーダンスの値を、前記適切に設定された設定値に制御する動作を実現することができる。 The above steps S51 to S62 are repeatedly executed as a control calculation loop, thereby controlling the operation of the robot arm 5, that is, controlling the mechanical impedance value of the robot arm 5 to the appropriately set value. Can be realized.
 次に、補正動作種別決定部23と動作補正部20について詳細に説明する。 Next, the correction operation type determination unit 23 and the operation correction unit 20 will be described in detail.
 補正動作種別決定部23は、動作補正部20にて、人の手16でロボットアーム5に力をかけることで家事動作の補正を行うことが可能な補正の種別を決定する。以下の7種類の補正の種別がある。 The correction operation type determination unit 23 determines the type of correction in which the operation correction unit 20 can correct the housework operation by applying force to the robot arm 5 with the human hand 16. There are the following seven types of correction.
 1つ目の補正の種別は、「作業面の位置の移動」である。具体的には、図12A又は図12B(図12Aを上方から見た図)のように、ロボットアーム5で位置制御モードで機器6を掃除中に、図12Cのように人の手16でロボットアーム5に横方向から力をかけると、動作補正部20によって、図12Dのようにロボットアーム5の作業面に対する水平方向の位置を移動することで、掃除領域RAを平行移動することができる。 The first correction type is “movement of the position of the work surface”. Specifically, as shown in FIG. 12A or 12B (viewed from above in FIG. 12A), while the device 6 is being cleaned in the position control mode with the robot arm 5, the robot with the human hand 16 as shown in FIG. 12C. When a force is applied to the arm 5 from the lateral direction, the cleaning region RA can be translated by moving the horizontal position of the robot arm 5 with respect to the work surface as shown in FIG.
 2つ目の補正の種別は、拭き掃除時の機器6の作業面に対する「力のかけ具合」である。これは、現在動作中(動作データベース17の進捗情報が「1」)の動作のフラグ(有効性を示すフラグ)において、力のビットが「1」となっている場合に有効である。図27Aに示すように、ロボットアーム5で機器6の作業面を拭き掃除中に、図27Bのように、人の手16でロボットアーム5に上方から下向きに力をかけると、動作補正部20によって、図27Cのように拭き掃除時の力のかけ具合を強めに、逆に、人の手16でロボットアーム5に下方から上向きに力をかけると、拭き掃除時の力のかけ具合を弱めに補正することができる。 The second type of correction is “force applied” to the work surface of the device 6 at the time of wiping and cleaning. This is effective when the force bit is “1” in the operation flag (the flag indicating validity) of the operation currently being performed (the progress information of the operation database 17 is “1”). As shown in FIG. 27A, while the work surface of the device 6 is being wiped and cleaned with the robot arm 5, as shown in FIG. As shown in FIG. 27C, when the force applied during wiping and cleaning is increased, and conversely, when the robot arm 5 is applied upward from below with the human hand 16, the force applied during wiping and cleaning is corrected to be weaker. be able to.
 3つ目の補正の種別は、吸引の掃除時の機器6の作業面に対する「吸引力」である。これは、現在動作中(動作データベース17の進捗情報が「1」)の動作のフラグ(有効性を示すフラグ)において、吸引力のビットが「1」となっている場合に有効である。図28Aに示すように、ロボットアーム5で機器6の作業面を吸引掃除中に、図28Bのように、人の手16でロボットアーム5に上方から下向きに力をかけると、動作補正部20によって、図28Cのように、吸引掃除時の吸引力が強く設定され、逆に、人の手16でロボットアーム5に下方から上向きに力をかけると、吸引掃除時の吸引力を弱く設定することができる。 The third type of correction is “suction force” on the work surface of the device 6 during suction cleaning. This is effective when the bit of the suction force is “1” in the operation flag (the flag indicating validity) of the operation currently being performed (the progress information in the operation database 17 is “1”). As shown in FIG. 28A, when the work surface of the device 6 is suction-cleaned by the robot arm 5 and a force is applied downward from above to the robot arm 5 with a human hand 16 as shown in FIG. Thus, as shown in FIG. 28C, the suction force at the time of suction cleaning is set to be strong, and conversely, if the human hand 16 applies an upward force from below to the robot arm 5, the suction force at the time of suction cleaning is set to be weak. be able to.
 4つ目の補正の種別は、ロボットアーム5の手先(すなわち、掃除部9,10)の移動「速度」である。図29A又は図29B(図29Aを上方から見た図)のように、ロボットアーム5で機器6の作業面を掃除中に、図29Cのように、ロボットアーム5の進行方向に反する方向に人の手16でロボットアーム5に力をかけると、動作補正部20によって、図29Dのように、掃除時の速度を減速させることができる。逆に、ロボットアーム5で機器6の作業面を掃除中に、人の手16がロボットアーム5の進行方向に合わせて人の手16でロボットアーム5に力をかけると、動作補正部20によって、掃除時の速度を加速させることができる。 The fourth type of correction is the movement “speed” of the hand of the robot arm 5 (ie, the cleaning units 9 and 10). While cleaning the work surface of the device 6 with the robot arm 5 as shown in FIG. 29A or 29B (viewed from the upper side of FIG. 29A), the person moves in the direction opposite to the moving direction of the robot arm 5 as shown in FIG. 29C. When the force is applied to the robot arm 5 with the hand 16, the operation correction unit 20 can reduce the speed during cleaning as shown in FIG. 29D. On the contrary, when the human hand 16 applies a force to the robot arm 5 with the human hand 16 in accordance with the traveling direction of the robot arm 5 while cleaning the work surface of the device 6 with the robot arm 5, the motion correcting unit 20 , Can speed up cleaning.
 5つ目の補正の種別は、「方向(姿勢)の変更」である。図30A又は図30B(図30Aを上方から見た図)のように、ロボットアーム5で機器6の作業面を掃除中に、人の手16で、掃除部9,10の長手方向を、図30Cのように、ロボットアーム5のジグザグにする進行方向を変えたい方向に力をかけると、動作補正部20によって、図30Dのように掃除時のロボットアーム5の進行方向を変更することができる。これは、ロボットアーム5の手先の姿勢(φ、θ、ψ)を変更することで実現できる。 The fifth type of correction is “change in direction (posture)”. As shown in FIG. 30A or FIG. 30B (viewed from above in FIG. 30A), while cleaning the work surface of the device 6 with the robot arm 5, the longitudinal direction of the cleaning units 9, 10 is illustrated with the human hand 16. When a force is applied in the direction in which the robot arm 5 is to be moved in a zigzag manner as in 30C, the motion correction unit 20 can change the traveling direction of the robot arm 5 during cleaning as shown in FIG. 30D. . This can be realized by changing the posture (φ, θ, ψ) of the hand of the robot arm 5.
 6つ目の補正の種別は、「作業をして欲しくない領域」である。人16Aの手16で図31に示すように、ロボットアーム5を把持して、作業をして欲しくない領域RBの輪郭に沿って、ロボットアーム5(又は、掃除部9,10)に力をかけてロボットアーム5を移動させると、動作補正部20によって、図31のように作業をして欲しくない領域RBを設定することができる。 The sixth type of correction is “area that you do not want to work on”. As shown in FIG. 31 with the hand 16 of the person 16A, the robot arm 5 (or the cleaning units 9 and 10) is forced along the outline of the region RB where the robot arm 5 is not desired to be operated. When the robot arm 5 is moved over, the operation correction unit 20 can set an area RB that is not desired to be worked as shown in FIG.
 7つ目の補正の種別は、「作業面垂直方向の移動」である。図32Aのように、ロボットアーム5で機器6の作業面を掃除中に、図32Bのように人の手16でロボットアーム5に上方向に力をかけて、上方向にロボットアーム5を移動させると、動作補正部20によって、例えば、図32Cに示すように、機器6の作業面上に配置された、まな板などの別の機器6aの作業面6asを掃除することができる。 The seventh type of correction is “movement in the vertical direction of the work surface”. While the work surface of the device 6 is being cleaned with the robot arm 5 as shown in FIG. 32A, the robot arm 5 is moved upward by applying a force upward to the robot arm 5 with a human hand 16 as shown in FIG. 32B. Then, for example, as illustrated in FIG. 32C, the operation correction unit 20 can clean the work surface 6 as of another device 6 a such as a cutting board disposed on the work surface of the device 6.
 補正動作種別決定部23は、前記の7種類の補正の種別のうち、1種類の補正の種別を決定する。具体的には、ボタンなどのデータ入力IF26にて7種の補正の種別のうちの1つの補正の種別を選択するか、若しくは、力検出部53で検出されて情報取得部100で取得された人の手16でロボットアーム5にかけた力と、動作データベース17に記憶されて情報取得部100で取得されたロボットアーム5にかけた力と、補正の種別との関係情報(例えば、力のかかる向きと大きさと補正の種別との関係情報)とにより、補正動作種別決定部23で種別を推定する。 The correction operation type determination unit 23 determines one type of correction among the seven types of correction. Specifically, one of the seven types of correction is selected by the data input IF 26 such as a button, or is detected by the force detection unit 53 and acquired by the information acquisition unit 100. Information on the relationship between the force applied to the robot arm 5 by the human hand 16, the force applied to the robot arm 5 stored in the motion database 17 and acquired by the information acquisition unit 100, and the type of correction (for example, the direction in which the force is applied) And the relationship information between the magnitude and the correction type), the correction operation type determination unit 23 estimates the type.
 以下、補正の種別の推定方法の具体的な補正種別推定処理について、図14のフローチャートを使って詳細に説明する。 Hereinafter, specific correction type estimation processing of the correction type estimation method will be described in detail with reference to the flowchart of FIG.
 家事ロボット1の電源ボタン26aを「ON」にした状態で、人の手16でロボットアーム5を把持して力をロボットアーム5に加えていない場合は、ロボットアーム5は動かない。人の手16でロボットアーム5に力を加えている場合は、インピーダンス制御モード(人の手16の力を検出した方向にインピーダンス制御で移動させるモード)でロボットアーム5を移動させたい方向に移動させることができる。この場合、制御部22の力検出部53にて、ロボットアーム5に作用する力を検出し、力検出部53で検出された力の情報が、情報取得部100を介して、補正動作種別決定部23に入力される(ステップS1)。 If the power button 26a of the household robot 1 is set to “ON” and the robot arm 5 is not gripped by the human hand 16 and no force is applied to the robot arm 5, the robot arm 5 does not move. When a force is applied to the robot arm 5 by the human hand 16, the robot arm 5 is moved in the direction in which the robot arm 5 is moved in the impedance control mode (a mode in which the force of the human hand 16 is detected and moved by impedance control). Can be made. In this case, the force detection unit 53 of the control unit 22 detects the force acting on the robot arm 5, and the information on the force detected by the force detection unit 53 is determined via the information acquisition unit 100. Input to the unit 23 (step S1).
 次いで、ステップS2では、力検出部53で検出しかつ情報取得部100で取得された力の全ての成分(f、f、f、fφ、fθ、fψの6成分)が、ある閾値(具体的には、図33のID「1」の(fdx、fdy、fdz、f、f、f))以下であるか否かを補正動作種別決定部23で判断する。力検出部53で検出しかつ情報取得部100で取得された力の全ての成分(f、f、f、fφ、fθ、fψの6成分)が、前記ある閾値以下であると補正動作種別決定部23で判断した場合は、ロボットアーム5は動かず、補正はせず(ステップS20)、補正動作の種別推定方法の補正種別推定処理を終了する。その場合の制御モードは、インピーダンス制御モードである。 Next, in step S2, all the components of the acquired in detected by the force detection unit 53 and the information acquisition section 100 a force (f x, f y, f z, f φ, f θ, 6 components of f [psi) is Whether or not it is below a certain threshold (specifically, (f dx , f dy , f dz , f , f , f )) of ID “1” in FIG. Judge with. All components were detected by the force detection unit 53 and acquired by the information acquisition section 100 a force (f x, f y, f z, f φ, f θ, 6 components of f [psi) is below the certain threshold If it is determined by the correction operation type determination unit 23, the robot arm 5 does not move and is not corrected (step S20), and the correction type estimation process of the correction operation type estimation method ends. The control mode in that case is an impedance control mode.
 ステップS2にて、力検出部53で検出しかつ情報取得部100で取得された力のいずれかの成分(f、f、f、fφ、fθ、fψの6成分のうちのいずれかの成分)が、前記ある閾値(具体的には、図33のID「1」の(fdx、fdy、fdz、f、f、f))を越えると補正動作種別決定部23で判断した場合は、ステップS3に進む。 In step S2, one of the components (f x of the acquired detected by the force detection unit 53 and the information acquisition unit 100 force, f y, f z, f φ, f θ, of the six components of the f [psi ) Exceeds a certain threshold (specifically, (f dx , f dy , f dz , f , f , f ) of ID “1” in FIG. 33). If the type determining unit 23 determines, the process proceeds to step S3.
 ステップS3では、さらに、現在の家事ロボット1が動作データベース17で動作しているかどうか、を情報取得部100を介して取得した情報を基に補正動作種別決定部23で判定する。具体的には、動作選択部29にて作業を選択しておらず、かつ、動作データベース17の全ての作業IDについて、進捗情報が「0」となっている、と補正動作種別決定部23で判断する場合(作業を開始していない状態)は、動作データベース17で動作していないと補正動作種別決定部23で判定して、ステップS6に進む。動作選択部29にて掃除作業を選択して掃除を開始しており、かつ、進捗情報が「1」となっていると補正動作種別決定部23で判断している場合は、動作データベース17で動作していると補正動作種別決定部23で判定して、ステップS4に進む。 In step S3, the corrected operation type determination unit 23 further determines whether the current housework robot 1 is operating in the operation database 17 based on the information acquired via the information acquisition unit 100. Specifically, the correction operation type determination unit 23 determines that no operation is selected by the operation selection unit 29 and the progress information is “0” for all the operation IDs in the operation database 17. In the case of determination (a state in which work is not started), the correction operation type determination unit 23 determines that the operation database 17 is not operating, and the process proceeds to step S6. When the operation selection unit 29 selects the cleaning operation and starts cleaning, and the correction operation type determination unit 23 determines that the progress information is “1”, the operation database 17 If it is operating, the correction operation type determination unit 23 determines that the operation is in progress, and the process proceeds to step S4.
 ステップS4では、人の手16でロボットアーム5を把持して、ロボットアーム5の動作を補正したい方向に力を加えるとき、力検出部53でロボットアーム5に加えられた力を検出し、力検出部53で検出されかつ情報取得部100を介して取得した人の手16からの力(f、f、f、fφ、fθ、fψ)のそれぞれのある一定時間の変位量を補正動作種別決定部23で計測し、位置成分(f、f、f)と姿勢成分(fφ、fθ、fψ)のどちらの変位量が大きいか、を補正動作種別決定部23で計測する。具体的には、図15に示すように、(f、f、f、fφ、fθ、fψ)それぞれの時系列の力を補正動作種別決定部23で計測し、ある一定時間(例えばtime 1)に力がどれくらい変位したかを補正動作種別決定部23で計測し、最も変位の大きかった成分を補正動作種別決定部23で計測する。この例では、fφの変位が最も大きいので、姿勢成分が位置成分より力がかかっていると補正動作種別決定部23で判断して、ステップS9へ進む。 In step S4, when the robot arm 5 is gripped by a human hand 16 and a force is applied in a direction in which the operation of the robot arm 5 is to be corrected, the force applied to the robot arm 5 is detected by the force detection unit 53, and the force is detected. Displacement of each of the forces (f x , f y , f z , f φ , f θ , f ψ ) detected by the detection unit 53 and acquired through the information acquisition unit 100 for a certain period of time. The amount is measured by the correction operation type determination unit 23, and it is determined whether the displacement amount of the position component (f x , f y , f z ) or the posture component (f φ , f θ , f ψ ) is larger. Measurement is performed by the determination unit 23. Specifically, as shown in FIG. 15, each time series force (f x , f y , f z , f φ , f θ , f ψ ) is measured by the correction operation type determination unit 23, and is constant. The correction operation type determination unit 23 measures how much the force is displaced in time (for example, time 1), and the correction operation type determination unit 23 measures the component having the largest displacement. In this example, the displacement of f phi largest, as judged by the correction operation type determining unit 23 orientation component is force is applied from the position component, the process proceeds to step S9.
 ステップS4にて姿勢の変位量が位置の変位量より大きいと補正動作種別決定部23で判断する場合には、補正の種別は「方向(姿勢)の変更」の種別であると補正動作種別決定部23で決定して、補正の種別推定処理を終了する(ステップS9)。その際の制御モードは、補正の種別を決定する前と同様の制御モード(力ハイブリッドインピーダンス制御モード)である。 When the correction operation type determination unit 23 determines in step S4 that the displacement amount of the posture is larger than the displacement amount of the position, the correction operation type determination is made that the correction type is a “direction (posture) change” type. Then, the correction type estimation process is terminated (step S9). The control mode at that time is the same control mode (force hybrid impedance control mode) as before the correction type is determined.
 一方、ステップS4にて位置の変位量が姿勢の変位量以上であると補正動作種別決定部23で判断する場合には、さらに、作業面に垂直な方向の力成分(例えば地面に水平に設置された機器6の作業面を研磨する場合はf)が、ある閾値(具体的には、図33のID「1」のfdz)以上かどうか、を補正動作種別決定部23で判定する(ステップS5)。 On the other hand, when the correction operation type determination unit 23 determines in step S4 that the displacement amount of the position is equal to or greater than the displacement amount of the posture, the force component in the direction perpendicular to the work surface (for example, installed horizontally on the ground) In the case where the work surface of the device 6 is polished, f z ) is determined by the correction operation type determination unit 23 to determine whether it is equal to or greater than a certain threshold (specifically, f dz of ID “1” in FIG. 33). (Step S5).
 ステップS5で、作業面に垂直な方向の力成分が前記ある閾値より小さいと補正動作種別決定部23で判定された場合は、さらに作業面に水平な方向の力成分(例えば作業台7に水平に設定された機器6の作業面を掃除する場合はf、fのいずれか若しくは両方)が、ある閾値(具体的には、図33のID「1」のfdx、fdy)以上であるかどうか、を補正動作種別決定部23で判定する(ステップS10)。 In step S5, when it is determined by the correction operation type determination unit 23 that the force component in the direction perpendicular to the work surface is smaller than the certain threshold, the force component in the direction parallel to the work surface (for example, horizontal to the work table 7). f x when cleaning the working surface of the device 6 set in, either or both of the f y) is, the certain threshold (specifically, f dx of ID in FIG. 33, "1", f dy) or Is determined by the correction operation type determination unit 23 (step S10).
 ステップS10にて、作業面に水平な方向の力成分が前記ある閾値(具体的には、図33のID「1」のf、f)未満であると補正動作種別決定部23で判断する場合は、補正なし(種別なし)と決定して、補正種別推定処理を終了する(ステップS11)。補正なしの場合は補正を中止して作業を行う。 In step S10, (specifically, f x, f y of ID in FIG. 33, "1") a certain threshold the horizontal direction force component to the working surface determined by the less than correcting operation type determination unit 23 If so, it is determined that there is no correction (no type), and the correction type estimation process is terminated (step S11). If there is no correction, stop the correction and work.
 ステップS10にて、作業面に水平な方向の力成分が前記ある閾値以上であると補正動作種別決定部23で判断する場合は、ステップS13に進む。 In step S10, when the correction operation type determination unit 23 determines that the force component in the direction horizontal to the work surface is equal to or greater than the certain threshold value, the process proceeds to step S13.
 ステップS13では、さらに補正動作種別決定部23で算出された作業面の水平方向の移動量が、ある閾値(具体的には、図33のID「2」のg、g)以上であると補正動作種別決定部23で判断する場合は、補正の種別として「作業面の位置の移動」の種別を補正動作種別決定部23で決定して、補正種別推定処理を終了する(ステップS14)。なお、作業面の水平方向の移動量を補正動作種別決定部23で算出するとき、具体的には、制御部22から制御パラメータ管理部21又は情報取得部100を介して人の操作前のロボットアーム5の手先位置と操作中の手先位置を補正動作種別決定部23に入力し、操作中の手先位置から操作前の手先位置を減じた値を移動量として補正動作種別決定部23で算出することができる。また、作業面に垂直な方向の移動量を補正動作種別決定部23で算出するとき、具体的には、制御部22から制御パラメータ管理部21又は情報取得部100を介して人の操作前のロボットアーム5の手先位置のz成分と操作中の手先位置のz成分を補正動作種別決定部23に入力し、操作中の手先位置のz成分から操作前の手先位置のz成分を減じた値を移動量として補正動作種別決定部23で算出することができる。 In step S13, the horizontal movement amount of the work surface calculated by the correction operation type determination unit 23 is greater than or equal to a certain threshold (specifically, g x , g y of ID “2” in FIG. 33). When the correction operation type determination unit 23 determines, the correction operation type determination unit 23 determines the type of “movement of the position of the work surface” as the correction type, and ends the correction type estimation process (step S14). . In addition, when the movement amount in the horizontal direction of the work surface is calculated by the correction operation type determination unit 23, specifically, the robot before a human operation from the control unit 22 via the control parameter management unit 21 or the information acquisition unit 100 is used. The hand position of the arm 5 and the hand position during operation are input to the correction operation type determination unit 23, and a value obtained by subtracting the hand position before operation from the hand position during operation is calculated by the correction operation type determination unit 23. be able to. In addition, when the movement amount in the direction perpendicular to the work surface is calculated by the correction operation type determination unit 23, specifically, from the control unit 22 via the control parameter management unit 21 or the information acquisition unit 100 before the human operation. A value obtained by inputting the z component of the hand position of the robot arm 5 and the z component of the hand position during operation to the correction operation type determination unit 23 and subtracting the z component of the hand position before operation from the z component of the hand position during operation. Can be calculated by the correction operation type determination unit 23 as a movement amount.
 ステップS13にて、作業面の水平方向の移動量が前記ある閾値未満であると補正動作種別決定部23で判定された場合は、補正の種別として、作業面に水平な方向の「速度」の種別を決定して、補正種別推定処理を終了する(ステップS15)。 In step S13, when the correction operation type determination unit 23 determines that the horizontal movement amount of the work surface is less than the certain threshold value, the “speed” in the direction horizontal to the work surface is set as the correction type. The type is determined, and the correction type estimation process is terminated (step S15).
 また、ステップS5で、作業面に垂直な力が前記ある閾値以上であると補正動作種別決定部23で判定された場合は、さらに、補正動作種別決定部23で算出された作業面の垂直方向の移動量が、ある閾値より大きいか否かを補正動作種別決定部23で判断する(ステップS12)。 In step S5, when the correction operation type determination unit 23 determines that the force perpendicular to the work surface is equal to or greater than the certain threshold, the vertical direction of the work surface calculated by the correction operation type determination unit 23 is further determined. The correction operation type determination unit 23 determines whether or not the movement amount is larger than a certain threshold (step S12).
 ステップS12において、作業面の垂直方向の移動量が、前記ある閾値より大きいと補正動作種別決定部23で判断する場合には、補正の種別として「作業面垂直方向の移動」の種別を補正動作種別決定部23で決定して、補正種別推定処理を終了する(ステップS19)。 In step S12, when the correction operation type determination unit 23 determines that the amount of vertical movement of the work surface is greater than the certain threshold, the type of “movement in the vertical direction of the work surface” is used as the correction type. The type is determined by the type determination unit 23, and the correction type estimation process is terminated (step S19).
 また、ステップS12で作業面の垂直方向の移動量が前記ある閾値以下であると補正動作種別決定部23で判断する場合には、ステップS21に進み、ステップS21で、さらに、現在動作中(動作データベース17の進捗情報が「1」)の動作のフラグ(有効性を示すフラグ)において、力のビットが「1」となっているか、吸引力のビットが「1」となっているかを補正動作種別決定部23で判断する。 If the correction operation type determination unit 23 determines in step S12 that the amount of vertical movement of the work surface is equal to or less than the certain threshold value, the process proceeds to step S21, and in step S21, the current operation (operation) Whether the force bit is "1" or the suction force bit is "1" in the operation flag (validity flag) indicating that the progress information in the database 17 is "1") The type determination unit 23 makes the determination.
 ステップS21において、現在動作中(動作データベース17の進捗情報が「1」)の動作のフラグ(有効性を示すフラグ)において、力のビットが「1」となっていると補正動作種別決定部23で判断する場合には、拭き作業を意味するので、補正の種別として「力の補正」と決定し(ステップS17)、補正種別推定処理を終了する。一方、現在動作中(動作データベース17の進捗情報が「1」)の動作のフラグ(有効性を示すフラグ)において、吸引力のビットが「1」となっていると補正動作種別決定部23で判断する場合は、吸引にて掃除をする場合を意味するので、補正の種別として「吸引力の補正」の種別であると決定し(ステップS18)、補正種別推定処理を終了する。 In step S21, if the force bit is “1” in the operation flag (the flag indicating validity) of the operation currently in progress (the progress information in the operation database 17 is “1”), the corrected operation type determination unit 23 In the case of the determination, the wiping operation is meant, so that the correction type is determined as “force correction” (step S17), and the correction type estimation process is terminated. On the other hand, if the bit of the suction force is “1” in the flag of the operation (the progress information in the operation database 17 is “1”) (the flag indicating the validity), the correction operation type determination unit 23 When the determination is made, it means that the cleaning is performed by suction. Therefore, it is determined that the correction type is “correction of suction force” (step S18), and the correction type estimation process is terminated.
 また、ステップS3において、動作データベース17で動作していないと補正動作種別決定部23で判定された場合には、ステップS6に進み、ステップS6にて、さらに、人の手16でロボットアーム5にかけている力が作業面に水平であり、かつ、ある一定時間の水平方向の移動量が、ある閾値以上であるか否かを補正動作種別決定部23で判断する。 If it is determined in step S3 that the operation is not performed in the operation database 17 by the correction operation type determination unit 23, the process proceeds to step S6. The correction operation type determination unit 23 determines whether the applied force is horizontal to the work surface and the amount of movement in the horizontal direction for a certain period of time is equal to or greater than a certain threshold value.
 ステップS6において、人の手16でロボットアーム5にかけている力が作業面に水平であり、かつ、前記ある一定時間の水平方向の移動量が、前記ある閾値以上であると補正動作種別決定部23で判断する場合には、補正の種別として「作業をして欲しくない領域」の種別であると決定し(ステップS8)、補正種別推定処理を終了する。ステップS6で、人の手16でロボットアーム5にかけている力が作業面に対して水平ではない場合(例えば、垂直である場合)、又は、作業面に水平な力であっても水平方向の移動量が前記ある閾値未満であると補正動作種別決定部23で判断する場合は、補正の種別として「補正なし」と決定し(ステップS7)、補正種別推定処理を終了する。 In step S6, when the force applied to the robot arm 5 by the human hand 16 is horizontal to the work surface and the amount of movement in the horizontal direction for a certain period of time is equal to or greater than the certain threshold value, the correction operation type determination unit 23 Is determined as the type of correction “region not desired to be worked” (step S8), and the correction type estimation process is terminated. In step S6, when the force applied to the robot arm 5 by the human hand 16 is not horizontal with respect to the work surface (for example, when it is vertical), or even when the force is horizontal to the work surface, the horizontal movement is performed. When the correction operation type determination unit 23 determines that the amount is less than the certain threshold, the correction type is determined as “no correction” (step S7), and the correction type estimation process ends.
 以上により、ボタンなどのデータ入力IF26を使わずに、補正動作種別決定部23により、補正の種別を切り替えることができる。 As described above, the correction type can be switched by the correction operation type determination unit 23 without using the data input IF 26 such as a button.
 補正動作種別決定部23は、前記の7種類の種別のうち、1種類の種別を決定したが、2種類の補正の種別を同時に決定することもできる。 The correction operation type determination unit 23 determines one type of the above seven types, but can also determine two types of correction at the same time.
 図3の補正動作種別決定方法設定部27は、補正動作種別決定部23で決定する出力数を設定する。しかしながら、出力数は、データ入力IF26を使って補正動作種別決定部23で入力して、人が決定するようにしてもよい。 The correction operation type determination method setting unit 27 in FIG. 3 sets the number of outputs determined by the correction operation type determination unit 23. However, the number of outputs may be input by the correction operation type determination unit 23 using the data input IF 26 and determined by a person.
 補正動作種別決定部23は、補正動作種別決定方法設定部27で設定された出力数に従って、補正の種別を決定する。具体的には、出力数が1の場合は、図14の補正の種別の推定方法のアルゴリズムで補正の種別を決定し、出力数が「2」の値の場合は、後述する図17のアルゴリズムで補正の種別を決定する。これにより、家事ロボット1を操作する人が操作に不慣れな場合は、出力数を1に設定することで、同時に2種類の補正ができないので、操作が簡単になる。逆に、操作に慣れてきて、同時に2種類の種別の補正を行いたい場合は、出力数を「2」の値に設定することで、補正を効率的に行なうことができるようになる。 The correction operation type determination unit 23 determines the correction type according to the number of outputs set by the correction operation type determination method setting unit 27. Specifically, when the number of outputs is 1, the correction type is determined by the algorithm of the correction type estimation method of FIG. 14, and when the number of outputs is “2”, the algorithm of FIG. To determine the type of correction. As a result, when the person who operates the household robot 1 is not familiar with the operation, setting the number of outputs to 1 makes it impossible to perform two types of correction at the same time, thus simplifying the operation. On the other hand, if you are used to the operation and want to correct two types at the same time, the correction can be performed efficiently by setting the number of outputs to a value of “2”.
 上述の補正動作種別決定部23では、1種類の種別を出力するとしたが、2種類の種別を出力して補正する例として、図18Aに示すように、拭き作業時に動作データベース17の力より強い力で、且つ、作業面の拭き掃除を通常より高速に掃除したい場合である。この場合は、拭き掃除の力と速度の2種類の種別を同時に補正する。また、図18Bでは、塵などを吸引する掃除をする際に、作業面を平行に移動しながら、吸引力を強くする場合である。この場合は、作業面の位置の移動と吸引力の2種類の種別を同時に補正する。 The correction operation type determination unit 23 described above outputs one type, but as an example of outputting and correcting two types, the power of the operation database 17 is stronger during wiping work as shown in FIG. 18A. This is a case where it is necessary to clean the work surface at a higher speed than usual. In this case, the two types of wiping force and speed are corrected simultaneously. FIG. 18B shows a case where the suction force is increased while moving the work surface in parallel when cleaning is performed to suck dust and the like. In this case, the two types of movement and position of the work surface and suction force are corrected simultaneously.
 2種類の種別を出力する補正動作の種別推定方法の補正種別推定処理を実行するための補正動作種別決定部23のアルゴリズムについて、図17のフローチャートを使って詳細に説明する。 The algorithm of the correction operation type determination unit 23 for executing the correction type estimation process of the correction operation type estimation method for outputting two types of types will be described in detail with reference to the flowchart of FIG.
 1種類の種別の場合と同様に、家事ロボット1の電源ボタン26aを「ON」にした状態で、人の手16でロボットアーム5を把持して力をロボットアーム5に加えていない場合は、ロボットアーム5は動かない。人の手16でロボットアーム5に力を加えている場合は、インピーダンス制御モード(人の手16の力を検出した方向にインピーダンス制御で移動させるモード)でロボットアーム5を移動させたい方向に移動させることができる。この場合、制御部22の力検出部53にて、ロボットアーム5に作用する力を検出し、力検出部53で検出された力の情報が、情報取得部100を介して、補正動作種別決定部23に入力される(ステップS31)。 As in the case of one type, when the power button 26a of the household robot 1 is turned “ON” and the robot arm 5 is gripped by the human hand 16 and no force is applied to the robot arm 5, The robot arm 5 does not move. When a force is applied to the robot arm 5 by the human hand 16, the robot arm 5 is moved in the direction in which the robot arm 5 is moved in the impedance control mode (a mode in which the force of the human hand 16 is detected and moved by impedance control). Can be made. In this case, the force detection unit 53 of the control unit 22 detects the force acting on the robot arm 5, and the information on the force detected by the force detection unit 53 is determined via the information acquisition unit 100. The data is input to the unit 23 (step S31).
 次いで、ステップS32では、力検出部53で検出しかつ情報取得部100で取得された力の全ての成分(f、f、f、fφ、fθ、fψの6成分)が、ある閾値(具体的には、図33のID「1」の(fdx、fdy、fdz、fdφ、fdθ、fdψ))以下であるか否かを補正動作種別決定部23で判断する。力検出部53で検出しかつ情報取得部100で取得された力の全ての成分(f、f、f、fφ、fθ、fψの6成分)が、前記ある閾値以下であると補正動作種別決定部23で判断した場合は、ロボットアーム5は動かず、補正はせず(ステップS51)、補正動作の種別推定方法の補正種別推定処理を終了する。 Then, in step S32, all the components of the acquired in detected by the force detection unit 53 and the information acquisition section 100 a force (f x, f y, f z, f φ, f θ, 6 components of f [psi) is (specifically, (f dx of ID "1" in FIG. 33, f dy, f dz, f dφ, f dθ, f dψ)) is the threshold correction or not less whether the operation type determining unit 23 Judge with. All components were detected by the force detection unit 53 and acquired by the information acquisition section 100 a force (f x, f y, f z, f φ, f θ, 6 components of f [psi) is below the certain threshold If it is determined by the correction operation type determination unit 23, the robot arm 5 does not move and is not corrected (step S51), and the correction type estimation process of the correction operation type estimation method ends.
 ステップS32にて、力検出部53で検出しかつ情報取得部100で取得された力のいずれかの成分(f、f、f、fφ、fθ、fψの6成分)が、前記ある閾値(具体的には、図33のID「1」の(fdx、fdy、fdz、fdφ、fdθ、fdψ))を越えると補正動作種別決定部23で判断した場合は、ステップS33に進む。 In step S32, one of the components of the acquired in detected by the force detection unit 53 and the information acquisition section 100 a force (f x, f y, f z, f φ, f θ, 6 components of f [psi) is the (specifically, (f dx, f dy, f dz, f dφ, f dθ, f dψ) of ID in FIG. 33, "1") is a threshold determined by the correcting operation type determination unit 23 exceeds If so, the process proceeds to step S33.
 ステップS33では、さらに、現在の家事ロボット1が動作データベース17で動作しているかどうか、を補正動作種別決定部23で判定する。具体的には、動作選択部29にて掃除作業を選択しておらず、かつ、動作データベース17の全ての作業IDについて、動作選択部29にて作業を選択しておらず進捗情報が「0」となっている、と補正動作種別決定部23で判断する場合(掃除を開始していない状態)は、動作データベース17で動作していないと補正動作種別決定部23判定して、ステップS36に進む。動作選択部29にて掃除作業を選択して掃除を開始しており、かつ、進捗情報が「1」となっていると補正動作種別決定部23で判断している場合は、動作データベース17で動作していると補正動作種別決定部23で判定して、ステップS34に進む。 In step S33, the corrective action type determination unit 23 further determines whether or not the current housework robot 1 is operating in the action database 17. Specifically, the cleaning operation is not selected by the operation selection unit 29, and the operation selection unit 29 does not select the operation for all the work IDs in the operation database 17, and the progress information is “0”. ”Is determined by the correction operation type determination unit 23 (when cleaning is not started), the correction operation type determination unit 23 determines that the operation database 17 is not operating, and the process proceeds to step S36. move on. When the operation selection unit 29 selects the cleaning operation and starts cleaning, and the correction operation type determination unit 23 determines that the progress information is “1”, the operation database 17 If it is operating, the correction operation type determination unit 23 determines that it is operating, and the process proceeds to step S34.
 ステップS34では、人の手16でロボットアーム5を把持して、ロボットアーム5の掃除動作を補正したい方向に力を加えるとき、力検出部53でロボットアーム5に加えられた力を検出し、力検出部53で検出されかつ情報取得部100で取得された人の手16からの力(f、f、f、fφ、fθ、fψ)のそれぞれのある一定時間の変位量を補正動作種別決定部23で計測し、位置成分(f、f、f)と姿勢成分(fφ、fθ、fψ)のどちらの変位量が大きいかを補正動作種別決定部23で計測する。具体的には、図15に示すように、(f、f、f、fφ、fθ、fψ)それぞれの時系列の力を補正動作種別決定部23で計測し、ある一定時間(例えばtime 1)に力がどれくらい変位したかを補正動作種別決定部23で計測し、最も変位の大きかった成分を計測する。この例では、fφの変位が最も大きいので、姿勢成分が位置成分より力がかかっていると補正動作種別決定部23で判断してステップS39へ進む。 In step S34, when the robot arm 5 is gripped by the human hand 16 and a force is applied in the direction in which the cleaning operation of the robot arm 5 is to be corrected, the force applied to the robot arm 5 is detected by the force detector 53, power from the human hand 16 obtained by the detected and the information acquisition unit 100 by the force detection unit 53 (f x, f y, f z, f φ, f θ, f ψ) each having a certain time displacement of The amount is measured by the corrective action type determining unit 23, and the corrective action type is determined as to which of the position component (f x , f y , f z ) or the posture component (f φ , f θ , f ψ ) is larger. Measurement is performed by the unit 23. Specifically, as shown in FIG. 15, each time series force (f x , f y , f z , f φ , f θ , f ψ ) is measured by the correction operation type determination unit 23, and is constant. The correction operation type determination unit 23 measures how much the force is displaced in time (for example, time 1), and measures the component having the largest displacement. In this example, the displacement of f phi is the largest, the process proceeds as judged by the correction operation type determining unit 23 orientation component is force is applied from the position component to step S39.
 ステップS34にて姿勢の変位量が位置の変位量より大きいと補正動作種別決定部23で判断する場合には、補正の種別は「方向(姿勢)の変更」の種別であると補正動作種別決定部23で決定して、補正の種別推定処理を終了する(ステップS39)。 When the correction operation type determination unit 23 determines in step S34 that the displacement amount of the posture is larger than the displacement amount of the position, the correction operation type determination is made that the correction type is the type of “change in direction (posture)”. Then, the correction type estimation process is terminated (step S39).
 一方、ステップS34にて位置の変位量が姿勢の変位量以上であると補正動作種別決定部23で判断する場合には、さらに、作業面に垂直な方向の力成分(例えば地面に水平に設置された機器6を掃除する場合はf)が、ある閾値(具体的には、図33のID「1」のfdz)以上かどうか、を補正動作種別決定部23で判定する(ステップS35)。このとき、同時に、作業面に水平な方向の力成分(例えば地面に水平に設定された機器6を掃除する場合はf、fのいずれか若しくは両方)が、ある閾値(具体的には、図33のID「1」のfdx、fdy)以上かどうか、を補正動作種別決定部23で判定する(ステップS40)。 On the other hand, when the correction operation type determination unit 23 determines in step S34 that the displacement amount of the position is equal to or greater than the displacement amount of the posture, the force component in the direction perpendicular to the work surface (for example, installed horizontally on the ground) In the case where the device 6 to be cleaned is f z ), the correction operation type determination unit 23 determines whether or not the threshold value (specifically, f dz of ID “1” in FIG. 33) is greater than or equal to (step S35). ). At the same time, a horizontal force component on the work surface (if cleaning the equipment 6 that is set horizontally, for example, ground f x, either or both of the f y) is, to a certain threshold value (specifically 33, the correction operation type determination unit 23 determines whether or not it is greater than or equal to f dx , f dy of ID “1” in FIG. 33 (step S40).
 ステップS35で、作業面に垂直な方向の力成分が前記ある閾値より小さいと補正動作種別決定部23で判定された場合は、垂直面の補正なし(種別なし)と決定して、補正種別推定処理を終了する(ステップS45)。ステップS40で、作業面に水平な方向の力成分が前記ある閾値より小さいと補正動作種別決定部23で判定された場合は、水平面の補正なし(種別なし)と決定して、補正種別推定処理を終了する(ステップS41)。 If the correction operation type determination unit 23 determines in step S35 that the force component in the direction perpendicular to the work surface is smaller than the certain threshold value, it determines that there is no correction of the vertical surface (no type) and estimates the correction type. The process ends (step S45). If it is determined in step S40 that the force component in the direction parallel to the work surface is smaller than the certain threshold value, the correction operation type determination unit 23 determines that the horizontal plane is not corrected (no type), and correction type estimation processing is performed. Is finished (step S41).
 ステップS40で、作業面に水平な方向の力成分が前記ある閾値以上であると補正動作種別決定部23で判定された場合は、ステップS42に進む。 If it is determined in step S40 that the correction action type determination unit 23 determines that the force component in the direction horizontal to the work surface is equal to or greater than the certain threshold value, the process proceeds to step S42.
 ステップS42では、さらに作業面の水平方向の移動量が、ある閾値(具体的には、図33のID「2」のg、g)以上であるか否かを補正動作種別決定部23で判定する。ステップS42で、さらに作業面の水平方向の移動量が前記ある閾値(具体的には、図33のID「2」のg、g)以上であると補正動作種別決定部23で判定された場合は、補正の種別として「作業面の位置の移動」の種別であると補正動作種別決定部23で決定して、補正種別推定処理を終了する(ステップS43)
 ステップS42で、作業面の水平方向の移動量が前記ある閾値未満であると補正動作種別決定部23で判定された場合は、補正の種別として、作業面に水平な方向の「速度」の種別であると決定して、補正種別推定処理を終了する(ステップS44)。
In step S42, it is further determined whether or not the horizontal movement amount of the work surface is equal to or greater than a certain threshold (specifically, g x , g y of ID “2” in FIG. 33). Judge with. In step S42, the correction operation type determination unit 23 determines that the amount of horizontal movement of the work surface is greater than or equal to the certain threshold (specifically, g x , g y of ID “2” in FIG. 33). If it is determined, the correction operation type determination unit 23 determines that the correction type is “movement of the position of the work surface”, and ends the correction type estimation process (step S43).
If the correction operation type determination unit 23 determines in step S42 that the horizontal movement amount of the work surface is less than the certain threshold value, the type of “speed” in the direction horizontal to the work surface is used as the correction type. And the correction type estimation process is terminated (step S44).
 ステップS35で、作業面に垂直な力が前記ある閾値以上であると補正動作種別決定部23でと判定された場合は、さらに、作業面の垂直方向の移動量が、ある閾値より大きいか否かを補正動作種別決定部23で判断する(ステップS46)。 If it is determined in step S35 that the corrective action type determining unit 23 determines that the force perpendicular to the work surface is equal to or greater than the certain threshold value, then whether or not the vertical movement amount of the work surface is greater than a certain threshold value. This is determined by the correction operation type determination unit 23 (step S46).
 ステップS46で、作業面の垂直方向の移動量が前記ある閾値より大きいと補正動作種別決定部23で判断された場合は、補正の種別として「作業面垂直方向の移動」の種別であると決定して、補正種別推定処理を終了する(ステップS50)。 In step S46, when the correction operation type determination unit 23 determines that the vertical movement amount of the work surface is larger than the certain threshold value, the correction type is determined as the type of “movement in the vertical direction of the work surface”. Then, the correction type estimation process ends (step S50).
 ステップS46では、作業面の垂直方向の移動量が前記ある閾値以下であると補正動作種別決定部23で判断された場合は、ステップS47に進み、ステップS47で、さらに、現在動作中(動作データベース17の進捗情報が「1」)の動作のフラグ(有効性を示すフラグ)において、拭き作業の場合に力のビットが「1」となっているか、吸引力のビットが「1」となっているかを補正動作種別決定部23で判断する。 In step S46, when the correction operation type determination unit 23 determines that the vertical movement amount of the work surface is equal to or less than the certain threshold value, the process proceeds to step S47, and in step S47, the current operation is being performed (operation database). In the operation flag (the flag indicating effectiveness) of 17 progress information is “1”), the force bit is “1” in the case of the wiping operation, or the suction force bit is “1”. It is determined by the correction operation type determination unit 23.
 ステップS47において、現在動作中(動作データベース17の進捗情報が「1」)の動作のフラグ(有効性を示すフラグ)において、力のビットが「1」となっていると補正動作種別決定部23で判断する場合には、拭き作業を意味するので、補正の種別として「力の補正」と決定し(ステップS48)、補正種別推定処理を終了する。一方、現在動作中(動作データベース17の進捗情報が「1」)の動作のフラグ(有効性を示すフラグ)において、吸引力のビットが「1」となっていると補正動作種別決定部23で判断する場合は、吸引にて掃除をする場合を意味するので、補正の種別として「吸引力の補正」の種別であると決定し(ステップS49)、補正種別推定処理を終了する。 In step S 47, if the force bit is “1” in the operation flag (validity flag indicating that the progress information in the operation database 17 is “1”), the correction operation type determination unit 23 In the case of the determination, it means a wiping operation, so that “correction of force” is determined as the correction type (step S48), and the correction type estimation process is terminated. On the other hand, if the bit of the suction force is “1” in the flag of the operation (the progress information in the operation database 17 is “1”) (the flag indicating the validity), the correction operation type determination unit 23 When the determination is made, it means that the cleaning is performed by suction. Therefore, it is determined that the correction type is “correction of suction force” (step S49), and the correction type estimation process is terminated.
 また、ステップS33において、動作データベース17で動作していないと補正動作種別決定部23で判定された場合には、ステップS36に進み、ステップS36にて、さらに、人の手16でロボットアーム5にかけている力が作業面に水平であり、かつ、ある一定時間の水平方向の移動量が、ある閾値以上であるか否かを補正動作種別決定部23で判断する。 If it is determined in step S33 that the operation is not performed in the operation database 17 by the correction operation type determination unit 23, the process proceeds to step S36. The correction operation type determination unit 23 determines whether the applied force is horizontal to the work surface and the amount of movement in the horizontal direction for a certain period of time is equal to or greater than a certain threshold value.
 ステップS36において、人の手16でロボットアーム5にかけている力が作業面に水平であり、かつ、ある一定時間の水平方向の移動量が、ある閾値以上であると補正動作種別決定部23で判断する場合には、補正の種別として「作業をして欲しくない領域」の種別であると決定し(ステップS38)、補正種別推定処理を終了する。ステップS36で、人の手16でロボットアーム5にかけている力が作業面に対して水平ではない場合(例えば、垂直である場合)、又は、作業面に水平な力であっても水平方向の移動量が前記ある閾値未満であると補正動作種別決定部23で判断する場合は、補正の種別として「補正なし」と決定し(ステップS36)、補正種別推定処理を終了する。 In step S36, the corrective action type determination unit 23 determines that the force applied to the robot arm 5 by the human hand 16 is horizontal to the work surface and the amount of horizontal movement for a certain period of time is equal to or greater than a certain threshold value. In this case, it is determined that the type of correction is “region not desired to be worked” (step S38), and the correction type estimation process is terminated. In step S36, when the force applied to the robot arm 5 by the human hand 16 is not horizontal with respect to the work surface (for example, when it is vertical), or even when the force is horizontal to the work surface, the movement in the horizontal direction is performed. When the correction operation type determination unit 23 determines that the amount is less than the certain threshold, the correction type is determined as “no correction” (step S36), and the correction type estimation process ends.
 以上により、ボタンなどのデータ入力IF26を使わずに、補正動作種別決定部23により、2種類以上の補正の種別を切り替えることができる。 As described above, two or more types of correction can be switched by the correction operation type determination unit 23 without using the data input IF 26 such as a button.
 動作補正部20は、動作データベース17の位置と姿勢と時間とに基づいて動作中に、人の手16でロボットアーム5に力をかけることで、動作データベース17の動作情報を補正する機能である。 The motion correction unit 20 is a function that corrects motion information in the motion database 17 by applying a force to the robot arm 5 with a human hand 16 during motion based on the position, posture, and time of the motion database 17. .
 以下、動作補正部20の機能について説明する。 Hereinafter, the function of the motion correction unit 20 will be described.
 人の手16で、家事ロボット1の作業台7に配置されているデータ入力IF26(例えば操作盤26Aの電源ボタン26aなど)により電源を入れると、動作補正部20は、インピーダンス制御モードで動作するよう、制御パラメータ管理部21へ指令を出す。 When the power is turned on by a human hand 16 using a data input IF 26 (for example, the power button 26a of the operation panel 26A) disposed on the work table 7 of the housework robot 1, the operation correction unit 20 operates in the impedance control mode. A command is issued to the control parameter management unit 21.
 次に、人の手16で、動作選択部29により、動作データベース17の作業の一覧の中から所望の作業を選択して、動作開始の指示を行う。動作補正部20は、動作データベース17の中から選択された作業IDの動作情報(具体的には、レール可動部8bの位置及びロボットアーム5の位置と姿勢と時間と)に基づきレール可動部8b及びロボットアーム5を力ハイブリッドインピーダンス制御モードで動作するように、制御パラメータ管理部21へ指令を出す。 Next, with the human hand 16, the operation selection unit 29 selects a desired work from the work list in the operation database 17 and gives an instruction to start the operation. The motion correction unit 20 is based on the motion information of the work ID selected from the motion database 17 (specifically, the position of the rail movable unit 8b and the position, posture, and time of the robot arm 5). The control parameter management unit 21 is instructed to operate the robot arm 5 in the force hybrid impedance control mode.
 力ハイブリッドインピーダンス制御モードの場合は、動作データベース17の動作IDに対するフラグ(有効性を示すフラグ)のうち、フラグのビットが「1」になっているロボットアーム5の位置及び姿勢のそれぞれに対して、ハイブリッドインピーダンス制御モード(位置制御モードで動作している最中に、人などからロボットアーム5に加わる力に応じて、ロボットアーム5が作動するモード)が動作補正部20で設定され、吸引力又は力のフラグ(有効性を示すフラグ)のビットが「1」になっている成分は力制御モードが動作補正部20で設定される。位置及び姿勢の6成分のうち、ハイブリッドインピーダンス制御モードも力制御モードもいずれも設定されていない成分は、インピーダンス制御モードが動作補正部20で設定される。例えば、図4の作業IDが「1」の場合は、塵を吸引する掃除をする作業を示しており、作業IDが「1」の場合でかつ動作IDが「1」の場合のフラグは1,2,14ビット目のみ「1」であるので、x軸及びy軸成分に対しては、ハイブリッドインピーダンス制御モードが動作補正部20で設定されるとともに、z軸成分に対しては力制御モードが動作補正部20で設定され、姿勢成分に対してはインピーダンス制御モードが動作補正部20で設定される。図4の作業IDが「2」の場合は、拭き掃除をする作業を示しており、作業IDが「2」の場合でかつ動作IDが「1」のフラグは1,2,8ビット目のみ「1」であるので、x軸及びy軸成分にはハイブリッドインピーダンス制御モードが動作補正部20で設定され、z軸成分には力制御モードが動作補正部20で設定され、姿勢成分にはインピーダンス制御モードが動作補正部20で設定される。 In the case of the force hybrid impedance control mode, among the flags for the action IDs in the action database 17 (flags indicating validity), for each position and posture of the robot arm 5 in which the flag bit is “1”. In addition, a hybrid impedance control mode (a mode in which the robot arm 5 operates according to a force applied to the robot arm 5 by a person or the like while operating in the position control mode) is set by the operation correction unit 20, and suction force is set. Alternatively, a force control mode is set in the operation correction unit 20 for a component in which a bit of a force flag (a flag indicating effectiveness) is “1”. Of the six components of position and orientation, the component for which neither the hybrid impedance control mode nor the force control mode is set has the impedance control mode set by the operation correction unit 20. For example, when the work ID in FIG. 4 is “1”, the work for cleaning by sucking dust is shown, and the flag when the work ID is “1” and the operation ID is “1” is 1. , 2 and 14th bits are “1”, so that the hybrid impedance control mode is set by the operation correction unit 20 for the x-axis and y-axis components, and the force control mode for the z-axis components. Is set by the motion correction unit 20, and the impedance control mode is set by the motion correction unit 20 for the posture component. When the work ID in FIG. 4 is “2”, it indicates a work for wiping and cleaning. When the work ID is “2” and the operation ID is “1”, only the first, second, and eighth bits are “ 1 ”, the hybrid impedance control mode is set by the motion correction unit 20 for the x-axis and y-axis components, the force control mode is set by the motion correction unit 20 for the z-axis component, and impedance control is performed for the posture component. The mode is set by the operation correction unit 20.
 制御パラメータ管理部21は、動作補正部20から指令を受ける。すなわち、力ハイブリッドインピーダンス制御モードで掃除作業をするように動作補正部20から制御パラメータ管理部21へ指令を出すと、図16A~図16Cに示すように、レール可動部8bが指令した位置で家事ロボット1が自走しながら、ロボットアーム5は、動作IDの位置と姿勢と力若しくは吸引力とで掃除作業を開始する。 The control parameter management unit 21 receives a command from the operation correction unit 20. That is, when a command is issued from the motion correction unit 20 to the control parameter management unit 21 so as to perform the cleaning work in the force hybrid impedance control mode, the housework is performed at the position commanded by the rail movable unit 8b as shown in FIGS. 16A to 16C. While the robot 1 is self-propelled, the robot arm 5 starts the cleaning operation with the position, posture and force or suction force of the operation ID.
 次に、人が作業面の汚れの状況などを確認して、図12Cに示すように、もう少し横方向にロボットアーム5を平行移動させて掃除(吸引)させたい場合を例にとって説明する。 Next, an example will be described in which a person confirms the state of dirt on the work surface and the like, and as shown in FIG. 12C, the robot arm 5 is moved a little further in the lateral direction to be cleaned (sucked).
 図12Cに示すように、人の手16でロボットアーム5を直接把持して、作業面に対して平行移動するように作業面に平行に力をロボットアーム5にかける。 As shown in FIG. 12C, the robot arm 5 is directly gripped by a human hand 16 and a force is applied to the robot arm 5 parallel to the work surface so as to move in parallel with the work surface.
 補正動作種別決定部23により、情報取得部100で取得された、人の手16がロボットアーム5にかけた力と動作データベース17に記憶された情報とにより、図14のフローチャートに示した補正種別推定処理で補正の種別を推定して決定する。ここでは、人の手16で、作業面と水平な方向に力をロボットアーム5にかけて、ロボットアーム5をある閾値以上移動させているので、ステップS14において、補正の種別として「作業面の位置の移動」の種別であると補正動作種別決定部23で決定する。 The correction type estimation shown in the flowchart of FIG. 14 based on the force applied by the human hand 16 to the robot arm 5 and the information stored in the operation database 17 acquired by the information acquisition unit 100 by the correction operation type determination unit 23. The type of correction is estimated and determined by processing. Here, since the human hand 16 applies a force in a direction parallel to the work surface to the robot arm 5 to move the robot arm 5 by a certain threshold value or more, in step S14, the correction type is “the position of the work surface. The correction operation type determination unit 23 determines that the type is “movement”.
 図4の作業IDが「1」の場合で動作IDが「1」に示す作業の場合は、x軸成分及びy軸成分は力ハイブリッドインピーダンス制御モードにより、位置制御モードでロボットアーム5を移動させながら、インピーダンス制御モードにより人の手16でロボットアーム5にかけられた力を力検出部53で検出して、人の手16でロボットアーム5に力をかけた方向に、ロボットアーム5をx軸方向及びy軸方向に移動させて、図12Dのように掃除位置を補正することができる。 When the work ID in FIG. 4 is “1” and the work ID is “1”, the x-axis component and the y-axis component move the robot arm 5 in the position control mode by the force hybrid impedance control mode. However, the force applied to the robot arm 5 by the human hand 16 in the impedance control mode is detected by the force detection unit 53, and the robot arm 5 is moved in the x-axis direction in the direction in which the force is applied to the robot arm 5 by the human hand 16. The cleaning position can be corrected as shown in FIG. 12D by moving in the direction and the y-axis direction.
 なお、この例では、x軸の方向及びy軸の方向にのみ動作を補正したいので、補正動作種別決定部23で補正の種別が決定されたタイミングで、補正動作種別決定部23により、図6の補正パラメータフラグの0,1ビット目を「1」に設定するとともに、その他のビットを「0」に設定して、補正動作種別決定部23から制御パラメータ管理部21へ指令を出すことで、x軸の方向及びy軸の方向以外の移動ができないように設定することができる。さらに、インピーダンス制御モード時の機械インピーダンス設定値を補正動作種別決定部23で変更して補正動作種別決定部23から制御パラメータ管理部21へ指令を出すことで、ロボットアーム5のx軸方向及びy軸方向の剛性を他の方向の剛性よりも低くして、人の手16でロボットアーム5をx軸方向及びy軸方向に動かしやすくし、x軸方向及びy軸方向以外の方向の剛性を高くして、人の手16でロボットアーム5をx軸方向及びy軸方向以外の方向に動かしにくくするようにすることができる。これにより、ロボットアーム5のx軸成分及びy軸成分のみを補正したい場合に、ロボットアーム5のz軸成分の補正を誤って行なうことがないようにすることができる。また、ロボットアーム5のx軸方向及びy軸方向の補正中に、補正動作種別決定部23により、z軸成分の吸引の強さ若しくは作業面にかける力を、補正前の動作時より弱く若しくは小さく(具体的には半分程度に)することもできる。又は、吸引又は力制御を停止するよう、補正動作種別決定部23から制御パラメータ管理部21へ指令を出すこともできる。具体的には、動作データベース17のフラグの6~17ビット目を「0」に補正動作種別決定部23で設定する。これにより、x軸方向及びy軸方向にロボットアーム5を移動させて補正している最中に、ロボットアーム5に力をかけて機器6を傷つけたり、塵以外のものを誤って吸い込むことを防ぐことができる。 In this example, since it is desired to correct the operation only in the x-axis direction and the y-axis direction, the correction operation type determination unit 23 performs the correction operation type determination unit 23 at the timing when the correction type is determined. By setting the 0th and 1st bits of the correction parameter flag to “1” and setting the other bits to “0” and issuing a command from the correction operation type determination unit 23 to the control parameter management unit 21, It can be set so that movements other than the direction of the x-axis and the direction of the y-axis cannot be performed. Furthermore, by changing the mechanical impedance setting value in the impedance control mode by the correction operation type determination unit 23 and issuing a command from the correction operation type determination unit 23 to the control parameter management unit 21, the x-axis direction and y of the robot arm 5 The rigidity in the axial direction is made lower than the rigidity in the other directions so that the robot arm 5 can be easily moved in the x-axis direction and the y-axis direction by the human hand 16, and the rigidity in directions other than the x-axis direction and the y-axis direction can be increased. The robot arm 5 can be made difficult to move in a direction other than the x-axis direction and the y-axis direction by the human hand 16. Thereby, when it is desired to correct only the x-axis component and the y-axis component of the robot arm 5, it is possible to prevent the z-axis component of the robot arm 5 from being erroneously corrected. Further, during the correction of the robot arm 5 in the x-axis direction and the y-axis direction, the correction operation type determination unit 23 causes the suction strength of the z-axis component or the force applied to the work surface to be weaker than the operation before the correction or It can also be made smaller (specifically about half). Alternatively, a command can be issued from the correction operation type determination unit 23 to the control parameter management unit 21 so as to stop the suction or force control. Specifically, the 6th to 17th bits of the flag of the operation database 17 are set to “0” by the correction operation type determination unit 23. As a result, during the correction by moving the robot arm 5 in the x-axis direction and the y-axis direction, force is applied to the robot arm 5 to damage the device 6 or accidentally suck in anything other than dust. Can be prevented.
 上述のように、人の手16でロボットアーム5を把持して、作業面と水平な方向へ力をかけてロボットアーム5をΔx分及びΔy分だけx軸方向及びy軸方向に移動させた場合に、Δxの値及びΔyの値が、制御部22と制御パラメータ管理部21とを経由して、動作補正部20に送信される。 As described above, the robot arm 5 is grasped by the human hand 16 and the robot arm 5 is moved in the x-axis direction and the y-axis direction by Δx and Δy by applying a force in a direction parallel to the work surface. In this case, the value of Δx and the value of Δy are transmitted to the operation correction unit 20 via the control unit 22 and the control parameter management unit 21.
 動作補正部20では、選択された作業IDの動作情報の全てのx座標の値からΔxを減じ、さらに、全てのy座標の値から、Δyを減じて補正した動作情報を、動作補正部20から制御パラメータ管理部21へ送信する。制御パラメータ管理部21は、Δx分及びΔy分の補正した座標でロボットアーム5が動作するように制御部22へ指示する。これにより、図12Dのような動作に補正される。次に、Δx及びΔy分だけ減じた動作情報を、動作記憶部15で動作データベース17に記憶する。 The motion correction unit 20 subtracts Δx from all the x coordinate values of the motion information of the selected work ID, and further subtracts Δy from all the y coordinate values to correct the motion information corrected by the motion correction unit 20. To the control parameter management unit 21. The control parameter management unit 21 instructs the control unit 22 to operate the robot arm 5 with the corrected coordinates for Δx and Δy. Thereby, it correct | amends to operation | movement like FIG. 12D. Next, the operation information reduced by Δx and Δy is stored in the operation database 17 by the operation storage unit 15.
 次に、図32Bのように、例えば、機器6上を作業中に、機器6に設置された突起部分6aを作業させる場合は、人の手16でロボットアーム5を直接把持して、作業面に対して垂直方向に移動するように作業面に垂直に力をロボットアーム5にかける。 Next, as shown in FIG. 32B, for example, when working on the protruding portion 6 a installed on the device 6 while working on the device 6, the robot arm 5 is directly gripped by a human hand 16, A force is applied to the robot arm 5 perpendicular to the work surface so as to move in a direction perpendicular to the robot arm 5.
 補正動作種別決定部23により、情報取得部100でそれぞれ取得された、人の手16がロボットアーム5にかけた力と動作データベース17の情報とにより、図14のフローチャートに示した補正種別推定処理で補正の種別を推定して決定する。ここでは、人の手16でロボットアーム5に作業面と垂直な方向に力をかけてロボットアーム5をある閾値以上移動させているので、ステップS19において、補正の種別として「作業面の垂直方向の移動」の種別であると補正動作種別決定部23で決定する。 In the correction type estimation process shown in the flowchart of FIG. 14 based on the force applied to the robot arm 5 by the human hand 16 and the information in the action database 17 respectively acquired by the information acquisition part 100 by the correction action type determination part 23. The type of correction is estimated and determined. Here, since the robot arm 5 is moved by a human hand 16 in a direction perpendicular to the work surface by moving the robot arm 5 by a threshold value or more, in step S19, the correction type is “vertical direction of the work surface”. Is determined by the correction operation type determination unit 23.
 力ハイブリッドインピーダンス制御モードにより、位置制御モードでロボットアーム5を移動させながら、インピーダンス制御モードにより、人の手16の力を力検出部53で検出してロボットアーム5に人の手16で力をかけた方向にロボットアーム5をz軸方向に移動させて、図32Cのように掃除位置を補正することができる。 While the robot arm 5 is moved in the position control mode by the force hybrid impedance control mode, the force of the human hand 16 is detected by the force detection unit 53 by the impedance control mode and the force is applied to the robot arm 5 by the human hand 16. The cleaning position can be corrected as shown in FIG. 32C by moving the robot arm 5 in the z-axis direction in the applied direction.
 なお、この例では、z軸の方向にのみ動作を補正したいので、補正動作種別決定部23で補正の種別が決定されたタイミングで、補正動作種別決定部23により、図6の2ビット目を「1」に設定するとともに、それ以外のビットを「0」に設定して、補正動作種別決定部23から制御パラメータ管理部21へ指令を出すことで、z軸方向以外の移動ができないように設定することができる。さらに、インピーダンス制御モード時の機械インピーダンス設定値を補正動作種別決定部23で変更して補正動作種別決定部23から制御パラメータ管理部21へ指令を出すことで、z軸方向の剛性を他の方向の剛性よりも低くして、人の手16でロボットアーム5をz軸方向に動かしやすくし、z軸方向以外の剛性を高くして、人の手16でロボットアーム5をz軸方向以外の方向に動かしにくくするようにすることができる。 In this example, since it is desired to correct the operation only in the z-axis direction, the correction operation type determination unit 23 performs the second bit of FIG. 6 at the timing when the correction type is determined by the correction operation type determination unit 23. By setting “1” and setting the other bits to “0” and issuing a command from the correction operation type determination unit 23 to the control parameter management unit 21, movement other than in the z-axis direction cannot be performed. Can be set. Further, by changing the mechanical impedance set value in the impedance control mode by the correction operation type determination unit 23 and issuing a command from the correction operation type determination unit 23 to the control parameter management unit 21, the rigidity in the z-axis direction is changed to another direction. The rigidity of the robot arm 5 is made easier to move in the z-axis direction with the human hand 16 and the rigidity other than in the z-axis direction is increased, and the robot arm 5 is moved in the direction other than the z-axis direction with the human hand 16. It can be made difficult to move in the direction.
 また、ロボットアーム5のz軸方向の動作を補正する際に、補正動作種別決定部23により、z軸成分の吸引の強さ若しくは作業面にかける力を、補正前の動作時より弱く若しくは小さく(具体的には半分程度に)することもできる。又は、吸引又は力制御を停止するよう、補正動作種別決定部23から制御パラメータ管理部21へ指令を出すこともできる。具体的には、動作データベース17のフラグの6~17ビット目を「0」に補正動作種別決定部23で設定する。これにより、z軸方向にロボットアーム5を移動させている最中に、ロボットアーム5に力をかけたり吸引することで機器6を傷つけたり、塵以外のものを誤って吸い込むことを防ぐことができる。 Further, when correcting the movement of the robot arm 5 in the z-axis direction, the correction action type determination unit 23 causes the suction strength of the z-axis component or the force applied to the work surface to be weaker or smaller than that before the correction. (Specifically, about half). Alternatively, a command can be issued from the correction operation type determination unit 23 to the control parameter management unit 21 so as to stop the suction or force control. Specifically, the 6th to 17th bits of the flag of the operation database 17 are set to “0” by the correction operation type determination unit 23. This prevents the robot arm 5 from being damaged by applying force or suction to the robot arm 5 while moving the robot arm 5 in the z-axis direction, or accidentally sucking in anything other than dust. it can.
 上述のように、人の手16でロボットアーム5を把持して、作業面と垂直な方向へ力をかけてロボットアーム5をΔz分だけz軸方向に移動させた場合に、Δzの値が、制御部22と制御パラメータ管理部21とを経由して、動作補正部20に送信される。 As described above, when the robot arm 5 is gripped by a human hand 16 and a force is applied in a direction perpendicular to the work surface to move the robot arm 5 in the z-axis direction by Δz, the value of Δz is Then, the data is transmitted to the operation correction unit 20 via the control unit 22 and the control parameter management unit 21.
 動作補正部20では、選択された作業IDの動作情報の全てのz座標の値からΔzを減じて補正した動作情報を、動作補正部20から制御パラメータ管理部21へ送信する。制御パラメータ管理部21は、Δz分の補正した座標でロボットアーム5が動作するように制御部22へ指示する。これにより、図32Cのような動作に補正される。次に、Δz分減じた動作情報を、動作記憶部15で動作データベース17に記憶する。 The motion correction unit 20 transmits motion information corrected by subtracting Δz from all z coordinate values of the motion information of the selected work ID from the motion correction unit 20 to the control parameter management unit 21. The control parameter management unit 21 instructs the control unit 22 to operate the robot arm 5 with the corrected coordinates corresponding to Δz. This corrects the operation as shown in FIG. 32C. Next, the motion information reduced by Δz is stored in the motion database 17 by the motion storage unit 15.
 図30Bのように、例えば、ロボットアーム5の吸引ノズル9又はモップ10の長手方向を変更させて掃除させる場合は、図30Cのように、人の手16でロボットアーム5を直接把持して、長手方向を変更したい方向にロボットアーム5を移動させる。 As shown in FIG. 30B, for example, when the suction nozzle 9 or the mop 10 of the robot arm 5 is changed in length and cleaned, the robot arm 5 is directly gripped by a human hand 16 as shown in FIG. 30C. The robot arm 5 is moved in the direction in which the longitudinal direction is desired to be changed.
 補正動作種別決定部23により、情報取得部100でそれぞれ取得された、人の手16がロボットアーム5にかけた力と動作データベース17の情報とにより、図14のフローチャートに示した補正種別推定処理で補正の種別を推定して決定する。ここでは、人の手16でロボットアーム5に掃除部9,10の長手方向を変更したい方向に移動させようと力をかけているので、ステップS9において、補正の種別として「方向(姿勢)の変更」の種別であると補正動作種別決定部23で決定する。 In the correction type estimation process shown in the flowchart of FIG. 14 based on the force applied to the robot arm 5 by the human hand 16 and the information in the action database 17 respectively acquired by the information acquisition part 100 by the correction action type determination part 23. The type of correction is estimated and determined. Here, since force is applied to the robot arm 5 to move the longitudinal direction of the cleaning units 9 and 10 in the direction to be changed by the human hand 16, in step S9, the correction type “direction (posture)” is selected. The correction operation type determination unit 23 determines that the type is “change”.
 力ハイブリッドインピーダンス制御モードにより、位置制御モードでロボットアーム5を移動させながら、インピーダンス制御モードにより、人の手16でロボットアーム5にかけた力を力検出部53で検出して、人の手16でロボットアーム5に力をかけた方向に、ロボットアーム5をφ軸方向に回転させて、図30Dのように掃除方向を補正することができる。
なお、この例では、φ軸の方向にのみ動作を補正したいので、補正動作種別決定部23で補正の種別が決定されたタイミングで、補正動作種別決定部23により、図6の補正パラメータフラグの3ビット目を「1」に設定するとともに、それ以外のビットを「0」に設定して、補正動作種別決定部23から制御パラメータ管理部21へ指令を出す。これにより、φ軸方向以外の移動ができないように補正動作種別決定部23で設定することができる。さらに、インピーダンス制御モード時の機械インピーダンス設定値を補正動作種別決定部23で変更して補正動作種別決定部23から制御パラメータ管理部21へ指令を出すことで、φ軸方向の剛性を他の方向の剛性より低くして、人の手16でロボットアーム5をφ軸方向に動かしやすくし、φ軸方向以外の剛性を高くして、人の手16でロボットアーム5をφ軸方向以外の方向に動かしにくくするようにすることができる。
While the robot arm 5 is moved in the position control mode by the force hybrid impedance control mode, the force applied to the robot arm 5 by the human hand 16 is detected by the force detection unit 53 by the impedance control mode. The cleaning direction can be corrected as shown in FIG. 30D by rotating the robot arm 5 in the φ axis direction in the direction in which force is applied to the robot arm 5.
In this example, since it is desired to correct the operation only in the direction of the φ axis, the correction operation type determination unit 23 sets the correction parameter flag in FIG. 6 at the timing when the correction type is determined by the correction operation type determination unit 23. The third bit is set to “1” and the other bits are set to “0”, and a command is issued from the correction operation type determination unit 23 to the control parameter management unit 21. Accordingly, the correction operation type determination unit 23 can set the movement other than the direction of the φ axis so that the movement is not possible. Further, the mechanical impedance set value in the impedance control mode is changed by the correction operation type determination unit 23, and a command is issued from the correction operation type determination unit 23 to the control parameter management unit 21, so that the rigidity in the φ-axis direction is changed to another direction. The rigidity of the robot arm 5 is made easier to move in the φ-axis direction by the human hand 16 and the rigidity other than the φ-axis direction is increased, and the robot arm 5 is moved in the direction other than the φ-axis direction by the human hand 16. It can be made difficult to move.
 また、ロボットアーム5のφ軸方向の補正中に、補正動作種別決定部23により、z軸成分の吸引の強さ若しくは作業面にかける力を、補正前の動作時より弱く若しくは小さく(具体的には半分程度に)することができる。又は、吸引又は力制御を停止するよう、補正動作種別決定部23から制御パラメータ管理部21へ指令を出すこともできる。具体的には、動作データベース17のフラグの6~17ビット目を「0」に補正動作種別決定部23で設定する。これにより、φ軸方向に移動させている最中に、ロボットアーム5に力をかけて機器6を傷つけたり、塵以外のものを誤って吸引することを防ぐことができる。 Further, during the correction of the robot arm 5 in the φ-axis direction, the correction operation type determination unit 23 causes the strength of suction of the z-axis component or the force applied to the work surface to be weaker or smaller than the operation before the correction (specifically Can be halved). Alternatively, a command can be issued from the correction operation type determination unit 23 to the control parameter management unit 21 so as to stop the suction or force control. Specifically, the 6th to 17th bits of the flag of the operation database 17 are set to “0” by the correction operation type determination unit 23. Thereby, it is possible to prevent the device 6 from being damaged by applying a force to the robot arm 5 while moving in the φ-axis direction, or accidentally sucking anything other than dust.
 上述のように、人の手16でロボットアーム5を把持して、作業面と垂直な方向へ力をかけてロボットアーム5をΔφ分だけφ軸方向に回転させた場合に、Δφの値が、制御部22と制御パラメータ管理部21とを経由して、動作補正部20に送信される。 As described above, when the robot arm 5 is gripped by a human hand 16 and a force is applied in a direction perpendicular to the work surface to rotate the robot arm 5 in the φ axis direction by Δφ, the value of Δφ is Then, the data is transmitted to the operation correction unit 20 via the control unit 22 and the control parameter management unit 21.
 動作補正部20では、選択された作業IDの動作情報の全てのφ座標の値からΔφを減じて補正した動作情報を、動作補正部20から制御パラメータ管理部21へ送信する。制御パラメータ管理部21は、Δφ分の補正した座標でロボットアーム5が動作するように制御部22へ指示する。これにより、図30Dのような動作に補正される。次に、Δφ分だけ減じた動作情報を、動作記憶部15で動作データベース17に記憶する。 The motion correction unit 20 transmits the motion information corrected by subtracting Δφ from all the φ coordinate values of the motion information of the selected work ID from the motion correction unit 20 to the control parameter management unit 21. The control parameter management unit 21 instructs the control unit 22 to operate the robot arm 5 with the corrected coordinates corresponding to Δφ. This corrects the operation as shown in FIG. 30D. Next, the operation information reduced by Δφ is stored in the operation database 17 in the operation storage unit 15.
 以上により、動作補正部20は、動作データベース17の位置と姿勢と時間とにより、力ハイブリッドインピーダンス制御モードで動作している状態で、人の手16でロボットアーム5に力をかけることで、生成された位置を方向別に補正することができるようになる。 As described above, the motion correction unit 20 is generated by applying force to the robot arm 5 with the human hand 16 while operating in the force hybrid impedance control mode according to the position, posture, and time of the motion database 17. The corrected position can be corrected for each direction.
 次に、図27Bのように、拭き掃除時の作業面に対する力を変更する場合は、人の手16でロボットアーム5を直接把持して、作業面に対して垂直方向に力をロボットアーム5にかける。 Next, as shown in FIG. 27B, when changing the force on the work surface at the time of wiping and cleaning, the robot arm 5 is directly gripped by a human hand 16 and the force is applied to the robot arm 5 in a direction perpendicular to the work surface. Call.
 補正動作種別決定部23により、情報取得部100でそれぞれ取得された、人の手16がロボットアーム5にかけた力と動作データベース17の情報とにより、図14のフローチャートに示した補正種別推定処理で補正の種別を推定して決定する。ここでは、人の手16で作業面と垂直な方向に力をロボットアーム5にかけて、ロボットアーム5をある閾値以上移動させていないので、ステップS17において、補正の種別として「力の補正」の種別であると補正動作種別決定部23で決定する。 In the correction type estimation process shown in the flowchart of FIG. 14 based on the force applied to the robot arm 5 by the human hand 16 and the information in the action database 17 respectively acquired by the information acquisition part 100 by the correction action type determination part 23. The type of correction is estimated and determined. Here, since force is applied to the robot arm 5 in the direction perpendicular to the work surface by the human hand 16 and the robot arm 5 is not moved beyond a certain threshold, the type of “force correction” is selected as the type of correction in step S17. Is determined by the correction operation type determination unit 23.
 補正動作種別決定部23で補正の種別が「力の補正」であると決定したタイミングで、力ハイブリッドインピーダンス制御モードから高剛性位置制御モードで動作するよう補正動作種別決定部23から制御パラメータ管理部21へ指令を出す。補正動作種別決定部23から制御パラメータ管理部21への指令時に、高剛性位置制御モードでは、方向別に位置制御時の高剛性を補正動作種別決定部23で設定することができるため、例えば図4の動作データベース17の作業ID「2」でかつ動作ID「1」の動作のフラグは、0、1、8ビットが「1」に設定されているので、z軸方向は力制御モードで動作し、その他の方向はハイブリッドインピーダンス制御モードで動作するため、z軸方向のみ高剛性位置制御モードで動作し、その他の方向はハイブリッドインピーダンス制御モードで動作するよう、補正動作種別決定部23から制御パラメータ管理部21へ指令を出す。 At the timing when the correction operation type determination unit 23 determines that the correction type is “force correction”, the correction operation type determination unit 23 controls the control parameter management unit to operate in the high-rigidity position control mode from the force hybrid impedance control mode. A command is issued to 21. In the high-rigidity position control mode, the high-rigidity at the time of position control can be set in the high-rigidity position control mode by the correction-operation-type determining unit 23 at the time of command from the correction operation type determining unit 23 to the control parameter management unit 21. Since the operation flag of operation ID “2” and operation ID “1” in the operation database 17 is set to “1” in the 0, 1, and 8 bits, the z-axis direction operates in the force control mode. Since the other directions operate in the hybrid impedance control mode, the control parameter management unit 23 controls the control parameters so that only the z-axis direction operates in the high-rigidity position control mode and the other directions operate in the hybrid impedance control mode. A command is issued to the unit 21.
 次に、図27Bに示すように、ロボットアーム5が拭き掃除中に、汚れのひどい部分でロボットアーム5が動作している最中に、人の手16でロボットアーム5を直接把持して、作業面を強めに拭き掃除をしたい場合には、人の手16で作業面に向かってロボットアーム5(例えば、ロボットアーム5のモップ10)に下方向に力をかける。高剛性位置制御モードでは、掃除時のハイブリッドインピーダンス制御モードのうち、方向別設定された位置制御モードを、さらに高剛性にしたモードで、かつ、位置誤差補償部56でのゲインを大きく(具体的には、掃除時の位置制御モードの2倍程度に)することで実現し、人の手16でロボットアーム5に力をかけると、ロボットアーム5を容易に移動させないようにすることができ、人の手16でロボットアーム5にかけた力を力検出部53で検出することができる。制御部22の力検出部53で検出された力を動作補正部20に通知する。動作補正部20に通知された力を、動作記憶部15で動作データベース17に記憶することで、汚れている部分のみを強めに拭き掃除するよう動作を補正することができる。 Next, as shown in FIG. 27B, while the robot arm 5 is being wiped and cleaned, the robot arm 5 is directly gripped by a human hand 16 while the robot arm 5 is operating in a heavily contaminated part. When it is desired to wipe the surface with a strong surface, a human hand 16 applies a downward force to the robot arm 5 (for example, the mop 10 of the robot arm 5) toward the work surface. The high-rigidity position control mode is a mode in which the position control mode set for each direction among the hybrid impedance control modes at the time of cleaning is further increased in rigidity, and the gain in the position error compensation unit 56 is increased (specifically In this case, the robot arm 5 can be prevented from being easily moved by applying force to the robot arm 5 with a human hand 16. The force applied to the robot arm 5 by the human hand 16 can be detected by the force detection unit 53. The force detected by the force detection unit 53 of the control unit 22 is notified to the operation correction unit 20. By storing the force notified to the motion correction unit 20 in the motion database 17 in the motion storage unit 15, the motion can be corrected so as to strongly wipe only the dirty part.
 人が補正を終了したい場合は、ロボットアーム5を把持して力をロボットアーム5にかけることを止める。 When the person wants to finish the correction, the robot arm 5 is gripped to stop applying force to the robot arm 5.
 人の手16でロボットアーム5に力をかけない場合は、図14のステップS2により、力の全ての成分が前記閾値以下になるので、補正動作種別決定部23により、補正の種別として「補正なし」であると決定する(図14のステップS20)。動作補正部20は、「補正なし」の情報を受けて、高剛性の位置制御モードからハイブリッドインピーダンス制御モードで制御するよう、補正動作種別決定部23から制御パラメータ管理部21に指令を出す。これにより、補正後の動作データベース17で掃除を行う。 When no force is applied to the robot arm 5 with the human hand 16, all the components of the force fall below the threshold value in step S2 in FIG. "None" (step S20 in FIG. 14). The motion correction unit 20 receives the information of “no correction” and issues a command from the correction operation type determination unit 23 to the control parameter management unit 21 so as to control from the highly rigid position control mode to the hybrid impedance control mode. As a result, the corrected operation database 17 is cleaned.
 以上により、動作補正部20は、動作データベース17の力の情報により、ハイブリッドインピーダンス制御モードで動作している状態で、人の手16が力をかけることで、補正された力で掃除するように補正することができるようになる。 As described above, the motion correction unit 20 uses the force information in the motion database 17 to perform cleaning with the corrected force when the human hand 16 applies force while operating in the hybrid impedance control mode. It becomes possible to correct.
 次に、図28Cのように、作業面に対する吸引力を変更する場合は、人の手16でロボットアーム5を直接把持して、作業面に対して垂直方向に力をロボットアーム5にかける。 Next, as shown in FIG. 28C, when the suction force to the work surface is changed, the robot arm 5 is directly gripped by a human hand 16 and a force is applied to the robot arm 5 in a direction perpendicular to the work surface.
 補正動作種別決定部23により、情報取得部100でそれぞれ取得された、人の手16でロボットアーム5にかけた力と動作データベース17の情報とにより、図14のフローチャートに示した補正種別推定処理で補正の種別を推定して決定する。ここでは、人の手16で作業面と垂直な方向に力をロボットアーム5にかけて、ロボットアーム5をある閾値以上移動させていないので、ステップS18において、補正の種別として、「吸引力の補正」の種別であると補正動作種別決定部23で決定する。 In the correction type estimation process shown in the flowchart of FIG. 14 based on the force applied to the robot arm 5 by the human hand 16 and the information in the action database 17 respectively acquired by the correction action type determination part 23 by the information acquisition part 100. The type of correction is estimated and determined. Here, since a force is applied to the robot arm 5 by the human hand 16 in a direction perpendicular to the work surface and the robot arm 5 is not moved beyond a certain threshold value, in step S18, the correction type is “correction of suction force”. Is determined by the correction operation type determination unit 23.
 補正動作種別決定部23により補正の種別として「吸引力の補正」であると決定したタイミングで、力ハイブリッドインピーダンス制御モードから高剛性位置制御モードで動作するよう補正動作種別決定部23から制御パラメータ管理部21へ指令を出す。補正動作種別決定部23から制御パラメータ管理部21への指令時に、高剛性位置制御モードでは、方向別に位置制御時の高剛性を補正動作種別決定部23で設定することができるため、例えば図4の動作データベース17の作業ID「1」でかつ動作ID「1」の動作のフラグは、0、1、14ビットが「1」に設定されているので、z軸方向は吸引制御モードで動作し、その他の方向はハイブリッドインピーダンス制御モードで動作するため、z軸方向のみ高剛性位置制御モードで動作し、その他の方向はハイブリッドインピーダンス制御モードで動作するように補正動作種別決定部23から制御パラメータ管理部21へ指令を出す。 Control parameter management from the correction operation type determination unit 23 to operate from the force hybrid impedance control mode to the high-rigidity position control mode at the timing determined by the correction operation type determination unit 23 as “correction of attraction force” as the correction type. A command is issued to the unit 21. In the high-rigidity position control mode, the high-rigidity at the time of position control can be set in the high-rigidity position control mode by the correction-operation-type determining unit 23 at the time of command from the correction operation type determining unit 23 to the control parameter management unit 21. Since the operation flag of the operation database 17 with the operation ID “1” and the operation ID “1” is set to “1” in the 0, 1, and 14 bits, the z-axis direction operates in the suction control mode. Since the other directions operate in the hybrid impedance control mode, the control parameter management unit 23 controls the control parameters so that only the z-axis direction operates in the high-rigidity position control mode and the other directions operate in the hybrid impedance control mode. A command is issued to the unit 21.
 次に、図28Bに示すように、ロボットアーム5が吸引掃除中に、汚れのひどい部分でロボットアーム5が動作している最中に、人の手16でロボットアーム5を直接把持して、作業面を強めに吸引したい場合には、人の手16で作業面に向かってロボットアーム5(例えば、ロボットアーム5のモップ10)に下方向に力をかける。高剛性位置制御モードでは、通常の位置制御モードをさらに高剛性にしたモードで、かつ、位置誤差補償部56でのゲインを大きくすることで実現し、人の手16でロボットアーム5に力をかけると、ロボットアーム5を容易に移動させないようにすることができ、人の手16でロボットアーム5にかけた力を力検出部53で検出することができる。制御部22の力検出部53で検出された力を制御パラメータ管理部21を介して動作補正部20に通知し、動作補正部20は、動作データベース17のz軸方向の吸引力を、動作データベース17(又は、動作補正部20の記憶部)内に記憶された図19に示す変換表を使用して、力から吸引力に変換する。例えば、人がロボットアーム5にかけた力が4.5[N]の場合には、変換表より、力が4~5[N]に対応して吸引力が「4」と変換されるため、吸引力「4」を動作記憶部15で動作データベース17に記憶することで、汚れている部分のみを強めに吸引して掃除するよう動作を補正することができる。人が補正を終了したい場合は、ロボットアーム5を人の手16で把持して人の手16でロボットアーム5に力をかけることを止めればよい。すなわち、人の手16でロボットアーム5に力をかけない場合は、図14のステップS2により、力の全ての成分が閾値以下になるので、補正動作種別決定部23により、補正の種別として「補正なし」であると決定する(図14のステップS20)。動作補正部20は、補正の種別として「補正なし」であるとの決定を受けて、高剛性の位置制御モードからハイブリッドインピーダンス制御モードで制御するよう、制御パラメータ管理部21に指令を出す。これにより、補正後の動作データベース17で掃除を行う。 Next, as shown in FIG. 28B, while the robot arm 5 is being suction-cleaned, the robot arm 5 is directly gripped by a human hand 16 while the robot arm 5 is operating in a heavily contaminated part, When it is desired to suck the work surface strongly, a human hand 16 applies a downward force to the robot arm 5 (for example, the mop 10 of the robot arm 5) toward the work surface. The high-rigidity position control mode is a mode in which the normal position control mode is further increased in rigidity, and is realized by increasing the gain in the position error compensation unit 56, and force is applied to the robot arm 5 with the human hand 16. When applied, the robot arm 5 can be prevented from moving easily, and the force applied to the robot arm 5 by the human hand 16 can be detected by the force detection unit 53. The force detected by the force detection unit 53 of the control unit 22 is notified to the motion correction unit 20 via the control parameter management unit 21, and the motion correction unit 20 uses the suction force in the z-axis direction of the motion database 17 as the motion database. Using the conversion table shown in FIG. 19 stored in 17 (or the storage unit of the operation correction unit 20), the force is converted into the suction force. For example, when the force applied to the robot arm 5 by the person is 4.5 [N], the suction force is converted to “4” corresponding to the force 4 to 5 [N] from the conversion table. By storing the suction force “4” in the operation database 17 in the operation storage unit 15, it is possible to correct the operation so that only the dirty portion is strongly suctioned and cleaned. When a person wants to end the correction, the robot arm 5 may be held by the person's hand 16 and the force applied to the robot arm 5 by the person's hand 16 may be stopped. That is, when no force is applied to the robot arm 5 with the human hand 16, all components of the force are equal to or less than the threshold values in step S <b> 2 of FIG. 14, so that the correction operation type determination unit 23 sets “ "No correction" is determined (step S20 in FIG. 14). In response to the determination that the correction type is “no correction”, the motion correction unit 20 issues a command to the control parameter management unit 21 to control from the high-rigidity position control mode in the hybrid impedance control mode. As a result, the corrected operation database 17 is cleaned.
 以上により、動作補正部20は、動作データベース17の吸引力により、ハイブリッドインピーダンス制御モードで動作している状態で、人の手16でロボットアーム5に力をかけることで、補正された吸引力で掃除するように補正することができるようになる。 As described above, the motion correction unit 20 applies the force to the robot arm 5 with the human hand 16 while operating in the hybrid impedance control mode by the suction force of the motion database 17, thereby correcting the suction force. It can be corrected to clean.
 次に、図29Dのように、掃除の速度を変更する場合は、人の手16でロボットアーム5を直接把持して、加速したい場合は、掃除の進行方向と同じ向きに人の手16でロボットアーム5に力をかけ、減速したい場合は、掃除の進行方向に逆らう向きに人の手16でロボットアーム5に力をかける。その際に、ロボットアーム5の手先位置の速度を変えても良いが、位置は、前記ある閾値以上動かさないように人の手16でロボットアーム5に力をかける。 Next, as shown in FIG. 29D, when the cleaning speed is changed, the robot arm 5 is directly held by the person's hand 16 and accelerated. In order to apply a force to the robot arm 5 and decelerate, the force is applied to the robot arm 5 with a human hand 16 in the direction opposite to the direction of cleaning. At this time, the speed of the hand position of the robot arm 5 may be changed, but the force is applied to the robot arm 5 with the human hand 16 so as not to move the position beyond the certain threshold.
 補正動作種別決定部23により、情報取得部100でそれぞれ取得された、人の手16でロボットアーム5にかけた力と動作データベース17の情報とにより、図14のフローチャートに示した補正種別推定処理で補正の種別を推定して決定する。ここでは、人の手16で作業面に水平な方向に力をロボットアーム5にかけて、ロボットアーム5を前記ある閾値以上移動させていないので、図14のステップS15により、補正の種別として、作業面に水平な方向の「速度」の種別であると補正動作種別決定部23で決定する。 In the correction type estimation process shown in the flowchart of FIG. 14 based on the force applied to the robot arm 5 by the human hand 16 and the information in the action database 17 respectively acquired by the correction action type determination part 23 by the information acquisition part 100. The type of correction is estimated and determined. Here, since a force is applied to the robot arm 5 in the direction horizontal to the work surface with the human hand 16 and the robot arm 5 is not moved more than the certain threshold value, the work surface is selected as the correction type in step S15 of FIG. The correction operation type determination unit 23 determines that the type is “speed” in the horizontal direction.
 ハイブリッドインピーダンス制御モードにより、位置制御モードでロボットアーム5を移動させながら、インピーダンス制御モードにより、人の手16でロボットアーム5にかけた力を力検出部53で検出して、人の手16でロボットアーム5に力をかけた方向に、ロボットアーム5をx軸方向及びy軸方向に移動させる。動作データベース17で例えば作業IDと動作IDとで示されたロボットアーム5の位置(x、y、z)から、次の動作IDのロボットアーム5の位置(x、y、z)まで移動するのにかかる時間をtとすると、ロボットアーム5の速度を人の手16の力で変更した場合(図29C参照)には、すなわち、位置(x、y、z)から位置(x、y、z)までに移動するのにかかる時間がtからtに変更された場合には、時間tの値が、制御部22と制御パラメータ管理部21とを経由して、動作補正部20に送信される。動作補正部20では、選択された作業IDの動作情報について、tの時間からtの時間に変更して、動作補正部20から制御パラメータ管理部21へ送信する。制御パラメータ管理部21において、補正した時間であるtで動作するように制御パラメータ管理部21から制御部22へ指示する。 While the robot arm 5 is moved in the position control mode by the hybrid impedance control mode, the force applied to the robot arm 5 by the human hand 16 is detected by the force detection unit 53 by the impedance control mode, and the robot is moved by the human hand 16. The robot arm 5 is moved in the x-axis direction and the y-axis direction in the direction in which a force is applied to the arm 5. From the position of the robot arm 5 shown in the operation database 17, for example, work ID operation ID as (x 1, y 2, z 1), the position of the robot arm 5 of the next operation ID (x 2, y 2, z when the time to move to 2) and t 1, the case of changing the speed of the robot arm 5 by the force of the human hand 16 (see FIG. 29C), i.e., the position (x 1, y 2, z 1 ) to the position (x 2 , y 2 , z 2 ), when the time taken to move from t 1 to t 2 is changed, the value of time t 2 is the control unit 22 and control parameter management. The data is transmitted to the operation correction unit 20 via the unit 21. The motion correction unit 20 changes the motion information of the selected work ID from the time t 1 to the time t 2 and transmits the motion information from the motion correction unit 20 to the control parameter management unit 21. In the control parameter managing unit 21 instructs the control parameter managing unit 21 to operate in t 2 is corrected time to the control unit 22.
 これにより、図29Dのような動作に補正される。次に、時間tを、動作記憶部15で動作データベース17に記憶する。 This corrects the operation as shown in FIG. 29D. Next, the time t 2 is stored in the operation database 17 by the operation storage unit 15.
 以上により、動作補正部20は、動作データベース17の位置と姿勢と時間との情報により、力ハイブリッドインピーダンス制御モードで動作している状態で、人の手16でロボットアーム5に力をかけることで、ロボットアーム5の動作速度を補正することができるようになる。 As described above, the motion correction unit 20 applies the force to the robot arm 5 with the human hand 16 while operating in the force hybrid impedance control mode based on the information on the position, posture, and time of the motion database 17. The operation speed of the robot arm 5 can be corrected.
 図31に示すように、家事ロボット1に作業をして欲しくない領域RBを、ロボットアーム5を使って設定する場合を例にとって説明する。 As shown in FIG. 31, a case where an area RB that the housework robot 1 does not want to work is set using the robot arm 5 will be described as an example.
 人の手16で家事ロボット1の上部に配置されているデータ入力IF26(例えば操作盤26Aの電源ボタン26aなど)により電源を入れると、動作補正部20は、インピーダンス制御モードで動作するよう、制御パラメータ管理部21へ指令を出す。動作選択部29にて作業を選択していない状態で、図31に示すように、人16Aの手16がロボットアーム5(又は、掃除部9,10)を直接把持して、作業面に対して平行移動するようにロボットアーム5を移動させて、作業をして欲しくない領域RBの輪郭に沿って、ロボットアーム5を移動させる。図20Aは作業面を上方から見た図で、作業をして欲しくない領域RBを斜線の領域とすると、人の手16がロボットアーム5(又は、掃除部9,10)を移動させて、矢印のように、作業をして欲しくない領域RBの輪郭にロボットアーム5(又は、掃除部9,10)を沿わせて、移動させる。その際、ロボットアーム5の手先(ハンド30)に取り付けた吸引ノズル9(又は、モップ10)の上面の中央先端にマーク63が付与されており(図31、図20A及び図20B参照)、作業をして欲しくない方向にマーク63を向けて移動させる。 When the power is turned on by a human hand 16 using a data input IF 26 (for example, the power button 26a of the operation panel 26A) disposed on the upper part of the housework robot 1, the operation correction unit 20 is controlled to operate in the impedance control mode. A command is issued to the parameter management unit 21. In a state where the operation is not selected by the motion selection unit 29, as shown in FIG. 31, the hand 16 of the person 16A directly grips the robot arm 5 (or the cleaning units 9 and 10) and touches the work surface. The robot arm 5 is moved so as to move in parallel, and the robot arm 5 is moved along the outline of the region RB that is not desired to be worked. FIG. 20A is a view of the work surface as viewed from above. If a region RB that is not desired to be worked is a hatched region, the human hand 16 moves the robot arm 5 (or the cleaning unit 9 or 10), As indicated by the arrow, the robot arm 5 (or the cleaning units 9 and 10) is moved along the outline of the region RB that is not desired to be worked. At that time, a mark 63 is given to the center tip of the upper surface of the suction nozzle 9 (or the mop 10) attached to the hand (hand 30) of the robot arm 5 (see FIGS. 31, 20A and 20B). And move the mark 63 in the direction that you do not want.
 補正動作種別決定部23により、図14に示した補正種別推定処理を実行して動作データベース17で動作していないと判定し(ステップS2,S3,S6)、さらに、人の手16でロボットアーム5にかけている力が作業面に水平であり、かつ、ある一定時間の水平方向の移動量が、前記ある閾値以上の場合は、ステップS8において、補正の種別として「作業をして欲しくない領域」の種別であると決定する。 The correction operation type determination unit 23 executes the correction type estimation process shown in FIG. 14 to determine that the operation database 17 is not operating (steps S2, S3, and S6). If the force applied to 5 is horizontal to the work surface and the amount of movement in the horizontal direction for a certain period of time is equal to or greater than the certain threshold value, in step S8, the “type of region that you do not want to work” is selected as the correction type. It is determined that it is a type.
 インピーダンス制御モードにより、人の手16でロボットアーム5にかけた力を力検出部53で検出して、人の手16でロボットアーム5に力をかけた方向に、ロボットアーム5をx軸方向及びy軸方向に移動させて、図20Aのように、位置(x、y)、位置(x、y)、位置(x、y)、位置(x、y)の順にロボットアーム5の吸引ノズル9を移動させると、これらの位置情報が、制御部22と制御パラメータ管理部21とを経由して、動作補正部20に送信される。動作補正部20は、その指令を受けて、これらの位置情報が作業不可領域RBの情報として、動作記憶部15により作業不可領域データベース28に記憶する。これらの4つの位置が作業不可領域RBの頂点の情報であることは、例えば、ある一定間隔で人が移動させたロボットアーム5の手先位置を取得して、取得した手先位置の座標をつなげて領域を生成し、それを作業不可領域RBとすることができる。補正動作種別決定方法設定部27で、どのような形の領域とするかを決定する機能を追加し、例えば、「矩形」と設定されている場合は、90度近くの角度で移動方向が変われば、その位置を頂点の情報として記憶し、「ランダム」と設定された場合は、ある一定間隔で人が移動させたロボットアーム5の手先位置を取得して、取得した手先位置の座標をつなげて生成し、それを作業不可領域RBとすることができる。 In the impedance control mode, the force applied to the robot arm 5 by the human hand 16 is detected by the force detection unit 53, and the robot arm 5 is moved in the x-axis direction and in the direction in which the force is applied to the robot arm 5 by the human hand 16. As shown in FIG. 20A, the position (x 1 , y 1 ), the position (x 2 , y 2 ), the position (x 3 , y 3 ), and the position (x 4 , y 4 ) are moved in the y-axis direction. When the suction nozzle 9 of the robot arm 5 is sequentially moved, these pieces of position information are transmitted to the operation correction unit 20 via the control unit 22 and the control parameter management unit 21. In response to the command, the motion correction unit 20 stores these pieces of position information as information on the work impossible region RB in the work unavailable region database 28 by the operation storage unit 15. The fact that these four positions are information on the apex of the work impossible area RB means that, for example, the hand position of the robot arm 5 moved by a person at a certain interval is acquired and the coordinates of the acquired hand position are connected. An area can be generated and used as an unworkable area RB. In the correction operation type determination method setting unit 27, a function for determining the shape of the region is added. For example, when “rectangular” is set, the moving direction is changed at an angle close to 90 degrees. For example, the position is stored as vertex information, and when “random” is set, the hand position of the robot arm 5 moved by a person at a certain interval is acquired, and the coordinates of the acquired hand position are connected. And can be used as an unworkable area RB.
 なお、この例では、x軸の方向及びy軸の方向にのみロボットアーム5の動作を補正したいので、補正動作種別決定部23で、補正の種別が決定されたタイミングで、図6の補正パラメータフラグの0,1ビット目を「1」に設定するとともに、その他のビットを「0」に設定して、補正動作種別決定部23から制御パラメータ管理部21へ指令を出すことで、ロボットアーム5がx軸方向及びy軸方向以外の軸方向への移動ができないように設定することができる。さらに、インピーダンス制御モード時の機械インピーダンス設定値を変更して補正動作種別決定部23から制御パラメータ管理部21へ指令を出すことで、x軸方向及びy軸方向の剛性を低くして、人の手16でロボットアーム5をx軸方向及びy軸方向に動かしやすくし、x軸方向及びy軸方向以外の軸方向の剛性を高くして、人の手16でロボットアーム5をx軸方向及びy軸方向以外の方向に動かしにくくするようにできる。 In this example, since it is desired to correct the motion of the robot arm 5 only in the x-axis direction and the y-axis direction, the correction parameter shown in FIG. 6 is displayed at the timing when the correction type is determined by the correction operation type determination unit 23. The robot arm 5 is set by setting the 0th and 1st bits of the flag to “1” and setting the other bits to “0” and issuing a command from the correction operation type determination unit 23 to the control parameter management unit 21. Can be set so as not to move in an axial direction other than the x-axis direction and the y-axis direction. Furthermore, by changing the mechanical impedance setting value in the impedance control mode and issuing a command from the correction operation type determination unit 23 to the control parameter management unit 21, the rigidity in the x-axis direction and the y-axis direction can be reduced, The hand 16 makes it easy to move the robot arm 5 in the x-axis direction and the y-axis direction, and increases the rigidity in the axial direction other than the x-axis direction and the y-axis direction. It can be made difficult to move in directions other than the y-axis direction.
 以上により、動作補正部20は、人の手16が力をかけることで、作業(例えば、掃除作業)をして欲しくない領域の設定を行うことができるようになる。 As described above, the motion correction unit 20 can set an area where the user's hand 16 does not want to perform work (for example, cleaning work) by applying force.
 表示部14には、図21に示すように、表示部14の画面を左右2画面14a,14bに分割して表示し、左側の画面14aに、動作データベース17で記述されたロボットアーム5の動作が映像若しくは写真若しくはテキストで表示される。さらに、右側の画面14bには、補正動作種別決定部23にて推定された補正の種別の情報を映像若しくは写真若しくはテキストで表示する。この図21の例では、人の手16で作業面に垂直に力をロボットアーム5にかけて、力のかけ具合を補正するような動作をすると、補正動作種別決定部23が、補正の種別として「力の補正」の種別であると決定したタイミングで、右側の画面14bに力の補正をしている映像と現在の力の強弱を表示する。 As shown in FIG. 21, the display unit 14 displays the screen of the display unit 14 divided into left and right two screens 14a and 14b, and the operation of the robot arm 5 described in the operation database 17 is displayed on the left screen 14a. Is displayed as video, photo or text. Further, the correction type information estimated by the correction operation type determination unit 23 is displayed on the screen 14b on the right side as video, photos, or text. In the example of FIG. 21, when a human hand 16 applies a force perpendicular to the work surface to the robot arm 5 and performs an operation to correct the force application, the correction operation type determination unit 23 sets “ At the timing determined to be the type of “force correction”, the image on which the force is corrected and the strength of the current force are displayed on the right screen 14b.
 なお、この例では、映像若しくは写真若しくはテキストとしたが、動作を説明する音声などでも良い。 In this example, video, photo, or text is used, but audio that explains the operation may be used.
 以上の動作補正部20と補正動作種別決定部23と動作選択部29と掃除動作記憶部15と動作データベース17と制御パラメータ管理部21の動作ステップ(すなわち、家事ロボット1を駆動開始してから掃除作業を開始するまでの間に行う、掃除作業及び掃除動作の設定処理)について、図24のフローチャートに基づいて説明する。 The operation steps of the operation correction unit 20, the correction operation type determination unit 23, the operation selection unit 29, the cleaning operation storage unit 15, the operation database 17, and the control parameter management unit 21 (that is, cleaning after the housework robot 1 starts to be driven). Cleaning work and cleaning operation setting processing performed until work is started will be described based on the flowchart of FIG.
 人の手16でデータ入力IF26により、家事ロボット1の電源をオンする(ステップS121)。 The power of the household robot 1 is turned on by the human hand 16 using the data input IF 26 (step S121).
 次いで、動作補正部20が、インピーダンス制御モードで制御するように制御パラメータ管理部21へ指令を出す(ステップS122)。 Next, the operation correction unit 20 issues a command to the control parameter management unit 21 to control in the impedance control mode (step S122).
 次に、作業不可領域RBの補正かどうか、を補正動作種別決定部23により判定する(ステップS130)。作業不可領域RBの補正であると補正動作種別決定部23により判定された場合は、動作補正部20にて補正を行い(ステップS133)、その補正の情報を動作記憶部15により動作データベース17に記憶する(ステップS134)。その後、ステップS123に進む。 Next, the correction operation type determination unit 23 determines whether or not the work impossible area RB is to be corrected (step S130). If the correction operation type determination unit 23 determines that the work impossible area RB is corrected, the operation correction unit 20 performs correction (step S133), and the correction information is stored in the operation database 17 by the operation storage unit 15. Store (step S134). Thereafter, the process proceeds to step S123.
 ステップS130で作業不可領域RBの補正ではないと補正動作種別決定部23により判定された場合に、又は、ステップS134を実行した後の場合に、ステップS123に進む。ステップS123では、動作選択部29により、人が、表示部14に表示された掃除作業の一覧から1つの掃除作業をデータ入力IF26を介して選択し、動作データベース17の進捗情報に、選択された現在の掃除作業を設定する(ステップS123)。 If it is determined in step S130 that the correction operation type determination unit 23 does not correct the work impossible area RB, or if step S134 is executed, the process proceeds to step S123. In step S123, the operation selecting unit 29 selects one cleaning operation from the cleaning operation list displayed on the display unit 14 through the data input IF 26, and the operation selection unit 29 selects the progress information in the operation database 17 as progress information. The current cleaning work is set (step S123).
 次いで、動作補正部20は、制御パラメータ管理部21へ力ハイブリッドインピーダンス制御モードで動作するよう指令を出し、人の手16でロボットアーム5を機器6などの作業面まで誘導し、データ入力IF26(例えば、掃除スイッチ26cのスタートボタン)にて、掃除作業開始の指令を行う(ステップS124)。 Next, the motion correction unit 20 instructs the control parameter management unit 21 to operate in the force hybrid impedance control mode, and guides the robot arm 5 to the work surface such as the device 6 with a human hand 16 to input the data input IF 26 ( For example, an instruction to start the cleaning operation is issued using the start button of the cleaning switch 26c (step S124).
 次いで、人が補正したい方向に力をかけると、補正動作種別決定部23により補正動作の種別を推定して決定する(ステップS125)。 Next, when a person applies a force in the direction to be corrected, the correction operation type determination unit 23 estimates and determines the type of the correction operation (step S125).
 次いで、ステップS125で、補正の種別として、作業面にかける力又は吸引力の種別であると補正動作種別決定部23で決定した場合は、作業面に垂直な方向に対して高剛性の位置制御モードで動作するよう、動作補正部20から制御パラメータ管理部21へ指令を出す(ステップS126,S127)。 Next, in step S125, when the correction operation type determination unit 23 determines that the type of correction is the type of force applied to the work surface or the type of suction force, highly rigid position control in the direction perpendicular to the work surface. A command is issued from the operation correction unit 20 to the control parameter management unit 21 so as to operate in the mode (steps S126 and S127).
 次いで、人の手16でロボットアーム5を把持して、補正したい方向に人の手16でロボットアーム5に力をかけることで、動作補正部20が動作情報を補正する(ステップS128)。 Next, the motion correction unit 20 corrects the motion information by holding the robot arm 5 with the human hand 16 and applying a force to the robot arm 5 with the human hand 16 in the direction to be corrected (step S128).
 一方、ステップS125で、補正の種別として作業面にかける力又は吸引力の種別以外の補正の種別であると決定した場合は、制御モードは力インピーダンス制御モードで変更せず、補正したい方向に人の手16でロボットアーム5に力をかけることで、動作補正部20が動作情報を補正する(ステップS126,S128)。 On the other hand, if it is determined in step S125 that the correction type is a correction type other than the force applied to the work surface or the suction force type, the control mode is not changed in the force impedance control mode, and the person in the direction to be corrected is selected. By applying force to the robot arm 5 with the hand 16, the motion correction unit 20 corrects the motion information (steps S 126 and S 128).
 次いで、ステップS128で補正された掃除動作情報は、動作記憶部15により、動作データベース17に記憶されて、一連の掃除作業及び掃除動作の設定処理を終了する(ステップS129)。 Next, the cleaning operation information corrected in step S128 is stored in the operation database 17 by the operation storage unit 15, and the series of cleaning work and cleaning operation setting processing ends (step S129).
 一方、ステップS125で、補正動作種別決定部23により、補正の種別として「補正なし」であると決定した場合は、一連の掃除作業及び掃除動作の設定処理を終了する(ステップS126,S131)。 On the other hand, if the correction operation type determination unit 23 determines in step S125 that the correction type is “no correction”, the series of cleaning work and cleaning operation setting processing ends (steps S126 and S131).
 掃除作業及び掃除動作の設定処理終了後は、設定された掃除作業及び掃除動作に基づき、家事ロボット1により掃除を行う。 After the setting process of the cleaning work and cleaning operation is completed, the housework robot 1 performs cleaning based on the set cleaning work and cleaning operation.
 以上の動作ステップS121~ステップS122、ステップS130、ステップS123、ステップS124、ステップS133~ステップS134、ステップS125~ステップS128、ステップS131により、力ハイブリッドインピーダンス制御で動作中に、ハイブリッドインピーダンス制御モード若しくは高剛性位置制御にて、掃除動作を補正することで、ロボットアーム5による掃除作業が実現する。 By the above operation steps S121 to S122, step S130, step S123, step S124, step S133 to step S134, step S125 to step S128, and step S131, the hybrid impedance control mode or the high rigidity can be obtained during the operation with the force hybrid impedance control. The cleaning operation by the robot arm 5 is realized by correcting the cleaning operation by the position control.
 また、補正動作種別決定部23により、複数の掃除動作をボタンなどを使わずに人の手16でロボットアーム5に力をかけるだけで、自動で切り替えて補正することが可能となる。 Further, the correction operation type determination unit 23 can automatically switch and correct a plurality of cleaning operations by simply applying force to the robot arm 5 with a human hand 16 without using a button or the like.
 さらに、補正動作種別決定部27により、ロボットアーム5の操作に慣れた人又は熟練した人は、一度の補正で2種類の補正を同時に行い、逆に、操作に不慣れな人は、一度に1種類の補正を行うことができる。 Furthermore, the correction operation type determination unit 27 allows a person who is accustomed to the operation of the robot arm 5 or a skilled person to perform two types of correction at the same time at one time. Types of corrections can be made.
 また、制御パラメータ管理部21と制御部22とを有することにより、補正動作の種別に応じて、ロボットアーム5の機械インピーダンス値を適宜設定することで、ロボットアーム5の補正方向に応じて、機械インピーダンス値を変更させて制御したり、補正中の吸引力又は力を弱めたり停止することができるので、掃除動作の補正中に、機器6を傷つけたり、塵以外のものを誤って吸い込むことを防ぐことができる。 Further, by including the control parameter management unit 21 and the control unit 22, the machine impedance value of the robot arm 5 is appropriately set according to the type of the correction operation, so that the machine arm according to the correction direction of the robot arm 5. Since it can be controlled by changing the impedance value, or the suction force or force being corrected can be weakened or stopped, the device 6 may be damaged or a thing other than dust may be accidentally sucked in during the correction of the cleaning operation. Can be prevented.
 なお、前記第1実施形態において、動作補正部20は、補正動作種別決定部23により、情報取得部100でそれぞれ取得された、人の手16でロボットアーム5にかけた力と動作データベース17の情報とにより、補正の種別の推定を行った後で、すぐに掃除動作の補正を行ったが、人の手16で誤ってロボットアーム5に力をかけて、人の意図しない補正の種別を選択してしまう事を防ぐために、補正動作種別決定部23で推定後、ある一定時間後に補正を開始しても良い。この場合、補正が始まるまでは、人は意図した補正種別を選択するまで、何度でも操作することができる。 In the first embodiment, the motion correction unit 20 includes the force applied to the robot arm 5 by the human hand 16 and the information in the motion database 17 respectively acquired by the information acquisition unit 100 by the correction operation type determination unit 23. After the estimation of the type of correction, the cleaning operation was corrected immediately, but the human arm 16 accidentally applied force to the robot arm 5 to select the type of correction that was not intended by the person. In order to prevent this, the correction operation type determination unit 23 may start the correction after a certain time after estimation. In this case, until the correction is started, the person can operate as many times as necessary until the intended correction type is selected.
 また、前記第1実施形態において、動作選択部29と動作記憶部15と動作補正部20と補正動作種別決定部23と補正動作種別決定方法設定部27と制御パラメータ管理部21と制御部22となどのそれぞれ、又は、そのうちの任意の一部は、それ自体がソフトウェアで構成することができる。よって、例えば、本明細書の前記第1実施形態又は後述する実施形態の制御動作を構成するステップを有するコンピュータプログラムとして、記憶装置(ハードディスク等)などの記録媒体に読み取り可能に記憶させ、そのコンピュータプログラムをコンピュータの一時記憶装置(半導体メモリ等)に読み込んでCPUを用いて実行することにより、前記した各ステップを実行することができる。 In the first embodiment, the operation selection unit 29, the operation storage unit 15, the operation correction unit 20, the correction operation type determination unit 23, the correction operation type determination method setting unit 27, the control parameter management unit 21, and the control unit 22 Etc., or any part of them, can itself be composed of software. Therefore, for example, as a computer program having steps constituting the control operation of the first embodiment of the present specification or an embodiment to be described later, it is readable and stored in a recording medium such as a storage device (hard disk or the like), and the computer Each step described above can be executed by reading the program into a temporary storage device (semiconductor memory or the like) of the computer and executing it using the CPU.
 (第2実施形態)
 本発明の第2実施形態における、ロボットアームの制御装置を備える家事ロボット1の前記ロボットアームの制御装置の基本的な構成は、第1実施形態の場合と同様であるので、共通部分の説明は省略し、異なる部分についてのみ以下、詳細に説明する。
(Second Embodiment)
In the second embodiment of the present invention, the basic configuration of the robot arm control device of the housework robot 1 including the robot arm control device is the same as that of the first embodiment, so the description of the common parts is as follows. Omitted and only different parts will be described in detail below.
 第2実施形態において、図34に示すように、家事ロボット1はロボットアーム5を使用して鍋3の中の具材をかき混ぜる作業行うロボットである。すなわち、第2実施形態にかかる家事ロボット1は、家庭内でロボットアーム5を使用して家事作業(調理作業)の対象物(例えば、鍋3の中の具材)に作用しながら家事作業を行うロボットである。 In the second embodiment, as shown in FIG. 34, the housework robot 1 is a robot that uses a robot arm 5 to stir the ingredients in the pot 3. That is, the housework robot 1 according to the second embodiment uses the robot arm 5 in the home to perform housework work while acting on the object of housework (cooking work) (for example, ingredients in the pot 3). Robot to perform.
 図34に示したように、家事ロボット1のロボットアーム5は、作業台7の壁面7aに設置され、ロボットアーム5の基端が、壁面7aに固定されたレール8に、移動可能に支持され、レール8上をロボットアーム5がレール8沿いの横方向例えば水平方向に、人16Aの手16の力により、又はモータなどにより自動的に、移動可能とする。ロボットアーム5の基端の固定場所は、作業台7の壁面7aに限られるものではなく、天井などでもよい。 As shown in FIG. 34, the robot arm 5 of the household robot 1 is installed on the wall surface 7a of the work table 7, and the base end of the robot arm 5 is movably supported by the rail 8 fixed to the wall surface 7a. The robot arm 5 can be moved on the rail 8 in the lateral direction along the rail 8, for example, in the horizontal direction, automatically by the force of the hand 16 of the person 16A, or by a motor or the like. The fixing position of the base end of the robot arm 5 is not limited to the wall surface 7a of the work table 7, but may be a ceiling or the like.
 作業台7の側面には、ボタン26aなどが配置された操作盤26Aなどのデータ入力IF26と、作業台7の壁面などに配置された表示手段の一例としての表示部14とを備えるように構成されている。 The side surface of the work table 7 includes a data input IF 26 such as an operation panel 26A on which buttons 26a and the like are arranged, and a display unit 14 as an example of display means arranged on the wall surface of the work table 7 and the like. Has been.
 レール8は、壁面7aに固定されたレール固定部8aと、モータ65の駆動により正逆回転駆動される車輪(図示せず)を有してレール固定部8aに対して移動可能なレール可動部8bとで構成されている。ロボットアーム5の基端が連結された台部34が前記レール可動部8bに連結されて、レール固定部8aに対して、ロボットアーム5の台部34がレール可動部8bと共に移動可能に構成されている。又は、このような構成に代えて、ロボットアーム5の基端が連結された台部34にモータ65により正逆回転駆動される車輪を設けて、壁面7aに固定されたレール8に沿って、台部34が移動するような構成としてもよい。 The rail 8 has a rail fixed portion 8a fixed to the wall surface 7a and a rail movable portion that has a wheel (not shown) that is driven to rotate forward and backward by driving of the motor 65 and is movable with respect to the rail fixed portion 8a. 8b. The base part 34 to which the base end of the robot arm 5 is connected is connected to the rail movable part 8b, and the base part 34 of the robot arm 5 is configured to be movable together with the rail movable part 8b with respect to the rail fixing part 8a. ing. Alternatively, instead of such a configuration, a wheel that is driven to rotate forward and backward by a motor 65 is provided on the base portion 34 to which the base end of the robot arm 5 is connected, and along the rail 8 fixed to the wall surface 7a, It is good also as a structure that the base part 34 moves.
 ロボットアーム5の先端には、調理器具の一例としての、鍋3をかき混ぜるための器具であるレードル4を着脱可能に把持可能なハンド30が取り付けられている。 At the tip of the robot arm 5 is attached a hand 30 that can detachably hold the ladle 4 as an example of a cooking utensil for stirring the pot 3.
 家事ロボット1の操作手順の概要を説明する。 The outline of the operation procedure of the household robot 1 will be described.
 まず、第1実施形態と同様に、人16Aの手16が作業台7の側面に配置されているデータ入力IF26(例えば図26の操作盤26Aの電源ボタン26aの「ON」を押すなど)により電源を入れる。なお、ハンド30にレードル4を着脱可能に把持させる動作は、第1実施形態においてハンドに吸引ノズル9若しくはモップ10を着脱可能に取り付けるのと同様であるため、説明を省略する。 First, as in the first embodiment, the data input IF 26 (for example, pressing “ON” of the power button 26a of the operation panel 26A in FIG. 26) in which the hand 16 of the person 16A is arranged on the side surface of the work table 7 is used. Turn on the power. Note that the operation of detachably holding the ladle 4 on the hand 30 is the same as that of attaching the suction nozzle 9 or the mop 10 to the hand in the first embodiment, and thus the description thereof is omitted.
 次に、作業台7の側面に配置されているデータ入力IF26(例えば図26の操作盤26Aのスイッチ26cのスタートボタンなど)を人16Aの手16で押すことにより、家事ロボット1が作動し、後述する動作選択部29で最適な動作、例えば家事動作(調理動作)を選択して、その選択された動作に基づき、家事作業(調理作業)を開始させる。具体的には、図36Aに示すように、ロボットアーム5のハンド30に取り付けたレードル4により、鍋3の中の鍋底を擦りながら鍋の中の具材の全体をかき混ぜる動作を開始させる。 Next, when the data input IF 26 (for example, the start button of the switch 26c of the operation panel 26A in FIG. 26) disposed on the side surface of the work table 7 is pushed with the hand 16 of the person 16A, the housework robot 1 is activated, An operation selecting unit 29 described later selects an optimal operation, for example, a housework operation (cooking operation), and starts a housework operation (cooking operation) based on the selected operation. Specifically, as shown in FIG. 36A, the ladle 4 attached to the hand 30 of the robot arm 5 starts the operation of stirring the whole ingredients in the pot while rubbing the pot bottom in the pot 3.
 次に、人16Aが鍋3の具材の状況を確認し、図36Bに示すように、レードル4で強めに鍋底を擦りながら混ぜるように、力を強めにロボットアーム5の動作を補正する。このようにすることで、図36Cに示すように、ロボットアーム5に把持されたレードル4で力加減を強めに鍋底を擦りながら具材全体を混ぜることができる。 Next, the person 16A confirms the condition of the ingredients of the pan 3, and corrects the operation of the robot arm 5 with a strong force so that the ladle 4 is mixed while rubbing the pan bottom strongly as shown in FIG. 36B. In this way, as shown in FIG. 36C, the entire ingredients can be mixed while rubbing the pan bottom with a strong force in the ladle 4 held by the robot arm 5.
 図43は、家事ロボット1を構成するロボットアーム5の制御装置の構成要素を詳細に示す図であり、第1実施形態と同様に、制御装置本体部45と、動作を生成する動作生成装置12と、制御対象であるロボットアーム5と、レール8と、周辺装置47との詳細構成を示す図である。家事ロボット1の前記制御装置は、制御装置本体部45と、動作生成装置12と、周辺装置47とで大略構成されている。制御装置本体部45とロボットアーム5は第1実施形態と同様なので、説明を省略する。 FIG. 43 is a diagram showing in detail the components of the control device for the robot arm 5 constituting the housework robot 1, and similarly to the first embodiment, the control device main body 45 and the motion generation device 12 for generating motion. FIG. 4 is a diagram illustrating a detailed configuration of a robot arm 5 to be controlled, a rail 8, and a peripheral device 47. The control device of the housework robot 1 is roughly composed of a control device main body 45, the motion generation device 12, and a peripheral device 47. Since the control device main body 45 and the robot arm 5 are the same as those in the first embodiment, description thereof is omitted.
 動作生成装置12は、動作データベース17と、作業不可領域データベース28と、補正動作種別決定方法設定部27と、動作補正部20と、補正動作種別決定部23と、対象物状態判断部(対象物状態判断手段の一例)19と、動作記憶部15と、動作選択部29と、情報取得部100とを備えるように構成される。 The motion generation device 12 includes a motion database 17, an unworkable area database 28, a corrected motion type determination method setting unit 27, a motion correction unit 20, a corrected motion type determination unit 23, and an object state determination unit (object An example of a state determination unit) 19, an operation storage unit 15, an operation selection unit 29, and an information acquisition unit 100 are provided.
 作業手順情報データベース18は、一例として図44Aに示すように、作業を識別する作業ID番号と、その作業の個々の工程を識別する工程ID番号と、その工程におけるロボットアーム5の動作を識別する動作ID番号と、工程ID番号に相当する工程に関する情報と、その工程にかかる時間である経過時間と、その工程で調理する分量と、その工程での対象物の状態を識別する状態ID番号と、現在動作中かどうかを示す進捗情報とを備えるように構成される。ここで、対象物の状態とは、家庭内でロボットアーム5を使用して家事作業(例えば調理作業)の対象物(例えば、鍋3の中の具材)に調理作業を行うときの対象物(例えば、鍋3の中の具材)の状態(例えば、後述する、粘性状態と剛性状態と焦げつき状態)の情報を意味している。 As shown in FIG. 44A as an example, the work procedure information database 18 identifies a work ID number for identifying a work, a process ID number for identifying individual processes of the work, and an operation of the robot arm 5 in the process. Operation ID number, information related to the process corresponding to the process ID number, elapsed time that is the time taken for the process, amount to be cooked in the process, and state ID number that identifies the state of the object in the process And progress information indicating whether or not it is currently operating. Here, the state of the object means an object when cooking work is performed on an object (for example, ingredients in the pan 3) of housework (for example, cooking work) using the robot arm 5 in the home. (For example, ingredients in the pan 3) means information on the state (for example, a viscous state, a rigid state, and a burned state, which will be described later).
 状態IDは、一例として図44Cに示す状態情報を示す。図44Cにおいて、状態IDは、その状態を識別する状態ID番号と、その工程での対象物の情報(対象物情報)を識別するID番号である対象物情報ID番号と、その対象物情報IDが示す対象物情報の粘性を表す情報と、その対象物情報IDが示す剛性を表す情報と、その対象物情報IDの焦げつき度合いを示す情報と、粘性と剛性と焦げつきとの3つの状態からどの状態を優先するかを示す優先状態情報とを備えるように構成される。この優先状態情報では、粘性を優先する場合は「1」、剛性を優先する場合は「2」、焦げつきを優先する場合は「3」、いずれの値も優先しない場合は「0」を示す。対象物情報ID番号には、図44Bに示すように、それぞれの対象物情報ID毎にその対象物情報の名称を記録している。また、粘性は、「1」から「5」までの5段階で表す。「1」は粘性の値が小さいことを示し、例えば対象物情報が示す材料のねばりがない状態を示す。粘性の値が5の場合は、かなりねばりが強い状態を示す。剛性は、「1」~「5」までの5段階で示す。剛性の値が「1」の場合は、対象物情報が示す材料が柔らかいことを示し、「5」の場合は硬いことを示す。焦げつきは「1」~「5」の5段階で示し、「1」は焦げつきが少ないことを示し、「5」は焦げつきが大きいことを示す。進捗情報は現在動作の工程かどうかを示す情報であり、「1」の場合は現在動作中であることを示し、「0」の場合は動作していないことを示す。 The status ID indicates the status information shown in FIG. 44C as an example. In FIG. 44C, the state ID includes a state ID number that identifies the state, an object information ID number that is an ID number that identifies object information (object information) in the process, and the object information ID. The information indicating the viscosity of the object information indicated by the object, the information indicating the rigidity indicated by the object information ID, the information indicating the degree of burning of the object information ID, and the viscosity, rigidity, and burning Priority state information indicating whether the state is prioritized. This priority state information indicates “1” when priority is given to viscosity, “2” when priority is given to stiffness, “3” when priority is given to burning, and “0” when neither value is given priority. In the object information ID number, as shown in FIG. 44B, the name of the object information is recorded for each object information ID. The viscosity is expressed in five stages from “1” to “5”. “1” indicates that the viscosity value is small, for example, a state where there is no stickiness of the material indicated by the object information. When the viscosity value is 5, it indicates a state in which the stickiness is considerably strong. The rigidity is shown in five stages from “1” to “5”. When the stiffness value is “1”, the material indicated by the object information is soft, and when it is “5”, it is hard. Burning is shown in five stages from “1” to “5”, “1” indicates that there is little burning, and “5” indicates that burning is large. The progress information is information indicating whether or not the current operation is a process, and “1” indicates that the current operation is being performed, and “0” indicates that the operation is not being performed.
 図44Aの動作IDは、動作データベース17の一連の動作IDを示し、それぞれの工程でのロボットアーム5の動作を示す。 44A shows a series of operation IDs in the operation database 17, and shows the operation of the robot arm 5 in each process.
 作業手順情報データベース18は、図45に示すように、例えば作業の一例としての調理作業のレシピ情報等の家庭内作業の手順情報をインターネット99を通じて外部のウェブサーバにある情報データベース98から収集しても良いし、又は、ロボットアーム5の出荷時にロボットアーム5の製造メーカが、ロボットアーム5の制御装置内に、事前に用意しておいても良い。 As shown in FIG. 45, the work procedure information database 18 collects home work procedure information such as cooking recipe information as an example of work from an information database 98 in an external web server via the Internet 99. Alternatively, the manufacturer of the robot arm 5 may prepare in advance in the control device of the robot arm 5 when the robot arm 5 is shipped.
 図35は本第2実施形態の動作データベース17の具体例である。それぞれの情報に関する説明は、第1実施形態と同様であるので、説明を省略する。ただし、鍋3をかき混ぜる作業に関しては、「吸引力」の情報は使用しないため、「吸引力」に関しては、全て「0」を記憶し、さらに「フラグ」と「補正パラメータフラグ」との「吸引力」のビット(12ビット目~17ビット目)については、「0」を記憶する。 FIG. 35 is a specific example of the operation database 17 of the second embodiment. Since the description about each information is the same as that of 1st Embodiment, description is abbreviate | omitted. However, since the information of “suction force” is not used for the operation of stirring the pot 3, all “0” is stored for “suction force”, and “suction” of “flag” and “correction parameter flag” is stored. “0” is stored for the “force” bits (12th to 17th bits).
 図35において、動作ID「1」~「8」は、図36Aに示すように、鍋底を擦りながら鍋3の中の全体をかき混ぜる動作である。 35, operation IDs “1” to “8” are operations for stirring the whole of the pot 3 while rubbing the pot bottom, as shown in FIG. 36A.
 動作データベース17のロボットアーム5の位置及び姿勢及び時間の情報は、例えば、図37に示すように、ロボットアーム5を人の手16で直接把持して、後述するインピーダンス制御モードにて、ロボットアーム5を移動させて、ある一定時間毎(例えば0.2msec毎)にロボットアーム5の手先位置と姿勢の情報を制御部22で取得し、時間の情報と共に、動作データベース17に動作記憶部15で記憶する。なお、製品出荷時にメーカにてあらかじめ位置及び姿勢及び時間の情報を同様の方法で生成し、動作データベース17に記憶しておいても良い。 Information on the position, posture and time of the robot arm 5 in the motion database 17 is obtained by, for example, directly holding the robot arm 5 with a human hand 16 as shown in FIG. 5, the control unit 22 obtains information on the hand position and posture of the robot arm 5 at certain time intervals (for example, every 0.2 msec), and together with the time information, the operation database 17 stores the information on the operation database 17. Remember. Note that information on position, orientation, and time may be generated in advance by the manufacturer at the time of product shipment and stored in the operation database 17.
 対象物状態判断部19は、ロボットアーム5が作業手順情報データベース18で動作中の工程IDに対して、作業手順情報データベース18の状態に関する情報により、対象物の状態がどのような状態か(例えば、対象物の一例としての鍋3の中の具材の、粘性状態と剛性状態と焦げつき状態がどのような状態であるか)を判断する。具体的には、図44Aの工程IDが「1」の状態IDは「1」であり、図44Cの状態IDが「1」の優先状態は「0」であるので、いずれの状態も対象物状態判断部19で判断しないとし、対象物状態判断部19は「0」を出力する。図44Aの工程IDが「2」の場合の状態IDは「2」であり、図44Cより、優先状態は「3」であるため、焦げつきの状態を優先する。状態IDが「2」の場合の「焦げつき」は「1」と値が小さい(焦げつき用の閾値の一例である「3」未満である)ので、まだ、焦げついていないと対象物状態判断部19で判断し、対象物状態判断部19は「0」を出力する。図44Cの状態IDが「3」の場合の優先状態は「3」で、焦げつきの状態を優先する。状態IDが「3」の場合の「焦げつき」は「3」であるので、焦げつきの値が焦げつき用の閾値の一例である「3」以上である場合は、焦げついてきている状態と対象物状態判断部19で判断し、対象物状態判断部19は「1」を出力する。図44Cの状態IDが「5」の場合と状態IDが「9」の場合の優先状態はそれぞれ「1」を示すため、粘性の状態を優先する。「粘性」が2以下(粘性用の閾値の一例である「3」未満)の場合は、粘性が小さいと対象状物態判断部19で判断し、対象物状態判断部19は「0」を出力する。「粘性」が3以上の場合(粘性用の閾値の一例である「3」以上の場合)は粘性が大きいと対象物状態判断部19で判断し、対象物状態判断部19は「1」を出力する。図44Cの状態ID「6」の場合と状態「7」の場合の優先状態はそれぞれ「2」であるので、剛性の状態を優先する。「剛性」の値が、剛性用の閾値の一例である「3」未満、すなわち、2以下の場合は、剛性が小さい、すなわち、柔らかい状態であると対象物状態判断部19で判断し、対象物状態判断部19は「1」を出力する。「剛性」の値が、剛性用の閾値の一例である「3」以上である場合は、硬い状態であると対象物状態判断部19で判断し、対象物状態判断部19は「0」を出力する。このように、対象物状態判断部19は、対象物の各状態を表す数値に対して、それぞれの状態に関する閾値とを比較して、閾値以上か閾値未満で、出力する値を変えることにより、状態を判断している。 The object state determination unit 19 determines the state of the object according to information regarding the state of the work procedure information database 18 with respect to the process ID in which the robot arm 5 is operating in the work procedure information database 18 (for example, The state of the ingredients in the pan 3 as an example of the object is determined in terms of the viscous state, the rigid state, and the burned state). Specifically, the state ID with the process ID “1” in FIG. 44A is “1”, and the priority state with the state ID “1” in FIG. 44C is “0”. Assuming that the state determination unit 19 does not make a determination, the object state determination unit 19 outputs “0”. When the process ID in FIG. 44A is “2”, the state ID is “2”, and the priority state is “3” from FIG. 44C. “Scorching” when the state ID is “2” has a small value of “1” (less than “3”, which is an example of a scoring threshold value). The object state determination unit 19 outputs “0”. When the state ID in FIG. 44C is “3”, the priority state is “3”, and the burnt state is prioritized. “Burn” when the state ID is “3” is “3”. Therefore, when the burn value is “3” or more, which is an example of the threshold value for burn, the burned state and the object The state determination unit 19 makes a determination, and the object state determination unit 19 outputs “1”. Since the priority states in the case where the state ID in FIG. 44C is “5” and the state ID is “9” respectively indicate “1”, the viscous state is prioritized. When “viscosity” is 2 or less (less than “3”, which is an example of a threshold value for viscosity), the object state determination unit 19 determines that the viscosity is small, and the object state determination unit 19 sets “0”. Output. When the “viscosity” is 3 or more (when it is “3” or more, which is an example of a threshold value for viscosity), the object state determination unit 19 determines that the viscosity is large, and the object state determination unit 19 sets “1”. Output. Since the priority states in the case of the state ID “6” and the state “7” in FIG. 44C are “2”, the rigidity state is given priority. When the value of “rigidity” is less than “3”, which is an example of the threshold value for rigidity, that is, 2 or less, the object state determination unit 19 determines that the rigidity is small, that is, the soft state, and the target The object state determination unit 19 outputs “1”. When the value of “rigidity” is equal to or greater than “3”, which is an example of a stiffness threshold value, the object state determination unit 19 determines that the object is in a hard state, and the object state determination unit 19 sets “0”. Output. As described above, the object state determination unit 19 compares the numerical value representing each state of the object with the threshold value related to each state, and changes the output value at or above the threshold value. Judging the state.
 図43の動作選択部29は、作業手順情報データベース18の作業一覧(例えば、図26の掃除スイッチ26cの中央に表示された「かき混ぜ」及び「拭き掃除」というような作業表示)から最適な作業を人16Aがデータ入力IF26を介して選択するとき、選択された作業のうち、現在、動作している工程IDの進捗情報に「1」を設定して作業手順情報データベース18に記憶し、その他の工程については「0」を設定して作業手順情報データベース18に記憶する。すなわち、動作選択部29は、作業の選択時から、制御装置1000の内蔵タイマーで時間を計測しておき、その時間経過と作業手順情報データベース18の各動作が作用する時間に関する情報とに基づき、選択された作業のうち、現在、動作している工程IDの進捗情報に「1」を設定して作業手順情報データベース18に記憶し、その他の工程については「0」を設定して作業手順情報データベース18に記憶する。動作選択部29は、選択された工程IDの動作IDを動作データベース17より参照し、現在、動作している動作IDの進捗情報に「1」を設定する。 43 selects an optimum work from the work list in the work procedure information database 18 (for example, work displays such as “stirring” and “wiping cleaning” displayed in the center of the cleaning switch 26c in FIG. 26). When the person 16A selects via the data input IF 26, “1” is set to the progress information of the currently operating process ID among the selected works, and is stored in the work procedure information database 18. For the process, “0” is set and stored in the work procedure information database 18. That is, the operation selection unit 29 measures the time with the built-in timer of the control device 1000 from the time of selecting the work, and based on the elapsed time and information on the time during which each operation of the work procedure information database 18 acts. Of the selected work, “1” is set in the progress information of the currently operating process ID and stored in the work procedure information database 18, and “0” is set for the other processes and the work procedure information. Store in database 18. The operation selection unit 29 refers to the operation ID of the selected process ID from the operation database 17 and sets “1” in the progress information of the currently operating operation ID.
 補正動作種別決定部23は、第1実施形態と同様に、動作補正部20にて、人がその手16でロボットアーム5に力をかけることにより動作の補正を行うことが可能な補正の種別を決定する。以下、5種類の補正の種別がある。 As in the first embodiment, the correction operation type determination unit 23 is a correction type that allows the operation correction unit 20 to correct an operation by applying a force to the robot arm 5 with a hand 16 of the person. To decide. Hereinafter, there are five types of correction.
 1つ目の補正の種別は、「作業面の位置の移動」である。具体的には、図38A及び図38B(図38Aを上から見た図)のように、動作する動作情報を使って、鍋3の底を擦りながらかき混ぜ作業を行っている際に、図38Cのように、人の手16でロボットアーム5に横方向から力をかけると、動作補正部20によって、図38Dのようにロボットアーム5の作業面(鍋3の鍋底面)に対する水平方向の位置を移動することで、ロボットアーム5のハンド30に把持されたレードル4を、鍋3の鍋底の面に対して平行移動することができる。 The first correction type is “movement of the position of the work surface”. Specifically, as shown in FIGS. 38A and 38B (viewed from the top of FIG. 38A), when the stirring operation is performed while rubbing the bottom of the pan 3, using the operation information that operates, FIG. As shown in FIG. 38, when a force is applied to the robot arm 5 from the side with the human hand 16, the position of the robot arm 5 in the horizontal direction with respect to the work surface of the robot arm 5 (the bottom of the pan 3) as shown in FIG. The ladle 4 held by the hand 30 of the robot arm 5 can be moved in parallel with the pan bottom surface of the pan 3.
 2つ目の補正の種別は、鍋底のかき混ぜ時の「力のかけ具合」である。これは、現在動作中(動作データベース17の進捗情報が「1」)の動作のフラグ(有効性を示すフラグ)において、力のビットが「1」となっている場合に有効である。図36Aに示すように、鍋底のかき混ぜ作業中に、図36Bのように、人の手16でロボットアーム5に上方から下向きに力をかけると、動作補正部20によって、図36Cのように力のかけ具合を強めに、逆に、人の手16でロボットアーム5に下方から上向きに力をかけると、力のかけ具合を弱めに、ロボットアーム5のかき混ぜ動作を補正することができる。 The second type of correction is the “force applied” when the pot bottom is stirred. This is effective when the force bit is “1” in the operation flag (the flag indicating validity) of the operation currently being performed (the progress information of the operation database 17 is “1”). As shown in FIG. 36A, when a force is applied downward from above to the robot arm 5 with a human hand 16 as shown in FIG. On the contrary, when a force is applied to the robot arm 5 upward from below with the human hand 16, the mixing operation of the robot arm 5 can be corrected to weaken the force application.
 3つ目の補正の種別は、ロボットアーム5の手先(すなわち、レードル4)のかき混ぜ(移動)「速度」である。図40Aのように、ロボットアーム5がかき混ぜ作業中に、図40Bのように、ロボットアーム5の進行方向に反する方向に人の手16でロボットアーム5に力をかけると、動作補正部20によって、図40Cのように、かき混ぜ動作時の移動速度を減速させることができる。逆に、ロボットアーム5が動作中に、人の手16がロボットアーム5の進行方向に合わせて人の手16でロボットアーム5に力をかけると、動作補正部20によって、かき混ぜ動作時の移動速度を加速させることができる。 The third type of correction is the “speed” of stirring (movement) of the hand of the robot arm 5 (ie, the ladle 4). As shown in FIG. 40A, when the robot arm 5 is being stirred, if a force is applied to the robot arm 5 with a human hand 16 in a direction opposite to the advancing direction of the robot arm 5 as shown in FIG. As shown in FIG. 40C, the moving speed during the stirring operation can be reduced. On the contrary, when the robot arm 5 is in operation and the human hand 16 applies force to the robot arm 5 with the human hand 16 in accordance with the moving direction of the robot arm 5, the movement during the mixing operation is performed by the motion correction unit 20. Speed can be accelerated.
 4つ目の補正の種別は、「方向(姿勢)の変更」である。図39Aのように、動作する動作情報をつかって、ロボットアーム5がかき混ぜ作業中に、図39Bのように、人の手16でロボットアーム5のハンド30の姿勢の向きを変更するように力をかけると、動作補正部20によって、図39Cのようにロボットアーム5のハンド30の姿勢を変更して、鍋3の内側の側面をレードル4で擦るように動作を変更することができる。ロボットアーム5の手先(ハンド30)の姿勢(φ、θ、ψ)を変更することで実現できる。 The fourth type of correction is “change of direction (posture)”. As shown in FIG. 39A, while the robot arm 5 is performing the stirring operation using the motion information to be operated, a force is applied to change the orientation of the hand 30 of the robot arm 5 with the human hand 16 as shown in FIG. 39B. Is applied, the motion correcting unit 20 can change the posture of the hand 30 of the robot arm 5 as shown in FIG. 39C and change the motion to rub the inner side surface of the pan 3 with the ladle 4. This can be realized by changing the posture (φ, θ, ψ) of the hand (hand 30) of the robot arm 5.
 5つ目の補正の種別は、「作業面垂直方向の移動」である。図41Aのように、ロボットアーム5でかき混ぜ作業中に、図41Bのように人の手16でロボットアーム5に上方向に力をかけて、作業台7の凸部7a上に配置された別の鍋3aに向かって、上方向にロボットアーム5を移動させると、動作補正部20によって、図41Cに示すように、鍋3a内にてレードル4でかき混ぜ作業をすることができる。 The fifth type of correction is “movement in the vertical direction of the work surface”. As shown in FIG. 41A, during the agitation work with the robot arm 5, as shown in FIG. 41B, an upward force is applied to the robot arm 5 with a human hand 16 to place the robot arm 5 on the convex portion 7a of the work table 7. When the robot arm 5 is moved upward toward the pan 3a, the operation correction unit 20 can perform the stirring work with the ladle 4 in the pan 3a as shown in FIG. 41C.
 補正動作種別決定部23は、前記の5種類の補正の種別のうち、1種類の補正の種別を決定する。具体的には、ボタンなどのデータ入力IF26にて5種の補正の種別のうちの1つの補正の種別を選択するか、若しくは、力検出部53で検出されて情報取得部100で取得された人の手16でロボットアーム5にかけた力と、動作データベース17に記憶されて情報取得部100で取得されたロボットアーム5にかけた力と、対象物状態判断部19で検出された対象物の状態と、補正の種別との関係情報(例えば、力のかかる向きと大きさと補正の種別との関係情報)とにより、補正動作種別決定部23で種別を推定する。 The correction operation type determination unit 23 determines one type of correction among the five types of correction. Specifically, one of the five types of correction is selected by the data input IF 26 such as a button, or is detected by the force detection unit 53 and acquired by the information acquisition unit 100. The force applied to the robot arm 5 by the human hand 16, the force applied to the robot arm 5 stored in the motion database 17 and acquired by the information acquisition unit 100, and the state of the object detected by the object state determination unit 19 Then, the correction operation type determination unit 23 estimates the type based on the relationship information with the correction type (for example, the relationship information between the direction in which the force is applied, the magnitude, and the correction type).
 以下、補正の種別の推定方法の具体的な補正種別推定処理について、図42のフローチャートを使って詳細に説明する。 Hereinafter, specific correction type estimation processing of the correction type estimation method will be described in detail with reference to the flowchart of FIG.
 家事ロボット1の電源ボタン26aを「ON」にした状態で、人の手16でロボットアーム5を把持して力をロボットアーム5に加えていない場合は、ロボットアーム5は動かない。人の手16でロボットアーム5に力を加えている場合は、インピーダンス制御モード(人の手16の力を検出した方向にインピーダンス制御で移動させるモード)でロボットアーム5を移動させたい方向に移動させることができる。この場合、制御部22の力検出部53にて、ロボットアーム5に作用する力を検出し、力検出部53で検出された力の情報が、情報取得部100を介して、補正動作種別決定部23に入力される(ステップS71)。 If the power button 26a of the household robot 1 is set to “ON” and the robot arm 5 is not gripped by the human hand 16 and no force is applied to the robot arm 5, the robot arm 5 does not move. When a force is applied to the robot arm 5 by the human hand 16, the robot arm 5 is moved in the direction in which the robot arm 5 is moved in the impedance control mode (a mode in which the force of the human hand 16 is detected and moved by impedance control). Can be made. In this case, the force detection unit 53 of the control unit 22 detects the force acting on the robot arm 5, and the information on the force detected by the force detection unit 53 is determined via the information acquisition unit 100. The data is input to the unit 23 (step S71).
 次いで、ステップS72では、力検出部53で検出しかつ情報取得部100で取得された力の全ての成分(f、f、f、fφ、fθ、fψの6成分)が、ある閾値(具体的には、図33のID「1」の(fdx、fdy、fdz、f、f、f))以下であるか否かを補正動作種別決定部23で判断する。力検出部53で検出しかつ情報取得部100で取得された力の全ての成分(f、f、f、fφ、fθ、fψの6成分)が、前記ある閾値以下であると補正動作種別決定部23で判断した場合は、ロボットアーム5は動かず、補正はせず(ステップS88)、補正動作の種別推定方法の補正種別推定処理を終了する。その場合の制御モードは、インピーダンス制御モードである。 Next, in step S72, the all components obtained in is detected by the force detection unit 53 and the information acquisition section 100 a force (f x, f y, f z, f φ, f θ, 6 components of f [psi) is (specifically, (f dx of ID "1" in FIG. 33, f dy, f dz, f dφ, f dθ, f dψ)) is the threshold correction or not less whether the operation type determining unit 23 Judge with. All components were detected by the force detection unit 53 and acquired by the information acquisition section 100 a force (f x, f y, f z, f φ, f θ, 6 components of f [psi) is below the certain threshold If the correction action type determination unit 23 determines that there is, the robot arm 5 does not move and is not corrected (step S88), and the correction type estimation process of the correction action type estimation method ends. The control mode in that case is an impedance control mode.
 ステップS72にて、力検出部53で検出しかつ情報取得部100で取得された力のいずれかの成分(f、f、f、fφ、fθ、fψの6成分のうちのいずれかの成分)が、前記ある閾値(具体的には、図33のID「1」の(fdx、fdy、fdz、f、f、f))を越えると補正動作種別決定部23で判断した場合は、ステップS73に進む。 At step S72, the one of component (f x of the acquired detected by the force detection unit 53 and the information acquisition unit 100 force, f y, f z, f φ, f θ, of the six components of the f [psi ) Exceeds a certain threshold (specifically, (f dx , f dy , f dz , f , f , f ) of ID “1” in FIG. 33). If the type determining unit 23 determines, the process proceeds to step S73.
 ステップS73では、さらに、現在の家事ロボット1が動作データベース17で動作しているかどうか、を情報取得部100を介して取得した情報を基に補正動作種別決定部23で判定する。具体的には、動作選択部29にて作業を選択しておらず、かつ、動作データベース17の全ての作業IDについて、進捗情報が「0」となっている、と補正動作種別決定部23で判断する場合(作業を開始していない状態)は、動作データベース17で動作していないと補正動作種別決定部23で判定して、補正はせず(ステップS77)、補正動作の種別推定方法の補正種別推定処理を終了する。動作選択部29にてかき混ぜ作業を選択してかき混ぜ動作を開始しており、かつ、進捗情報が「1」となっていると補正動作種別決定部23で判断している場合は、動作データベース17で動作していると補正動作種別決定部23で判定して、ステップS74に進む。 In step S73, the corrected operation type determination unit 23 further determines whether or not the current household robot 1 is operating in the operation database 17 based on the information acquired through the information acquisition unit 100. Specifically, the correction operation type determination unit 23 determines that no operation is selected by the operation selection unit 29 and the progress information is “0” for all the operation IDs in the operation database 17. In the case of determination (a state in which work is not started), the correction operation type determination unit 23 determines that the operation database 17 is not operating, and does not perform correction (step S77). The correction type estimation process ends. When the mixing operation is selected by the operation selection unit 29 and the mixing operation is started, and when the correction operation type determination unit 23 determines that the progress information is “1”, the operation database 17 The correction operation type determination unit 23 determines that the operation is in progress, and proceeds to step S74.
 ステップS74では、人の手16でロボットアーム5を把持して、ロボットアーム5の動作を補正したい方向に力を加えるとき、力検出部53でロボットアーム5に加えられた力を検出し、力検出部53で検出されかつ情報取得部100を介して取得した人の手16からの力(f、f、f、fφ、fθ、fψ)のそれぞれのある一定時間の変位量を補正動作種別決定部23で計測し、位置成分(f、f、f)と姿勢成分(fφ、fθ、fψ)のどちらの変位量が大きいか、を補正動作種別決定部23で計測する。具体的には、図15に示すように、(f、f、f、fφ、fθ、fψ)それぞれの時系列の力を補正動作種別決定部23で計測し、ある一定時間(例えばtime 1)に力がどれくらい変位したかを補正動作種別決定部23で計測し、最も変位の大きかった成分を補正動作種別決定部23で計測する。この例では、fφの変位が最も大きいので、姿勢成分が位置成分より力がかかっていると補正動作種別決定部23で判断して、ステップS79へ進む。 In step S74, when the robot arm 5 is gripped by the human hand 16 and a force is applied in a direction in which the operation of the robot arm 5 is desired to be corrected, the force applied to the robot arm 5 is detected by the force detection unit 53, and the force is detected. Displacement of the forces (f x , f y , f z , f φ , f θ , f ψ ) from the human hand 16 detected by the detection unit 53 and acquired through the information acquisition unit 100 for a certain period of time. The amount is measured by the correction action type determination unit 23, and the correction action type indicates which displacement amount of the position component (f x , f y , f z ) or the posture component (f φ , f θ , f ψ ) is larger. Measurement is performed by the determination unit 23. Specifically, as shown in FIG. 15, each time series force (f x , f y , f z , f φ , f θ , f ψ ) is measured by the correction operation type determination unit 23, and is constant. The correction operation type determination unit 23 measures how much the force is displaced in time (for example, time 1), and the correction operation type determination unit 23 measures the component having the largest displacement. In this example, the displacement of f phi largest, as judged by the correction operation type determining unit 23 orientation component is force is applied from the position component, the process proceeds to step S79.
 ステップS74にて姿勢の変位量が位置の変位量より大きいと補正動作種別決定部23で判断する場合には、補正の種別は「方向(姿勢)の変更」の種別であると補正動作種別決定部23で決定して、補正の種別推定処理を終了する(ステップS79)。その際の制御モードは、補正の種別を決定する前と同様の制御モード(力ハイブリッドインピーダンス制御モード)である。 When the correction operation type determination unit 23 determines in step S74 that the displacement amount of the posture is larger than the displacement amount of the position, the correction operation type determination is made that the correction type is “direction (posture) change”. Then, the correction type estimation process is completed (step S79). The control mode at that time is the same control mode (force hybrid impedance control mode) as before the correction type is determined.
 一方、ステップS74にて位置の変位量が姿勢の変位量以上であると補正動作種別決定部23で判断する場合には、さらに、作業面(鍋3の鍋底面)に垂直な方向の力成分(例えば地面に水平に設置された鍋3の鍋底面に沿ってかき混ぜる場合はf)が、ある閾値(具体的には、図33のID「1」のfdz)以上かどうかを補正動作種別決定部23で判定する(ステップS75)。 On the other hand, when the correction operation type determination unit 23 determines in step S74 that the displacement amount of the position is equal to or greater than the displacement amount of the posture, the force component in the direction perpendicular to the work surface (the bottom surface of the pan 3) Correction operation (for example, f z when stirring along the bottom of the pan 3 placed horizontally on the ground) is greater than a certain threshold (specifically, f dz of ID “1” in FIG. 33) The type determination unit 23 determines (step S75).
 ステップS75で、作業面(鍋3の鍋底面)に垂直な方向の力成分が前記ある閾値より小さいと補正動作種別決定部23で判定された場合は、さらに作業面(鍋3の鍋底面)に水平な方向の力成分(例えば作業台7に水平に配置された鍋3の鍋底面に沿ってかき混ぜる場合はf、fのいずれか若しくは両方)が、ある閾値(具体的には、図33のID「1」のfdx、fdy)以上であるかどうか、を補正動作種別決定部23で判定する(ステップS80)。 In step S75, when it is determined by the correction operation type determination unit 23 that the force component in the direction perpendicular to the work surface (the bottom surface of the pan 3) is smaller than the certain threshold value, the work surface (the bottom surface of the pan 3) Force component in a horizontal direction (for example, f x and / or f y when stirring along the bottom of the pan 3 horizontally disposed on the workbench 7) has a certain threshold (specifically, The correction operation type determination unit 23 determines whether or not it is greater than or equal to f dx , f dy of ID “1” in FIG. 33 (step S80).
 ステップS80にて、作業面(鍋3の鍋底面)に水平な方向の力成分が前記ある閾値(具体的には、図33のID「1」のf、f)未満であると補正動作種別決定部23で判断する場合は、補正なし(種別なし)と決定して、補正種別推定処理を終了する(ステップS81)。補正なしの場合は補正を中止して作業を行う。 In step S80, (specifically, f x of ID "1" in FIG. 33, f y) working surface thresholds horizontal force component (pot bottom of the pot 3) is said to be less than the correction When the operation type determination unit 23 determines, no correction (no type) is determined, and the correction type estimation process ends (step S81). If there is no correction, stop the correction and work.
 ステップS80にて、作業面(鍋3の鍋底面)に水平な方向の力成分が前記ある閾値以上であると補正動作種別決定部23で判断する場合は、ステップS91に進む。 In step S80, if the correction operation type determination unit 23 determines that the force component in the direction horizontal to the work surface (the bottom surface of the pan 3) is equal to or greater than the certain threshold value, the process proceeds to step S91.
 ステップS91では、作業手順情報データベース18での情報を基に対象物状態判断部19で対象物の状態を判断する。対象物状態判断部19から「1」を出力した場合、すなわち、対象物が焦げついているか、つぶれやすいか、又は、ねばりが強いと対象物状態判断部19で判断する場合は、補正の種別として「速度の補正」と補正動作種別決定部23で決定し(ステップS85)、補正種別推定処理を終了する。ステップS91で対象物状態判断部19が「1」を出力した場合、すなわち、対象物が焦げついていたり、つぶれやすい状態であったり、又は、ねばりが強いと判断する場合には、ステップS85で速度加減を調整しながら補正をすることができる。例えば、焦げついていている場合は速度を速めたり、つぶれやすい場合は速度を緩めたり、また、粘りが強い場合は速度を速めてしっかり混ぜることができるようになる。 In step S91, the object state determination unit 19 determines the state of the object based on the information in the work procedure information database 18. When “1” is output from the object state determination unit 19, that is, when the object state determination unit 19 determines that the object is burnt, easily crushed, or has a strong stickiness, “Speed correction” is determined by the correction operation type determination unit 23 (step S85), and the correction type estimation process ends. If the object state determination unit 19 outputs “1” in step S91, that is, if it is determined that the object is scorched, crushed easily, or has a strong stickiness, the speed is determined in step S85. Correction can be made while adjusting the adjustment. For example, if the object is burnt, the speed can be increased. If the object is easily crushed, the speed can be decreased. If the object is strong, the object can be mixed at an increased speed.
 また、ステップS91で、作業手順情報データベース18での情報を基に対象物状態判断部19で対象物の状態を判断し、対象物状態判断部19から「0」を出力した場合、すなわち、焦げていないか、硬いか、又は、ねばりが小さいと対象物状態判断部19で判断する場合は、ステップS83へ進む。 In step S91, when the object state determination unit 19 determines the state of the object based on the information in the work procedure information database 18, and outputs “0” from the object state determination unit 19, that is, burns. If the object state determination unit 19 determines that the object state is not hard, or the stickiness is small, the process proceeds to step S83.
 ステップS83では、さらに補正動作種別決定部23で算出された作業面(鍋3の鍋底面)の水平方向の移動量が、ある閾値(具体的には、図33のID「2」のg、g)以上であると補正動作種別決定部23で判断する場合は、補正の種別として「作業面の位置の移動」の種別を補正動作種別決定部23で決定して、補正種別推定処理を終了する(ステップS84)。なお、作業面(鍋3の鍋底面)の水平方向の移動量を補正動作種別決定部23で算出するとき、具体的には、制御部22から制御パラメータ管理部21又は情報取得部100を介して人の操作前のロボットアーム5の手先位置と操作中の手先位置を補正動作種別決定部23に入力し、操作中の手先位置から操作前の手先位置を減じた値を移動量として補正動作種別決定部23で算出することができる。また、作業面(鍋3の鍋底面)に垂直な方向の移動量を補正動作種別決定部23で算出するとき、具体的には、制御部22から制御パラメータ管理部21又は情報取得部100を介して人の操作前のロボットアーム5の手先位置のz成分と操作中の手先位置のz成分を補正動作種別決定部23に入力し、操作中の手先位置のz成分から操作前の手先位置のz成分を減じた値を移動量として補正動作種別決定部23で算出することができる。 In step S83, the horizontal movement amount of the work surface (the bottom surface of the pan 3) calculated by the correction operation type determination unit 23 is set to a certain threshold value (specifically, g x of ID “2” in FIG. 33). , G y ) or more, when the correction operation type determination unit 23 determines that the correction type is “movement of the work surface position”, the correction operation type determination unit 23 determines the correction type estimation process. Is finished (step S84). In addition, when the movement amount in the horizontal direction of the work surface (the bottom surface of the pan 3) is calculated by the correction operation type determination unit 23, specifically, the control unit 22 through the control parameter management unit 21 or the information acquisition unit 100. Then, the hand position of the robot arm 5 before the human operation and the hand position during the operation are input to the correction operation type determination unit 23, and a correction operation is performed using a value obtained by subtracting the hand position before the operation from the hand position during the operation. It can be calculated by the type determining unit 23. Further, when the movement amount in the direction perpendicular to the work surface (the pan bottom surface of the pan 3) is calculated by the correction operation type determination unit 23, specifically, the control parameter management unit 21 or the information acquisition unit 100 is controlled from the control unit 22. Then, the z component of the hand position of the robot arm 5 before the human operation and the z component of the hand position during the operation are input to the correction operation type determination unit 23, and the hand position before the operation is determined from the z component of the hand position during the operation. A value obtained by subtracting the z component of can be calculated by the correction operation type determination unit 23 as a movement amount.
 ステップS83にて、作業面(鍋3の鍋底面)の水平方向の移動量が前記ある閾値未満であると補正動作種別決定部23で判定された場合は、補正の種別として、作業面に水平な方向の「速度」の種別を決定して、補正種別推定処理を終了する(ステップS85)。 In step S83, when the correction operation type determination unit 23 determines that the horizontal movement amount of the work surface (the bottom surface of the pan 3) is less than the certain threshold value, the correction surface is horizontal as the correction type. The type of “speed” in the correct direction is determined, and the correction type estimation process is terminated (step S85).
 また、ステップS75で、作業面(鍋3の鍋底面)に垂直な力が前記ある閾値以上であると補正動作種別決定部23で判定された場合は、ステップS90へ進む。 In step S75, if the correction operation type determination unit 23 determines that the force perpendicular to the work surface (the bottom surface of the pan 3) is equal to or greater than the certain threshold value, the process proceeds to step S90.
 ステップS90で、作業手順情報データベース18での情報を基に対象物状態判断部19で対象物の状態を判断する。対象物状態判断部19から「1」を出力した場合、すなわち、対象物が焦げついているか、つぶれやすいか、又は、ねばりが強いと対象物状態判断部19で判断する場合は、補正の種別として「力の補正」と対象物状態判断部19で決定し(ステップS86)、補正種別推定処理を終了する。ステップS90で対象物状態判断部19で対象物の状態を判断し、「0」を出力した場合、すなわち、焦げていないか、硬いか、又は、ねばりが小さいと判断する場合は、ステップS82へ進む。 In step S90, the object state determination unit 19 determines the state of the object based on the information in the work procedure information database 18. When “1” is output from the object state determination unit 19, that is, when the object state determination unit 19 determines that the object is burnt, easily crushed, or has a strong stickiness, The “force correction” is determined by the object state determination unit 19 (step S86), and the correction type estimation process ends. If the object state is determined by the object state determination unit 19 in step S90 and “0” is output, that is, if it is determined that the object is not burnt, is hard, or has a small stickiness, the process proceeds to step S82. move on.
 また、ステップS82で作業面(鍋3の鍋底面)の垂直方向の移動量が前記ある閾値以下であると補正動作種別決定部23で判断する場合には、ステップS86へ進む。 In step S82, if the correction operation type determination unit 23 determines that the vertical movement amount of the work surface (the bottom surface of the pan 3) is equal to or less than the certain threshold value, the process proceeds to step S86.
 ステップS90で、対象物状態判断部19で対象物の状態を判断し、「0」を出力した場合、すなわち、対象物が焦げついているか、つぶれやすいか、又は、ねばりが強いと対象物状態判断部19で判断する場合は、さらに、補正動作種別決定部23で算出された作業面(鍋3の鍋底面)の垂直方向の移動量が、ある閾値より大きいか否かを補正動作種別決定部23で判断する(ステップS82)。 In step S90, when the state of the object is determined by the object state determination unit 19 and "0" is output, that is, the object state is determined to be burnt, easily crushed, or strong sticky. When determining by the unit 19, the correction operation type determination unit further determines whether or not the vertical movement amount of the work surface (the bottom surface of the pan 3) calculated by the correction operation type determination unit 23 is greater than a certain threshold value. The determination is made at step 23 (step S82).
 ステップS82において、作業面(鍋3の鍋底面)の垂直方向の移動量が、前記ある閾値より大きいと補正動作種別決定部23で判断する場合には、補正の種別して「作業面垂直方向の移動」の種別を補正動作種別決定部23で決定して、補正種別推定処理を終了する(ステップS87)
 このステップS90により、対象物が焦げついていたり、つぶれやすい状態であったり、又は、ねばりが強い場合には、力加減を調整しながら補正をすることができる。例えば、焦げついていている場合は力を強めたり、つぶれやすい場合は力を弱めたり、また、粘りが強い場合は力を強めにしてしっかり混ぜることができるようになる。
In step S82, when the correction operation type determining unit 23 determines that the vertical movement amount of the work surface (the bottom surface of the pan 3) is larger than the certain threshold value, the correction type is “work surface vertical direction”. The movement type "is determined by the correction operation type determination unit 23, and the correction type estimation process is terminated (step S87).
By this step S90, when the object is scorched, is in a state of being easily crushed, or has a strong stickiness, correction can be performed while adjusting the force. For example, if it is burnt, the power can be increased, if it is crushed easily, the power can be weakened, and if it is sticky, the power can be increased to mix well.
 以上により、ボタンなどのデータ入力IF26を使わずに、補正動作種別決定部23により、補正の種別を切り替えることができる。 As described above, the correction type can be switched by the correction operation type determination unit 23 without using the data input IF 26 such as a button.
 補正動作種別決定部23は、前記の5種類の種別のうち、1種類の種別を決定したが、2種類の補正の種別を同時に決定することもできる。 The correction operation type determination unit 23 determines one type of the above five types, but can also determine two types of correction at the same time.
 図3の補正動作種別決定方法設定部27は、補正動作種別決定部23で決定する出力数を設定する。しかしながら、出力数は、データ入力IF26を使って補正動作種別決定部23で入力して、人が決定するようにしてもよい。 The correction operation type determination method setting unit 27 in FIG. 3 sets the number of outputs determined by the correction operation type determination unit 23. However, the number of outputs may be input by the correction operation type determination unit 23 using the data input IF 26 and determined by a person.
 補正動作種別決定部23は、補正動作種別決定方法設定部27で設定された出力数に従って、補正の種別を決定する。具体的には、出力数が1の場合は、図42の補正の種別の推定方法のアルゴリズムで補正の種別を決定する。これにより、家事ロボット1を操作する人が操作に不慣れな場合は、出力数を1に設定することで、同時に2種類の補正ができないので、操作が簡単になる。逆に、操作に慣れてきて、同時に2種類の種別の補正を行いたい場合は、出力数を「2」の値に設定することで、補正を効率的に行なうことができるようになる。 The correction operation type determination unit 23 determines the correction type according to the number of outputs set by the correction operation type determination method setting unit 27. Specifically, when the number of outputs is 1, the correction type is determined by the algorithm of the correction type estimation method in FIG. As a result, when the person who operates the household robot 1 is not familiar with the operation, setting the number of outputs to 1 makes it impossible to perform two types of correction at the same time, thus simplifying the operation. On the other hand, if you are used to the operation and want to correct two types at the same time, the correction can be performed efficiently by setting the number of outputs to a value of “2”.
 上述の補正動作種別決定部23では、1種類の種別を出力するとしたが、第1実施形態と同様に2種類の種別を出力して補正しても良い。 The correction operation type determination unit 23 described above outputs one type, but it may output and correct two types as in the first embodiment.
 動作補正部20は、第1実施形態と同様に動作データベース17の位置と姿勢と時間とに基づいて動作中に、人の手16でロボットアーム5に力をかけることで、動作データベース17の動作情報を補正する機能である。 Similar to the first embodiment, the motion correction unit 20 applies the force to the robot arm 5 with the human hand 16 during the motion based on the position, posture, and time of the motion database 17, and thus the motion of the motion database 17. This function corrects information.
 以下、動作補正部20の機能について説明する。 Hereinafter, the function of the motion correction unit 20 will be described.
 人の手16で、家事ロボット1の作業台7に配置されているデータ入力IF26(例えば操作盤26Aの電源ボタン26aなど)により電源を入れると、動作補正部20は、インピーダンス制御モードで動作するよう、制御パラメータ管理部21へ指令を出す。 When the power is turned on by a human hand 16 using a data input IF 26 (for example, the power button 26a of the operation panel 26A) disposed on the work table 7 of the housework robot 1, the operation correction unit 20 operates in the impedance control mode. A command is issued to the control parameter management unit 21.
 次に、人の手16で、動作選択部29により、作業手順情報データベース18の作業の一覧の中から所望の作業を選択して、動作開始の指示を行う。動作補正部20は、作業手順情報データベース18の工程IDが示す動作IDの動作情報(具体的には、レール可動部8bの位置及びロボットアーム5の位置と姿勢と時間と)に基づきレール可動部8b及びロボットアーム5の制御モードを設定する。この例では、図35の作業ID「3」が選択されたので、動作データベース17の動作ID「1」に対するフラグ(有効性を示すフラグ)のうち、フラグのビットが「1」になっているロボットアーム5の位置及び姿勢のそれぞれに対して、ハイブリッドインピーダンス制御モード(位置制御モードで動作している最中に、人などからロボットアーム5に加わる力に応じて、ロボットアーム5が作動するモード)が動作補正部20で設定され、制御パラメータ管理部21へ指令を出す。動作補正部20から制御パラメータ管理部21へ指令を出すと、図38Aに示すように、かき混ぜ作業を開始する。 Next, with the human hand 16, the operation selection unit 29 selects a desired work from the work list in the work procedure information database 18 and gives an instruction to start the operation. The motion correction unit 20 is based on the motion information of the motion ID indicated by the process ID in the work procedure information database 18 (specifically, the position of the rail movable portion 8b and the position, posture, and time of the robot arm 5). The control mode of 8b and the robot arm 5 is set. In this example, since the work ID “3” in FIG. 35 is selected, the flag bit is “1” in the flag (the flag indicating validity) for the operation ID “1” in the operation database 17. A hybrid impedance control mode (a mode in which the robot arm 5 operates according to the force applied to the robot arm 5 from a person or the like while operating in the position control mode) for each position and posture of the robot arm 5 ) Is set by the operation correction unit 20, and a command is issued to the control parameter management unit 21. When a command is issued from the operation correction unit 20 to the control parameter management unit 21, a stirring operation is started as shown in FIG. 38A.
 力ハイブリッドインピーダンス制御モードの場合は、動作データベース17の動作IDに対するフラグ(有効性を示すフラグ)のうち、フラグのビットが「1」になっているロボットアーム5の位置及び姿勢のそれぞれに対して、ハイブリッドインピーダンス制御モード(位置制御モードで動作している最中に、人などからロボットアーム5に加わる力に応じて、ロボットアーム5が作動するモード)が動作補正部20で設定され、力のフラグ(有効性を示すフラグ)のビットが「1」になっている成分は力制御モードが動作補正部20で設定される。位置及び姿勢の6成分のうち、ハイブリッドインピーダンス制御モードも力制御モードもいずれも設定されていない成分は、インピーダンス制御モードが動作補正部20で設定される。 In the case of the force hybrid impedance control mode, among the flags for the action IDs in the action database 17 (flags indicating validity), for each position and posture of the robot arm 5 in which the flag bit is “1”. A hybrid impedance control mode (a mode in which the robot arm 5 is actuated according to the force applied to the robot arm 5 by a person or the like while operating in the position control mode) is set by the motion correction unit 20. The force control mode is set by the operation correction unit 20 for the component in which the bit of the flag (flag indicating validity) is “1”. Of the six components of position and orientation, the component for which neither the hybrid impedance control mode nor the force control mode is set has the impedance control mode set by the operation correction unit 20.
 例えば、図35の作業IDが「3」は、鍋底を擦りながらかき混ぜる作業を示しており、動作IDが「1」の場合のフラグは1,2,8ビット目のみ「1」であるので、x軸成分及びy軸成分に対しては、ハイブリッドインピーダンス制御モードが動作補正部20で設定されるとともに、z軸成分に対しては力制御モードが動作補正部20で設定され、姿勢成分に対してはインピーダンス制御モードが動作補正部20で設定される。 For example, the work ID “3” in FIG. 35 shows the work of stirring while rubbing the bottom of the pot, and the flag when the operation ID is “1” is “1” only in the first, second, and eighth bits. The hybrid impedance control mode is set by the motion correction unit 20 for the x-axis component and the y-axis component, and the force control mode is set by the motion correction unit 20 for the z-axis component. Thus, the impedance control mode is set by the operation correction unit 20.
 制御パラメータ管理部21は、動作補正部20から指令を受ける。すなわち、力ハイブリッドインピーダンス制御モードでかき混ぜ作業をするように動作補正部20から制御パラメータ管理部21へ指令を出すと、図38Aに示すように、かき混ぜ作業を開始する。 The control parameter management unit 21 receives a command from the operation correction unit 20. That is, when a command is issued from the operation correction unit 20 to the control parameter management unit 21 to perform the mixing operation in the force hybrid impedance control mode, the mixing operation is started as shown in FIG. 38A.
 次に、図38Dに示すように、もう少し横方向にロボットアーム5を平行移動させて作業させたい場合を例にとって説明する。 Next, as shown in FIG. 38D, an example will be described in which the robot arm 5 is desired to be moved in the horizontal direction for a while.
 図38Cに示すように、人の手16でロボットアーム5を直接把持して、作業面(鍋3の鍋底面)に対して平行移動するように作業面(鍋3の鍋底面)に平行に力をロボットアーム5にかける。 As shown in FIG. 38C, the robot arm 5 is directly gripped by a human hand 16 and is parallel to the work surface (the bottom surface of the pan 3) so as to move parallel to the work surface (the bottom surface of the pan 3). Apply force to the robot arm 5.
 補正動作種別決定部23により、情報取得部100で取得された、人の手16がロボットアーム5にかけた力と動作データベース17に記憶された情報とにより、図42のフローチャートに示した補正種別推定処理で補正の種別を推定して決定する。工程ID「2」で動作している最中に人の手16で作業面(鍋3の鍋底面)と水平な方向に力をロボットアーム5にかけてロボットアーム5をある閾値以上移動させている場合は、ステップS90により、工程ID「2」の場合の状態「2」の優先情報は「3」であるので、焦げつきを優先する。焦げつきは「1」で2以下である(焦げつき用の閾値の一例である「3」未満である)ので、対象物状態判断部19は「0」を出力する。ステップS90で「0」の場合はステップS82に進む。ステップS82で閾値を越えて移動しているため、「作業面垂直方向の移動」を決定する。工程ID「3」で動作している最中に人の手16で作業面(鍋3の鍋底面)と水平な方向に力をロボットアーム5にかけた場合は、ステップS90により、状態が「3」で、優先情報が「3」であるため、焦げつきを優先する。焦げつきが「3」である(焦げつき用の閾値の一例である「3」以上である)ため、対象物状態判断部19で「1」と判断され、対象物が焦げついているため、ステップS90により「力の補正」となる。これにより、焦げついている状態になると、力を強めに補正してかき混ぜることができるため、焦げつきを抑えることが可能となる。 The correction type estimation shown in the flowchart of FIG. 42 based on the force applied by the human hand 16 to the robot arm 5 and the information stored in the action database 17 acquired by the correction action type determination unit 23 by the information acquisition unit 100. The type of correction is estimated and determined by processing. While operating in the process ID “2”, when the human arm 16 moves the robot arm 5 by more than a certain threshold by applying a force to the robot arm 5 in a direction parallel to the work surface (the bottom surface of the pan 3). In step S90, since the priority information of the state “2” in the case of the process ID “2” is “3”, priority is given to scorching. Since the burning is “1” which is 2 or less (less than “3” which is an example of a burning threshold), the object state determination unit 19 outputs “0”. If “0” in step S90, the process proceeds to step S82. Since the movement exceeds the threshold value in step S82, “movement in the vertical direction of the work surface” is determined. When a force is applied to the robot arm 5 in the direction parallel to the work surface (the bottom surface of the pan 3) with the human hand 16 during operation in the process ID “3”, the state is changed to “3” in step S90. ”, Since the priority information is“ 3 ”, priority is given to scorching. Since the scoring is “3” (“3” or more, which is an example of a scoring threshold value), the object state determination unit 19 determines “1”, and the object is scoring. "Force correction". As a result, when it is in a burned state, it can be stirred with a stronger correction of power, so that it is possible to suppress scorching.
 また、工程ID「6」で動作している場合には、工程ID[6]の状態は「6」で優先情報は「3」すなわち剛性を優先する。状態ID「6」の剛性は「3」となり、剛性用の閾値の一例である「3」以上であるため、対象物状態判断部19は「0」を出力する。ステップS90で「0」であるため、移動量に応じて、「力の補正」もしくは「作業面垂直方向の移動」を決定する。工程ID「7」で動作している場合には、状態「7」の優先情報は「3」すなわち剛性を優先する。剛性の値は「1」となり、つぶれやすい状態となり、剛性用の閾値の一例である「3」未満のため、対象物状態判断部19は「1」を出力する。次いで、ステップS86により、補正の種別として「力の補正」の種別であると補正動作種別決定部23で決定する。これにより、つぶれやすい「じゃがいも」などは、力の加減を補正することで、つぶれないように、かき混ぜることが可能となる。 Also, when operating with the process ID “6”, the state of the process ID [6] is “6” and the priority information is “3”, that is, the rigidity is given priority. The rigidity of the state ID “6” is “3”, which is equal to or greater than “3”, which is an example of a stiffness threshold value, and therefore the object state determination unit 19 outputs “0”. Since “0” in step S90, “force correction” or “movement in the vertical direction of the work surface” is determined according to the amount of movement. When operating with the process ID “7”, the priority information of the state “7” gives priority to “3”, that is, rigidity. The stiffness value is “1”, which is easily crushed, and is less than “3”, which is an example of the stiffness threshold value. Therefore, the object state determination unit 19 outputs “1”. Next, in step S86, the correction operation type determination unit 23 determines that the correction type is “force correction”. As a result, “potatoes” that tend to be crushed can be mixed so that they will not be crushed by correcting the force.
 また、工程ID「5」もしくは工程ID「9」で動作中に、作業面に水平方向に力を加えて、閾値以上移動させた場合を説明する。ここでは、調理作業のより具体的な例として、カレー又はシチューを作る場合について説明する。工程ID「5」と工程ID「9」は、それぞれ、カレーのルー(又は、シチューのルー)と水を投入する前と投入した後の工程である。それぞれの状態は、いずれも優先情報「1」すなわち粘性を優先する。工程ID「5」では粘性の値が「1」となり、粘性用の閾値の一例である「3」未満であるため、対象物状態判断部19は「0」を出力する。ステップS83により、移動量が閾値以上であるため、ステップS84で「作業面の位置の移動」を決定する。工程ID「9」では粘性の値が「4」であり、粘性用の閾値の一例である「3」以上なので、対象物状態判断部19は「1」を出力する。次いで、ステップS85により、「速度の補正」を決定する。 In addition, a case will be described in which a force is applied to the work surface in the horizontal direction to move it beyond the threshold during operation with the process ID “5” or process ID “9”. Here, the case where curry or stew is made will be described as a more specific example of the cooking operation. The process ID “5” and the process ID “9” are processes before and after adding the curry roux (or stew roux) and water, respectively. In each state, priority information “1”, that is, viscosity is given priority. In the process ID “5”, the viscosity value is “1”, which is less than “3”, which is an example of a threshold value for viscosity. Therefore, the object state determination unit 19 outputs “0”. In step S83, since the movement amount is equal to or larger than the threshold value, “movement of the position of the work surface” is determined in step S84. In the process ID “9”, the viscosity value is “4”, which is equal to or greater than “3”, which is an example of a threshold value for viscosity, so the object state determination unit 19 outputs “1”. Next, in step S85, “speed correction” is determined.
 以上により、カレーのルー(又は、シチューのルー)を鍋内に投入して鍋の中の液体のねばりが強い場合には、かき混ぜ速度を速く補正することで、しっかり混ぜることができるようになる。 As described above, when the curry roux (or stew roux) is put into the pan and the stickiness of the liquid in the pan is strong, the mixing speed can be corrected quickly to make it possible to mix well. .
 図35の作業IDが「3」、動作IDが「1」に示す作業の場合は、x軸成分及びy軸成分は力ハイブリッドインピーダンス制御モードにより、位置制御モードでロボットアーム5を移動させながら、インピーダンス制御モードにより人の手16でロボットアーム5にかけられた力を力検出部53で検出して、人の手16でロボットアーム5に力をかけた方向に、ロボットアーム5をx軸方向及びy軸方向に移動させて、図38Dのように位置を補正することができる。 35, when the work ID is “3” and the action ID is “1”, the x-axis component and the y-axis component are moved by the force hybrid impedance control mode while moving the robot arm 5 in the position control mode. The force applied to the robot arm 5 by the human hand 16 in the impedance control mode is detected by the force detection unit 53, and the robot arm 5 is moved in the x-axis direction and in the direction in which the force is applied to the robot arm 5 by the human hand 16. By moving in the y-axis direction, the position can be corrected as shown in FIG. 38D.
 なお、この例では、x軸の方向及びy軸の方向にのみ動作を補正したいので、補正動作種別決定部23で補正の種別が決定されたタイミングで、補正動作種別決定部23により、図6の補正パラメータフラグの0,1ビット目を「1」に設定するとともに、その他のビットを「0」に設定して、補正動作種別決定部23から制御パラメータ管理部21へ指令を出すことで、x軸の方向及びy軸の方向以外の移動ができないように設定することができる。さらに、インピーダンス制御モード時の機械インピーダンス設定値を補正動作種別決定部23で変更して補正動作種別決定部23から制御パラメータ管理部21へ指令を出すことで、ロボットアーム5のx軸方向及びy軸方向の剛性を他の方向の剛性よりも低くして、人の手16でロボットアーム5をx軸方向及びy軸方向に動かしやすくし、x軸方向及びy軸方向以外の方向の剛性を高くして、人の手16でロボットアーム5をx軸方向及びy軸方向以外の方向に動かしにくくするようにすることができる。これにより、ロボットアーム5のx軸成分及びy軸成分のみを補正したい場合に、ロボットアーム5のz軸成分の補正を誤って行なうことがないようにすることができる。また、ロボットアーム5のx軸方向及びy軸方向の補正中に、補正動作種別決定部23により、z軸成分にかける力を、補正前の動作時より弱く若しくは小さく(具体的には半分程度に)することもできる。又は、力制御を停止するよう、補正動作種別決定部23から制御パラメータ管理部21へ指令を出すこともできる。具体的には、動作データベース17のフラグの6~17ビット目を「0」に補正動作種別決定部23で設定する。これにより、x軸方向及びy軸方向にロボットアーム5を移動させて補正している最中に、ロボットアーム5に力をかけて鍋3を傷つけるのを防ぐことができる。 In this example, since it is desired to correct the operation only in the x-axis direction and the y-axis direction, the correction operation type determination unit 23 performs the correction operation type determination unit 23 at the timing when the correction type is determined. By setting the 0th and 1st bits of the correction parameter flag to “1” and setting the other bits to “0” and issuing a command from the correction operation type determination unit 23 to the control parameter management unit 21, It can be set so that movements other than the direction of the x-axis and the direction of the y-axis cannot be performed. Furthermore, by changing the mechanical impedance setting value in the impedance control mode by the correction operation type determination unit 23 and issuing a command from the correction operation type determination unit 23 to the control parameter management unit 21, the x-axis direction and y of the robot arm 5 The rigidity in the axial direction is made lower than the rigidity in the other directions so that the robot arm 5 can be easily moved in the x-axis direction and the y-axis direction by the human hand 16, and the rigidity in directions other than the x-axis direction and the y-axis direction can be increased. The robot arm 5 can be made difficult to move in a direction other than the x-axis direction and the y-axis direction by the human hand 16. Thereby, when it is desired to correct only the x-axis component and the y-axis component of the robot arm 5, it is possible to prevent the z-axis component of the robot arm 5 from being erroneously corrected. Further, during the correction of the robot arm 5 in the x-axis direction and the y-axis direction, the force applied to the z-axis component by the correction operation type determination unit 23 is weaker or smaller than the operation before the correction (specifically, about half). You can also Alternatively, a command can be issued from the correction operation type determination unit 23 to the control parameter management unit 21 so as to stop the force control. Specifically, the 6th to 17th bits of the flag of the operation database 17 are set to “0” by the correction operation type determination unit 23. Accordingly, it is possible to prevent the pot 3 from being damaged by applying a force to the robot arm 5 during the correction by moving the robot arm 5 in the x-axis direction and the y-axis direction.
 上述のように、人の手16でロボットアーム5を把持して、作業面(鍋3の鍋底面)と水平な方向へ力をかけてロボットアーム5をΔx分及びΔy分だけx軸方向及びy軸方向に移動させた場合に、Δxの値及びΔyの値が、制御部22と制御パラメータ管理部21とを経由して、動作補正部20に送信される。 As described above, the robot arm 5 is gripped by a human hand 16 and a force is applied in a direction parallel to the work surface (the bottom surface of the pan 3) to cause the robot arm 5 to move in the x-axis direction by Δx and Δy. When moved in the y-axis direction, the value of Δx and the value of Δy are transmitted to the operation correction unit 20 via the control unit 22 and the control parameter management unit 21.
 動作補正部20では、選択された作業IDの動作情報の全てのx座標の値からΔxを減じ、さらに、全てのy座標の値から、Δyを減じて補正した動作情報を、動作補正部20から制御パラメータ管理部21へ送信する。制御パラメータ管理部21は、Δx分及びΔy分の補正した座標でロボットアーム5が動作するように制御部22へ指示する。これにより、図38Dのような動作に補正される。次に、Δx及びΔy分だけ減じた動作情報を、動作記憶部15で動作データベース17に記憶する。 The motion correction unit 20 subtracts Δx from all the x coordinate values of the motion information of the selected work ID, and further subtracts Δy from all the y coordinate values to correct the motion information corrected by the motion correction unit 20. To the control parameter management unit 21. The control parameter management unit 21 instructs the control unit 22 to operate the robot arm 5 with the corrected coordinates for Δx and Δy. This corrects the operation as shown in FIG. 38D. Next, the operation information reduced by Δx and Δy is stored in the operation database 17 by the operation storage unit 15.
 次に、図41Bのように、例えば、鍋3のかき混ぜ作業中に、別の鍋3aでかき混ぜ作業させる場合は、人の手16でロボットアーム5を直接把持して、作業面(鍋3の鍋底面)に対して垂直方向に移動するように作業面(鍋3の鍋底面)に垂直に力をロボットアーム5にかける。 Next, as shown in FIG. 41B, for example, when the mixing work of the pot 3 is performed with another pot 3a, the robot arm 5 is directly gripped by a human hand 16 and the work surface (the pot 3 A force is applied to the robot arm 5 perpendicular to the work surface (the bottom of the pan 3) so as to move in a direction perpendicular to the bottom of the pan).
 補正動作種別決定部23により、情報取得部100でそれぞれ取得された、人の手16がロボットアーム5にかけた力と動作データベース17の情報とにより、図42のフローチャートに示した補正種別推定処理で補正の種別を推定して決定する。ここでは、人の手16でロボットアーム5に作業面(鍋3の鍋底面)と垂直な方向に力をかけてロボットアーム5を前記ある閾値以上移動させているので、ステップS87において、補正の種別として「作業面の垂直方向の移動」の種別であると補正動作種別決定部23で決定する。 Based on the force applied by the human hand 16 to the robot arm 5 and the information in the motion database 17 respectively acquired by the information acquisition unit 100 by the correction operation type determination unit 23, the correction type estimation process shown in the flowchart of FIG. The type of correction is estimated and determined. Here, since the robot arm 5 is moved by the human hand 16 in a direction perpendicular to the work surface (the bottom surface of the pan 3) with the human hand 16 to move the robot arm 5 by more than the predetermined threshold value, in step S87, the correction is performed. The correction operation type determination unit 23 determines that the type is “movement of the work surface in the vertical direction”.
 力ハイブリッドインピーダンス制御モードにより、位置制御モードでロボットアーム5を移動させながら、インピーダンス制御モードにより、人の手16の力を力検出部53で検出してロボットアーム5に人の手16で力をかけた方向にロボットアーム5をz軸方向に移動させて、図41Cのようにかき混ぜ位置を補正することができる。 While the robot arm 5 is moved in the position control mode by the force hybrid impedance control mode, the force of the human hand 16 is detected by the force detection unit 53 by the impedance control mode and the force is applied to the robot arm 5 by the human hand 16. The agitation position can be corrected as shown in FIG. 41C by moving the robot arm 5 in the z-axis direction in the applied direction.
 なお、この例では、z軸の方向にのみ動作を補正したいので、補正動作種別決定部23で補正の種別が決定されたタイミングで、補正動作種別決定部23により、図6の2ビット目を「1」に設定するとともに、それ以外のビットを「0」に設定して、補正動作種別決定部23から制御パラメータ管理部21へ指令を出すことで、z軸方向以外の移動ができないように設定することができる。さらに、インピーダンス制御モード時の機械インピーダンス設定値を補正動作種別決定部23で変更して補正動作種別決定部23から制御パラメータ管理部21へ指令を出すことで、z軸方向の剛性を他の方向の剛性よりも低くして、人の手16でロボットアーム5をz軸方向に動かしやすくし、z軸方向以外の剛性を高くして、人の手16でロボットアーム5をz軸方向以外の方向に動かしにくくするようにすることができる。 In this example, since it is desired to correct the operation only in the z-axis direction, the correction operation type determination unit 23 performs the second bit of FIG. 6 at the timing when the correction type is determined by the correction operation type determination unit 23. By setting “1” and setting the other bits to “0” and issuing a command from the correction operation type determination unit 23 to the control parameter management unit 21, movement other than in the z-axis direction cannot be performed. Can be set. Further, by changing the mechanical impedance set value in the impedance control mode by the correction operation type determination unit 23 and issuing a command from the correction operation type determination unit 23 to the control parameter management unit 21, the rigidity in the z-axis direction is changed to another direction. The rigidity of the robot arm 5 is made easier to move in the z-axis direction with the human hand 16 and the rigidity other than in the z-axis direction is increased, and the robot arm 5 is moved in the direction other than the z-axis direction with the human hand 16. It can be made difficult to move in the direction.
 また、ロボットアーム5のz軸方向の動作を補正する際に、補正動作種別決定部23により、z軸成分の作業面にかける力を、補正前の動作時より弱く若しくは小さく(具体的には半分程度に)することもできる。又は、力制御を停止するよう、補正動作種別決定部23から制御パラメータ管理部21へ指令を出すこともできる。具体的には、動作データベース17のフラグの6~17ビット目を「0」に補正動作種別決定部23で設定する。これにより、z軸方向にロボットアーム5を移動させている最中に、ロボットアーム5に力をかけて鍋3を傷つけることを防ぐことができる。 Further, when correcting the movement of the robot arm 5 in the z-axis direction, the correction action type determination unit 23 causes the force applied to the work surface of the z-axis component to be weaker or smaller than that before the correction (specifically, It can also be about half). Alternatively, a command can be issued from the correction operation type determination unit 23 to the control parameter management unit 21 so as to stop the force control. Specifically, the 6th to 17th bits of the flag of the operation database 17 are set to “0” by the correction operation type determination unit 23. Thereby, it is possible to prevent the pot 3 from being damaged by applying a force to the robot arm 5 while moving the robot arm 5 in the z-axis direction.
 上述のように、人の手16でロボットアーム5を把持して、作業面(鍋3の鍋底面)と垂直な方向へ力をかけてロボットアーム5をΔz分だけz軸方向に移動させた場合に、Δzの値が、制御部22と制御パラメータ管理部21とを経由して、動作補正部20に送信される。 As described above, the robot arm 5 is grasped by the human hand 16 and the robot arm 5 is moved in the z-axis direction by Δz by applying a force in a direction perpendicular to the work surface (the bottom surface of the pan 3). In this case, the value of Δz is transmitted to the operation correction unit 20 via the control unit 22 and the control parameter management unit 21.
 動作補正部20では、選択された作業IDの動作情報の全てのz座標の値からΔzを減じて補正した動作情報を、動作補正部20から制御パラメータ管理部21へ送信する。制御パラメータ管理部21は、Δz分の補正した座標でロボットアーム5が動作するように制御部22へ指示する。これにより、図41Cのような動作に補正される。次に、Δz分減じた動作情報を、動作記憶部15で動作データベース17に記憶する。 The motion correction unit 20 transmits motion information corrected by subtracting Δz from all z coordinate values of the motion information of the selected work ID from the motion correction unit 20 to the control parameter management unit 21. The control parameter management unit 21 instructs the control unit 22 to operate the robot arm 5 with the corrected coordinates corresponding to Δz. This corrects the operation as shown in FIG. 41C. Next, the motion information reduced by Δz is stored in the motion database 17 by the motion storage unit 15.
 図39Cのように、例えば、ロボットアーム5の姿勢を変更させて作業させる場合は、図39Bのように、人の手16でロボットアーム5を直接把持して、変更したい方向にロボットアーム5のを移動させる。 For example, when the robot arm 5 is changed in posture as shown in FIG. 39C, the robot arm 5 is directly held by a human hand 16 and the robot arm 5 is moved in the direction to be changed as shown in FIG. 39B. Move.
 補正動作種別決定部23により、情報取得部100でそれぞれ取得された、人の手16がロボットアーム5にかけた力と動作データベース17の情報とにより、図42のフローチャートに示した補正種別推定処理で補正の種別を推定して決定する。ここでは、人の手16でロボットアーム5を変更したい方向に移動させようと力をかけているので、ステップS79において、補正の種別として「方向(姿勢)の変更」の種別であると補正動作種別決定部23で決定する。 Based on the force applied by the human hand 16 to the robot arm 5 and the information in the motion database 17 respectively acquired by the information acquisition unit 100 by the correction operation type determination unit 23, the correction type estimation process shown in the flowchart of FIG. The type of correction is estimated and determined. Here, since force is applied to move the robot arm 5 in the direction in which it is desired to be changed by the human hand 16, in step S79, if the type of correction is “change in direction (posture)”, the correction operation is performed. The type is determined by the type determining unit 23.
 力ハイブリッドインピーダンス制御モードにより、位置制御モードでロボットアーム5を移動させながら、インピーダンス制御モードにより、人の手16でロボットアーム5にかけた力を力検出部53で検出して、人の手16でロボットアーム5に力をかけた方向に、ロボットアーム5をφ軸方向に回転させて、図39Cのように方向を補正することができる。 While the robot arm 5 is moved in the position control mode by the force hybrid impedance control mode, the force applied to the robot arm 5 by the human hand 16 is detected by the force detection unit 53 by the impedance control mode. The direction can be corrected as shown in FIG. 39C by rotating the robot arm 5 in the φ axis direction in the direction in which a force is applied to the robot arm 5.
なお、この例では、φ軸の方向にのみ動作を補正したいので、補正動作種別決定部23で補正の種別が決定されたタイミングで、補正動作種別決定部23により、図6の補正パラメータフラグの3ビット目を「1」に設定するとともに、それ以外のビットを「0」に設定して、補正動作種別決定部23から制御パラメータ管理部21へ指令を出す。これにより、φ軸方向以外の方向への移動ができないように補正動作種別決定部23で設定することができる。さらに、インピーダンス制御モード時の機械インピーダンス設定値を補正動作種別決定部23で変更して補正動作種別決定部23から制御パラメータ管理部21へ指令を出すことで、φ軸方向の剛性を他の方向の剛性より低くして、人の手16でロボットアーム5をφ軸方向に動かしやすくし、φ軸方向以外の剛性を高くして、人の手16でロボットアーム5をφ軸方向以外の方向に動かしにくくするようにすることができる。 In this example, since it is desired to correct the operation only in the direction of the φ axis, the correction operation type determination unit 23 sets the correction parameter flag in FIG. 6 at the timing when the correction type is determined by the correction operation type determination unit 23. The third bit is set to “1” and the other bits are set to “0”, and a command is issued from the correction operation type determination unit 23 to the control parameter management unit 21. As a result, the correction operation type determination unit 23 can set the movement not to move in the direction other than the φ-axis direction. Further, the mechanical impedance set value in the impedance control mode is changed by the correction operation type determination unit 23, and a command is issued from the correction operation type determination unit 23 to the control parameter management unit 21, so that the rigidity in the φ-axis direction is changed to another direction. The rigidity of the robot arm 5 is made easier to move in the φ-axis direction by the human hand 16 and the rigidity other than the φ-axis direction is increased, and the robot arm 5 is moved in the direction other than the φ-axis direction by the human hand 16. It can be made difficult to move.
 また、ロボットアーム5のφ軸方向の補正中に、補正動作種別決定部23により、z軸成分の作業面(鍋3の鍋底面)にかける力を、補正前の動作時より弱く若しくは小さく(具体的には半分程度に)することができる。又は、力制御を停止するよう、補正動作種別決定部23から制御パラメータ管理部21へ指令を出すこともできる。具体的には、動作データベース17のフラグの6~17ビット目を「0」に補正動作種別決定部23で設定する。これにより、φ軸方向に移動させている最中に、ロボットアーム5に力をかけて鍋3の鍋底などを傷つけることを防ぐことができる。 Further, during the correction of the robot arm 5 in the φ-axis direction, the force applied to the z-axis component work surface (the bottom surface of the pan 3) by the correction operation type determination unit 23 is weaker or smaller than that during the operation before the correction ( Specifically, it can be about half). Alternatively, a command can be issued from the correction operation type determination unit 23 to the control parameter management unit 21 so as to stop the force control. Specifically, the 6th to 17th bits of the flag of the operation database 17 are set to “0” by the correction operation type determination unit 23. Thereby, it is possible to prevent the bottom of the pan 3 from being damaged by applying force to the robot arm 5 during the movement in the φ axis direction.
 上述のように、人の手16でロボットアーム5を把持して、作業面(鍋3の鍋底面)と垂直な方向へ力をかけてロボットアーム5をΔφ分だけφ軸方向に回転させた場合に、Δφの値が、制御部22と制御パラメータ管理部21とを経由して、動作補正部20に送信される。 As described above, the robot arm 5 is grasped by the human hand 16 and the robot arm 5 is rotated in the φ axis direction by Δφ by applying a force in a direction perpendicular to the work surface (the bottom of the pan 3). In this case, the value of Δφ is transmitted to the operation correction unit 20 via the control unit 22 and the control parameter management unit 21.
 動作補正部20では、選択された作業IDの動作情報の全てのφ座標の値からΔφを減じて補正した動作情報を、動作補正部20から制御パラメータ管理部21へ送信する。制御パラメータ管理部21は、Δφ分の補正した座標でロボットアーム5が動作するように制御部22へ指示する。これにより、図39Cのような動作に補正される。次に、Δφ分だけ減じた動作情報を、動作記憶部15で動作データベース17に記憶する。 The motion correction unit 20 transmits the motion information corrected by subtracting Δφ from all the φ coordinate values of the motion information of the selected work ID from the motion correction unit 20 to the control parameter management unit 21. The control parameter management unit 21 instructs the control unit 22 to operate the robot arm 5 with the corrected coordinates corresponding to Δφ. This corrects the operation as shown in FIG. 39C. Next, the operation information reduced by Δφ is stored in the operation database 17 in the operation storage unit 15.
 以上により、動作補正部20は、動作データベース17の位置と姿勢と時間とにより、ハイブリッドインピーダンス制御モードもしくは力ハイブリッドインピーダンス制御モードで動作している状態で、人の手16でロボットアーム5に力をかけることで、生成された位置を方向別に補正することができるようになる。 As described above, the motion correction unit 20 applies force to the robot arm 5 with the human hand 16 while operating in the hybrid impedance control mode or the force hybrid impedance control mode depending on the position, posture, and time of the motion database 17. By applying, the generated position can be corrected for each direction.
 次に、図36Cのように、かき混ぜ作業時の作業面(鍋3の鍋底面)に対する力を変更する場合は、人の手16でロボットアーム5を直接把持して、作業面(鍋3の鍋底面)に対して垂直方向に力をロボットアーム5にかける。 Next, as shown in FIG. 36C, when the force on the work surface (the bottom surface of the pan 3) at the time of the agitation work is changed, the robot arm 5 is directly gripped by the human hand 16 and the work surface (the pan 3) A force is applied to the robot arm 5 in a direction perpendicular to the bottom of the pan).
 補正動作種別決定部23により、情報取得部100でそれぞれ取得された、人の手16がロボットアーム5にかけた力と動作データベース17の情報とにより、図42のフローチャートに示した補正種別推定処理で補正の種別を推定して決定する。ここでは、人の手16で作業面(鍋3の鍋底面)と垂直な方向に力をロボットアーム5にかけて、ロボットアーム5を前記ある閾値以上移動させていないので、ステップS86において、補正の種別として「力の補正」の種別であると補正動作種別決定部23で決定する。 Based on the force applied by the human hand 16 to the robot arm 5 and the information in the motion database 17 respectively acquired by the information acquisition unit 100 by the correction operation type determination unit 23, the correction type estimation process shown in the flowchart of FIG. The type of correction is estimated and determined. Here, since a force is applied to the robot arm 5 in the direction perpendicular to the work surface (the bottom surface of the pan 3) with the human hand 16 and the robot arm 5 is not moved beyond the certain threshold value, the type of correction is determined in step S86. The correction action type determination unit 23 determines that the type is “force correction”.
 補正動作種別決定部23で補正の種別が「力の補正」であると決定したタイミングで、力ハイブリッドインピーダンス制御モードから高剛性位置制御モードで動作するよう補正動作種別決定部23から制御パラメータ管理部21へ指令を出す。補正動作種別決定部23から制御パラメータ管理部21への指令時に、高剛性位置制御モードでは、方向別に位置制御時の高剛性を補正動作種別決定部23で設定することができるため、例えば図35の動作データベース17の作業ID「3」でかつ動作ID「1」の動作のフラグは、0、1、8ビットが「1」に設定されているので、z軸方向は力制御モードで動作し、その他の方向はハイブリッドインピーダンス制御モードで動作するため、z軸方向のみ高剛性位置制御モードで動作し、その他の方向はハイブリッドインピーダンス制御モードで動作するよう、補正動作種別決定部23から制御パラメータ管理部21へ指令を出す。 At the timing when the correction operation type determination unit 23 determines that the correction type is “force correction”, the correction operation type determination unit 23 controls the control parameter management unit to operate in the high-rigidity position control mode from the force hybrid impedance control mode. A command is issued to 21. In the high-rigidity position control mode, the high-rigidity at the time of position control can be set in the high-rigidity position control mode by the correction-operation-type determining unit 23 at the time of command from the correction operation type determining unit 23 to the control parameter management unit 21. Since the operation flag of operation ID “3” and operation ID “1” in the operation database 17 is set to “1” in the 0, 1, and 8 bits, the z-axis direction operates in the force control mode. Since the other directions operate in the hybrid impedance control mode, the control parameter management unit 23 controls the control parameters so that only the z-axis direction operates in the high-rigidity position control mode and the other directions operate in the hybrid impedance control mode. A command is issued to the unit 21.
 次に、図36Bに示すように、ロボットアーム5がかき混ぜ作業の動作をしている最中に、人の手16でロボットアーム5を直接把持して、かき混ぜる力を強めに変更をしたい場合には、人の手16で作業面(鍋3の鍋底面)に向かってロボットアーム5に下方向に力をかける。高剛性位置制御モードでは、ハイブリッドインピーダンス制御モードのうち、方向別設定された位置制御モードを、さらに高剛性にしたモードで、かつ、位置誤差補償部56でのゲインを大きく(具体的には、通常の位置制御モードの2倍程度に)することで実現し、人の手16でロボットアーム5に力をかけると、ロボットアーム5を容易に移動させないようにすることができ、人の手16でロボットアーム5にかけた力を力検出部53で検出することができる。制御部22の力検出部53で検出された力を動作補正部20に通知する。動作補正部20に通知された力を、動作記憶部15で動作データベース17に記憶することで、強めにかき混ぜるよう動作を補正することができる。 Next, as shown in FIG. 36B, when the robot arm 5 is performing the mixing operation, and the robot arm 5 is directly held by the human hand 16 and it is desired to change the mixing force to be stronger. Applies a downward force to the robot arm 5 toward the work surface (the bottom surface of the pan 3) with a human hand 16. In the high-rigidity position control mode, the hybrid impedance control mode is a mode in which the position control mode set for each direction is further increased in rigidity, and the gain in the position error compensation unit 56 is increased (specifically, When the force is applied to the robot arm 5 with the human hand 16, the robot arm 5 can be prevented from moving easily. Thus, the force applied to the robot arm 5 can be detected by the force detection unit 53. The force detected by the force detection unit 53 of the control unit 22 is notified to the operation correction unit 20. By storing the force notified to the motion correction unit 20 in the motion database 17 in the motion storage unit 15, the motion can be corrected so as to stir strongly.
 人が補正を終了したい場合は、ロボットアーム5を把持して力をロボットアーム5にかけることを止める。 When the person wants to finish the correction, the robot arm 5 is gripped to stop applying force to the robot arm 5.
 人の手16でロボットアーム5に力をかけない場合は、図42のステップS72により、力の全ての成分が前記閾値以下になるので、補正動作種別決定部23により、補正の種別として「補正なし」であると決定する(図42のステップS88)。動作補正部20は、「補正なし」の情報を受けて、高剛性の位置制御モードからハイブリッドインピーダンス制御モードで制御するよう、補正動作種別決定部23から制御パラメータ管理部21に指令を出す。これにより、補正後の動作データベース17でかき混ぜ動作を行う。 When no force is applied to the robot arm 5 with the human hand 16, all the components of the force are equal to or less than the threshold values in step S72 of FIG. 42, so that the correction operation type determination unit 23 sets “correction” as the correction type. "None" (step S88 in FIG. 42). The motion correction unit 20 receives the information of “no correction” and issues a command from the correction operation type determination unit 23 to the control parameter management unit 21 so as to control from the highly rigid position control mode to the hybrid impedance control mode. Thus, the mixing operation is performed in the corrected operation database 17.
 以上により、動作補正部20は、動作データベース17の力の情報により、ハイブリッドインピーダンス制御モードで動作している状態で、人の手16が力をかけることで、補正された力で作業するように補正することができるようになる。 As described above, the motion correction unit 20 works with the corrected force by applying the force of the human hand 16 in the state of operating in the hybrid impedance control mode based on the force information of the motion database 17. It becomes possible to correct.
 次に、図40Bのように、かき混ぜ速度を変更する場合は、人の手16でロボットアーム5を直接把持して、加速したい場合は、進行方向と同じ向きに人の手16でロボットアーム5に力をかけ、減速したい場合は進行方向に逆らう向きに人の手16でロボットアーム5に力をかける。その際に、ロボットアーム5の手先位置の速度を変えても良いが、位置は、前記ある閾値以上動かさないように人の手16でロボットアーム5に力をかける。 Next, as shown in FIG. 40B, when the mixing speed is changed, the robot arm 5 is directly held by the human hand 16 and accelerated. When it is desired to decelerate, the human arm 16 applies force to the robot arm 5 in the direction opposite to the traveling direction. At this time, the speed of the hand position of the robot arm 5 may be changed, but the force is applied to the robot arm 5 with the human hand 16 so as not to move the position beyond the certain threshold.
 補正動作種別決定部23により、情報取得部100でそれぞれ取得された、人の手16でロボットアーム5にかけた力と動作データベース17の情報とにより、図42のフローチャートに示した補正種別推定処理で補正の種別を推定して決定する。ここでは、人の手16で作業面(鍋3の鍋底面)に水平な方向に力をロボットアーム5にかけて、ロボットアーム5を前記ある閾値以上移動させていないので、図42のステップS85により、補正の種別として、作業面(鍋3の鍋底面)に水平な方向の「速度」の種別であると補正動作種別決定部23で決定する。 The correction type estimation process shown in the flowchart of FIG. 42 is performed based on the force applied to the robot arm 5 with the human hand 16 and the information in the action database 17 respectively acquired by the correction action type determination part 23 by the information acquisition part 100. The type of correction is estimated and determined. Here, since a force is applied to the robot arm 5 in the direction horizontal to the work surface (the bottom surface of the pan 3) with the human hand 16 and the robot arm 5 is not moved beyond the certain threshold, step S85 in FIG. As the type of correction, the correction operation type determination unit 23 determines that the type is “speed” in the direction horizontal to the work surface (the bottom of the pan 3).
 ハイブリッドインピーダンス制御モードにより、位置制御モードでロボットアーム5を移動させながら、インピーダンス制御モードにより、人の手16でロボットアーム5にかけた力を力検出部53で検出して、人の手16でロボットアーム5に力をかけた方向に、ロボットアーム5をx軸方向及びy軸方向に移動させる。動作データベース17で例えば作業IDと動作IDとで示されたロボットアーム5の位置(x、y、z)から、次の動作IDのロボットアーム5の位置(x、y、z)まで移動するのにかかる時間をtとすると、ロボットアーム5の速度を人の手16の力で変更した場合(図40B参照)には、すなわち、位置(x、y、z)から位置(x、y、z)までに移動するのにかかる時間がtからtに変更された場合には、時間tの値が、制御部22と制御パラメータ管理部21とを経由して、動作補正部20に送信される。動作補正部20では、選択された作業IDの動作情報について、tの時間からtの時間に変更して、動作補正部20から制御パラメータ管理部21へ送信する。制御パラメータ管理部21において、補正した時間であるtで動作するように制御パラメータ管理部21から制御部22へ指示する。これにより、図40Cのような動作に補正される。次に、時間tを、動作記憶部15で動作データベース17に記憶する。 While the robot arm 5 is moved in the position control mode by the hybrid impedance control mode, the force applied to the robot arm 5 by the human hand 16 is detected by the force detection unit 53 by the impedance control mode, and the robot is moved by the human hand 16. The robot arm 5 is moved in the x-axis direction and the y-axis direction in the direction in which a force is applied to the arm 5. From the position of the robot arm 5 shown in the operation database 17, for example, work ID operation ID as (x 1, y 2, z 1), the position of the robot arm 5 of the next operation ID (x 2, y 2, z 2 ) If the time taken to move to t) is t 1 , when the speed of the robot arm 5 is changed by the force of the human hand 16 (see FIG. 40B), that is, the position (x 1 , y 2 , z 1 ) to the position (x 2 , y 2 , z 2 ), when the time taken to move from t 1 to t 2 is changed, the value of time t 2 is controlled by the control unit 22 and control parameter management. It is transmitted to the operation correction unit 20 via the unit 21. The motion correction unit 20 changes the motion information of the selected work ID from the time t 1 to the time t 2 and transmits the motion information from the motion correction unit 20 to the control parameter management unit 21. In the control parameter managing unit 21 instructs the control parameter managing unit 21 to operate in t 2 is corrected time to the control unit 22. This corrects the operation as shown in FIG. 40C. Next, the time t 2 is stored in the operation database 17 by the operation storage unit 15.
 以上により、動作補正部20は、動作データベース17の位置と姿勢と時間との情報により、力ハイブリッドインピーダンス制御モードで動作している状態で、人の手16でロボットアーム5に力をかけることで、ロボットアーム5の動作速度を補正することができるようになる。 As described above, the motion correction unit 20 applies the force to the robot arm 5 with the human hand 16 while operating in the force hybrid impedance control mode based on the information on the position, posture, and time of the motion database 17. The operation speed of the robot arm 5 can be corrected.
 なお、前記様々な実施形態又は変形例のうちの任意の実施形態又は変形例を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。 It should be noted that, by appropriately combining any of the various embodiments or modifications, the effects possessed by them can be produced.
 本発明は、家庭用ロボットなど、人とロボットとが協調して作業を行う際の家事ロボットのロボットアームの動作の制御を行う、ロボットアームの制御装置及び制御方法、家事ロボット、ロボットアームの制御プログラム、及び、ロボットアーム制御用集積電子回路として有用である。 The present invention relates to a robot arm control device and control method, a house robot, and a robot arm control for controlling the operation of a robot arm of a house robot when a person and a robot work together such as a home robot. It is useful as an integrated electronic circuit for program and robot arm control.
 本発明は、添付図面を参照しながら好ましい実施形態に関連して充分に記載されているが、この技術の熟練した人々にとっては種々の変形又は修正は明白である。そのような変形又は修正は、添付した請求の範囲による本発明の範囲から外れない限りにおいて、その中に含まれると理解されるべきである。 Although the present invention has been fully described in connection with preferred embodiments with reference to the accompanying drawings, various variations or modifications will be apparent to those skilled in the art. Such changes and modifications are to be understood as being included therein unless they depart from the scope of the invention as defined by the appended claims.

Claims (18)

  1.  ロボットアームの動作を制御して、家庭内で前記ロボットアームにより家事作業の対象物に作用しながら家事作業を行うロボットアームの制御装置であって、
     前記ロボットアームに作用する人の力を検出する力検出手段と、
     前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と前記力検出手段で検出された前記人の力に関する情報とをそれぞれ取得する情報取得部と、
     前記対象物の状態を判断する対象物状態判断手段と、
     前記情報取得部でそれぞれ取得した前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と前記人の力に関する情報と前記対象物状態判断手段で判断された前記対象物の状態とから前記動作を補正する補正動作の種別を決定する補正動作種別決定手段と、
     予め定められた前記ロボットアームの前記家事作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記ロボットアームを制御して前記動作を補正する動作補正手段とを備えるロボットアームの制御装置。
    A control device for a robot arm that controls the operation of the robot arm and performs housework work while acting on the object of housework work by the robot arm in the home,
    Force detecting means for detecting the force of a person acting on the robot arm;
    An information acquisition unit for acquiring information on the operation including the position of the robot arm in the housework and information on the human force detected by the force detection unit;
    Object state determination means for determining the state of the object;
    The motion from the information regarding the motion including the position of the robot arm in the housework work acquired by the information acquisition unit, the information regarding the force of the person, and the state of the target determined by the target state determination means. Corrective action type determining means for determining the type of corrective action for correcting
    Information regarding the human force detected by the force detection unit and acquired by the information acquisition unit and the correction operation determined by the correction operation type determination unit during the domestic work of the robot arm determined in advance. A robot arm control device comprising: motion correction means for controlling the robot arm and correcting the motion according to the type.
  2.  前記動作に関する情報は、前記ロボットアームが行う前記家事作業に応じた、前記ロボットアームの前記位置の情報と、前記ロボットアームから作業面にかける力情報と、前記ロボットアームの方向に関する情報と、前記ロボットアームの吸引力の強さに関する情報と、前記ロボットアームの速度情報と、前記ロボットアームの作業を行わない領域に関する情報である作業不可領域情報とのうちの少なくとも1つの情報を有する請求項1に記載のロボットアームの制御装置。 Information on the operation includes information on the position of the robot arm according to the housework performed by the robot arm, information on force applied to the work surface from the robot arm, information on the direction of the robot arm, The information on at least one of information on the strength of the suction force of the robot arm, speed information on the robot arm, and work non-operation area information which is information on an area where the robot arm is not operated. The control device for the robot arm described in 1.
  3.  前記動作に関する情報は、前記ロボットアームが行う前記家事作業に応じた、前記ロボットアームから前記作業面にかける力情報と、前記ロボットアームの吸引力の強さに関する情報とを少なくとも有し、
     前記動作補正手段は、前記動作に関する情報に基づいて、予め設定された力を前記ロボットアームから前記作業面に作用させて前記動作を行なう力制御モードを前記ロボットアームが移動可能なxyz軸方向のそれぞれの軸別に設定して前記動作を前記ロボットアームで行っている最中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に応じて、補正動作前の前記動作に関する情報のうちの前記設定された力の大きさ又は方向を補正する請求項1に記載のロボットアームの制御装置。
    The information on the operation includes at least force information applied from the robot arm to the work surface according to the housework performed by the robot arm, and information on the strength of the suction force of the robot arm,
    The motion correction unit is configured to perform a force control mode in which the robot arm can move in a xyz-axis direction in which a predetermined force is applied to the work surface from the robot arm based on the information related to the motion. The operation before the correction operation according to the force of the person detected by the force detection means and acquired by the information acquisition unit while performing the operation by the robot arm by setting for each axis The robot arm control device according to claim 1, wherein the magnitude or direction of the set force among the information on the robot is corrected.
  4.  前記動作に関する情報は、前記ロボットアームが行う前記家事作業に応じた、前記ロボットアームの前記位置の情報と、前記ロボットアームの方向に関する情報と、前記ロボットアームの速度情報と、作業を行わない領域に関する情報である作業不可領域情報とを有し、
     前記動作補正手段は、前記動作に関する情報に基づいて、前記ロボットアームの位置を制御する位置制御モードで動作している最中に、前記ロボットアームに対して前記人から前記ロボットアームに加わる力に応じて前記ロボットアームが作動するインピーダンス制御モードを前記ロボットアームが移動可能なxyz軸方向のそれぞれの軸別に設定して前記作業を動作させている最中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に応じて、前記インピーダンス制御での前記動作に関する情報の前記動作を補正する請求項1に記載のロボットアームの制御装置。
    The information related to the operation includes information on the position of the robot arm, information on the direction of the robot arm, speed information on the robot arm, and a region where no work is performed, according to the housework performed by the robot arm. Non-workable area information that is information about
    The motion correction means is configured to apply a force applied to the robot arm from the person to the robot arm while operating in a position control mode for controlling the position of the robot arm based on information on the motion. In response, the impedance detection mode in which the robot arm operates is set for each axis in the xyz axis direction in which the robot arm can move, and the operation is performed while the operation is being performed. The robot arm control device according to claim 1, wherein the operation of the information related to the operation in the impedance control is corrected according to the force of the person acquired by the information acquisition unit.
  5.  前記補正動作種別決定手段で決定した前記補正動作の種別に基づき、前記ロボットアームの機械インピーダンス設定値を設定する制御パラメータ管理手段と、
     前記制御パラメータ管理手段の設定した前記機械インピーダンス設定値に、前記ロボットアームの前記機械インピーダンスの値を制御するインピーダンス制御手段とをさらに備える請求項1~4のいずれか1つに記載のロボットアームの制御装置。
    Control parameter management means for setting a mechanical impedance setting value of the robot arm based on the type of the correction action determined by the correction action type determination means;
    The robot arm according to any one of claims 1 to 4, further comprising impedance control means for controlling the mechanical impedance value of the robot arm to the mechanical impedance setting value set by the control parameter management means. Control device.
  6. 前記インピーダンス制御手段は、前記補正動作の種別に基づき、前記ロボットアームの前記手先の並進方向及び回転方向の6軸の方向の機械インピーダンス設定値を個別に設定するとともに、
     さらに、前記補正動作種別決定部で決定された前記補正動作の種別として、前記手先の前記ロボットアームの方向を補正するとき、前記制御パラメータ管理手段は、前記ロボットアームの補正したい方向の剛性を、前記ロボットアームの前記補正したい方向とは異なる方向の剛性よりも高くなるように前記機械インピーダンス設定値を設定する請求項5に記載のロボットアームの制御装置。
    The impedance control means individually sets mechanical impedance setting values for the six axes of the translation direction and the rotation direction of the hand of the robot arm based on the type of the correction operation,
    Further, when correcting the direction of the robot arm of the hand as the type of the correction operation determined by the correction operation type determination unit, the control parameter management means, the rigidity of the robot arm in the direction to be corrected, The robot arm control device according to claim 5, wherein the mechanical impedance setting value is set to be higher than a rigidity of the robot arm in a direction different from the direction to be corrected.
  7.  前記補正動作種別決定手段は、前記ロボットアームの前記手先の位置の前記作業面に平行な方向の移動量を検出するとともに、
     前記補正動作種別決定手段は、前記作業面に垂直な方向の力成分が第1の閾値以下であり、かつ前記作業面に平行な方向の力成分が第2の閾値以上である場合に、前記補正動作種別決定手段により検出された前記ロボットアームの前記手先の位置の前記作業面に平行な方向の移動量が第3閾値以上である場合に、前記補正動作の種別として、作業面の位置の移動の種別であると決定し、
     さらに、前記動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記作業面に平行な方向に前記ロボットアームの前記手先の位置を補正する請求項1に記載のロボットアームの制御装置。
    The correction operation type determination means detects the amount of movement of the position of the hand of the robot arm in a direction parallel to the work surface,
    When the force component in the direction perpendicular to the work surface is equal to or less than a first threshold and the force component in the direction parallel to the work surface is equal to or greater than a second threshold, When the amount of movement of the position of the hand of the robot arm detected by the correction operation type determining means in the direction parallel to the work surface is equal to or greater than a third threshold value, the position of the work surface is determined as the type of correction operation. Decide that it is the type of movement,
    Further, the motion correction means, according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction action determined by the correction action type determination means, The robot arm control device according to claim 1, wherein the position of the hand of the robot arm is corrected in a direction parallel to the work surface.
  8.  前記補正動作種別決定手段は、前記ロボットアームの前記手先の位置の前記作業面に垂直な方向の移動量を検出するとともに、
     前記補正動作種別決定手段は、前記作業面に垂直な方向の力成分が第1の閾値以上であり、かつ、前記補正動作種別決定手段で検出された前記ロボットアームの前記手先の位置の前記作業面に垂直な方向の移動量が第4の閾値より大きい場合に、前記補正動作の種別として、作業面垂直方向の位置の移動の種別であると決定し、
     さらに、前記動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記作業面に垂直な方向に前記ロボットアームの前記手先の位置を補正する請求項1に記載のロボットアームの制御装置。
    The correction operation type determination means detects the amount of movement of the position of the hand of the robot arm in a direction perpendicular to the work surface,
    The correction operation type determination means has a force component in a direction perpendicular to the work surface equal to or greater than a first threshold, and the operation at the position of the hand of the robot arm detected by the correction operation type determination means. When the amount of movement in the direction perpendicular to the surface is greater than a fourth threshold, the type of the correction operation is determined as the type of movement of the position in the direction perpendicular to the work surface,
    Further, the motion correction means, according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction operation determined by the correction operation type determination means, The robot arm control device according to claim 1, wherein the position of the hand of the robot arm is corrected in a direction perpendicular to the work surface.
  9.  前記補正動作種別決定手段は、前記ロボットアームの前記手先の位置の前記作業面に垂直な方向の移動量を検出するとともに、
     前記補正動作種別決定手段は、前記作業面に垂直な方向の力成分が第1の閾値以上であり、かつ、前記補正動作種別決定手段で検出された前記ロボットアームの前記手先の位置の前記作業面に垂直な方向の移動量が第4の閾値以下であり、かつ、前記家事作業が拭き作業である場合に、前記補正動作の種別として、力のかけ具合の補正の種別であると決定し、
     さらに、前記動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記作業面に垂直な方向への前記ロボットアームのかかる力を補正する請求項1に記載のロボットアームの制御装置。
    The correction operation type determination means detects the amount of movement of the position of the hand of the robot arm in a direction perpendicular to the work surface,
    The correction operation type determination means has a force component in a direction perpendicular to the work surface equal to or greater than a first threshold, and the operation at the position of the hand of the robot arm detected by the correction operation type determination means. When the amount of movement in the direction perpendicular to the surface is less than or equal to a fourth threshold and the housework operation is a wiping operation, the type of correction operation is determined to be a correction type of force application ,
    Further, the motion correction means, according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction action determined by the correction action type determination means, The robot arm control device according to claim 1, wherein a force applied by the robot arm in a direction perpendicular to the work surface is corrected.
  10.  前記補正動作種別決定手段は、前記ロボットアームの前記手先の位置の前記作業面に垂直な方向の移動量を検出するとともに、
     前記補正動作種別決定手段は、前記作業面に垂直な方向の力成分が第1の閾値以上であり、かつ、前記補正動作種別決定手段で検出された前記ロボットアームの前記手先の位置の前記作業面に垂直な方向の移動量が第4の閾値以下であり、かつ、前記家事作業が吸引作業である場合に、前記補正動作の種別として、吸引力の補正の種別であると決定し、
     さらに、前記動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記作業面に垂直な方向への前記吸引力を補正する請求項1に記載のロボットアームの制御装置。
    The correction operation type determination means detects the amount of movement of the position of the hand of the robot arm in a direction perpendicular to the work surface,
    The correction operation type determination means has a force component in a direction perpendicular to the work surface equal to or greater than a first threshold, and the operation at the position of the hand of the robot arm detected by the correction operation type determination means. When the amount of movement in the direction perpendicular to the surface is a fourth threshold value or less and the housework work is a suction work, it is determined that the type of the correction operation is a type of correction of the suction force,
    Further, the motion correction means, according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction action determined by the correction action type determination means, The robot arm control device according to claim 1, wherein the suction force in a direction perpendicular to the work surface is corrected.
  11.  前記補正動作種別決定手段は、前記ロボットアームの前記手先の位置の前記作業面に平行な方向の移動量を検出するとともに、
     前記補正動作種別決定手段は、前記作業面に垂直な方向の力成分が第1閾値未満であり、かつ、前記作業面に平行な方向の力成分が第2閾値以上である場合に、前記補正動作種別決定手段により検出された前記ロボットアームの前記手先の位置の前記作業面に平行な方向の移動量が第3閾値未満である場合に、前記補正動作の種別として、速度の補正の種別であると決定し、
     さらに、前記動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記作業面に平行な方向に前記ロボットアームの前記手先の位置の速度を補正する請求項1に記載のロボットアームの制御装置。
    The correction operation type determination means detects the amount of movement of the position of the hand of the robot arm in a direction parallel to the work surface,
    The correction operation type determination unit is configured to correct the correction when a force component in a direction perpendicular to the work surface is less than a first threshold value and a force component in a direction parallel to the work surface is greater than or equal to a second threshold value. When the movement amount in the direction parallel to the work surface of the position of the hand of the robot arm detected by the action type determining means is less than a third threshold, the correction action type is a speed correction type. Determined that there was
    Further, the motion correction means, according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction operation determined by the correction operation type determination means, The robot arm control device according to claim 1, wherein a speed of the position of the hand of the robot arm is corrected in a direction parallel to the work surface.
  12.  前記補正動作種別決定手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記ロボットアームにかかる前記人の力に基づき前記ロボットアームにかかる力の変位量を計測して、計測結果に基づき位置成分と姿勢成分の変位量を比較して、前記姿勢の変位量が前記位置成分の変位量よりも大きい場合には、前記補正動作の種別として、姿勢の補正の種別であると決定し、
     さらに、前記動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記ロボットアームの前記手先の姿勢を補正する請求項1に記載のロボットアームの制御装置。
    The correction operation type determination unit measures a displacement amount of the force applied to the robot arm based on the human force applied to the robot arm detected by the force detection unit and acquired by the information acquisition unit, and a measurement result If the displacement amount of the posture component is larger than the displacement amount of the position component, the type of correction operation is determined as the type of posture correction. And
    Further, the motion correction means, according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction operation determined by the correction operation type determination means, The robot arm control device according to claim 1, wherein the posture of the hand of the robot arm is corrected.
  13.  前記補正動作種別決定手段は、前記ロボットアームの前記手先の位置の前記作業面に平行な方向の移動量を検出するとともに、
     前記補正動作種別決定手段は、前記人の手により前記ロボットアームにかかる力が前記作業面に平行であり、かつ、前記補正動作種別決定手段により検出されたある一定時間の前記作業面に平行な方向の移動量が閾値以上の場合には、前記補正動作の種別として、作業不可領域の設定の種別であると決定し、
     さらに、前記動作補正手段は、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記ロボットアームの前記手先の位置を移動させることで、前記作業不可領域を設定する請求項1に記載のロボットアームの制御装置。
    The correction operation type determination means detects the amount of movement of the position of the hand of the robot arm in a direction parallel to the work surface,
    The correction operation type determination means is configured so that a force applied to the robot arm by the human hand is parallel to the work surface and parallel to the work surface for a certain time detected by the correction operation type determination means. When the amount of movement in the direction is equal to or greater than a threshold, it is determined that the type of correction operation is the type of setting of the work impossible area,
    Further, the motion correction means, according to the information on the human force detected by the force detection means and acquired by the information acquisition unit and the type of the correction action determined by the correction action type determination means, The robot arm control device according to claim 1, wherein the work impossible area is set by moving a position of the hand of the robot arm.
  14.  前記補正動作種別決定手段で決定した前記補正動作の種別に基づき、前記補正動作の種別に関する情報を表示する表示手段をさらに備える請求項1~4,7~13のいずれか1つに記載のロボットアームの制御装置。 The robot according to any one of claims 1 to 4, 7 to 13, further comprising display means for displaying information on the type of the correction operation based on the type of the correction operation determined by the correction operation type determination unit. Arm control device.
  15.  ロボットアームの動作を制御して、家庭内で前記ロボットアームにより家事作業の対象物に作用しながら家事作業を行うロボットアームの制御方法であって、
     前記ロボットアームに作用する人の力を力検出手段で検出し、
     前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と前記力検出手段で検出された前記人の力に関する情報とを情報取得部でそれぞれ取得し、
     前記対象物の状態を対象物状態判断手段で判断し、
     前記情報取得部でそれぞれ取得した前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と前記人の力に関する情報と前記対象物状態判断手段で判断された前記対象物の状態とから前記動作を補正する補正動作の種別を補正動作種別決定手段で決定し、予め定められた前記ロボットアームの前記家事作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記ロボットアームを制御して前記動作を動作補正手段で補正するロボットアームの制御方法。
    A control method of a robot arm that controls the operation of a robot arm and performs housework work while acting on an object of housework work by the robot arm in the home,
    Detecting the force of the person acting on the robot arm with force detection means,
    Information on the operation including the position of the robot arm in the housework and information on the human force detected by the force detection means are respectively acquired by the information acquisition unit,
    The state of the object is determined by the object state determination means,
    The motion from the information regarding the motion including the position of the robot arm in the housework work acquired by the information acquisition unit, the information regarding the force of the person, and the state of the target determined by the target state determination means. The corrective action type determining means determines the corrective action type for correcting the human force detected by the force detecting means and acquired by the information acquisition unit during the housework of the robot arm determined in advance. The robot arm control method of controlling the robot arm and correcting the motion by the motion correction means according to the information related to the information and the type of the correction motion determined by the correction motion type determination means.
  16.  前記ロボットアームと、
     前記ロボットアームを制御する請求項1~4,7~13のいずれか1つに記載のロボットアームの制御装置とを備える家事ロボット。
    The robot arm;
    A housework robot comprising the robot arm control device according to any one of claims 1 to 4 and 7 to 13, which controls the robot arm.
  17.  ロボットアームの動作を制御して、家庭内で前記ロボットアームにより家事作業の対象物に作用しながら家事作業を行うロボットアームの制御プログラムであって、
     前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と力検出手段で検出しかつ情報取得部で取得した前記ロボットアームに作用する人の力に関する情報と対象物状態判断手段で判断された前記対象物の状態とから前記動作を補正する補正動作の種別を補正動作種別決定手段で決定するステップと、
     予め定められた前記ロボットアームの前記家事作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記ロボットアームを制御して前記動作を動作補正手段で補正する動作補正ステップとをコンピュータに実行させるためのロボットアームの制御プログラム。
    A control program for a robot arm that controls the operation of the robot arm and performs housework work while acting on the object of housework work by the robot arm in the home,
    Information related to the operation including the position of the robot arm in the housework and information detected by the force detection means and acquired by the information acquisition unit and determined by the object state determination means Determining a type of correction operation for correcting the operation from the state of the object by a correction operation type determination unit;
    Information regarding the human force detected by the force detection means and acquired by the information acquisition unit and the correction operation determined by the correction operation type determination means during the housework work of the robot arm determined in advance. A robot arm control program for causing a computer to execute a motion correction step of controlling the robot arm and correcting the motion by motion correction means according to a type.
  18.  ロボットアームの動作を制御して、家庭内で前記ロボットアームにより家事作業の対象物に作用しながら家事作業を行うロボットアーム制御用集積電子回路であって、
     前記家事作業における前記ロボットアームの位置を含む前記動作に関する情報と力検出手段で検出しかつ情報取得部で取得した前記ロボットアームに作用する人の力に関する情報と対象物状態判断手段で判断された前記対象物の状態とから前記動作を補正する補正動作の種別を決定する補正動作種別決定手段と、
     予め定められた前記ロボットアームの前記家事作業中に、前記力検出手段で検出しかつ前記情報取得部で取得した前記人の力に関する情報と前記補正動作種別決定手段で決定された前記補正動作の種別とに応じて、前記ロボットアームを制御して前記動作を補正する動作補正手段とを備えるロボットアーム制御用集積電子回路。
    An integrated electronic circuit for controlling a robot arm that controls the operation of the robot arm and performs housework while acting on the object of housework by the robot arm in the home,
    Information related to the operation including the position of the robot arm in the housework and information detected by the force detection means and acquired by the information acquisition unit and determined by the object state determination means A correction operation type determining means for determining a type of correction operation for correcting the operation from the state of the object;
    Information regarding the human force detected by the force detection unit and acquired by the information acquisition unit and the correction operation determined by the correction operation type determination unit during the housework work of the robot arm determined in advance and the correction operation type determination unit An integrated electronic circuit for controlling a robot arm, comprising: motion correcting means for controlling the robot arm and correcting the motion according to a type.
PCT/JP2010/005055 2009-08-21 2010-08-12 Control device and control method for robot arm, household robot, control program for robot arm, and integrated electronic circuit for controlling robot arm WO2011021376A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009191797 2009-08-21
JP2009-191797 2009-08-21

Publications (1)

Publication Number Publication Date
WO2011021376A1 true WO2011021376A1 (en) 2011-02-24

Family

ID=43606836

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/005055 WO2011021376A1 (en) 2009-08-21 2010-08-12 Control device and control method for robot arm, household robot, control program for robot arm, and integrated electronic circuit for controlling robot arm

Country Status (1)

Country Link
WO (1) WO2011021376A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105459135A (en) * 2014-09-29 2016-04-06 精工爱普生株式会社 Robot, robot system, control device, and control method
CN112008714A (en) * 2019-05-31 2020-12-01 发那科株式会社 Cooperative operation robot system

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06190753A (en) * 1992-12-25 1994-07-12 Fujitsu Ltd Robot control device
JP2006212741A (en) * 2005-02-04 2006-08-17 National Institute Of Advanced Industrial & Technology Task skill generating device
JP2008110406A (en) * 2006-10-27 2008-05-15 Yaskawa Electric Corp Direct instructing device of robot
JP2008238338A (en) * 2007-03-27 2008-10-09 Gifu Univ Operation supporting device and its control method
JP2008296308A (en) * 2007-05-30 2008-12-11 Panasonic Corp Movement control system, movement control method, and movement control program for housework support robot arm
WO2009004772A1 (en) * 2007-07-05 2009-01-08 Panasonic Corporation Robot arm control device and control method, robot and control program
WO2010016210A1 (en) * 2008-08-08 2010-02-11 パナソニック株式会社 Control device and control method for cleaner, cleaner, control program for cleaner, and integrated electronic circuit

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06190753A (en) * 1992-12-25 1994-07-12 Fujitsu Ltd Robot control device
JP2006212741A (en) * 2005-02-04 2006-08-17 National Institute Of Advanced Industrial & Technology Task skill generating device
JP2008110406A (en) * 2006-10-27 2008-05-15 Yaskawa Electric Corp Direct instructing device of robot
JP2008238338A (en) * 2007-03-27 2008-10-09 Gifu Univ Operation supporting device and its control method
JP2008296308A (en) * 2007-05-30 2008-12-11 Panasonic Corp Movement control system, movement control method, and movement control program for housework support robot arm
WO2009004772A1 (en) * 2007-07-05 2009-01-08 Panasonic Corporation Robot arm control device and control method, robot and control program
WO2010016210A1 (en) * 2008-08-08 2010-02-11 パナソニック株式会社 Control device and control method for cleaner, cleaner, control program for cleaner, and integrated electronic circuit

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105459135A (en) * 2014-09-29 2016-04-06 精工爱普生株式会社 Robot, robot system, control device, and control method
CN112008714A (en) * 2019-05-31 2020-12-01 发那科株式会社 Cooperative operation robot system
CN112008714B (en) * 2019-05-31 2024-02-06 发那科株式会社 Collaborative work robot system

Similar Documents

Publication Publication Date Title
JP4512672B2 (en) Vacuum cleaner control device and method, vacuum cleaner, vacuum cleaner control program, and integrated electronic circuit
JP4531126B2 (en) Robot arm control device and control method, robot, robot arm control program, and integrated electronic circuit for robot arm control
JP5740554B2 (en) Robot arm control apparatus and control method, robot, robot arm control program, and integrated electronic circuit for robot arm control
JP4568795B2 (en) Robot arm control device and control method, robot, robot arm control program, and integrated electronic circuit
JP4361132B2 (en) ROBOT ARM CONTROL DEVICE AND CONTROL METHOD, ROBOT, AND CONTROL PROGRAM
JP4759660B2 (en) Robot arm control device, method, program, integrated electronic circuit, and assembly robot
JP5325843B2 (en) Robot arm control device and control method, robot, robot arm control program, and integrated electronic circuit
JP5512048B2 (en) ROBOT ARM CONTROL DEVICE AND CONTROL METHOD, ROBOT, CONTROL PROGRAM, AND INTEGRATED ELECTRONIC CIRCUIT
JP4243326B2 (en) Robot arm control device and control method, robot, and program
JP6294248B2 (en) Scraping processing apparatus and scraping processing method using a robot
US20220250237A1 (en) Teaching device, teaching method, and recording medium
WO2011021376A1 (en) Control device and control method for robot arm, household robot, control program for robot arm, and integrated electronic circuit for controlling robot arm
JP2021133470A (en) Control method of robot and robot system
JP2011030888A (en) Device and method of controlling vacuum cleaner, vacuum cleaner, control program of vacuum cleaner, and accumulation electronic circuit for controlling vacuum cleaner
JP2019098455A (en) Robot system and workpiece production method
JP2020203364A (en) Robot control device, robot control system and teaching method
CN112828897B (en) Teaching device, control method, and storage medium
JP2023006244A (en) Teaching support method, teaching support device, and teaching support program
CN117325187A (en) Teaching method and teaching device

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10809723

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP