WO2011036865A1 - ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、及び、ロボットアーム制御用集積電子回路 - Google Patents
ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、及び、ロボットアーム制御用集積電子回路 Download PDFInfo
- Publication number
- WO2011036865A1 WO2011036865A1 PCT/JP2010/005705 JP2010005705W WO2011036865A1 WO 2011036865 A1 WO2011036865 A1 WO 2011036865A1 JP 2010005705 W JP2010005705 W JP 2010005705W WO 2011036865 A1 WO2011036865 A1 WO 2011036865A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- robot arm
- unit
- information
- motion
- control
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40424—Online motion planning, in real time, use vision to detect workspace changes
Definitions
- 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 various home environments.
- the object of the present invention has been made in view of such a problem, and it is possible to perform robot control that enables an operator to easily teach a robot arm in a short time even if there is an unpredictable environmental change.
- a robot arm control device and method, a robot, a robot arm control program, and a robot arm control integrated electronic circuit that can be realized.
- a robot arm control device for controlling an operation of a robot arm
- a motion information acquisition unit that acquires the motion information from a motion information database in which at least one of the position, posture, and speed of the robot arm corresponding to the motion is stored as motion information in time series; Corrected motion information corresponding to at least one or more of the motion information acquired by the motion information acquisition unit when a person operates the robot arm to correct the motion of the robot arm.
- a motion correction unit In response to the environmental change notification operation of the person of the robot arm, the environmental information acquired by the environmental information acquisition unit is determined, and the motion information corrected by the motion correction unit and the environmental information acquisition unit
- a control rule generation unit that generates a control rule for automatically operating the robot arm by associating the acquired environment information with the environment information;
- a robot arm control device that controls the operation of the robot arm based on the control rule generated by the control rule generation unit while referring to the environment information acquired by the environment information acquisition unit.
- a robot arm control device for controlling the operation of the robot arm,
- a motion information acquisition unit that acquires the motion information from a motion information database stored as time-series motion information of the force applied to the object by the robot arm corresponding to the motion;
- the motion information related to the motion information acquired by the motion information acquisition unit and correction motion information related to the force applied by the robot arm are acquired.
- a robot arm control method for controlling an operation of a robot arm
- the motion information acquisition unit acquires the motion information from a motion information database in which at least one of the position, posture, and speed of the robot arm corresponding to the motion is stored as motion information in time series, Corrected motion information corresponding to at least one of the motion information acquired by the motion information acquisition unit when a person operates the robot arm to correct the motion of the robot arm.
- the environmental information acquired by the environmental information acquisition unit is determined, and the motion information corrected by the motion correction unit and the environmental information acquisition unit
- a control rule for automatically operating the robot arm is generated by a control rule generation unit
- a step of acquiring a correction operation information acquisition unit Obtaining environmental information, which is information relating to an object on which the robot arm acts, in an environmental information obtaining unit in response to the human environment change notification operation to the robot arm; Controlling the robot arm with a position control unit in a position control mode so as to move the robot arm based on the motion information acquired by the motion information acquisition unit; The motion information is corrected according to the corrected motion information at each time acquired by the corrected motion information acquisition unit while the robot arm is moving in the position control mode under the control of the position control unit.
- the control rule generation unit By associating with the environment information acquired by the information acquisition unit, the control rule generation unit generates a control rule for the robot arm to automatically operate, Provided is an integrated electronic circuit for controlling a robot arm that controls the operation of the robot arm based on the control rule generated by the control rule generation unit while referring to the environment information acquired by the environment information acquisition unit To do.
- FIG. 19E is a plan view showing an operation state of the robot arm control device in the second embodiment of the present invention
- FIG. 20 is a diagram showing an example of the environment information image in the second embodiment of the present invention
- FIG. 21 is a diagram showing an outline of a robot in the third embodiment of the present invention.
- FIG. 22A is a diagram for explaining a list of operation information in an operation information database of the robot arm control device of the robot in the third embodiment
- FIG. 22B is a diagram illustrating a list of operation information in the operation information database of the control device for the robot arm of the robot in the third embodiment
- FIG. 23 is a diagram illustrating flag information of the motion information database of the robot arm control device of the robot according to the third embodiment.
- a robot arm control program for controlling the operation of the robot arm, Obtaining at least one of the position, posture, and speed of the robot arm corresponding to the motion from the motion information database stored as motion information in time series by the motion information acquisition unit; Corrected motion information corresponding to at least one or more of the motion information acquired by the motion information acquisition unit when a person operates the robot arm to correct the motion of the robot arm.
- the robot arm 5 is controlled in the following manner by a robot arm control device including a motion generation device 12, a control device main body 11, and a peripheral device 14, which will be described later.
- the rotation angle information of the rotating shaft of the motor 62 detected by the encoder 61 is taken into the control device main body 11 through the counter board of the input / output IF 24. Based on the rotation angle information taken into the control device main body 11, a control command value for the opening / closing operation of the hand 30 is calculated by the hand control unit 54 (shown in FIG. 4) of the control unit 22 of the control device main body 11. The The calculated control command value is given to the motor driver 25 that also opens and closes the hand 30 through the D / A board of the input / output IF 24.
- the motion information database 17 stores information related to the motion of the robot arm 5 such as the hand position and posture of the robot arm 5 at a predetermined time (hereinafter referred to as motion information).
- the operation information may be set in advance, or may be input and stored in the operation information database 17 by the database input / output unit 28 via the control rule generation unit 23.
- the “operation ID” column of the operation information stored in the operation information database 17 indicates an operation ID number for identifying individual movements of the robot arm 5 for executing work on the robot arm 5.
- the column of “key operation ID” of the operation information indicates a key operation ID number for identifying each operation (key operation) (command, command) in the control program for controlling the operation of the robot arm 5.
- the “flag” column of the operation information indicates information regarding a flag indicating whether any information of the hand position, posture, and force parameters of the robot arm 5 is valid.
- the “hand” column of the operation information indicates information indicating the hand open / close state indicating whether or not the hand 30 is open / closed.
- the “time” column of the operation information indicates information related to the time for executing each key operation of the robot arm 5. In the first embodiment, as an example, it is shown in seconds (sec).
- the column of “correction parameter flag” of the operation information indicates information on the type of parameter to be corrected when correcting the operation information in the operation information database 17 using the operation correction unit 20 described later.
- “work” means work performed by the robot arm 5 according to a certain procedure such as stirring work or wiping and cleaning work.
- operation means movement of the robot arm 5 for causing the robot arm 5 to execute “operation” such as a stirring operation or a wiping operation. By executing one or more “operations”, the “work” can be executed by the robot arm 5.
- the “key operation” means a command (command) for causing the robot arm 5 to perform an “operation” at a certain time on a control program for controlling the operation of the robot arm 5.
- ”(Command) constitutes the“ motion ”
- the“ motion ”of the robot arm 5 is realized by controlling a plurality of“ key motions ”(commands) to be executed by the control device in time series. Can do.
- "Position and orientation" of the operation information database 17 of FIG. 5A i.e., information relating to the tip unit position and orientation of the robot arm 5 represents a hand position and orientation of the robot arm 5 described above, from the origin position O e and the orientation, (x , Y, z, ⁇ , ⁇ , ⁇ ).
- the information on the “flag” in the motion information database 17 in FIG. 5A indicates whether information on the hand position, posture, and force of the robot arm 5 based on the motion information indicated by each “key motion ID” is valid.
- FIG. 6 is represented by the 32-bit numerical value shown in FIG. 5A, and the parameters of each bit number, position and orientation, and force are associated with each other.
- “1” is set when each value of the hand position, posture, and force is valid in each bit
- “0” is set when each value of the hand position, posture, and force is invalid.
- “1” is set when the x-coordinate value of the hand position of the robot arm 5 is valid
- “0” is set when it is invalid.
- the first bit “1” is set when the value of the y-coordinate of the hand position of the robot arm 5 is valid, and “0” is set when it is invalid.
- “1” is set when the value of the z-coordinate of the hand position of the robot arm 5 is valid, and “0” is set when the value is invalid.
- the third, fourth, and fifth bits sequentially indicate the validity of the postures ⁇ , ⁇ , and ⁇ (that is, “1” when valid and “0” when invalid).
- the 6th to 11th bits indicate whether each component of force is valid or invalid (that is, “1” when valid, and “0” when invalid).
- the information related to “hand” in FIG. 5A is a flag indicating whether or not the hand 30 in operation is open / closed, and is described as “0” when the hand 30 is open, and “1” when the hand 30 is closed. It describes.
- the information related to “time” in the operation information database 17 in FIG. 5A is a time for executing each key operation of the robot arm 5. That is, the robot arm 5 performs the operation stored in the “key operation ID” over the time stored as the information related to the “time”.
- This “time” represents the relative time from the previous operation, not the absolute time. That is, the “position and orientation” indicated by the “key action ID” represents the time until the hand 30 of the robot arm 5 moves or the time until the “force” indicated by the “key action ID”.
- the first bit “1” is set when the y-coordinate value of the hand position can be corrected, and “0” is set when the y-coordinate value of the hand position cannot be corrected.
- the second bit “1” is set when the z-coordinate value of the hand position can be corrected, and “0” is set when the z-coordinate value of the hand position cannot be corrected.
- the third, fourth, and fifth bits indicate the correctability of the posture ⁇ , ⁇ , and ⁇ (that is, “1” when correction is possible, and “0” when correction is impossible).
- the 6th to 11th bits indicate the correctability of each component of the force (that is, “1” when correction is possible and “0” when correction is impossible).
- the 12th to 31st bits are not used, so “0” is inserted. It is good also as a variable which can memorize only a bit.
- the information in the motion information database 17 is preset and stored in a database. However, the position and orientation of the hand of the robot arm 5 and the input and update of the force may be taught using the robot arm 5 and will be described below. To do.
- the information on the position and orientation of the hand of the robot arm 5 and time is created as follows. That is, for example, as shown in FIG. 8, the person 4A directly holds the robot arm 5 with the hand 4 and moves the robot arm 5 in an impedance control mode to be described later.
- the information on the hand position and posture of the robot arm 5 is acquired by the database input / output unit 28 via the control unit 22 and the control parameter management unit 21 at certain time intervals (for example, every 0.2 msec).
- the acquired information on the hand position and posture of the robot arm 5 is stored in the operation information database 17 by the database input / output unit 28 with time. In this manner, information on the position and orientation of the hand of the robot arm 5 and time can be created in the motion information database 17.
- the force information of the motion information database 17 is created by using the data input IF 26 and inputting the value of the force to be applied to the motion information database 17 via the database input / output unit 28.
- information on the position and orientation of the hand of the robot arm 5 and time information are continuously created.
- information on the position and orientation and time of the robot arm 5 is obtained by the person 4A using an external input device such as a keyboard, mouse, or microphone. You may input separately using 26a.
- the environment information database 18 includes information on the position and state of objects around the robot arm 5 when the robot arm 5 operates, the positions of objects by the person 4A and the robot arm 5 acting directly on the surrounding environment, and Information on the state (hereinafter, this information is referred to as environmental information) is stored.
- the environment information is acquired by an environment information acquisition unit 19 described later, and is stored in the environment information database 18 from the environment information acquisition unit 19 via the database input / output unit 28.
- FIG. 9A shows environmental information that is data of the environmental information database 18.
- FIG. 9B shows flag information in the environment information database 18.
- the “environment ID” column of the environment information stored in the environment information database 18 indicates an environment ID number for identifying individual environment information.
- the “image ID” column of the environment information indicates an image ID number for identifying an image captured by the first and second image capturing devices 15 a and 15 b that function as an example of the environment information acquisition unit 19.
- the file name is used.
- the column “image capturing device ID” of the environment information is an ID number that identifies which image capturing device of the two image capturing devices 15a and 15b has captured the image.
- “1” is indicated when the first image capturing device 15a is used for image capturing
- “2” is indicated when the second image capturing device 15b is used for image capturing.
- the “force” column of the environmental information indicates information (force information) related to the force detected by the force detection unit 53.
- the information on the force indicates information on the force detected by the force detection unit 53 of the robot arm 5, and the components of the force in the x, y, z, ⁇ , ⁇ , and ⁇ directions are expressed as (f x , f y , f z , f ⁇ , f ⁇ , f ⁇ ).
- the “flag” column of the environmental information indicates information regarding a flag indicating whether any of the power of the environmental information and the image parameter is valid.
- the information regarding the “flag” in the environment information database 18 in FIG. 9A is a value indicating whether the image of the environment information and the force information indicated by each “environment ID” are valid. Specifically, it is represented by a 32-bit numerical value shown in FIG. 9B.
- FIG. 9B “1” is set when the image and force values are valid for each bit, and “0” is set when the image and force values are invalid.
- the 0th to 5th bits indicate force information
- the 6th bit indicates image information. For example, in the 0th bit, “1” is set when the value of the force x-coordinate is valid, and “0” is set when the value is invalid.
- the first bit “1” is set when the y-coordinate value of the force is valid, and “0” when the value is invalid.
- “1” is set when the force z-coordinate value is valid, and “0” is set when it is invalid.
- the third, fourth, and fifth bits sequentially indicate the effectiveness of the forces ⁇ , ⁇ , and ⁇ . That is, “1” is set when valid, and “0” when invalid.
- the sixth bit indicates whether the image captured by the first or second image capturing device 15a or 15b is valid or invalid (ie, “1” if valid, “0” if invalid). And).
- the control rule database 16 stores information related to the control rules of the robot arm 5 when the robot arm 5 operates (hereinafter referred to as control rule information).
- the control rule information is generated by a control rule generation unit 23 to be described later, and information generated or necessary for generation is generated between the control rule generation unit 23 and the control rule database 16 by the database input / output unit 28. Input / output.
- the database input / output unit 28 inputs / outputs information necessary for generation between the control rule generation unit 23 and the other databases 18, 17, and 29.
- control rule database 16 Details of the control rule database 16 will be described with reference to FIGS. 10A and 10B.
- 10A and 10B show an example of the control rules in the control rule database 16.
- the column of “work ID” of the control rule stored in the control rule database 16 shows a work ID number for identifying information related to the work.
- the “environment ID” field of the control rule indicates an environment ID number for identifying individual environment information, and the value of the environment ID in the environment information database 18 can be referred to. When it is not possible to refer to the value of the environment ID in the environment information database 18, it is stored as “ ⁇ 1”.
- the “operation ID” column of the control rule indicates an operation ID number for identifying the operation of the robot arm 5 in the work, and the operation ID of the operation information database 17 can be referred to.
- the “progress information” column of the control rule indicates whether or not a predetermined operation of the robot arm 5 is in operation, and is “1” when it is in operation, and “0” when it is not in operation.
- the data is stored in the control rule database 16 by the database input / output unit 28.
- FIG. 11A shows detection unit selection rules in the detection unit selection rule database 29.
- FIG. 11B shows information related to the type of environment information of the detection unit selection rule in the detection unit selection rule database 29.
- the “environmental information type ID” column of the detection unit selection rule indicates an identification ID for identifying the type of environmental information.
- the identification ID of the environmental information is an environmental information acquisition unit 19 that is a detection unit, for example, various sensors (for example, force detection unit 53) mounted on the robot arm 5, or various sensors (for example, first or second) of the robot 1. This is an ID for identifying the type of environmental information acquired by the image capturing device 15a or 15b).
- the “environment information type ID” in FIG. 11A is defined in FIG. 11B. Specifically, as the detection unit selection rule, when the “environment information type ID” is “1” as illustrated in FIG. 11B, the first or second image capturing device 15a or 15b as an example of the detection unit. When the captured image is represented and the “environmental information type ID” is “2”, the force detected by the force detection unit 53 as another example of the detection unit is represented.
- the database input / output unit 28 includes each database group (the operation information database 17, the environment information database 18, the control rule database 16, and the detection unit selection rule database 29), the operation command unit 27, and the control rule generation unit 23. And input / output of data between the environment information acquisition unit 19 and the operation correction unit 20. Therefore, the database input / output unit 28 can function as an example of an operation information acquisition unit and a correction operation information acquisition unit. That is, the database input / output unit 28 reads the motion information database 17 in which at least one of the position, posture, and speed of the robot arm 5 corresponding to the motion of the robot arm 5 is stored as motion information in time series.
- the motion information acquisition unit that acquires the motion information or the motion information stored as time-series motion information of the force applied by the robot arm 5 to the work objects 9, 46, 72, 74, corresponding to the motion of the robot arm 5. It can function as an operation information acquisition unit that acquires the operation information from the database 17.
- the database input / output unit 28 when the person 4A operates the robot arm 5 to correct the motion of the robot arm 5, the at least one of the motion information acquired by the motion information acquisition unit.
- the motion information acquired by the motion information acquisition unit when correcting the motion of the robot arm 5 when the person 4A operates the robot arm 5 by acquiring the motion correction information corresponding to the motion information.
- a correction operation information acquisition unit that acquires correction operation information related to the force applied by the robot arm 5.
- the person 4A causes the robot arm 5 to execute the work related to “work ID” in the work of the control rule database 16 while using the display image on which the work is displayed on the display unit 95 by the data input IF 26.
- the desired work is selected, and the selected work information is input to the operation command unit 27 and designated.
- the operation command unit 27 refers to the control rule database 16 via the database input / output unit 28 and executes the operation of “operation ID” corresponding to the designated “work ID”.
- the operation command unit 27 refers to the operation information database 17 via the database input / output unit 28 and corresponds to the corresponding key operation (specifically, position information, attitude A command is issued to the control parameter management unit 21 so that the robot arm 5 operates by setting the control mode according to a flag (a flag indicating validity or invalidity) based on the information, time information, and force information). means.
- the operation command unit 27 refers to the control rule database 16 via the database input / output unit 28, the operation command unit 27 determines that there is a plurality of environment information of “environment IDs” in the work related to one “work ID”. When it is determined or when the operation command unit 27 determines that there are a plurality of “operation ID” operations, the respective environment information or operations are sequentially executed from the top to the bottom of the control rule database 16.
- the motion command unit 27 refers to the “motion ID” of the motion information database 17 via the database input / output unit 28 in order to cause the robot arm 5 to perform a motion regardless of the environment.
- “1” is stored in the “operation ID” of the control rule database 16, and the operation command unit 27 transmits the “operation ID” of the operation information database 17 of FIG. 5A via the database input / output unit 28.
- key operations with “key operation IDs” “2” to “8” are also controlled from the operation command unit 27 via the database input / output unit 28 so as to operate in the force hybrid impedance control mode.
- a command is issued to the parameter management unit 21.
- the operation command unit 27 refers to the “operation ID” of the operation information database 17 via the database input / output unit 28 in order to execute the operation on the robot arm 5 regardless of the environment.
- “2” is stored in the “operation ID” of the control rule database 16, and the operation command unit 27 transmits the “operation ID” of the operation information database 17 in FIG. 5A via the database input / output unit 28.
- "Key operation ID” of the operation of “2” is the key operation (command) of "10", “11”, “12”, “13”, “14”, “15”, "16", “17” ) In order.
- the operation command unit 27 performs the mixing operation in the position control mode.
- a command is issued to the control parameter management unit 21 via the database input / output unit 28.
- the control parameter management unit 21 issues a command to the control unit 22 so that the robot arm 5 operates according to the control mode, and is shown in FIG. 13A under the control of the control unit 22.
- the robot arm 5 starts the stirring operation.
- control operation of the robot arm 5 is any one of (i) a position control mode, (iii) a force control mode, and (v) a force hybrid impedance control mode in which these are combined in each direction. Indicates that it operates in the mode.
- the correcting operation of the robot arm 5 is an operation of correcting the operation of the robot arm 5 by the force applied by the person 4A to the robot arm 5, which will be described later (ii) impedance control mode, (vi) high-rigidity position control mode. Or (v) a force hybrid impedance control mode in which they are combined for each direction, indicating that the operation is performed in any mode.
- the operation command unit 27 issues a command to the control parameter management unit 21 to perform the mixing operation in the position control mode. Therefore, as shown in FIG. 13A, the robot arm 5 starts a stirring operation.
- the “environment ID” is a value of “ ⁇ 1” when the “operation ID” is “2” (see FIG. 10A)
- the operation is performed with the operation stored in the “operation ID” (specifically, the operation with the operation ID “2” is performed).
- the person 4A confirms the size of the pot 3b, and corrects the stirring operation of the robot arm 5 so that the ladle 9 stirs greatly according to the diameter of the pot 3b as shown in FIG. 13E. For this reason, the person 4A performs the following two input operations.
- the stirring operation of the robot arm 5 is stopped when the environment change notification operation, which is an operation for correcting the operation so that the stirring operation is greatly stirred as shown in FIG. 13E, is started. Then, the environment change notification operation is finished, and the stirring operation of the robot arm 5 is resumed. The person 4A performs an operation correction operation while the robot arm 5 is stirring.
- the environment change notification operation which is an operation for correcting the operation so that the stirring operation is greatly stirred as shown in FIG. 13E
- Person 4A inputs a command to start an environmental change notification operation to operation command unit 27 by data input IF 26.
- the operation command unit 27 stops the operation of the robot arm 5.
- the person 4 ⁇ / b> A continues to input an operation correction operation start command to the operation command unit 27 through the data input IF 26.
- the motion command unit 27 receives a command to start the motion correction operation via the data input IF 26
- the motion command unit 27 determines that the environment change notification operation has ended, and the robot arm is used to start the motion correction operation.
- the operation of 5 is resumed.
- the person 4 ⁇ / b> A performs an operation correction operation on the operation of the robot arm 5.
- the operation command unit 27 determines that the force applied to the robot arm 5 by the person 4A is smaller than the threshold value (value t 1 in FIG. 30A) after the person 4A performs the environment change notification operation.
- the operation command unit 27 determines that the environment change notification operation has ended, and the operation command unit 27 restarts the mixing operation in the position control mode. By resuming the stirring operation, the person 4A knows that the robot 1 has determined that the environment change notification operation has ended.
- the motion command unit 27 determines that a motion correction operation start command has been input
- the speed of the stirring operation of the robot arm 5 is slowed down by the command of the motion command unit 27 (for example, the normal operation before the motion correction operation is started). It can be seen that the person 1A has determined that the robot 1 has determined that the operation correction operation start command has been input. Furthermore, since the speed of the stirring operation is slow, it becomes easier for the person 4A to correct the operation of the robot arm 5 during the operation. While the movement of the robot arm 5 is being corrected by the person 4A, the correction operation information is acquired by the operation correction unit 20 as will be described later.
- FIG. 14 shows an image acquired from above the pan 3 by the first image capturing device 15a.
- the image acquired by the control rule generation unit 23 by the first image capturing device 15 a is stored in the environment information database 18 via the database input / output unit 28.
- control rule generation unit 23 performs one line for the work with the “work ID” of “2”.
- the operation is stored in the control rule database 16 so that an operation with “3” as the “operation ID” newly added by the operation correction operation is added.
- Positional error compensating unit 56 based on the error r e obtained by the positional error calculation unit 80, and outputs a positional error compensating output u re the approximation reverse kinematical calculation unit 57. Specifically, the position error compensation output ure is
- the hand position and posture target correction output rd ⁇ is calculated by Equation (6) in the case of (ii) impedance control mode and (iii) hybrid impedance control mode, and (v) in the case of force hybrid impedance control mode. Since it is calculated by (10), the mechanical impedance values of the inertia M, the viscosity D, and the stiffness K of the robot arm 5 can be controlled to the set values.
- the force detection unit 53 calculates the equivalent hand external force F ext at the hand of the robot arm 5 based on the drive current value i of the motor 43, the joint angle vector q, and the joint angle error compensation output u qe. Then, the calculated equivalent hand external force F ext is output to the impedance calculation unit 51, the environment information acquisition unit 19, and the control parameter management unit 21 (step S5).
- control parameter management unit 21 instructs the operation correction unit 20 to “correct” and corrects the force component of the six axes with the correction parameter
- the component for which the force component is set is a highly rigid component.
- the control mode can be switched to the position control mode (step S6). Thereafter, the process proceeds to step S7.
- the impedance calculation unit 51 sets the hand position and posture target correction output rd ⁇ to the 0 vector (step S7). Then, it progresses to step S10.
- Position proportional error is a diagonal matrix of constants of the compensation unit 56, the differential by adjusting the three gains of integration, it acts to control the positional error compensating unit 56 as position error r e is converged to zero. By increasing the gain to a certain value, highly rigid position control is realized (step S10). Thereafter, the process proceeds to step S12.
- the motion command unit 27 refers to the control rule database 16 via the database input / output unit 28, and relates to the selected “work ID”. “Operation ID” is specified. Then, the operation command unit 27 refers to the operation information database 17 via the database input / output unit 28 based on the specified “operation ID” information, and follows the “operation ID” stored in the operation information database 17.
- the operation procedure of the robot arm 5 is set (step S51).
- FIG. 17B shows an operation flowchart for creating a control rule in consideration of environmental information in the control device for the robot arm 5 in the first embodiment.
- the person 4A operates the robot arm 5 and inputs an instruction to start the environment change notification operation to the operation command unit 27 via the data input IF 26 (step S53).
- the operation command unit 27 stops the operation of the robot arm 5.
- the environment information acquisition unit 19 acquires information about the environment in which the robot arm 5 acts or information about the surrounding environment in which the robot arm 5 operates (environment information) (step S55).
- the person 4A outputs the end information of the environment change notification operation to the operation command unit 27 via the data input IF 26 (step S56).
- the end information of the environment change notification operation is output to the operation command unit 27, the output of the operation information of the environment change notification operation from the operation command unit 27 to the control rule generation unit 23 is stopped.
- the person 4A selects an operation to be performed by the robot arm 5 from the operations in the control rule database 16 by using the external input device 26a, and the “operation ID” corresponding to the selected operation via the data input IF 26. Is input to the operation command unit 27 (step S100).
- step S107 If the operation command unit 27 determines that the number of “operation IDs” that match the environmental information is one by comparison in the operation command unit 27, the process proceeds to step S107. If the operation command unit 27 determines that the number of operations that match the environmental information is zero, the process proceeds to step S112. If the operation command unit 27 determines that the number of operations that match the environmental information is two or more, the process proceeds to step S105.
- step S110 when the operation command unit 27 determines that the environment information matches in step S109, the operation command unit 27 refers to the control rule database 16 and corresponds to the matched “environment ID”.
- the operation information stored by the “operation ID” is acquired, the acquired operation information is output to the control parameter management unit 21, and this flow is terminated (step S111).
- step S110 when the operation command unit 27 determines that the environmental information does not match, it is determined that there is no operation to be performed, and this flow is terminated and the robot arm 5 stops the operation (step S112).
- the person 4A directly holds the robot arm 5 during the operation of the robot arm 5 based on the control rule.
- the robot arm 5 By applying force to the robot arm 5, it is possible to notify a change in the surrounding environment of the robot arm 5 and further correct the operation information according to the environment.
- the robot arm 5 is autonomous based on the information in the control rule database 16 (in other words, based on the control rule generated by the control rule generation unit 23 while referring to the environment information acquired by the environment information acquisition unit 19). It becomes possible to operate.
- a case will be described as an example in which a robot 1 having a robot arm 5 and a robot arm 5 controller is used to wipe and clean a top plate 6a such as an IH cooking heater 6.
- a sponge 46 as an example of a wiping and cleaning work jig, which is an example of a work object, is attached to the hand 30 of the robot arm 5.
- FIG. 19A is a view of the top plate 6a of the IH cooking heater 6 as viewed from above
- the robot arm 5 performs the operation of “1” of “operation ID” in FIG. 10A, for example. While the top plate 6a such as the IH cooking heater 6 is wiped and cleaned with the sponge 46, the person 4A is different from the place where the cleaning operation is performed on the top plate 6a such as the IH cooking heater 6 (dirty portion). ) Assume that 91 is found dirty. At this time, as shown in FIG. 19B (FIG.
- the moving speed of the sponge 46 (hand 30) in the planar direction of the top plate 6a is accelerated with respect to the dirty portion 91, and at the same time, the dirty surface of the top plate 6a is strongly rubbed with the sponge 46.
- the person 4A grips the robot arm 5 in operation and the plane direction of the top plate 6a is accelerated and moved, the person 4A further moves from above the IH cooking heater 6 toward the contaminated portion 91. A force is applied to the robot arm 5.
- the person 4A uses the data input IF 26 to select a work to be executed by the robot arm 5 from the work related to the “work ID” in the work of the control rule database 16 and execute the operation by the operation command unit 27. That is, when the person 4A selects the work whose “work ID” in FIG. 10A is “1” by the data input IF 26, the motion command unit 27 uses the “motion ID” corresponding to the work “1”.
- the robot arm 5 is operated by referring to the motion information database 17 via the database input / output unit 28 and setting the control mode according to the flag based on the motion information (specifically, position, posture, time, force). Next, a command is issued to the control parameter management unit 21.
- a command is issued from the operation command unit 27 to the control parameter management unit 21 so as to operate in the force control mode.
- the robot arm 5 starts the wiping and cleaning work for the top plate 6 a such as the IH cooking heater 6.
- the robot stops when no force is applied from the person 4A, and can move in the direction when the force is applied from the person 4A.
- the force applied by the person 4A can be detected by the force detection unit 53 in a mode in which the robot arm 5 does not easily move even when the person 4A applies a force.
- the hand position and force of the robot arm 5 from the control parameter management unit 21 are obtained as an operation correction unit 20. And the acquired information is output from the operation correction unit 20 to the control rule generation unit 23 described later.
- the force detection unit 53 detects the force applied to the robot arm 5 with the hand 4 of the person 4A in the impedance control mode while moving the robot arm 5 in the position control mode in the hybrid impedance control mode. Then, 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 robot arm 5 by the hand 4 of the person 4A. From the position (x 1 , y 1 ) of the robot arm 5 indicated by the operation with the “operation ID” “1” during the operation with the “operation ID” “1” in FIG.
- the control rule generation unit 23 receives an instruction to start an environment change notification operation from the data input IF 26 via the operation command unit 27 to the work ID being operated, and performs an environment change notification operation from the person 4A.
- the hand position and time of the robot arm 5 generated in this way are input from the motion correction unit 20.
- the environment information is input from the environment information acquisition unit 19 to the control rule generation unit 23 at the start timing of the environment change notification operation.
- the “operation ID” in operation at the start of the environment change notification operation is referred to by the control rule generation unit 23 from the operation information database 18 through the database input / output unit 28, and the “key operation ID” of the “operation ID” is referred to.
- the control rule generation unit 23 acquires information related to the current control mode of the robot arm 5 from the information related to the flag “”. Specifically, the key operations of the “key operation ID” of “1” to “8” of the operation of “operation ID” of “1” during the operation of “operation ID” of “1” in FIG. 10A are performed.
- each “key operation ID” flag is “0, 1, 3-5, only the 8th bit in FIG. 5A”. 1 ”and the others are“ 0 ”.
- the impedance control mode is set so that the x-axis, y-axis, ⁇ -axis, ⁇ -axis, and ⁇ -axis can be corrected by the force applied by the person 4A.
- the image and force information acquired by the control rule generation unit 23 is stored in the environment information database 18 by the control rule generation unit 23 via the database input / output unit 28.
- the environment information whose “environment ID” is “11” in FIG. 9A
- “11” is assigned to the new “environment ID” by the control rule generation unit 23, and “environment ID” “ In “Image ID”
- the file name of the selected image is stored in the environment information database 18 by the control rule generation unit 23 via the database input / output unit 28 (in this example, the image 4 is a dirty portion 91 in FIG. 20). This is a captured image.)
- the detected force value is stored in the environment information database 18 by the control rule generation unit 23 via the database input / output unit 28.
- the flag is stored in the environment information database 18 by the control rule generation unit 23 via the database input / output unit 28 as “1”.
- the motion information corrected by the motion correction unit 20 is stored in the motion information database 17 via the database input / output unit 28.
- the position / posture and force value of each key motion of “motion ID” before and after correction are the respective components.
- the motion correction unit 20 compares each component, and only the components having a difference equal to or greater than a threshold value are set to “1” by the motion correction unit 20 for each component of the flag in FIG. To do.
- the value of the operation before correction (in this example, “1” to “8”) is stored in the operation information database 17 by the operation correction unit 20.
- the control rule generation unit 23 when the person 4A performs the environmental change notification operation and the operation correction operation, the control rule generation unit 23 generates a new control rule, so that the person 4A operates and operates according to the environmental change. If corrected, the next time the environment becomes similar, based on the information in the control rule database 16 (in other words, by referring to the environment information acquired by the environment information acquisition unit 19, the control rule generation unit 23 Based on the generated control rules, the robot arm 5 can operate autonomously.
- the operation with “operation ID” “1” of the operation with “operation ID” “1” in FIG. 10B represents the operation information for performing the operation in FIG. 19A, while the operation ID “1” is “operation ID”.
- An operation with an operation “operation ID” of “4” represents operation information for performing a wiping and cleaning operation when the dirt is severe as shown in FIG. 19B.
- the person 4A instructs the operation command unit 27 to start the work whose “work ID” is “1” by the data input IF 26.
- the work whose “work ID” is “1” includes an operation whose “operation ID” is “1” and an operation whose value is “4”. Since the operation with the “operation ID” of “1” has the value of “ ⁇ 1” for the “environment ID”, the operation is performed regardless of the surrounding environment of the robot arm 5 and is selected by the operation command unit 27 as the operation to be executed. To do.
- action ID is "1" and "4"
- the selected actions are stored in the control rule database 16.
- the operation command unit 27 adds the operations to be executed according to the flags of the respective operation information.
- an operation with an “operation ID” of “1” and an operation with “4” are selected by the operation command unit 27, and the “operation ID” of the control rule database 16 in FIG.
- the operation is stored in the order of “4”. Therefore, since the flag of the operation information of the operation whose “operation ID” is “1” is 0, 1, 3 to 5 and the bit is “1” from FIG. 5C, “operation ID” is “1”.
- the motion command unit 27 acquires the position and orientation information (x, y, ⁇ , ⁇ , ⁇ ) and the motion information of the force z-axis component.
- the motion command unit 27 calculates the z-axis component of the force by replacing each of the motions with “motion ID” “4”.
- the position and orientation of the key operation with the “key operation ID” of “1” are (0.1, 0.1, 0, 0, 0, 0) and force (0, 0, 5, 0, 0, 0).
- the operation flag “1” of the “operation ID” is “1” in the 0th, 1st, 3rd to 5th and 8th bits, and “4” is “1” in the 8th bit. In this flag, 0, 1, 3 to 5, and 8th bit are “1”.
- the operation parameter flags of the operation “1” of “operation ID” and the operation of “4” are both 0, 1, and the eighth bit is “1”, so the operation parameter flag of the calculated operation is 0, 1 , The eighth bit is “1”.
- the calculated operation information is executed by the operation command unit 27 by switching the control mode according to the flag by the operation command unit 27 and outputting the operation information from the operation command unit 27 to the control parameter management unit 21. It becomes possible to do.
- the operation information can be corrected according to the color of the dirt or the coefficient of friction of the dirt surface.
- the operation of the operation command unit 27 in steps S100 to S112 in FIG. Based on the control rule generated by the control rule generation unit 23 based on the information in the control rule database 16 (in other words, referring to the environment information acquired by the environment information acquisition unit 19 without performing the correction operation). )
- the robot arm 5 can operate autonomously.
- the robot arm 5 of the robot 1 is installed on a wall surface 7a of a work table 7 such as a work table in a factory, and the base end of the robot arm 5 is fixed to the wall surface 7a.
- the robot arm 5 is supported on the rail 8 so as to be movable in the lateral direction along the rail 8, for example, in the horizontal direction by the force of the person 4A.
- Reference numeral 15a denotes a first image capturing device such as a camera, which is attached so that the workbench 7 can be imaged from the ceiling 7b, for example.
- the robot 1 uses the robot arm 5 to perform a work performed by the robot arm 5 and the person 4A in cooperation with the person 4A, such as a work for attaching a screw 73 of a television or a DVD recorder, in a factory.
- the person 4A directly grips the robot arm 5 of the robot 1 with the hand 4 and applies force to the robot arm 5. Then, by moving the robot arm 5 of the robot 1 along the rail 8 by the force applied to the robot arm 5 from the person 4A, the appliance 71 (in this example, the TV or DVD recorder device to which the screw 73 is attached) is moved. The robot arm 5 is guided to the vicinity of (shown).
- the appliance 71 in this example, the TV or DVD recorder device to which the screw 73 is attached
- the person 4A for example, a tool for attaching a screw 73 to the hand 30 of the robot arm 5 of the robot 1, that is, the hand 30 at the tip, as another example of the work jig 9 as an example of the work object, for example, electric A driver device 72 is attached.
- the electric driver instrument 72 can support the screw 73 at its lower end and press the electric driver instrument 72 downward against the device 71 to turn on the switch, and the driver automatically rotates to rotate the screw 73.
- the rail 8 is arranged on the wall surface 7a of the work table 7, in the case of a work table without a wall surface, it can be installed at a place suitable for work such as a ceiling surface or a side surface of the work table top 6a.
- the operation panel 13 is fixed to the side surface of the work table 7, a remote control capable of remote operation may be used instead of the operation panel 13.
- the motion information database 17 stores information (motion information) regarding the motion of the robot arm 5 such as the hand position and posture of the robot arm 5 at a certain time.
- the operation information is input / output to / from the operation information database 17 by the database input / output unit 28 via the control rule generation unit 23.
- the person 4A selects a work to be executed by the robot arm 5 from the work related to “work ID” in the work of the control rule database 16 via the database input / output unit 28 by the data input IF 26,
- the unit 27 instructs the control parameter management unit 21 to execute the operation related to the selected “work ID”.
- the hand 30 at the hand position of the robot arm 5 has a screw hole 71a as shown in FIG.
- the operation according to the control rule is performed to tighten the screw 73 supported by the electric driver instrument 72 of the hand 30 at the hand position of the robot arm 5 to the screw hole 71a.
- a plurality of “operation IDs” (“11”, “12”) are stored in the work whose “work ID” is “3”.
- the operation with the “operation ID” of “12” represents an operation of tightening the screw 73 when the operation command unit 27 determines that the screw hole 71a is present, as described below.
- the “environment ID” of the operation whose “operation ID” is “12” is the environmental information of “20” and not the value of “ ⁇ 1”, so the environmental information of “environment ID” of the environmental information database 18 is “20”. Is referred to by the operation command unit 27 via the database input / output unit 28.
- the flag of the environment information whose “environment ID” is “20” in FIG. 9A is “1” only for the 6th bit, and “0” for the other bits. Therefore, if the image is valid, the operation command unit 27 Judgment can be made.
- the operation command unit 27 obtains image information stored in the environment information database 18 from the image ID. This image shows information of the image of the screw hole 71a in FIG. Next, the current image information is acquired by the operation command unit 27 from the environment information acquisition unit 19, the two images are compared by the operation command unit 27 by image matching, and whether or not the screw hole 71 a is present is determined by the operation command unit 27. Judge with. When the operation command unit 27 determines that the two images match, the operation command unit 27 determines that the screw hole 71a is present, and the operation to be performed with the operation stored in the “operation ID” of “12” is to be executed. Is selected by the operation command unit 27. When the operation command unit 27 determines that they do not match, the operation command unit 27 does not select the operation with the “operation ID” of “12”, and the operation command unit 27 selects only the operation with “11”.
- the operation command unit 27 When only one “operation ID” is selected by the operation command unit 27, the operation with the same “operation ID” as the “operation ID” is input / output to / from the operation information database 17 as in the first embodiment. Reference is made by the operation command unit 27 via the unit 28.
- the motion information having the same ID as the “motion ID” is motion information managed by a plurality of “key motion IDs” (specifically, position information, posture information, time information, and force information).
- the operation command unit 27 issues a command to the control parameter management unit 21 so as to set the control mode and operate, and the key operation is sequentially executed from the operation command unit 27.
- the operation information is output to the management unit 21.
- the operation command unit 27 determines that the environment around the robot arm 5 does not match the environment information with the “environment ID” of “12” of the “operation ID” being “20”, The operation command unit 27 determines that the screw hole 71a could not be detected, and issues a command from the operation command unit 27 to the control parameter management unit 21 so as to execute the operation indicated by the “operation ID” of “11”.
- the operation command unit 27 determines that the robot arm 5 has reached the upper part of the screw hole 71a while the robot arm 5 is moving between the screw holes 71a with the operation of “action ID” “11”, The operation command unit 27 determines that the image of the environment information with the “environment ID” of “20” of the operation with the “operation ID” of “12” matches the image of the current image information acquired by the environment information acquisition unit 19. For this reason, the operation command unit 27 selects two operations, an operation with an “operation ID” of “11” and an operation of “12”.
- the motion calculation unit 2 of the motion command unit 27 refers to the motion information database 17 via the database input / output unit 28 by the motion command unit 27 with each “motion ID” flag (“motion ID”), and is stored there. Operation information to be finally executed is calculated based on the flag).
- an operation having an “operation ID” of “11” and an operation of “12” are selected by the operation command unit 27, and the “operation ID” of the control rule database 16 in FIG.
- the operation is stored in the order of “12”. Accordingly, the operation information flag of the operation with the “operation ID” of “11” is 0 to 5th bit and the bit is “1” from FIG. 22A, so the operation of the operation with the “operation ID” of “11”.
- the motion command part 27 acquires motion information of position and orientation information (x, y, z, ⁇ , ⁇ , ⁇ ).
- the flags of the operation whose “operation ID” is “12” are “1” for 0, 1, 3 to 5, 8, 12, 13, 15 to 17, and “0” for the others.
- the 12th, 13th, and 15th to 17th bits are “1”.
- the operation information of the operation with “11” is copied from the hand position information of the robot arm 5 currently being executed and replaced with the operation command unit 27.
- the motion command unit 27 copies the position and orientation information to the motion with the “motion ID” of “11”.
- the operation command unit 27 similarly replaces other key operation positions.
- the operation parameter flag of the operation whose “operation ID” is “11” is “1” in the first, second and third bits, and the operation parameter flag of the operation whose “operation ID” is “12” is the eighth bit. “1”. Accordingly, the motion parameter flag of the motion calculated by the motion calculation unit 2 is “1” in the first, second, third, and eighth bits.
- the robot arm 5 starts the operation of tightening the screw 73 into the screw hole 71a.
- the person 4A inputs a command for starting the environmental change notification operation as shown in FIG. 26C to the operation command unit 27 via the data input IF 26.
- the operation correction unit 20 receives a command of an environmental change notification operation from the data input IF 26 via the operation command unit 27, and sets a control mode according to the flag of the operation information database 17 so as to operate. A command is issued to the unit 21.
- the operation correction unit 20 determines that it does not match the environment information “”, and therefore, the operation is performed only with the operation “operation ID” “11”.
- the operation correction unit 20 determines that an operation having an “operation ID” of “11” in operation is referred to by the operation correction unit 20 from the operation information database 18 through the database input / output unit 28, the flag of each “key operation ID” in FIG.
- the motion correction unit 20 knows that the axis is valid. Accordingly, the x-axis, y-axis, z-axis, ⁇ -axis, ⁇ -axis, and ⁇ -axis can be corrected with respect to the x-axis, y-axis, ⁇ -axis, ⁇ -axis, and ⁇ -axis so that correction can be performed with the force applied by the person 4A.
- the operation correction unit 20 issues a command to the control parameter management unit 21 so as to operate from the control mode to the impedance control mode (mode in which the force of the person 4A is detected).
- the motion correction unit 20 acquires the hand position and force of the robot arm 5 from the control parameter management unit 21.
- the operation correction unit 20 outputs the control rule generation unit 23 to be described later.
- the position is changed according to the hybrid impedance control mode. While moving the robot arm 5 in the control mode, the robot arm 5 is moved in the x-axis direction, the y-axis direction, and the z-axis direction in the direction in which the force of the person 4A is detected and applied by the impedance control mode. be able to.
- the hand position and time of the robot arm 5 from the control parameter management unit 21 are acquired by the operation correction unit 20, and the operation is performed to the control rule generation unit 23 described later. Output from the correction unit 20.
- the information regarding this time is a relative time with 0 when the person 4A selects a work and issues a start command.
- the control rule generation unit 23 receives an instruction to start an environment change notification operation from the data input IF 26 via the operation command unit 27 and generates an operation change notification operation from the person 4A.
- the hand position and time of the robot arm 5 are input from the motion correction unit 20.
- the environment information is input from the environment information acquisition unit 19 from the start timing of the environment change notification operation.
- the “operation ID” in operation at the start of the environment change notification operation is referred to by the control rule generation unit 23 from the operation information database 18, and the current information is obtained from the information related to the “key operation ID” flag of the “operation ID”.
- Information regarding the control mode of the robot arm 5 is acquired by the control rule generation unit 23.
- the type of environment information for generating a control rule from a plurality of environment information is selected.
- the control rule generator 23 selects the selection. Specifically, at the start timing of the environment change notification operation of the work whose “work ID” is “3” in FIG. 10A, the environment change notification operation is performed in the x-axis direction and the y-axis direction as shown in FIG. 26C. . Since the x axis and the y axis are corrected in the impedance control mode, the type ID of the environment information is “1” from FIG. 11A, and “image” is selected by the control rule generation unit 23 from FIG.
- the control rule generation unit 23 selects an image in the image capturing device 15a capable of photographing the xy plane. Specifically, as shown in FIG. 27, an image obtained by capturing the protruding member 71b of the specification change portion from the upper side downward is obtained. The selected image is stored in the environment information database 18 by the control rule generation unit 23 via the database input / output unit 28. In this example, as shown in the environment information whose “environment ID” is “21” in FIG. 9A, “21” is assigned as a new “environment ID” by the control rule generation unit 23, and “image” of the “environment ID” is displayed.
- motion ID is newly assigned to the motion information database 17 of FIG. 22B by the motion correction unit 20 (“13” in this example), and “60” to “67” are further set as “key motion ID”.
- the motion correction unit 20 stores the motion information corrected by the motion correction unit 20 in each “key motion ID” of the motion information database 17 via the database input / output unit 28.
- the first key operation in this example, “60” is input.
- a value obtained by subtracting the above time from each time of all operations is stored in the operation information database 17 by the operation correction unit 20 via the database input / output unit 28.
- the operation before the correction and the after the correction are performed.
- the position and orientation component is compared by the motion correction unit 20.
- the key operation with the “key operation ID” “41” and the key operation with the “key operation ID” “60” among the components of the position and orientation (x, y, z, ⁇ , ⁇ , ⁇ ), ⁇ , ⁇ and ⁇ are the same, and the difference between the x coordinate, the y coordinate, and the z coordinate is (0.2, 0.2, 0.4), respectively. Only the component and the z component are equal to or greater than the threshold value. Therefore, the operation correction unit 20 sets the flag to 0, 1 and 2 with “1” and the others to “0”.
- the value of the operation before correction (in this example, “41” to “48”) is stored in the operation information database 17 by the operation correction unit 20 via the database input / output unit 28.
- control rule generation unit 23 generates and stores a new control rule in the control rule database 19 from the acquired environment information and the operation corrected by the operation correction operation of the operation correction unit 20. Specifically, in order to correct the operation while the operation of “control ID” in the control rule database 16 is “3”, the control rule generation unit 23 sets the “operation ID” to “ One line is added to the operation of “3”, and an operation whose “operation ID” is newly added by the operation correction is “13” is added.
- the environment ID of the environment information selected by the control rule generation unit 23 is stored in the control rule database 16 via the database input / output unit 28 (in this example, the environment ID “21”).
- the person 4A performs the environmental change notification operation and the operation correction operation, and the control rule generation unit 23 generates a new control rule, so that the operation considering the specification change of the device 71 is not prepared in advance.
- the control rule database 16 in other words, obtaining the environment information
- the robot arm 5 can operate autonomously (based on the control rule generated by the control rule generating unit 23 while referring to the environment information acquired by the unit 19).
- the operation with the “operation ID” of “3” having the “operation ID” of “11” is the operation of FIG. 28A (operation of moving between the screw holes 71a), and the operation of “operation ID” is “12”.
- 28B represents the operation information for performing the operation of FIG. 28C (the operation of avoiding the protruding member 71b of the specification change portion).
- the motion calculation unit 2 calculates one motion information from a plurality of motions. Specifically, since the “environment ID” of the operation whose “operation ID” is “11” is a value of “ ⁇ 1”, the robot arm 5 operates regardless of the surrounding environment of the robot arm 5, The operation command unit 27 selects the operation to be performed.
- the operation with the “operation ID” of “12” represents an operation of tightening the screw 73 into the screw hole 71a when the operation command unit 27 determines that the screw hole 71a is present.
- the “environment ID” of the operation whose “operation ID” is “12” is the environmental information of “20” and not the value of “ ⁇ 1”, so the environmental information of “environment ID” of the environmental information database 18 is “20”.
- the operation command unit 27 Is referred to by the operation command unit 27 via the database input / output unit 28.
- the image information referred to in the operation command unit 27 by the environment information having the “environment ID” [20] and the current image information from the environment information acquisition unit 19 are acquired by the operation command unit 27, and two images are obtained by image matching.
- the operation command unit 27 compares the images, and the operation command unit 27 checks whether the screw hole 71a is present. If the operation command unit 27 determines that the two images match, the operation command unit 27 determines that the screw hole 71a is present, and executes the operation stored with the operation of “12” as the “operation ID”.
- the operation command unit 27 selects the operation to be performed.
- the “environment ID” of the operation whose “operation ID” is “13” is the environment information of “21” and not the value of “ ⁇ 1”
- the “environment ID” of the environment information database 18 is “21”.
- the environmental command refers to the operation command unit 27 through the database input / output unit 28.
- the image information referred to by the operation command unit 27 based on the environment information whose “environment ID” is “21” and the current image information from the environment information acquisition unit 19 are acquired by the operation command unit 27, and two images are obtained by image matching.
- the operation command unit 27 determines whether or not the projecting member 71b is the specification change portion.
- the operation command unit 27 determines that the two images match, the operation command unit 27 determines that the projecting member 71b is a specification change portion, and the “operation ID” is stored as the operation “13”.
- the operation command unit 27 selects the operation to be executed.
- the operation information referred to in the operation having “11” as the “operation ID” is transmitted from the operation command unit 27 to the control parameter management. It outputs to the part 21, and performs the operation
- the operation command unit 27 selects the operation of “11” and “12” of the “operation ID”. Then, the operation with the “operation ID” “13” is not selected by the operation command unit 27. Therefore, as described above, one operation is calculated from the operation “11” and the operation “12” by the operation calculation unit 2, and the operation information calculated by the operation calculation unit 2 is transmitted from the operation command unit 27 to the control parameter. It outputs to the management part 21 and performs the operation
- an operation with an “operation ID” of “11” and an operation of “13” is an operation command.
- the operation selected by the unit 27 and having the “operation ID” of “12” is not selected by the operation command unit 27. Accordingly, one operation is calculated from the operations “11” and “13” by the operation calculation unit 2, and the operation information calculated by the operation calculation unit 2 is output from the operation command unit 27 to the control parameter management unit 21. Execute the operation.
- the detouring operation of the projecting member 71b at the specification change location is corrected.
- the force adjustment at the time of screw tightening can be similarly applied.
- FIG. 37B (a view of the head 73a with a cross hole of the screw 73 of FIG. 37A as viewed from above) is shown. Damaged portion of the screw 73 as indicated by reference numeral 92 or a dirty portion as indicated by reference numeral 93 in FIG. 37C (view of the head 73a with a cross hole of the screw 73 of FIG. 37A from above), Similarly, it can be applied to a rust portion indicated by reference numeral 94 in 37D (view of the head 73a with a cross hole of the screw 73 in FIG. 37A as viewed from above).
- the robot arm 5 of the robot 1 is installed on a wall surface 7a of a work table 7 such as a work table in a factory, and a base arm of the robot arm 5 is fixed to the wall surface 7a.
- the robot arm 5 is supported on the rail 8 so as to be movable in the lateral direction along the rail 8, for example, in the horizontal direction by the force of the person 4A.
- Reference numeral 15a denotes a first image capturing device such as a camera, which is attached so that the workbench 7 can be imaged from the ceiling 7b, for example.
- the robot 1 performs, for example, a work performed by the robot arm 5 in cooperation with the robot arm 5 and the person 4A such as a work for attaching the flexible substrate 74 of the television or DVD recorder in the factory.
- the person 4A directly grips the robot arm 5 of the robot 1 with the hand 4 and applies force to the robot arm 5. Then, by moving the robot arm 5 of the robot 1 along the rail 8 by the force applied to the robot arm 5 from the person 4A, the instrument 71 (in this example, a TV or DVD recorder into which the flexible board 74 is inserted). The robot arm 5 is guided to near the device).
- the instrument 71 in this example, a TV or DVD recorder into which the flexible board 74 is inserted.
- the person 4A presses the button 13a of the operation panel 13 of the robot 1 as an example of the data input IF 26 arranged on the front side surface 7e of the cell production work table 7 or the like, and the data input IF 26 is set.
- the robot arm 5 is actuated to start a preselected operation, that is, an operation of inserting and attaching the flexible board 74 holding the connector portion 74a with the hand 30 to the insertion port 75 of the instrument 71.
- the person 4A is flexible when the robot arm 5 is performing the work of attaching the flexible substrate 74.
- the state of attachment of the substrate 74 is confirmed, and the person 4A applies a force to the robot arm 5 to correct the attachment force or to adjust the position of the flexible substrate 74, thereby correcting the robot arm 5 of the robot 1. Correct the movement.
- the rail 8 is arranged on the wall surface 7a of the work table 7, in the case of a work table without a wall surface, it can be installed at a place suitable for work such as a ceiling surface or a side surface of the work table top 6a.
- the operation panel 13 is fixed to the side surface of the work table 7, a remote control capable of remote operation may be used instead of the operation panel 13.
- the motion information database 17 stores information (motion information) regarding the motion of the robot arm 5 such as the hand position and posture of the robot arm 5 at a certain time.
- the operation information is input / output to / from the operation information database 17 by the database input / output unit 28 via the control rule generation unit 23.
- 32A and 32B show the operation information database 17 of the fourth embodiment. Since the operation information is the same as that of the first embodiment, the description is omitted.
- the person 4A selects a work to be executed by the robot arm 5 from the work related to “work ID” in the work of the control rule database 16 via the database input / output unit 28 by the data input IF 26,
- the unit 27 instructs the control parameter management unit 21 to execute the operation related to the selected “work ID”.
- the operation command unit 27 refers to the control rule database 16 through the database input / output unit 28, the operation command unit 27 selects the operation of one “work ID” and the operation command unit 27
- the motion information is calculated by the motion calculation unit 2 and the calculated motion information (specifically, position, posture, time) , Force) according to the flag, a command is issued to the control parameter management unit 21 via the database input / output unit 28 so as to set the control mode and operate.
- the command unit 27 selects the selection.
- the operation with the “operation ID” of “22” is performed until the connector portion 74a of the flexible board 74 contacts the entrance of the insertion port 75 when the operation command unit 27 determines that the operation is the insertion port 75 as described below.
- the operation of moving the flexible substrate 74 is shown. Since the “environment ID” of the operation whose “operation ID” is “22” is the environmental information of “30” and not the value of “ ⁇ 1”, the environmental information of “environment ID” of the environmental information database 18 is “30”. Is referred to by the operation command unit 27 via the database input / output unit 28.
- the current value of the force detection unit is acquired by the operation command unit 27, and the force stored in the environment information database 18 is compared with the operation command unit 27. If the operation command unit 27 determines that these two forces match, the operation command unit 27 determines that the force received by the flexible board 74 from the insertion port 75 matches the force stored in the environment information database 18. Judgment is made and the operation command unit 27 selects the operation to be executed as the operation stored in the operation of “23” as the “operation ID”. When the operation command unit 27 determines that they do not match, the operation with the “operation ID” of “23” is not selected by the operation command unit 27 and either the operation of “21” or the operation of “22” is selected. The operation command unit 27 selects it.
- the operation with the same “operation ID” as the “operation ID” is transmitted from the operation information database 17 via the database input / output unit 28 as in the first embodiment.
- the motion information having the same ID as the “motion ID” is motion information managed by a plurality of “key motion IDs” (specifically, position information, posture information, time information, and force information).
- the operation command unit 27 issues a command to the control parameter management unit 21 so as to set the control mode and operate, and the key operation is sequentially executed from the operation command unit 27.
- the operation information is output to the management unit 21.
- the operation command unit 27 determines that the environment around the robot arm 5 does not match the environment information with the “environment ID” of “22” of the “operation ID” being “30”, The operation command unit 27 determines that the insertion port 75 has not been detected, and issues a command from the operation command unit 27 to the control parameter management unit 21 so as to execute the operation indicated by the operation with the “operation ID” of “21”.
- the 0th to 5th bits of the “flag” are “1”, so that the x, y, z, ⁇ , ⁇ , and ⁇ of the hand of the robot arm 5 are valid.
- x, y, z, ⁇ , ⁇ , and ⁇ are operated in the position control mode.
- the robot arm 5 starts to move on the device 71 as shown in FIG. 33A (viewed from above in FIG. 31).
- the operation command unit 27 determines that the robot arm 5 has reached the upper part of the insertion port 75 while the robot arm 5 is moving on the device 71 with the operation “operation ID” being “21”, The operation command unit 27 determines that the image of the environment information having the “environment ID” “30” of the operation with the operation ID “22” matches the image of the current image information acquired by the environment information acquisition unit 19. For this reason, the motion command unit 27 selects two motions of “motion ID” “21” and “22”.
- the motion calculation unit 2 of the motion command unit 27 refers to the motion information database 17 via the database input / output unit 28 by the motion command unit 27 with each “motion ID” flag (“motion ID”), and is stored there. Operation information to be finally executed is calculated based on the flag).
- an operation with an “operation ID” of “21” and an operation with “22” are selected by the operation command unit 27, and “21” is set in the “operation ID” of the control rule database 16 in FIG. 10A.
- the operation is stored in the order of “22”. Therefore, since the flag of the operation information of the operation whose “operation ID” is “21” is 0 to 5th bit and the bit is “1” from FIG. 32A, the operation of the operation whose “operation ID” is “21”.
- the operation information of position and orientation information (x, y, z, ⁇ , ⁇ , ⁇ ) is acquired.
- the flags of the operation whose “operation ID” is “22” are “1” in the 0th, 1st, 3rd to 5th, 8, 12, 13, 15th to 17th, and “0” for the others.
- the 12th, 13th, and 15th to 17th bits are “1”.
- the operation information of the operation with “21” is copied from the hand position information of the robot arm 5 currently being executed and replaced with the operation command unit 27.
- the motion command unit 27 copies the position and orientation information to the motion having the “motion ID” of “21”.
- the operation command unit 27 similarly replaces other key operation positions.
- the motion calculation unit 2 selects one of the bits of “21” for the “motion ID” and “22” for the operation. In the case of “1”, the bit of the flag after calculation is set to “1”, and in the case where both are “0”, it is set to “0”. However, since each component of position and force can only be “1” in either direction (because it operates only in either position control mode or force control mode), it has become “1” in both position and force. In case, give priority to power.
- the operation command unit 27 determines that the power of the environment information with the “environment ID” “30” of the operation “operation ID” “22” matches the image acquired by the environment information acquisition unit 19, The operation command unit 27 selects three operations, ie, an operation with an “operation ID” of “21”, an operation of “22”, and an operation of “23”.
- each “motion ID” flag (a flag stored in the motion command database 27 by referring to the motion information database 17 through the database input / output unit 28 by “motion ID”) The operation information to be finally executed is calculated.
- an operation with an “operation ID” of “21”, an operation of “22”, and an operation of “23” are selected, and the “operation ID” of the control rule database 16 in FIG. 10A is “21”. , “22”, and “23” are stored in this order.
- the operation command unit 27 selects the “operation ID” having the largest number with priority. Since the flag of the operation information of the operation whose “operation ID” is “22” is 0 in the first, third, fifth, fifth, eighth, twelfth, thirteenth and seventeenth to seventeenth bits from FIG. 32A, Among the motion information of motion with “22”, position / orientation information (x, y, ⁇ , ⁇ , ⁇ ) and motion information of z component force information are acquired.
- the operation flag whose “operation ID” is “23” the first, third, fifth, fifth, eighth, twelfth, thirteenth and seventeenth to seventeenth are “1”, and the others are “0”.
- the 12th, 13th, and 15th to 17th bits are “1”.
- the operation information of the operation with “11” is copied from the hand position information of the robot arm 5 currently being executed and replaced with the operation command unit 27.
- the operation command unit 27 copies the position and orientation information to the operation with the “operation ID” of “21”.
- the operation command unit 27 replaces the positions of other key operations.
- the value of the component (x, y, ⁇ , ⁇ , ⁇ ) is changed to the motion information of the motion whose “motion ID” is “23”.
- the motion calculation unit 2 calculates the replacement. Thereafter, the operation calculation unit 2 sequentially calculates until the end of the “key operation ID”.
- a change in the size or thickness of the flexible board 74A, a change in the rigidity of the flexible board itself, and a change in the size of the insertion port 75A occur as the specification of the device 71 such as a TV or DVD recorder changes. Since the work with the “work ID” “4” generated in advance is generated before the specification change, if the operation is performed as it is, for example, the “work ID” is “ Due to the operation of “4”, there is insufficient force at the time of insertion, and it cannot be fully inserted into the insertion port 75A.
- the person 4A inputs a command to start the environmental change notification operation to the operation command unit 27 via the data input IF 26.
- the operation correction unit 20 receives a command of an environmental change notification operation from the data input IF 26 via the operation command unit 27, and sets a control mode according to the flag of the operation information database 17 so as to operate. A command is issued to the unit 21.
- the “operation ID” is operating in the operation “23”.
- the flag of each “key operation ID” in FIG. The first, third, fifth, eighth, twelfth, thirteenth and seventeenth and seventeenth portions are “1” and the others are “0”.
- the y-axis, ⁇ -axis, ⁇ -axis, and ⁇ -axis indicate that the z-axis is effective for the force.
- the person 4A applies a force in the z-axis direction in order to notify the force state change accompanying the specification change location on the device 71.
- the motion correction unit 20 acquires the force of the robot arm 5 from the control parameter management unit 21, and generates a control rule to be described later Output from the operation correction unit 20 to the unit 23.
- the motion correction unit 20 receives a command for starting a motion correction operation from the data input IF 26 via the motion command unit 27, and operates by setting a control mode according to the correction parameter flag of the motion information database 17.
- a command is issued from the operation correction unit 20 to the control parameter management unit 21. More specifically, referring to the operation correction unit 20 from the operation information database 18 with the operation ID “23” being “operation ID” “4” in operation in FIG. In FIG. 22A, the correction parameter flag of “operation ID” is “1” only for the 8th bit and “0” for the other bits, so that only the z-axis component of the operation force of the robot arm 5 can be corrected. This can be understood by the operation correction unit 20.
- the motion correction unit 20 issues a command to the control parameter management unit 21 so that the z-axis operates in the high-rigidity position control mode.
- the person 4A directly grips the robot arm 5 and operates the protruding member 71b at the specification change location so as to insert a little more force.
- the force of the hand of the robot arm 5 from the control parameter management unit 21 is acquired by the operation correction unit 20, and is output from the operation correction unit 20 to the control rule generation unit 23 described later.
- the environment change notification operation and the motion correction operation are input separately, but if the direction of operation of the environment change notification operation and the motion correction operation is the same, the motion correction operation or the environment change notification is performed. Either one of the operations can be omitted.
- the operation correction operation can be omitted (fifth embodiment). See).
- the motion correction unit 20 performs the motion correction after acquiring the environment information when the person 4 performs the motion correction operation.
- the control rule generation unit 23 uses the information on the position, posture, force, and time of the motion information database 17 referred to by the “motion ID” of the control rule database 16 to determine the impedance described later.
- the data input IF 26 through the operation command unit 27 is used.
- the control rule generation unit 23 receives an environment change notification operation and an operation correction start command.
- the control rule generation unit 23 has a function of generating a control rule based on the operation information corrected by the operation correction unit 20 and the environment information acquired by the environment information acquisition unit 19 and storing it in the control rule database 16. is doing.
- the control rule generation unit 23 receives an instruction to start an environment change notification operation from the data input IF 26 via the operation command unit 27 and generates an operation change notification operation from the person 4A.
- the hand position and time of the robot arm 5 are input from the motion correction unit 20.
- the environment information is input from the environment information acquisition unit 19 from the start timing of the environment change notification operation.
- the “operation ID” in operation at the start of the environment change notification operation is referred to by the control rule generation unit 23 from the operation information database 18, and the current information is obtained from the information related to the “key operation ID” flag of the “operation ID”.
- Information regarding the control mode of the robot arm 5 is acquired by the control rule generation unit 23.
- each “key operation ID” flag is “1” only in the 0th, 1st, 3rd to 5th, 8, 12, 13, 15th to 17th in FIG. 32A. ”And the others are“ 0 ”, and therefore, among the movements of the robot arm 5, the x-axis, y-axis, ⁇ -axis, ⁇ -axis, ⁇ -axis, and z-axis component data are valid for the position and orientation. This is understood by the control rule generation unit 23.
- the impedance control mode is set so that the x axis, the y axis, the ⁇ axis, and the ⁇ axis can be corrected by the force applied by the person 4A, and the high rigidity position control mode is set for the z axis.
- the type of environment information for generating a control rule from a plurality of environment information is selected.
- the control rule generator 23 selects the selection. Specifically, the environment change notification operation is performed in the z-axis direction as shown in FIG. 35C at the start timing of the environment change notification operation of the work whose “work ID” is “4” in FIG. 10A. Since the z-axis is corrected in the high-rigidity position control mode, the type ID of the environmental information is “2” from FIG. 11A, and “force” is selected by the control rule generation unit 23 from FIG. 11B.
- the force detected by the force detector 53 is selected by the control rule generator 23.
- the acquired force is stored in the environment information database 18 by the control rule generation unit 23 via the database input / output unit 28.
- “32” is assigned as a new “environment ID” by the control rule generation unit 23, and the acquired force information is generated as a control rule for the “force” of the “environment ID”.
- the information is stored in the environment information database 18 by the unit 23 via the database input / output unit 28.
- the flag since the flag is only force, “1” is stored only in the 0th to 5th bits and “0” is stored in the other bits in the environment information database 18 by the control rule generation unit 23 via the database input / output unit 28. .
- the motion information corrected by the motion correction unit 20 is stored in the motion information database 17 via the database input / output unit 28.
- a new “motion ID” is assigned to the motion information database 17 of FIG. 32B by the motion correction unit 20 (in this example, “24”), and “key motion ID” is “90” to “98”.
- the motion correction unit 20 stores the motion information corrected by the motion correction unit 20 in each “key motion ID” of the motion information database 17 via the database input / output unit 28.
- the first key operation in this example, “90” is input.
- a value obtained by subtracting the above time from each time of all operations is stored in the operation information database 17 by the operation correction unit 20 via the database input / output unit 28.
- the operation correction unit 20 compares the components for each component, and only the components having a difference equal to or larger than a threshold value are set to “1” in the operation correction unit 20 for each component of the flag in FIG. To “0”.
- the flag of the operation whose “operation ID” is “23” before correction is “1” for the 0th, 1st, 3rd to 5th, 8, 12, 13, 15th to 17th, and “ 0 ”, the position / orientation components x, y, ⁇ , ⁇ , ⁇ and the force z-axis component of the pre-correction and post-correction position / posture and force values are used as the motion correction unit. Compare at 20.
- the component of the position and orientation (x, y, ⁇ , ⁇ , ⁇ ) is the same in the key operation with the “key operation ID” “77” and the key operation with the “key operation ID” “86”, and the force z If only the axial component is different and the difference threshold is 0.1 (N), only the z component of the force is greater than or equal to the threshold. Therefore, the operation correction unit 20 sets the flag to “1” for the eighth bit and “0” for the others.
- the value of the operation before correction (in this example, “78” to “86”) is stored in the operation information database 17 by the operation correction unit 20 via the database input / output unit 28.
- control rule generation unit 23 generates and stores a new control rule in the control rule database 19 from the acquired environment information and the operation corrected by the operation correction operation of the operation correction unit 20. Specifically, in order to correct the operation during the operation with the “work ID” of the control rule database 16 being “4”, the control rule generation unit 23 sets the “work ID” to “ One line is added to the operation of “4”, and an operation whose “operation ID” newly added by the operation correction is “24” is added.
- the environment ID of the environment information selected by the control rule generation unit 23 is stored in the control rule database 16 via the database input / output unit 28 (in this example, the environment information whose “environment ID” is “32”).
- the motion command unit (motion calculation unit 2) 27 can automatically operate the robot arm 5 after the specification is changed as shown in FIG. 35E by the above-described correction. Since the operation automatically performed after the specification change is the same as that of the third embodiment or the previous embodiment, the description thereof is omitted.
- the person 4A performs the environmental change notification operation and the operation correction operation, and the control rule generation unit 23 generates a new control rule, so that the operation considering the specification change of the device 71 is not prepared in advance.
- the control rule database 16 in other words, obtaining the environment information
- the robot arm 5 can operate autonomously (based on the control rule generated by the control rule generating unit 23 while referring to the environment information acquired by the unit 19).
- the basic configuration of the robot arm 5 and its control device is the same as that of the first embodiment or the fourth embodiment, so the description of the common parts is omitted and different parts. Only the above will be described in detail below.
- the motion correction operation is omitted and one operation (here, the environmental change and the motion is performed). An example in which only the notification operation can be performed is described.
- a robot 1 having a robot arm 5 and a control device for the robot arm 5 is used.
- a flexible substrate 74 as an example of a work object is attached to the insertion port 75 of the device 71.
- the robot arm 5 of the robot 1 is installed on a wall surface 7a of a work table 7 such as a work table in a factory, and a base arm of the robot arm 5 is fixed to the wall surface 7a.
- the robot arm 5 is supported on the rail 8 so as to be movable in the lateral direction along the rail 8, for example, in the horizontal direction by the force of the person 4A.
- Reference numeral 15a denotes a first image capturing device such as a camera, which is attached so that the workbench 7 can be imaged from the ceiling 7b, for example.
- the robot 1 performs, for example, work performed by the robot arm 5 in cooperation with the robot arm 5 and the person 4A such as a work for attaching the flexible substrate 74 of the television or DVD recorder in a factory.
- the person 4A directly grips the robot arm 5 of the robot 1 with the hand 4 and applies force to the robot arm 5.
- the instrument 71 in this example, a TV or DVD recorder into which the flexible board 74 is inserted.
- the robot arm 5 is guided to near the device).
- the person 4A presses the button 13a of the operation panel 13 of the robot 1 as an example of the data input IF 26 arranged on the front side surface 7e of the cell production work table 7 or the like, and the data input IF 26 is set.
- the robot arm 5 is actuated to start a preselected operation, that is, an operation of inserting and attaching the flexible board 74 holding the connector portion 74a with the hand 30 to the insertion port 75 of the instrument 71.
- the specification of the device 71 changes the shape of the device 71 or the specification of the flexible substrate 74
- the person 4A is flexible when the robot arm 5 is performing the work of attaching the flexible substrate 74.
- the motion information database 17 stores information (motion information) regarding the motion of the robot arm 5 such as the hand position and posture of the robot arm 5 at a certain time.
- the operation information is input / output to / from the operation information database 17 by the database input / output unit 28 via the control rule generation unit 23.
- 32A and 32B show the operation information database 17 of the fifth embodiment, as in the fourth embodiment. Since the operation information is the same as that of the first embodiment, the description is omitted.
- the person 4A selects a work to be executed by the robot arm 5 from the work related to “work ID” in the work of the control rule database 16 via the database input / output unit 28 by the data input IF 26,
- the unit 27 instructs the control parameter management unit 21 to execute the operation related to the selected “work ID”.
- the operation command unit 27 refers to the control rule database 16 through the database input / output unit 28, the operation command unit 27 selects the operation of one “work ID” and the operation command unit 27
- the motion information is calculated by the motion calculation unit 2 and the calculated motion information (specifically, position, posture, time) , Force) according to the flag, a command is issued to the control parameter management unit 21 via the database input / output unit 28 so as to set the control mode and operate.
- the robot 1 moves the insertion slot 75 while the robot arm 5 moves.
- a control rule operation for performing an operation of inserting the connector portion 74a of the flexible board 74 in which the connector portion 74a is held by the hand 30 at the hand position of the robot arm 5 into the insertion port 75 is shown.
- a plurality of “operation IDs” (operations “21”, “22”, and “23”) are stored in the work whose “work ID” is “4”.
- the motion calculation unit 2 calculates one motion information from a plurality of motions. Specifically, the motion calculation unit 2 calculates one piece of motion information from among the motion with “motion ID” “21”, the motion “22”, and the motion “23”.
- the operation with the “operation ID” of “21” means that the hand 30 at the hand position of the robot arm 5 (more precisely, the flexible board 74 gripped by the hand 30) has an insertion port 75 of the device 71 as shown in FIG. 33A.
- movement which moves the upper part of the vicinity of is represented. Since the “environment ID” of the operation whose “operation ID” is “21” is a value of “ ⁇ 1”, the robot arm 5 operates regardless of the surrounding environment of the robot arm 5, so that the operation should be performed.
- the command unit 27 selects the selection.
- the operation with the “operation ID” of “22” is performed until the connector portion 74a of the flexible board 74 contacts the entrance of the insertion port 75 when the operation command unit 27 determines that the operation is the insertion port 75 as described below.
- the operation of moving the flexible substrate 74 is shown. Since the “environment ID” of the operation whose “operation ID” is “22” is the environmental information of “30” and not the value of “ ⁇ 1”, the environmental information of “environment ID” of the environmental information database 18 is “30”. Is referred to by the operation command unit 27 via the database input / output unit 28.
- the operation command unit 27 obtains image information stored in the environment information database 18 from the image ID. This image shows information of the image of the insertion slot 75 in FIG. Next, the current image information is acquired by the operation command unit 27 from the environment information acquisition unit 19, and the two images are compared by the operation command unit 27 by image matching. Judge with. When the operation command unit 27 determines that the two images match each other, the operation command unit 27 determines that it is an insertion slot, and the operation stored in the “operation ID” of “22” is to be executed. The operation command unit 27 selects it.
- the operation command unit 27 determines that they do not match, the operation command unit 27 does not select the operation with the “operation ID” of “22”, and the operation command unit 27 selects only the operation with “21”.
- the operation whose “operation ID” is “23” represents an operation of moving the flexible board 74 in order to insert the connector portion 74 a of the flexible board 74 into the insertion port 75.
- the “environment ID” of the operation whose “operation ID” is “23” is the environment information of “31” and not the value of “ ⁇ 1”, so the environment information of “environment ID” of the environment information database 18 is “31”. Is referred to by the operation command unit 27 via the database input / output unit 28.
- 9A is “1” only in the 0th to 5th bits and “0” in the other bits.
- the operation command unit 27 issues a command to the control parameter management unit 21 so as to set the control mode and operate, and the key operation is sequentially executed from the operation command unit 27.
- the operation information is output to the management unit 21.
- the operation command unit 27 determines that the environment around the robot arm 5 does not match the environment information with the “environment ID” of “22” of the “operation ID” being “30”,
- the operation command unit 27 determines that the insertion port 75 has not been detected, and issues a command from the operation command unit 27 to the control parameter management unit 21 so as to execute the operation indicated by the operation with the “operation ID” of “21”. That is, from the operation information database 17 of FIG.
- the 0th to 5th bits of the “flag” are “1”, so that the x, y, z, ⁇ , ⁇ , and ⁇ of the hand of the robot arm 5 are valid.
- x, y, z, ⁇ , ⁇ , and ⁇ are operated in the position control mode.
- the robot arm 5 starts to move on the device 71 as shown in FIG. 33A (viewed from above in FIG. 31).
- the operation command unit 27 determines that the robot arm 5 has reached the upper part of the insertion port 75 while the robot arm 5 is moving on the device 71 with the operation “operation ID” being “21”, The operation command unit 27 determines that the image of the environment information having the “environment ID” “30” of the operation with the operation ID “22” matches the image of the current image information acquired by the environment information acquisition unit 19. For this reason, the motion command unit 27 selects two motions of “motion ID” “21” and “22”.
- the motion calculation unit 2 of the motion command unit 27 refers to the motion information database 17 via the database input / output unit 28 by the motion command unit 27 with each “motion ID” flag (“motion ID”), and is stored there. Operation information to be finally executed is calculated based on the flag).
- an operation with an “operation ID” of “21” and an operation with “22” are selected by the operation command unit 27, and “21” is set in the “operation ID” of the control rule database 16 in FIG. 10A.
- the operation is stored in the order of “22”. Therefore, since the flag of the operation information of the operation whose “operation ID” is “21” is 0 to 5th bit and the bit is “1” from FIG. 32A, the operation of the operation whose “operation ID” is “21”.
- the operation information of position and orientation information (x, y, z, ⁇ , ⁇ , ⁇ ) is acquired.
- the operation command unit 27 similarly replaces other key operation positions.
- the operation calculation unit 2 sequentially calculates until the end of the “key operation ID”. For the motion information flag and the motion information flag calculated by the motion calculation unit 2, the motion calculation unit 2 selects one of the bits of “21” for the “motion ID” and “22” for the operation.
- the operation command unit 27 issues a command to the control parameter management unit 21 so that the z-axis operates in the force control mode.
- the robot arm 5 starts to move until the connector portion 24a of the flexible board 74 contacts the insertion port 75.
- the operation command unit 27 selects the operation to be operated next.
- the motion command unit 27 selects two motions, the motion having the motion ID “21” and the motion “23”. Furthermore, when the operation command unit 27 determines that the power of the environment information with the “environment ID” “30” of the operation “operation ID” “22” matches the image acquired by the environment information acquisition unit 19, The operation command unit 27 selects three operations, ie, an operation with an “operation ID” of “21”, an operation of “22”, and an operation of “23”.
- each “motion ID” flag (a flag stored in the motion command database 27 by referring to the motion information database 17 through the database input / output unit 28 by “motion ID”)
- the operation information to be finally executed is calculated.
- an operation with an “operation ID” of “21”, an operation of “22”, and an operation of “23” are selected, and the “operation ID” of the control rule database 16 in FIG. 10A is “21”. , “22”, and “23” are stored in this order.
- the operation command unit 27 selects the “operation ID” having the largest number with priority.
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Human Computer Interaction (AREA)
- Manipulator (AREA)
Abstract
Description
さらに、組み立て作業などの製造現場において、モデルチェンジが頻繁に発生するために、教示作業が頻繁に発生する。
しかしながら、この方法では、環境の変動が発生する度に、人が毎回操作をしなければならず、面倒であった。
本発明の第1態様によれば、ロボットアームの動作を制御する、ロボットアームの制御装置であって、
前記動作に対応する、前記ロボットアームの位置、姿勢、及び、速度の少なくとも1つ以上が時系列に動作情報として記憶された動作情報データベースから前記動作情報を取得する動作情報取得部と、
人が前記ロボットアームを操作して、前記ロボットアームの前記動作を補正する際に前記動作情報取得部で取得した前記動作情報のうちの少なくとも1つ以上の前記動作情報に対応する補正動作情報を取得する補正動作情報取得部と、
前記ロボットアームが作用する対象物に関する情報である環境情報を前記ロボットアームへの前記人の環境変化通知操作に応じて取得する環境情報取得部と、
前記動作情報取得部で取得した前記動作情報に基づいて前記ロボットアームを移動するよう位置制御モードで前記ロボットアームを制御する位置制御部と、
前記位置制御部の制御により前記ロボットアームが前記位置制御モードで移動している最中に前記補正動作情報取得部で取得したそれぞれの時間での前記補正動作情報に応じて前記動作情報を補正する動作補正部と、
前記ロボットアームの前記人の前記環境変化通知操作に応じて、前記環境情報取得部で取得する前記環境情報を決定するとともに、前記動作補正部で補正された前記動作情報と前記環境情報取得部で取得した前記環境情報とを対応付けることにより、前記ロボットアームが自動で動作するための制御ルールを生成する制御ルール生成部とを備えて、
前記環境情報取得部で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記動作を制御するロボットアームの制御装置を提供する。
前記動作に対応する、前記ロボットアームが対象物に加える力の時系列の動作情報として記憶された動作情報データベースから前記動作情報を取得する動作情報取得部と、
人が前記ロボットアームを操作して、前記ロボットアームの前記動作を補正する際に、前記動作情報取得部で取得した前記動作情報に関連しかつ前記ロボットアームが加える力に関する補正動作情報を取得する補正動作情報取得部と、
前記ロボットアームが作用する前記対象物に関する情報である環境情報を前記ロボットアームへの前記人の環境変化通知操作に応じて取得する環境情報取得部と、
前記動作情報取得部で取得した前記動作情報に設定された力で前記対象物に対して前記ロボットアームが力制御を行なうよう前記ロボットアームを力制御モードで制御する制御部と、
前記制御部により前記ロボットアームを前記力制御モードで制御している最中に前記補正動作情報取得部で取得したそれぞれの時間での前記補正動作情報に応じて前記動作情報を補正する動作補正部と、
前記ロボットアームの前記人の前記環境変化通知操作に応じて、前記環境情報取得部で取得する前記環境情報を決定するとともに、前記動作補正部で補正された前記動作情報と前記環境情報取得部で取得した前記環境情報とを対応付けることにより、前記ロボットアームが自動で動作するための制御ルールを生成する制御ルール生成部とを備えて、
前記環境情報取得部で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記動作を制御するロボットアームの制御装置を提供する。
前記動作に対応する、前記ロボットアームの位置、姿勢、速度の少なくとも1つ以上が時系列に動作情報として記憶された動作情報データベースから前記動作情報を動作情報取得部で取得し、
人が前記ロボットアームを操作して、前記ロボットアームの前記動作を補正する際に前記動作情報取得部で取得した前記動作情報のうちの少なくとも1つ以上の前記動作情報に対応する補正動作情報を補正動作情報取得部で取得し、
前記ロボットアームが作用する対象物に関する情報である環境情報を前記ロボットアームへの前記人の環境変化通知操作に応じて環境情報取得部で取得し、
前記動作情報取得部で取得した前記動作情報に基づいて前記ロボットアームを移動するよう位置制御モードで前記ロボットアームを位置制御部で制御し、
前記位置制御部の制御により前記ロボットアームが前記位置制御モードで移動している最中に前記補正動作情報取得部で取得したそれぞれの時間での前記補正動作情報に応じて前記動作情報を動作補正部で補正し、
前記ロボットアームの前記人の前記環境変化通知操作に応じて、前記環境情報取得部で取得する前記環境情報を決定するとともに、前記動作補正部で補正された前記動作情報と前記環境情報取得部で取得した前記環境情報とを対応付けることにより、前記ロボットアームが自動で動作するための制御ルールを制御ルール生成部で生成し、
前記環境情報取得部で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記動作を制御するロボットアームの制御方法を提供する。
前記ロボットアームを制御する第1~11のいずれか1つの態様に記載の前記ロボットアームの制御装置とを備えるロボットを提供する。
前記動作に対応する、前記ロボットアームの位置、姿勢、速度の少なくとも1つ以上が時系列に動作情報として記憶された動作情報データベースから前記動作情報を動作情報取得部で取得するステップと、
人が前記ロボットアームを操作して、前記ロボットアームの前記動作を補正する際に前記動作情報取得部で取得した前記動作情報のうちの少なくとも1つ以上の前記動作情報に対応する補正動作情報を補正動作情報取得部取得するステップと、
前記ロボットアームが作用する対象物に関する情報である環境情報を前記ロボットアームへの前記人の環境変化通知操作に応じて環境情報取得部で取得するステップと、
前記動作情報取得部で取得した前記動作情報に基づいて前記ロボットアームを移動するよう位置制御モードで前記ロボットアームを位置制御部で制御するステップと、
前記位置制御部の制御により前記ロボットアームが前記位置制御モードで移動している最中に前記補正動作情報取得部で取得したそれぞれの時間での前記補正動作情報に応じて前記動作情報を動作補正部で補正するステップと、
前記ロボットアームの前記人の前記環境変化通知操作に応じて、前記環境情報取得部で取得する前記環境情報を決定するとともに、前記動作補正部で補正された前記動作情報と前記環境情報取得部で取得した前記環境情報とを対応付けることにより、前記ロボットアームが自動で動作するための制御ルールを制御ルール生成部で生成するステップと、
前記環境情報取得部で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記動作を制御するステップとを実行させるためのロボットアームの制御プログラムを提供する。
前記動作に対応する、前記ロボットアームの位置、姿勢、速度の少なくとも1つ以上が時系列に動作情報として記憶された動作情報データベースから前記動作情報を動作情報取得部で取得し、
人が前記ロボットアームを操作して、前記ロボットアームの前記動作を補正する際に前記動作情報取得部で取得した前記動作情報のうちの少なくとも1つ以上の前記動作情報に対応する補正動作情報を補正動作情報取得部で取得し、
前記ロボットアームが作用する対象物に関する情報である環境情報を前記ロボットアームへの前記人の環境変化通知操作に応じて環境情報取得部で取得し、
前記動作情報取得部で取得した前記動作情報に基づいて前記ロボットアームを移動するよう位置制御モードで前記ロボットアームを位置制御部で制御し、
前記位置制御部の制御により前記ロボットアームが前記位置制御モードで移動している最中に前記補正動作情報取得部で取得したそれぞれの時間での前記補正動作情報に応じて前記動作情報を動作補正部で補正し
前記ロボットアームの前記人の前記環境変化通知操作に応じて、前記環境情報取得部で取得する前記環境情報を決定するとともに、前記動作補正部で補正された前記動作情報と前記環境情報取得部で取得した前記環境情報とを対応付けることにより、前記ロボットアームが自動で動作するための制御ルールを制御ルール生成部で生成し、
前記環境情報取得部で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記動作を制御するロボットアーム制御用集積電子回路を提供する。
以下、図面を参照して本発明における実施形態を詳細に説明する前に、本発明の種々の態様について説明する。
前記動作に対応する、前記ロボットアームの位置、姿勢、及び、速度の少なくとも1つ以上が時系列に動作情報として記憶された動作情報データベースから前記動作情報を取得する動作情報取得部と、
人が前記ロボットアームを操作して、前記ロボットアームの前記動作を補正する際に前記動作情報取得部で取得した前記動作情報のうちの少なくとも1つ以上の前記動作情報に対応する補正動作情報を取得する補正動作情報取得部と、
前記ロボットアームが作用する対象物に関する情報である環境情報を前記ロボットアームへの前記人の環境変化通知操作に応じて取得する環境情報取得部と、
前記動作情報取得部で取得した前記動作情報に基づいて前記ロボットアームを移動するよう位置制御モードで前記ロボットアームを制御する位置制御部と、
前記位置制御部の制御により前記ロボットアームが前記位置制御モードで移動している最中に前記補正動作情報取得部で取得したそれぞれの時間での前記補正動作情報に応じて前記動作情報を補正する動作補正部と、
前記ロボットアームの前記人の前記環境変化通知操作に応じて、前記環境情報取得部で取得する前記環境情報を決定するとともに、前記動作補正部で補正された前記動作情報と前記環境情報取得部で取得した前記環境情報とを対応付けることにより、前記ロボットアームが自動で動作するための制御ルールを生成する制御ルール生成部とを備えて、
前記環境情報取得部で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記動作を制御するロボットアームの制御装置を提供する。
前記動作に対応する、前記ロボットアームが対象物に加える力の時系列の動作情報として記憶された動作情報データベースから前記動作情報を取得する動作情報取得部と、
人が前記ロボットアームを操作して、前記ロボットアームの前記動作を補正する際に、前記動作情報取得部で取得した前記動作情報に関連しかつ前記ロボットアームが加える力に関する補正動作情報を取得する補正動作情報取得部と、
前記ロボットアームが作用する前記対象物に関する情報である環境情報を前記ロボットアームへの前記人の環境変化通知操作に応じて取得する環境情報取得部と、
前記動作情報取得部で取得した前記動作情報に設定された力で前記対象物に対して前記ロボットアームが力制御を行なうよう前記ロボットアームを力制御モードで制御する制御部と、
前記制御部により前記ロボットアームを前記力制御モードで制御している最中に前記補正動作情報取得部で取得したそれぞれの時間での前記補正動作情報に応じて前記動作情報を補正する動作補正部と、
前記ロボットアームの前記人の前記環境変化通知操作に応じて、前記環境情報取得部で取得する前記環境情報を決定するとともに、前記動作補正部で補正された前記動作情報と前記環境情報取得部で取得した前記環境情報とを対応付けることにより、前記ロボットアームが自動で動作するための制御ルールを生成する制御ルール生成部とを備えて、
前記環境情報取得部で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記動作を制御するロボットアームの制御装置を提供する。
前記力検出部で検出された前記人の力とその検出時間とに応じて前記人が前記ロボットアームを操作したことを検出して、前記ロボットアームの前記動作を補正する際の前記ロボットアームが加える力に関する前記補正動作情報を前記補正動作情報取得部で取得する第1又は2の態様に記載のロボットアームの制御装置を提供する。
前記制御ルール生成部は、前記人の前記ロボットアームの操作時の前記ロボットアームの前記位置制御モードに応じて、前記環境情報取得部の前記複数の画像撮像装置で取得した複数の環境情報の中から、制御ルール生成の際の環境情報の種別を決定する第1の態様に記載のロボットアームの制御装置を提供する。
前記制御ルール生成部は、前記人の前記ロボットアームの操作時の前記ロボットアームの前記力制御モードに応じて、制御ルール生成の際に前記力検出部で取得した環境情報を使用する第2の態様に記載のロボットアームの制御装置を提供する。
前記制御ルール生成部は、前記ロボットアームの前記人の操作に応じて取得する前記環境情報の検出方向を決定する第6の態様に記載のロボットアームの制御装置を提供する。
前記環境情報取得部で取得した前記環境情報が、前記補正の操作時の前記環境情報と同じであるときに、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記動作を、前記補正動作情報取得部で取得した前記補正動作情報に基づき補正するように制御する第1~7のいずれか1つの態様に記載のロボットアームの制御装置を提供する。
前記ロボットアームの先端には、ネジを回転可能な作業用治具を着脱可能に把持可能なハンドを備え、前記作業用治具は前記対象物であり、
前記複数の画像撮像装置で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記ハンドに把持した前記作業用治具で前記ネジの締め付け又は取り外し作業において前記ロボットアームの前記動作を制御する、第1の態様に記載のロボットアームの制御装置を提供する。
前記ロボットアームの先端には、フレキシブル基板を着脱可能に把持可能なハンドを備え、前記フレキシブル基板は前記対象物であり、
前記複数の画像撮像装置で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記ハンドに把持した前記フレキシブル基板を機器に取り付ける作業において前記ロボットアームの前記動作を制御する、第2の態様に記載のロボットアームの制御装置を提供する。
前記動作に対応する、前記ロボットアームの位置、姿勢、速度の少なくとも1つ以上が時系列に動作情報として記憶された動作情報データベースから前記動作情報を動作情報取得部で取得し、
人が前記ロボットアームを操作して、前記ロボットアームの前記動作を補正する際に前記動作情報取得部で取得した前記動作情報のうちの少なくとも1つ以上の前記動作情報に対応する補正動作情報を補正動作情報取得部で取得し、
前記ロボットアームが作用する対象物に関する情報である環境情報を前記ロボットアームへの前記人の環境変化通知操作に応じて環境情報取得部で取得し、
前記動作情報取得部で取得した前記動作情報に基づいて前記ロボットアームを移動するよう位置制御モードで前記ロボットアームを位置制御部で制御し、
前記位置制御部の制御により前記ロボットアームが前記位置制御モードで移動している最中に前記補正動作情報取得部で取得したそれぞれの時間での前記補正動作情報に応じて前記動作情報を動作補正部で補正し、
前記ロボットアームの前記人の前記環境変化通知操作に応じて、前記環境情報取得部で取得する前記環境情報を決定するとともに、前記動作補正部で補正された前記動作情報と前記環境情報取得部で取得した前記環境情報とを対応付けることにより、前記ロボットアームが自動で動作するための制御ルールを制御ルール生成部で生成し、
前記環境情報取得部で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記動作を制御するロボットアームの制御方法を提供する。
前記ロボットアームを制御する第1~11のいずれか1つの態様に記載の前記ロボットアームの制御装置とを備えるロボットを提供する。
前記動作に対応する、前記ロボットアームの位置、姿勢、速度の少なくとも1つ以上が時系列に動作情報として記憶された動作情報データベースから前記動作情報を動作情報取得部で取得するステップと、
人が前記ロボットアームを操作して、前記ロボットアームの前記動作を補正する際に前記動作情報取得部で取得した前記動作情報のうちの少なくとも1つ以上の前記動作情報に対応する補正動作情報を補正動作情報取得部取得するステップと、
前記ロボットアームが作用する対象物に関する情報である環境情報を前記ロボットアームへの前記人の環境変化通知操作に応じて環境情報取得部で取得するステップと、
前記動作情報取得部で取得した前記動作情報に基づいて前記ロボットアームを移動するよう位置制御モードで前記ロボットアームを位置制御部で制御するステップと、
前記位置制御部の制御により前記ロボットアームが前記位置制御モードで移動している最中に前記補正動作情報取得部で取得したそれぞれの時間での前記補正動作情報に応じて前記動作情報を動作補正部で補正するステップと、
前記ロボットアームの前記人の前記環境変化通知操作に応じて、前記環境情報取得部で取得する前記環境情報を決定するとともに、前記動作補正部で補正された前記動作情報と前記環境情報取得部で取得した前記環境情報とを対応付けることにより、前記ロボットアームが自動で動作するための制御ルールを制御ルール生成部で生成するステップと、
前記環境情報取得部で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記動作を制御するステップとを実行させるためのロボットアームの制御プログラムを提供する。
前記動作に対応する、前記ロボットアームの位置、姿勢、速度の少なくとも1つ以上が時系列に動作情報として記憶された動作情報データベースから前記動作情報を動作情報取得部で取得し、
人が前記ロボットアームを操作して、前記ロボットアームの前記動作を補正する際に前記動作情報取得部で取得した前記動作情報のうちの少なくとも1つ以上の前記動作情報に対応する補正動作情報を補正動作情報取得部で取得し、
前記ロボットアームが作用する対象物に関する情報である環境情報を前記ロボットアームへの前記人の環境変化通知操作に応じて環境情報取得部で取得し、
前記動作情報取得部で取得した前記動作情報に基づいて前記ロボットアームを移動するよう位置制御モードで前記ロボットアームを位置制御部で制御し、
前記位置制御部の制御により前記ロボットアームが前記位置制御モードで移動している最中に前記補正動作情報取得部で取得したそれぞれの時間での前記補正動作情報に応じて前記動作情報を動作補正部で補正し
前記ロボットアームの前記人の前記環境変化通知操作に応じて、前記環境情報取得部で取得する前記環境情報を決定するとともに、前記動作補正部で補正された前記動作情報と前記環境情報取得部で取得した前記環境情報とを対応付けることにより、前記ロボットアームが自動で動作するための制御ルールを制御ルール生成部で生成し、
前記環境情報取得部で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記動作を制御するロボットアーム制御用集積電子回路を提供する。
本発明の第1実施形態における、ロボットアームとその制御装置とを備えるロボット1の構成について説明する。
図1Aは、本発明の第1実施形態におけるロボットアーム5と、そのロボットアーム5を駆動制御する制御装置70とを備えるロボット1の概要を示す。図1Bは、ロボットアーム5が作業を行う図1Aの作業台7を上方から見た図であり、図1Cは図1Aの作業台7及び鍋3を正面から見た図である。
図1Aに示すように、ロボット1のロボットアーム5は、例えば家庭内のキッチン又はテーブルなどの作業台7の壁面7aに設置される。ロボットアーム5の基端5aが、壁面7aに固定されたレール8に対して移動可能な状態で支持され、ロボットアーム5が、レール8上に沿って横方向(例えば水平方向)に、人4Aの手4の力により、移動可能としている。ロボットアーム5の基端の固定場所は、作業台7の壁面7aに限られるものではなく、天井などでもよい。
さらに、データ入力IF26の一例としての操作盤13は、調理装置6の側面に固定したが、操作盤13に代えて、遠隔操作が可能なリモコンでも良い。
まず、人4Aがロボット1のロボットアーム5を直接把持し、人4Aが手4でロボットアーム5に力を加える。そして、人4Aからロボットアーム5に加えられた力により、ロボットアーム5がレール8に沿って移動し、例えば鍋などの調理器具3の付近までロボットアーム5が誘導される。
次に、人4Aが、手4で操作盤13から、ロボットアーム5に動作開始指令を入力すると、ロボットアーム5が作動し、予め選択された作業、すなわち、かき混ぜ作業を開始させる。
調理終了後、人4Aは、ロボットアーム5を調理器具の一例としての鍋3内から鍋3の外部に移動させて、次の作業に移行する。
第1実施形態のロボットアーム5は、一例として、6自由度の多リンクマニピュレータで構成される多関節ロボットアームとする。ロボットアーム5は、ハンド30と、ハンド30が取り付けられている手首部31を先端32aに有する前腕リンク32と、前腕リンク32の基端32bに回転可能に先端33aが連結される上腕リンク33と、上腕リンク33の基端33bが回転可能に連結支持される台部34とを備えている。台部34は、移動可能なレール8に連結されているが、一定位置に固定されていても良い。手首部31は、第4関節部38と、第5関節部39と、第6関節部40との3つの回転軸を有しており、前腕リンク32に対するハンド30の相対的な姿勢(向き)を変化できる。すなわち、図2において、第4関節部38は、手首部31に対するハンド30の横軸(ψ)周りの相対的な姿勢を変化できる。第5関節部39は、手首部31に対するハンド30の、第4関節部38の横軸とは直交する縦軸(Φ)周りの相対的な姿勢を変化させることができる。第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の縦軸と平行な縦軸周りに回転可能としている。
図3は、本発明の第1実施形態におけるロボットアーム5の座標系を示す。
周辺装置14は、データ入力IF(インターフェース)26と、入出力IF(インターフェース)24と、モータドライバ25とを有する。
動作生成装置12は、動作情報データベース17と、環境情報データベース18と、制御ルールデータベース16と、検出部選択ルールデータベース29と、動作指令部27(動作算出部2)と、動作補正部20と、制御ルール生成部23と、環境情報取得部19と、データベース入出力部28とにより構成される。
動作情報データベース17は、所定の時間におけるロボットアーム5の手先位置及び姿勢などのロボットアーム5の動作に関する情報(以下、動作情報と称す)を記憶している。動作情報は、予め設定しておいてもよいし、制御ルール生成部23を介してデータベース入出力部28により動作情報データベース17に入力されて記憶してもよい。
図6は、動作情報データベース17のフラグの情報を示す
図7は、動作情報データベース17の補正パラメータフラグに関する情報を示す。 動作情報の具体例として、図5Aを参照して以下に示す。
(4)動作情報の「力」の欄は、ロボットアーム5が作業をする際に作業対象となる物体(作業対象物、例えば作業用治具9,46,72又はフレキシブル基板74)に加える力に関する情報を示す。尚、本第1実施形態は、一例として、ニュートン(N)単位系で示す。
(6)動作情報の「ハンド」の欄は、ハンド30が開閉しているか否かのハンド開閉状態を表す情報を示す。
(7)動作情報の「時間」の欄は、ロボットアーム5の各キー動作を実行するための時間に関する情報を示す。尚、本第1実施形態では、一例として、秒(sec)単位で示す。
(8)動作情報の「補正パラメータフラグ」の欄は、後述する動作補正部20を用いて動作情報データベース17の動作情報を補正する際の、補正すべきパラメータの種別に関する情報を示す。
また、「動作」とは、例えば、かき混ぜ作業又は拭き掃除作業などの「作業」をロボットアーム5に実行させるためのロボットアーム5の動きを意味する。1つ以上の「動作」を実行することで、前記「作業」をロボットアーム5に実行させることができる。
環境情報データベース18は、ロボットアーム5が動作する際のロボットアーム5の周辺の物体の位置及び状態に関する情報と、人4A及びロボットアーム5が周辺環境に対して直接作用することによる物体の位置及び状態に関する情報(以下、これらの情報を環境情報と称す。)が記憶されている。環境情報は、後述する環境情報取得部19で取得し、環境情報取得部19からデータベース入出力部28を介して環境情報データベース18に記憶される。
図9Aは、環境情報データベース18のデータである環境情報を示す。
図9Bは、環境情報データベース18のフラグの情報を示す。
(2)環境情報の「画像ID」の欄は、環境情報取得部19の一例として機能する第1及び第2画像撮像装置15a及び15bで撮像された画像を識別する画像ID番号を示す。ここでは、ファイル名を使用する。
(4)環境情報の「力」の欄は、力検出部53で検出された力に関する情報(力の情報)を示す。
力に関する情報は、ロボットアーム5の力検出部53で検出した力に関する情報を示し、力のx、y、z、φ、θ、ψ方向の成分を(fx,fy,fz,fφ,fθ,fψ)と表す。
(5)環境情報の「フラグ」の欄は、環境情報の力及び画像のパラメータのうちのいずれの情報が有効か否かを示すフラグに関する情報を示す。
制御ルールデータベース16は、ロボットアーム5が作動する際のロボットアーム5の制御ルールに関する情報(以下、制御ルール情報と称す)が記憶されている。制御ルール情報は、後述する制御ルール生成部23で生成し、データベース入出力部28により、制御ルール生成部23と制御ルールデータベース16との間で、生成された情報又は生成に必要な情報などが入出力される。また、データベース入出力部28により、制御ルール生成部23と他のデータベース18,17,29との間で、生成に必要な情報などが入出力される。
(1)制御ルールデータベース16に記憶された制御ルールの「作業ID」の欄は、作業に関する情報を識別する作業ID番号を示す。
(2)制御ルールの「環境ID」の欄は、個々の環境情報を識別する環境ID番号を示し、環境情報データベース18の環境IDの値を参照可能とする。環境情報データベース18の環境IDの値を参照可能としない場合は、「-1」として記憶する。
(4)制御ルールの「進捗情報」の欄は、ロボットアーム5の所定の動作が動作中か否かを示し、動作中である場合は「1」とし、動作中でない場合は「0」として、データベース入出力部28により制御ルールデータベース16に記憶する。具体的には、動作指令部27によって、作業が開始されると、ロボットアーム5により現在動作(実行)中の動作については「1」をデータベース入出力部28により制御ルールデータベース16に記憶し、現在動作(実行)していない動作については「0」をデータベース入出力部28により制御ルールデータベース16に記憶する。
検出部選択ルールデータベース29は、ロボットアーム5を操作して環境情報を取得する際に、ロボットアーム5の制御モードにより、複数の環境情報の中から優先的に取得する環境情報の種別を選択するためのルール(検出部選択ルール)が記憶されている。検出部選択ルールデータベース29は、ロボット1に予め用意されており、データベース入出力部28により、検出部選択ルールの情報が入出力される。
図11Bは、検出部選択ルールデータベース29の検出部選択ルールの環境情報の種別に関する情報を示す。
データベース入出力部28は、各データベース群(動作情報データベース17と、環境情報データベース18と、制御ルールデータベース16と、検出部選択ルールデータベース29と)と、動作指令部27と、制御ルール生成部23と、環境情報取得部19と、及び動作補正部20との間でのデータの入出力を行う。よって、データベース入出力部28は、動作情報取得部及び補正動作情報取得部の一例として機能することができる。すなわち、データベース入出力部28は、ロボットアーム5の動作に対応する、ロボットアーム5の位置、姿勢、及び、速度の少なくとも1つ以上が時系列に動作情報として記憶された動作情報データベース17から前記動作情報を取得する動作情報取得部、又は、ロボットアーム5の動作に対応する、ロボットアーム5が作業対象物9,46,72,74に加える力の時系列の動作情報として記憶された動作情報データベース17から前記動作情報を取得する動作情報取得部として機能することができる。また、データベース入出力部28は、人4Aがロボットアーム5を操作して、ロボットアーム5の前記動作を補正する際に、動作情報取得部で取得した動作情報のうちの少なくとも1つ以上の前記動作情報に対応する補正動作情報を取得する補正動作情報取得部、又は、人4Aがロボットアーム5を操作して、ロボットアーム5の動作を補正する際に、動作情報取得部で取得した動作情報に関連しかつロボットアーム5が加える力に関する補正動作情報を取得する補正動作情報取得部としても機能することができる。
環境情報取得部19は、ロボットアーム5が作用する作業対象物9,46,72,74に関する情報である環境情報、すなわち、ロボットアーム5が動作する際のロボットアーム5の周辺の物体の位置及び状態に関する情報と、人4A及びロボットアーム5が周辺環境に対して直接作用することによる物体の位置及び状態に関する情報を取得する。具体的には、第1又は第2画像撮像装置15a又は15bで撮像された画像と力検出部53で検出された力の情報とを取得し、第1又は第2画像撮像装置15a又は15bで取得した画像及び力検出部53で検出された力の情報を、環境情報取得部19から制御ルール生成部23及び動作指令部27へ出力する。よって、第1及び第2画像撮像装置15a及び15b及び力検出部53は、それぞれ、環境情報取得部19の一例として機能する。
動作指令部27には、人4Aがデータ入力IF26により指定した「作業ID」の作業の動作開始の指令が、データ入力IF26から入力される。動作指令部27は、指定された「作業ID」の作業の動作開始の指令を受けて、制御ルールデータベース16の指定された「作業ID」をデータベース入出力部28を介して参照して、その「作業ID」の作業を開始させるように制御パラメータ管理部21へ指令する。
人4Aは、データ入力IF26により、表示部95で作業などが表示された表示画像を使用しつつ、制御ルールデータベース16の作業の中の「作業ID」に関する作業の中からロボットアーム5に実行させたい作業を選択して、選択した作業情報を動作指令部27に入力して指定する。
具体的には、図10Aの「作業ID」が「1」の作業が選択された場合は、「作業ID」が「1」の作業の「環境ID」が「-1」の値である場合には、このときの「動作ID」は「1」の動作である。従って、動作指令部27は、環境に拘わらず、ロボットアーム5に動作を実行させるために、データベース入出力部28を介して動作情報データベース17の「動作ID」を参照する。この例では、制御ルールデータベース16の「動作ID」には「1」と記憶されており、動作指令部27は、データベース入出力部28を介して、図5Aの動作情報データベース17の「動作ID」が「1」の動作の「キー動作ID」の「1」、「2」、「3」、「4」、「5」、「6」、「7」、「8」のキー動作(コマンド)を順番に参照する。
同様に、図10Aの「作業ID」が「2」の作業が選択された場合には、「作業ID」が「2」の作業の「環境ID」が「-1」の値であり、このときの「動作ID」は「2」の動作である。従って、動作指令部27は、環境に拘わらず、ロボットアーム5に動作を実行するために、データベース入出力部28を介して動作情報データベース17の「動作ID」を参照する。この例では、制御ルールデータベース16の「動作ID」には「2」と記憶されており、動作指令部27は、データベース入出力部28を介して、図5Aの動作情報データベース17の「動作ID」が「2」の動作の「キー動作ID」が「10」、「11」、「12」、「13」、「14」、「15」、「16」、「17」のキー動作(コマンド)を順番に参照する。
人4Aによりデータ入力IF26を使用して制御ルールデータベース16の作業の中の「作業ID」が「1」である作業が選択された場合は、動作指令部27は、z軸方向を力制御モードで、その他の軸方向は位置制御モードで作業するように、データベース入出力部28を介して制御パラメータ管理部21へ指令を出す。その結果、制御パラメータ管理部21は、後述するように、前記制御モードに従ってロボットアーム5が動作するように、制御部22へ指令を出して、制御部22による制御の下に、図12に示すように、ロボットアーム5は、IHクッキングヒーターなどの調理装置6の天板6aの拭き掃除作業を開始する。
動作補正部20は、制御装置本体部11よりロボットアーム5を力制御モードで制御している最中又は制御部22の位置制御部59の制御によりロボットアーム5が位置制御モードで移動している最中に補正動作情報取得部の一例としてのデータベース入出力部28で取得したそれぞれの時間での補正動作情報に応じて動作情報を補正することができる。すなわち、動作補正部20は、ロボットアーム5の制御動作中に、データ入力IF26から動作指令部27を介して動作補正操作の開始の指令を受ける。動作補正部20は、データベース入出力部28を介して動作情報データベース18の補正パラメータフラグに基づいて、ロボットアーム5の制御パラメータを切り替えることで、補正された動作(補正動作)でロボットアーム5を動作し、人4Aがロボットアーム5に力を加えることで、データベース入出力部28を介して制御ルールデータベース16のロボットアーム5の制御ルールを修正する。
人4Aは、データ入力IF26により、制御ルールデータベース16の「作業ID」に関する作業の中からロボットアーム5に実行させたい作業を選択して、動作指令部27により動作を実行する。
図13は、本発明の前記第1実施形態におけるロボットアーム5の補正動作を説明する図である。
このため、人4Aは、以下の2つの入力操作を行う。
第2の入力操作は、実際のロボットアーム5の動作を補正するための操作(以下、動作補正操作と称す。)である。
動作補正操作の開始の指令が入力されたと動作指令部27で判断すると、動作指令部27の指令により、ロボットアーム5のかき混ぜ動作の速度が遅くなり(例えば、動作補正操作の開始前の通常のかき混ぜ動作のときの速度の半分の速度)、人4Aは、動作補正操作の開始の指令が入力されたとロボット1が判断したことがわかる。さらに、かき混ぜ動作の速度が遅くなるため、動作中のロボットアーム5の動作を人4Aが補正しやすくなる。ロボットアーム5の動作を人4Aが補正している間、その補正動作の情報は、後述するように、動作補正部20で取得する。ロボットアーム5の動作を人4Aが補正した後、人4Aがかけた力が前記閾値(図30Aの値t1)より小さくなったと動作指令部27が判断した場合には、動作指令部27により動作補正操作を終了し、動作指令部27によりロボットアーム5の速度を補正前の速度に戻し、さらに、動作指令部27及び動作補正部20により、補正した動作を実行する。動作補正操作が終了したと動作指令部27で判断すると、動作指令部27の指令により、ロボットアーム5のかき混ぜ動作の速度が速くなり(例えば、動作補正操作時のかき混ぜ動作のときの速度の二倍の速度)、人4Aは、動作補正操作が終了したとロボット1が判断したことがわかる。
制御ルール生成部23は、動作補正部20で補正された動作情報と環境情報取得部19で取得した環境情報とを対応付けることにより、ロボットアーム5が自動で動作するための制御ルールを生成することができる。すなわち、制御ルール生成部23は、後述するロボットアーム5の制御動作中に、データ入力IF26から動作指令部27を介して、動作補正部20と同様に、動作補正操作の開始の指令を受ける。制御ルール生成部23は、動作補正部20で補正した動作情報と環境情報取得部19で取得した環境情報とに基づいて、制御ルールを生成し、制御ルールデータベース16に記憶する。ここで、ロボットアーム5の制御動作は、(ii)インピーダンス制御モード、(i)位置制御モード、(iv)力制御モード、若しくは、(v)それらを方向別に組み合わせた力ハイブリッド制御モードのうち、いずれかのモードである。
第1画像撮像装置15aにより制御ルール生成部23で取得した画像は、データベース入出力部28を介して環境情報データベース18に記憶する。
なお、図36Eに示すように、鍋の側面から鍋の底面に向かってかき混ぜるような動作として補正した場合には、図36Fに示すように、時刻t1、時刻t2、時刻t3と時間の経過とともに、ロボットアーム5の姿勢成分が変化するように補正しても良い。
この例では、図10Bに示すように、「作業ID」が「2」の作業には、複数の「動作ID」(「2」、「3」)を制御ルールデータベース16に記憶しているため、その場合の動作指令部27の機能について説明する。
制御装置本体部11は、制御パラメータ管理部21と、制御部22とを有する。制御部22と制御パラメータ管理部21との間では、ロボットアーム5の手先位置又は力の情報などが入出力される。この制御装置本体部11は、動作情報取得部の一例であるデータベース入出力部28で取得した動作情報に設定された力で作業対象物に対してロボットアーム5が力制御を行なうようロボットアーム5を力制御モードで制御する力制御部として機能することができる。
制御パラメータ管理部21は、動作補正部20又は動作指令部27の指示に基づいて、設定された制御モードに従ってロボットアーム5が動作するように、制御部22へ指令を出して、制御部22による制御の下にロボットアーム5を動作させる。さらに、制御パラメータ管理部21は、制御部22からロボットアーム5の手先位置又は力の情報などを取得して動作補正部20へ出力する。
制御パラメータ管理部21は、動作補正部20又は動作指令部27の指示に基づいて、ロボットアーム5の制御モードを切り替える設定信号を出力する。
それぞれの制御モードは、動作補正部20又は動作指令部27にて、動作情報データベースのフラグにより決定し、制御モードを切り替える設定信号を制御パラメータ管理部21へ出力する。
各制御モードについて説明する。
位置制御モードは、後述する目標軌道生成部55の手先位置と姿勢と時間とに関する情報に基づいて、ロボットアーム5が作動するモードである。
インピーダンス制御モードは、人4Aなどからロボットアーム5に加わる力(具体的には、力検出部53で検出された力)に応じて、ロボットアーム5が作動するようにロボットアーム5の動作を制御するモードである。例えば、図8に示すように、人4Aが手4でロボットアーム5を直接持ち、ロボットアーム5の手先の位置姿勢を教示する場合に用いるモードである。
ハイブリッドインピーダンス制御モードは、ロボットアーム5が位置制御モードで動作しているときに、力検出部53で検出された力に応じて、ロボットアーム5が作動するようにロボットアーム5の動作を制御するモードである。例えば、図13Aに示すように、ロボットアーム5が位置制御モードによるかき混ぜ業を行っているときに、人4Aが鍋3aの中の底側の部分をかき混ぜるようにロボットアーム5の動作を補正したい場合に用いるモードである。ハイブリッドインピーダンス制御モードを行うことにより、図13Dに示すように、人4Aがロボットアーム5を把持して、鍋3bの底面沿い方向に力をかけることで、水平方向に大きくかき混ぜる動作に補正することができる。
力制御モードは、動作補正部20から制御パラメータ管理部21へ設定された力で、ロボットアーム5を用いて作業対象物(作業用治具、例えば、レードル9又は拭き掃除用モップ若しくはスポンジ46、又は、電動ドライバ器具72、又はフレキシブル基板74)を作業対象面(例えば、鍋底、又は、掃除対象面、又は、器具71のネジ穴71aにネジ73を取り付けるときの作業対象面)に押し付けながらかき混ぜ動作又は拭き掃除動作又はネジ回し動作などするようにロボットアーム5の動作を制御するモードである。図12は、本第1実施形態におけるキッチンの拭き掃除動作を行うロボットを示す。例えば、図12に示すようにIHクッキングヒーター6などの天板6aの表面に力を加えて拭き掃除を行う場合、又は図15に示すように、鍋3の底の部分で、レードル9により力を加えて、かき混ぜ作業を行う場合など、力を加えながら、制御する方向に使用する制御モードである。
力ハイブリッドインピーダンス制御モードは、ロボットアーム5の6軸の方向(x軸,y軸,z軸,φ軸,θ軸,ψ軸の方向)別に、(iii)ハイブリッドインピーダンス制御モード、(ii)インピーダンス制御モード、(i)位置制御モード、を切り替えるとともに、指定した力を作用させて動作する(iii)力制御モードで制御するモードである。なお、力制御モードとインピーダンス制御モードとは排他的な関係であるため、力制御モードが設定された方向にインピーダンス制御モードを設定することはできない。
高剛性位置制御モードは、ロボットアーム5の動作中の位置制御モードをさらに高剛性にした制御モードである。具体的には、後述する位置誤差補償部56でのゲインを大きくすることで実現する。人4Aがロボットアーム5に力をかけても、高剛性位置制御モードは、ロボットアーム5を容易に移動させることができず、接触面からの抗力の影響をロボットアーム5が受けないため、人4Aがロボットアーム5にかけた力を正しく検出できる。
さらに、(iii)ハイブリッドインピーダンス制御モード又は(v)力ハイブリッドインピーダンスモードでロボットアーム5が動作中に、補正するパラメータに応じて、機械インピーダンス設定値又はインピーダンス計算部51で出力する手先位置及び姿勢目標補正出力rd△の設定を制御パラメータ管理部21により変更する。
次に、制御部22の詳細について、図4を用いて説明する。図4は、本第1実施形態のロボットアームの制御装置70の制御部22の詳細を示す。制御部22は、目標軌道生成部55と、ハンド制御部54と、力検出手段の一例としての力検出部53と、インピーダンス計算部51と、位置制御部59と、位置誤差計算部80とを有する。位置制御部59は、位置誤差補償部56と、近似逆運動学計算部57と、順運動学計算部58とを有して、動作情報取得部の一例としてのデータベース入出力部28で取得した動作情報に基づいてロボットアーム5を移動するよう位置制御モードでロボットアーム5を制御することができる。力検出部53は、図4では制御部22の一部として図示しているが、制御部22とは別の構成としてもよい。
目標軌道生成部55は、(i)位置制御モード、(iii)インピーダンス制御、(iv)ハイブリッドインピーダンス制御モード、(v)力ハイブリッドインピーダンス制御モード、又は(vi)高剛性位置制御モードで、ロボットアーム5を動作するように動作目標とする手先の位置及び姿勢目標ベクトルrdを生成する。
具体的には、位置誤差補償出力ureは、
以上のように構成される制御部22に関して、ロボットアーム5のインピーダンス制御動作の原理について説明する。
本第1実施形態の制御部22の動作ステップについ説明する。図16は、本第1実施形態の制御部22の動作フローチャートである。
ロボットアーム5の各関節部のエンコーダ44により計測された関節角度ベクトルqが、入出力IF24を介して、制御装置本体部11の制御部22に取り込まれる(ステップS1)。
このステップS6において、制御モードのそれぞれの成分において、(vi)高剛性位置制御モードの場合はステップS7に進み、(i)位置制御モードの場合はステップS8に進み、(iv)力制御モードの場合は、ステップS9に進む。
位置誤差補償部56の定数の対角行列である比例、微分、積分の3つのゲインを調整することにより、位置誤差reが0に収束するように位置誤差補償部56の制御が働く。そのゲインを、ある値まで大きくすることで、高剛性の位置制御を実現する(ステップS10)。その後、ステップS12に進む。
ロボットアーム5の制御装置における、環境情報を考慮した制御ルール作成のための動作と環境情報を考慮した実際の動作フローとについて説明する。
人4Aは、外部入力装置26aにより、制御ルールデータベース16の作業の中からロボットアーム5に実行させたい作業を選択し、データ入力IF26を介して、前記選択された作業に対応する「作業ID」の選択指令を動作指令部27に入力する(ステップS50)。
以上が、通常のロボットアーム5の制御動作フローである。
次に、環境情報の変化を考慮した場合の、ロボットアーム5の制御動作フローを説明する。
上記ロボットアーム5の動作中に、人4Aがロボットアーム5を操作して、環境変化通知操作の開始の指令の入力を、データ入力IF26を介して、動作指令部27に行う(ステップS53)。動作指令部27に環境変化通知操作の開始の命令が入力されると、動作指令部27により、ロボットアーム5の動作を停止させる。
次に、制御ルール生成部23は、動作補正部20で補正した動作情報と環境情報取得部19で取得した環境情報に基づいて、制御ルールを生成し、データベース入出力部28を介して制御ルールデータベース16に記憶する(ステップS60)。
図29は、本第1実施形態におけるロボットアーム5の制御装置の環境情報を考慮した実際の動作フローチャートを示す。
次に、ステップS102で取得した環境情報と、前記各「動作ID」に対応する「環境ID」で参照された環境情報の比較を動作指令部27で行う(ステップS103)。
ステップS106では、動作算出部2により算出した動作情報は、制御パラメータ管理部21へ出力して、このフローを終了する。
一方、ステップS104で合致した動作が0個であると動作指令部27で判断された場合は、動作すべき動作が無しとなり、このフローを終了するとともに、ロボットアーム5は動作を停止する(ステップS112)。
ステップS109では、ステップS108で取得した環境情報と、前記1個の「動作ID」に対応する「環境ID」で参照された環境情報との比較を動作指令部27で行う。
本発明の第2実施形態における、ロボットアーム5とその制御装置の基本的な構成は、第1実施形態の場合と同様であるので、共通部分の説明は省略し、異なる部分についてのみ以下、詳細に説明する。
まず、比較例として、本発明とは異なり、汚れが発生した場合(汚れた部分を見つけた場合)に、その都度、人4Aが補正操作をしなければならない場合について説明する。
以上のような補正は、次回同じような汚れが発生した場合(汚れた部分を見つけた場合)に、再度、人4Aが補正操作をしなければならず、面倒であった。
以下、動作指令部27の機能について説明する。
人4Aは、データ入力IF26により、制御ルールデータベース16の作業の中の「作業ID」に関する作業の中からロボットアーム5に実行させたい作業を選択して、動作指令部27により動作を実行する。すなわち、人4Aがデータ入力IF26により図10Aの「作業ID」が「1」の作業が選択された場合には、動作指令部27は、その「1」の作業に対応する「動作ID」で動作情報データベース17をデータベース入出力部28を介して参照し、動作情報(具体的には、位置、姿勢、時間、力)を基にフラグに従って制御モードを設定してロボットアーム5が動作するように、制御パラメータ管理部21へ指令を出す。
以下、動作補正部20の機能について説明する。
IHクッキングヒーター6などの天板6aを拭き掃除動作をしている最中に、人4AがIHクッキングヒーター6などの天板6a上の拭き掃除動作中の場所とは別の場所が汚れていることを確認し、データ入力IF26により、汚れの状態をロボットアーム5に知らせる操作(環境変化通知操作)の開始の指令を動作指令部27に出す。
制御ルール生成部23は、第1実施形態の場合と同様に、データベース入出力部28を介して、制御ルールデータベース16の「動作ID」が参照する動作情報データベース17の位置及び姿勢及び力及び時間との情報にて、後述するインピーダンス制御モード、若しくは位置制御モード、若しくは力制御モード、若しくはそれらを方向別に組み合わせた制御モード、のうち、いずれかのモードでのロボットアーム5の動作中に、データ入力IF26から動作指令部27を介して、制御ルール生成部23で動作補正操作の開始の指令を受ける。すると、制御ルール生成部23では、動作補正部20で補正した動作情報と環境情報取得部19で取得した環境情報とに基づいて、制御ルールを生成し、データベース入出力部28を介して、制御ルールデータベース16に記憶する機能を有している。
制御ルール生成部23には、データ入力IF26から動作指令部27を介して、動作中の作業IDに対して、環境変化通知操作の開始の指令を受けて、人4Aからの環境変化通知操作にて生成したロボットアーム5の手先位置及び時間を動作補正部20より入力される。加えて、環境変化通知操作の開始のタイミングより、環境情報取得部19より環境情報が制御ルール生成部23に入力される。さらに、環境変化通知操作の開始時の動作中の「動作ID」を動作情報データベース18からデータベース入出力部28を介して制御ルール生成部23で参照し、その「動作ID」の「キー動作ID」のフラグに関する情報から、現在のロボットアーム5の制御モードに関する情報を制御ルール生成部23で取得する。具体的には、図10Aの「作業ID」が「1」の作業で動作中の「動作ID」が「1」の動作の「キー動作ID」が「1」~「8」のキー動作をデータベース入出力部28を介して動作情報データベース18から制御ルール生成部23で参照すると、それぞれの「キー動作ID」のフラグが、図5Aでは、0、1、3~5、8ビット目のみ「1」であり、その他は「0」であるので、ロボットアーム5の動作のうち、位置姿勢に関しては、x軸、y軸、φ軸、θ軸、ψ軸、力に関してはz軸のみデータが有効ということが制御ルール生成部23でわかる。従って、x軸、y軸、φ軸、θ軸、ψ軸が人4Aの加えた力で補正ができるように、インピーダンス制御モードとなっている。
「動作ID」の「1」の動作と「4」の動作との動作パラメータフラグは、共に0、1、8ビット目が「1」であるので、算出した動作の動作パラメータフラグは0、1、8ビット目が「1」となる。
本発明の第3実施形態における、ロボットアーム5とその制御装置の基本的な構成は、第1実施形態の場合と同様であるので、共通部分の説明は省略し、異なる部分についてのみ以下、詳細に説明する。
ロボット1は、例えば、工場内で、テレビ又はDVDレコーダのネジ73の取り付け作業などのロボットアーム5と人4Aとが協働して行う作業をロボットアーム5を使用して行う。
さらに、操作盤13は、作業台7の側面に固定したが、操作盤13に代えて、遠隔操作が可能なリモコンでも良い。
動作情報データベース17は、第1実施形態と同様に、ロボットアーム5の、ある時間におけるロボットアーム5の手先位置及び姿勢などのロボットアーム5の動作に関する情報(動作情報)を記憶している。動作情報は、制御ルール生成部23を介してデータベース入出力部28により動作情報データベース17に入出力される。
以下、動作指令部27の機能について説明する。
人4Aは、データ入力IF26により、制御ルールデータベース16の作業の中の「作業ID」に関する作業の中からロボットアーム5に実行させたい作業をデータベース入出力部28を介して選択して、動作指令部27により、その選択した「作業ID」にかかる動作を実行するように制御パラメータ管理部21へ指令する。
以上により、図24A(図21を上方から見た図)に示すように、ロボットアーム5はネジ穴71a間を移動する動作を開始する。
以降、「キー動作ID」の終わりまで順次動作算出部2で算出する。
以下、動作補正部20の機能について説明する。
人4Aがデータ入力IF26により、「作業ID」が「3」の作業を指定して動作指令部27に作業開始を指示すると、図26Aに示すように、ロボットアーム5にネジ73をネジ穴71aから取り外す作業を開始する。
制御ルール生成部23は、第1実施形態の場合と同様に、制御ルールデータベース16の動作IDが参照する動作情報データベース17の位置及び姿勢及び力及び時間との情報にて、後述するインピーダンス制御モード、若しくは位置制御モード、若しくは力制御モード、若しくはそれらを方向別に組み合わせた制御モード、のうち、いずれかのモードでのロボットアーム5の動作中に、データ入力IF26から動作指令部27を介して、制御ルール生成部23で環境変化通知操作及び動作補正開始の指令を受ける。すると、制御ルール生成部23では、動作補正部20で補正した動作情報と環境情報取得部19で取得した環境情報とに基づいて、制御ルールを生成し、制御ルールデータベース16に記憶する機能を有している。
図26Bに示すように、仕様変更箇所の突出部材71bに衝突した箇所では、ネジ穴71aがないので、「動作ID」が「12」の動作の「環境ID」が「20」の環境情報に合致しないため、「動作ID」が「11」の動作のみで動作している。
具体的には、制御ルールデータベース16の「作業ID」が「3」の作業で動作中に動作を補正するため、制御ルール生成部23により、図10Bに示すように、「作業ID」が「3」の作業に1行追加し、動作補正により新しく追加した「動作ID」が「13」の動作を追加する。
この例では、図10Bに示すように、「作業ID」が「3」の作業には、複数の「動作ID」(「11」「12」、「13」)を記憶しているため、その場合の動作指令部27の機能について説明する。
なお、第3実施形態では、仕様変更箇所の突出部材71bの迂回動作を補正したが、例えば、ネジ締め付けの際の力加減についても、同様に、適応可能である。
本発明の第4実施形態における、ロボットアーム5とその制御装置の基本的な構成は、第1実施形態の場合と同様であるので、共通部分の説明は省略し、異なる部分についてのみ以下、詳細に説明する。
さらに、操作盤13は、作業台7の側面に固定したが、操作盤13に代えて、遠隔操作が可能なリモコンでも良い。
動作情報データベース17は、第3実施形態と同様に、ロボットアーム5の、ある時間におけるロボットアーム5の手先位置及び姿勢などのロボットアーム5の動作に関する情報(動作情報)を記憶している。動作情報は、制御ルール生成部23を介してデータベース入出力部28により動作情報データベース17に入出力される。
図32A、図32Bは、本第4実施形態の動作情報データベース17を示す。動作情報は第1実施形態と同様であるので、説明を省略する。
以下、動作指令部27の機能について説明する。
人4Aは、データ入力IF26により、制御ルールデータベース16の作業の中の「作業ID」に関する作業の中からロボットアーム5に実行させたい作業をデータベース入出力部28を介して選択して、動作指令部27により、その選択した「作業ID」にかかる動作を実行するように制御パラメータ管理部21へ指令する。
以上により、図33A(図31を上方から見た図)に示すように、ロボットアーム5は機器71上を移動する動作を開始する。
以降、「キー動作ID」の終わりまで順次動作算出部2で算出する。
以上により、図33Bに示すように、ロボットアーム5は挿入口75にフレキシブル基板74のコネクタ部24aを接触するまで移動させる動作を開始する。
以降、「キー動作ID」の終わりまで順次動作算出部2で算出する。
以下、動作補正部20の機能について説明する。
人4Aがデータ入力IF26により、「作業ID」が「4」の作業を指定して動作指令部27に作業開始を指示すると、図35Aに示すように、ロボットアーム5はフレキシブル基板74のコネクタ部74aを挿入口74に挿入する作業を開始する。
なお、ここで、環境変化通知操作と動作補正操作とを分けて別々に入力したが、環境変化通知操作と動作補正操作との操作の方向が同じである場合は、動作補正操作又は環境変化通知操作のいずれか一方の操作を省略することができる。具体的には、データ入力IF26から動作補正操作の開始の指令を省略して、環境変化通知操作の開始の指令を出した場合には、動作補正操作を省略することができる(第5実施形態を参照)。その場合の動作補正部20は、人4が動作補正操作をした際に、環境情報を取得した後、動作補正を行う。
制御ルール生成部23は、第3実施形態の場合と同様に、制御ルールデータベース16の「動作ID」が参照する動作情報データベース17の位置及び姿勢及び力及び時間との情報にて、後述するインピーダンス制御モード、若しくは位置制御モード、若しくは力制御モード、若しくはそれらを方向別に組み合わせた制御モード、のうち、いずれかのモードでのロボットアーム5の動作中に、データ入力IF26から動作指令部27を介して、制御ルール生成部23で環境変化通知操作及び動作補正開始の指令を受ける。すると、制御ルール生成部23では、動作補正部20で補正した動作情報と環境情報取得部19で取得した環境情報とに基づいて、制御ルールを生成し、制御ルールデータベース16に記憶する機能を有している。
図35Bに示すように、フレキシブル基板挿入時は「動作ID」が「23」の動作で動作している。
具体的には、制御ルールデータベース16の「作業ID」が「4」の作業で動作中に動作を補正するため、制御ルール生成部23により、図10Bに示すように、「作業ID」が「4」の作業に1行追加し、動作補正により新しく追加した「動作ID」が「24」の動作を追加する。
動作指令部(動作算出部2)27により、具体的には上記した補正により、図35Eのように仕様変更後に自動でロボットアーム5の動作を行うことができる。その仕様変更後の自動的に行う動作については、第3実施形態又は先の実施形態と同様であるので、説明を省略する。
本発明の第5実施形態における、ロボットアーム5とその制御装置の基本的な構成は、第1実施形態又は第4実施形態の場合と同様であるので、共通部分の説明は省略し、異なる部分についてのみ以下、詳細に説明する。なお、この第5実施形態は、環境変化通知操作と動作補正操作が同じ場合には、2つの操作を行う代わりに、動作補正操作を省略して、1つの操作(ここでは、環境変化及び動作通知操作と呼ぶ。)のみ行うことができる例について説明している。
第5実施形態においては、第4実施形態と同様、図31に示すように、ロボットアーム5とロボットアーム5の制御装置を備えるロボット1を使って、セル生産の工場でテレビ又はDVDレコーダなどの機器71の挿入口75に作業対象物の一例であるフレキシブル基板74を取り付ける場合を例にとって説明する。
図31に示したように、ロボット1のロボットアーム5は、例えば工場内の作業台テーブルなどの作業台7の壁面7aに設置され、ロボットアーム5の基端が、壁面7aに固定されたレール8に、移動可能に支持され、レール8上をロボットアーム5がレール8沿いの横方向例えば水平方向に、人4Aの力により、移動可能とする。15aはカメラなどの第1画像撮像装置であり、例えば天井7bから作業台7を撮像できるように取り付けられている。
ロボット1は、例えば、工場内で、テレビ又はDVDレコーダのフレキシブル基板74の取り付け作業などのロボットアーム5と人4Aとが協働して行う作業をロボットアーム5により行う。
第4実施形態と同様に、まず、人4Aが手4でロボット1のロボットアーム5を直接把持してロボットアーム5に力を加える。そして、人4Aからロボットアーム5に加えられた力により、ロボット1のロボットアーム5をレール8に沿って移動させることで、器具71(この例では、フレキシブル基板74を挿入するテレビ又はDVDレコーダの機器を示す)の付近までロボットアーム5を誘導する。
次に、セル生産の作業台7などの前側側面7eなどに配置されている、データ入力IF26の一例としてのロボット1の操作盤13のボタン13aを、人4Aが押すなどしてデータ入力IF26を使用することにより、ロボットアーム5が作動し、予め選択された作業、すなわち、器具71の挿入口75に、ハンド30でコネクタ部分74aを把持したフレキシブル基板74を挿入して取り付ける作業を開始させる。
次に、機器71の仕様変更により、機器71の形状又はフレキシブル基板74の仕様が変更になった場合に、ロボットアーム5が、フレキシブル基板74の取り付け作業を行っているときに、人4Aがフレキシブル基板74の取り付け状態を確認し、人4Aがロボットアーム5に力を加えて、取り付ける力具合、又は、フレキシブル基板74の位置の調整などの動作補正を行うことにより、ロボット1のロボットアーム5の動作を補正する。
レール8は、作業台7の壁面7aに配置したが、壁面の無い作業台の場合は、天井面又は作業台の天板6aの側面など作業をするのに適した場所に設置することができる。
さらに、操作盤13は、作業台7の側面に固定したが、操作盤13に代えて、遠隔操作が可能なリモコンでも良い。
-動作情報データベース-
動作情報データベース17は、第4実施形態と同様に、ロボットアーム5の、ある時間におけるロボットアーム5の手先位置及び姿勢などのロボットアーム5の動作に関する情報(動作情報)を記憶している。動作情報は、制御ルール生成部23を介してデータベース入出力部28により動作情報データベース17に入出力される。
図32A、図32Bは、第4実施形態と同様に、本第5実施形態の動作情報データベース17を示す。動作情報は第1実施形態と同様であるので、説明を省略する。
-動作指令部(動作算出部)-
以下、動作指令部27の機能について説明する。
人4Aは、データ入力IF26により、制御ルールデータベース16の作業の中の「作業ID」に関する作業の中からロボットアーム5に実行させたい作業をデータベース入出力部28を介して選択して、動作指令部27により、その選択した「作業ID」にかかる動作を実行するように制御パラメータ管理部21へ指令する。
動作指令部27がデータベース入出力部28を介して制御ルールデータベース16を参照するとき、1つの「作業ID」の作業が選択された場合で、かつ、動作指令部27は、前記1つの「作業ID」の作業の中に複数の「動作ID」が記憶されていると判断した場合は、動作算出部2により動作情報を算出し、算出した動作情報(具体的には、位置、姿勢、時間、力)をフラグに従って、制御モードを設定して動作するように、データベース入出力部28を介して制御パラメータ管理部21へ指令を出す。
具体的には、図10Aの「作業ID」が「4」の作業は、図33A(図31を上方から見た図)に示すように、ロボットアーム5が移動しながら挿入口75をロボット1で検出すると、ロボットアーム5の手先位置のハンド30でコネクタ部分74aが把持されたフレキシブル基板74のコネクタ部分74aを挿入口75に挿入する動作を行う制御ルールでの作業を示す。「作業ID」が「4」の作業には複数の「動作ID」(「21」、「22」、「23」の動作)が記憶されている。
動作算出部2では、複数の動作から1つの動作情報を算出する。具体的には、「動作ID」が「21」の動作と「22」の動作と「23」の動作との中から1つの動作情報を動作算出部2で算出する。「動作ID」が「21」の動作は、ロボットアーム5の手先位置のハンド30(正確には、ハンド30で把持したフレキシブル基板74)が、図33Aに示すように、機器71の挿入口75の近傍の上方部分を移動する動作を表す。「動作ID」が「21」の動作の「環境ID」は「-1」の値であるので、ロボットアーム5の周辺環境に拘わらず、ロボットアーム5が動作するので、実行すべき動作として動作指令部27で選択する。「動作ID」が「22」の動作は、下記するように、挿入口75であると動作指令部27で判断した場合に、挿入口75の入り口にフレキシブル基板74のコネクタ部74aが接触するまで、フレキシブル基板74を移動させる動作を表す。「動作ID」が「22」の動作の「環境ID」は「30」の環境情報で、「-1」の値ではないので、環境情報データベース18の「環境ID」が「30」の環境情報をデータベース入出力部28を介して動作指令部27で参照する。図9Aの「環境ID」が「30」の環境情報のフラグは、6ビット目のみ「1」であり、それ以外は「0」であるので、画像が有効であると、動作指令部27で判断することができる。そこで、画像IDより、環境情報データベース18に記憶されている画像の情報を動作指令部27で取得する。この画像は、図34の挿入口75の画像の情報を示す。次に、環境情報取得部19より、現在の画像情報を動作指令部27で取得して、画像マッチングにより、2つの画像を動作指令部27で比較し、挿入口75かどうかを動作指令部27で判断する。2つの画像が合致したと動作指令部27で判断した場合には、挿入口だと動作指令部27で判断し、「動作ID」が「22」で記憶されている動作を実行すべき動作として動作指令部27で選択する。合致しなかったと動作指令部27で判断した場合には、「動作ID」が「22」の動作は動作指令部27で選択せず、「21」の動作のみを動作指令部27で選択する。
「動作ID」が「23」の動作は、フレキシブル基板74のコネクタ部74aを挿入口75に挿入するために、フレキシブル基板74を移動させる動作を表す。「動作ID」が「23」の動作の「環境ID」は「31」の環境情報で、「-1」の値ではないので、環境情報データベース18の「環境ID」が「31」の環境情報をデータベース入出力部28を介して動作指令部27で参照する。図9Aの「環境ID」が「31」の環境情報のフラグは、0~5ビット目のみ「1」であり、それ以外は「0」であるので、力が有効であると、動作指令部27で判断することができる。環境情報取得部19より、現在の力検出部の値を動作指令部27で取得して、環境情報データベース18で記憶されている力と動作指令部27で比較する。この2つの力が合致したと動作指令部27で判断した場合には、フレキシブル基板74が挿入口75から受ける力が、環境情報データベース18で記憶されている力が合致したと動作指令部27で判断し、「動作ID」が「23」の動作で記憶されている動作を実行すべき動作として動作指令部27で選択する。合致しなかったと動作指令部27で判断した場合には、「動作ID」が「23」の動作は動作指令部27で選択せず、「21」の動作又は「22」の動作のどちらかを動作指令部27で選択する。
選択された「動作ID」が1つのみの場合には、第1実施形態と同様に、「動作ID」と同じ「動作ID」の動作をデータベース入出力部28を介して動作情報データベース17から動作指令部27で参照する。「動作ID」と同じIDの動作情報は複数の「キー動作ID」で管理する動作情報(具体的には、位置の情報と、姿勢の情報と、時間の情報と、力の情報)を動作情報のフラグに従って、制御モードを設定して動作するように、動作指令部27から制御パラメータ管理部21へ指令を出して、それぞれのキー動作を順次実行するように、動作指令部27から制御パラメータ管理部21へ動作情報を出力する。この例では、ロボットアーム5の周辺の環境が、「動作ID」が「22」の動作の「環境ID」が「30」の環境情報に合致しないと動作指令部27で判断した場合には、挿入口75が検出できなかったと動作指令部27で判断し、「動作ID」が「21」の動作で示した動作を実行するように動作指令部27から制御パラメータ管理部21へ指令を出す。
すなわち、図32Aの動作情報データベース17より、「フラグ」が0~5ビット目が「1」であるので、ロボットアーム5の手先のx、y、z、φ、θ、ψが有効ということを示しているので、x、y、z、φ、θ、ψについては位置制御モードで動作させる。
以上により、図33A(図31を上方から見た図)に示すように、ロボットアーム5は機器71上を移動する動作を開始する。
「動作ID」が「21」の動作でロボットアーム5が機器71上を移動中に、挿入口75の上方の部分にロボットアーム5が到達したと動作指令部27で判断した場合には、「動作ID」が「22」の動作の「環境ID」が「30」の環境情報の画像と環境情報取得部19で取得した現在の画像情報の画像とが合致すると動作指令部27で判断されるため、「動作ID」が「21」の動作と「22」の動作との2つの動作が動作指令部27で選択される。動作指令部27の動作算出部2では、それぞれの「動作ID」のフラグ(「動作ID」で動作情報データベース17をデータベース入出力部28を介して動作指令部27で参照し、そこで記憶されているフラグ)により、最終的に実行すべき動作情報を算出する。
この例では、「動作ID」が「21」の動作と「22」の動作とが動作指令部27で選択されており、図10Aの制御ルールデータベース16の「動作ID」には「21」の動作、「22」の動作の順に記憶されている。従って、「動作ID」が「21」の動作の動作情報のフラグが、図32Aより0~5ビット目及びビット目が「1」であるので、「動作ID」が「21」の動作の動作情報のうち、位置姿勢情報(x,y,z,φ,θ,ψ)の動作情報を取得する。
次に、「動作ID」が「22」の動作のフラグは、0、1、3~5、8、12、13、15~17目が「1」で、その他は「0」である。フラグのうち、12,13,15~17ビット目が「1」であるので、その際に、「動作ID」が「22」の動作のそれぞれのキー動作のフラグのうち、12,13,15~17ビット目が「1」であるので、「動作ID」が「21」の動作の動作情報を現在実行中のロボットアーム5の手先位置情報をコピーして動作指令部27で置き換える。この例では、挿入口75の上方にロボットアーム5が配置されているので、その位置及び姿勢情報を「動作ID」が「21」の動作に動作指令部27でコピーする。他のキー動作の位置についても同様に動作指令部27で置き換える。
次に、「動作ID」が「21」の動作の動作情報のうち、(x,y,φ,θ,ψ)の値を「動作ID」が「22」の動作のそれぞれの動作情報に動作指令部27で置き換えて動作算出部2で算出する。
以降、「キー動作ID」の終わりまで順次動作算出部2で算出する。
動作算出部2で算出した動作情報のフラグ及び動作情報フラグについて、動作算出部2により、「動作ID」が「21」の動作と「22」の動作とのそれぞれのビットにおいて、どちらかのビットに「1」の場合には、算出後のフラグのビットを「1」に、両方とも「0」の場合には、「0」とする。ただし、位置と力のそれぞれの成分はどちらかにしか「1」とならないため(位置制御モード若しくは力制御モードのどちらかでしか作動しないため)、位置と力の両方に「1」となった場合には、力を優先する。
「動作ID」が「21」の動作のフラグは、0~5ビット目が「1」であり、「22」は0、1、3~5、8、12、13、15~17ビット目が「1」であるので、0~5、8、12、13、15~17ビット目が「1」となる。位置z成分と力z分の両方が「1」となっているので、力を優先するため、最終的には、0、1、3~5、8、12、13、15~17ビット目が「1」となる。
「動作ID」が「21」の動作の動作パラメータフラグは、1,2,3ビット目が「1」であり、「動作ID」が「22」の動作の動作パラメータフラグは、8ビット目が「1」である。従って、動作算出部2で算出した動作の動作パラメータフラグは、1,2,3,8ビット目が「1」となる。
動作算出部2で算出した動作の「フラグ」が0、1、3~5ビット目が「1」であるので、ロボットアーム5の手先のx、y、φ、θ、ψが有効ということを示しているので、x、y、φ、θ、ψについては位置制御モードで動作させる。さらに、8ビット目が「1」であるので、z軸は力制御モードで動作するように、動作指令部27から制御パラメータ管理部21へ指令を出す。
以上により、図33Bに示すように、ロボットアーム5は挿入口75にフレキシブル基板74のコネクタ部24aを接触するまで移動させる動作を開始する。
「動作ID」が「22」の動作にてフレキシブル基板74のコネクタ部24aを挿入口75に接触するまで移動させる動作が完了した時点で、次に動作させる動作を動作指令部27で選択する。「動作ID」が「23」の動作の「環境ID」が「31」の環境情報の力と環境情報取得部19で取得した力が合致したと動作指令部27で判断した場合には、「動作ID」が「21」の動作と「23」の動作との2つの動作が動作指令部27で選択される。さらに、「動作ID」が「22」の動作の「環境ID」が「30」の環境情報の力と環境情報取得部19で取得した画像が合致すると動作指令部27で判断した場合には、「動作ID」が「21」の動作と「22」の動作と「23」の動作との3つの動作が動作指令部27で選択される。
動作算出部2では、それぞれの「動作ID」のフラグ(「動作ID」で動作情報データベース17をデータベース入出力部28を介して動作指令部27で参照し、そこで記憶されているフラグ)により、最終的に実行すべき動作情報を算出する。
この例では、「動作ID」が「21」の動作と「22」の動作と「23」の動作とが選択されており、図10Aの制御ルールデータベース16の「動作ID」には「21」の動作、「22」の動作、「23」の動作の順に記憶されている。この場合は、最も番号の大きい「動作ID」を優先して動作指令部27で選択する。「動作ID」が「22」の動作の動作情報のフラグが、図32Aより0、1、3~5、8、12、13、15~17ビット目が「1」であるので、「動作ID」が「22」の動作の動作情報のうち、位置姿勢情報(x,y,φ,θ,ψ)とz成分の力情報の動作情報を取得する。次に、「動作ID」が「23」の動作のフラグは、0、1、3~5、8、12、13、15~17目が「1」で、その他は「0」である。フラグのうち、12,13,15~17ビット目が「1」であるので、その際に、「動作ID」が「22」の動作のそれぞれのキー動作のフラグのうち、12,13,15~17ビット目が「1」であるので、「動作ID」が「11」の動作の動作情報を現在実行中のロボットアーム5の手先位置情報をコピーして動作指令部27で置き換える。この例では、挿入口の上方にロボットアーム5が配置されているので、その位置及び姿勢情報を「動作ID」が「21」の動作に動作指令部27でコピーする。他のキー動作の位置についても、同様に動作指令部27で置き換える。次に、「動作ID」が「22」の動作の動作情報のうち、(x,y,φ,θ,ψ)成分の値を「動作ID」が「23」の動作のそれぞれの動作情報に置き換えて動作算出部2で算出する。
以降、「キー動作ID」の終わりまで順次動作算出部2で算出する。
-動作補正部-
以下、動作補正部20の機能について説明する。
人4Aがデータ入力IF26により、「作業ID」が「4」の作業を指定して動作指令部27に作業開始を指示すると、図35Aに示すように、ロボットアーム5はフレキシブル基板74のコネクタ部74aを挿入口74に挿入する作業を開始する。
次に、TV又はDVDレコーダなどの機器71の仕様変更に伴い、図35Bに示すように、フレキシブル基板74Aのサイズ又は厚み、フレキシブル基板自体の剛性の変更、挿入口75Aのサイズ変更が発生する。あらかじめ生成されている「作業ID」が「4」の作業は仕様変更前に生成されているため、そのまま動作させると、フレキシブル基板74A又は挿入口75Aの変更により、例えば、「作業ID」が「4」の作業の動作から挿入時の力加減が足りず、挿入口75Aに十分に差し込むことができないということが起こる。
第4実施形態と同様の補正を行う場合に、図35Cに示す環境変化通知操作と図35Dに示す動作補正操作とが同じ場合の実施形態について説明する。
人4Aは、環境変化通知操作と動作補正操作とを1つの操作で操作するために、1つの環境変化及び動作通知操作の開始の指令をデータ入力IF26を介して動作指令部27に入力する。環境変化及び動作通知操作は、第4実施形態の環境変化通知操作と動作補正操作とを1つの操作で入力可能にした操作である(例えば、操作方向が同じ場合には、環境変化通知操作での操作方向と動作補正操作での操作方向との2つの操作方向を入力する代わりに、環境変化及び動作通知操作として、同じ1つの操作方向を入力することを意味する。)。動作補正部20は、データ入力IF26から動作指令部27を介しての環境変化及び動作通知操作の指令を受けて、動作情報データベース17のフラグに従って、制御モードを設定して動作するように、制御パラメータ管理部21へ指令を出す。
具体的には、図35Bに示すように、フレキシブル基板74Aの挿入時は「動作ID」が「23」の動作で動作している。動作中の「動作ID」が「23」の動作を動作情報データベース18からデータベース入出力部28を介して動作補正部20で参照すると、それぞれの「キー動作ID」のフラグが、図32Aでは、0、1、3~5、8、12、13、15~17目が「1」であり、その他は「0」であるので、ロボットアーム5の動作のうち、位置姿勢に関しては、x軸、y軸、φ軸、θ軸、ψ軸が、力に関してはz軸が有効ということを表す。従って、x軸、y軸、φ軸、θ軸、ψ軸が人4Aの加えた力で補正ができるように、x軸、y軸、φ軸、θ軸、ψ軸について、位置制御モードからインピーダンス制御モード(人4Aの力を検知した方向に移動させるモード)で動作し、z軸については、高剛性位置制御モードにより動作するように、動作補正部20は制御パラメータ管理部21へ指令を出す。
次に、図35Cのように、機器71上の仕様変更箇所に伴う力の状態変更及び補正すべき動作の両方を知らせるために、人4Aがz軸方向に力を加える。人4Aが環境変化及び動作通知操作により力を加えた動作を動作補正部20で取得するために、制御パラメータ管理部21からのロボットアーム5の力を動作補正部20で取得し、後述する制御ルール生成部23へ動作補正部20から出力する。
次に、動作補正部20は、環境変化及び動作通知操作により、もう少し力を強めに挿入するように動作させる。人4Aが加えた力を取得するために、制御パラメータ管理部21からのロボットアーム5の手先の力を動作補正部20で取得し、後述する制御ルール生成部23へ動作補正部20から出力する。
-制御ルール生成部-
制御ルール生成部23は、制御ルールデータベース16の「動作ID」が参照する動作情報データベース17の位置及び姿勢及び力及び時間との情報にて、後述するインピーダンス制御モード、若しくは位置制御モード、若しくは力制御モード、若しくはそれらを方向別に組み合わせた制御モード、のうち、いずれかのモードでのロボットアーム5の動作中に、データ入力IF26から動作指令部27を介して、制御ルール生成部23で環境変化及び動作補正開始の指令を受ける。すると、制御ルール生成部23では、動作補正部20で補正した動作情報と環境情報取得部19で取得した環境情報とに基づいて、制御ルールを生成し、制御ルールデータベース16に記憶する機能を有している。
以下、制御ルール生成部23の機能について説明する。
図35Bに示すように、フレキシブル基板挿入時は「動作ID」が「23」の動作で動作している。
制御ルール生成部23は、データ入力IF26から動作指令部27を介して動作中の作業IDに対して、環境変化及び動作通知操作の開始の指令を受けて、人4Aからの環境変化及び動作通知操作にて生成したロボットアーム5の手先位置及び時間を動作補正部20より入力する。加えて、環境変化及び動作通知操作の開始のタイミングより、環境情報取得部19より環境情報を入力する。さらに、環境変化及び動作通知操作の開始時の動作中の「動作ID」を動作情報データベース18から制御ルール生成部23で参照し、その「動作ID」の「キー動作ID」のフラグに関する情報から現在のロボットアーム5の制御モードに関する情報を制御ルール生成部23で取得する。具体的には、図10Aの「作業ID」が「4」の作業で動作中の「動作ID」が「23」の動作の「キー動作ID」が「78」~「86」のキー動作を動作情報データベース18から制御ルール生成部23で参照すると、それぞれの「キー動作ID」のフラグが、図32Aでは、0、1、3~5、8、12、13、15~17目のみ「1」であり、その他は「0」であるので、ロボットアーム5の動作のうち、位置姿勢に関してはx軸、y軸、φ軸、θ軸、ψ軸、力に関してはz軸成分のデータが有効ということが制御ルール生成部23でわかる。従って、x軸、y軸、θ軸、ψ軸が人4Aの加えた力で補正ができるように、インピーダンス制御モードとなり、z軸については高剛性位置制御モードとなる。
現在動作中の環境変化及び動作通知操作の際のロボットアーム5の移動方向の制御モードと検出部選択ルールデータベース29に基づいて、複数の環境情報の中から制御ルールを生成するための環境情報の種別を制御ルール生成部23で選択して決定する。具体的には、図10Aの「作業ID」が「4」の作業の環境変化及び動作通知操作の開始のタイミングでは、図35Cのようにz軸方向で環境変化及び動作通知操作を行っている。z軸は高剛性位置制御モードで補正しているので、図11Aより、環境情報の種別IDは「2」となり、図11Bより、「力」を制御ルール生成部23で選択する。したがって、力検出部53で検出した力を制御ルール生成部23で選択する。取得した力は、制御ルール生成部23によりデータベース入出力部28を介して環境情報データベース18及び動作情報データベース17に記憶する。この例では、図9Aに示すように、新しい「環境ID」として「32」を制御ルール生成部23で付与し、その「環境ID」の「力」に、取得した力の情報を制御ルール生成部23によりデータベース入出力部28を介して環境情報データベース18に記憶する。さらに、フラグは力のみであるので、0~5ビット目のみ「1」を、その他のビットに「0」を制御ルール生成部23によりデータベース入出力部28を介して環境情報データベース18に記憶する。
また、図32Bの動作情報データベース17に新規に「動作ID」を動作補正部20で付与し(この例では「24」)、さらに「キー動作ID」として「90」~「98」を動作補正部20で付与し、動作補正部20で補正した動作情報を、動作補正部20によりデータベース入出力部28を介して動作情報データベース17のそれぞれの「キー動作ID」に記憶する。時間について、動作補正部20からは、人4Aが作業を選択して開始指令を出した時点を0とした相対時間が入力されるため、一番最初のキー動作(この例では「90」)の時間を全ての動作のそれぞれの時間から減算した値を、動作補正部20によりデータベース入出力部28を介して動作情報データベース17に記憶する。フラグについては、補正前のフラグで「1」となっている動作情報の成分のうち、補正前と補正後の「動作ID」のそれぞれのキー動作の位置姿勢と、力の値とをそれぞれの成分毎に動作補正部20で比較し、その差がある閾値以上の成分のみ、図6のフラグのそれぞれの成分を動作補正部20で「1」とし、閾値未満の場合には動作補正部20で「0」とする。
具体的には、補正前の「動作ID」が「23」の動作のフラグは、0、1、3~5、8、12、13、15~17目が「1」であり、その他は「0」であるので、補正前の動作と補正後の動作の位置姿勢と、力の値とのうち、位置姿勢の成分x,y,φ,θ,ψと力のz軸成分を動作補正部20で比較する。「キー動作ID」が「77」のキー動作と「キー動作ID」が「86」のキー動作とでは、位置姿勢(x,y,φ,θ,ψ)の成分は同じで、力のz軸成分のみ異なり、差の閾値を0.1(N)とすると、力のz成分のみが閾値以上となる。従って、動作補正部20により、フラグは8ビット目が「1」で、その他は「0」とする。
補正パラメータフラグについては、補正前の動作(この例では「78」~「86」)の値を動作補正部20によりデータベース入出力部28を介して動作情報データベース17に記憶する。
次に、取得した環境情報と動作補正部20の動作補正操作で補正した動作から制御ルールデータベース19に新しい制御ルールを制御ルール生成部23で生成して記憶する。
具体的には、制御ルールデータベース16の「作業ID」が「4」の作業で動作中に動作を補正するため、制御ルール生成部23により、図10Bに示すように、「作業ID」が「4」の作業に1行追加し、動作補正により新しく追加した「動作ID」が「24」の動作を追加する。
次に、制御ルール生成部23で選択した環境情報の環境IDをデータベース入出力部28を介して制御ルールデータベース16に記憶する(この例では「環境ID」が「32」の環境情報)。
動作指令部(動作算出部2)27により、具体的には上記した補正により、図35Eのように仕様変更後に自動でロボットアーム5の動作を行うことができる。その仕様変更後の自動的に行う動作については、第3実施形態又は先の実施形態と同様であるので、説明を省略する。
以上により、人4Aが環境変化通知操作と動作補正操作が同じ場合は、1つの環境変化及び動作補正のみの操作により、操作の負荷を削減でき、さらに、制御ルール生成部23により新しい制御ルールを生成することで、機器71の仕様変更を考慮した動作を事前に用意しておかなくても、その場で人4Aが操作をして環境通知及び動作を補正するだけで、次に同じような環境になった場合に、制御ルールデータベース16の情報を基に(言い換えれば、環境情報取得部19で取得した環境情報を参照しながら、制御ルール生成部23により生成された制御ルールに基づいて)ロボットアーム5は自律的に動作することができるようになる。
(変形例)
なお、上記第1~第5実施形態では、作業を行うロボットアーム5を直接把持して操作をしたが、マスタースレーブ方式のように、実際に作業を行うロボットアーム5ではなく、容易に動かすことが可能な別の操作機器(マスター)を人4Aが操作することで、それに接続された実際のロボットアーム(スレーブ)を動かし、動作を補正する方法についても適応可能である。
上記様々な実施形態のうちの任意の実施形態を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。
Claims (15)
- ロボットアームの動作を制御する、ロボットアームの制御装置であって、
前記動作に対応する、前記ロボットアームの位置、姿勢、及び、速度の少なくとも1つ以上が時系列に動作情報として記憶された動作情報データベースから前記動作情報を取得する動作情報取得部と、
人が前記ロボットアームを操作して、前記ロボットアームの前記動作を補正する際に前記動作情報取得部で取得した前記動作情報のうちの少なくとも1つ以上の前記動作情報に対応する補正動作情報を取得する補正動作情報取得部と、
前記ロボットアームが作用する対象物に関する情報である環境情報を前記ロボットアームへの前記人の環境変化通知操作に応じて取得する環境情報取得部と、
前記動作情報取得部で取得した前記動作情報に基づいて前記ロボットアームを移動するよう位置制御モードで前記ロボットアームを制御する位置制御部と、
前記位置制御部の制御により前記ロボットアームが前記位置制御モードで移動している最中に前記補正動作情報取得部で取得したそれぞれの時間での前記補正動作情報に応じて前記動作情報を補正する動作補正部と、
前記ロボットアームの前記人の前記環境変化通知操作に応じて、前記環境情報取得部で取得する前記環境情報を決定するとともに、前記動作補正部で補正された前記動作情報と前記環境情報取得部で取得した前記環境情報とを対応付けることにより、前記ロボットアームが自動で動作するための制御ルールを生成する制御ルール生成部とを備えて、
前記環境情報取得部で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記動作を制御するロボットアームの制御装置。 - ロボットアームの動作を制御する、ロボットアームの制御装置であって、
前記動作に対応する、前記ロボットアームが対象物に加える力の時系列の動作情報として記憶された動作情報データベースから前記動作情報を取得する動作情報取得部と、
人が前記ロボットアームを操作して、前記ロボットアームの前記動作を補正する際に、前記動作情報取得部で取得した前記動作情報に関連しかつ前記ロボットアームが加える力に関する補正動作情報を取得する補正動作情報取得部と、
前記ロボットアームが作用する前記対象物に関する情報である環境情報を前記ロボットアームへの前記人の環境変化通知操作に応じて取得する環境情報取得部と、
前記動作情報取得部で取得した前記動作情報に設定された力で前記対象物に対して前記ロボットアームが力制御を行なうよう前記ロボットアームを力制御モードで制御する制御部と、
前記制御部により前記ロボットアームを前記力制御モードで制御している最中に前記補正動作情報取得部で取得したそれぞれの時間での前記補正動作情報に応じて前記動作情報を補正する動作補正部と、
前記ロボットアームの前記人の前記環境変化通知操作に応じて、前記環境情報取得部で取得する前記環境情報を決定するとともに、前記動作補正部で補正された前記動作情報と前記環境情報取得部で取得した前記環境情報とを対応付けることにより、前記ロボットアームが自動で動作するための制御ルールを生成する制御ルール生成部とを備えて、
前記環境情報取得部で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記動作を制御するロボットアームの制御装置。 - 前記環境情報取得部は、前記ロボットアームに加えられた前記人の力を検出する力検出部を備えて、
前記力検出部で検出された前記人の力とその検出時間とに応じて前記人が前記ロボットアームを操作したことを検出して、前記ロボットアームの前記動作を補正する際の前記ロボットアームが加える力に関する前記補正動作情報を前記補正動作情報取得部で取得する請求項1又は2に記載のロボットアームの制御装置。 - 前記環境情報取得部は、前記ロボットアーム及び前記ロボットアームの前記動作を行う周辺環境を撮像可能な複数の画像撮像装置を備え、
前記制御ルール生成部は、前記人の前記ロボットアームの操作時の前記ロボットアームの前記位置制御モードに応じて、前記環境情報取得部の前記複数の画像撮像装置で取得した複数の環境情報の中から、制御ルール生成の際の環境情報の種別を決定する請求項1に記載のロボットアームの制御装置。 - 前記環境情報取得部は、前記ロボットアームに加えられた前記人の力を検出する力検出部を備えて、
前記制御ルール生成部は、前記人の前記ロボットアームの操作時の前記ロボットアームの前記力制御モードに応じて、制御ルール生成の際に前記力検出部で取得した環境情報を使用する請求項2に記載のロボットアームの制御装置。 - 前記環境変化通知操作と、前記人が前記ロボットアームを操作して、前記ロボットアームの前記動作を補正する動作補正操作とが同じ操作である場合は、前記動作補正操作の代わりに前記環境変化通知操作を使用する請求項1又は2に記載のロボットアームの制御装置。
- 前記環境情報は、複数種類の検出方向から検出され取得された環境情報を有し、
前記制御ルール生成部は、前記ロボットアームの前記人の操作に応じて取得する前記環境情報の検出方向を決定する請求項6に記載のロボットアームの制御装置。 - 前記制御ルール生成部で生成された制御ルールのうちの複数の動作情報から、前記環境情報取得部で取得した前記環境情報を参照して1つの動作情報を算出する動作算出部をさらに備える請求項1又は2に記載のロボットアームの制御装置。
- 前記人が前記ロボットアームを操作して、前記ロボットアームの前記動作を補正して、前記動作情報取得部で取得した前記動作情報のうちの少なくとも1つ以上の前記動作情報に対応する補正動作情報を前記補正動作情報取得部で取得したのち、
前記環境情報取得部で取得した前記環境情報が、前記補正の操作時の前記環境情報と同じであるときに、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記動作を、前記補正動作情報取得部で取得した前記補正動作情報に基づき補正するように制御する請求項1又は2に記載のロボットアームの制御装置。 - 前記環境情報取得部は、前記ロボットアーム及び前記ロボットアームの前記動作を行う周辺環境を撮像可能な複数の画像撮像装置を備え、
前記ロボットアームの先端には、ネジを回転可能な作業用治具を着脱可能に把持可能なハンドを備え、前記作業用治具は前記対象物であり、
前記複数の画像撮像装置で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記ハンドに把持した前記作業用治具で前記ネジの締め付け又は取り外し作業において前記ロボットアームの前記動作を制御する、請求項1に記載のロボットアームの制御装置。 - 前記環境情報取得部は、前記ロボットアーム及び前記ロボットアームの前記動作を行う周辺環境を撮像可能な複数の画像撮像装置を備え、
前記ロボットアームの先端には、フレキシブル基板を着脱可能に把持可能なハンドを備え、前記フレキシブル基板は前記対象物であり、
前記複数の画像撮像装置で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記ハンドに把持した前記フレキシブル基板を機器に取り付ける作業において前記ロボットアームの前記動作を制御する、請求項2に記載のロボットアームの制御装置。 - ロボットアームの動作を制御する、ロボットアームの制御方法であって、
前記動作に対応する、前記ロボットアームの位置、姿勢、速度の少なくとも1つ以上が時系列に動作情報として記憶された動作情報データベースから前記動作情報を動作情報取得部で取得し、
人が前記ロボットアームを操作して、前記ロボットアームの前記動作を補正する際に前記動作情報取得部で取得した前記動作情報のうちの少なくとも1つ以上の前記動作情報に対応する補正動作情報を補正動作情報取得部で取得し、
前記ロボットアームが作用する対象物に関する情報である環境情報を前記ロボットアームへの前記人の環境変化通知操作に応じて環境情報取得部で取得し、
前記動作情報取得部で取得した前記動作情報に基づいて前記ロボットアームを移動するよう位置制御モードで前記ロボットアームを位置制御部で制御し、
前記位置制御部の制御により前記ロボットアームが前記位置制御モードで移動している最中に前記補正動作情報取得部で取得したそれぞれの時間での前記補正動作情報に応じて前記動作情報を動作補正部で補正し、
前記ロボットアームの前記人の前記環境変化通知操作に応じて、前記環境情報取得部で取得する前記環境情報を決定するとともに、前記動作補正部で補正された前記動作情報と前記環境情報取得部で取得した前記環境情報とを対応付けることにより、前記ロボットアームが自動で動作するための制御ルールを制御ルール生成部で生成し、
前記環境情報取得部で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記動作を制御するロボットアームの制御方法。 - 前記ロボットアームと、
前記ロボットアームを制御する請求項1又は2に記載の前記ロボットアームの制御装置とを備えるロボット。 - ロボットアームの動作を制御する、ロボットアームの制御プログラムであって、
前記動作に対応する、前記ロボットアームの位置、姿勢、速度の少なくとも1つ以上が時系列に動作情報として記憶された動作情報データベースから前記動作情報を動作情報取得部で取得するステップと、
人が前記ロボットアームを操作して、前記ロボットアームの前記動作を補正する際に前記動作情報取得部で取得した前記動作情報のうちの少なくとも1つ以上の前記動作情報に対応する補正動作情報を補正動作情報取得部取得するステップと、
前記ロボットアームが作用する対象物に関する情報である環境情報を前記ロボットアームへの前記人の環境変化通知操作に応じて環境情報取得部で取得するステップと、
前記動作情報取得部で取得した前記動作情報に基づいて前記ロボットアームを移動するよう位置制御モードで前記ロボットアームを位置制御部で制御するステップと、
前記位置制御部の制御により前記ロボットアームが前記位置制御モードで移動している最中に前記補正動作情報取得部で取得したそれぞれの時間での前記補正動作情報に応じて前記動作情報を動作補正部で補正するステップと、
前記ロボットアームの前記人の前記環境変化通知操作に応じて、前記環境情報取得部で取得する前記環境情報を決定するとともに、前記動作補正部で補正された前記動作情報と前記環境情報取得部で取得した前記環境情報とを対応付けることにより、前記ロボットアームが自動で動作するための制御ルールを制御ルール生成部で生成するステップと、
前記環境情報取得部で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記動作を制御するステップとを実行させるためのロボットアームの制御プログラム。 - ロボットアームの動作を制御する、ロボットアーム制御用集積電子回路であって、前記動作に対応する、前記ロボットアームの位置、姿勢、速度の少なくとも1つ以上が時系列に動作情報として記憶された動作情報データベースから前記動作情報を動作情報取得部で取得し、
人が前記ロボットアームを操作して、前記ロボットアームの前記動作を補正する際に前記動作情報取得部で取得した前記動作情報のうちの少なくとも1つ以上の前記動作情報に対応する補正動作情報を補正動作情報取得部で取得し、
前記ロボットアームが作用する対象物に関する情報である環境情報を前記ロボットアームへの前記人の環境変化通知操作に応じて環境情報取得部で取得し、
前記動作情報取得部で取得した前記動作情報に基づいて前記ロボットアームを移動するよう位置制御モードで前記ロボットアームを位置制御部で制御し、
前記位置制御部の制御により前記ロボットアームが前記位置制御モードで移動している最中に前記補正動作情報取得部で取得したそれぞれの時間での前記補正動作情報に応じて前記動作情報を動作補正部で補正し
前記ロボットアームの前記人の前記環境変化通知操作に応じて、前記環境情報取得部で取得する前記環境情報を決定するとともに、前記動作補正部で補正された前記動作情報と前記環境情報取得部で取得した前記環境情報とを対応付けることにより、前記ロボットアームが自動で動作するための制御ルールを制御ルール生成部で生成し、
前記環境情報取得部で取得した前記環境情報を参照しながら、前記制御ルール生成部により生成された前記制御ルールに基づいて、前記ロボットアームの前記動作を制御するロボットアーム制御用集積電子回路。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201080005921.7A CN102300679B (zh) | 2009-09-28 | 2010-09-21 | 机器人手臂的控制装置及控制方法、机器人及机器人手臂控制用集成电路 |
JP2010547779A JP4699572B2 (ja) | 2009-09-28 | 2010-09-21 | ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、及び、ロボットアーム制御用集積電子回路 |
US13/096,376 US8175750B2 (en) | 2009-09-28 | 2011-04-28 | Control apparatus and control method for robot arm, robot, control program for robot arm, and robot arm control-purpose integrated electronic circuit |
US13/416,660 US8290621B2 (en) | 2009-09-28 | 2012-03-09 | Control apparatus and control method for robot arm, robot, control program for robot arm, and robot arm control-purpose integrated electronic circuit |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009222378 | 2009-09-28 | ||
JP2009-222378 | 2009-09-28 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/096,376 Continuation US8175750B2 (en) | 2009-09-28 | 2011-04-28 | Control apparatus and control method for robot arm, robot, control program for robot arm, and robot arm control-purpose integrated electronic circuit |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2011036865A1 true WO2011036865A1 (ja) | 2011-03-31 |
Family
ID=43795633
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2010/005705 WO2011036865A1 (ja) | 2009-09-28 | 2010-09-21 | ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、及び、ロボットアーム制御用集積電子回路 |
Country Status (5)
Country | Link |
---|---|
US (2) | US8175750B2 (ja) |
EP (1) | EP2481531A2 (ja) |
JP (2) | JP4699572B2 (ja) |
CN (1) | CN102300679B (ja) |
WO (1) | WO2011036865A1 (ja) |
Families Citing this family (118)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4962551B2 (ja) * | 2009-10-20 | 2012-06-27 | 株式会社安川電機 | ロボットシステムおよびロボットシステムの制御方法 |
DE102010010718A1 (de) * | 2010-03-09 | 2011-09-15 | Kuka Laboratories Gmbh | Verfahren zur Montage von Bauteilen mittels eines Industrieroboters |
US8896162B1 (en) * | 2010-05-21 | 2014-11-25 | Finley Lee Ledbetter | Device for installing and/or removing components from electrical equipment |
US9906838B2 (en) | 2010-07-12 | 2018-02-27 | Time Warner Cable Enterprises Llc | Apparatus and methods for content delivery and message exchange across multiple content delivery networks |
US9015093B1 (en) | 2010-10-26 | 2015-04-21 | Michael Lamport Commons | Intelligent control with hierarchical stacked neural networks |
US8775341B1 (en) | 2010-10-26 | 2014-07-08 | Michael Lamport Commons | Intelligent control with hierarchical stacked neural networks |
US9119655B2 (en) | 2012-08-03 | 2015-09-01 | Stryker Corporation | Surgical manipulator capable of controlling a surgical instrument in multiple modes |
US9921712B2 (en) | 2010-12-29 | 2018-03-20 | Mako Surgical Corp. | System and method for providing substantially stable control of a surgical tool |
US9566710B2 (en) | 2011-06-02 | 2017-02-14 | Brain Corporation | Apparatus and methods for operating robotic devices using selective state space training |
US20130171304A1 (en) * | 2011-07-14 | 2013-07-04 | Robert E. Huntley | System and method for culinary interaction |
JP5583282B2 (ja) | 2011-08-24 | 2014-09-03 | パナソニック株式会社 | ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路 |
JP5966372B2 (ja) * | 2012-01-17 | 2016-08-10 | セイコーエプソン株式会社 | ロボット制御装置、ロボットシステム、ロボット制御方法及びロボット |
US9120220B2 (en) * | 2012-02-29 | 2015-09-01 | GM Global Technology Operations LLC | Control of a glove-based grasp assist device |
JP5977544B2 (ja) * | 2012-03-09 | 2016-08-24 | キヤノン株式会社 | 情報処理装置、情報処理方法 |
US8843236B2 (en) * | 2012-03-15 | 2014-09-23 | GM Global Technology Operations LLC | Method and system for training a robot using human-assisted task demonstration |
US10383765B2 (en) | 2012-04-24 | 2019-08-20 | Auris Health, Inc. | Apparatus and method for a global coordinate system for use in robotic surgery |
KR102530836B1 (ko) | 2012-08-03 | 2023-05-10 | 스트리커 코포레이션 | 로봇 수술을 위한 시스템 및 방법 |
US9226796B2 (en) | 2012-08-03 | 2016-01-05 | Stryker Corporation | Method for detecting a disturbance as an energy applicator of a surgical instrument traverses a cutting path |
US9186793B1 (en) | 2012-08-31 | 2015-11-17 | Brain Corporation | Apparatus and methods for controlling attention of a robot |
EP2749974A2 (en) * | 2012-12-28 | 2014-07-02 | Kabushiki Kaisha Yaskawa Denki | Robot teaching system, robot teaching assistant device, and robot teaching method |
US9031691B2 (en) * | 2013-03-04 | 2015-05-12 | Disney Enterprises, Inc. | Systemic derivation of simplified dynamics for humanoid robots |
US9199376B2 (en) * | 2013-03-14 | 2015-12-01 | GM Global Technology Operations LLC | Intuitive grasp control of a multi-axis robotic gripper |
US8996177B2 (en) * | 2013-03-15 | 2015-03-31 | Brain Corporation | Robotic training apparatus and methods |
US9764468B2 (en) | 2013-03-15 | 2017-09-19 | Brain Corporation | Adaptive predictor apparatus and methods |
US9242372B2 (en) | 2013-05-31 | 2016-01-26 | Brain Corporation | Adaptive robotic interface apparatus and methods |
US9314924B1 (en) | 2013-06-14 | 2016-04-19 | Brain Corporation | Predictive robotic controller apparatus and methods |
US9384443B2 (en) | 2013-06-14 | 2016-07-05 | Brain Corporation | Robotic training apparatus and methods |
US9792546B2 (en) | 2013-06-14 | 2017-10-17 | Brain Corporation | Hierarchical robotic controller apparatus and methods |
US9436909B2 (en) | 2013-06-19 | 2016-09-06 | Brain Corporation | Increased dynamic range artificial neuron network apparatus and methods |
US9694495B1 (en) * | 2013-06-24 | 2017-07-04 | Redwood Robotics Inc. | Virtual tools for programming a robot arm |
JP5850003B2 (ja) * | 2013-07-26 | 2016-02-03 | 株式会社安川電機 | ロボットシステム、ロボットシステムのロボット管理コンピュータ及びロボットシステムの管理方法 |
JP6410023B2 (ja) * | 2013-09-06 | 2018-10-24 | パナソニックIpマネジメント株式会社 | マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路 |
US9296101B2 (en) | 2013-09-27 | 2016-03-29 | Brain Corporation | Robotic control arbitration apparatus and methods |
US9579789B2 (en) | 2013-09-27 | 2017-02-28 | Brain Corporation | Apparatus and methods for training of robotic control arbitration |
US9597797B2 (en) | 2013-11-01 | 2017-03-21 | Brain Corporation | Apparatus and methods for haptic training of robots |
US9463571B2 (en) | 2013-11-01 | 2016-10-11 | Brian Corporation | Apparatus and methods for online training of robots |
US9248569B2 (en) | 2013-11-22 | 2016-02-02 | Brain Corporation | Discrepancy detection apparatus and methods for machine learning |
JP6486005B2 (ja) * | 2014-01-17 | 2019-03-20 | 蛇の目ミシン工業株式会社 | ロボット、ロボットの制御方法、及びロボットの制御プログラム |
US9358685B2 (en) | 2014-02-03 | 2016-06-07 | Brain Corporation | Apparatus and methods for control of robot actions based on corrective user inputs |
KR20160124770A (ko) * | 2014-02-20 | 2016-10-28 | 엠비엘 리미티드 | 로봇식 요리용 키친에서의 음식 준비를 위한 방법 및 시스템 |
US9987743B2 (en) | 2014-03-13 | 2018-06-05 | Brain Corporation | Trainable modular robotic apparatus and methods |
US9533413B2 (en) | 2014-03-13 | 2017-01-03 | Brain Corporation | Trainable modular robotic apparatus and methods |
US9364950B2 (en) | 2014-03-13 | 2016-06-14 | Brain Corporation | Trainable modular robotic methods |
JP6364836B2 (ja) * | 2014-03-14 | 2018-08-01 | セイコーエプソン株式会社 | ロボット、ロボットシステム、及び制御装置 |
CN106132346B (zh) * | 2014-03-28 | 2019-11-26 | 索尼公司 | 机器人手臂设备、机器人手臂设备的控制方法和程序 |
JP6106122B2 (ja) * | 2014-04-02 | 2017-03-29 | ファナック株式会社 | 溶接検査ロボットシステム |
US9630317B2 (en) | 2014-04-03 | 2017-04-25 | Brain Corporation | Learning apparatus and methods for control of robotic devices via spoofing |
US9613308B2 (en) * | 2014-04-03 | 2017-04-04 | Brain Corporation | Spoofing remote control apparatus and methods |
JP5893664B2 (ja) * | 2014-04-14 | 2016-03-23 | ファナック株式会社 | 作用された力に応じて移動されるロボットを制御するロボット制御装置 |
US9346167B2 (en) | 2014-04-29 | 2016-05-24 | Brain Corporation | Trainable convolutional network apparatus and methods for operating a robotic vehicle |
US9403273B2 (en) * | 2014-05-23 | 2016-08-02 | GM Global Technology Operations LLC | Rapid robotic imitation learning of force-torque tasks |
CN105313127A (zh) * | 2014-06-02 | 2016-02-10 | 精工爱普生株式会社 | 机器人、机器人的控制方法以及机器人的控制装置 |
DE102015204641B4 (de) | 2014-06-03 | 2021-03-25 | ArtiMinds Robotics GmbH | Verfahren und System zur Programmierung eines Roboters |
JP6660102B2 (ja) * | 2014-08-27 | 2020-03-04 | キヤノン株式会社 | ロボット教示装置およびその制御方法、ロボットシステム、プログラム |
US9821470B2 (en) | 2014-09-17 | 2017-11-21 | Brain Corporation | Apparatus and methods for context determination using real time sensor data |
US9860077B2 (en) | 2014-09-17 | 2018-01-02 | Brain Corporation | Home animation apparatus and methods |
US9849588B2 (en) | 2014-09-17 | 2017-12-26 | Brain Corporation | Apparatus and methods for remotely controlling robotic devices |
US9579790B2 (en) | 2014-09-17 | 2017-02-28 | Brain Corporation | Apparatus and methods for removal of learned behaviors in robots |
US9815206B2 (en) * | 2014-09-25 | 2017-11-14 | The Johns Hopkins University | Surgical system user interface using cooperatively-controlled robot |
US9630318B2 (en) | 2014-10-02 | 2017-04-25 | Brain Corporation | Feature detection apparatus and methods for training of robotic navigation |
US10499999B2 (en) | 2014-10-09 | 2019-12-10 | Auris Health, Inc. | Systems and methods for aligning an elongate member with an access site |
CN105700465A (zh) * | 2014-11-26 | 2016-06-22 | 中国科学院沈阳自动化研究所 | 基于EtherCAT总线的机器人柔顺控制系统和方法 |
US9592603B2 (en) * | 2014-12-01 | 2017-03-14 | Spin Master Ltd. | Reconfigurable robotic system |
US9426946B2 (en) | 2014-12-02 | 2016-08-30 | Brain Corporation | Computerized learning landscaping apparatus and methods |
US9804593B1 (en) * | 2014-12-12 | 2017-10-31 | X Development Llc | Methods and systems for teaching positions to components of devices |
US9592608B1 (en) * | 2014-12-15 | 2017-03-14 | X Development Llc | Methods and systems for providing feedback during teach mode |
US9717387B1 (en) | 2015-02-26 | 2017-08-01 | Brain Corporation | Apparatus and methods for programming and training of robotic household appliances |
DE102015205176B3 (de) * | 2015-03-23 | 2016-05-12 | Kuka Roboter Gmbh | Robustes intuitives Bedienverfahren durch Berührung eines Manipulators |
CN107438502B (zh) * | 2015-03-31 | 2019-05-31 | Abb瑞士股份有限公司 | 通过触摸来控制工业机器人的方法 |
US9840003B2 (en) | 2015-06-24 | 2017-12-12 | Brain Corporation | Apparatus and methods for safe navigation of robotic devices |
JP6754364B2 (ja) * | 2015-08-25 | 2020-09-09 | 川崎重工業株式会社 | ロボットシステム |
US9418421B1 (en) * | 2015-09-26 | 2016-08-16 | Nastaran Neishaboori | Automation of biopsy specimen handling |
JP6489991B2 (ja) * | 2015-10-02 | 2019-03-27 | ファナック株式会社 | ロボットを操作するハンドルを備えたロボット用操作装置 |
US10751874B2 (en) | 2015-10-14 | 2020-08-25 | Kawasaki Jukogyo Kabushiki Kaisha | Method of teaching robot and robotic arm control device |
JP6577326B2 (ja) * | 2015-10-16 | 2019-09-18 | ファナック株式会社 | 人と協働して物体を運搬するロボットを制御するロボット制御装置、ロボットシステム、およびその方法 |
US10926415B2 (en) * | 2015-11-16 | 2021-02-23 | Kawasaki Jukogyo Kabushiki Kaisha | Robot system and control method of robot system |
US9919422B1 (en) | 2016-01-06 | 2018-03-20 | X Development Llc | Methods and systems to provide mechanical feedback during movement of a robotic system |
DE112016006116T5 (de) * | 2016-01-29 | 2018-09-13 | Mitsubishi Electric Corporation | Roboterlehrvorrichtung und Verfahren zum Erzeugen eines Robotersteuerprogramms |
CN105739497A (zh) * | 2016-02-19 | 2016-07-06 | 上海钧工智能技术有限公司 | 一种智能机器人空气净化系统 |
GB2549072B (en) | 2016-03-24 | 2020-07-29 | Cmr Surgical Ltd | Robot control |
CN109219856A (zh) * | 2016-03-24 | 2019-01-15 | 宝利根 T·R 有限公司 | 用于人类及机器人协作的系统及方法 |
US10295972B2 (en) | 2016-04-29 | 2019-05-21 | Brain Corporation | Systems and methods to operate controllable devices with gestures and/or noises |
WO2017203937A1 (ja) * | 2016-05-26 | 2017-11-30 | 三菱電機株式会社 | ロボット制御装置 |
US10427305B2 (en) * | 2016-07-21 | 2019-10-01 | Autodesk, Inc. | Robotic camera control via motion capture |
GB2557179B (en) * | 2016-11-29 | 2020-01-01 | Rolls Royce Plc | Methods, apparatus, computer programs and non-transitory computer readable storage mediums for controlling a hyper redundant manipulator |
JP6469069B2 (ja) | 2016-12-13 | 2019-02-13 | ファナック株式会社 | 学習を容易化する機能を備えたロボット制御装置、及びロボット制御方法 |
EP3554414A1 (en) | 2016-12-16 | 2019-10-23 | MAKO Surgical Corp. | Techniques for modifying tool operation in a surgical robotic system based on comparing actual and commanded states of the tool relative to a surgical site |
CN106393145B (zh) * | 2016-12-20 | 2018-10-02 | 自兴人工智能(深圳)有限公司 | 一种基于机械臂控制的虚拟现实体验方法及装置 |
WO2019005699A1 (en) | 2017-06-28 | 2019-01-03 | Auris Health, Inc. | ELECTROMAGNETIC FIELD GENERATOR ALIGNMENT |
KR102578978B1 (ko) | 2017-06-28 | 2023-09-19 | 아우리스 헬스, 인코포레이티드 | 전자파 왜곡 검출 |
US10464209B2 (en) | 2017-10-05 | 2019-11-05 | Auris Health, Inc. | Robotic system with indication of boundary for robotic arm |
US10016900B1 (en) | 2017-10-10 | 2018-07-10 | Auris Health, Inc. | Surgical robotic arm admittance control |
US20190201139A1 (en) * | 2017-12-28 | 2019-07-04 | Ethicon Llc | Communication arrangements for robot-assisted surgical platforms |
JP6965785B2 (ja) * | 2018-02-15 | 2021-11-10 | オムロン株式会社 | 制御システム、スレーブ装置制御部、制御方法およびプログラム |
JP7135408B2 (ja) * | 2018-04-26 | 2022-09-13 | セイコーエプソン株式会社 | ロボット制御装置およびロボットシステム |
WO2019213164A1 (en) | 2018-04-30 | 2019-11-07 | Vanderbilt University | A control method for a robotic system |
WO2020097224A1 (en) | 2018-11-06 | 2020-05-14 | Bono Peter L | Robotic surgical system and method |
JP7172485B2 (ja) * | 2018-11-15 | 2022-11-16 | 株式会社Ihi | ロボット制御装置 |
WO2020121790A1 (ja) * | 2018-12-14 | 2020-06-18 | 株式会社フジキン | 作業管理装置、作業管理方法及び作業管理システム |
CN109945411B (zh) * | 2019-03-25 | 2020-05-26 | 珠海格力电器股份有限公司 | 一种控制器的控制方法、装置、存储介质及控制器 |
KR20220056220A (ko) | 2019-09-03 | 2022-05-04 | 아우리스 헬스, 인코포레이티드 | 전자기 왜곡 검출 및 보상 |
US12109591B2 (en) | 2019-09-09 | 2024-10-08 | GE Precision Healthcare LLC | Ultrasound transducer array architecture and method of manufacture |
WO2021056591A1 (zh) * | 2019-09-29 | 2021-04-01 | 西门子股份公司 | 用于控制多轴运动机器的方法、装置和存储介质 |
JP7362107B2 (ja) * | 2019-09-30 | 2023-10-17 | Johnan株式会社 | 制御装置、制御方法およびプログラム |
CN114787754A (zh) * | 2019-12-17 | 2022-07-22 | 索尼集团公司 | 信息处理装置和方法 |
JP6981709B1 (ja) * | 2020-02-17 | 2021-12-17 | コネクテッドロボティクス株式会社 | 制御プログラム及び調理システム |
JP6954683B2 (ja) * | 2020-02-17 | 2021-10-27 | コネクテッドロボティクス株式会社 | 食器洗浄システム、食器洗浄システム用制御装置及びプログラム |
JP2022060712A (ja) * | 2020-10-05 | 2022-04-15 | キオクシア株式会社 | 半導体製造装置 |
US20220108250A1 (en) * | 2020-10-05 | 2022-04-07 | Hyphen Technologies, Inc. | Modular system for food assembly |
WO2022074448A1 (en) * | 2020-10-06 | 2022-04-14 | Mark Oleynik | Robotic kitchen hub systems and methods for minimanipulation library adjustments and calibrations of multi-functional robotic platforms for commercial and residential environments with artificial intelligence and machine learning |
US20220134557A1 (en) * | 2020-10-30 | 2022-05-05 | Sintokogio, Ltd. | Control device, robot control system, program, and control method |
EP4008493A1 (en) * | 2020-12-07 | 2022-06-08 | Electrolux Appliances Aktiebolag | Kitchen assistance robot, robotic system, robot-assisted kitchen environment and method for operating the kitchen assistance robot |
US11945117B2 (en) | 2021-03-10 | 2024-04-02 | Samsung Electronics Co., Ltd. | Anticipating user and object poses through task-based extrapolation for robot-human collision avoidance |
US12103185B2 (en) * | 2021-03-10 | 2024-10-01 | Samsung Electronics Co., Ltd. | Parameterized waypoint generation on dynamically parented non-static objects for robotic autonomous tasks |
US11833691B2 (en) | 2021-03-30 | 2023-12-05 | Samsung Electronics Co., Ltd. | Hybrid robotic motion planning system using machine learning and parametric trajectories |
WO2022232186A1 (en) * | 2021-04-27 | 2022-11-03 | Nvidia Corporation | Policy layers for machine control |
CN114170561B (zh) * | 2022-02-14 | 2022-05-06 | 盈嘉互联(北京)科技有限公司 | 一种应用于智能建筑的机器视觉行为意图预测方法 |
WO2024062632A1 (ja) * | 2022-09-22 | 2024-03-28 | 日本電気株式会社 | 制御装置、制約条件選択装置、データ生成装置、制御方法、制約条件選択方法、データ生成方法及び記憶媒体 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59157715A (ja) | 1983-02-25 | 1984-09-07 | Hitachi Ltd | ロボツトの直接教示方法 |
JPH01146645A (ja) * | 1987-12-03 | 1989-06-08 | Fujitsu Ltd | ならい制御方式 |
JPH02250782A (ja) * | 1989-03-20 | 1990-10-08 | Fanuc Ltd | 産業用ロボットの手動介入方式 |
JPH06190753A (ja) * | 1992-12-25 | 1994-07-12 | Fujitsu Ltd | ロボット制御装置 |
JPH09325806A (ja) * | 1996-06-06 | 1997-12-16 | Nippon Telegr & Teleph Corp <Ntt> | ロボット教示再生方法及び装置 |
JPH10254527A (ja) * | 1997-03-10 | 1998-09-25 | Kawasaki Heavy Ind Ltd | ロボットの教示装置 |
JP2002120174A (ja) * | 2000-10-11 | 2002-04-23 | Sony Corp | オーサリング・システム及びオーサリング方法、並びに記憶媒体 |
JP2004049731A (ja) * | 2002-07-23 | 2004-02-19 | Yaskawa Electric Corp | 肢体駆動装置の教示方法 |
JP2004148466A (ja) * | 2002-10-31 | 2004-05-27 | Yaskawa Electric Corp | ロボット制御装置 |
JP2005148789A (ja) * | 2003-11-11 | 2005-06-09 | Fanuc Ltd | 音声入力によるロボット教示プログラム編集装置 |
WO2009107358A1 (ja) * | 2008-02-28 | 2009-09-03 | パナソニック株式会社 | ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、及びロボットアーム制御用集積電子回路 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3240251A1 (de) * | 1982-10-30 | 1984-05-03 | Deutsche Forschungs- und Versuchsanstalt für Luft- und Raumfahrt e.V., 5000 Köln | Verfahren zum programmieren von bewegungen und erforderlichenfalls von bearbeitungskraeften bzw. -momenten eines roboters oder manipulators und einrichtung zu dessen durchfuehrung |
US5495410A (en) * | 1994-08-12 | 1996-02-27 | Minnesota Mining And Manufacturing Company | Lead-through robot programming system |
JP3602687B2 (ja) | 1997-05-09 | 2004-12-15 | 三菱電機株式会社 | 自動機の作業支援装置 |
JP3820422B2 (ja) | 1998-12-08 | 2006-09-13 | 株式会社東芝 | マニピュレータの教示・再生装置及びその教示・再生方法 |
US6285920B1 (en) * | 2000-02-18 | 2001-09-04 | Fanuc Robotics North America | Method of robot teaching with motion constraints |
US6385508B1 (en) * | 2000-10-31 | 2002-05-07 | Fanuc Robotics North America, Inc. | Lead-through teach handle assembly and method of teaching a robot assembly |
JP2003305678A (ja) | 2002-04-11 | 2003-10-28 | Ricoh Co Ltd | ロボット及びロボットの制御方法 |
JP2006082185A (ja) | 2004-09-16 | 2006-03-30 | Yaskawa Electric Corp | ロボット誘導方法 |
JP4210270B2 (ja) * | 2005-06-07 | 2009-01-14 | ファナック株式会社 | ロボット制御装置及びロボット制御方法 |
JP2006344136A (ja) * | 2005-06-10 | 2006-12-21 | Fanuc Ltd | ロボット制御装置 |
JP2007190662A (ja) | 2006-01-23 | 2007-08-02 | Yaskawa Electric Corp | 産業用ロボットおよびたわみ補正方法 |
JP2009181526A (ja) | 2008-02-01 | 2009-08-13 | Panasonic Corp | ロボットシステム |
-
2010
- 2010-09-21 WO PCT/JP2010/005705 patent/WO2011036865A1/ja active Application Filing
- 2010-09-21 JP JP2010547779A patent/JP4699572B2/ja active Active
- 2010-09-21 CN CN201080005921.7A patent/CN102300679B/zh active Active
- 2010-09-21 EP EP11184960A patent/EP2481531A2/en not_active Withdrawn
- 2010-12-24 JP JP2010288106A patent/JP5740554B2/ja active Active
-
2011
- 2011-04-28 US US13/096,376 patent/US8175750B2/en active Active
-
2012
- 2012-03-09 US US13/416,660 patent/US8290621B2/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59157715A (ja) | 1983-02-25 | 1984-09-07 | Hitachi Ltd | ロボツトの直接教示方法 |
JPH01146645A (ja) * | 1987-12-03 | 1989-06-08 | Fujitsu Ltd | ならい制御方式 |
JPH02250782A (ja) * | 1989-03-20 | 1990-10-08 | Fanuc Ltd | 産業用ロボットの手動介入方式 |
JPH06190753A (ja) * | 1992-12-25 | 1994-07-12 | Fujitsu Ltd | ロボット制御装置 |
JPH09325806A (ja) * | 1996-06-06 | 1997-12-16 | Nippon Telegr & Teleph Corp <Ntt> | ロボット教示再生方法及び装置 |
JPH10254527A (ja) * | 1997-03-10 | 1998-09-25 | Kawasaki Heavy Ind Ltd | ロボットの教示装置 |
JP2002120174A (ja) * | 2000-10-11 | 2002-04-23 | Sony Corp | オーサリング・システム及びオーサリング方法、並びに記憶媒体 |
JP2004049731A (ja) * | 2002-07-23 | 2004-02-19 | Yaskawa Electric Corp | 肢体駆動装置の教示方法 |
JP2004148466A (ja) * | 2002-10-31 | 2004-05-27 | Yaskawa Electric Corp | ロボット制御装置 |
JP2005148789A (ja) * | 2003-11-11 | 2005-06-09 | Fanuc Ltd | 音声入力によるロボット教示プログラム編集装置 |
WO2009107358A1 (ja) * | 2008-02-28 | 2009-09-03 | パナソニック株式会社 | ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、及びロボットアーム制御用集積電子回路 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2011036865A1 (ja) | 2013-02-14 |
US20110208355A1 (en) | 2011-08-25 |
US8175750B2 (en) | 2012-05-08 |
JP4699572B2 (ja) | 2011-06-15 |
US8290621B2 (en) | 2012-10-16 |
CN102300679B (zh) | 2014-12-10 |
EP2481531A2 (en) | 2012-08-01 |
JP2011088273A (ja) | 2011-05-06 |
CN102300679A (zh) | 2011-12-28 |
US20120173021A1 (en) | 2012-07-05 |
JP5740554B2 (ja) | 2015-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4699572B2 (ja) | ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、及び、ロボットアーム制御用集積電子回路 | |
JP4531126B2 (ja) | ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、及びロボットアーム制御用集積電子回路 | |
JP4759660B2 (ja) | ロボットアーム制御用の装置、方法、プログラム及び集積電子回路、並びに、組立ロボット | |
JP4584354B2 (ja) | ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路 | |
JP4568795B2 (ja) | ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路 | |
WO2010016210A1 (ja) | 掃除機の制御装置及び制御方法、掃除機、掃除機の制御プログラム、及び、集積電子回路 | |
JP5165160B2 (ja) | ロボットアームの制御装置及び制御方法、ロボット、ロボットアーム制御プログラム、並びに、集積電子回路 | |
JP2016221653A (ja) | ロボット制御装置およびロボットシステム | |
WO2011021376A1 (ja) | ロボットアームの制御装置及び制御方法、家事ロボット、ロボットアームの制御プログラム、及び、ロボットアーム制御用集積電子回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 201080005921.7 Country of ref document: CN |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2010547779 Country of ref document: JP |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 10818544 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2010818544 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 10818544 Country of ref document: EP Kind code of ref document: A1 |