WO2022024243A1 - スカラロボットシステム - Google Patents

スカラロボットシステム Download PDF

Info

Publication number
WO2022024243A1
WO2022024243A1 PCT/JP2020/028987 JP2020028987W WO2022024243A1 WO 2022024243 A1 WO2022024243 A1 WO 2022024243A1 JP 2020028987 W JP2020028987 W JP 2020028987W WO 2022024243 A1 WO2022024243 A1 WO 2022024243A1
Authority
WO
WIPO (PCT)
Prior art keywords
arm
axis
angle
deflection
shaft
Prior art date
Application number
PCT/JP2020/028987
Other languages
English (en)
French (fr)
Inventor
将吾 東
Original Assignee
株式会社Fuji
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 株式会社Fuji filed Critical 株式会社Fuji
Priority to PCT/JP2020/028987 priority Critical patent/WO2022024243A1/ja
Priority to JP2022539854A priority patent/JP7513721B2/ja
Priority to CN202080101833.0A priority patent/CN115803154A/zh
Publication of WO2022024243A1 publication Critical patent/WO2022024243A1/ja

Links

Images

Classifications

    • 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/10Programme-controlled manipulators characterised by positioning means for manipulator elements

Definitions

  • a deflection correction device that corrects the deflection of a robot and corrects the deviation of the position and posture of the tip of the arm has been proposed (see, for example, Patent Document 1).
  • the deflection compensator measures the amount of deflection that represents the position of the tip of the arm and the deviation of the posture under multiple load conditions with different weights and positions of the center of gravity at multiple positions within the operating area of the robot, and stores it as deflection amount data. do.
  • the deflection correction device specifies the deflection amount data in which the weight of the tool used and the position of the center of gravity are close to each other, and calculates the deflection amount at each teaching point position of the robot operation program using the specified deflection amount data. Then, the deflection correction device corrects and changes the position of each teaching point of the operation program by the calculated deflection amount.
  • first arm that can swivel in the horizontal plane with respect to the J1 axis fixed to the base
  • second arm that can swivel in the horizontal plane with respect to the J2 axis fixed to the first arm
  • second arm that can swivel in the horizontal plane with respect to the J2 axis fixed to the first arm
  • second arm In a scalar robot provided with a shaft that can move in the axial direction of the J3 axis at the tip, an angle error due to twisting of the arm is included as an error of the first arm system, and an error of the arm is included as an error of the second arm system. It has also been proposed that an angle error due to twisting is included (see, for example, Patent Document 2).
  • a SCARA robot provided with a shaft that moves in the axial direction of the third axis, the position of the center of gravity of the arm portion including the first arm and the second arm is moved by the rotation of the second arm. If the position of the center of gravity contains a component orthogonal to the extending direction of the first arm, a moment is generated around the arm of the first arm, the first arm is twisted, and the position accuracy of the shaft tip (hand) may deteriorate. ..
  • the main object of the present disclosure is to provide a SCARA robot system capable of satisfactorily correcting the misalignment of the hand due to the twist around the arm of the first arm regardless of the rotation position of the second arm.
  • the SCARA robot system of the present disclosure has adopted the following means in order to achieve the above-mentioned main purpose.
  • the SCARA robot system of this disclosure is Base and A first arm provided on the base and rotating around a first axis, A second arm provided on the first arm and rotating around a second axis parallel to the first axis, A shaft that moves in the axial direction of the third axis parallel to the second arm with respect to the second arm, A control unit that controls the operation of the first arm, the second arm, and the shaft.
  • a storage unit that stores the twist correction coefficient of the first arm based on the rotation angle around the arm of the first arm corresponding to the rotation position of the second arm.
  • a correction unit that corrects the horizontal position of the shaft tip using the twist correction coefficient, and a correction unit.
  • the gist is to prepare.
  • the SCARA robot system of the present disclosure has a first arm provided on a base and rotating around a first axis, and a second arm provided on the first arm and rotating around a second axis parallel to the first axis. It includes two arms, a shaft that moves in the axial direction of the third axis parallel to the second arm, a control unit that controls these operations, a storage unit, and a correction unit.
  • the storage unit stores the twist correction coefficient of the first arm based on the rotation angle around the arm of the first arm corresponding to the rotation position of the second arm.
  • the correction unit corrects the horizontal position of the tip of the shaft by using the twist correction coefficient.
  • the SCARA robot system stores in advance the twist correction coefficient of the first arm based on the rotation angle around the arm of the first arm corresponding to the rotation position of the second arm in the storage unit, and reflects this as a correction value. .. This makes it possible to obtain a SCARA robot system capable of satisfactorily correcting the misalignment of the hand due to the twist around the arm of the first arm regardless of the rotation position of the second arm.
  • FIG. 1 is an external perspective view of the SCARA robot system.
  • FIG. 2 is a side view of the robot body.
  • FIG. 3 is a block diagram showing an electrical connection relationship between the robot body and the control device.
  • the SCARA robot system 1 is configured to perform predetermined work (for example, transport work for transporting the work W, assembly work for assembling the work W, etc.) on the work W.
  • the SCARA robot system 1 includes a robot main body 10 (see FIGS. 1 to 3) and a control device 70 (see FIG. 3) for controlling the robot main body 10.
  • the robot body 10 includes a base 11 and a scalar arm 20.
  • the base 11 is fixed to the work table 2 and supports the base end side of the scalar arm 20.
  • the scalar arm 20 includes a first arm 21, a first arm drive unit 30, a second arm 22, a second arm drive unit 40, a shaft 23, a shaft drive unit 50, and a camera 60.
  • the base end of the first arm 21 is connected to the base 11 via the first joint axis J1 and can rotate (horizontally turn) with respect to the base 11 by the rotation of the first joint axis J1. It is composed of.
  • the base end of the second arm 22 is connected to the tip of the first arm 21 via the second joint axis J2, and the second arm 22 rotates in a horizontal plane with respect to the first arm 21 due to the rotation of the second joint axis J2.
  • the shaft 23 is connected to the tip of the second arm 22 via the third joint axis J3, is rotatable about the axis of the third joint axis J3 with respect to the second arm 22, and is in the axial direction of the third joint axis J3. It is configured to be able to move up and down along.
  • a work holding portion 24 for picking up and holding the work W is provided at the tip of the shaft 23.
  • the first arm drive unit 30 includes a motor 32 and an encoder 34.
  • the rotation shaft of the motor 32 is connected to the first joint shaft J1 via a speed reducer (not shown).
  • the first arm drive unit 30 rotates the first arm 21 with the first joint shaft J1 as a fulcrum by the torque transmitted to the first joint shaft J1 via the speed reducer by driving the motor 32.
  • the encoder 34 is attached to the rotation shaft of the motor 32 and is configured as a rotary encoder that detects the amount of rotational displacement of the motor 32.
  • the second arm drive unit 40 includes a motor 42 and an encoder 44, similarly to the first arm drive unit 30.
  • the rotation shaft of the motor 42 is connected to the second joint shaft J2 via a speed reducer (not shown).
  • the second arm drive unit 40 rotates the second arm 22 with the second joint shaft J2 as a fulcrum by the torque transmitted to the second joint shaft J2 via the speed reducer by driving the motor 42.
  • the encoder 44 is attached to the rotation shaft of the motor 42 and is configured as a rotary encoder that detects the amount of rotational displacement of the motor 42.
  • the shaft drive unit 50 includes motors 52a and 52b and encoders 54a and 54b.
  • the rotating shaft of the motor 52a is connected to the shaft 23 via a belt (not shown) to rotate the shaft 23 around the shaft.
  • the rotating shaft of the motor 52b is connected to a ball screw nut (not shown) penetrating the shaft 23 via a belt, and raises and lowers the shaft 23 up and down.
  • the encoder 54a is configured as a rotary encoder that detects the amount of rotational displacement of the shaft 23.
  • the encoder 54b is configured as a linear encoder that detects the elevating position of the shaft 23.
  • the camera 60 is attached to the side surface of the tip of the second arm 22.
  • the camera 60 images the work W to be worked on and outputs the captured image to the control device 70.
  • the control device 70 recognizes the position of the work W by processing the captured image.
  • the control device 70 includes a CPU 71, a ROM 72 for storing a processing program, a RAM 73 as a work memory, a storage device 74 such as an HDD or SSD, and an input / output interface (not shown). Be prepared. Position signals from the encoders 34, 44, 54a, 54b, image signals from the camera 60, and the like are input to the control device 70 via the input / output interface. From the control device 70, drive signals to the motors 32, 42, 52a, 52b and the like are output via the input / output interface.
  • FIG. 4 is a flowchart showing an example of a robot control process executed by the control device 70. This process is repeatedly executed at predetermined time intervals.
  • the CPU 71 of the control device 70 first acquires the target position of the hand (work holding unit 24) of the robot body 10 (step S100). Subsequently, the CPU 71 sets the angle ⁇ J1 of the first joint axis J1 and the angle ⁇ J2 of the second joint axis J2 for moving the hand to the target position by solving the inverse kinematics with respect to the target position of the hand.
  • the position (shaft position) Z s of the tip of the shaft 23 and the rotation angle (shaft angle) ⁇ J 4 of the shaft 23 are calculated (step S110).
  • Step S120 is performed by reading out the mass of the work W to be the work object this time among the masses of the plurality of types of work W stored (registered) in advance in the storage device 74. Then, the CPU 71 calculates the twist angle ⁇ t and the deflection angle ⁇ d1 of the first arm 21 based on the work mass m and the angle ⁇ J2 of the second joint axis J2 calculated in step S110 (step S130). , The deflection angle ⁇ d2 of the second arm 22 is calculated based on the work mass m (step S140).
  • the calculation of the twist angle ⁇ t of the first arm 21 is performed using the twist model formula (calculation formula) of the first arm 21.
  • the twist model formula of the first arm 21 includes the twist angle ⁇ t of the first arm 21, the angle ⁇ J2 of the second joint axis J2, and the arm mass M including the work mass m (work W after the first joint axis J1). It is a model formula showing the relationship with the mass of the arm portion including.
  • the calculation of the deflection angle ⁇ d1 of the first arm 21 is performed using the deflection model formula (calculation formula) of the first arm 21.
  • the deflection model formula of the first arm 21 includes the deflection angle ⁇ d1 of the first arm 21, the angle ⁇ J2 of the second joint axis J2, and the arm mass M including the work mass m (work W after the first joint axis J1). It is a model formula showing the relationship with the mass of the arm portion including.
  • the calculation of the deflection angle ⁇ d2 of the second arm 22 is performed using the deflection model formula of the second arm 22.
  • the deflection model formula of the second arm 22 describes the relationship between the deflection angle ⁇ d2 of the second arm 22 and the arm mass M including the work mass m (the mass of the arm portion including the work W after the second joint axis J2). It is a model formula to represent. These model formulas are stored in the storage device 74. The details of the twist model formula and each deflection model formula will be described later.
  • the CPU 71 has an angle ⁇ J1 of the first joint axis J1, an angle ⁇ J2 of the second joint axis J2, a shaft position Z s , a shaft angle ⁇ J4 , a twist angle ⁇ t of the first arm 21, and a deflection angle ⁇ d 1 .
  • the position (X 0 , Y 0 , Z 0 ) of the hand as seen from the base 11 (base coordinate system ⁇ 0 ) is calculated (X 0, Y 0, Z 0).
  • the position of the hand can be calculated by giving each variable ⁇ J1 , ⁇ J2 , ⁇ J4 , Z s , ⁇ t , ⁇ d1 , and ⁇ d 2 to the linear transformation matrix of forward kinematics.
  • the coordinate system of each link has a base coordinate system ⁇ 0 , a link coordinate system ⁇ 1 to ⁇ 3 , and a hand coordinate system ⁇ 4 .
  • the base coordinate system ⁇ 0 is set on the base 11.
  • the link coordinate system ⁇ 1 is set at the base of the first arm 21 (first joint axis J1).
  • the link coordinate system ⁇ 2 is set at the base of the second arm 22 (second joint axis J2).
  • the link coordinate system ⁇ 3 is set on the shaft 23.
  • the hand coordinate system ⁇ 4 is set in the hand (work holding unit 24).
  • the home position is a state in which the first arm 21 and the second arm 22 extend in a straight line.
  • X 0 , X 1 , X 2 , X 3 , and X 4 are the X axes of the respective coordinate systems.
  • Y 0 , Y 1 , Y 2 , Y 3 , and Y 4 are the Y axes of the respective coordinate systems.
  • Z 0 , Z 1 , Z 2 , Z 3 , and Z 4 are the Z axes of their respective coordinate systems.
  • th1 indicates the rotation angle of the link coordinate system ⁇ 1 around the Z 1 axis.
  • J1rx indicates the rotation angle of the link coordinate system ⁇ 1 around the X 1 axis
  • J1ry indicates the rotation angle of the link coordinate system ⁇ 1 around the Y 1 axis.
  • J1rx2 shows the rotation angle around the X1 axis in a state where the link coordinate system ⁇ 1 is rotated about the Z 1 axis by th1.
  • the link coordinate system ⁇ 1 is rotated about the Z1 axis by th1.
  • the angle of rotation around the Y 1 axis of the state is shown.
  • th2 indicates the rotation angle of the link coordinate system ⁇ 2 around the Z 2 axis.
  • J2rx indicates the rotation angle of the link coordinate system ⁇ 2 around the X 2 axis
  • J2ry indicates the rotation angle of the link coordinate system ⁇ 2 around the Y 2 axis.
  • J2ry2 indicates the rotation angle around the Y2 axis in a state where the link coordinate system ⁇ 2 is rotated th2 about the Z2 axis.
  • J3rx indicates the rotation angle of the link coordinate system ⁇ 3 around the X3 axis, and J3ry indicates the rotation angle of the link coordinate system ⁇ 3 around the Y3 axis.
  • th4 indicates the rotation angle of the hand coordinate system ⁇ 4 around the Z 4 axis.
  • L 1 indicates the distance between the Z 1 axis and the Z 2 axis in the X 1 axis direction (arm length of the first arm 21).
  • L 2 indicates the distance between the Z 2 axis and the Z 3 axis in the X 2 axis direction (arm length of the second arm 22).
  • L z 1 indicates the distance in the Z 0 axis direction from the origin of the base coordinate system ⁇ 0 to the origin of the link coordinate system ⁇ 1 .
  • L z 2 indicates the distance in the Z 1 axis direction from the origin of the link coordinate system ⁇ 1 to the origin of the link coordinate system ⁇ 2 .
  • d3 indicates the distance in the Z3 axis direction from the origin of the link coordinate system ⁇ 3 to the origin of the hand coordinate system ⁇ 4 .
  • FIG. 7 is an explanatory diagram showing an example of the link parameter table.
  • It is a parameter for converting to. dx, dy, and dz indicate the amount of movement of the coordinate system ⁇ i-1 in the X i-1 axis direction, the Y i-1 axis direction, and the Z i-1 axis direction.
  • rx (rx2), ry (ry2), and rz indicate the amount of rotation around the X i-1 axis, around the Y i-1 axis, and around the Z i-1 axis.
  • th1 corresponds to the rotation angle ⁇ J1 of the first joint axis J1
  • th2 corresponds to the rotation angle ⁇ J2 of the second joint axis J2
  • th4 corresponds to the rotation angle ⁇ J4 of the shaft 23.
  • .. d3 corresponds to the distance from the origin of the link coordinate system ⁇ 3 to the hand (shaft position Z s ).
  • J1rx2 corresponds to the twist angle ⁇ t of the first arm 21, and J1ry2 corresponds to the deflection angle ⁇ d1 of the first arm 21. J2ry2 corresponds to the deflection angle ⁇ d2 of the second arm 22.
  • the relationship (matrix) i -1 Ti between each coordinate system can be obtained by the following equation (2).
  • each matrix T dx , T dy , T dz , T rx , T ry , T rz , T rx2 , T ry2 of each matrix of dx, dy, dz, rx, ry , rz, rx2, ry2 is expressed by the following equation (3) to T ry2. Shown in (10).
  • the error factors of the hand include link length error, joint mounting error, joint rotation offset, joint tilt, and the like. Therefore, by giving these errors to the transformation matrix 0 T 4 , the position of the hand including the error can be calculated.
  • the CPU 71 calculates the position of the hand including the error in this way, the CPU 71 takes the difference between the position of the hand including the calculated error and the target position of the hand acquired in step S100, so that each axis (X in the base coordinate system ⁇ 0 ) The amount of misalignment of the hand on the 0 axis, the Y 0 axis, and the Z 0 axis) is calculated (step S160). Subsequently, the CPU 71 calculates the corrected position in which the target position is corrected by offsetting the target position by the amount of the misalignment of the hand (step S170).
  • the CPU 71 solves the inverse kinematics with respect to the corrected position, so that the target value of the angle ⁇ J1 of the first joint axis J1 and the target value of the angle ⁇ J2 of the second joint axis J2 and the shaft position Z s .
  • the target value and the target value of the shaft angle ⁇ J4 are calculated (step S180).
  • the CPU 71 controls the corresponding motor so that each target value matches the corrected target position (step S190), and ends the robot control process.
  • the twist angle ⁇ t of the first arm 21 is the displacement angle of the first arm 21 around the X 1 axis. Is defined as. Further, the deflection angle ⁇ d1 of the first arm 21 is defined as a displacement angle of the first arm 21 around the Y 1 axis, as shown in FIG. Further, the deflection angle ⁇ d2 of the second arm 22 is defined as the displacement angle of the second arm 22 around the Y2 axis.
  • FIG. 11 is an explanatory diagram showing an example of a procedure for creating a first arm twist model formula for creating a twist model formula for the first arm.
  • steps S200 to S290 are executed.
  • Step S200 controls the motor 32 so that the angle ⁇ J1 of the first joint axis J1 becomes 0 degrees (reference angle).
  • a weight m assuming a work W is attached to the hand (work holding portion 24), and as shown in FIG. 12, the second joint axis J2 is 90 degrees smaller than the reference angle (X1 axis direction) -90.
  • the motor 42 is controlled so as to rotate by a predetermined angle ⁇ J2 (for example, by 10 degrees) from a degree to +90 degrees, which is 90 degrees larger, in the Z1 axis direction at both ends of the tip of the first arm 21 at a reference angle (0 degrees).
  • a predetermined angle ⁇ J2 for example, by 10 degrees
  • the displacement in the Z1 axis direction (Z direction displacement Z tr , Z tl ) of both ends of the tip of the first arm 21 is measured.
  • the measurement target Pr and Pl are installed on both side surfaces of the tip of the first arm 21, respectively, and the measurement target Pr is used with a laser displacement meter.
  • step S220 the weight m attached to the hand (work holding portion 24) is sequentially changed, and the operation of measuring the Z-direction displacements Z tr and Z tl in step S210 is repeated for each weight m.
  • step S230 the average value Z rlave of the Z direction displacements Z tr and Z tl for each weight m and each angle ⁇ J2 of the second joint axis J2 is calculated by the following equation (11).
  • the angle ⁇ J2 for each weight m and the second joint axis J2 is obtained by subtracting the average value Z r lave from the Z-direction displacement Z tr and Z tl for each weight m and the angle ⁇ J2 of the second joint axis J2.
  • the measured value of the twist angle ⁇ t of the first arm 21 for each is derived.
  • the Z-direction displacements Z tr and Z tl at both ends of the tip of the first arm 21 measured in steps S210 and S220 include components due to the deflection of the first arm 21.
  • the average value Z rlave indicates the displacement in the Z direction on the center line of the first arm 21, and does not include the twist component.
  • Step S250 is an arm of the first joint axis J1 or later (from the first joint axis J1 to the tip side of the scalar arm 20) from the mass of the first arm 21, the second arm 22 and the shaft 23 and the mass of the hand (weight m).
  • the position L t of the center of gravity of the part (including the weight m) is calculated.
  • the Y1 axial component L t '( ⁇ J2 ) of the center of gravity position L t at the angle ⁇ J2 is calculated from the center of gravity position L t of the arm portion and the angle ⁇ J2 of the second joint axis J2 by the following equation (12). Calculated by As shown in FIG.
  • Step S270 calculates the moment of inertia It of the first arm 21.
  • the twisting moment It is intended to rotate the first arm 21 around the X 1 axis by the gravity of the arm portion (downward arrow in the figure ), and the center of gravity position L t is X.
  • the value is 0 when it is on one axis, and the value increases as the center of gravity L t moves away from the X 1 axis in the Y 1 axis direction.
  • Step S280 creates a twist model equation of the first arm 21 representing the relationship between the twist angle ⁇ t of the first arm 21, the angle ⁇ J2 of the second joint axis J2, and the mass M of the arm portion.
  • step S280 creates a torsion model equation determined by the following equation (14) obtained by dividing the moment of inertia I t by the torsional rigidity K t .
  • Step S290 optimizes the torsional rigidity K t from the measured values of the torsional angle ⁇ t of the first arm 21 for each weight m and the angle ⁇ J2 of the second joint axis J2 derived in step S240.
  • various algorithms for solving optimization problems such as the steepest descent method and the Newton-Raphson method can be adopted.
  • FIG. 18 is an explanatory diagram showing an example of a procedure for creating a first arm deflection model formula.
  • the procedure for creating the first arm deflection model formula is executed by steps S300 to S390.
  • Step S300 controls the motors 32 and 42 so that the angles ⁇ J1 and ⁇ J2 of the first joint axis J1 and the second joint axis J2 are 0 degrees (reference angle), respectively.
  • the first arm 21 and the second arm 22 are in a state of being extended along the X1 axis direction.
  • step S310 weights m having different masses assuming the work W are sequentially attached to the hand (work holding portion 24), and the position of the tip of the first arm 21 in the Z1 axis direction in a state where the weight is not attached to the hand is determined.
  • the displacement of the tip of the first arm 21 in the Z1 axis direction is measured for each weight m.
  • the bottom surface of the tip of the first arm 21 is set as the measurement target surface, and the laser is applied to the measurement target surface using a laser displacement meter to receive the reflected light. Can be done by.
  • the initial deflection angle which is the deflection angle ⁇ d1 of the first arm 21 when the weight m is not attached to the hand and the angle ⁇ J2 of the second joint axis J2 is 0 degree (reference angle).
  • the value obtained by multiplying the position of the center of gravity of the arm portion (position of the center of gravity on the X1 axis) after the first joint axis J1 (from the first joint axis J1 to the tip of the arm) and the mass of the arm portion (center of gravity position x arm mass) is When the value is 0 (zero gravity state), the first arm 21 is in a state of not bending at all. Therefore, as shown in FIG.
  • the initial deflection amount of the first arm 21 is the weight m with the position of the center of gravity ⁇ the arm mass as the x-axis and the Z-direction displacement Z d1 (the amount of deflection of the first arm 21) as the y-axis. It can be derived by plotting the combination data of each of them on an xy graph and obtaining the y-intercept in the extension line of the straight line connecting the plotted points (see the broken line in the figure).
  • the initial deflection angle of the first arm 21 can be obtained by applying an inverse tangent function to the derived initial deflection amount.
  • Step S330 controls the motor 42 so that the second joint axis J2 rotates by a predetermined angle ⁇ J2 (for example, by 10 degrees) from ⁇ 90 degrees to +90 degrees, and the first arm 21 at the reference angle (0 degrees)
  • a predetermined angle ⁇ J2 for example, by 10 degrees
  • the displacement of the tip of the first arm 21 in the Z 1 axis direction is measured every time the second joint axis J2 rotates by a predetermined angle ⁇ J2 . do.
  • step S330 weights m having different masses assuming a work W are sequentially attached to the hand, and the Z-direction displacement Z d1 is measured each time the second joint axis J2 rotates by a predetermined angle ⁇ J2 for each weight m. repeat.
  • each angle displacement was obtained by applying an inverse tangent function to the Z direction displacement Z d1 (deflection amount) measured for each weight m and each angle ⁇ J2 of the second joint axis J2.
  • the measured values of the deflection angle ⁇ d1 for each weight m and for each angle ⁇ J2 of the second joint axis J2 are derived as shown in FIG.
  • Step S350 is an arm of the first joint axis J1 or later (from the first joint axis J1 to the tip side of the scalar arm 20) from the mass of the first arm 21, the second arm 22 and the shaft 23 and the mass of the hand (weight m).
  • Step S360 the X1 axial component L d1 '( ⁇ J2 ) of the center of gravity position L d1 at the angle ⁇ J2 is obtained from the center of gravity position L d1 of the arm portion and the angle ⁇ J2 of the second joint axis J2 by the following equation (15). Calculated by As shown in FIG.
  • the X 1 axis direction component L d1 '( ⁇ J2 ) of the center of gravity position L d1 is the center of gravity position L d1 with respect to the Y 1'axis that passes through the center of the second joint axis J2 and is parallel to the Y 1 axis . Indicates the distance in the X1 axis direction of.
  • Step S370 calculates the moment of inertia I d1 of the first arm 21.
  • the moment of inertia I d1 attempts to rotate the first arm 21 around the Y 1 axis by the gravity of the arm portion (downward arrow in the figure) as shown in FIG. 23, and the center of gravity.
  • the position L d1 increases as the distance from the first joint axis J1 in the X1 axis direction. That is, the deflection moment I d1 is the minimum when the angle of the second joint axis J2 is ⁇ 180 degrees, and is maximum when the angle of the second joint axis J2 is 0 degrees (reference angle).
  • the moment of inertia I d1 can be obtained by the following equation (16) when the arm length of the first arm 21 is L 1 , the mass of the arm portion is M, and the gravitational acceleration is g.
  • Step S380 creates a deflection model equation for the first arm 21 that represents the relationship between the deflection angle ⁇ d1 of the first arm 21, the angle ⁇ J2 of the second joint axis J2, and the mass M of the arm portion. Specifically, step S380 creates a model equation determined by the following equation (17) obtained by dividing the moment of inertia I d1 by the deflection rigidity K d1 . Step S390 optimizes the deflection rigidity K d1 from the measured values of the deflection angle ⁇ d1 of the first arm 21 for each weight m and the angle ⁇ J2 of the second joint axis J2 derived in step S340. In this step S390, various algorithms for solving optimization problems such as the steepest descent method and the Newton-Raphson method can be adopted, as in the case of the torsional rigidity K t .
  • various algorithms for solving optimization problems such as the steepest descent method and the Newton-Raphson method can be adopted, as in
  • FIG. 24 is an explanatory diagram showing an example of a procedure for creating a second arm deflection model formula.
  • the procedure for creating the second arm deflection model formula is executed in steps S400 to S460.
  • step S400 weights m having different masses assuming a work W are sequentially attached to the hand, and each weight m is based on the position of the tip of the second arm 22 in the Z1 axis direction in a state where the weight is not attached to the hand.
  • the displacement of the tip of the second arm 22 in the Z 1 axis direction (Z direction displacement Z d2 ) is measured. In the measurement of step S400, as shown in FIG.
  • step S410 sets an initial deflection angle, which is a deflection angle of the second arm 22 in a state where the weight m is not attached to the hand.
  • the initial deflection amount of the second arm 22 is the same as in step S320 described above, with the center of gravity position ⁇ arm mass as the x-axis and the deflection amount of the second arm 22 (displacement Z d2 in the Z direction) as the y-axis for each weight m.
  • the initial deflection angle of the second arm 22 can be obtained by applying an inverse tangent function to the derived initial deflection amount.
  • each angle displacement is obtained by applying an inverse tangent function to each Z-direction displacement Z d2 (deflection amount) measured for each weight m, and each angle displacement obtained is set as the initial deflection angle in step S410.
  • the measured value of the deflection angle ⁇ d2 of the second arm 22 for each weight m (hand mass) is derived.
  • the deflection angle ⁇ d2 of the second arm 22 is an angle with respect to the X 1 axis, and since the deflection angle ⁇ d1 of the first arm 21 is superimposed, the deflection of the first arm 21 obtained in step S340 is obtained.
  • the deflection angle ⁇ d2 of the second arm 22 with respect to the X 2 axis can be obtained.
  • step S430 the arm portion (weight m) of the second joint axis J2 or later (from the second joint axis J2 to the tip side of the scalar arm 20) is obtained from the mass of the second arm 22 and the shaft 23 and the mass of the hand (weight m). Includes)'s center of gravity position L d2 is calculated.
  • step S440 calculates the deflection moment Id2 of the second arm 22. As shown in FIG. 26, the deflection moment Id2 is the center of gravity position L d2 (distance from the center of the second joint axis J2 to the center of gravity) and the mass of the arm portion regardless of the angle ⁇ d2 of the second joint axis J2. Determined by.
  • the deflection moment Id2 can be obtained by the following equation (18) when the mass of the arm portion is M and the gravitational acceleration is g.
  • the deflection model equation of the second arm 22 showing the relationship between the deflection angle ⁇ d2 of the second arm 22 and the mass M of the arm portion is obtained by the following equation (19) obtained by dividing the deflection moment Id2 by the deflection rigidity K d2 . create.
  • Step S460 optimizes the deflection rigidity K d2 from the measured value of the deflection angle ⁇ d2 of the second arm 22 for each weight m obtained in step S420.
  • various algorithms for solving optimization problems such as the steepest descent method and the Newton-Raphson method can be adopted, as in the case of the torsional rigidity K t and the deflection rigidity K d1 .
  • the first arm 21 corresponds to the first arm
  • the first joint axis J1 corresponds to the first axis
  • the second arm 22 corresponds to the second arm
  • the second joint axis J2 corresponds to the first arm.
  • the shaft 23 corresponds to the shaft
  • the third joint axis J3 corresponds to the third axis
  • the CPU 71 of the control device 70 that executes the processes of S180 and S190 of the robot control process of FIG. 4 controls.
  • the storage device 74 corresponds to the storage unit
  • the CPU 71 that executes the processes of S100 to S170 of the robot control process of FIG. 4 corresponds to the correction unit.
  • the work holding portion 24 corresponds to the work holding portion.
  • the control device 70 calculates the twist angle ⁇ t of the first arm 21 based on the angle ⁇ J2 of the second joint axis J2 by using the twist model formula stored in advance in the storage device 74. , It was decided to correct the misalignment of the hand based on the calculated twist angle ⁇ t .
  • the control device 70 has a twist correction value based on the relationship between the twist angle ⁇ t of the first arm 21 and the angle ⁇ J2 of the second joint axis J2 or the twist angle ⁇ t of the first arm 21, and the second joint axis J2.
  • a map showing the relationship with the angle ⁇ J2 may be stored in advance, and the twist correction value may be derived from the map based on the angle ⁇ J2 of the second joint axis J2.
  • the control device 70 uses the deflection model formula of the first arm 21 stored in the storage device 74 in advance, and the deflection angle ⁇ d1 of the first arm 21 based on the angle ⁇ J2 of the second joint axis J2. was calculated, and the misalignment of the hand was corrected based on the calculated deflection angle ⁇ d1 .
  • the control device 70 has a relationship between the deflection angle ⁇ d1 of the first arm 21 and the angle ⁇ J2 of the second joint axis J2, or the deflection correction value and the second joint axis J2 based on the deflection angle ⁇ d1 of the first arm 21.
  • a map showing the relationship with the angle ⁇ J2 may be stored in advance, and the deflection correction value may be derived from the map based on the angle ⁇ J2 of the second joint axis J2. Further, the control device 70 uses a deflection model formula stored in advance in the storage device 74 to bend angles ⁇ d1 and ⁇ d2 of the first arm 21 and the second arm 22 based on the hand mass m (weight of the work W). Was calculated, and the displacement of the hand was corrected by the deflection correction value based on the calculated deflection angles ⁇ d1 and ⁇ d2 .
  • the relationship between the deflection angles ⁇ d1 and ⁇ d2 of the first arm 21 and the second arm 22 and the hand mass m (weight of the work W) or the deflection of the first arm 21 and the second arm 22 is stored in advance, and the deflection correction value is derived from the map based on the hand mass m. You may do so.
  • the SCARA robot system of the present disclosure is provided on a base, a first arm provided on the base and rotating around a first axis, and the first arm provided on the first axis.
  • a second arm that rotates around a second axis parallel to the second arm, a shaft that moves in the axial direction of the third axis parallel to the second arm with respect to the second arm, and the first arm and the second arm.
  • a control unit that controls the operation of the arm and the shaft, and a storage that stores the twist correction coefficient of the first arm based on the rotation angle around the arm of the first arm corresponding to the rotation position of the second arm.
  • the gist is to include a unit and a correction unit that corrects the horizontal position of the shaft tip using the twist correction coefficient.
  • the SCARA robot system of the present disclosure has a first arm provided on a base and rotating around a first axis, and a second arm provided on the first arm and rotating around a second axis parallel to the first axis. It includes two arms, a shaft that moves in the axial direction of the third axis parallel to the second arm, a control unit that controls these operations, a storage unit, and a correction unit.
  • the storage unit stores the twist correction coefficient of the first arm based on the rotation angle around the arm of the first arm corresponding to the rotation position of the second arm.
  • the correction unit corrects the horizontal position of the tip of the shaft by using the twist correction coefficient.
  • the SCARA robot system stores in advance the twist correction coefficient of the first arm based on the rotation angle around the arm of the first arm corresponding to the rotation position of the second arm in the storage unit, and reflects this as a correction value. .. This makes it possible to obtain a SCARA robot system capable of satisfactorily correcting the misalignment of the hand due to the twist around the arm of the first arm regardless of the rotation position of the second arm.
  • the correction unit that corrects the movement amount of the shaft by using the twist correction coefficient may be provided.
  • the storage unit that stores the first deflection amount of the first arm and the second deflection amount of the second arm corresponding to the rotation position of the second arm, and the said.
  • the correction unit that performs the correction using the first deflection amount and the second deflection amount may be provided. By doing so, it is possible to satisfactorily correct the misalignment of the tip of the shaft based on the deflection of the first arm regardless of the rotational position of the second arm.
  • the shaft has a work holding portion for holding a work, and the twist correction coefficient corresponding to the weight of the work and the first deflection corresponding to the weight of the work. It may be provided with the storage unit for storing the amount and the second deflection amount. By doing so, even when various workpieces having different weights are held by the workpiece holding portion, the misalignment of the hand can be satisfactorily corrected.
  • the storage unit that stores the model formula of the twist correction coefficient, the model formula of the first deflection amount, and the model formula of the second deflection amount, and the model of the twist correction coefficient. It may be provided with the correction unit that performs the correction using the formula, the model formula of the first deflection amount, and the model formula of the second deflection amount. By doing so, it is possible to reduce the required storage capacity of the storage unit as compared with the case where the correction is performed using the map.
  • the present disclosure is in the form of a SCARA robot system, it may be in the form of an arm position deviation correction method.
  • This disclosure can be used in the SCARA robot manufacturing industry and the like.
  • 1 SCARA robot system 2 work table, 10 robot body, 11 base, 20 articulated arm, 21 1st arm, 22 2nd arm, 23 shaft, 24 work holding part, 30 1st arm drive part, 32 motor, 34 encoder, 40 second arm drive unit, 42 motor, 44 encoder, 50 shaft drive unit, 52a, 52b motor, 54a, 54b encoder, 60 camera, 70 control device, 71 CPU, 72 ROM, 73 RAM, 74 storage device. , J1 1st joint axis, J2 2nd joint axis, J3 3rd joint axis, Pl, Pr Measurement target.

