US20130310973A1 - Method of controlling seven-axis articulated robot, control program, and robot control device - Google Patents

Method of controlling seven-axis articulated robot, control program, and robot control device Download PDF

Info

Publication number
US20130310973A1
US20130310973A1 US13/977,272 US201113977272A US2013310973A1 US 20130310973 A1 US20130310973 A1 US 20130310973A1 US 201113977272 A US201113977272 A US 201113977272A US 2013310973 A1 US2013310973 A1 US 2013310973A1
Authority
US
United States
Prior art keywords
joint
robot
joints
rotational axes
angle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US13/977,272
Other versions
US9120223B2 (en
Inventor
Hidenori Tanaka
Takamasa Ogata
Tetsuya Kubota
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kawasaki Motors Ltd
Original Assignee
Kawasaki Jukogyo KK
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kawasaki Jukogyo KK filed Critical Kawasaki Jukogyo KK
Assigned to KAWASAKI JUKOGYO KABUSHIKI KAISHA reassignment KAWASAKI JUKOGYO KABUSHIKI KAISHA ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: OGATA, TAKAMASA, TANAKA, HIDENORI, KUBOTA, TETSUYA
Assigned to KAWASAKI JUKOGYO KABUSHIKI KAISHA reassignment KAWASAKI JUKOGYO KABUSHIKI KAISHA CORRECTIVE ASSIGNMENT, TO CORRECT NAME OF 1ST ASSIGNOR. ASSIGNMENT DOCUMENT PREVIOUSLY RECORDED ON AUGUST 1, 2013, REEL (031031/FRAME (0716). ASSIGNOR CONFIRMS ASSIGNMENT. Assignors: OGATA, TAKAMASA, TANAKA, HIDEKI, KUBOTA, TETSUYA
Publication of US20130310973A1 publication Critical patent/US20130310973A1/en
Assigned to KAWASAKI JUKOGYO KABUSHIKI KAISHA reassignment KAWASAKI JUKOGYO KABUSHIKI KAISHA CORRECTIVE ASSIGNMENT TO CORRECT 1ST ASSIGNOR'S EXECUTION DATE PREVIOUSLY RECORDED ON 031551, FRAME 0832. Assignors: TANAKA, HIDEKI, OGATA, TAKAMASA, KUBOTA, TETSUYA
Application granted granted Critical
Publication of US9120223B2 publication Critical patent/US9120223B2/en
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/06Programme-controlled manipulators characterised by multi-articulated arms
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/02Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type
    • B25J9/04Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type by rotating at least one arm, excluding the head movement itself, e.g. cylindrical coordinate type or polar coordinate type
    • B25J9/046Revolute coordinate type
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1643Programme controls characterised by the control loop redundant control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1607Calculation of inertia, jacobian matrixes and inverses
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39018Inverse calibration, find exact joint angles for given location in world space
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/394147-DOF
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40344Configuration index, control, limits of joint movement

Definitions

  • the present invention relates to a method of controlling a seven-axis articulated robot, a control program, and a robot control device.
  • the present invention particularly relates to a method of controlling a seven-axis articulated robot including a mechanism in which at least one of the rotational axes of three proximal end side joints of the robot does not intersect with the other rotational axes of the three proximal end side joints at one point, the method allowing the seven-axis articulated robot to operate smoothly in a manner similar to that of a human arm.
  • a seven-axis articulated robot is configured such that a six-axis articulated robot including a total of six rotational axes at respective joints JT 1 to JT 6 additionally includes a redundant rotational axis at a joint JT 7 .
  • inverse transformation coordinate transformation
  • the angle of the elbow of the robot needs to be a constant angle as a constraint condition in performing the inverse transformation.
  • FIG. 10 defines a “shoulder (S)”, an “elbow (E)”, and a “wrist (W)” of the seven-axis articulated robot.
  • the shoulder (S) indicates an intersection point where the rotational axes of the respective joints JT 1 , JT 2 , and JT 7 intersect with each other;
  • the wrist (W) indicates an intersection point where the rotational axes of respective joints JT 4 , JT 5 , and JT 6 intersect with each other;
  • the elbow (E) indicates the rotational axis of a joint JT 3 .
  • a plane SEW defined by the shoulder (S), elbow (E), and wrist (W), i.e., defined by these three points, can be rotated around a straight line SW with the position and orientation of the wrist kept constant.
  • an elbow angle ⁇ E is defined as a rotating joint angle ⁇ EHE′ of the “elbow (E)” around a vector connecting the shoulder (S) and the wrist (W). Inverse transformation is performed under a constraint condition that the elbow angle ⁇ E is kept constant.
  • Patent Literature 1 discloses in paragraph [ 0012 ] that a seven-axis articulated robot can be considered to be equivalent to a six-axis articulated robot by fixing a seventh joint (joint axis J 3 ) of the seven-axis articulated robot.
  • Patent Literature 1 also discloses in paragraph [ 0014 ] that a seven-axis articulated robot with no Y-direction offset between joint axes J 1 and J 2 is configured such that, in order to avoid interference with a six-axis articulated robot installed at a predetermined distance from the seven-axis articulated robot, an elbow (joint axis J 4 ) moves in a manner to draw a substantially arc trajectory while using an XY plane in which the joint axis J 2 is included, a shoulder (intersection point of the joint axes J 1 and J 2 ), and a wrist (joint axis J 6 ) as supporting points.
  • the seven-axis articulated robot including a mechanism in which the rotational axis of a joint JT 1 , the rotational axis of a joint JT 2 , and the rotational axis of a joint JT 7 do not intersect with each other at one point.
  • an offset is set between the joints JT 1 and JT 2 for the purpose of increasing the working range of the robot
  • the seven-axis articulated robot of FIG. 12 includes a mechanism in which the rotational axes of the respective joints JT 1 , JT 2 , and JT 7 do not intersect with each other at one point.
  • the shoulder (S) of the seven-axis articulated robot cannot be precisely defined. Even if the vicinity of the rotational axis of the joint JT 2 is assumed as a shoulder, there arises a problem of imprecision in an elbow angle which is necessary for inverse transformation processing. That is, in the case of a mechanism in which an offset is set, it is difficult to perform inverse transformation to realize motions in which the elbow angle is kept constant.
  • An object of the present invention is to suitably realize control of a seven-axis articulated robot including a mechanism in which at least one of the rotational axes of three proximal end side joints among seven joints of the robot does not intersect with the other rotational axes of the three proximal end side joints at one point, the control allowing the seven-axis articulated robot to operate smoothly in a manner similar to that of a human arm.
  • a seven-axis articulated robot control method is a method of controlling a seven-axis articulated robot including seven joints sequentially arranged from a proximal end of the robot to a distal end of the robot, the seven joints including rotational axes each causing a next joint to turn and rotational axes each causing a next joint to pivot, such that the rotational axes causing turning and the rotational axes causing pivoting are arranged alternately, the seven-axis articulated robot being configured such that at least one of rotational axes of three proximal end side joints of the robot does not intersect with other rotational axes of the three proximal end side joints at one point.
  • the method includes performing inverse transformation using, as a constraint condition, such a joint angle of a middle joint among the three joints as to cause an assumed elbow angle to be constant in a case where a rotational axis of the middle joint is assumed as a shoulder.
  • an assumed elbow angle can be defined in the case where the rotational axis of the middle joint (JT 2 ) among the three joints is assumed as a shoulder (the assumed shoulder will be described below).
  • the inventors of the present invention have found out the following feature (i.e., obtained the following finding) regarding the behavior of the seven-axis articulated robot; “the joint angle of the middle joint changes substantially in proportion to changes in the assumed elbow angle whatever the initial state at the start of operation of the robot is”.
  • the above control method may include: calculating a first maximum value and a first minimum value, which are possible values of the joint angle of the middle joint and which are values to be taken from an initial state at a start of operation of the robot, by performing inverse transformation while setting a joint angle of a distal end side joint among the three joints to 0° (a reference position) or 180° (a maximum displacement position from the reference position); and calculating, as an index indicating the assumed elbow angle, a ratio of the joint angle of the middle joint in the initial state within a range from the first maximum value to the first minimum value.
  • such a joint angle of the middle joint as to cause the calculated ratio to be constant may be used as the constraint condition.
  • a step of the constraint condition may include: calculating a second maximum value and a second minimum value which are possible values of a current joint angle of the middle joint when the robot is in operation, by performing inverse transformation while setting the joint angle of the distal end side joint to 0° (the reference position) or 180° (the maximum displacement position from the reference position); calculating a target value of the current joint angle of the middle joint when the robot is in operation, based on the calculated second maximum value, the calculated second minimum value, and the calculated ratio; and applying the calculated target value to the joint angle of the middle joint, the joint angle being used as the constraint condition when performing the inverse transformation.
  • the inventors of the present invention have found out the following feature regarding the behavior of the seven-axis articulated robot with the above-described configuration; “if the joint angle of the distal end side joint is 0° (the reference position), the assumed elbow angle is 0° and the joint angle of the middle joint is the first minimum value (or the first maximum value) whatever the initial state at the start of operation of the robot is; and if the joint angle of the distal end side joint is 180° (the maximum displacement position from the reference position), the assumed elbow angle is 180° and the joint angle of the middle joint is the first maximum value (or the first minimum value)”.
  • the inventors of the present invention have found that the assumed elbow angle changes from 0° to 180° in accordance with changes in the joint angle of the distal end side joint from 0° to 180°, and that the joint angle of the middle joint changes from the first minimum value to the first maximum value (or from the first maximum value to the first minimum value) substantially in proportion to the changes in the assumed elbow angle.
  • the ratio of the joint angle of the middle joint in the initial state within the range from the first maximum value to the first minimum value is calculated as an index indicating the assumed elbow angle, and such a joint angle of the middle joint as to cause the calculated ratio to be constant is used as a constraint condition. This makes it possible to readily realize control that allows the seven-axis articulated robot to operate smoothly in a manner similar to that of a human arm.
  • another aspect of the present invention is a control program of controlling a seven-axis articulated robot including seven joints sequentially arranged from a proximal end of the robot to a distal end of the robot, the seven joints including rotational axes each causing a next joint to turn and rotational axes each causing a next joint to pivot, such that the rotational axes causing turning and the rotational axes causing pivoting are arranged alternately, the seven-axis articulated robot being configured such that at least one of rotational axes of three proximal end side joints of the robot does not intersect with other rotational axes of the three proximal end side joints at one point.
  • the control program causes a computer to perform: calculating a maximum value and a minimum value, which are possible values of a joint angle of the middle joint and which are values to be taken from an initial state at a start of operation of the robot, by performing inverse transformation while setting a joint angle of a distal end side joint among the three joints to 0° (a reference position) or 180° (a maximum displacement position from the reference position); calculating, as an index indicating an assumed elbow angle in a case where a rotational axis of the middle joint is assumed as a shoulder, a ratio of the joint angle of the middle joint in the initial state within a range from the maximum value to the minimum value; and performing inverse transformation using, as a constraint condition, such a joint angle of the middle joint as to cause the calculated ratio to be constant.
  • yet another aspect of the present invention is a robot control device configured to control a seven-axis articulated robot including seven joints sequentially arranged from a proximal end of the robot to a distal end of the robot, the seven joints including rotational axes each causing a next joint to turn and rotational axes each causing a next joint to pivot, such that the rotational axes causing turning and the rotational axes causing pivoting are arranged alternately, the seven-axis articulated robot being configured such that at least one of rotational axes of three proximal end side joints of the robot does not intersect with other rotational axes of the three proximal end side joints at one point.
  • the robot control device includes: a maximum and minimum value calculator configured to calculate a maximum value and a minimum value, which are possible values of a joint angle of the middle joint and which are values to be taken from an initial state at a start of operation of the robot, by performing inverse transformation while setting a joint angle of a distal end side joint among the three joints to 0° (a reference position) or 180° (a maximum displacement position from the reference position); a ratio calculator configured to calculate, as an index indicating an assumed elbow angle in a case where a rotational axis of the middle joint is assumed as a shoulder, a ratio of the joint angle of the middle joint in the initial state within a range from the maximum value to the minimum value; and an inverse transformation unit configured to perform inverse transformation using, as a constraint condition, such a joint angle of the middle joint as to cause the calculated ratio to be constant.
  • the present invention makes it possible to suitably realize control of a seven-axis articulated robot including a mechanism in which rotational axes of three proximal end side joints among seven joints of the robot do not intersect with each other at one point, the control allowing the seven-axis articulated robot to operate smoothly in a manner similar to that of a human arm.
  • FIG. 1 shows the configuration of a robot system according to an embodiment of the present invention, the robot system including a seven-axis articulated robot and a robot control device.
  • FIG. 2 schematically shows a link structure of the seven-axis articulated robot of FIG. 1 .
  • FIG. 3 is a conceptual diagram illustrating inverse transformation of the seven-axis articulated robot shown in FIG. 1 .
  • FIG. 4 is a flowchart showing control steps performed at the start of operation of the robot according to the embodiment of the present invention.
  • FIG. 5 is a flowchart showing control steps performed when the robot is in operation according to the embodiment of the present invention.
  • FIG. 6 is a conceptual diagram illustrating simulation conditions for a present scheme.
  • FIG. 7A is a graph showing changes in an assumed elbow angle according to the present scheme.
  • FIG. 7B is a graph showing changes in an elbow angle according to a comparative method.
  • FIG. 7C is a graph showing, for reference, changes in the joint angle of a joint JT 7 according to the present scheme.
  • FIG. 8 is a schematic diagram illustrating the concept of the present invention.
  • FIG. 9 is a schematic diagram illustrating the concept of the present invention.
  • FIG. 10 schematically shows a link structure of a seven-axis articulated robot including a mechanism in which rotational axes of three proximal end side joints JT 1 , JT 2 , and JT 7 among seven joints of the robot intersect with each other at one point.
  • FIG. 11 illustrates an elbow angle defined in the seven-axis articulated robot shown in FIG. 10 .
  • FIG. 12 schematically shows a link structure of a seven-axis articulated robot including a mechanism in which rotational axes of three proximal end side joints JT 1 , JT 2 , and JT 7 among seven joints of the robot do not intersect with each other at one point.
  • FIG. 13 illustrates inverse transformation of a comparative method.
  • FIG. 8 is a schematic diagram illustrating the concept of the present invention. It should be noted that FIG. 8 shows a case where the joints JT 4 to JT 6 forming the “wrist (W)” are eliminated from the seven-axis articulated robot shown in FIG. 12 in which an offset is set.
  • Feature 1 the joint angle of the joint JT 2 changes substantially in proportion to changes in the assumed elbow angle whatever the state of the positional orientation of the wrist is.
  • Feature 2 if the joint angle of the joint JT 7 is 0° (i.e., if there is no variation from a reference position), the assumed elbow angle is 0° and the joint angle of the joint JT 2 is a minimum (or maximum) value J 21 whatever the state of the positional orientation of the wrist is. If the joint angle of the joint JT 7 is 180° (i.e., if a maximum variation from the reference position has occurred), the assumed elbow angle is 180° and the joint angle of the joint JT 2 is a maximum (or minimum) value J 22 .
  • the assumed elbow angle changes from 0° to 180° in accordance with changes in the joint angle of the joint JT 7 from 0° to 180°, and the joint angle of the joint JT 2 changes from J 21 to J 22 substantially in proportion to the changes in the elbow angle.
  • possible maximum and minimum values of the joint angle of the joint JT 2 which are values to be taken from an initial state at the start of operation of the robot, are calculated by performing inverse transformation while setting the joint angle of the joint JT 7 to 0° or 180°. Then, the calculated maximum value and minimum value are defined as 100% and 0%, respectively, and a JT 2 ratio a indicating the percentage of the joint angle of the joint JT 2 at the start of operation of the robot is calculated.
  • the JT 2 ratio a is an index corresponding to the elbow angle ⁇ E (see FIG. 11 ) in a case where there is no offset.
  • the inverse transformation is performed by using, as a constraint condition, such a joint angle of the joint JT 2 as to cause the calculated JT 2 ratio a to be constant.
  • FIG. 1 shows the configuration of a robot system according to an embodiment of the present invention, the robot system including a seven-axis articulated robot and a robot control device.
  • a seven-axis articulated robot 100 includes six joints JT 1 to JT 6 sequentially arranged from the proximal end of the robot to the wrist.
  • the seven-axis articulated robot 100 is configured such that a six-axis articulated robot, whose six joints JT 1 to JT 6 have respective rotational axes A 1 to A 6 , includes a joint JT 7 adding a redundant axis between the joint JT 2 and the joint JT 3 .
  • the seven joints JT 1 to JT 7 include rotational axes each causing a next joint to turn and rotational axes each causing a next joint to pivot, such that the rotational axes causing turning and the rotational axes causing pivoting are arranged alternately.
  • reference signs JT 1 to JT 7 and A 1 to A 7
  • the reference signs assigned to the seven joints and seven rotational axes may be any reference signs so long as the signs allow the seven joints and seven rotational axes to be distinguished from each other.
  • the seven-axis articulated robot 100 includes a mechanism in which at least one of the rotational axes of the respective joints JT 1 , JT 2 , and JT 7 does not intersect with the other rotational axes of the three joints at one point.
  • FIG. 1 shows a mechanism in which: an offset is set between the joints JT 1 and JT 2 for the purpose of increasing the working range of the robot; the rotational axes of the respective joints JT 2 and JT 7 intersect with each other at one point; and the rotational axis of the joint JT 1 does not intersect with the rotational axes of the respective joints JT 2 and JT 7 at one point.
  • an XYZ orthogonal coordinate system whose origin is the “assumed shoulder (S)” is referred to as a “reference coordinate system”
  • an XYZ orthogonal coordinate system whose origin is the “wrist (W)” is referred to as a “wrist coordinate system”
  • a displacement of the origin of the wrist coordinate system relative to the origin of the reference coordinate system is referred to as a “wrist position”
  • an angular displacement of the wrist coordinate system relative to the reference coordinate system is referred to as a “wrist orientation”
  • a portion that mainly affects the wrist orientation is referred to as the “wrist”,
  • a turn base 3 , arm members (links) 4 , 5 , 6 , 7 , 8 , and an attachment 9 are installed consecutively on a base 2 in said order.
  • a tool member 11 suitably selected according to various types of work to be performed is detachably attached to a flange face that forms the distal end of the attachment 9 .
  • the consecutively installed members 2 to 9 from the base 2 to the attachment 9 are connected to each other such that they are rotatable relative to each other.
  • the arm members 7 and 8 and the attachment 9 form a human wrist-like structure (hereinafter, referred to as a wrist device) configured to cause the tool member 11 attached to the attachment 9 to perform fine motions.
  • the rotational axes A 1 , A 2 , A 7 , and A 3 are used as rotational axes for causing the tool member 11 to turn horizontally, swing, etc., together with the wrist device.
  • the rotational axes A 1 , A 2 , A 7 , and A 3 serve as main axes of the seven-axis articulated robot 100 .
  • the rotational axes A 4 to A 6 are set for the wrist device, and serve as wrist axes of a so-called RBR (Roll-Bend-Roll) type.
  • RBR Roll-Bend-Roll
  • the wrist axes of the wrist device are not limited to the RBR type, but may be a so-called BBR (Bend-Bend-Roll) type or a 3R (Roll-Roll-Roll) type.
  • Servomotors M 1 to M 7 and position detectors E 1 to E 7 are provided at the joints JT 1 to JT 7 .
  • Each of the position detectors E 1 to E 7 is configured as a rotary encoder, for example.
  • the servomotors M 1 to M 7 can be driven independently of each other.
  • the position detectors E 1 to E 7 detect rotational positions of the respective servomotors M 1 to M 7 around the rotational axes A 1 to A 7 .
  • FIG. 2 schematically shows a link structure of the seven-axis articulated robot 100 of FIG. 1 .
  • a joint coordinate system (orthogonal coordinate system formed by an X 2 axis, a Y 2 axis, and a Z 2 axis) of the joint JT 2 is set.
  • a distance in the vertical direction from the origin of the joint coordinate system of the joint JT 2 is indicated as a link length L 0 ; and a distance in the horizontal direction (to the left in the drawing of FIG. 2 ) between the origin of the joint coordinate system of the joint JT 1 and the origin of the joint coordinate system of the joint JT 2 is indicated as a link length L 1 .
  • a joint coordinate system (orthogonal coordinate system formed by an X 3 axis, a Y 3 axis, and a Z 3 axis) of the joint JT 3 is set.
  • a distance in the vertical direction between the origin of the joint coordinate system of the joint JT 2 and the origin of the joint coordinate system of the joint JT 3 is indicated as a link length L 2 .
  • a distance in the vertical direction between the origin of the joint coordinate system of the joint JT 3 and the origin of the joint coordinate system of the joint JT 4 is indicated as a link length L 3
  • a distance in the horizontal direction between the origin of the joint coordinate system of the joint JT 3 and the origin of the joint coordinate system of the joint JT 4 is indicated as a link length L 4 .
  • an orthogonal coordinate system formed by an X 6 axis, a Y 6 axis, and a Z 6 axis is set as a joint coordinate system of the joint JT 6 .
  • the origin of the orthogonal coordinate system formed by the X 6 axis, the Y 6 axis, and the Z 6 axis is a point where the rotational axes A 4 to A 6 intersect with each other.
  • a distance in the vertical direction between the wrist and the origin of the joint coordinate system of the joint JT 5 is indicated as a link length L 5 .
  • the rotational axis A 1 which is the nearest rotational axis to the base 2 , is oriented in the vertical direction (direction extending from the base 2 to the joint JT 1 ); the rotational axis A 2 is oriented in the horizontal direction (direction parallel to the floor surface; the rotational axis A 7 is oriented in a direction orthogonal to the rotational axis A 2 , the direction being the extending direction of the arm member 4 ; the rotational axis A 3 is oriented in a direction orthogonal to the rotational axis A 7 , the direction being the horizontal direction; the rotational axis A 4 is oriented in a direction orthogonal to the rotational axis A 3 , the direction being the extending direction of the arm member 6 ; the rotational axis A 5 is oriented in a direction orthogonal to the rotational axis A 4 , the direction being the horizontal direction; and the rotational axis A 6 is oriented
  • a robot control device 200 is disposed near the base 2 of the articulated robot 100 . It should be noted that the robot control device 200 may be either disposed at a remote distance from the articulated robot 100 or physically connected to the articulated robot 100 in a detachable manner.
  • the robot control device 200 includes servo amplifiers 210 .
  • the servo amplifiers 210 perform servo control of the respective servomotors M 1 to M 6 provided at the joints JT 1 to JT 6 of the articulated robot 100 , the servo control causing the tool member 11 attached to the attachment 9 to move along a desired path to be in a desired positional orientation.
  • Each servo amplifier 210 includes a drive unit 230 and a controller 240 . It should be noted that the controller 240 may be provided outside of the servo amplifier 210 . In other words, the servo amplifiers 210 may only include respective drive units 230 .
  • the drive units 230 are power converters configured to drive the respective servomotors M 1 to M 6 .
  • Each drive unit 230 includes a rectifier circuit and an inverter circuit, for example.
  • the multiple servo amplifiers 210 are provided such that an individual servo loop is formed for each of the servomotors M 1 to M 6
  • an alternative configuration may be adopted, in which a single servo amplifier 210 drives the servomotors M 1 to M 6 in an integrated manner. In this case, only the drive unit 230 is provided for each of the servomotors M 1 to M 6 .
  • the controller 240 manages control of the entire robot control device 200 including the servo amplifier 210 .
  • the controller 240 includes a microcontroller, CPU, MPU, PLC, DSP, ASIC, or FPGA, for example. It should be noted that the controller 240 may be configured as multiple controllers performing distributed control in cooperation with each other. For example, a system may be configured, such that a CPU performs interface processing with a superordinate controller and a DSP performs elementary operations (position loop operation, speed loop operation, and current loop operation) of the servo amplifier 210 .
  • the robot control device 200 is connectable to, for example, a teach pendant.
  • An operator uses the teach pendant to perform a teaching operation.
  • the controller 240 calculates a target position where the tool member 11 is to be positioned, based on a teaching operation and an operation program created by, for example, an offline tool. Further, the controller 240 performs inverse transformation of coordinate data of the target position, thereby calculating joint angles ⁇ 1 to ⁇ 7 necessary for moving the tool member 11 to the target position.
  • the controller 240 calculates command values specifying operating amounts of the respective servomotors provided at the joints JT 1 to JT 7 , and supplies the command values to the respective servomotors. As a result, the tool member 11 is moved to the target position.
  • the wrist axes (A 4 to A 6 ) which serve to determine the orientation of the wrist are temporarily ignored. Then, one of the remaining four rotational axes A 1 , A 2 , A 7 , and A 3 which also serve to determine the position of the wrist (e.g., the rotational axis A 7 ) is set as a redundant axis, and the other three rotational axes (e.g., rotational axes A 1 to A 3 ) are set as main axes. Joint angles of the respective joints including these main axes are used as unknown parameters.
  • a linear distance between the origin O ( 0 , 0 , 0 ) of the reference coordinate system and a position P of the wrist of the seven-axis articulated robot 100 is indicated as Rh
  • a distance of the position P of the wrist in the Z-axis direction in the reference coordinate system i.e., a distance from the proximal end to the wrist in the extending direction of the nearest rotational axis to the proximal end
  • Zh a distance of the position P of the wrist in the Z-axis direction in the reference coordinate system
  • Rh 2 Xp 2 +Yp 2 +Zp 2 (1)
  • the joint angle ⁇ 3 can be obtained by solving the above Equation (3), which is a biquadratic equation. Based on the obtained joint angle ⁇ 3 , the joint angle ⁇ 1 and the joint angle ⁇ 2 are uniquely obtained.
  • FIG. 4 is a flowchart showing control steps performed at the start of operation of the robot according to the embodiment of the present invention.
  • the robot control device 200 has recognized an initial wrist positional orientation P_ini in an initial state at the start of operation of the robot and initial axial values JT 1 _ini, JT 2 _ini, . . . , JT 7 _ini, which are joint angles in the initial state at the start of operation of the robot (step S 401 ). It should be noted that the initial joint angle JT 2 _ini of the joint JT 2 is referred to as an initial value J 20 .
  • the robot control device 200 performs inverse transformation for the initial wrist positional orientation P_ini under a constraint condition that the joint angle of the joint JT 7 is 0°, thereby obtaining joint angles JT 1 _ini — 0, JT 2 _ini — 0, JT 7 _ini — 0 (step S 402 ). It should be noted that, among the obtained joint angles, the joint angle JT 2 _ini — 0 of the joint JT 2 is referred to as a minimum value J 21 (first minimum value).
  • the robot control device 200 performs inverse transformation for the initial wrist positional orientation P_ini under a constraint condition that the joint angle of the joint JT 7 is 180°, thereby obtaining joint angles JT 1 _ini — 180, JT 2 _ini — 180, . . . , JT 7 _ini — 180 (step S 403 ). It should be noted that, among the obtained joint angles, the joint angle JT 2 _ini — 180 of the joint JT 2 is referred to as a maximum value J 22 (first maximum value).
  • the robot control device 200 calculates a JT 2 ratio a with an equation shown below.
  • the assumed elbow angle can be kept substantially constant by keeping the JT 2 ratio ⁇ substantially constant.
  • FIG. 5 is a flowchart showing control steps performed when the robot is in operation according to the embodiment of the present invention.
  • a current wrist positional orientation P_n which is the current wrist positional orientation when the robot is in operation (step S 501 ).
  • the robot control device 200 performs inverse transformation for the current wrist positional orientation P_n under a constraint condition that the joint angle of the joint JT 7 is 0°, thereby obtaining joint angles JT 1 _n — 0, JT 2 _n — 0, JT 7 _n — 0 (step S 502 ). It should be noted that, among the obtained joint angles, the joint angle JT 2 _n — 0 of the joint JT 2 is referred to as a minimum value J 21 ′ (second minimum value).
  • the robot control device 200 performs inverse transformation for the current wrist positional orientation P_n under a constraint condition that the joint angle of the joint JT 7 is 180°, thereby obtaining joint angles JT 1 _n — 180, JT 2 _n — 180, . . . , JT 7 _n — 180 (step S 503 ). It should be noted that, among the obtained joint angles, the joint angle JT 2 _n_ 180 of the joint JT 2 is referred to as a maximum value J 22 ′ (second maximum value).
  • the robot control device 200 calculates a target value J 20 ′ of the joint angle of the joint JT 2 with an equation shown below (step S 504 ).
  • the robot control device 200 performs inverse transformation under a constraint condition that the target value J 20 ′ obtained in step S 504 is the joint angle of the joint JT 2 , thereby calculating axial values (i.e., joint angles) of the remaining joints JT 1 , JT 3 , JT 4 , JT 5 , JT 6 , and JT 7 (step S 505 ).
  • FIG. 6 is a conceptual diagram illustrating simulation conditions for the control method of keeping the JT 2 ratio a substantially constant according to the embodiment of the present invention (hereinafter, the control method according to the embodiment of the present invention is referred to as the present scheme).
  • the respective link lengths of the seven-axis articulated robot 100 are set as follows: the link length L 0 is 400 mm; the link length L 1 is 100 mm; the link length L 2 is 500 mm; the link length L 3 is 600 mm; and the link length L 4 is 40 mm.
  • the simulation conditions in the present scheme are such that when the seven-axis articulated robot 100 is in its initial state, the joint angle of the joint JT 1 is 0°; the joint angle of the joint JT 2 is 40°; the joint angle of the joint JT 3 is ⁇ 100°; and the joint angle of the joint JT 7 is ⁇ 45°, and such that the wrist of the seven-axis articulated robot 100 in the initial state is moved by 2000 mm in the Y-axis negative direction in a reference coordinate system shown in FIG. 6 .
  • FIGS. 7A to 7C are graphs, in which simulation results of the present scheme carried out under the simulation conditions shown in FIG. 6 are compared to simulation results obtained through a comparative method.
  • a control method in which the joint angle of the joint JT 7 is fixed (hereinafter, simply referred to as the comparative method) was carried out under the same simulation conditions.
  • FIG. 7A is a graph showing changes in the assumed elbow angle according to the present scheme
  • FIG. 7B is a graph showing changes in the elbow angle according to the comparative method
  • FIG. 7C is a graph showing, for reference, changes in the joint angle of the joint JT 7 according to the present scheme.
  • the seven-axis articulated robot 100 may include more than seven axes. Examples of such cases include: a case where the entire robot is configured to run and includes a rotational axis of a motor for the running; and a case where there is a rotational axis of an unused joint between the joint JT 7 and the joint JT 3 , or between the joint JT 3 and the fourth joint, for example. That is, the seven-axis articulated robot 100 may substantially include seven axes.
  • the JT 2 ratio a may alternatively be an index indicating a degree of closeness of the initial value J 20 to the maximum value J 22 as shown in an equation below.
  • the offset set between the joint JT 1 and the joint JT 2 is not limited to an L-shaped offset bent at a right angle as shown in FIG. 2 .
  • the offset may be in the form of a straight line inclined diagonally between the joint JT 1 and the joint JT 2 .
  • an offset may be set between the joints JT 2 and JT 7 , or an offset may be set between the joints JT 1 and JT 2 as well as between the joints JT 2 and JT 7 . That is, the seven-axis articulated robot 100 is merely required to include a mechanism in which at least one of the rotational axes of the respective joints JT 1 , JT 2 , and JT 7 does not intersect with the other rotational axes of the three joints at one point. Examples of such a mechanism include: a mechanism in which, as shown in FIG.
  • the present invention is useful to realize control of a seven-axis articulated robot including a mechanism in which rotational axes of three proximal end side joints among seven joints of the robot do not intersect with each other at one point, the control allowing the seven-axis articulated robot to operate smoothly in a manner similar to that of a human arm.

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • General Physics & Mathematics (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)
  • Mathematical Physics (AREA)

Abstract

Provided is a method of controlling a seven-axis articulated robot including seven joints sequentially arranged from a proximal end of the robot to a distal end of the robot, the seven joints including rotational axes each causing a next joint to turn and rotational axes each causing a next joint to pivot, such that the rotational axes causing turning and the rotational axes causing pivoting are arranged alternately, the seven-axis articulated robot being configured such that rotational axes of three proximal end side joints of the robot do not intersect with each other at one point. The method includes performing inverse transformation using, as a constraint condition, such a joint angle of a middle joint among the three joints as to cause an assumed elbow angle to be constant in a case where a rotational axis of the middle joint is assumed as a shoulder.

Description

    TECHNICAL FIELD
  • The present invention relates to a method of controlling a seven-axis articulated robot, a control program, and a robot control device. The present invention particularly relates to a method of controlling a seven-axis articulated robot including a mechanism in which at least one of the rotational axes of three proximal end side joints of the robot does not intersect with the other rotational axes of the three proximal end side joints at one point, the method allowing the seven-axis articulated robot to operate smoothly in a manner similar to that of a human arm.
  • BACKGROUND ART
  • In recent years, industrial robot control technology has advanced with advancement in computer technology. Accordingly, industrial robots are required to be able to operate in a more complicated and sophisticated manner, and required to be faster and more precise. For example, in the case of conventional six-axis articulated robots widely used as industrial robots, although conventional six-axis articulated robots are sufficiently capable of moving to a specified position, it is difficult for them to perform complex tasks while efficiently avoiding various obstacles existing in their moving space. Therefore, in recent years, development of seven-axis articulated robots has been actively conducted. A seven-axis articulated robot is configured such that a six-axis articulated robot including a total of six rotational axes at respective joints JT1 to JT6 additionally includes a redundant rotational axis at a joint JT7.
  • In a method of controlling a seven-axis articulated robot, similar to a conventional method of controlling a six-axis articulated robot, inverse transformation (coordinate transformation) with which to obtain each joint angle (joint coordinates) from a positional orientation of the wrist (wrist coordinates) of the robot is performed. In order to realize smooth motion similar to motion of a human arm, the angle of the elbow of the robot needs to be a constant angle as a constraint condition in performing the inverse transformation.
  • With reference to FIG. 10, a description is given by taking as an example a seven-axis articulated robot including a mechanism in which the rotational axis of a joint JT1, the rotational axis of a joint JT2, and the rotational axis of a joint JT7 intersect with each other at one point.
  • FIG. 10 defines a “shoulder (S)”, an “elbow (E)”, and a “wrist (W)” of the seven-axis articulated robot. The shoulder (S) indicates an intersection point where the rotational axes of the respective joints JT1, JT2, and JT7 intersect with each other; the wrist (W) indicates an intersection point where the rotational axes of respective joints JT4, JT5, and JT6 intersect with each other; and the elbow (E) indicates the rotational axis of a joint JT3. As shown in FIG. 11, a plane SEW defined by the shoulder (S), elbow (E), and wrist (W), i.e., defined by these three points, can be rotated around a straight line SW with the position and orientation of the wrist kept constant. Generally speaking, an elbow angle θE is defined as a rotating joint angle ∠EHE′ of the “elbow (E)” around a vector connecting the shoulder (S) and the wrist (W). Inverse transformation is performed under a constraint condition that the elbow angle θE is kept constant.
  • For example, Patent Literature 1 discloses in paragraph [0012] that a seven-axis articulated robot can be considered to be equivalent to a six-axis articulated robot by fixing a seventh joint (joint axis J3) of the seven-axis articulated robot. Patent Literature 1 also discloses in paragraph [0014] that a seven-axis articulated robot with no Y-direction offset between joint axes J1 and J2 is configured such that, in order to avoid interference with a six-axis articulated robot installed at a predetermined distance from the seven-axis articulated robot, an elbow (joint axis J4) moves in a manner to draw a substantially arc trajectory while using an XY plane in which the joint axis J2 is included, a shoulder (intersection point of the joint axes J1 and J2), and a wrist (joint axis J6) as supporting points.
  • CITATION LIST Patent Literature
  • PTL 1: Japanese Laid-Open Patent Application Publication No. 2009-125892
  • SUMMARY OF INVENTION Technical Problem
  • Next, a description is given by taking a seven-axis articulated robot shown in FIG. 12 as an example, the seven-axis articulated robot including a mechanism in which the rotational axis of a joint JT1, the rotational axis of a joint JT2, and the rotational axis of a joint JT7 do not intersect with each other at one point.
  • In the seven-axis articulated robot of FIG. 12, an offset is set between the joints JT1 and JT2 for the purpose of increasing the working range of the robot, and the seven-axis articulated robot of FIG. 12 includes a mechanism in which the rotational axes of the respective joints JT1, JT2, and JT7 do not intersect with each other at one point. In the case of such a mechanism in which an offset is set, the shoulder (S) of the seven-axis articulated robot cannot be precisely defined. Even if the vicinity of the rotational axis of the joint JT2 is assumed as a shoulder, there arises a problem of imprecision in an elbow angle which is necessary for inverse transformation processing. That is, in the case of a mechanism in which an offset is set, it is difficult to perform inverse transformation to realize motions in which the elbow angle is kept constant.
  • In this respect, as shown in FIG. 13, there is one conceivable method in which inverse transformation is performed under a constraint condition that the current joint angle of a joint JT7 additionally included as a redundant axis (JT7 current value) is fixed. In this method, however, the joint angle of the joint JT7 additionally included to obtain redundancy is fixed while the robot is in operation. Thus, the degree of freedom is wastefully reduced for one joint.
  • The present invention has been made to solve the above-described problems. An object of the present invention is to suitably realize control of a seven-axis articulated robot including a mechanism in which at least one of the rotational axes of three proximal end side joints among seven joints of the robot does not intersect with the other rotational axes of the three proximal end side joints at one point, the control allowing the seven-axis articulated robot to operate smoothly in a manner similar to that of a human arm.
  • Solution to Problem
  • In order to solve the above problems, a seven-axis articulated robot control method according to the present invention is a method of controlling a seven-axis articulated robot including seven joints sequentially arranged from a proximal end of the robot to a distal end of the robot, the seven joints including rotational axes each causing a next joint to turn and rotational axes each causing a next joint to pivot, such that the rotational axes causing turning and the rotational axes causing pivoting are arranged alternately, the seven-axis articulated robot being configured such that at least one of rotational axes of three proximal end side joints of the robot does not intersect with other rotational axes of the three proximal end side joints at one point. The method includes performing inverse transformation using, as a constraint condition, such a joint angle of a middle joint among the three joints as to cause an assumed elbow angle to be constant in a case where a rotational axis of the middle joint is assumed as a shoulder.
  • Even in the seven-axis articulated robot with the above-described configuration, an assumed elbow angle can be defined in the case where the rotational axis of the middle joint (JT2) among the three joints is assumed as a shoulder (the assumed shoulder will be described below). The inventors of the present invention have found out the following feature (i.e., obtained the following finding) regarding the behavior of the seven-axis articulated robot; “the joint angle of the middle joint changes substantially in proportion to changes in the assumed elbow angle whatever the initial state at the start of operation of the robot is”. In view of this, without fixing the joint angle of a distal end side joint (i.e., JT7 mentioned below) among the three joints, inverse transformation is performed by using, as a constraint condition, such a joint angle of the middle joint as to cause the assumed elbow angle to be constant. This makes it possible to suitably realize control of the seven-axis articulated robot with the above-described configuration, the control allowing the seven-axis articulated robot to operate smoothly in a manner similar to that of a human arm.
  • The above control method may include: calculating a first maximum value and a first minimum value, which are possible values of the joint angle of the middle joint and which are values to be taken from an initial state at a start of operation of the robot, by performing inverse transformation while setting a joint angle of a distal end side joint among the three joints to 0° (a reference position) or 180° (a maximum displacement position from the reference position); and calculating, as an index indicating the assumed elbow angle, a ratio of the joint angle of the middle joint in the initial state within a range from the first maximum value to the first minimum value. In the above control method, such a joint angle of the middle joint as to cause the calculated ratio to be constant may be used as the constraint condition.
  • In the above control method, a step of the constraint condition may include: calculating a second maximum value and a second minimum value which are possible values of a current joint angle of the middle joint when the robot is in operation, by performing inverse transformation while setting the joint angle of the distal end side joint to 0° (the reference position) or 180° (the maximum displacement position from the reference position); calculating a target value of the current joint angle of the middle joint when the robot is in operation, based on the calculated second maximum value, the calculated second minimum value, and the calculated ratio; and applying the calculated target value to the joint angle of the middle joint, the joint angle being used as the constraint condition when performing the inverse transformation.
  • In addition, the inventors of the present invention have found out the following feature regarding the behavior of the seven-axis articulated robot with the above-described configuration; “if the joint angle of the distal end side joint is 0° (the reference position), the assumed elbow angle is 0° and the joint angle of the middle joint is the first minimum value (or the first maximum value) whatever the initial state at the start of operation of the robot is; and if the joint angle of the distal end side joint is 180° (the maximum displacement position from the reference position), the assumed elbow angle is 180° and the joint angle of the middle joint is the first maximum value (or the first minimum value)”. In other words, the inventors of the present invention have found that the assumed elbow angle changes from 0° to 180° in accordance with changes in the joint angle of the distal end side joint from 0° to 180°, and that the joint angle of the middle joint changes from the first minimum value to the first maximum value (or from the first maximum value to the first minimum value) substantially in proportion to the changes in the assumed elbow angle. In view of this, the ratio of the joint angle of the middle joint in the initial state within the range from the first maximum value to the first minimum value is calculated as an index indicating the assumed elbow angle, and such a joint angle of the middle joint as to cause the calculated ratio to be constant is used as a constraint condition. This makes it possible to readily realize control that allows the seven-axis articulated robot to operate smoothly in a manner similar to that of a human arm.
  • In order to solve the above problems, another aspect of the present invention is a control program of controlling a seven-axis articulated robot including seven joints sequentially arranged from a proximal end of the robot to a distal end of the robot, the seven joints including rotational axes each causing a next joint to turn and rotational axes each causing a next joint to pivot, such that the rotational axes causing turning and the rotational axes causing pivoting are arranged alternately, the seven-axis articulated robot being configured such that at least one of rotational axes of three proximal end side joints of the robot does not intersect with other rotational axes of the three proximal end side joints at one point. The control program causes a computer to perform: calculating a maximum value and a minimum value, which are possible values of a joint angle of the middle joint and which are values to be taken from an initial state at a start of operation of the robot, by performing inverse transformation while setting a joint angle of a distal end side joint among the three joints to 0° (a reference position) or 180° (a maximum displacement position from the reference position); calculating, as an index indicating an assumed elbow angle in a case where a rotational axis of the middle joint is assumed as a shoulder, a ratio of the joint angle of the middle joint in the initial state within a range from the maximum value to the minimum value; and performing inverse transformation using, as a constraint condition, such a joint angle of the middle joint as to cause the calculated ratio to be constant.
  • In order to solve the above problems, yet another aspect of the present invention is a robot control device configured to control a seven-axis articulated robot including seven joints sequentially arranged from a proximal end of the robot to a distal end of the robot, the seven joints including rotational axes each causing a next joint to turn and rotational axes each causing a next joint to pivot, such that the rotational axes causing turning and the rotational axes causing pivoting are arranged alternately, the seven-axis articulated robot being configured such that at least one of rotational axes of three proximal end side joints of the robot does not intersect with other rotational axes of the three proximal end side joints at one point. The robot control device includes: a maximum and minimum value calculator configured to calculate a maximum value and a minimum value, which are possible values of a joint angle of the middle joint and which are values to be taken from an initial state at a start of operation of the robot, by performing inverse transformation while setting a joint angle of a distal end side joint among the three joints to 0° (a reference position) or 180° (a maximum displacement position from the reference position); a ratio calculator configured to calculate, as an index indicating an assumed elbow angle in a case where a rotational axis of the middle joint is assumed as a shoulder, a ratio of the joint angle of the middle joint in the initial state within a range from the maximum value to the minimum value; and an inverse transformation unit configured to perform inverse transformation using, as a constraint condition, such a joint angle of the middle joint as to cause the calculated ratio to be constant.
  • The above object, other objects, features, and advantages of the present invention will be made clear by the following detailed description of a preferred embodiment with reference to the accompanying drawings.
  • Advantageous Effects of Invention
  • The present invention makes it possible to suitably realize control of a seven-axis articulated robot including a mechanism in which rotational axes of three proximal end side joints among seven joints of the robot do not intersect with each other at one point, the control allowing the seven-axis articulated robot to operate smoothly in a manner similar to that of a human arm.
  • BRIEF DESCRIPTION OF DRAWINGS
  • FIG. 1 shows the configuration of a robot system according to an embodiment of the present invention, the robot system including a seven-axis articulated robot and a robot control device.
  • FIG. 2 schematically shows a link structure of the seven-axis articulated robot of FIG. 1.
  • FIG. 3 is a conceptual diagram illustrating inverse transformation of the seven-axis articulated robot shown in FIG. 1.
  • FIG. 4 is a flowchart showing control steps performed at the start of operation of the robot according to the embodiment of the present invention.
  • FIG. 5 is a flowchart showing control steps performed when the robot is in operation according to the embodiment of the present invention.
  • FIG. 6 is a conceptual diagram illustrating simulation conditions for a present scheme.
  • FIG. 7A is a graph showing changes in an assumed elbow angle according to the present scheme.
  • FIG. 7B is a graph showing changes in an elbow angle according to a comparative method.
  • FIG. 7C is a graph showing, for reference, changes in the joint angle of a joint JT7 according to the present scheme.
  • FIG. 8 is a schematic diagram illustrating the concept of the present invention.
  • FIG. 9 is a schematic diagram illustrating the concept of the present invention.
  • FIG. 10 schematically shows a link structure of a seven-axis articulated robot including a mechanism in which rotational axes of three proximal end side joints JT1, JT2, and JT7 among seven joints of the robot intersect with each other at one point.
  • FIG. 11 illustrates an elbow angle defined in the seven-axis articulated robot shown in FIG. 10.
  • FIG. 12 schematically shows a link structure of a seven-axis articulated robot including a mechanism in which rotational axes of three proximal end side joints JT1, JT2, and JT7 among seven joints of the robot do not intersect with each other at one point.
  • FIG. 13 illustrates inverse transformation of a comparative method.
  • DESCRIPTION OF EMBODIMENTS
  • Hereinafter, a preferred embodiment of the present invention will be described with reference to the accompanying drawings. In the drawings, the same or corresponding components are denoted by the same reference signs, and a repetition of the same description is avoided.
  • Concept of Present Invention
  • First, the concept of the present invention is described.
  • FIG. 8 is a schematic diagram illustrating the concept of the present invention. It should be noted that FIG. 8 shows a case where the joints JT4 to JT6 forming the “wrist (W)” are eliminated from the seven-axis articulated robot shown in FIG. 12 in which an offset is set.
  • In the seven-axis articulated robot shown in FIG. 8, if the rotational axis of the joint JT2 is defined as an assumed “shoulder (S)” (hereinafter, referred to as an assumed shoulder S′), then smooth motion similar to motion of a human arm is realized by operating the robot in such a manner that the elbow angle θE defined as shown in FIG. 11 (hereinafter, referred to as an assumed elbow angle) is kept constant.
  • It is understood that if the joint JT7 of the seven-axis articulated robot of FIG. 8 is operated with the positional orientation of the “wrist (W)” (not shown) kept constant, then the joint JT3 forming the “elbow (E)” becomes tilted and the assumed elbow angle is changed. From the behavior of the robot arm at the time, two features as described below are found.
  • Feature 1: the joint angle of the joint JT2 changes substantially in proportion to changes in the assumed elbow angle whatever the state of the positional orientation of the wrist is.
  • Feature 2: if the joint angle of the joint JT7 is 0° (i.e., if there is no variation from a reference position), the assumed elbow angle is 0° and the joint angle of the joint JT2 is a minimum (or maximum) value J21 whatever the state of the positional orientation of the wrist is. If the joint angle of the joint JT7 is 180° (i.e., if a maximum variation from the reference position has occurred), the assumed elbow angle is 180° and the joint angle of the joint JT2 is a maximum (or minimum) value J22.
  • That is, in FIG. 9, the assumed elbow angle changes from 0° to 180° in accordance with changes in the joint angle of the joint JT7 from 0° to 180°, and the joint angle of the joint JT2 changes from J21 to J22 substantially in proportion to the changes in the elbow angle.
  • In view of the above, possible maximum and minimum values of the joint angle of the joint JT2, which are values to be taken from an initial state at the start of operation of the robot, are calculated by performing inverse transformation while setting the joint angle of the joint JT7 to 0° or 180°. Then, the calculated maximum value and minimum value are defined as 100% and 0%, respectively, and a JT2 ratio a indicating the percentage of the joint angle of the joint JT2 at the start of operation of the robot is calculated. The JT2 ratio a is an index corresponding to the elbow angle θE (see FIG. 11) in a case where there is no offset. The inverse transformation is performed by using, as a constraint condition, such a joint angle of the joint JT2 as to cause the calculated JT2 ratio a to be constant.
  • Embodiment
  • Next, an embodiment of the present invention based on the above-described concept of the present invention is described.
  • [Seven-Axis Articulated Robot]
  • FIG. 1 shows the configuration of a robot system according to an embodiment of the present invention, the robot system including a seven-axis articulated robot and a robot control device.
  • As shown in FIG. 1, a seven-axis articulated robot 100 includes six joints JT1 to JT6 sequentially arranged from the proximal end of the robot to the wrist. The seven-axis articulated robot 100 is configured such that a six-axis articulated robot, whose six joints JT1 to JT6 have respective rotational axes A1 to A6, includes a joint JT7 adding a redundant axis between the joint JT2 and the joint JT3. In the seven-axis articulated robot 100, the seven joints JT1 to JT7 include rotational axes each causing a next joint to turn and rotational axes each causing a next joint to pivot, such that the rotational axes causing turning and the rotational axes causing pivoting are arranged alternately. Although reference signs (JT1 to JT7 and A1 to A7) are assigned to the seven joints and seven rotational axes for the sake of convenience, the reference signs assigned to the seven joints and seven rotational axes may be any reference signs so long as the signs allow the seven joints and seven rotational axes to be distinguished from each other.
  • Similar to the case shown in FIG. 12, the seven-axis articulated robot 100 includes a mechanism in which at least one of the rotational axes of the respective joints JT1, JT2, and JT7 does not intersect with the other rotational axes of the three joints at one point. Specifically, FIG. 1 shows a mechanism in which: an offset is set between the joints JT1 and JT2 for the purpose of increasing the working range of the robot; the rotational axes of the respective joints JT2 and JT7 intersect with each other at one point; and the rotational axis of the joint JT1 does not intersect with the rotational axes of the respective joints JT2 and JT7 at one point. Thus, in the case of a mechanism in which an offset is set, a “shoulder (S)” cannot be precisely defined although a “wrist (W)” and an “elbow (E)” can be defined. Therefore, the vicinity of the rotational axis of the joint JT2 is defined as an “assumed shoulder (S)”. It should be noted that an intersection point where the rotational axes of the respective joints JT4, JT5, and JT6 intersect with each other is referred to as the wrist (W), and the rotational axis of the joint JT3 is referred to as the elbow (E). An intersection point where the rotational axes of the respective joints JT2 and JT7 intersect with each other is referred to as the assumed shoulder (S). In the description below, an XYZ orthogonal coordinate system whose origin is the “assumed shoulder (S)” is referred to as a “reference coordinate system”; an XYZ orthogonal coordinate system whose origin is the “wrist (W)” is referred to as a “wrist coordinate system”; a displacement of the origin of the wrist coordinate system relative to the origin of the reference coordinate system is referred to as a “wrist position”; an angular displacement of the wrist coordinate system relative to the reference coordinate system is referred to as a “wrist orientation”; and a portion that mainly affects the wrist orientation is referred to as the “wrist”,
  • In the seven-axis articulated robot 100 shown in FIG. 1, all of the rotational axes A4 to A6 intersect with each other at the origin, i.e., at one point, of the wrist coordinate system. Accordingly, portions corresponding to the joints JT4 to JT6 form the wrist. Meanwhile, portions corresponding to the joints JT1 to JT3 and the joint JT7 affect the wrist position.
  • A turn base 3, arm members (links) 4, 5, 6, 7, 8, and an attachment 9 are installed consecutively on a base 2 in said order. It should be noted that a tool member 11 suitably selected according to various types of work to be performed is detachably attached to a flange face that forms the distal end of the attachment 9. The consecutively installed members 2 to 9 from the base 2 to the attachment 9 are connected to each other such that they are rotatable relative to each other.
  • The arm members 7 and 8 and the attachment 9 form a human wrist-like structure (hereinafter, referred to as a wrist device) configured to cause the tool member 11 attached to the attachment 9 to perform fine motions. The rotational axes A1, A2, A7, and A3 are used as rotational axes for causing the tool member 11 to turn horizontally, swing, etc., together with the wrist device. The rotational axes A1, A2, A7, and A3 serve as main axes of the seven-axis articulated robot 100. The rotational axes A4 to A6 are set for the wrist device, and serve as wrist axes of a so-called RBR (Roll-Bend-Roll) type. It should be noted that the wrist axes of the wrist device are not limited to the RBR type, but may be a so-called BBR (Bend-Bend-Roll) type or a 3R (Roll-Roll-Roll) type.
  • Servomotors M1 to M7 and position detectors E1 to E7 are provided at the joints JT1 to JT7. Each of the position detectors E1 to E7 is configured as a rotary encoder, for example. When the servomotors M1 to M7 are driven, allowable rotation around the rotational axes A1 to A7 is performed at the joints JT1 to JT7, respectively. It should be noted that the servomotors M1 to M7 can be driven independently of each other. When the servomotors M1 to M7 are driven, the position detectors E1 to E7 detect rotational positions of the respective servomotors M1 to M7 around the rotational axes A1 to A7.
  • FIG. 2 schematically shows a link structure of the seven-axis articulated robot 100 of FIG. 1.
  • At the joint JT1 where the base 2 and the turn base 3 are connected, rotation (turning) of the turn base 3 relative to the base 2 around the rotational axis Al is allowed. It should be noted that, at the center of the top surface of the base 2, an origin O of the reference coordinate system (orthogonal coordinate system formed by an X0 axis, a Y0 axis, and a Z0 axis) is set as the assumed shoulder (S′) (see FIG. 2). Also, at the joint JT1, a joint coordinate system (orthogonal coordinate system formed by an X1 axis, a Y1 axis, and a Z1 axis) of the joint JT1 is set.
  • At the joint JT2 where the top end of the turn base 3 is connected to one end of the arm member 4, rotation (pivoting) of the arm member 4 relative to the turn base 3 around the rotational axis A2 is allowed. It should be noted that, at the joint JT2, a joint coordinate system (orthogonal coordinate system formed by an X2 axis, a Y2 axis, and a Z2 axis) of the joint JT2 is set. In a case where the joints are in a state shown in FIG. 2, a distance in the vertical direction from the origin of the joint coordinate system of the joint JT2 is indicated as a link length L0; and a distance in the horizontal direction (to the left in the drawing of FIG. 2) between the origin of the joint coordinate system of the joint JT1 and the origin of the joint coordinate system of the joint JT2 is indicated as a link length L1.
  • At the joint JT7 where the other end of the arm member 4 is connected to one end of the arm member 5, rotation (turning) of the arm member 5 relative to the arm member 4 around the rotational axis A7 is allowed. It should be noted that, at the joint JT7, a joint coordinate system (orthogonal coordinate system formed by an X7 axis, a Y7 axis, and a Z7 axis) of the joint JT7 is set.
  • At the joint JT3 where the other end of the arm member 5 is connected to one end of the arm member 6, rotation (pivoting) of the arm member 6 relative to the arm member 5 around the rotational axis A3 is allowed. It should be noted that, at the joint JT3, a joint coordinate system (orthogonal coordinate system formed by an X3 axis, a Y3 axis, and a Z3 axis) of the joint JT3 is set. In the case where the joints are in the state shown in FIG. 2, a distance in the vertical direction between the origin of the joint coordinate system of the joint JT2 and the origin of the joint coordinate system of the joint JT3 is indicated as a link length L2.
  • At the joint JT4 where the other end of the arm member 6 is connected to one end of the arm member 7, rotation (turning) of the arm member 7 relative to the arm member 6 around the rotational axis A4 is allowed. It should be noted that, at the joint JT4, a joint coordinate system (orthogonal coordinate system formed by an X4 axis, a Y4 axis, and a Z4 axis) of the joint JT4 is set. In the case where the joints are in the state shown in FIG. 2, a distance in the vertical direction between the origin of the joint coordinate system of the joint JT3 and the origin of the joint coordinate system of the joint JT4 is indicated as a link length L3, and a distance in the horizontal direction between the origin of the joint coordinate system of the joint JT3 and the origin of the joint coordinate system of the joint JT4 is indicated as a link length L4.
  • At the joint JT5 where the other end of the arm member 7 is connected to one end of the arm member 8, rotation (pivoting) of the arm member 8 relative to the arm member 7 around the rotational axis A5 is allowed. It should be noted that, at the joint JT5, a joint coordinate system (orthogonal coordinate system formed by an X5 axis, a Y5 axis, and a Z5 axis) of the joint JT5 is set.
  • At the joint JT6 where the other end of the arm member 8 is connected to one end of the attachment 9, rotation (turning) of the attachment 9 relative to the arm member 8 around the rotational axis A6 is allowed. It should be noted that, at the joint JT6, an orthogonal coordinate system formed by an X6 axis, a Y6 axis, and a Z6 axis is set as a joint coordinate system of the joint JT6. The origin of the orthogonal coordinate system formed by the X6 axis, the Y6 axis, and the Z6 axis is a point where the rotational axes A4 to A6 intersect with each other. In the case where the joints are in the state shown in FIG. 2, a distance in the vertical direction between the wrist and the origin of the joint coordinate system of the joint JT5 is indicated as a link length L5.
  • When the base 2 is properly installed on a floor, the rotational axis A1, which is the nearest rotational axis to the base 2, is oriented in the vertical direction (direction extending from the base 2 to the joint JT1); the rotational axis A2 is oriented in the horizontal direction (direction parallel to the floor surface; the rotational axis A7 is oriented in a direction orthogonal to the rotational axis A2, the direction being the extending direction of the arm member 4; the rotational axis A3 is oriented in a direction orthogonal to the rotational axis A7, the direction being the horizontal direction; the rotational axis A4 is oriented in a direction orthogonal to the rotational axis A3, the direction being the extending direction of the arm member 6; the rotational axis A5 is oriented in a direction orthogonal to the rotational axis A4, the direction being the horizontal direction; and the rotational axis A6 is oriented in a direction orthogonal to the rotational axis A5, the direction being the extending direction of the arm member 8. Thus, the rotational axes A1 to A7 are arranged such that the rotational axes of every two adjoining joints are perpendicular to each other.
  • [Robot Control Device]
  • A robot control device 200 is disposed near the base 2 of the articulated robot 100. It should be noted that the robot control device 200 may be either disposed at a remote distance from the articulated robot 100 or physically connected to the articulated robot 100 in a detachable manner. The robot control device 200 includes servo amplifiers 210. The servo amplifiers 210 perform servo control of the respective servomotors M1 to M6 provided at the joints JT1 to JT6 of the articulated robot 100, the servo control causing the tool member 11 attached to the attachment 9 to move along a desired path to be in a desired positional orientation.
  • Each servo amplifier 210 includes a drive unit 230 and a controller 240. It should be noted that the controller 240 may be provided outside of the servo amplifier 210. In other words, the servo amplifiers 210 may only include respective drive units 230.
  • The drive units 230 are power converters configured to drive the respective servomotors M1 to M6. Each drive unit 230 includes a rectifier circuit and an inverter circuit, for example. Although the multiple servo amplifiers 210 are provided such that an individual servo loop is formed for each of the servomotors M1 to M6, an alternative configuration may be adopted, in which a single servo amplifier 210 drives the servomotors M1 to M6 in an integrated manner. In this case, only the drive unit 230 is provided for each of the servomotors M1 to M6.
  • The controller 240 manages control of the entire robot control device 200 including the servo amplifier 210. The controller 240 includes a microcontroller, CPU, MPU, PLC, DSP, ASIC, or FPGA, for example. It should be noted that the controller 240 may be configured as multiple controllers performing distributed control in cooperation with each other. For example, a system may be configured, such that a CPU performs interface processing with a superordinate controller and a DSP performs elementary operations (position loop operation, speed loop operation, and current loop operation) of the servo amplifier 210.
  • The robot control device 200 is connectable to, for example, a teach pendant. An operator uses the teach pendant to perform a teaching operation. The controller 240 calculates a target position where the tool member 11 is to be positioned, based on a teaching operation and an operation program created by, for example, an offline tool. Further, the controller 240 performs inverse transformation of coordinate data of the target position, thereby calculating joint angles θ1 to θ7 necessary for moving the tool member 11 to the target position. Then, based on deviations between the calculated joint angles θ1 to θ7 and rotational positions detected by the respective position detectors El to E7 when the power is turned ON, the controller 240 calculates command values specifying operating amounts of the respective servomotors provided at the joints JT1 to JT7, and supplies the command values to the respective servomotors. As a result, the tool member 11 is moved to the target position.
  • When the robot control device 200 performs inverse transformation for the seven-axis articulated robot 100, the wrist axes (A4 to A6) which serve to determine the orientation of the wrist are temporarily ignored. Then, one of the remaining four rotational axes A1, A2, A7, and A3 which also serve to determine the position of the wrist (e.g., the rotational axis A7) is set as a redundant axis, and the other three rotational axes (e.g., rotational axes A1 to A3) are set as main axes. Joint angles of the respective joints including these main axes are used as unknown parameters.
  • As shown in FIG. 3, a linear distance between the origin O (0, 0, 0) of the reference coordinate system and a position P of the wrist of the seven-axis articulated robot 100 is indicated as Rh, and a distance of the position P of the wrist in the Z-axis direction in the reference coordinate system (i.e., a distance from the proximal end to the wrist in the extending direction of the nearest rotational axis to the proximal end) is indicated as Zh. When the position P of the wrist in the reference coordinate system is represented as (Xp, Yp, Zp), equations shown below hold true for Rh and Zh.

  • Rh 2 =Xp 2 +Yp 2 +Zp 2  (1)

  • Zh=Zp  (2)
  • Other than the above Equation (1) and Equation (2), Rh and Zh can be represented by using the length of each link of the seven-axis articulated robot 100 and the joint angles θ1, θ2, θ3, and θ7 of the joints JT1 to JT3 and JT7. Based on these, a biquadratic equation shown below can be obtained for a parameter t (=tanθ3).

  • t4+a·3+b·t2+c·t+d=0  Equation (3)
  • The joint angle θ3 can be obtained by solving the above Equation (3), which is a biquadratic equation. Based on the obtained joint angle θ3, the joint angle θ1 and the joint angle θ2 are uniquely obtained.
  • [Method of Controlling Seven-Axis Articulated Robot]
  • FIG. 4 is a flowchart showing control steps performed at the start of operation of the robot according to the embodiment of the present invention.
  • First, it is assumed that the robot control device 200 has recognized an initial wrist positional orientation P_ini in an initial state at the start of operation of the robot and initial axial values JT1_ini, JT2_ini, . . . , JT7_ini, which are joint angles in the initial state at the start of operation of the robot (step S401). It should be noted that the initial joint angle JT2_ini of the joint JT2 is referred to as an initial value J20.
  • Next, the robot control device 200 performs inverse transformation for the initial wrist positional orientation P_ini under a constraint condition that the joint angle of the joint JT7 is 0°, thereby obtaining joint angles JT1_ini0, JT2_ini0, JT7_ini0 (step S402). It should be noted that, among the obtained joint angles, the joint angle JT2_ini0 of the joint JT2 is referred to as a minimum value J21 (first minimum value).
  • Subsequently, the robot control device 200 performs inverse transformation for the initial wrist positional orientation P_ini under a constraint condition that the joint angle of the joint JT7 is 180°, thereby obtaining joint angles JT1_ini180, JT2_ini180, . . . , JT7_ini180 (step S403). It should be noted that, among the obtained joint angles, the joint angle JT2_ini180 of the joint JT2 is referred to as a maximum value J22 (first maximum value).
  • By using the initial value J20 obtained in step S401, the minimum value J21 obtained in step S402, and the maximum value J22 obtained in step S403, the robot control device 200 calculates a JT2 ratio a with an equation shown below. The JT2 ratio a indicates, within a possible joint angle range (=J21−J22) of the joint JT2 in the initial positional orientation, a degree of closeness of the initial value J20 to the minimum value J21 (step S404).

  • α=(J22−J20)/(J22−J21)  (4)
  • It should be noted that if the initial value J20 is closest to the minimum value J21 (i.e., J20=J21), the JT2 ratio α is 1 (100%). Also, if the initial value J20 is most distant from the minimum value J21 (i.e., J20=J22), the JT2 ratio α is 0 (0%). The assumed elbow angle can be kept substantially constant by keeping the JT2 ratio α substantially constant.
  • FIG. 5 is a flowchart showing control steps performed when the robot is in operation according to the embodiment of the present invention.
  • First, it is assumed that the robot control device 200 has recognized, as an initial value, a current wrist positional orientation P_n, which is the current wrist positional orientation when the robot is in operation (step S501).
  • Then, the robot control device 200 performs inverse transformation for the current wrist positional orientation P_n under a constraint condition that the joint angle of the joint JT7 is 0°, thereby obtaining joint angles JT1_n0, JT2_n0, JT7_n0 (step S502). It should be noted that, among the obtained joint angles, the joint angle JT2_n0 of the joint JT2 is referred to as a minimum value J21′ (second minimum value).
  • Next, the robot control device 200 performs inverse transformation for the current wrist positional orientation P_n under a constraint condition that the joint angle of the joint JT7 is 180°, thereby obtaining joint angles JT1_n180, JT2_n180, . . . , JT7_n180 (step S503). It should be noted that, among the obtained joint angles, the joint angle JT2_n_180 of the joint JT2 is referred to as a maximum value J22′ (second maximum value).
  • Subsequently, by using the JT2 ratio α obtained in step S404, the minimum value J21′ obtained in step S502, and the maximum value J22′ obtained in step S503, the robot control device 200 calculates a target value J20′ of the joint angle of the joint JT2 with an equation shown below (step S504).

  • J20′=J22′−(J22′−J21′)·α  (5)
  • Then, the robot control device 200 performs inverse transformation under a constraint condition that the target value J20′ obtained in step S504 is the joint angle of the joint JT2, thereby calculating axial values (i.e., joint angles) of the remaining joints JT1, JT3, JT4, JT5, JT6, and JT7 (step S505).
  • The above-described steps S501 to S505 are repeated from when the wrist is in the initial positional orientation until the wrist is in the target positional orientation. As a result, the JT2 ratio a is kept constant, Consequently, even in the seven-axis articulated robot including the mechanism in which the rotational axes of the respective joints JT1, JT2, and JT7 do not intersect each other at one point, smooth motion of the assumed shoulder in which the assumed elbow angle is kept constant can be readily realized.
  • [Simulation Results]
  • Hereinafter, results of simulating the control method of keeping the JT2 ratio a substantially constant according to the embodiment of the present invention are described with reference to FIG. 6 and FIG. 7.
  • FIG. 6 is a conceptual diagram illustrating simulation conditions for the control method of keeping the JT2 ratio a substantially constant according to the embodiment of the present invention (hereinafter, the control method according to the embodiment of the present invention is referred to as the present scheme). The respective link lengths of the seven-axis articulated robot 100 are set as follows: the link length L0 is 400 mm; the link length L1 is 100 mm; the link length L2 is 500 mm; the link length L3 is 600 mm; and the link length L4 is 40 mm. The simulation conditions in the present scheme are such that when the seven-axis articulated robot 100 is in its initial state, the joint angle of the joint JT1 is 0°; the joint angle of the joint JT2 is 40°; the joint angle of the joint JT3 is −100°; and the joint angle of the joint JT7 is −45°, and such that the wrist of the seven-axis articulated robot 100 in the initial state is moved by 2000 mm in the Y-axis negative direction in a reference coordinate system shown in FIG. 6.
  • FIGS. 7A to 7C are graphs, in which simulation results of the present scheme carried out under the simulation conditions shown in FIG. 6 are compared to simulation results obtained through a comparative method. As the comparative method compared to the present scheme, a control method in which the joint angle of the joint JT7 is fixed (hereinafter, simply referred to as the comparative method) was carried out under the same simulation conditions. It should be noted that FIG. 7A is a graph showing changes in the assumed elbow angle according to the present scheme; FIG. 7B is a graph showing changes in the elbow angle according to the comparative method; and FIG. 7C is a graph showing, for reference, changes in the joint angle of the joint JT7 according to the present scheme.
  • It is understood from the comparison between FIG. 7A and FIG. 7B that the changes in the elbow angle can be made smaller with the present scheme than with the comparative method. Moreover, it is understood from FIG. 7C that, in the present scheme, the joint angle of the joint JT7 changes in such a manner as to cause the elbow angle to be constant.
  • [Variation]
  • The seven-axis articulated robot 100 may include more than seven axes. Examples of such cases include: a case where the entire robot is configured to run and includes a rotational axis of a motor for the running; and a case where there is a rotational axis of an unused joint between the joint JT7 and the joint JT3, or between the joint JT3 and the fourth joint, for example. That is, the seven-axis articulated robot 100 may substantially include seven axes.
  • The JT2 ratio a may alternatively be an index indicating a degree of closeness of the initial value J20 to the maximum value J22 as shown in an equation below.

  • α=(J21−J20)/(J22−J21)  (6)
  • The offset set between the joint JT1 and the joint JT2 is not limited to an L-shaped offset bent at a right angle as shown in FIG. 2. As an alternative example, the offset may be in the form of a straight line inclined diagonally between the joint JT1 and the joint JT2.
  • Instead of setting the offset between the joints JT1 and JT2, an offset may be set between the joints JT2 and JT7, or an offset may be set between the joints JT1 and JT2 as well as between the joints JT2 and JT7. That is, the seven-axis articulated robot 100 is merely required to include a mechanism in which at least one of the rotational axes of the respective joints JT1, JT2, and JT7 does not intersect with the other rotational axes of the three joints at one point. Examples of such a mechanism include: a mechanism in which, as shown in FIG. 2, the rotational axes of the respective joints JT2 and JT7 intersect with each other at one point, but the rotational axis of the joint JT1 does not intersect with the rotational axes of the respective joints JT2 and JT7; a mechanism in which the rotational axes of the respective joints JT1 and JT2 intersect with each other at one point, but the rotational axis of the joint JT7 does not intersect with the rotational axes of the respective joints JT1 and JT2; and a mechanism in which none of the rotational axes of the joints JT1, JT2, and JT7 intersect with each other at one point.
  • From the foregoing description, numerous modifications and other embodiments of the present invention are obvious to one skilled in the art. Therefore, the foregoing description should be interpreted only as an example and is provided for the purpose of teaching the best mode for carrying out the present invention to one skilled in the art. The structural and/or functional details may be substantially altered without departing from the spirit of the present invention.
  • INDUSTRIAL APPLICABILITY
  • The present invention is useful to realize control of a seven-axis articulated robot including a mechanism in which rotational axes of three proximal end side joints among seven joints of the robot do not intersect with each other at one point, the control allowing the seven-axis articulated robot to operate smoothly in a manner similar to that of a human arm.
  • REFERENCE SIGNS LIST
    • 2 base
    • 3 turn base
    • 4 to 8 arm member
    • 9 attachment
    • 10 wrist device
    • 11 tool member
    • JT1 to JT7 joint
    • A1 to A7 rotational axis
    • M1 to M7 servomotor
    • E1 to E7 position detector
    • L0 to L5 link length
    • 100 seven-axis articulated robot
    • 200 robot control device
    • 210 servo amplifier
    • 230 drive unit
    • 240 controller

Claims (5)

1. A method of controlling a seven-axis articulated robot including seven joints sequentially arranged from a proximal end of the robot to a distal end of the robot, the seven joints including rotational axes each causing a next joint to turn and rotational axes each causing a next joint to pivot, such that the rotational axes causing turning and the rotational axes causing pivoting are arranged alternately, the seven-axis articulated robot being configured such that at least one of rotational axes of three proximal end side joints of the robot does not intersect with other rotational axes of the three proximal end side joints at one point,
the method comprising performing inverse transformation using, as a constraint condition, such a joint angle of a middle joint among the three joints as to cause an assumed elbow angle to be constant in a case where a rotational axis of the middle joint is assumed as a shoulder.
2. The method of controlling a seven-axis articulated robot according to claim 1, the method comprising:
calculating a first maximum value and a first minimum value, which are possible values of the joint angle of the middle joint and which are values to be taken from an initial state at a start of operation of the robot, by performing inverse transformation while setting a joint angle of a distal end side joint among the three joints to 0° (a reference position) or 180° (a maximum displacement position from the reference position); and
calculating, as an index indicating the assumed elbow angle, a ratio of the joint angle of the middle joint in the initial state within a range from the first maximum value to the first minimum value, wherein
such a joint angle of the middle joint as to cause the calculated ratio to be constant is used as the constraint condition.
3. The method of controlling a seven-axis articulated robot according to claim 2, wherein
a step of the constraint condition includes:
calculating a second maximum value and a second minimum value which are possible values of a current joint angle of the middle joint when the robot is in operation, by performing inverse transformation while setting the joint angle of the distal end side joint to 0° (the reference position) or 180° (the maximum displacement position from the reference position);
calculating a target value of the current joint angle of the middle joint when the robot is in operation, based on the calculated second maximum value, the calculated second minimum value, and the calculated ratio; and
applying the calculated target value to the joint angle of the middle joint, the joint angle being used as the constraint condition when performing the inverse transformation.
4. A control program of controlling a seven-axis articulated robot including seven joints sequentially arranged from a proximal end of the robot to a distal end of the robot, the seven joints including rotational axes each causing a next joint to turn and rotational axes each causing a next joint to pivot, such that the rotational axes causing turning and the rotational axes causing pivoting are arranged alternately, the seven-axis articulated robot being configured such that at least one of rotational axes of three proximal end side joints of the robot does not intersect with other rotational axes of the three proximal end side joints at one point,
the control program causing a computer to perform:
calculating a maximum value and a minimum value, which are possible values of a joint angle of the middle joint and which are values to be taken from an initial state at a start of operation of the robot, by performing inverse transformation while setting a joint angle of a distal end side joint among the three joints to 0° (a reference position) or 180° (a maximum displacement position from the reference position);
calculating, as an index indicating an assumed elbow angle in a case where a rotational axis of the middle joint is assumed as a shoulder, a ratio of the joint angle of the middle joint in the initial state within a range from the maximum value to the minimum value; and
performing inverse transformation using, as a constraint condition, such a joint angle of the middle joint as to cause the calculated ratio to be constant.
5. A robot control device configured to control a seven-axis articulated robot including seven joints sequentially arranged from a proximal end of the robot to a distal end of the robot, the seven joints including rotational axes each causing a next joint to turn and rotational axes each causing a next joint to pivot, such that the rotational axes causing turning and the rotational axes causing pivoting are arranged alternately, the seven-axis articulated robot being configured such that at least one of rotational axes of three proximal end side joints of the robot does not intersect with other rotational axes of the three proximal end side joints at one point,
the robot control device comprising:
a maximum and minimum value calculator configured to calculate a maximum value and a minimum value, which are possible values of a joint angle of the middle joint and which are values to be taken from an initial state at a start of operation of the robot, by performing inverse transformation while setting a joint angle of a distal end side joint among the three joints to 0° (a reference position) or 180° (a maximum displacement position from the reference position);
a ratio calculator configured to calculate, as an index indicating an assumed elbow angle in a case where a rotational axis of the middle joint is assumed as a shoulder, a ratio of the joint angle of the middle joint in the initial state within a range from the maximum value to the minimum value; and
an inverse transformation unit configured to perform inverse transformation using, as a constraint condition, such a joint angle of the middle joint as to cause the calculated ratio to be constant.
US13/977,272 2010-12-28 2011-12-21 Method of controlling seven-axis articulated robot, control program, and robot control device Active 2032-04-11 US9120223B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2010293341A JP5701055B2 (en) 2010-12-28 2010-12-28 7-axis articulated robot control method, control program, and robot controller
JP2010-293341 2010-12-28
PCT/JP2011/007158 WO2012090441A1 (en) 2010-12-28 2011-12-21 Control method for seven-shaft multi-joint robot, control program, and robot control device

Publications (2)

Publication Number Publication Date
US20130310973A1 true US20130310973A1 (en) 2013-11-21
US9120223B2 US9120223B2 (en) 2015-09-01

Family

ID=46382582

Family Applications (1)

Application Number Title Priority Date Filing Date
US13/977,272 Active 2032-04-11 US9120223B2 (en) 2010-12-28 2011-12-21 Method of controlling seven-axis articulated robot, control program, and robot control device

Country Status (5)

Country Link
US (1) US9120223B2 (en)
EP (1) EP2660013B1 (en)
JP (1) JP5701055B2 (en)
KR (1) KR101498835B1 (en)
WO (1) WO2012090441A1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9868209B2 (en) 2013-12-02 2018-01-16 Seiko Epson Corporation Robot
US10471596B2 (en) 2016-09-02 2019-11-12 Prodrone Co., Ltd. Robot arm and unmanned aerial vehicle equipped with the robot arm
US20200189094A1 (en) * 2017-08-21 2020-06-18 Hanwha Precision Machinery Co., Ltd. Device, method and system for teaching robot
US11000338B2 (en) * 2016-03-30 2021-05-11 Sony Corporation Arm control method and arm control device
US20210229267A1 (en) * 2018-10-16 2021-07-29 Kabushiki Kaisha Yaskawa Denki Robot system
US11358276B2 (en) * 2018-08-31 2022-06-14 Fanuc Corporation Robot and robot system
US11458619B2 (en) * 2018-12-29 2022-10-04 Cloudminds Robotics Co., Ltd. Method for controlling the motion of a robot arm, computing device and robot

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5948932B2 (en) * 2012-02-16 2016-07-06 セイコーエプソン株式会社 Robot control apparatus, robot control method, robot control program, and robot system
JP6443875B2 (en) * 2014-10-24 2018-12-26 ライフロボティクス株式会社 Robot arm mechanism
JP6686644B2 (en) * 2016-04-06 2020-04-22 セイコーエプソン株式会社 Robots and robot systems
JP7294856B2 (en) * 2019-04-08 2023-06-20 川崎重工業株式会社 robot equipment
CN114700962B (en) * 2022-03-22 2023-09-29 南京航空航天大学 Terminal pose precision compensation method for long-arm deployment high-altitude operation composite robot

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5444343A (en) * 1993-03-24 1995-08-22 Toyoda Koki Kabushiki Kaisha Method and apparatus for numerically controlling industrial machine
US20090118864A1 (en) * 2007-11-01 2009-05-07 Bryce Eldridge Method and system for finding a tool center point for a robot using an external camera

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2585425B2 (en) * 1989-05-10 1997-02-26 株式会社日立製作所 Vertical articulated robot
US4999553A (en) * 1989-12-28 1991-03-12 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Method and apparatus for configuration control of redundant robots
JPH0550386A (en) * 1991-08-16 1993-03-02 Fanuc Ltd Position instruction system for manipulator with seven degrees of freedom
US5737500A (en) * 1992-03-11 1998-04-07 California Institute Of Technology Mobile dexterous siren degree of freedom robot arm with real-time control system
JP2009066738A (en) * 2007-09-18 2009-04-02 Yaskawa Electric Corp Teaching device for robot
JP5190983B2 (en) 2007-11-27 2013-04-24 株式会社安川電機 Robot system
JP5223407B2 (en) * 2008-03-24 2013-06-26 日産自動車株式会社 Redundant robot teaching method
WO2010060475A1 (en) * 2008-11-26 2010-06-03 Abb Research Ltd. Industrial robot

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5444343A (en) * 1993-03-24 1995-08-22 Toyoda Koki Kabushiki Kaisha Method and apparatus for numerically controlling industrial machine
US20090118864A1 (en) * 2007-11-01 2009-05-07 Bryce Eldridge Method and system for finding a tool center point for a robot using an external camera

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9868209B2 (en) 2013-12-02 2018-01-16 Seiko Epson Corporation Robot
US9999974B2 (en) * 2013-12-02 2018-06-19 Seiko Epson Corporation Robot
US11000338B2 (en) * 2016-03-30 2021-05-11 Sony Corporation Arm control method and arm control device
US10471596B2 (en) 2016-09-02 2019-11-12 Prodrone Co., Ltd. Robot arm and unmanned aerial vehicle equipped with the robot arm
US20200189094A1 (en) * 2017-08-21 2020-06-18 Hanwha Precision Machinery Co., Ltd. Device, method and system for teaching robot
US11358276B2 (en) * 2018-08-31 2022-06-14 Fanuc Corporation Robot and robot system
US20210229267A1 (en) * 2018-10-16 2021-07-29 Kabushiki Kaisha Yaskawa Denki Robot system
US11458619B2 (en) * 2018-12-29 2022-10-04 Cloudminds Robotics Co., Ltd. Method for controlling the motion of a robot arm, computing device and robot

Also Published As

Publication number Publication date
WO2012090441A1 (en) 2012-07-05
EP2660013A4 (en) 2016-10-05
EP2660013B1 (en) 2018-01-31
EP2660013A1 (en) 2013-11-06
US9120223B2 (en) 2015-09-01
KR20130056344A (en) 2013-05-29
KR101498835B1 (en) 2015-03-04
JP2012139762A (en) 2012-07-26
JP5701055B2 (en) 2015-04-15

Similar Documents

Publication Publication Date Title
US9120223B2 (en) Method of controlling seven-axis articulated robot, control program, and robot control device
US10688659B2 (en) Robot
US9409293B2 (en) Robot
KR101498836B1 (en) Control device and teaching method for seven-shaft multi-joint robot
JP5346217B2 (en) Multi-axis robot and its speed control device
EP2547490A1 (en) Calibration of a base coordinate system for an industrial robot
JP2007136590A (en) Control device and control method for redundant robot having redundant joint
JP4396553B2 (en) Robot controller, computer program
JP2012192518A (en) Device and method for controlling redundant robot having redundant joint
JP2020171989A (en) Robot teaching system
JP6697544B2 (en) Optimizer and vertical articulated robot equipped with the same
JP2019055440A (en) Robot system and work-piece manufacturing method
JP2010110878A (en) Articulated robot device and method for controlling the same
JP2014076498A (en) Articulated robot and semiconductor wafer carrier device
CN111699079B (en) Coordination system, operation device and method
JP5755715B2 (en) Robot control method
JP2018001313A (en) Robot, robot control device, and robot system
JP7396829B2 (en) Device, robot control device, robot system, and method for setting robot coordinate system
JP6648491B2 (en) Control devices, robots and robot systems
JP2022174858A (en) Direct teaching device and direct teaching method
JP2020040185A (en) Robot arm, robot device using robot arm, control method of robot arm, control program, and recording medium
JP2023137177A (en) Robot system and processing method
JP2015178157A (en) Robot control method and robot control device

Legal Events

Date Code Title Description
AS Assignment

Owner name: KAWASAKI JUKOGYO KABUSHIKI KAISHA, JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:TANAKA, HIDENORI;OGATA, TAKAMASA;KUBOTA, TETSUYA;SIGNING DATES FROM 20130626 TO 20130627;REEL/FRAME:031031/0716

AS Assignment

Owner name: KAWASAKI JUKOGYO KABUSHIKI KAISHA, JAPAN

Free format text: CORRECTIVE ASSIGNMENT, TO CORRECT NAME OF 1ST ASSIGNOR. ASSIGNMENT DOCUMENT PREVIOUSLY RECORDED ON AUGUST 1, 2013, REEL (031031/FRAME (0716). ASSIGNOR CONFIRMS ASSIGNMENT;ASSIGNORS:TANAKA, HIDEKI;OGATA, TAKAMASA;KUBOTA, TETSUYA;SIGNING DATES FROM 20130626 TO 20130627;REEL/FRAME:031551/0832

AS Assignment

Owner name: KAWASAKI JUKOGYO KABUSHIKI KAISHA, JAPAN

Free format text: CORRECTIVE ASSIGNMENT TO CORRECT 1ST ASSIGNOR'S EXECUTION DATE PREVIOUSLY RECORDED ON 031551, FRAME 0832;ASSIGNORS:TANAKA, HIDEKI;OGATA, TAKAMASA;KUBOTA, TETSUYA;SIGNING DATES FROM 20130626 TO 20131017;REEL/FRAME:031785/0387

STCF Information on status: patent grant

Free format text: PATENTED CASE

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 4

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 8