Landscapes

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

Abstract

スカラロボットシステムは、基台と、記基台に設けられ第1軸周りに回動する第1アームと、第1アームに設けられ第1軸と平行な第2軸周りに回動する第2アームと、第2アームに対して第2軸と平行な第3軸の軸方向に移動するシャフトと、第1アームと第2アームとシャフトとの動作を制御する制御部と、第2アームの回動位置に対応する第1アームのアーム周りの回転角に基づく第1アームのねじれ補正係数を記憶する記憶部と、ねじれ補正係数を用いてシャフト先端の水平方向の位置を補正する補正部と、を備える。

Description

スカラロボットシステム
 本明細書は、スカラロボットシステムについて開示する。
 従来、ロボットのたわみを補正してアーム先端の位置や姿勢のずれを補正するたわみ補正装置が提案されている(例えば、特許文献1参照)。たわみ補正装置は、ロボットの動作領域内の複数の位置において、重量、重心位置の異なる複数の荷重条件下で、アーム先端の位置や姿勢のずれを表わすたわみ量を測定し、たわみ量データとして記憶する。続いて、たわみ補正装置は、使用ツールの重量、重心位置が近いたわみ量データを指定し、ロボットの動作プログラムの各教示点位置におけるたわみ量を、指定したたわみ量データを用いて算出する。そして、たわみ補正装置は、動作プログラムの各教示点位置を、算出したたわみ量分補正して変更する。
 また、ベースに固定されたJ1軸に対して水平面内で旋回可能な第1アームと、第1アームに固定されたJ2軸に対して水平面内で旋回可能な第2アームと、第2アームの先端部に有するJ3軸の軸方向に移動可能なシャフトと、を備えるスカラロボットにおいて、第1アーム系の誤差として、アームのねじれによる角度誤差が含まれ、第2アーム系の誤差として、アームのねじれによる角度誤差が含まれるものも提案されている(例えば、特許文献2参照)。
特開2004-299010号公報 特開2012-6125号公報
 第1軸周りに回動する第1アームと、第1アームに設けられて第1軸と平行な第2軸周りに回動する第2アームと、第2アームに対して第2軸と平行な第3軸の軸方向に移動するシャフトとを備えるスカラロボットにおいては、第2アームの回動により第1アームと第2アームとを含むアーム部の重心位置が移動する。重心位置に第1アームの延在方向に直交する成分が含まれると、第1アームのアーム周りにモーメントが生じて第1アームがねじれ、シャフト先端(手先)の位置精度が悪化するおそれがある。
 本開示は、第2アームが回動位置に拘らず第1アームのアーム周りのねじれに基づく手先の位置ずれを良好に補正することができるスカラロボットシステムを提供することを主目的とする。
 本開示のスカラロボットシステムは、上述の主目的を達成するために以下の手段を採った。
 本開示のスカラロボットシステムは、
 基台と、
 前記基台に設けられ、第1軸周りに回動する第1アームと、
 前記第1アームに設けられ、前記第1軸と平行な第2軸周りに回動する第2アームと、
 前記第2アームに対して前記第2軸と平行な第3軸の軸方向に移動するシャフトと、
 前記第1アームと前記第2アームと前記シャフトとの動作を制御する制御部と、
 前記第2アームの回動位置に対応する前記第1アームのアーム周りの回転角に基づく、前記第1アームのねじれ補正係数を記憶する記憶部と、
 前記ねじれ補正係数を用いて前記シャフト先端の水平方向の位置を補正する補正部と、
 を備えることを要旨とする。
 この本開示のスカラロボットシステムは、基台に設けられて第1軸周りに回動する第1アームと、第1アームに設けられた第1軸と平行な第2軸周りに回動する第2アームと、第2アームに対して第2軸と平行な第3軸の軸方向に移動するシャフトと、これらの動作を制御する制御部と、記憶部と、補正部と、を備えるものである。記憶部は、第2アームの回動位置に対応する第1アームのアーム周りの回転角に基づく第1アームのねじれ補正係数を記憶する。補正部は、ねじれ補正係数を用いて前記シャフト先端の水平方向の位置を補正する。第1アームと第2アームとを含むアーム部の重心位置に、第1アームの延在方向に直交する成分が含まれると、第1アームのアーム周りにモーメントが生じて第1アームにねじれが生じる。スカラロボットシステムは、予め第2アームの回動位置に対応する第1アームのアーム周りの回転角に基づく第1アームのねじれ補正係数を記憶部に記憶しておき、これを補正値として反映させる。これにより、第2アームが回動位置に拘らず第1アームのアーム周りのねじれに基づく手先の位置ずれを良好に補正することができるスカラロボットシステムとすることができる。
スカラロボットシステムの外観斜視図である。 ロボット本体の側面図である。 ロボット本体と制御装置との電気的な接続関係を示すブロック図である。 ロボット制御処理の一例を示すフローチャートである。 ロボットの座標系を説明する説明図である。 ロボットの座標系を説明する説明図である。 リンクパラメータ表の一例を示す説明図である。 第1関節軸J1に設定されるリンク座標系Σ1のX1およびY1軸を説明する説明図である。 第2アームの水平旋回により第1アームに対して生じるねじれを説明する説明図である。 手先質量により第1アームおよび第2アームに対して生じるたわみを説明する説明図である。 第1アームねじれモデル式作成手順の一例を示す説明図である。 第2アームを-90度から+90度まで水平旋回する様子を示す説明図である。 第1アームの先端部両端におけるZ方向変位を測定する様子を示す説明図である。 第1アームの先端部両端におけるZ方向変位を測定する様子を示す説明図である。 第1アームの先端部両端におけるZ方向変位の測定値からたわみ成分を除去する様子を示す説明図である。 アーム部の重心位置のY1軸方向成分Lt’を説明する説明図である。 第1アームに生じるねじれモーメントを説明する説明図である。 第1アームたわみモデル式作成手順の一例を示す説明図である。 多関節アームの手先に重りmを付けた際の第1アームおよび第2アームの各先端部のZ方向変位を測定する様子を示す説明図である。 第1アームのたわみ量と重心位置×アーム質量との関係を示す説明図である。 重り毎の第1アームのたわみ角度とJ2角度との関係を示す説明図である。 アーム部の重心位置のX1軸方向成分Ld1’を説明する説明図である。 第1アームに生じるたわみモーメントを説明する説明図である。 第2アームたわみモデル式作成手順の一例を示す説明図である。 第2アームのたわみ角度と手先質量との関係を示す説明図である。 アーム部の重心位置Ld2を説明する説明図である。
 次に、本開示を実施するための形態について図面を参照しながら説明する。
 図1は、スカラロボットシステムの外観斜視図である。図2は、ロボット本体の側面図である。図3は、ロボット本体と制御装置との電気的な接続関係を示すブロック図である。
 スカラロボットシステム1は、ワークWに対して所定の作業(例えば、ワークWを搬送する搬送作業や、ワークWを組み付ける組付け作業など)を行なうものとして構成されている。スカラロボットシステム1は、ロボット本体10(図1~図3参照)と、ロボット本体10を制御する制御装置70(図3参照)と、を備える。ロボット本体10は、図1,図2に示すように、基台11とスカラアーム20とを備える。
 基台11は、作業台2に固定されており、スカラアーム20の基端側を支持する。スカラアーム20は、第1アーム21と第1アーム駆動部30と第2アーム22と第2アーム駆動部40とシャフト23とシャフト駆動部50とカメラ60とを備える。第1アーム21は、基端部が第1関節軸J1を介して基台11に連結され、第1関節軸J1の回動により基台11に対して水平面内で回動(水平旋回)可能に構成される。第2アーム22は、基端部が第2関節軸J2を介して第1アーム21の先端部に連結され、第2関節軸J2の回動により第1アーム21に対して水平面内で回動(水平旋回)可能に構成される。シャフト23は、第2アーム22の先端部に第3関節軸J3を介して連結され、第2アーム22に対して第3関節軸J3の軸周りに回転可能かつ第3関節軸J3の軸方向に沿って昇降可能に構成される。本実施形態のスカラロボットシステムでは、シャフト23の先端には、ワークWをピックアップして保持するワーク保持部24が設けられている。
 第1アーム駆動部30は、図3に示すように、モータ32とエンコーダ34とを備える。モータ32の回転軸は、図示しない減速機を介して第1関節軸J1に連結されている。第1アーム駆動部30は、モータ32を駆動することにより減速機を介して第1関節軸J1に伝達されるトルクにより、第1関節軸J1を支点に第1アーム21を回動させる。エンコーダ34は、モータ32の回転軸に取り付けられ、モータ32の回転変位量を検出するロータリエンコーダとして構成される。
 第2アーム駆動部40は、第1アーム駆動部30と同様に、モータ42とエンコーダ44とを備える。モータ42の回転軸は、図示しない減速機を介して第2関節軸J2に連結されている。第2アーム駆動部40は、モータ42を駆動することにより減速機を介して第2関節軸J2に伝達されるトルクにより、第2関節軸J2を支点に第2アーム22を回動させる。エンコーダ44は、モータ42の回転軸に取り付けられ、モータ42の回転変位量を検出するロータリエンコーダとして構成される。
 シャフト駆動部50は、図3に示すように、モータ52a,52bとエンコーダ54a,54bとを備える。モータ52aの回転軸は、ベルト(図示せず)を介してシャフト23に接続され、シャフト23を軸周りに回転させる。モータ52bの回転軸は、シャフト23を貫通するボールねじナット(図示せず)にベルトを介して接続され、シャフト23を上下に昇降させる。エンコーダ54aは、シャフト23の回転変位量を検出するロータリエンコーダとして構成される。エンコーダ54bは、シャフト23の昇降位置を検出するリニアエンコーダとして構成される。
 カメラ60は、第2アーム22の先端部側面に取り付けられている。カメラ60は、作業対象のワークWを撮像し、その撮像画像を制御装置70へ出力する。制御装置70は、撮像画像を処理することによりワークWの位置を認識する。
 制御装置70は、図3に示すように、CPU71と、処理プログラムを記憶するROM72と、ワークメモリとしてのRAM73と、HDDやSSD等の記憶装置74と、入出力インタフェース(図示せず)とを備える。制御装置70には、エンコーダ34,44,54a,54bからの位置信号やカメラ60からの画像信号などが入出力インタフェースを介して入力されている。制御装置70からは、モータ32,42,52a,52bへの駆動信号などが入出力インタフェースを介して出力されている。
 次に、こうして構成されたスカラロボットシステム1の動作について説明する。図4は、制御装置70により実行されるロボット制御処理の一例を示すフローチャートである。この処理は、所定時間毎に繰り返し実行される。
 ロボット制御処理が実行されると、制御装置70のCPU71は、まず、ロボット本体10の手先(ワーク保持部24)の目標位置を取得する(ステップS100)。続いて、CPU71は、手先の目標位置に対して逆運動学を解くことにより、手先を目標位置に移動させるための第1関節軸J1の角度θJ1と第2関節軸J2の角度θJ2とシャフト23の先端の位置(シャフト位置)Zsとシャフト23の回転角度(シャフト角度)θJ4とを算出する(ステップS110)。
 次に、CPU71は、ワーク質量mを取得する(ステップS120)。ステップS120は、記憶装置74に予め記憶(登録)された複数種のワークWの質量のうち今回の作業対象物となるワークWの質量を読み出すことにより行なわれる。そして、CPU71は、ワーク質量mとステップS110で算出した第2関節軸J2の角度θJ2とに基づいて第1アーム21のねじれ角度θtとたわみ角度θd1とを算出すると共に(ステップS130)、ワーク質量mに基づいて第2アーム22のたわみ角度θd2を算出する(ステップS140)。第1アーム21のねじれ角度θtの算出は、第1アーム21のねじれモデル式(演算式)を用いて行なわれる。第1アーム21のねじれモデル式は、第1アーム21のねじれ角度θtと、第2関節軸J2の角度θJ2と、ワーク質量mを含むアーム質量M(第1関節軸J1以降のワークWを含むアーム部の質量)との関係を表すモデル式である。第1アーム21のたわみ角度θd1の算出は、第1アーム21のたわみモデル式(演算式)を用いて行なわれる。第1アーム21のたわみモデル式は、第1アーム21のたわみ角度θd1と、第2関節軸J2の角度θJ2と、ワーク質量mを含むアーム質量M(第1関節軸J1以降のワークWを含むアーム部の質量)との関係を表すモデル式である。第2アーム22のたわみ角度θd2の算出は、第2アーム22のたわみモデル式を用いて行なわれる。第2アーム22のたわみモデル式は、第2アーム22のたわみ角度θd2と、ワーク質量mを含むアーム質量M(第2関節軸J2以降のワークWを含むアーム部の質量)との関係を表すモデル式である。これらのモデル式は、記憶装置74に記憶されている。ねじれモデル式や各たわみモデル式の詳細については後述する。
 そして、CPU71は、第1関節軸J1の角度θJ1と第2関節軸J2の角度θJ2とシャフト位置Zsとシャフト角度θJ4と第1アーム21のねじれ角度θtおよびたわみ角度θd1と第2アーム22のたわみ角度θd2とに基づいて順運動学を解くことにより基台11(ベース座標系Σ0)から見た手先の位置(X0,Y0,Z0)を算出する(ステップS150)。手先の位置は、順運動学の同次変換行列に各変数θJ1,θJ2,θJ4,Zs,θt,θd1,θd2を与えることにより算出することができる。順運動学の同次変換行列は、例えば、ロボット本体10の各リンクに座標系を設定し、リンクパラメータ表を作成して各座標系間の関係i-1i(i=1,2,3,4)を求め、各座標系間の関係i-1iからアーム全体の変換行列04を求めることにより導き出すことができる。
 各リンクの座標系は、図5および図6に示すように、ベース座標系Σ0とリンク座標系Σ1~Σ3とハンド座標系Σ4とを有する。ベース座標系Σ0は、基台11に設定される。リンク座標系Σ1は、第1アーム21の根元(第1関節軸J1)に設定される。リンク座標系Σ2は、第2アーム22の根元(第2関節軸J2)に設定される。リンク座標系Σ3は、シャフト23に設定される。ハンド座標系Σ4は、手先(ワーク保持部24)に設定される。各座標系は、第1アーム21および第2アーム22が一直線状に伸びた状態をホームポジションとする。また、図中、X0,X1,X2,X3,X4は、それぞれの座標系のX軸である。Y0,Y1,Y2,Y3,Y4は、それぞれの座標系のY軸である。Z0,Z1,Z2,Z3,Z4は、それぞれの座標系のZ軸である。th1は、リンク座標系Σ1のZ1軸周りの回転角を示す。J1rxは、リンク座標系Σ1のX1軸周りの回転角を示し、J1ryは、リンク座標系Σ1のY1軸周りの回転角を示す。さらに、J1rx2は、リンク座標系Σ1がZ1軸周りにth1だけ回転した状態のX1軸周りの回転角を示し、J1ry2は、リンク座標系Σ1がZ1軸周りにth1だけ回転した状態のY1軸周りの回転角を示す。th2は、リンク座標系Σ2のZ2軸周りの回転角を示す。J2rxは、リンク座標系Σ2のX2軸周りの回転角を示し、J2ryは、リンク座標系Σ2のY2軸周りの回転角を示す。さらに、J2ry2は、リンク座標系Σ2がZ2軸周りにth2回転した状態のY2軸周りの回転角を示す。J3rxは、リンク座標系Σ3のX3軸周りの回転角を示し、J3ryは、リンク座標系Σ3のY3軸周りの回転角を示す。th4は、ハンド座標系Σ4のZ4軸周りの回転角を示す。また、L1は、Z1軸とZ2軸とのX1軸方向の距離(第1アーム21のアーム長)を示す。L2は、Z2軸とZ3軸とのX2軸方向の距離(第2アーム22のアーム長)を示す。Lz1は、ベース座標系Σ0の原点からリンク座標系Σ1の原点までのZ0軸方向の距離を示す。Lz2は、リンク座標系Σ1の原点からリンク座標系Σ2の原点までのZ1軸方向の距離を示す。d3は、リンク座標系Σ3の原点からハンド座標系Σ4の原点までのZ3軸方向の距離を示す。
 図7は、リンクパラメータ表の一例を示す説明図である。図中、リンク番号i(i=1,2,3,4)の各パラメータ(dx、dy、dz、rx、ry、rz、rx2、ry2)は、座標系Σi-1から座標系Σiへ変換するためのパラメータである。dx,dy,dzは、座標系Σi-1のXi-1軸方向,Yi-1軸方向,Zi-1軸方向の移動量を示す。rx(rx2),ry(ry2),rzは、Xi-1軸周り,Yi-1軸周り,Zi-1軸周りの回転量を示す。表中、th1は、第1関節軸J1の回転角θJ1に相当し、th2は、第2関節軸J2の回転角θJ2に相当し、th4は、シャフト23の回転角θJ4に相当する。d3は、リンク座標系Σ3の原点から手先(シャフト位置Zs)までの距離に相当する。また、J1rx2は、第1アーム21のねじれ角度θtに相当し、J1ry2は、第1アーム21のたわみ角度θd1に相当する。J2ry2は、第2アーム22のたわみ角度θd2に相当する。
 アーム全体の変換行列04は、リンクパラメータ表による各座標系間の関係i-1i(i=1,2,3,4)を用いて次式(1)により求めることができる。各座標系間の関係(行列)i-1iは、次式(2)により求めることができる。なお、dx,dy,dz,rx,ry,rz,rx2,ry2の各行列Tdx,Tdy,Tdz,Trx,Try,Trz,Trx2,Try2を次式(3)~(10)に示す。この変換行列04(同次変換行列)に各変数θJ1,θJ2,θJ4,Zs,θt,θd1,θd2を与えることにより、第1アーム21のねじれ及びたわみと第2アーム22のたわみとに起因した誤差を含んだ手先の位置を計算することができる。
Figure JPOXMLDOC01-appb-M000001
Figure JPOXMLDOC01-appb-I000002
 なお、手先の誤差要因には、ねじれ角度θtやたわみ角度θd1,θd2の他に、リンク長誤差や関節取付誤差、関節回転オフセット、関節傾き等も含まれる。したがって、これらの誤差についても、変換行列04に与えることで、当該誤差を含んだ手先の位置を計算することができる。
 CPU71は、こうして誤差を含む手先の位置を算出すると、算出した誤差を含む手先の位置とステップS100で取得した手先の目標位置との差分をとることにより、各軸(ベース座標系Σ0におけるX0軸、Y0軸およびZ0軸)における手先の位置ずれ量を算出する(ステップS160)。続いて、CPU71は、目標位置を手先の位置ずれ量の分だけオフセットすることにより目標位置を補正した補正後位置を算出する(ステップS170)。次に、CPU71は、補正後位置に対して逆運動学を解くことにより第1関節軸J1の角度θJ1の目標値と第2関節軸J2の角度θJ2の目標値とシャフト位置Zsの目標値とシャフト角度θJ4の目標値とを算出する(ステップS180)。そして、CPU71は、各目標値が補正後目標位置に一致するよう対応するモータを制御して(ステップS190)、ロボット制御処理を終了する。
 次に、第1アーム21のねじれ角度θtの算出に用いられるねじれモデル式を作成する手順と、第1アーム21のたわみ角度θd1の算出に用いられるたわみモデル式を作成する手順について説明する。ここで、図8および図9に示すように、第1関節軸J1の延在方向をZ1軸方向とし、第1アーム21の中心線に沿った方向をX1軸方向とし、X1軸およびZ1軸に直交する方向をY1軸方向とした上述したリンク座標系Σ1を考えた場合、第1アーム21のねじれ角度θtは、第1アーム21のX1軸周りの変位角度として定義される。また、第1アーム21のたわみ角度θd1は、図10に示すように、第1アーム21のY1軸周りの変位角度として定義される。さらに、第2アーム22のたわみ角度θd2は、第2アーム22のY2軸周りの変位角度として定義される。
 図11は、第1アームのねじれモデル式を作成する第1アームねじれモデル式作成手順の一例を示す説明図である。第1アームねじれモデル式作成手順では、ステップS200~S290により実行される。ステップS200は、第1関節軸J1の角度θJ1が0度(基準角)となるようにモータ32を制御する。ステップS210は、手先(ワーク保持部24)にワークWを想定した重りmを取り付け、図12に示すように第2関節軸J2が基準角(X1軸方向)に対して90度小さい-90度から90度大きい+90度まで所定角度ΔθJ2ずつ(例えば10度ずつ)回転するようにモータ42を制御し、基準角(0度)における第1アーム21の先端部両端のZ1軸方向における位置を基準として、第2関節軸J2が所定角度ΔθJ2回転する毎に第1アーム21の先端部両端のZ1軸方向における変位(Z方向変位Ztr,Ztl)を測定する。なお、ステップS210の測定は、図13および図14に示すように、第1アーム21の先端部の両側面にそれぞれ測定対象物Pr,Plを設置し、レーザ変位計を用いて測定対象物Pr,Plにそれぞれ下方からレーザを当てて反射光を受光することにより行なうことができる。ステップS220は、手先(ワーク保持部24)に取り付ける重りmを順次変えて、重りm毎に、ステップS210のZ方向変位Ztr,Ztlを測定する動作を繰り返す。次のステップS230は、重りm毎および第2関節軸J2の角度θJ2毎のZ方向変位Ztr,Ztlの平均値Zrlaveを次式(11)により算出する。続くステップS240は、重りm毎および第2関節軸J2の角度θJ2毎にZ方向変位Ztr,Ztlから平均値Zrlaveを減じることにより重りm毎および第2関節軸J2の角度θJ2毎の第1アーム21のねじれ角度θtの実測値を導出する。ここで、ステップS210,S220で測定される第1アーム21の先端部両端のZ方向変位Ztr,Ztlには、第1アーム21のたわみによる成分が含まれる。一方、平均値Zrlaveは、第1アーム21の中心線上のZ方向変位を示し、ねじれ成分は含まれない。したがって、図15に示すように、第2関節軸J2の角度θJ2毎にZ方向変位Ztr,Ztlから平均値Zrlaveをそれぞれ減算することにより、Z方向変位Ztr,Ztlからたわみ成分を除去することができる。
Figure JPOXMLDOC01-appb-M000003
 ステップS250は、第1アーム21、第2アーム22およびシャフト23の質量と手先(重りm)の質量とから第1関節軸J1以降(スカラアーム20の第1関節軸J1から先端側)のアーム部(重りmを含む)の重心位置Ltを算出する。ステップS260は、アーム部の重心位置Ltと第2関節軸J2の角度θJ2とから角度θJ2における重心位置LtのY1軸方向成分Lt’(θJ2)を次式(12)により算出する。重心位置LtのY1軸方向成分Lt’(θJ2)は、図16に示すように、重心位置LtのX1軸に対するY1軸方向における距離を示す。ステップS270は、第1アーム21のねじれモーメントItを算出する。ねじれモーメントItは、図17に示すように、アーム部の重力(図中、下向き矢印)により第1アーム21をX1軸周りに回転させようとするものであり、重心位置LtがX1軸上にあるときには値0であり、重心位置LtがX1軸からY1軸方向に離れるにつれて大きくなる。すなわち、ねじれモーメントItは、第2関節軸J2の角度θJ2が0度(基準角)のときに最小となり、第2関節軸J2の角度が-90度のときと+90度のときに最大となる。ねじれモーメントItは、重りmを含むアーム部の質量をMとし、重力加速度をgとしたとき、次式(13)により求めることができる。ステップS280は、第1アーム21のねじれ角度θtと第2関節軸J2の角度θJ2とアーム部の質量Mとの関係を表わす第1アーム21のねじれモデル式を作成する。具体的には、ステップS280は、ねじれモーメントItをねじれ剛性Ktで除した次式(14)により定まるねじれモデル式を作成する。ステップS290は、ステップS240で導出した重りm毎および第2関節軸J2の角度θJ2毎の第1アーム21のねじれ角度θtの実測値からねじれ剛性Ktを最適化する。このステップS290は、最急降下法やニュートンラフソン法などの最適化問題を解くための種々のアルゴリズムを採用することができる。
Figure JPOXMLDOC01-appb-M000004
 図18は、第1アームたわみモデル式作成手順の一例を示す説明図である。第1アームたわみモデル式作成手順は、ステップS300~S390により実行される。ステップS300は、第1関節軸J1および第2関節軸J2の各角度θJ1,θJ2がそれぞれ0度(基準角)となるようにモータ32,42を制御する。これにより、第1アーム21および第2アーム22は、X1軸方向に沿って伸びた状態となる。ステップS310は、手先(ワーク保持部24)にワークWを想定した質量の異なる重りmを順次取り付け、手先に重りを付けない状態での第1アーム21の先端部のZ1軸方向における位置を基準として、重りm毎に、第1アーム21の先端部のZ1軸方向における変位(Z方向変位Zd1)を測定する。なお、ステップS310の測定は、図19に示すように、第1アーム21の先端部の底面を測定対象面とし、レーザ変位計を用いて測定対象面にレーザを当てて反射光を受光することにより行なうことができる。続くステップS320は、手先に重りmが取り付けられておらず且つ第2関節軸J2の角度θJ2が0度(基準角)であるときの第1アーム21のたわみ角度θd1である初期たわみ角度を設定する。第1関節軸J1以降(第1関節軸J1からアーム先端まで)のアーム部の重心位置(X1軸上の重心位置)とアーム部の質量とを乗じたもの(重心位置×アーム質量)が値0(無重力状態)であるとき、第1アーム21は、全くたわんでいない状態となる。このため、第1アーム21の初期たわみ量は、図20に示すように、重心位置×アーム質量をx軸とし、Z方向変位Zd1(第1アーム21のたわみ量)をy軸として重りm毎の両者の組み合わせデータをxyグラフ上にプロットし、プロットした点を結んだ直線の延長線(図中、破線参照)におけるy切片を求めることにより導出することができる。第1アーム21の初期たわみ角度は、導出した初期たわみ量に対して逆正接関数を適用することにより求めることができる。
 ステップS330は、第2関節軸J2が-90度から+90度まで所定角度ΔθJ2ずつ(例えば10度ずつ)回転するようにモータ42を制御し、基準角(0度)における第1アーム21の先端部のZ1軸方向における位置を基準として、第2関節軸J2が所定角度ΔθJ2回転する毎に第1アーム21の先端部のZ1軸方向における変位(Z方向変位Zd1)を測定する。更に、ステップS330は、手先にワークWを想定した質量の異なる重りmを順次取り付け、重りm毎に、第2関節軸J2が所定角度ΔθJ2回転する毎にZ方向変位Zd1を測定する動作を繰り返す。続くステップS340は、重りm毎および第2関節軸J2の角度θJ2毎に測定したZ方向変位Zd1(たわみ量)に対してそれぞれ逆正接関数を適用して各角度変位を求め、求めた各角度変位をステップS320で設定した初期たわみ角度に加えることにより、図21に示すように重りm毎および第2関節軸J2の角度θJ2毎のたわみ角度θd1の実測値を導出する。
 ステップS350は、第1アーム21、第2アーム22およびシャフト23の質量と手先(重りm)の質量とから第1関節軸J1以降(スカラアーム20の第1関節軸J1から先端側)のアーム部(重りmを含む)の重心位置Ld1を算出する。ステップS360は、アーム部の重心位置Ld1と第2関節軸J2の角度θJ2とから角度θJ2における重心位置Ld1のX1軸方向成分Ld1’(θJ2)を次式(15)により算出する。重心位置Ld1のX1軸方向成分Ld1’(θJ2)は、図22に示すように、第2関節軸J2の中心を通りY1軸に平行なY1’軸に対する重心位置Ld1のX1軸方向における距離を示す。ステップS370は、第1アーム21のたわみモーメントId1を算出する。たわみモーメントId1は、本実施形態では、図23に示すように、アーム部の重力(図中、下向き矢印)により第1アーム21をY1軸周りに回転させようとするものであり、重心位置Ld1が第1関節軸J1からX1軸方向に離れるにつれて大きくなる。すなわち、たわみモーメントId1は、第2関節軸J2の角度が±180度のときに最小となり、第2関節軸J2の角度が0度(基準角)のときに最大となる。たわみモーメントId1は、第1アーム21のアーム長をL1とし、アーム部の質量をMとし、重力加速度をgとしたとき、次式(16)により求めることができる。ステップS380は、第1アーム21のたわみ角度θd1と第2関節軸J2の角度θJ2とアーム部の質量Mとの関係を表わす第1アーム21のたわみモデル式を作成する。具体的には、ステップS380は、たわみモーメントId1をたわみ剛性Kd1で除した次式(17)により定まるモデル式を作成する。ステップS390は、ステップS340で導出した重りm毎および第2関節軸J2の角度θJ2毎の第1アーム21のたわみ角度θd1の実測値からたわみ剛性Kd1を最適化する。このステップS390は、ねじれ剛性Ktと同様に、最急降下法やニュートンラフソン法などの最適化問題を解くための種々のアルゴリズムを採用することができる。
Figure JPOXMLDOC01-appb-M000005
 次に、第2アーム22のたわみモデル式を作成する手順について説明する。図24は、第2アームたわみモデル式作成手順の一例を示す説明図である。第2アームたわみモデル式作成手順は、ステップS400~S460により実行される。ステップS400は、手先にワークWを想定した質量の異なる重りmを順次取り付け、手先に重りを付けない状態での第2アーム22の先端部のZ1軸方向における位置を基準として、重りm毎に、第2アーム22の先端部のZ1軸方向における変位(Z方向変位Zd2)を測定する。なお、ステップS400の測定は、図19に示すように第2アーム22の先端部に装着されたシャフト23の先端面を測定対象面とし、レーザ変位計を用いて測定対象面にレーザを当てて反射光を受光することにより行なうことができる。続くステップS410は、手先に重りmが取り付けられていない状態での第2アーム22のたわみ角度である初期たわみ角度を設定する。第2アーム22の初期たわみ量は、上述したステップS320と同様に、重心位置×アーム質量をx軸とし、第2アーム22のたわみ量(Z方向変位Zd2)をy軸として重りm毎の両者の組み合わせデータをxyグラフ上にプロットし、プロットした点を結んだ直線の延長線におけるy切片を求めることにより導出することができる。第2アーム22の初期たわみ角度は、導出した初期たわみ量に対して逆正接関数を適用することにより求めることができる。ステップS420は、重りm毎に測定したZ方向変位Zd2(たわみ量)に対してそれぞれ逆正接関数を適用して各角度変位を求め、求めた各角度変位をステップS410で設定した初期たわみ角度に加えることにより、図25に示すように重りm(手先質量)毎の第2アーム22のたわみ角度θd2の実測値を導出する。この第2アーム22のたわみ角度θd2は、X1軸を基準とした角度であり、第1アーム21のたわみ角度θd1が重畳しているため、ステップS340で求めた第1アーム21のたわみ角度d1の実測値を減算することで、図10に示すように、X2軸を基準とした第2アーム22のたわみ角度θd2を得ることができる。
 ステップS430は、第2アーム22およびシャフト23の質量と手先(重りm)の質量とから第2関節軸J2以降(スカラアーム20の第2関節軸J2から先端側)のアーム部(重りmを含む)の重心位置Ld2を算出する。続くステップS440は、第2アーム22のたわみモーメントId2を算出する。たわみモーメントId2は、図26に示すように、第2関節軸J2の角度θd2とは無関係に、重心位置Ld2(第2関節軸J2の中心から重心までの距離)とアーム部の質量とによって定まる。すなわち、たわみモーメントId2は、アーム部の質量をMとし、重力加速度をgとしたとき、次式(18)により求めることができる。ステップS450は、たわみモーメントId2をたわみ剛性Kd2で除した次式(19)により第2アーム22のたわみ角度θd2とアーム部の質量Mとの関係を表わす第2アーム22のたわみモデル式を作成する。ステップS460は、ステップS420で求めた重りm毎の第2アーム22のたわみ角度θd2の実測値からたわみ剛性Kd2を最適化する。このステップS460は、ねじれ剛性Ktやたわみ剛性Kd1と同様に、最急降下法やニュートンラフソン法などの最適化問題を解くための種々のアルゴリズムを採用することができる。
Figure JPOXMLDOC01-appb-M000006
 ここで、実施形態の主要な要素と請求の範囲に記載した本開示の主要な要素との対応関係について説明する。即ち、本実施形態では、第1アーム21が第1アームに相当し、第1関節軸J1が第1軸に相当し、第2アーム22が第2アームに相当し、第2関節軸J2が第2軸に相当し、シャフト23がシャフトに相当し、第3関節軸J3が第3軸に相当し、図4のロボット制御処理のS180,S190の処理を実行する制御装置70のCPU71が制御部に相当し、記憶装置74が記憶部に相当し、図4のロボット制御処理のS100~S170の処理を実行するCPU71が補正部に相当する。また、ワーク保持部24がワーク保持部に相当する。
 なお、本開示は上述した実施形態に何ら限定されることはなく、本開示の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
 例えば、上述した実施形態では、制御装置70は、記憶装置74に予め記憶されたねじれモデル式を用いて第2関節軸J2の角度θJ2に基づく第1アーム21のねじれ角度θtを算出し、算出したねじれ角度θtに基づいて手先の位置ずれを補正するものとした。しかし、制御装置70は、第1アーム21のねじれ角度θtと第2関節軸J2の角度θJ2との関係あるいは第1アーム21のねじれ角度θtに基づくねじれ補正値と第2関節軸J2の角度θJ2との関係を表わすマップを予め記憶しておき、第2関節軸J2の角度θJ2に基づいて当該マップからねじれ補正値を導出するようにしてもよい。
 上述した実施形態では、制御装置70は、記憶装置74に予め記憶された第1アーム21のたわみモデル式を用いて第2関節軸J2の角度θJ2に基づく第1アーム21のたわみ角度θd1を算出し、算出したたわみ角度θd1に基づいて手先の位置ずれを補正するものとした。しかし、制御装置70は、第1アーム21のたわみ角度θd1と第2関節軸J2の角度θJ2との関係あるいは第1アーム21のたわみ角度θd1に基づくたわみ補正値と第2関節軸J2の角度θJ2との関係を表わすマップを予め記憶しておき、第2関節軸J2の角度θJ2に基づいて当該マップからたわみ補正値を導出するようにしてもよい。更に、制御装置70は、記憶装置74に予め記憶されたたわみモデル式を用いて手先質量m(ワークWの重さ)に基づく第1アーム21,第2アーム22のたわみ角度θd1,θd2を算出し、算出したたわみ角度θd1,θd2に基づくたわみ補正値により手先の位置ずれを補正するものとした。しかし、制御装置70は、第1アーム21,第2アーム22のたわみ角度θd1,θd2と手先質量m(ワークWの重さ)との関係あるいは第1アーム21,第2アーム22のたわみ角度θd1,θd2に基づくたわみ補正値と手先質量m(ワークWの重さ)との関係を表わすマップを予め記憶しておき、手先質量mに基づいて当該マップからたわみ補正値を導出するようにしてもよい。
 以上説明したように、本開示のスカラロボットシステムは、基台と、前記基台に設けられ、第1軸周りに回動する第1アームと、前記第1アームに設けられ、前記第1軸と平行な第2軸周りに回動する第2アームと、前記第2アームに対して前記第2軸と平行な第3軸の軸方向に移動するシャフトと、前記第1アームと前記第2アームと前記シャフトとの動作を制御する制御部と、前記第2アームの回動位置に対応する前記第1アームのアーム周りの回転角に基づく、前記第1アームのねじれ補正係数を記憶する記憶部と、前記ねじれ補正係数を用いて前記シャフト先端の水平方向の位置を補正する補正部と、を備えることを要旨とする。
 この本開示のスカラロボットシステムは、基台に設けられて第1軸周りに回動する第1アームと、第1アームに設けられた第1軸と平行な第2軸周りに回動する第2アームと、第2アームに対して第2軸と平行な第3軸の軸方向に移動するシャフトと、これらの動作を制御する制御部と、記憶部と、補正部と、を備えるものである。記憶部は、第2アームの回動位置に対応する第1アームのアーム周りの回転角に基づく第1アームのねじれ補正係数を記憶する。補正部は、ねじれ補正係数を用いて前記シャフト先端の水平方向の位置を補正する。第1アームと第2アームとを含むアーム部の重心位置に、第1アームの延在方向に直交する成分が含まれると、第1アームのアーム周りにモーメントが生じて第1アームにねじれが生じる。スカラロボットシステムは、予め第2アームの回動位置に対応する第1アームのアーム周りの回転角に基づく第1アームのねじれ補正係数を記憶部に記憶しておき、これを補正値として反映させる。これにより、第2アームが回動位置に拘らず第1アームのアーム周りのねじれに基づく手先の位置ずれを良好に補正することができるスカラロボットシステムとすることができる。
 こうした本開示のスカラロボットシステムにおいて、前記ねじれ補正係数を用いて前記シャフトの移動量を補正する前記補正部を備えるものとしてもよい。
 また、本開示のスカラロボットシステムにおいて、前記第2アームの回動位置に対応する前記第1アームの第1たわみ量と前記第2アームの第2たわみ量とを記憶する前記記憶部と、前記第1たわみ量と前記第2たわみ量とを用いて前記補正を行う前記補正部と、を備えるものとしてもよい。こうすれば、第2アームの回動位置に拘わらず第1アームのたわみに基づくシャフト先端の位置ずれを良好に補正することができる。この態様の本開示のスカラロボットシステムにおいて、前記シャフトはワークを保持するワーク保持部を有し、前記ワークの重さに対応する前記ねじれ補正係数と前記ワークの重さに対応する前記第1たわみ量および前記第2たわみ量とを記憶する前記記憶部を備えるものとしてもよい。こうすれば、重さの異なる多様なワークをワーク保持部で保持する場合であっても、手先の位置ずれを良好に補正することができる。
  更に、本開示のスカラロボットシステムにおいて、前記ねじれ補正係数のモデル式と前記第1たわみ量のモデル式と前記第2たわみ量のモデル式とを記憶する前記記憶部と、前記ねじれ補正係数のモデル式と前記第1たわみ量のモデル式と前記第2たわみ量のモデル式とを用いて前記補正を行う前記補正部と、を備えるものとしてもよい。こうすれば、マップを用いて補正を行なうものに比して、必要な記憶部の記憶容量を低減することができる。
 なお、本開示は、スカラロボットシステムの形態としたが、アームの位置ずれ補正方法の形態としてもよい。
 本開示は、スカラロボットの製造産業などに利用可能である。
 1 スカラロボットシステム、2 作業台、10 ロボット本体、11 基台、20 多関節アーム、21 第1アーム、22 第2アーム、23 シャフト、24 ワーク保持部、30 第1アーム駆動部、32 モータ、34 エンコーダ、40 第2アーム駆動部、42 モータ、44 エンコーダ、50 シャフト駆動部、52a,52b モータ、54a,54b エンコーダ、60 カメラ、70 制御装置、71 CPU、72 ROM、73 RAM、74 記憶装置、J1 第1関節軸、J2 第2関節軸、J3 第3関節軸、Pl,Pr 測定対象物。

Claims (5)

  1.  基台と、
     前記基台に設けられ、第1軸周りに回動する第1アームと、
     前記第1アームに設けられ、前記第1軸と平行な第2軸周りに回動する第2アームと、
     前記第2アームに対して前記第2軸と平行な第3軸の軸方向に移動するシャフトと、
     前記第1アームと前記第2アームと前記シャフトとの動作を制御する制御部と、
     前記第2アームの回動位置に対応する前記第1アームのアーム周りの回転角に基づく、前記第1アームのねじれ補正係数を記憶する記憶部と、
     前記ねじれ補正係数を用いて前記シャフト先端の水平方向の位置を補正する補正部と、
     を備えるスカラロボットシステム。
  2.  請求項1に記載のスカラロボットシステムであって、
     前記ねじれ補正係数を用いて前記シャフトの移動量を補正する前記補正部
     を備えるスカラロボットシステム。
  3.  請求項1または2に記載のスカラロボットシステムであって、
     前記第2アームの回動位置に対応する前記第1アームの第1たわみ量と前記第2アームの第2たわみ量とを記憶する前記記憶部と、
     前記第1たわみ量と前記第2たわみ量とを用いて前記補正を行う前記補正部と、
     を備えるスカラロボットシステム。
  4.  請求項3に記載のスカラロボットシステムであって、
     前記シャフトはワークを保持するワーク保持部を有し、
     前記ワークの重さに対応する前記ねじれ補正係数と前記ワークの重さに対応する前記第1たわみ量および前記第2たわみ量とを記憶する前記記憶部
     を備えるスカラロボットシステム。
  5.  請求項1または2に記載のスカラロボットシステムであって、
     前記ねじれ補正係数のモデル式と前記第1たわみ量のモデル式と前記第2たわみ量のモデル式とを記憶する前記記憶部と、
     前記ねじれ補正係数のモデル式と前記第1たわみ量のモデル式と前記第2たわみ量のモデル式とを用いて前記補正を行う前記補正部と、
     を備えるスカラロボットシステム。
PCT/JP2020/028987 2020-07-29 2020-07-29 スカラロボットシステム WO2022024243A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2020/028987 WO2022024243A1 (ja) 2020-07-29 2020-07-29 スカラロボットシステム
JP2022539854A JP7513721B2 (ja) 2020-07-29 2020-07-29 スカラロボットシステム
CN202080101833.0A CN115803154A (zh) 2020-07-29 2020-07-29 水平多关节机器人***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/028987 WO2022024243A1 (ja) 2020-07-29 2020-07-29 スカラロボットシステム

Publications (1)

Publication Number Publication Date
WO2022024243A1 true WO2022024243A1 (ja) 2022-02-03

Family

ID=80035439

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/028987 WO2022024243A1 (ja) 2020-07-29 2020-07-29 スカラロボットシステム

Country Status (3)

Country Link
JP (1) JP7513721B2 (ja)
CN (1) CN115803154A (ja)
WO (1) WO2022024243A1 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0248188A (ja) * 1988-08-03 1990-02-16 Sankyo Seiki Mfg Co Ltd ロボットの位置決め方法
JPH0433006A (ja) * 1990-05-25 1992-02-04 Hitachi Ltd ロボツトシステムの制御方法
JPH0434604A (ja) * 1990-05-31 1992-02-05 Toshiba Corp ロボットの位置補正方法及び位置補正装置
JP2004299010A (ja) * 2003-03-31 2004-10-28 Fanuc Ltd ロボットのたわみ補正装置及びたわみ補正方法
JP2012006125A (ja) * 2010-06-28 2012-01-12 Seiko Epson Corp 水平多関節ロボットの座標値補正方法
JP2017042837A (ja) * 2015-08-24 2017-03-02 株式会社デンソーウェーブ センサ位置決定方法、ロボット

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0248188A (ja) * 1988-08-03 1990-02-16 Sankyo Seiki Mfg Co Ltd ロボットの位置決め方法
JPH0433006A (ja) * 1990-05-25 1992-02-04 Hitachi Ltd ロボツトシステムの制御方法
JPH0434604A (ja) * 1990-05-31 1992-02-05 Toshiba Corp ロボットの位置補正方法及び位置補正装置
JP2004299010A (ja) * 2003-03-31 2004-10-28 Fanuc Ltd ロボットのたわみ補正装置及びたわみ補正方法
JP2012006125A (ja) * 2010-06-28 2012-01-12 Seiko Epson Corp 水平多関節ロボットの座標値補正方法
JP2017042837A (ja) * 2015-08-24 2017-03-02 株式会社デンソーウェーブ センサ位置決定方法、ロボット

Also Published As

Publication number Publication date
JPWO2022024243A1 (ja) 2022-02-03
CN115803154A (zh) 2023-03-14
JP7513721B2 (ja) 2024-07-09

Similar Documents

Publication Publication Date Title
US10926414B2 (en) System and method for calibrating tool center point of robot
US8918210B2 (en) Method of detecting an inter-axis offset of 6-axis robot
CN107717993B (zh) 一种高效便捷的简易机器人标定方法
JP7263412B2 (ja) 駆動装置、ロボット装置、物品の製造方法、制御方法、制御プログラム、記録媒体
CN108789404B (zh) 一种基于视觉的串联机器人运动学参数标定方法
JP7305951B2 (ja) キャリブレーション装置及びキャリブレーション方法
CN110253574B (zh) 一种多任务机械臂位姿检测和误差补偿方法
WO2006086021A2 (en) Method and system to provide improved accuracies in multi-jointed robots through kinematic robot model parameters determination
JP5450242B2 (ja) マニピュレータのキャリブレーション方法及びロボット制御システム
US20110010008A1 (en) Method And Device For Controlling A Manipulator
KR101797122B1 (ko) 이동형 3차원 좌표 측정기(cmm)의 에러 측정 및 보상 방법
JP5672173B2 (ja) 6軸ロボットの軸間オフセット検出方法
EP1886771B1 (en) Rotation center point calculating method, rotation axis calculating method, program creating method, operation method, and robot apparatus
JP5786550B2 (ja) 6軸ロボットの軸間オフセット検出方法
JP5378908B2 (ja) ロボットの精度調整方法およびロボット
WO2022024243A1 (ja) スカラロボットシステム
JP5505155B2 (ja) ロボットシステムおよびロボット制御方法
JP5574805B2 (ja) 視覚センサを有するマニピュレータのセンサキャリブレーション方法及びロボット制御システム
JP7524350B2 (ja) スカラロボットの制御方法
WO2022118374A1 (ja) スカラロボットの制御方法
JP6983501B2 (ja) 把持装置の制御方法、プログラム、記録媒体、把持装置、ロボット装置、および部品の製造方法
JP4449693B2 (ja) ロボット制御装置およびその制御方法
US20230101098A1 (en) Robot control device
JP7227012B2 (ja) 多関節ロボットの制御装置
KR20230133015A (ko) 기울기 센서를 이용한 매니퓰레이터의 처짐 보상 장치 및 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20946554

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022539854

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20946554

Country of ref document: EP

Kind code of ref document: A1